Updated type hint

This commit is contained in:
Andrew Murray 2024-09-07 14:28:36 +10:00
parent 8dcf229ea1
commit 6f9128bfaf
3 changed files with 10 additions and 7 deletions

View File

@ -224,12 +224,7 @@ if TYPE_CHECKING:
from IPython.lib.pretty import PrettyPrinter from IPython.lib.pretty import PrettyPrinter
from . import ImageFile, ImageFilter, ImagePalette, ImageQt, TiffImagePlugin from . import ImageFile, ImageFilter, ImagePalette, ImageQt, TiffImagePlugin
from ._typing import NumpyArray, StrOrBytesPath, TypeGuard from ._typing import CapsuleType, NumpyArray, StrOrBytesPath, TypeGuard
if sys.version_info >= (3, 13):
from types import CapsuleType
else:
CapsuleType = object
ID: list[str] = [] ID: list[str] = []
OPEN: dict[ OPEN: dict[
str, str,

View File

@ -32,6 +32,9 @@ from typing import TYPE_CHECKING, Any, cast
from . import Image, ImageFile from . import Image, ImageFile
if TYPE_CHECKING:
from ._typing import CapsuleType
# -------------------------------------------------------------------- # --------------------------------------------------------------------
# Check for Tkinter interface hooks # Check for Tkinter interface hooks
@ -48,7 +51,7 @@ def _get_image_from_kw(kw: dict[str, Any]) -> ImageFile.ImageFile | None:
def _pyimagingtkcall( def _pyimagingtkcall(
command: str, photo: PhotoImage | tkinter.PhotoImage, ptr: object command: str, photo: PhotoImage | tkinter.PhotoImage, ptr: CapsuleType
) -> None: ) -> None:
tk = photo.tk tk = photo.tk
try: try:

View File

@ -15,6 +15,11 @@ if TYPE_CHECKING:
except (ImportError, AttributeError): except (ImportError, AttributeError):
pass pass
if sys.version_info >= (3, 13):
from types import CapsuleType
else:
CapsuleType = object
if sys.version_info >= (3, 10): if sys.version_info >= (3, 10):
from typing import TypeGuard from typing import TypeGuard
else: else: