How blazeboyz0/cinderde works
CinderDE is a lightweight Qt desktop code editor. The principal workflow is opening a workspace and editing files in tabs, with language-aware highlighting and optional LSP assistance; users can also build or run files using configured commands and view output. Workspace/session settings, user language packs, and preferences support that workflow. The graph reflects README capabilities and the supplied source index and excerpts; some UI wiring and unsampled subsystem details are not verified, so uncertain connections are omitted.
Main entry points: main_window.cpp Main window · editor_tab.cpp Editor tabs · lsp_manager.cpp LSP manager · preferences.cpp Preferences and session
Components 21
Desktop interface
- Application startup
src/main.cpp - Main window
src/main_window.cpp - File explorer
src/file_explorer.cpp
Editing and languages
- Editor tabs
src/editor_tab.cpp - Syntax highlighting
src/syntax_highlighter.cpp - Code completion
src/code_completion.cpp - File type detection
src/file_type_detector.cpp - Language packs
src/language_pack.cpp
Build and run
- Build/run manager
src/build_run_manager.cpp - Build/run settings
src/build_run_dialog.cpp - Output and diagnostics
src/output_panel.cpp - Diagnostic parser
src/diagnostic_parser.cpp - External toolchains
Language intelligence
- LSP manager
src/lsp_manager.cpp - LSP client
src/lsp_client.cpp - LSP configuration
src/lsp_dialog.cpp - External LSP servers
Workspace and settings
- Workspace configuration
src/workspace_config.cpp - Preferences and session
src/preferences.cpp - Preferences dialog
src/preferences_dialog.cpp
Other components
- Developer
Connections 25
- Developer → Application startup: launches
README.md - Application startup → Main window: creates
src/main.cpp - Main window → File explorer: hosts
- Main window → Editor tabs: hosts
- Main window → Output and diagnostics: hosts
- Main window → Build/run manager: invokes
- Main window → Workspace configuration: loads settings
src/main_window.cpp - Main window → Preferences and session: restores session
src/main_window.cpp - Main window → Build/run settings: opens
src/main_window.cpp - Main window → LSP configuration: opens
src/main_window.cpp - Editor tabs → File type detection: detects type
src/editor_tab.cpp - Editor tabs → Syntax highlighting: configures
- Editor tabs → Code completion: uses
src/editor_tab.cpp - Editor tabs → LSP manager: sends document events
src/editor_tab.cpp - Syntax highlighting → Language packs: uses definitions
- File type detection → Language packs: looks up extensions
src/file_type_detector.cpp - Build/run manager → External toolchains: runs commands
README.md - LSP manager → LSP client: starts and manages
src/lsp_manager.cpp - LSP manager → File type detection: detects language
src/lsp_manager.cpp - LSP manager → Language packs: resolves language IDs
src/lsp_manager.cpp - LSP manager → Preferences and session: reads server config
src/lsp_manager.cpp - LSP client → External LSP servers: communicates with
README.md - LSP configuration → Preferences and session: configures servers
src/lsp_dialog.cpp - Preferences dialog → Preferences and session: updates
src/preferences_dialog.cpp - Workspace configuration → Build/run manager: supplies commands