2024-12-03 20:07:25 +08:00
|
|
|
#ifndef MAINWINDOW_H
|
|
|
|
|
#define MAINWINDOW_H
|
|
|
|
|
|
|
|
|
|
#include <QMainWindow>
|
|
|
|
|
#include <QComboBox>
|
|
|
|
|
#include <QWidgetAction>
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
QT_BEGIN_NAMESPACE
|
|
|
|
|
namespace Ui { class CMainWindow; }
|
|
|
|
|
QT_END_NAMESPACE
|
|
|
|
|
|
|
|
|
|
class QGraphicsItem;
|
|
|
|
|
class QUndoStack;
|
|
|
|
|
class DrawingPanel;
|
|
|
|
|
class GraphicElementsPanel;
|
|
|
|
|
class DesignerScene;
|
|
|
|
|
class DiagramCavas;
|
|
|
|
|
class ElectricElementsBox;
|
2025-02-06 16:36:50 +08:00
|
|
|
class LoadPageDlg;
|
2025-03-04 09:44:03 +08:00
|
|
|
class projectModelDlg;
|
2025-04-30 16:29:17 +08:00
|
|
|
class TopologyView;
|
2025-05-09 19:36:32 +08:00
|
|
|
class DiagramView;
|
2024-12-03 20:07:25 +08:00
|
|
|
|
|
|
|
|
class CMainWindow : public QMainWindow
|
|
|
|
|
{
|
|
|
|
|
Q_OBJECT
|
|
|
|
|
|
|
|
|
|
public:
|
|
|
|
|
CMainWindow(QWidget *parent = nullptr);
|
|
|
|
|
~CMainWindow();
|
|
|
|
|
|
|
|
|
|
protected:
|
|
|
|
|
virtual void closeEvent(QCloseEvent* event) override;
|
|
|
|
|
virtual void changeEvent(QEvent* event) override;
|
|
|
|
|
|
|
|
|
|
private:
|
|
|
|
|
void initializeDockUi();
|
|
|
|
|
void initializeAction();
|
|
|
|
|
|
|
|
|
|
private slots:
|
|
|
|
|
void onAction_zoomIn();
|
|
|
|
|
void onAction_zoomOut();
|
|
|
|
|
void onAction_zoomFit();
|
|
|
|
|
void onAction_createGroup();
|
|
|
|
|
void onAction_destroyGroup();
|
2025-03-04 09:44:03 +08:00
|
|
|
void onAction_editProject();
|
2025-05-23 10:30:52 +08:00
|
|
|
void onAction_editBay();
|
2024-12-03 20:07:25 +08:00
|
|
|
void onSignal_addItem(QGraphicsItem*);
|
|
|
|
|
void onSignal_deleteItem();
|
2025-02-06 16:36:50 +08:00
|
|
|
void onSignal_loadPage();
|
2024-12-03 20:07:25 +08:00
|
|
|
|
|
|
|
|
public:
|
|
|
|
|
GraphicElementsPanel* graphicsElementsPanel() const;
|
|
|
|
|
|
|
|
|
|
private:
|
|
|
|
|
QAction* SavePerspectiveAction = nullptr;
|
|
|
|
|
QWidgetAction* PerspectiveListAction = nullptr;
|
|
|
|
|
QComboBox* PerspectiveComboBox = nullptr;
|
|
|
|
|
|
|
|
|
|
QUndoStack* m_pUndoStack;
|
|
|
|
|
|
|
|
|
|
Ui::CMainWindow *ui;
|
|
|
|
|
|
|
|
|
|
//ads::CDockManager* DockManager;
|
|
|
|
|
//ads::CDockAreaWidget* StatusDockArea;
|
|
|
|
|
//ads::CDockWidget* TimelineDockWidget;
|
|
|
|
|
|
|
|
|
|
DiagramCavas* m_pDiagramCavas;
|
|
|
|
|
DrawingPanel* m_pDrawingPanel;
|
|
|
|
|
ElectricElementsBox* m_pElectricElementsBox;
|
2025-04-30 16:29:17 +08:00
|
|
|
TopologyView* m_pTopologyView;
|
2025-05-09 19:36:32 +08:00
|
|
|
DiagramView* m_pDiagramView;
|
2024-12-03 20:07:25 +08:00
|
|
|
GraphicElementsPanel* m_pGraphicElementsPanel;
|
2025-02-06 16:36:50 +08:00
|
|
|
LoadPageDlg* m_pLoadPageDlg;
|
2025-03-04 09:44:03 +08:00
|
|
|
projectModelDlg* m_pProjectModelDlg;
|
2024-12-03 20:07:25 +08:00
|
|
|
};
|
|
|
|
|
#endif // MAINWINDOW_H
|