# {py:mod}`simvx.core.debug.ui_inspector` ```{py:module} simvx.core.debug.ui_inspector ``` ```{autodoc2-docstring} simvx.core.debug.ui_inspector :allowtitles: ``` ## Module Contents ### Classes ````{list-table} :class: autosummary longtable :align: left * - {py:obj}`UIInputLog ` - ```{autodoc2-docstring} simvx.core.debug.ui_inspector.UIInputLog :summary: ``` * - {py:obj}`UIInspector ` - ```{autodoc2-docstring} simvx.core.debug.ui_inspector.UIInspector :summary: ``` ```` ### Data ````{list-table} :class: autosummary longtable :align: left * - {py:obj}`__all__ ` - ```{autodoc2-docstring} simvx.core.debug.ui_inspector.__all__ :summary: ``` ```` ### API ````{py:data} __all__ :canonical: simvx.core.debug.ui_inspector.__all__ :value: > ['UIInspector', 'UIInputLog'] ```{autodoc2-docstring} simvx.core.debug.ui_inspector.__all__ ``` ```` `````{py:class} UIInputLog :canonical: simvx.core.debug.ui_inspector.UIInputLog ```{autodoc2-docstring} simvx.core.debug.ui_inspector.UIInputLog ``` ````{py:attribute} timestamp :canonical: simvx.core.debug.ui_inspector.UIInputLog.timestamp :type: float :value: > None ```{autodoc2-docstring} simvx.core.debug.ui_inspector.UIInputLog.timestamp ``` ```` ````{py:attribute} event_type :canonical: simvx.core.debug.ui_inspector.UIInputLog.event_type :type: str :value: > None ```{autodoc2-docstring} simvx.core.debug.ui_inspector.UIInputLog.event_type ``` ```` ````{py:attribute} position :canonical: simvx.core.debug.ui_inspector.UIInputLog.position :type: tuple[float, float] :value: > (0.0, 0.0) ```{autodoc2-docstring} simvx.core.debug.ui_inspector.UIInputLog.position ``` ```` ````{py:attribute} target_path :canonical: simvx.core.debug.ui_inspector.UIInputLog.target_path :type: str :value: ```{autodoc2-docstring} simvx.core.debug.ui_inspector.UIInputLog.target_path ``` ```` ````{py:attribute} outcome :canonical: simvx.core.debug.ui_inspector.UIInputLog.outcome :type: str :value: ```{autodoc2-docstring} simvx.core.debug.ui_inspector.UIInputLog.outcome ``` ```` ````{py:attribute} details :canonical: simvx.core.debug.ui_inspector.UIInputLog.details :type: str :value: ```{autodoc2-docstring} simvx.core.debug.ui_inspector.UIInputLog.details ``` ```` ````` `````{py:class} UIInspector() :canonical: simvx.core.debug.ui_inspector.UIInspector ```{autodoc2-docstring} simvx.core.debug.ui_inspector.UIInspector ``` ```{rubric} Initialization ``` ```{autodoc2-docstring} simvx.core.debug.ui_inspector.UIInspector.__init__ ``` ````{py:method} log_event(event_type: str, event, target, outcome: str) :canonical: simvx.core.debug.ui_inspector.UIInspector.log_event ```{autodoc2-docstring} simvx.core.debug.ui_inspector.UIInspector.log_event ``` ```` ````{py:method} log_focus_change(old, new) :canonical: simvx.core.debug.ui_inspector.UIInspector.log_focus_change ```{autodoc2-docstring} simvx.core.debug.ui_inspector.UIInspector.log_focus_change ``` ```` ````{py:method} log_hit_test(point, result) :canonical: simvx.core.debug.ui_inspector.UIInspector.log_hit_test ```{autodoc2-docstring} simvx.core.debug.ui_inspector.UIInspector.log_hit_test ``` ```` ````{py:method} snapshot_state(tree) :canonical: simvx.core.debug.ui_inspector.UIInspector.snapshot_state ```{autodoc2-docstring} simvx.core.debug.ui_inspector.UIInspector.snapshot_state ``` ```` ````{py:method} get_recent_log(count: int = 20) -> list[simvx.core.debug.ui_inspector.UIInputLog] :canonical: simvx.core.debug.ui_inspector.UIInspector.get_recent_log ```{autodoc2-docstring} simvx.core.debug.ui_inspector.UIInspector.get_recent_log ``` ```` ````{py:method} inspect_control(control) -> dict :canonical: simvx.core.debug.ui_inspector.UIInspector.inspect_control ```{autodoc2-docstring} simvx.core.debug.ui_inspector.UIInspector.inspect_control ``` ```` `````