From 39ddef28bf8efc6a4a1ed707e003eca3ee10c85b Mon Sep 17 00:00:00 2001 From: Akuli Date: Mon, 24 Aug 2020 14:00:20 +0300 Subject: [PATCH] make tkinter.font.Font behave similarly to tkinter widgets (#4469) --- stdlib/3/tkinter/font.pyi | 17 +++-------------- 1 file changed, 3 insertions(+), 14 deletions(-) diff --git a/stdlib/3/tkinter/font.pyi b/stdlib/3/tkinter/font.pyi index b884d9d51c33..9d4739508169 100644 --- a/stdlib/3/tkinter/font.pyi +++ b/stdlib/3/tkinter/font.pyi @@ -1,5 +1,5 @@ import tkinter -from typing import List, Optional, Tuple, TypeVar, Union, overload +from typing import Any, List, Optional, Tuple, TypeVar, Union, overload from typing_extensions import Literal, TypedDict NORMAL: Literal["normal"] @@ -48,6 +48,8 @@ class Font: underline: bool = ..., overstrike: bool = ..., ) -> None: ... + def __getitem__(self, key: str) -> Any: ... + def __setitem__(self, key: str, value: Any) -> None: ... @overload def cget(self, option: Literal["family"]) -> str: ... @overload @@ -58,7 +60,6 @@ class Font: def cget(self, option: Literal["slant"]) -> Literal["roman", "italic"]: ... @overload def cget(self, option: Literal["underline", "overstrike"]) -> Literal[0, 1]: ... - __getitem__ = cget @overload def actual(self, option: Literal["family"], displayof: Optional[tkinter.Misc] = ...) -> str: ... @overload @@ -73,18 +74,6 @@ class Font: def actual(self, option: None, displayof: Optional[tkinter.Misc] = ...) -> _FontDict: ... @overload def actual(self, *, displayof: Optional[tkinter.Misc] = ...) -> _FontDict: ... - @overload - def __setitem__(self, key: Literal["family"], value: str) -> None: ... - @overload - def __setitem__(self, key: Literal["size"], value: int) -> None: ... - @overload - def __setitem__(self, key: Literal["weight"], value: Literal["normal", "bold"]) -> None: ... - @overload - def __setitem__(self, key: Literal["slant"], value: Literal["roman", "italic"]) -> None: ... - @overload - def __setitem__(self, key: Literal["underline"], value: bool) -> None: ... - @overload - def __setitem__(self, key: Literal["overstrike"], value: bool) -> None: ... def config( self, *,