diff --git a/Tests/test_imagetk.py b/Tests/test_imagetk.py index 5996183b3c3..9df66df2d73 100644 --- a/Tests/test_imagetk.py +++ b/Tests/test_imagetk.py @@ -80,6 +80,13 @@ def test_photoimage_blank(): assert_image_equal(reloaded.convert(mode), im) +def test_box_deprecation(): + im = hopper() + im_tk = ImageTk.PhotoImage(im) + with pytest.warns(DeprecationWarning): + im_tk.paste(im, (0, 0, 128, 128)) + + def test_bitmapimage(): im = hopper("1") diff --git a/docs/deprecations.rst b/docs/deprecations.rst index 74e5f96954b..d4d5907ea2f 100644 --- a/docs/deprecations.rst +++ b/docs/deprecations.rst @@ -142,6 +142,13 @@ The stub image plugin ``FitsStubImagePlugin`` has been deprecated and will be re Pillow 10.0.0 (2023-07-01). FITS images can be read without a handler through :mod:`~PIL.FitsImagePlugin` instead. +PhotoImage.paste box parameter +~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ + +.. deprecated:: 9.2.0 + +The ``box`` parameter is unused. It will be removed in Pillow 10.0.0 (2023-07-01). + Removed features ---------------- diff --git a/src/PIL/ImageTk.py b/src/PIL/ImageTk.py index d151b9b0e2e..c9a9135b0f4 100644 --- a/src/PIL/ImageTk.py +++ b/src/PIL/ImageTk.py @@ -26,6 +26,7 @@ # import tkinter +import warnings from io import BytesIO from . import Image @@ -183,11 +184,15 @@ def paste(self, im, box=None): :param im: A PIL image. The size must match the target region. If the mode does not match, the image is converted to the mode of the bitmap image. - :param box: A 4-tuple defining the left, upper, right, and lower pixel - coordinate. See :ref:`coordinate-system`. If None is given - instead of a tuple, all of the image is assumed. """ + if box is not None: + warnings.warn( + "The box parameter is deprecated and will be removed in Pillow 10 " + "(2023-07-01).", + DeprecationWarning, + ) + # convert to blittable im.load() image = im.im