simvx.editor.ide_bridge¶
IDE Bridge Plugin – integrates simvx.ide features into the editor’s CodeEditorPanel.
No panel swapping: the editor already has a CodeEditorPanel from core. The bridge injects IDE capabilities (LSP, diagnostics, breakpoints, completions) and adds IDE-only panels (Terminal, Output, Problems, Search).
If simvx.ide is not installed, this module raises ImportError at import time, which EditorShell catches gracefully.
Module Contents¶
Classes¶
Bridges EditorState <-> IDEState when simvx.ide is installed. |
Data¶
API¶
- simvx.editor.ide_bridge.log¶
‘getLogger(…)’
- class simvx.editor.ide_bridge.IDEBridgePlugin(editor_state: simvx.editor.state.EditorState, bottom_tabs: simvx.core.ui.tabs.TabContainer, code_panel: simvx.core.ui.code_editor_panel.CodeEditorPanel | None = None)¶
Bridges EditorState <-> IDEState when simvx.ide is installed.
Instead of swapping panels, injects IDE callbacks into the editor’s existing CodeEditorPanel and adds IDE-only bottom panels.
Lifecycle::
bridge = IDEBridgePlugin(editor_state, bottom_tabs, code_panel) bridge.activate() # wire signals, inject callbacks, start LSP bridge.poll(dt) # call each frame bridge.deactivate() # cleanup
Initialization
- property ide_state: simvx.ide.IDEState¶
- property ide_config: simvx.ide.IDEConfig¶
- activate()¶
Wire signals, inject IDE callbacks, start LSP and lint runner.
- deactivate()¶
Disconnect signals, remove panels, stop LSP.
- poll(dt: float)¶
Per-frame update – poll LSP client for messages.