# {py:mod}`simvx.core.input.router` ```{py:module} simvx.core.input.router ``` ```{autodoc2-docstring} simvx.core.input.router :allowtitles: ``` ## Module Contents ### Classes ````{list-table} :class: autosummary longtable :align: left * - {py:obj}`InputRouter ` - ```{autodoc2-docstring} simvx.core.input.router.InputRouter :summary: ``` ```` ### Data ````{list-table} :class: autosummary longtable :align: left * - {py:obj}`log ` - ```{autodoc2-docstring} simvx.core.input.router.log :summary: ``` * - {py:obj}`TOUCH_DOWN ` - ```{autodoc2-docstring} simvx.core.input.router.TOUCH_DOWN :summary: ``` * - {py:obj}`TOUCH_UP ` - ```{autodoc2-docstring} simvx.core.input.router.TOUCH_UP :summary: ``` * - {py:obj}`TOUCH_MOVE ` - ```{autodoc2-docstring} simvx.core.input.router.TOUCH_MOVE :summary: ``` * - {py:obj}`__all__ ` - ```{autodoc2-docstring} simvx.core.input.router.__all__ :summary: ``` ```` ### API ````{py:data} log :canonical: simvx.core.input.router.log :value: > 'getLogger(...)' ```{autodoc2-docstring} simvx.core.input.router.log ``` ```` ````{py:data} TOUCH_DOWN :canonical: simvx.core.input.router.TOUCH_DOWN :value: > 0 ```{autodoc2-docstring} simvx.core.input.router.TOUCH_DOWN ``` ```` ````{py:data} TOUCH_UP :canonical: simvx.core.input.router.TOUCH_UP :value: > 1 ```{autodoc2-docstring} simvx.core.input.router.TOUCH_UP ``` ```` ````{py:data} TOUCH_MOVE :canonical: simvx.core.input.router.TOUCH_MOVE :value: > 2 ```{autodoc2-docstring} simvx.core.input.router.TOUCH_MOVE ``` ```` `````{py:class} InputRouter(tree: simvx.core.scene_tree.SceneTree | None = None, *, input_state: simvx.core.input.state._Input | None = None) :canonical: simvx.core.input.router.InputRouter ```{autodoc2-docstring} simvx.core.input.router.InputRouter ``` ```{rubric} Initialization ``` ```{autodoc2-docstring} simvx.core.input.router.InputRouter.__init__ ``` ````{py:attribute} __slots__ :canonical: simvx.core.input.router.InputRouter.__slots__ :value: > ('tree', '_input', '_primary_finger', '_last_motion_pos') ```{autodoc2-docstring} simvx.core.input.router.InputRouter.__slots__ ``` ```` ````{py:method} reset() -> None :canonical: simvx.core.input.router.InputRouter.reset ```{autodoc2-docstring} simvx.core.input.router.InputRouter.reset ``` ```` ````{py:method} is_key_down(code: int) -> bool :canonical: simvx.core.input.router.InputRouter.is_key_down ```{autodoc2-docstring} simvx.core.input.router.InputRouter.is_key_down ``` ```` ````{py:method} key(code: int, pressed: bool, *, echo: bool = False, ctrl: bool | None = None, shift: bool | None = None, alt: bool | None = None, meta: bool | None = None) -> None :canonical: simvx.core.input.router.InputRouter.key ```{autodoc2-docstring} simvx.core.input.router.InputRouter.key ``` ```` ````{py:method} char(text: str) -> None :canonical: simvx.core.input.router.InputRouter.char ```{autodoc2-docstring} simvx.core.input.router.InputRouter.char ``` ```` ````{py:method} mouse_button(button: simvx.core.input.enums.MouseButton, pressed: bool, *, ctrl: bool | None = None, shift: bool | None = None, alt: bool | None = None, meta: bool | None = None) -> None :canonical: simvx.core.input.router.InputRouter.mouse_button ```{autodoc2-docstring} simvx.core.input.router.InputRouter.mouse_button ``` ```` ````{py:method} mouse_motion(x: float, y: float) -> None :canonical: simvx.core.input.router.InputRouter.mouse_motion ```{autodoc2-docstring} simvx.core.input.router.InputRouter.mouse_motion ``` ```` ````{py:method} mouse_motion_relative(dx: float, dy: float) -> None :canonical: simvx.core.input.router.InputRouter.mouse_motion_relative ```{autodoc2-docstring} simvx.core.input.router.InputRouter.mouse_motion_relative ``` ```` ````{py:method} scroll(dx: float, dy: float) -> None :canonical: simvx.core.input.router.InputRouter.scroll ```{autodoc2-docstring} simvx.core.input.router.InputRouter.scroll ``` ```` ````{py:method} touch(finger_id: int, action: int, x: float, y: float, pressure: float = 1.0) -> None :canonical: simvx.core.input.router.InputRouter.touch ```{autodoc2-docstring} simvx.core.input.router.InputRouter.touch ``` ```` ````` ````{py:data} __all__ :canonical: simvx.core.input.router.__all__ :value: > ['InputRouter', 'TOUCH_DOWN', 'TOUCH_UP', 'TOUCH_MOVE'] ```{autodoc2-docstring} simvx.core.input.router.__all__ ``` ````