mirror of
https://github.com/davidhalter/typeshed.git
synced 2025-12-09 05:24:52 +08:00
tkinter: Treeview identifiers can be int (#10468)
This commit is contained in:
@@ -953,8 +953,6 @@ class _TreeviewColumnDict(TypedDict):
|
||||
anchor: tkinter._Anchor
|
||||
id: str
|
||||
|
||||
_TreeviewColumnId: TypeAlias = int | str # manual page: "COLUMN IDENTIFIERS"
|
||||
|
||||
class Treeview(Widget, tkinter.XView, tkinter.YView):
|
||||
def __init__(
|
||||
self,
|
||||
@@ -963,7 +961,7 @@ class Treeview(Widget, tkinter.XView, tkinter.YView):
|
||||
class_: str = ...,
|
||||
columns: str | list[str] | list[int] | list[str | int] | tuple[str | int, ...] = ...,
|
||||
cursor: tkinter._Cursor = ...,
|
||||
displaycolumns: str | list[str] | tuple[str, ...] | list[int] | tuple[int, ...] = ...,
|
||||
displaycolumns: str | int | list[str] | tuple[str, ...] | list[int] | tuple[int, ...] = ...,
|
||||
height: int = ...,
|
||||
name: str = ...,
|
||||
padding: _Padding = ...,
|
||||
@@ -985,7 +983,7 @@ class Treeview(Widget, tkinter.XView, tkinter.YView):
|
||||
*,
|
||||
columns: str | list[str] | list[int] | list[str | int] | tuple[str | int, ...] = ...,
|
||||
cursor: tkinter._Cursor = ...,
|
||||
displaycolumns: str | list[str] | tuple[str, ...] | list[int] | tuple[int, ...] = ...,
|
||||
displaycolumns: str | int | list[str] | tuple[str, ...] | list[int] | tuple[int, ...] = ...,
|
||||
height: int = ...,
|
||||
padding: _Padding = ...,
|
||||
selectmode: Literal["extended", "browse", "none"] = ...,
|
||||
@@ -998,23 +996,23 @@ class Treeview(Widget, tkinter.XView, tkinter.YView):
|
||||
@overload
|
||||
def configure(self, cnf: str) -> tuple[str, str, str, Any, Any]: ...
|
||||
config = configure
|
||||
def bbox(self, item, column: _TreeviewColumnId | None = None) -> tuple[int, int, int, int] | Literal[""]: ... # type: ignore[override]
|
||||
def get_children(self, item: str | None = None) -> tuple[str, ...]: ...
|
||||
def set_children(self, item: str, *newchildren: str) -> None: ...
|
||||
def bbox(self, item: str | int, column: str | int | None = None) -> tuple[int, int, int, int] | Literal[""]: ... # type: ignore[override]
|
||||
def get_children(self, item: str | int | None = None) -> tuple[str, ...]: ...
|
||||
def set_children(self, item: str | int, *newchildren: str | int) -> None: ...
|
||||
@overload
|
||||
def column(self, column: _TreeviewColumnId, option: Literal["width", "minwidth"]) -> int: ...
|
||||
def column(self, column: str | int, option: Literal["width", "minwidth"]) -> int: ...
|
||||
@overload
|
||||
def column(self, column: _TreeviewColumnId, option: Literal["stretch"]) -> bool: ... # actually 0 or 1
|
||||
def column(self, column: str | int, option: Literal["stretch"]) -> bool: ... # actually 0 or 1
|
||||
@overload
|
||||
def column(self, column: _TreeviewColumnId, option: Literal["anchor"]) -> _tkinter.Tcl_Obj: ...
|
||||
def column(self, column: str | int, option: Literal["anchor"]) -> _tkinter.Tcl_Obj: ...
|
||||
@overload
|
||||
def column(self, column: _TreeviewColumnId, option: Literal["id"]) -> str: ...
|
||||
def column(self, column: str | int, option: Literal["id"]) -> str: ...
|
||||
@overload
|
||||
def column(self, column: _TreeviewColumnId, option: str) -> Any: ...
|
||||
def column(self, column: str | int, option: str) -> Any: ...
|
||||
@overload
|
||||
def column(
|
||||
self,
|
||||
column: _TreeviewColumnId,
|
||||
column: str | int,
|
||||
option: None = None,
|
||||
*,
|
||||
width: int = ...,
|
||||
@@ -1023,29 +1021,29 @@ class Treeview(Widget, tkinter.XView, tkinter.YView):
|
||||
anchor: tkinter._Anchor = ...,
|
||||
# id is read-only
|
||||
) -> _TreeviewColumnDict | None: ...
|
||||
def delete(self, *items: str) -> None: ...
|
||||
def detach(self, *items: str) -> None: ...
|
||||
def exists(self, item: str) -> bool: ...
|
||||
def delete(self, *items: str | int) -> None: ...
|
||||
def detach(self, *items: str | int) -> None: ...
|
||||
def exists(self, item: str | int) -> bool: ...
|
||||
@overload # type: ignore[override]
|
||||
def focus(self, item: None = None) -> str: ... # can return empty string
|
||||
@overload
|
||||
def focus(self, item: str) -> Literal[""]: ...
|
||||
def focus(self, item: str | int) -> Literal[""]: ...
|
||||
@overload
|
||||
def heading(self, column: _TreeviewColumnId, option: Literal["text"]) -> str: ...
|
||||
def heading(self, column: str | int, option: Literal["text"]) -> str: ...
|
||||
@overload
|
||||
def heading(self, column: _TreeviewColumnId, option: Literal["image"]) -> tuple[str] | str: ...
|
||||
def heading(self, column: str | int, option: Literal["image"]) -> tuple[str] | str: ...
|
||||
@overload
|
||||
def heading(self, column: _TreeviewColumnId, option: Literal["anchor"]) -> _tkinter.Tcl_Obj: ...
|
||||
def heading(self, column: str | int, option: Literal["anchor"]) -> _tkinter.Tcl_Obj: ...
|
||||
@overload
|
||||
def heading(self, column: _TreeviewColumnId, option: Literal["command"]) -> str: ...
|
||||
def heading(self, column: str | int, option: Literal["command"]) -> str: ...
|
||||
@overload
|
||||
def heading(self, column: _TreeviewColumnId, option: str) -> Any: ...
|
||||
def heading(self, column: str | int, option: str) -> Any: ...
|
||||
@overload
|
||||
def heading(self, column: _TreeviewColumnId, option: None = None) -> _TreeviewHeaderDict: ... # type: ignore[misc]
|
||||
def heading(self, column: str | int, option: None = None) -> _TreeviewHeaderDict: ... # type: ignore[misc]
|
||||
@overload
|
||||
def heading(
|
||||
self,
|
||||
column: _TreeviewColumnId,
|
||||
column: str | int,
|
||||
option: None = None,
|
||||
*,
|
||||
text: str = ...,
|
||||
@@ -1058,14 +1056,14 @@ class Treeview(Widget, tkinter.XView, tkinter.YView):
|
||||
def identify_column(self, x: int) -> str: ...
|
||||
def identify_region(self, x: int, y: int) -> Literal["heading", "separator", "tree", "cell", "nothing"]: ...
|
||||
def identify_element(self, x: int, y: int) -> str: ... # don't know what possible return values are
|
||||
def index(self, item: str) -> int: ...
|
||||
def index(self, item: str | int) -> int: ...
|
||||
def insert(
|
||||
self,
|
||||
parent: str,
|
||||
index: int | Literal["end"],
|
||||
iid: str | None = None,
|
||||
iid: str | int | None = None,
|
||||
*,
|
||||
id: str = ..., # same as iid
|
||||
id: str | int = ..., # same as iid
|
||||
text: str = ...,
|
||||
image: tkinter._ImageSpec = ...,
|
||||
values: list[Any] | tuple[Any, ...] = ...,
|
||||
@@ -1073,23 +1071,23 @@ class Treeview(Widget, tkinter.XView, tkinter.YView):
|
||||
tags: str | list[str] | tuple[str, ...] = ...,
|
||||
) -> str: ...
|
||||
@overload
|
||||
def item(self, item: str, option: Literal["text"]) -> str: ...
|
||||
def item(self, item: str | int, option: Literal["text"]) -> str: ...
|
||||
@overload
|
||||
def item(self, item: str, option: Literal["image"]) -> tuple[str] | Literal[""]: ...
|
||||
def item(self, item: str | int, option: Literal["image"]) -> tuple[str] | Literal[""]: ...
|
||||
@overload
|
||||
def item(self, item: str, option: Literal["values"]) -> tuple[Any, ...] | Literal[""]: ...
|
||||
def item(self, item: str | int, option: Literal["values"]) -> tuple[Any, ...] | Literal[""]: ...
|
||||
@overload
|
||||
def item(self, item: str, option: Literal["open"]) -> bool: ... # actually 0 or 1
|
||||
def item(self, item: str | int, option: Literal["open"]) -> bool: ... # actually 0 or 1
|
||||
@overload
|
||||
def item(self, item: str, option: Literal["tags"]) -> tuple[str, ...] | Literal[""]: ...
|
||||
def item(self, item: str | int, option: Literal["tags"]) -> tuple[str, ...] | Literal[""]: ...
|
||||
@overload
|
||||
def item(self, item: str, option: str) -> Any: ...
|
||||
def item(self, item: str | int, option: str) -> Any: ...
|
||||
@overload
|
||||
def item(self, item: str, option: None = None) -> _TreeviewItemDict: ... # type: ignore[misc]
|
||||
def item(self, item: str | int, option: None = None) -> _TreeviewItemDict: ... # type: ignore[misc]
|
||||
@overload
|
||||
def item(
|
||||
self,
|
||||
item: str,
|
||||
item: str | int,
|
||||
option: None = None,
|
||||
*,
|
||||
text: str = ...,
|
||||
@@ -1098,27 +1096,39 @@ class Treeview(Widget, tkinter.XView, tkinter.YView):
|
||||
open: bool = ...,
|
||||
tags: str | list[str] | tuple[str, ...] = ...,
|
||||
) -> None: ...
|
||||
def move(self, item: str, parent: str, index: int) -> None: ...
|
||||
def move(self, item: str | int, parent: str, index: int) -> None: ...
|
||||
reattach = move
|
||||
def next(self, item: str) -> str: ... # returning empty string means last item
|
||||
def parent(self, item: str) -> str: ...
|
||||
def prev(self, item: str) -> str: ... # returning empty string means first item
|
||||
def see(self, item: str) -> None: ...
|
||||
def next(self, item: str | int) -> str: ... # returning empty string means last item
|
||||
def parent(self, item: str | int) -> str: ...
|
||||
def prev(self, item: str | int) -> str: ... # returning empty string means first item
|
||||
def see(self, item: str | int) -> None: ...
|
||||
if sys.version_info >= (3, 8):
|
||||
def selection(self) -> tuple[str, ...]: ...
|
||||
else:
|
||||
def selection(self, selop: Incomplete | None = ..., items: Incomplete | None = None) -> tuple[str, ...]: ...
|
||||
|
||||
def selection_set(self, items: str | list[str] | tuple[str, ...]) -> None: ...
|
||||
def selection_add(self, items: str | list[str] | tuple[str, ...]) -> None: ...
|
||||
def selection_remove(self, items: str | list[str] | tuple[str, ...]) -> None: ...
|
||||
def selection_toggle(self, items: str | list[str] | tuple[str, ...]) -> None: ...
|
||||
@overload
|
||||
def set(self, item: str, column: None = None, value: None = None) -> dict[str, Any]: ...
|
||||
def selection_set(self, __items: list[str] | tuple[str, ...] | list[int] | tuple[int, ...]) -> None: ...
|
||||
@overload
|
||||
def set(self, item: str, column: _TreeviewColumnId, value: None = None) -> Any: ...
|
||||
def selection_set(self, *items: str | int) -> None: ...
|
||||
@overload
|
||||
def set(self, item: str, column: _TreeviewColumnId, value: Any) -> Literal[""]: ...
|
||||
def selection_add(self, __items: list[str] | tuple[str, ...] | list[int] | tuple[int, ...]) -> None: ...
|
||||
@overload
|
||||
def selection_add(self, *items: str | int) -> None: ...
|
||||
@overload
|
||||
def selection_remove(self, __items: list[str] | tuple[str, ...] | list[int] | tuple[int, ...]) -> None: ...
|
||||
@overload
|
||||
def selection_remove(self, *items: str | int) -> None: ...
|
||||
@overload
|
||||
def selection_toggle(self, __items: list[str] | tuple[str, ...] | list[int] | tuple[int, ...]) -> None: ...
|
||||
@overload
|
||||
def selection_toggle(self, *items: str | int) -> None: ...
|
||||
@overload
|
||||
def set(self, item: str | int, column: None = None, value: None = None) -> dict[str, Any]: ...
|
||||
@overload
|
||||
def set(self, item: str | int, column: str | int, value: None = None) -> Any: ...
|
||||
@overload
|
||||
def set(self, item: str | int, column: str | int, value: Any) -> Literal[""]: ...
|
||||
# There's no tag_unbind() or 'add' argument for whatever reason.
|
||||
# Also, it's 'callback' instead of 'func' here.
|
||||
@overload
|
||||
@@ -1150,7 +1160,7 @@ class Treeview(Widget, tkinter.XView, tkinter.YView):
|
||||
@overload
|
||||
def tag_has(self, tagname: str, item: None = None) -> tuple[str, ...]: ...
|
||||
@overload
|
||||
def tag_has(self, tagname: str, item: str) -> bool: ...
|
||||
def tag_has(self, tagname: str, item: str | int) -> bool: ...
|
||||
|
||||
class LabeledScale(Frame):
|
||||
label: Incomplete
|
||||
|
||||
Reference in New Issue
Block a user