mirror of
https://github.com/python-pillow/Pillow.git
synced 2025-08-21 12:44:46 +03:00
Added warning if title argument is unused by an ImageShow viewer
This commit is contained in:
parent
9025ae8332
commit
91d7e9b644
|
@ -68,6 +68,20 @@ def test_viewers():
|
||||||
pass
|
pass
|
||||||
|
|
||||||
|
|
||||||
|
def test_title_warning():
|
||||||
|
viewer = ImageShow.WindowsViewer()
|
||||||
|
with pytest.warns(UserWarning):
|
||||||
|
viewer.get_command("test.jpg", title="test")
|
||||||
|
|
||||||
|
for viewer in [
|
||||||
|
ImageShow.DisplayViewer(),
|
||||||
|
ImageShow.GmDisplayViewer(),
|
||||||
|
ImageShow.EogViewer(),
|
||||||
|
]:
|
||||||
|
with pytest.warns(UserWarning):
|
||||||
|
viewer.get_command_ex("test.jpg", title="test")
|
||||||
|
|
||||||
|
|
||||||
def test_ipythonviewer():
|
def test_ipythonviewer():
|
||||||
pytest.importorskip("IPython", reason="IPython not installed")
|
pytest.importorskip("IPython", reason="IPython not installed")
|
||||||
for viewer in ImageShow._viewers:
|
for viewer in ImageShow._viewers:
|
||||||
|
|
|
@ -16,6 +16,7 @@ import shutil
|
||||||
import subprocess
|
import subprocess
|
||||||
import sys
|
import sys
|
||||||
import tempfile
|
import tempfile
|
||||||
|
import warnings
|
||||||
from shlex import quote
|
from shlex import quote
|
||||||
|
|
||||||
from PIL import Image
|
from PIL import Image
|
||||||
|
@ -58,6 +59,11 @@ def show(image, title=None, **options):
|
||||||
return 0
|
return 0
|
||||||
|
|
||||||
|
|
||||||
|
def _warn_if_unused_title(options):
|
||||||
|
if options.get("title") is not None:
|
||||||
|
warnings.warn("title argument is not supported by this viewer")
|
||||||
|
|
||||||
|
|
||||||
class Viewer:
|
class Viewer:
|
||||||
"""Base class for viewers."""
|
"""Base class for viewers."""
|
||||||
|
|
||||||
|
@ -121,6 +127,7 @@ class WindowsViewer(Viewer):
|
||||||
options = {"compress_level": 1}
|
options = {"compress_level": 1}
|
||||||
|
|
||||||
def get_command(self, file, **options):
|
def get_command(self, file, **options):
|
||||||
|
_warn_if_unused_title(options)
|
||||||
return (
|
return (
|
||||||
f'start "Pillow" /WAIT "{file}" '
|
f'start "Pillow" /WAIT "{file}" '
|
||||||
"&& ping -n 2 127.0.0.1 >NUL "
|
"&& ping -n 2 127.0.0.1 >NUL "
|
||||||
|
@ -147,6 +154,7 @@ class MacViewer(Viewer):
|
||||||
|
|
||||||
def show_file(self, file, **options):
|
def show_file(self, file, **options):
|
||||||
"""Display given file"""
|
"""Display given file"""
|
||||||
|
_warn_if_unused_title(options)
|
||||||
fd, path = tempfile.mkstemp()
|
fd, path = tempfile.mkstemp()
|
||||||
with os.fdopen(fd, "w") as f:
|
with os.fdopen(fd, "w") as f:
|
||||||
f.write(file)
|
f.write(file)
|
||||||
|
@ -190,6 +198,7 @@ class DisplayViewer(UnixViewer):
|
||||||
"""The ImageMagick ``display`` command."""
|
"""The ImageMagick ``display`` command."""
|
||||||
|
|
||||||
def get_command_ex(self, file, **options):
|
def get_command_ex(self, file, **options):
|
||||||
|
_warn_if_unused_title(options)
|
||||||
command = executable = "display"
|
command = executable = "display"
|
||||||
return command, executable
|
return command, executable
|
||||||
|
|
||||||
|
@ -198,6 +207,7 @@ class GmDisplayViewer(UnixViewer):
|
||||||
"""The GraphicsMagick ``gm display`` command."""
|
"""The GraphicsMagick ``gm display`` command."""
|
||||||
|
|
||||||
def get_command_ex(self, file, **options):
|
def get_command_ex(self, file, **options):
|
||||||
|
_warn_if_unused_title(options)
|
||||||
executable = "gm"
|
executable = "gm"
|
||||||
command = "gm display"
|
command = "gm display"
|
||||||
return command, executable
|
return command, executable
|
||||||
|
@ -207,6 +217,7 @@ class EogViewer(UnixViewer):
|
||||||
"""The GNOME Image Viewer ``eog`` command."""
|
"""The GNOME Image Viewer ``eog`` command."""
|
||||||
|
|
||||||
def get_command_ex(self, file, **options):
|
def get_command_ex(self, file, **options):
|
||||||
|
_warn_if_unused_title(options)
|
||||||
executable = "eog"
|
executable = "eog"
|
||||||
command = "eog -n"
|
command = "eog -n"
|
||||||
return command, executable
|
return command, executable
|
||||||
|
|
Loading…
Reference in New Issue
Block a user