development-hub/diagrams/first-assesment_frontend_1....

44 lines
803 B
Plaintext

@startuml
class MainWindow {
+menu_bar: QMenuBar
+project_list: ProjectListWidget
+workspace: WorkspaceManager
+status_bar: QStatusBar
}
class ProjectListWidget {
+project_tree: QTreeWidget
+context_menu: QMenu
+discover_projects()
+handle_context_menu()
}
class WorkspaceManager {
+panes: List[PaneWidget]
+splitter: QSplitter
+split_horizontal()
+split_vertical()
+close_pane()
}
class PaneWidget {
+tab_bar: QTabBar
+tabs: List[QTabWidget]
+add_tab()
+close_tab()
}
class TerminalWidget {
+pty: pty.process
+screen: pyte.Screen
+terminal: QPlainTextEdit
+start_shell()
+handle_input()
}
MainWindow --> ProjectListWidget
MainWindow --> WorkspaceManager
WorkspaceManager --> PaneWidget
PaneWidget --> TerminalWidget
ProjectListWidget --> dialogs
@enduml