simvx.editor.app¶
SimVX Game Editor — self-hosted on simvx.core.ui + Vulkan.
Professional editor shell using DockContainer layout, EditorTheme, and engine-native widgets. No PySide6/Qt dependencies.
Usage: from simvx.editor.app import EditorShell, launch launch() # or: simvx-editor from CLI
Module Contents¶
Classes¶
Main editor UI — Godot-style layout with dockable panels. |
Functions¶
Editor entry point — launched via |
Data¶
API¶
- simvx.editor.app.log¶
‘getLogger(…)’
- class simvx.editor.app.EditorShell(project_path: str | None = None, **kwargs)¶
Bases:
simvx.core.NodeMain editor UI — Godot-style layout with dockable panels.
Layout (top to bottom): MenuBar (28 px) Toolbar (36 px) DockContainer (fills remainder) Left dock: Scene Tree panel Center: WorkspaceTabs (top) + ViewportOverlay + Bottom tabs Right dock: Inspector panel StatusBar (20 px)
Initialization
- ready()¶
Build the full editor UI tree.
- process(dt: float)¶
Per-frame update — track window resize and update status.
- property scene_tree_panel¶
- property inspector_panel¶
- save_layout() dict¶
- restore_layout(data: dict)¶
- script_error_raised¶
‘Signal(…)’
- classmethod __init_subclass__(**kwargs)¶
- property name: str¶
- property process_mode: simvx.core.descriptors.ProcessMode¶
- reset_error() None¶
- add_child(node: simvx.core.node.Node) simvx.core.node.Node¶
- remove_child(node: simvx.core.node.Node)¶
- reparent(new_parent: simvx.core.node.Node)¶
- get_node(path: str) simvx.core.node.Node¶
- find_child(name: str, recursive: bool = False) simvx.core.node.Node | None¶
- find(node_type: type) simvx.core.node.Node | None¶
- property path: str¶
- add_to_group(group: str)¶
- remove_from_group(group: str)¶
- is_in_group(group: str) bool¶
- enter_tree() None¶
- exit_tree() None¶
- physics_process(dt: float) None¶
- draw(renderer) None¶
- input_event(event: simvx.core.events.InputEvent) None¶
- input(event: simvx.core.events.TreeInputEvent) None¶
- unhandled_input(event: simvx.core.events.TreeInputEvent) None¶
- start_coroutine(gen: simvx.core.descriptors.Coroutine) simvx.core.descriptors.CoroutineHandle¶
- stop_coroutine(gen_or_handle)¶
- destroy()¶
- queue_free¶
None
- property tree: simvx.core.scene_tree.SceneTree¶
- get_tree() simvx.core.scene_tree.SceneTree¶
- __getitem__(key: str)¶
- classmethod get_properties() dict[str, simvx.core.descriptors.Property]¶
- get_settings¶
None
- __repr__()¶
- simvx.editor.app.launch(project_path: str | None = None)¶
Editor entry point — launched via
simvx-editorcommand.Args: project_path: If given, skip the welcome screen and open this project directly.