32 enum class Stage { Structure = 0, Judgments = 1, Synthesis = 2 };
34 explicit MainWindow(QWidget* parent =
nullptr);
37 void setStage(Stage stage);
40 void closeEvent(QCloseEvent* event)
override;
48 void updateBreadcrumb();
50 void onDocumentSelectionChanged(
const QString& cluster,
const QString& node);
51 void onJudgmentNodeSelected(
const QString& parent,
52 const QString& destCluster,
54 void onJudgmentClusterSelected(
const QString& parent);
55 void onNodeActivated(
const QString& name);
56 void openRecentFile();
57 void clearRecentFiles();
58 void rebuildRecentMenu();
61 [[nodiscard]]
bool maybeSave();
62 [[nodiscard]]
bool openPath(
const QString& path);
63 void rememberRecentFile(
const QString& path);
64 void buildStagePages();
66 static constexpr int kMaxRecentFiles = 10;
69 Stage stage_ = Stage::Structure;
71 QStackedWidget* stages_ =
nullptr;
72 QButtonGroup* stageButtons_ =
nullptr;
73 QWidget* breadcrumbBar_ =
nullptr;
74 QHBoxLayout* breadcrumbLay_ =
nullptr;
75 QAction* connectModeAction_ =
nullptr;
76 QMenu* recentMenu_ =
nullptr;
85 QStackedWidget* judgmentCenter_ =
nullptr;
Owns the root anpcpp::AnpNetwork, undo stack, file path, and dirty flag.
Definition document.hpp:23
Horizontal judgment selector: Node|Cluster, Wrt, Other Cluster.
Definition judgment_nav_panel.hpp:22
Primary window: stages Structure / Judgments / Synthesis.
Definition mainwindow.hpp:29
Visual editor for clusters, nodes, and connections.
Definition network_canvas.hpp:29
Displays supermatrices, limit matrix, and alternative scores.
Definition results_panel.hpp:26