Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
31 changes: 21 additions & 10 deletions stdlib/tkinter/__init__.pyi
Original file line number Diff line number Diff line change
Expand Up @@ -3729,16 +3729,27 @@ class _setit:
# manual page: tk_optionMenu
class OptionMenu(Menubutton):
menuname: Incomplete
def __init__(
# differs from other widgets
self,
master: Misc | None,
variable: StringVar,
value: str,
*values: str,
# kwarg only from now on
command: Callable[[StringVar], object] | None = ...,
) -> None: ...
if sys.version_info >= (3, 14):
def __init__(
# differs from other widgets
self,
master: Misc | None,
variable: StringVar,
value: str,
*values: str,
command: Callable[[StringVar], object] | None = ...,
name: str | None = None,
) -> None: ...
else:
def __init__(
# differs from other widgets
self,
master: Misc | None,
variable: StringVar,
value: str,
*values: str,
command: Callable[[StringVar], object] | None = ...,
) -> None: ...
# configure, config, cget are inherited from Menubutton
# destroy and __getitem__ are overridden, signature does not change

Expand Down
36 changes: 25 additions & 11 deletions stdlib/tkinter/ttk.pyi
Original file line number Diff line number Diff line change
Expand Up @@ -1341,17 +1341,31 @@ class LabeledScale(Frame):
value: Any

class OptionMenu(Menubutton):
def __init__(
self,
master: tkinter.Misc | None,
variable: tkinter.StringVar,
default: str | None = None,
*values: str,
# rest of these are keyword-only because *args syntax used above
style: str = "",
direction: Literal["above", "below", "left", "right", "flush"] = "below",
command: Callable[[tkinter.StringVar], object] | None = None,
) -> None: ...
if sys.version_info >= (3, 14):
def __init__(
self,
master: tkinter.Misc | None,
variable: tkinter.StringVar,
default: str | None = None,
*values: str,
# rest of these are keyword-only because *args syntax used above
style: str = "",
direction: Literal["above", "below", "left", "right", "flush"] = "below",
command: Callable[[tkinter.StringVar], object] | None = None,
name: str | None = None,
) -> None: ...
else:
def __init__(
self,
master: tkinter.Misc | None,
variable: tkinter.StringVar,
default: str | None = None,
*values: str,
# rest of these are keyword-only because *args syntax used above
style: str = "",
direction: Literal["above", "below", "left", "right", "flush"] = "below",
command: Callable[[tkinter.StringVar], object] | None = None,
) -> None: ...
# configure, config, cget, destroy are inherited from Menubutton
# destroy and __setitem__ are overridden, signature does not change
def set_menu(self, default: str | None = None, *values: str) -> None: ...
1 change: 1 addition & 0 deletions stdlib/typing.pyi
Original file line number Diff line number Diff line change
Expand Up @@ -1176,6 +1176,7 @@ if sys.version_info >= (3, 12):
def __or__(self, right: Any, /) -> _SpecialForm: ...
def __ror__(self, left: Any, /) -> _SpecialForm: ...
if sys.version_info >= (3, 14):
def __iter__(self) -> Any: ... # Unpack[Self]
@property
def evaluate_value(self) -> EvaluateFunc: ...

Expand Down
Loading