65 lines
2.2 KiB
Python
65 lines
2.2 KiB
Python
from matplotlib import backend_tools, widgets
|
|
from matplotlib.backend_bases import FigureCanvasBase
|
|
from matplotlib.figure import Figure
|
|
|
|
from collections.abc import Callable, Iterable
|
|
from typing import Any, TypeVar
|
|
|
|
class ToolEvent:
|
|
name: str
|
|
sender: Any
|
|
tool: backend_tools.ToolBase
|
|
data: Any
|
|
def __init__(self, name, sender, tool, data: Any | None = ...) -> None: ...
|
|
|
|
class ToolTriggerEvent(ToolEvent):
|
|
canvasevent: ToolEvent
|
|
def __init__(
|
|
self,
|
|
name,
|
|
sender,
|
|
tool,
|
|
canvasevent: ToolEvent | None = ...,
|
|
data: Any | None = ...,
|
|
) -> None: ...
|
|
|
|
class ToolManagerMessageEvent:
|
|
name: str
|
|
sender: Any
|
|
message: str
|
|
def __init__(self, name: str, sender: Any, message: str) -> None: ...
|
|
|
|
class ToolManager:
|
|
keypresslock: widgets.LockDraw
|
|
messagelock: widgets.LockDraw
|
|
def __init__(self, figure: Figure | None = ...) -> None: ...
|
|
@property
|
|
def canvas(self) -> FigureCanvasBase | None: ...
|
|
@property
|
|
def figure(self) -> Figure | None: ...
|
|
@figure.setter
|
|
def figure(self, figure: Figure) -> None: ...
|
|
def set_figure(self, figure: Figure, update_tools: bool = ...) -> None: ...
|
|
def toolmanager_connect(self, s: str, func: Callable[[ToolEvent], Any]) -> int: ...
|
|
def toolmanager_disconnect(self, cid: int) -> None: ...
|
|
def message_event(self, message: str, sender: Any | None = ...) -> None: ...
|
|
@property
|
|
def active_toggle(self) -> dict[str | None, list[str] | str]: ...
|
|
def get_tool_keymap(self, name: str) -> list[str]: ...
|
|
def update_keymap(self, name: str, key: str | Iterable[str]) -> None: ...
|
|
def remove_tool(self, name: str) -> None: ...
|
|
_T = TypeVar("_T", bound=backend_tools.ToolBase)
|
|
def add_tool(self, name: str, tool: type[_T], *args, **kwargs) -> _T: ...
|
|
def trigger_tool(
|
|
self,
|
|
name: str | backend_tools.ToolBase,
|
|
sender: Any | None = ...,
|
|
canvasevent: ToolEvent | None = ...,
|
|
data: Any | None = ...,
|
|
) -> None: ...
|
|
@property
|
|
def tools(self) -> dict[str, backend_tools.ToolBase]: ...
|
|
def get_tool(
|
|
self, name: str | backend_tools.ToolBase, warn: bool = ...
|
|
) -> backend_tools.ToolBase | None: ...
|