diff --git a/common/core_model/types.cpp b/common/core_model/types.cpp index 2d1c118..437a561 100644 --- a/common/core_model/types.cpp +++ b/common/core_model/types.cpp @@ -1,9 +1,21 @@ #include "types.h" -const QMap linkType = { - {AIT_motor,GIT_itemRect},{AIT_bus,GIT_bus}, +const QMap& getLinkType() { + static const QMap linkType = { + {AIT_motor, GIT_itemRect}, + {AIT_bus, GIT_bus}, + }; + return linkType; +} + +// 类型转换 +const QMap& getTypeToProGraphic() { + static const QMap typeToProGraphic = { + {0, GIT_node}, {1, GIT_bus}, {3, GIT_itemRect}, {4, GIT_ctGroup}, + {5, GIT_ptGroup}, {6, GIT_ES}, {7, GIT_FES}, {8, GIT_link}, + {9, GIT_DS}, {10, GIT_DTEDS}, {11, GIT_PI}, {12, GIT_LA}, + {13, GIT_cableTer}, {14, GIT_cableEnd}, {15, GIT_2wTransformer}, + {16, GIT_3wTransformer}, {18, GIT_CustomType} }; -//类型转换 -const QMap typeToProGraphic = { - {0,GIT_node},{1,GIT_bus},{3,GIT_itemRect},{4,GIT_ctGroup},{5,GIT_ptGroup},{6,GIT_ES},{7,GIT_FES},{8,GIT_link},{9,GIT_DS},{10,GIT_DTEDS},{11,GIT_PI},{12,GIT_LA},{13,GIT_cableTer},{14,GIT_cableEnd},{15,GIT_2wTransformer},{16,GIT_3wTransformer},{18,GIT_CustomType} -}; + return typeToProGraphic; +} diff --git a/common/core_model/types.h b/common/core_model/types.h index cc67ba7..d2215bc 100644 --- a/common/core_model/types.h +++ b/common/core_model/types.h @@ -169,7 +169,9 @@ enum class ComponentType { CableEnd = 14 // 电缆端 }; -extern const QMap linkType; +//extern const QMap linkType; +extern const QMap& getLinkType(); //类型转换 -extern const QMap typeToProGraphic; +//extern const QMap typeToProGraphic; +extern const QMap& getTypeToProGraphic(); #endif diff --git a/diagramCavas/include/bayManagerDlg.h b/diagramCavas/include/bayManagerDlg.h index 403848c..b11e251 100644 --- a/diagramCavas/include/bayManagerDlg.h +++ b/diagramCavas/include/bayManagerDlg.h @@ -14,6 +14,7 @@ class BayManagerContentDlg; class FixedPortsModel; class BayProperty; class TitleBar; +class QSizeGrip; class BayManagerDlg : public QDialog { @@ -33,11 +34,14 @@ public slots: void onListItemClicked(QListWidgetItem *item); private: void generatePage(QList); //生成间隔页 <间隔列表> +protected: + void resizeEvent(QResizeEvent *); private: Ui::bayManagerDlg *ui; FixedPortsModel* _modelController; QMap _contentData; // TitleBar* m_titleBar; + QSizeGrip* _pSizeGrip; }; #endif diff --git a/diagramCavas/include/dataSourceDlg.h b/diagramCavas/include/dataSourceDlg.h index 9914ef2..a6d3f2a 100644 --- a/diagramCavas/include/dataSourceDlg.h +++ b/diagramCavas/include/dataSourceDlg.h @@ -17,6 +17,7 @@ class QPropertyHandle; struct DataSourceType; class QListWidgetItem; class TitleBar; +class QSizeGrip; class DataSourceDlg : public QDialog { @@ -55,6 +56,8 @@ private: void expandToNodeByCode(const QString& code,QStandardItemModel* model); //根据属性code展开树到指定节点 void selectListItemByCode(const QString& code); //在listWidget中选中指定code的项 QStandardItem* findCategoryNodeByPropertyCode(QStandardItem* item, const QString& code); +protected: + void resizeEvent(QResizeEvent *); private: Ui::dataSourceDlg *ui; QStandardItemModel* _treeModel; @@ -64,6 +67,7 @@ private: QListWidgetItem* _curProperty; //当前属性 QString m_targetPropertyCode; //打开的目标code TitleBar* m_titleBar; + QSizeGrip* _pSizeGrip; }; #endif diff --git a/diagramCavas/include/diagramConnectSetting.h b/diagramCavas/include/diagramConnectSetting.h index 51d7276..e8b1cbe 100644 --- a/diagramCavas/include/diagramConnectSetting.h +++ b/diagramCavas/include/diagramConnectSetting.h @@ -12,6 +12,7 @@ QT_END_NAMESPACE struct ChannelConfig; class TitleBar; +class QSizeGrip; class DiagramConnectSetting : public QDialog { @@ -32,9 +33,12 @@ public slots: private: void initial(); void updateByConfig(ChannelConfig,int nType = 0); //0http 1websocket +protected: + void resizeEvent(QResizeEvent *); private: Ui::diagramConnectSetting *ui; TitleBar* m_titleBar; + QSizeGrip* _pSizeGrip; }; #endif diff --git a/diagramCavas/include/diagramEditor/confirmEditorDlg.h b/diagramCavas/include/diagramEditor/confirmEditorDlg.h index af3bd5e..70cc298 100644 --- a/diagramCavas/include/diagramEditor/confirmEditorDlg.h +++ b/diagramCavas/include/diagramEditor/confirmEditorDlg.h @@ -10,6 +10,7 @@ QT_END_NAMESPACE class DiagramEditorModel; class TitleBar; +class QSizeGrip; class ConfirmEditorDlg : public QDialog { @@ -27,10 +28,13 @@ signals: public slots: void onOkClicked(); void onCancelClicked(); +protected: + void resizeEvent(QResizeEvent *); private: Ui::confirmEditorDlg *ui; QPointer _pModel; TitleBar* m_titleBar; + QSizeGrip* _pSizeGrip; }; #endif diff --git a/diagramCavas/include/diagramEditor/diagramEditorBayDetailAddDlg.h b/diagramCavas/include/diagramEditor/diagramEditorBayDetailAddDlg.h index f5060d8..4ff1380 100644 --- a/diagramCavas/include/diagramEditor/diagramEditorBayDetailAddDlg.h +++ b/diagramCavas/include/diagramEditor/diagramEditorBayDetailAddDlg.h @@ -13,6 +13,7 @@ class DiagramEditorBayDetailSettingDlg; class QStandardItemModel; class QComboBox; class TitleBar; +class QSizeGrip; class DiagramEditorBayDetailAddDlg : public QDialog { @@ -55,6 +56,8 @@ public slots: void onComponentSelected(const QModelIndex &index); void onRouteDeleteClicked(); void onRouteRbtnClicked(const QPoint &pos); //线路右键菜单 +protected: + void resizeEvent(QResizeEvent *); private: Ui::diagramEditorBayDetailAddDlg *ui; QStandardItemModel* _selectedModel; @@ -62,6 +65,7 @@ private: int _curMode; //0新建1修改 QStandardItemModel* _bindItemModel; //绑定的对象模型 TitleBar* m_titleBar; + QSizeGrip* _pSizeGrip; }; #endif diff --git a/diagramCavas/include/diagramEditor/diagramEditorBayDetailSettingDlg.h b/diagramCavas/include/diagramEditor/diagramEditorBayDetailSettingDlg.h index 3187b00..3fde721 100644 --- a/diagramCavas/include/diagramEditor/diagramEditorBayDetailSettingDlg.h +++ b/diagramCavas/include/diagramEditor/diagramEditorBayDetailSettingDlg.h @@ -16,6 +16,7 @@ class DiagramEditorBayPreviewDlg; class DiagramEditorModel; class QStandardItemModel; class TitleBar; +class QSizeGrip; class DiagramEditorBayDetailSettingDlg : public QDialog { @@ -50,6 +51,8 @@ public slots: void onRouteDeleteClicked(); void onRouteRbtnClicked(const QPoint &pos); //线路右键菜单 void onRouteEditClicked(); +protected: + void resizeEvent(QResizeEvent *); private: Ui::diagramEditorBayDetailSettingDlg *ui; DiagramEditorBayDetailAddDlg* _pAddDlg; @@ -61,6 +64,7 @@ private: DiagramEditorBayInfo _curBayInfo; //当前使用的间隔信息 DiagramEditorModel* _pModel; TitleBar* m_titleBar; + QSizeGrip* _pSizeGrip; }; #endif diff --git a/diagramCavas/include/diagramEditor/diagramEditorBaySettingDlg.h b/diagramCavas/include/diagramEditor/diagramEditorBaySettingDlg.h index cf1b415..077a792 100644 --- a/diagramCavas/include/diagramEditor/diagramEditorBaySettingDlg.h +++ b/diagramCavas/include/diagramEditor/diagramEditorBaySettingDlg.h @@ -12,6 +12,7 @@ class DiagramEditorWizard; class DiagramEditorBayBlock; class QListWidgetItem; class TitleBar; +class QSizeGrip; class DiagramEditorBaySettingDlg : public QDialog { @@ -32,6 +33,8 @@ public slots: void onCancelClicked(); void onConnectLevelChanged(const QString&); //连接层级改变信号 void onListItemClicked(QListWidgetItem *item); +protected: + void resizeEvent(QResizeEvent *); private: Ui::diagramEditorBaySettingDlg *ui; DiagramEditorWizard* _pWizard; @@ -39,6 +42,7 @@ private: DiagramEditorBayBlock* _curOperateBlock; //当前修改对象 int _curLevel; //当前层级 TitleBar* m_titleBar; + QSizeGrip* _pSizeGrip; }; #endif diff --git a/diagramCavas/include/diagramEditor/diagramEditorPreviewDlg.h b/diagramCavas/include/diagramEditor/diagramEditorPreviewDlg.h index aad8b0e..9d7d609 100644 --- a/diagramCavas/include/diagramEditor/diagramEditorPreviewDlg.h +++ b/diagramCavas/include/diagramEditor/diagramEditorPreviewDlg.h @@ -20,6 +20,8 @@ public: void initial(); void showDlg(); void setParent(EditPanel* p) {_pParent = p;} +protected: + void mousePressEvent(QMouseEvent *event); private: EditView* _pView; EditPreviewScene* _pScene; diff --git a/diagramCavas/include/diagramEditor/diagramEditorTransDetailAddDlg.h b/diagramCavas/include/diagramEditor/diagramEditorTransDetailAddDlg.h index 0b91995..ea21be6 100644 --- a/diagramCavas/include/diagramEditor/diagramEditorTransDetailAddDlg.h +++ b/diagramCavas/include/diagramEditor/diagramEditorTransDetailAddDlg.h @@ -13,6 +13,7 @@ QT_END_NAMESPACE class DiagramEditorTransDetailSettingDlg; class QComboBox; class TitleBar; +class QSizeGrip; class DiagramEditorTransDetailAddDlg : public QDialog { @@ -54,6 +55,8 @@ public slots: void onComponentRbtnClicked(const QPoint &pos); void onRouteDeleteClicked(); void onRouteRbtnClicked(const QPoint &pos); //线路右键菜单 +protected: + void resizeEvent(QResizeEvent *); private: Ui::diagramEditorTransDetailAddDlg *ui; QStandardItemModel* _selectedModel; @@ -62,6 +65,7 @@ private: int _curType; //当前回路类型 0高压中性点1中2低 QStandardItemModel* _bindItemModel; //绑定的对象模型 TitleBar* m_titleBar; + QSizeGrip* _pSizeGrip; }; #endif diff --git a/diagramCavas/include/diagramEditor/diagramEditorTransDetailSettingDlg.h b/diagramCavas/include/diagramEditor/diagramEditorTransDetailSettingDlg.h index e3e075e..34d2e29 100644 --- a/diagramCavas/include/diagramEditor/diagramEditorTransDetailSettingDlg.h +++ b/diagramCavas/include/diagramEditor/diagramEditorTransDetailSettingDlg.h @@ -17,6 +17,7 @@ class DiagramEditorTransPreviewDlg; class DiagramEditorModel; class QTableView; class TitleBar; +class QSizeGrip; class DiagramEditorTransDetailSettingDlg : public QDialog { @@ -48,6 +49,8 @@ public slots: void onRouteDeleteClicked(); void onRouteRbtnClicked(const QPoint &pos); //线路右键菜单 void onRouteEditClicked(); +protected: + void resizeEvent(QResizeEvent *); private: Ui::diagramEditorTransDetailSettingDlg *ui; DiagramEditorTransDetailAddDlg* _pAddDlg; @@ -61,6 +64,7 @@ private: DiagramEditorModel* _pModel; QTableView* _curOperateRouteView; //当前操作的中性点拓扑view TitleBar* m_titleBar; + QSizeGrip* _pSizeGrip; }; #endif diff --git a/diagramCavas/include/diagramEditor/diagramEditorTransSettingDlg.h b/diagramCavas/include/diagramEditor/diagramEditorTransSettingDlg.h index 8c2c492..e3e24ba 100644 --- a/diagramCavas/include/diagramEditor/diagramEditorTransSettingDlg.h +++ b/diagramCavas/include/diagramEditor/diagramEditorTransSettingDlg.h @@ -11,6 +11,7 @@ QT_END_NAMESPACE class DiagramEditorWizard; class DiagramEditorTransformerBlock; class TitleBar; +class QSizeGrip; class DiagramEditorTransSettingDlg : public QDialog { @@ -32,6 +33,8 @@ public slots: void onConnectLevelChanged(const QString&); //连接层级改变信号 void onBayTypeChanged(int n); void onTableItemSelected(); +protected: + void resizeEvent(QResizeEvent *); private: Ui::diagramEditorTransSettingDlg *ui; DiagramEditorWizard* _pWizard; @@ -39,6 +42,7 @@ private: DiagramEditorTransformerBlock* _curOperateBlock; //当前修改对象 QList _prepareDisconnectBlock; //准备断开的连接间隔 TitleBar* m_titleBar; + QSizeGrip* _pSizeGrip; }; #endif diff --git a/diagramCavas/include/diagramEditor/diagramEditorWizard.h b/diagramCavas/include/diagramEditor/diagramEditorWizard.h index f1ab5a6..e9f508f 100644 --- a/diagramCavas/include/diagramEditor/diagramEditorWizard.h +++ b/diagramCavas/include/diagramEditor/diagramEditorWizard.h @@ -16,6 +16,7 @@ class QListWidgetItem; class DiagramEditorBaySettingDlg; class DiagramEditorTransSettingDlg; class TitleBar; +class QSizeGrip; class DiagramEditorWizard : public QDialog { @@ -46,6 +47,8 @@ public slots: void onTransIndexRbtnClicked(const QPoint &pos); //变压器列表右键菜单 void onBayListSelected(QListWidgetItem* pItem); //baylist选择事件 +protected: + void resizeEvent(QResizeEvent *); public: QMap getMapBusInfo() {return _mapBus;} QMap>& getContainerStruct(){return _mapSturctContainer;} @@ -88,6 +91,7 @@ private: QMap> _mapSturctContainer; //划分后的区块 QMap _mapConnect; //连接列表 TitleBar* m_titleBar; + QSizeGrip* _pSizeGrip; }; #endif diff --git a/diagramCavas/include/diagramEditor/editPanel.h b/diagramCavas/include/diagramEditor/editPanel.h index 18f4643..ecea01b 100644 --- a/diagramCavas/include/diagramEditor/editPanel.h +++ b/diagramCavas/include/diagramEditor/editPanel.h @@ -83,6 +83,7 @@ private: void emitTopologySignals(); signals: void panelDelete(const QString&,int); + void previewSelected(EditPanel*); //预览选中事件 protected: void closeEvent(QCloseEvent *closeEvent); private: diff --git a/diagramCavas/include/diagramEditor/editorDiagramLayoutEngine.h b/diagramCavas/include/diagramEditor/editorDiagramLayoutEngine.h index 7194c69..5206cd8 100644 --- a/diagramCavas/include/diagramEditor/editorDiagramLayoutEngine.h +++ b/diagramCavas/include/diagramEditor/editorDiagramLayoutEngine.h @@ -57,7 +57,7 @@ private: QPoint getComponentPosition(const QString& componentName, Context& context); void updateComponent(DiagramEditorComponentInfo& compo, - Direction dir, + int dir, const QPoint& position, int rotate, Context& context); diff --git a/diagramCavas/include/diagramEditor/editorDirectionManager.h b/diagramCavas/include/diagramEditor/editorDirectionManager.h index 6a4448f..339c12f 100644 --- a/diagramCavas/include/diagramEditor/editorDirectionManager.h +++ b/diagramCavas/include/diagramEditor/editorDirectionManager.h @@ -26,8 +26,8 @@ public: return (usedFlags & static_cast(dir)) != 0; } - static int markDirectionOccupied(int usedFlags, Direction dir) { - return usedFlags | static_cast(dir); + static int markDirectionOccupied(int usedFlags, int dir) { + return usedFlags | dir; } static QPoint getIncrement(Direction dir, int hSpacing, int vSpacing) { diff --git a/diagramCavas/include/itemPropertyDlg.h b/diagramCavas/include/itemPropertyDlg.h index 1c7ddf7..d671b25 100644 --- a/diagramCavas/include/itemPropertyDlg.h +++ b/diagramCavas/include/itemPropertyDlg.h @@ -16,6 +16,7 @@ QT_END_NAMESPACE class GraphicsProjectModelItem; class FixedPortsModel; class TitleBar; +class QSizeGrip; class ItemPropertyDlg : public QDialog { @@ -39,6 +40,8 @@ public slots: void onGroupSelected(const QString&); void onHttpDataUpdated(HttpRecommandInfo); //更新推荐列表 +protected: + void resizeEvent(QResizeEvent *); private: Ui::itemPropertyDlg *ui; @@ -55,6 +58,7 @@ private: FixedPortsModel* _curModelController; QString _curGroup; //当前属性组 TitleBar* m_titleBar; + QSizeGrip* _pSizeGrip; }; #endif diff --git a/diagramCavas/include/measureSettingDlg.h b/diagramCavas/include/measureSettingDlg.h index b6fbf74..9d8680d 100644 --- a/diagramCavas/include/measureSettingDlg.h +++ b/diagramCavas/include/measureSettingDlg.h @@ -16,6 +16,7 @@ QT_END_NAMESPACE class BayInfoDlg; class BayMeasureDlg; class TitleBar; +class QSizeGrip; class MeasureSettingDlg : public QDialog { @@ -49,6 +50,8 @@ private: //void setDbCheckVisible(bool); //设置double勾选可见性 void setDbTagVisible(bool); //设置double tag可见性 QJsonObject safeToJsonObject(const QVariant& var); //var转json +protected: + void resizeEvent(QResizeEvent *); private: Ui::measureSettingDlg *ui; BayInfoDlg* _pBayComponent; //component中的bay(元件父) @@ -64,6 +67,7 @@ private: bool _isDouble = false; int _nParentType = 0; //所属父类型 0元件 1间隔 TitleBar* m_titleBar; + QSizeGrip* _pSizeGrip; }; #endif diff --git a/diagramCavas/include/monitorConfigDlg.h b/diagramCavas/include/monitorConfigDlg.h index 5d106ad..fe890b4 100644 --- a/diagramCavas/include/monitorConfigDlg.h +++ b/diagramCavas/include/monitorConfigDlg.h @@ -17,6 +17,7 @@ struct MonitorItemAttributeInfo; class QCompleter; class QStringListModel; class TitleBar; +class QSizeGrip; class MonitorConfigDlg : public QDialog { @@ -40,6 +41,7 @@ public slots: void onConnectParamChanged(const QString&); //连接参数变化事件(发送推荐查询) protected: bool eventFilter(QObject *obj, QEvent *event) override; + void resizeEvent(QResizeEvent *) override; private: void savePropertyData(const QModelIndex ¤t,QUuid uid); //保存属性到uid的属性 void loadPropertyData(const QModelIndex ¤t,QUuid uid); @@ -54,6 +56,7 @@ private: QCompleter* _recommandCompleter; //自动填充器 QStringListModel* _strLstModel; //自动填充模型 TitleBar* m_titleBar; + QSizeGrip* _pSizeGrip; }; #endif diff --git a/diagramCavas/include/monitorDetailAttributeDlg.h b/diagramCavas/include/monitorDetailAttributeDlg.h index 9bebd2d..01158cb 100644 --- a/diagramCavas/include/monitorDetailAttributeDlg.h +++ b/diagramCavas/include/monitorDetailAttributeDlg.h @@ -14,6 +14,7 @@ class QGridLayout; class MonitorAttributeGroupDlg; class MonitorPanel; class TitleBar; +class QSizeGrip; class MonitorDetailAttributeDlg : public QDialog { @@ -31,6 +32,8 @@ public: public slots: void onCloseClicked(); void onColChanged(const QString&); +protected: + void resizeEvent(QResizeEvent *); private: Ui::monitorDetailAttributeDlg *ui; int _curColNum; //当前每行的列数 @@ -39,6 +42,7 @@ private: MonitorPanel* _pParent; QUuid _curId; TitleBar* m_titleBar; + QSizeGrip* _pSizeGrip; }; #endif diff --git a/diagramCavas/include/monitorDisplaySettingDlg.h b/diagramCavas/include/monitorDisplaySettingDlg.h index 45cbed9..e639d3f 100644 --- a/diagramCavas/include/monitorDisplaySettingDlg.h +++ b/diagramCavas/include/monitorDisplaySettingDlg.h @@ -12,6 +12,7 @@ QT_END_NAMESPACE class MonitorPanel; class TitleBar; +class QSizeGrip; class MonitorDisplaySettingDlg : public QDialog { @@ -44,6 +45,8 @@ private: // 辅助方法 bool validateCurrentDeviceState() const; +protected: + void resizeEvent(QResizeEvent *); private: Ui::monitorDisplaySettingDlg *ui; MonitorPanel* _parent; @@ -54,6 +57,7 @@ private: QString _curModel; QMap> _tempSetting; TitleBar* m_titleBar; + QSizeGrip* _pSizeGrip; }; #endif diff --git a/diagramCavas/include/projectDiagramNameInput.h b/diagramCavas/include/projectDiagramNameInput.h index d3ab290..53fb9b0 100644 --- a/diagramCavas/include/projectDiagramNameInput.h +++ b/diagramCavas/include/projectDiagramNameInput.h @@ -9,6 +9,7 @@ QT_END_NAMESPACE class FixedPortsModel; class TitleBar; +class QSizeGrip; class ProjectDiagramNameInput : public QDialog { @@ -25,10 +26,13 @@ public slots: void onOkClicked(); void onCancelClicked(); void onNameEdited(const QString&); +protected: + void resizeEvent(QResizeEvent *); private: Ui::projectDiagramNameInput *ui; FixedPortsModel* _model; TitleBar* m_titleBar; + QSizeGrip* _pSizeGrip; }; #endif diff --git a/diagramCavas/include/projectIconSetting.h b/diagramCavas/include/projectIconSetting.h index 8a027b4..16a5dad 100644 --- a/diagramCavas/include/projectIconSetting.h +++ b/diagramCavas/include/projectIconSetting.h @@ -7,6 +7,7 @@ class FixedPortsModel; class GraphicsProjectModelItem; class TitleBar; +class QSizeGrip; QT_BEGIN_NAMESPACE namespace Ui { class projectIconSetting; } @@ -27,6 +28,8 @@ public: public slots: void onOkClicked(); void onCellClicked(int row,int col); +protected: + void resizeEvent(QResizeEvent *); private: Ui::projectIconSetting *ui; QSize _iconSize; @@ -34,6 +37,7 @@ private: QString _sMetaModel; QString _sModel; TitleBar* m_titleBar; + QSizeGrip* _pSizeGrip; }; #endif diff --git a/diagramCavas/include/projectModelSetting.h b/diagramCavas/include/projectModelSetting.h index dbb8ae6..ac351cf 100644 --- a/diagramCavas/include/projectModelSetting.h +++ b/diagramCavas/include/projectModelSetting.h @@ -11,6 +11,7 @@ class GraphicsBaseModelItem; class BaseModelProperty; class FixedPortsModel; class TitleBar; +class QSizeGrip; class ProjectModelSetting : public QDialog { @@ -40,12 +41,15 @@ public slots: private: void showTestPic(QByteArray); void loadModel(const QString&); +protected: + void resizeEvent(QResizeEvent *); private: Ui::projectModelSetting *ui; FixedPortsModel* _controller; BaseModelProperty* _curItemData; //当前操作对象的属性 QString _curPath; TitleBar* m_titleBar; + QSizeGrip* _pSizeGrip; }; #endif diff --git a/diagramCavas/include/structDataPreviewDlg.h b/diagramCavas/include/structDataPreviewDlg.h index a998bbd..ab648df 100644 --- a/diagramCavas/include/structDataPreviewDlg.h +++ b/diagramCavas/include/structDataPreviewDlg.h @@ -26,6 +26,7 @@ class StructDataMeasurementDelegate; class QStatusBar; class QCompleter; class QStringListModel; +class QSizeGrip; class StructDataPreviewDlg : public QDialog { @@ -105,6 +106,7 @@ private: QStringList _curRecommandLst; //当前推荐列表 QCompleter* _recommandCompleter; //自动填充器 QStringListModel* _strLstModel; //自动填充模型 + QSizeGrip* _pSizeGrip; }; #endif diff --git a/diagramCavas/source/bayManagerDlg.cpp b/diagramCavas/source/bayManagerDlg.cpp index 4eb865d..12e3a04 100644 --- a/diagramCavas/source/bayManagerDlg.cpp +++ b/diagramCavas/source/bayManagerDlg.cpp @@ -4,11 +4,13 @@ #include "graphicsDataModel/fixedPortsModel.h" #include "ui_bayManagerDlg.h" #include "titleBar.h" +#include BayManagerDlg::BayManagerDlg(QWidget *parent) : QDialog(parent) , ui(new Ui::bayManagerDlg) ,_modelController(nullptr) + ,_pSizeGrip(nullptr) { ui->setupUi(this); this->setWindowFlags(Qt::FramelessWindowHint | windowFlags()); @@ -25,6 +27,8 @@ void BayManagerDlg::initial() m_titleBar = new TitleBar(this); m_titleBar->setTitle("间隔管理"); ui->verticalLayout_2->insertWidget(0,m_titleBar); + _pSizeGrip = new QSizeGrip(this); + _pSizeGrip->setFixedSize(12, 12); connect(ui->btn_ok,&QPushButton::clicked,this,&BayManagerDlg::onOkClicked); connect(ui->btn_cancel,&QPushButton::clicked,this,&BayManagerDlg::onCancelClicked); @@ -101,3 +105,8 @@ void BayManagerDlg::generatePage(QList lstBay) if(ui->stackedWidget->count() != 0) ui->stackedWidget->setCurrentIndex(0); } + +void BayManagerDlg::resizeEvent(QResizeEvent *) { + _pSizeGrip->move(width() - _pSizeGrip->width(), + height() - _pSizeGrip->height()); +} diff --git a/diagramCavas/source/dataSourceDlg.cpp b/diagramCavas/source/dataSourceDlg.cpp index 5f4a528..a8f4ed8 100644 --- a/diagramCavas/source/dataSourceDlg.cpp +++ b/diagramCavas/source/dataSourceDlg.cpp @@ -7,6 +7,7 @@ #include "propertyType/dataSourceType.h" #include #include "titleBar.h" +#include DataSourceDlg::DataSourceDlg(QWidget *parent) : QDialog(parent) @@ -15,6 +16,7 @@ DataSourceDlg::DataSourceDlg(QWidget *parent) ,m_currentCategoryItem(nullptr) ,_pExtraProManager(nullptr) ,_curProperty(nullptr) + ,_pSizeGrip(nullptr) { ui->setupUi(this); setModal(true); @@ -33,6 +35,8 @@ void DataSourceDlg::initial() m_titleBar = new TitleBar(this); m_titleBar->setTitle("数据源选择"); ui->verticalLayout_4->insertWidget(0,m_titleBar); + _pSizeGrip = new QSizeGrip(this); + _pSizeGrip->setFixedSize(12, 12); connect(ui->btn_ok,&QPushButton::clicked,this,&DataSourceDlg::onOkClicked); connect(ui->btn_cancel,&QPushButton::clicked,this,&DataSourceDlg::onCancelClicked); @@ -650,3 +654,7 @@ QString DataSourceDlg::getLevelType(int index) { } } +void DataSourceDlg::resizeEvent(QResizeEvent *) { + _pSizeGrip->move(width() - _pSizeGrip->width(), + height() - _pSizeGrip->height()); +} diff --git a/diagramCavas/source/diagramCavas.cpp b/diagramCavas/source/diagramCavas.cpp index 8dee3ca..b6fec92 100644 --- a/diagramCavas/source/diagramCavas.cpp +++ b/diagramCavas/source/diagramCavas.cpp @@ -662,6 +662,19 @@ EditPanel* DiagramCavas::onSignal_addEditPanel(QString sName) pPanel->setCavas(this); DiagramEditorModel* pModel = pPanel->getModel(); connect(pPanel,&EditPanel::panelDelete,this,&DiagramCavas::onSignal_panelDelete); + connect(pPanel,&EditPanel::previewSelected,this,[&](EditPanel* p){ + QString sObj; + // 反向查找 + for (auto it = m_mapEditPanel.constBegin(); it != m_mapEditPanel.constEnd(); ++it) { + if (it.value().first == p) { + // 找到匹配的sub + sObj = it.key(); + setActiveSubWindow(m_mapEditPanel[sObj].second); + emit pannelSelected(sObj,0); + break; + } + } + }); if(pModel){ connect(pModel,&DiagramEditorModel::updateTopologyItems,this,&DiagramCavas::onSignal_updateTopology); } diff --git a/diagramCavas/source/diagramConnectSetting.cpp b/diagramCavas/source/diagramConnectSetting.cpp index 0681c5b..67fd66d 100644 --- a/diagramCavas/source/diagramConnectSetting.cpp +++ b/diagramCavas/source/diagramConnectSetting.cpp @@ -4,10 +4,12 @@ #include "uiCommunicationBus.h" #include "communicationManager.h" #include "titleBar.h" +#include DiagramConnectSetting::DiagramConnectSetting(QWidget *parent) : QDialog(parent) , ui(new Ui::diagramConnectSetting) + ,_pSizeGrip(nullptr) { ui->setupUi(this); this->setWindowFlags(Qt::FramelessWindowHint | windowFlags()); @@ -24,6 +26,8 @@ void DiagramConnectSetting::initial() m_titleBar = new TitleBar(this); m_titleBar->setTitle("网络连接设置"); ui->verticalLayout->insertWidget(0,m_titleBar); + _pSizeGrip = new QSizeGrip(this); + _pSizeGrip->setFixedSize(12, 12); connect(ui->btn_testRecommand,&QPushButton::clicked,this,&DiagramConnectSetting::onTestHttpRecommandClicked); connect(ui->btn_testData,&QPushButton::clicked,this,&DiagramConnectSetting::onTestHttpDataClicked); @@ -118,3 +122,8 @@ void DiagramConnectSetting::onCancelClicked() { hide(); } + +void DiagramConnectSetting::resizeEvent(QResizeEvent *) { + _pSizeGrip->move(width() - _pSizeGrip->width(), + height() - _pSizeGrip->height()); +} diff --git a/diagramCavas/source/diagramEditor/confirmEditorDlg.cpp b/diagramCavas/source/diagramEditor/confirmEditorDlg.cpp index b4d9768..d897dbd 100644 --- a/diagramCavas/source/diagramEditor/confirmEditorDlg.cpp +++ b/diagramCavas/source/diagramEditor/confirmEditorDlg.cpp @@ -2,10 +2,12 @@ #include "diagramEditor/confirmEditorDlg.h" #include #include "titleBar.h" +#include ConfirmEditorDlg::ConfirmEditorDlg(QWidget *parent) : QDialog(parent) , ui(new Ui::confirmEditorDlg) + ,_pSizeGrip(nullptr) { ui->setupUi(this); this->setWindowFlags(Qt::FramelessWindowHint | windowFlags()); @@ -23,6 +25,8 @@ void ConfirmEditorDlg::initial() m_titleBar = new TitleBar(this); m_titleBar->setTitle("保存拓扑"); ui->verticalLayout->insertWidget(0,m_titleBar); + _pSizeGrip = new QSizeGrip(this); + _pSizeGrip->setFixedSize(12, 12); connect(ui->btn_ok,&QPushButton::clicked,this,&ConfirmEditorDlg::onOkClicked); connect(ui->btn_cancel,&QPushButton::clicked,this,&ConfirmEditorDlg::onCancelClicked); @@ -52,3 +56,7 @@ void ConfirmEditorDlg::onCancelClicked() hide(); } +void ConfirmEditorDlg::resizeEvent(QResizeEvent *) { + _pSizeGrip->move(width() - _pSizeGrip->width(), + height() - _pSizeGrip->height()); +} diff --git a/diagramCavas/source/diagramEditor/diagramEditorBayDetailAddDlg.cpp b/diagramCavas/source/diagramEditor/diagramEditorBayDetailAddDlg.cpp index d2090aa..5938f9c 100644 --- a/diagramCavas/source/diagramEditor/diagramEditorBayDetailAddDlg.cpp +++ b/diagramCavas/source/diagramEditor/diagramEditorBayDetailAddDlg.cpp @@ -8,6 +8,7 @@ #include "diagramEditor/diagramEditorWizard.h" #include "include/instance/baseTypeManager.h" #include "titleBar.h" +#include DiagramEditorBayDetailAddDlg::DiagramEditorBayDetailAddDlg(QWidget *parent) : QDialog(parent) @@ -15,6 +16,7 @@ DiagramEditorBayDetailAddDlg::DiagramEditorBayDetailAddDlg(QWidget *parent) ,_selectedModel(nullptr) ,_pParent(nullptr) ,_bindItemModel(nullptr) + ,_pSizeGrip(nullptr) { ui->setupUi(this); this->setWindowFlags(Qt::FramelessWindowHint | windowFlags()); @@ -32,6 +34,8 @@ void DiagramEditorBayDetailAddDlg::initial() m_titleBar = new TitleBar(this); m_titleBar->setTitle("新增线路"); ui->gridLayout_2->addWidget(m_titleBar, 0, 0, 1, 2); //占两列 + _pSizeGrip = new QSizeGrip(this); + _pSizeGrip->setFixedSize(12, 12); _curMode = 0; _selectedModel = new QStandardItemModel(this); @@ -834,3 +838,8 @@ void DiagramEditorBayDetailAddDlg::onRouteRbtnClicked(const QPoint &pos) // 在点击位置显示菜单 menu.exec(ui->tableView_selected->mapToGlobal(pos)); } + +void DiagramEditorBayDetailAddDlg::resizeEvent(QResizeEvent *) { + _pSizeGrip->move(width() - _pSizeGrip->width(), + height() - _pSizeGrip->height()); +} diff --git a/diagramCavas/source/diagramEditor/diagramEditorBayDetailSettingDlg.cpp b/diagramCavas/source/diagramEditor/diagramEditorBayDetailSettingDlg.cpp index 74b22c0..8c1dad9 100644 --- a/diagramCavas/source/diagramEditor/diagramEditorBayDetailSettingDlg.cpp +++ b/diagramCavas/source/diagramEditor/diagramEditorBayDetailSettingDlg.cpp @@ -12,6 +12,7 @@ #include "topologyManager.h" #include #include "titleBar.h" +#include DiagramEditorBayDetailSettingDlg::DiagramEditorBayDetailSettingDlg(QWidget *parent,DiagramEditorModel* pModel) : QDialog(parent) @@ -23,6 +24,7 @@ DiagramEditorBayDetailSettingDlg::DiagramEditorBayDetailSettingDlg(QWidget *pare ,_pPreviewDlg(nullptr) ,_pModel(pModel) ,_pWizard(nullptr) + ,_pSizeGrip(nullptr) { ui->setupUi(this); this->setWindowFlags(Qt::FramelessWindowHint | windowFlags()); @@ -41,6 +43,8 @@ void DiagramEditorBayDetailSettingDlg::initial() m_titleBar = new TitleBar(this); m_titleBar->setTitle("间隔详细设置"); ui->verticalLayout_2->insertWidget(0,m_titleBar); + _pSizeGrip = new QSizeGrip(this); + _pSizeGrip->setFixedSize(12, 12); _compoModel = new QStandardItemModel(this); _routeModel = new QStandardItemModel(this); @@ -458,3 +462,8 @@ void DiagramEditorBayDetailSettingDlg::onRouteModified(QMapmove(width() - _pSizeGrip->width(), + height() - _pSizeGrip->height()); +} diff --git a/diagramCavas/source/diagramEditor/diagramEditorBaySettingDlg.cpp b/diagramCavas/source/diagramEditor/diagramEditorBaySettingDlg.cpp index bb72365..46042cd 100644 --- a/diagramCavas/source/diagramEditor/diagramEditorBaySettingDlg.cpp +++ b/diagramCavas/source/diagramEditor/diagramEditorBaySettingDlg.cpp @@ -8,11 +8,13 @@ #include "diagramEditor/diagramEditorStructContainer.h" #include "diagramEditor/wizardBayContentDlg.h" #include "titleBar.h" +#include DiagramEditorBaySettingDlg::DiagramEditorBaySettingDlg(QWidget *parent) : QDialog(parent) , ui(new Ui::diagramEditorBaySettingDlg) ,_curOperateBlock(nullptr) + ,_pSizeGrip(nullptr) { ui->setupUi(this); this->setWindowFlags(Qt::FramelessWindowHint | windowFlags()); @@ -101,6 +103,8 @@ void DiagramEditorBaySettingDlg::initial() m_titleBar = new TitleBar(this); m_titleBar->setTitle("间隔设置"); ui->verticalLayout_3->insertWidget(0,m_titleBar); + _pSizeGrip = new QSizeGrip(this); + _pSizeGrip->setFixedSize(12, 12); _curModel = 0; _curLevel = 0; @@ -238,3 +242,8 @@ void DiagramEditorBaySettingDlg::onListItemClicked(QListWidgetItem *item) } } } + +void DiagramEditorBaySettingDlg::resizeEvent(QResizeEvent *) { + _pSizeGrip->move(width() - _pSizeGrip->width(), + height() - _pSizeGrip->height()); +} diff --git a/diagramCavas/source/diagramEditor/diagramEditorPreviewDlg.cpp b/diagramCavas/source/diagramEditor/diagramEditorPreviewDlg.cpp index b5ba703..339737c 100644 --- a/diagramCavas/source/diagramEditor/diagramEditorPreviewDlg.cpp +++ b/diagramCavas/source/diagramEditor/diagramEditorPreviewDlg.cpp @@ -5,6 +5,7 @@ #include "diagramEditor/editPanel.h" #include #include +#include DiagramEditorPreviewDlg::DiagramEditorPreviewDlg(QWidget *parent) : QDialog(parent) @@ -63,3 +64,12 @@ void DiagramEditorPreviewDlg::showDlg() move(x, y); } +void DiagramEditorPreviewDlg::mousePressEvent(QMouseEvent *event) +{ + if (event->button() == Qt::LeftButton) + { + emit _pParent->previewSelected(_pParent); + } + + QDialog::mousePressEvent(event); +} diff --git a/diagramCavas/source/diagramEditor/diagramEditorTransDetailAddDlg.cpp b/diagramCavas/source/diagramEditor/diagramEditorTransDetailAddDlg.cpp index 9e754c9..5ef0e2a 100644 --- a/diagramCavas/source/diagramEditor/diagramEditorTransDetailAddDlg.cpp +++ b/diagramCavas/source/diagramEditor/diagramEditorTransDetailAddDlg.cpp @@ -7,6 +7,7 @@ #include "diagramEditor/diagramEditorWizard.h" #include "include/instance/baseTypeManager.h" #include "titleBar.h" +#include DiagramEditorTransDetailAddDlg::DiagramEditorTransDetailAddDlg(QWidget *parent) : QDialog(parent) @@ -14,6 +15,7 @@ DiagramEditorTransDetailAddDlg::DiagramEditorTransDetailAddDlg(QWidget *parent) ,_selectedModel(nullptr) ,_pParent(nullptr) ,_bindItemModel(nullptr) + ,_pSizeGrip(nullptr) { ui->setupUi(this); this->setWindowFlags(Qt::FramelessWindowHint | windowFlags()); @@ -31,6 +33,9 @@ void DiagramEditorTransDetailAddDlg::initial() m_titleBar = new TitleBar(this); m_titleBar->setTitle("新增线路"); ui->gridLayout_2->addWidget(m_titleBar, 0, 0, 1, 2); //占两列 + _pSizeGrip = new QSizeGrip(this); + _pSizeGrip->setFixedSize(12, 12); + _curMode = 0; _curType = 0; _selectedModel = new QStandardItemModel(this); @@ -772,3 +777,8 @@ void DiagramEditorTransDetailAddDlg::onRouteRbtnClicked(const QPoint &pos) // 在点击位置显示菜单 menu.exec(ui->tableView_selected->mapToGlobal(pos)); } + +void DiagramEditorTransDetailAddDlg::resizeEvent(QResizeEvent *) { + _pSizeGrip->move(width() - _pSizeGrip->width(), + height() - _pSizeGrip->height()); +} diff --git a/diagramCavas/source/diagramEditor/diagramEditorTransDetailSettingDlg.cpp b/diagramCavas/source/diagramEditor/diagramEditorTransDetailSettingDlg.cpp index aa03329..baf9e68 100644 --- a/diagramCavas/source/diagramEditor/diagramEditorTransDetailSettingDlg.cpp +++ b/diagramCavas/source/diagramEditor/diagramEditorTransDetailSettingDlg.cpp @@ -10,6 +10,7 @@ #include "diagramEditor/diagramEditorTransPreviewDlg.h" #include "include/instance/baseTypeManager.h" #include "titleBar.h" +#include DiagramEditorTransDetailSettingDlg::DiagramEditorTransDetailSettingDlg(QWidget *parent,DiagramEditorModel* pModel) : QDialog(parent) @@ -20,6 +21,7 @@ DiagramEditorTransDetailSettingDlg::DiagramEditorTransDetailSettingDlg(QWidget * ,_pPreviewDlg(nullptr) ,_pModel(pModel) ,_curOperateRouteView(nullptr) + ,_pSizeGrip(nullptr) { ui->setupUi(this); this->setWindowFlags(Qt::FramelessWindowHint | windowFlags()); @@ -38,6 +40,8 @@ void DiagramEditorTransDetailSettingDlg::initial() m_titleBar = new TitleBar(this); m_titleBar->setTitle("变压器设置"); ui->verticalLayout_4->insertWidget(0,m_titleBar); + _pSizeGrip = new QSizeGrip(this); + _pSizeGrip->setFixedSize(12, 12); _compoModel = new QStandardItemModel(this); for(int i = 0;i < 3;++i){ @@ -425,3 +429,8 @@ void DiagramEditorTransDetailSettingDlg::showPreview() } } } + +void DiagramEditorTransDetailSettingDlg::resizeEvent(QResizeEvent *) { + _pSizeGrip->move(width() - _pSizeGrip->width(), + height() - _pSizeGrip->height()); +} diff --git a/diagramCavas/source/diagramEditor/diagramEditorTransSettingDlg.cpp b/diagramCavas/source/diagramEditor/diagramEditorTransSettingDlg.cpp index 2effb3b..7e88f22 100644 --- a/diagramCavas/source/diagramEditor/diagramEditorTransSettingDlg.cpp +++ b/diagramCavas/source/diagramEditor/diagramEditorTransSettingDlg.cpp @@ -8,11 +8,13 @@ #include "common/core_model/constants.h" #include #include "titleBar.h" +#include DiagramEditorTransSettingDlg::DiagramEditorTransSettingDlg(QWidget *parent) : QDialog(parent) , ui(new Ui::diagramEditorTransSettingDlg) ,_curOperateBlock(nullptr) + ,_pSizeGrip(nullptr) { ui->setupUi(this); this->setWindowFlags(Qt::FramelessWindowHint | windowFlags()); @@ -119,6 +121,8 @@ void DiagramEditorTransSettingDlg::initial() m_titleBar = new TitleBar(this); m_titleBar->setTitle("变压器设置"); ui->verticalLayout_3->insertWidget(0,m_titleBar); + _pSizeGrip = new QSizeGrip(this); + _pSizeGrip->setFixedSize(12, 12); _curModel = 0; connect(ui->btn_add,&QPushButton::clicked,this,&DiagramEditorTransSettingDlg::onAddClicked); @@ -416,3 +420,8 @@ void DiagramEditorTransSettingDlg::onTableItemSelected() } } } + +void DiagramEditorTransSettingDlg::resizeEvent(QResizeEvent *) { + _pSizeGrip->move(width() - _pSizeGrip->width(), + height() - _pSizeGrip->height()); +} diff --git a/diagramCavas/source/diagramEditor/diagramEditorWizard.cpp b/diagramCavas/source/diagramEditor/diagramEditorWizard.cpp index 523c2cb..9aebcae 100644 --- a/diagramCavas/source/diagramEditor/diagramEditorWizard.cpp +++ b/diagramCavas/source/diagramEditor/diagramEditorWizard.cpp @@ -13,6 +13,7 @@ #include "diagramEditor/diagramEditorTransSettingDlg.h" #include "common/core_model/constants.h" #include "titleBar.h" +#include DiagramEditorWizard::DiagramEditorWizard(QWidget *parent) : QDialog(parent) @@ -38,6 +39,8 @@ void DiagramEditorWizard::initial() m_titleBar = new TitleBar(this); m_titleBar->setTitle("组态向导"); ui->verticalLayout_3->insertWidget(0,m_titleBar); + _pSizeGrip = new QSizeGrip(this); + _pSizeGrip->setFixedSize(12, 12); _bayContentDlg = new WizardBayContentDlg(this); _bayContentDlg->setParent(this); @@ -1203,3 +1206,8 @@ bool DiagramEditorWizard::removeBlockByName(int nLevel,int nType,const QString& } return false; } + +void DiagramEditorWizard::resizeEvent(QResizeEvent *) { + _pSizeGrip->move(width() - _pSizeGrip->width(), + height() - _pSizeGrip->height()); +} diff --git a/diagramCavas/source/diagramEditor/editPanel.cpp b/diagramCavas/source/diagramEditor/editPanel.cpp index de87c80..c85c33f 100644 --- a/diagramCavas/source/diagramEditor/editPanel.cpp +++ b/diagramCavas/source/diagramEditor/editPanel.cpp @@ -207,6 +207,7 @@ void EditPanel::showPreview() { if(!_pPreview){ _pPreview = new DiagramEditorPreviewDlg(this); + _pPreview->setWindowTitle(_projectName+"_"+_timeStamp); } _pPreview->showDlg(); } @@ -421,18 +422,14 @@ void EditPanel::closeEvent(QCloseEvent *closeEvent) msgBox.setDefaultButton(QMessageBox::Ok); int ret = msgBox.exec(); - switch (ret) { - case QMessageBox::Ok: + if (ret == QMessageBox::Ok) { - emit panelDelete(_tagName,0); + emit panelDelete(_tagName, 0); + closeEvent->accept(); //允许关闭 } - break; - case QMessageBox::Cancel: - // Cancel was clicked - break; - default: - // should never be reached - break; + else + { + closeEvent->ignore(); //阻止关闭 } } diff --git a/diagramCavas/source/diagramEditor/editorDiagramLayoutEngine.cpp b/diagramCavas/source/diagramEditor/editorDiagramLayoutEngine.cpp index a725582..daf15c4 100644 --- a/diagramCavas/source/diagramEditor/editorDiagramLayoutEngine.cpp +++ b/diagramCavas/source/diagramEditor/editorDiagramLayoutEngine.cpp @@ -115,8 +115,20 @@ void DiagramLayoutEngine::layoutMainRoute( DiagramEditorComponentInfo& compo = components[i]; Direction dir = mainDir; - if (i == components.size() - 1) { - dir = DirectionManager::getOpposite(mainDir); + int mainDirFlag = static_cast(mainDir); + int oppositeFlag = static_cast(DirectionManager::getOpposite(mainDir)); + + if (i == 0) { + // 队首:只占用出方向 + compo.nUsedDirection |= mainDirFlag; + } + else if (i == components.size() - 1) { + // 队尾:只占用入方向 + compo.nUsedDirection |= oppositeFlag; + } + else { + // 中间节点:入方向 + 出方向(一次性占满) + compo.nUsedDirection |= (mainDirFlag | oppositeFlag); } QPoint delta(0, 0); @@ -132,7 +144,7 @@ void DiagramLayoutEngine::layoutMainRoute( int rotate = DirectionManager::getRotationAngle(mainDir); // ✅ 主线方向 → 统一交给 updateComponent - updateComponent(compo, dir, delta, rotate, context); + updateComponent(compo, compo.nUsedDirection, delta, rotate, context); //**方向赋值重复,待修改 nSegIndex += (mainDir == Direction::Up || mainDir == Direction::Left) ? -1 @@ -278,7 +290,7 @@ void DiagramLayoutEngine::layoutBranchSequence( int rotate = DirectionManager::getRotationAngle(dir); - updateComponent(next, nextConnectionDir, + updateComponent(next, int(nextConnectionDir), nextPos, rotate, context); } } @@ -391,7 +403,7 @@ QStandardItem* DiagramLayoutEngine::getNameItem( // 更新组件 void DiagramLayoutEngine::updateComponent( DiagramEditorComponentInfo& compo, - Direction dir, + int dir, const QPoint& position, int rotate, Context& context) { diff --git a/diagramCavas/source/graphicsDataModel/fixedPortsModel.cpp b/diagramCavas/source/graphicsDataModel/fixedPortsModel.cpp index e2feadb..9f01dba 100644 --- a/diagramCavas/source/graphicsDataModel/fixedPortsModel.cpp +++ b/diagramCavas/source/graphicsDataModel/fixedPortsModel.cpp @@ -718,7 +718,7 @@ BaseProperty* FixedPortsModel::addNodeData(QUuid id,int type,QString name,QStrin item->setUuid(id); item->setModelName(modelName); item->setType(type); - GraphicsItemType localType = typeToProGraphic[type]; //将通用类型转换为工程模图元 + GraphicsItemType localType = getTypeToProGraphic().value(type); //将通用类型转换为工程模图元 item->setGraphicsType(localType); item->setTag(name); item->setName(name); diff --git a/diagramCavas/source/itemPropertyDlg.cpp b/diagramCavas/source/itemPropertyDlg.cpp index f61dcd4..6210ec5 100644 --- a/diagramCavas/source/itemPropertyDlg.cpp +++ b/diagramCavas/source/itemPropertyDlg.cpp @@ -14,6 +14,7 @@ #include "ctExtraInfoDlg.h" #include "bayInfoDlg.h" #include "titleBar.h" +#include ItemPropertyDlg::ItemPropertyDlg(QWidget *parent) : QDialog(parent) @@ -22,6 +23,7 @@ ItemPropertyDlg::ItemPropertyDlg(QWidget *parent) ,btnGroup_(nullptr) ,_curItem(nullptr) ,_curModelController(nullptr) + ,_pSizeGrip(nullptr) { ui->setupUi(this); this->setWindowFlags(Qt::FramelessWindowHint |Qt::WindowStaysOnTopHint | windowFlags()); @@ -38,6 +40,8 @@ void ItemPropertyDlg::initial() m_titleBar = new TitleBar(this); m_titleBar->setTitle("参数设置"); ui->verticalLayout->insertWidget(0,m_titleBar); + _pSizeGrip = new QSizeGrip(this); + _pSizeGrip->setFixedSize(12, 12); layout_ = new QVBoxLayout(ui->widget_button); btnGroup_ = new QButtonGroup(this); @@ -284,3 +288,8 @@ void ItemPropertyDlg::showDlg(ModelDataInfo dataInfo,QUuid uuid,GraphicsProjectM onGroupSelected(str); show(); } + +void ItemPropertyDlg::resizeEvent(QResizeEvent *) { + _pSizeGrip->move(width() - _pSizeGrip->width(), + height() - _pSizeGrip->height()); +} diff --git a/diagramCavas/source/measureSettingDlg.cpp b/diagramCavas/source/measureSettingDlg.cpp index b99c915..bc4b17e 100644 --- a/diagramCavas/source/measureSettingDlg.cpp +++ b/diagramCavas/source/measureSettingDlg.cpp @@ -8,6 +8,7 @@ #include "basePropertyManager.h" #include "ui_measureSettingDlg.h" #include "titleBar.h" +#include MeasureSettingDlg::MeasureSettingDlg(QWidget *parent) : QDialog(parent) @@ -17,6 +18,7 @@ MeasureSettingDlg::MeasureSettingDlg(QWidget *parent) ,_pEventStrategy(nullptr) ,_pEventYXGroup(nullptr) ,_curMode(0) + ,_pSizeGrip(nullptr) { ui->setupUi(this); this->setWindowFlags(Qt::FramelessWindowHint | windowFlags()); @@ -34,6 +36,8 @@ void MeasureSettingDlg::initial() m_titleBar = new TitleBar(this); m_titleBar->setTitle("量测设置"); ui->verticalLayout->insertWidget(0,m_titleBar); + _pSizeGrip = new QSizeGrip(this); + _pSizeGrip->setFixedSize(12, 12); _pEventStrategy = new QButtonGroup(this); _pEventStrategy->addButton(ui->rb_eventOff,0); @@ -684,3 +688,8 @@ void MeasureSettingDlg::onHttpDataUpdated(HttpRecommandInfo info) { // } + +void MeasureSettingDlg::resizeEvent(QResizeEvent *) { + _pSizeGrip->move(width() - _pSizeGrip->width(), + height() - _pSizeGrip->height()); +} diff --git a/diagramCavas/source/monitorConfigDlg.cpp b/diagramCavas/source/monitorConfigDlg.cpp index fc0427d..f86fb6e 100644 --- a/diagramCavas/source/monitorConfigDlg.cpp +++ b/diagramCavas/source/monitorConfigDlg.cpp @@ -6,6 +6,7 @@ #include "monitorPanel.h" #include "uiCommunicationBus.h" #include "titleBar.h" +#include MonitorConfigDlg::MonitorConfigDlg(QWidget *parent) : QDialog(parent) @@ -14,6 +15,7 @@ MonitorConfigDlg::MonitorConfigDlg(QWidget *parent) ,_curItemModel(nullptr) ,_recommandCompleter(nullptr) ,_strLstModel(nullptr) + ,_pSizeGrip(nullptr) { ui->setupUi(this); this->setWindowFlags(Qt::FramelessWindowHint | windowFlags()); @@ -31,6 +33,8 @@ void MonitorConfigDlg::initial() m_titleBar = new TitleBar(this); m_titleBar->setTitle("参数设置"); ui->verticalLayout->insertWidget(0,m_titleBar); + _pSizeGrip = new QSizeGrip(this); + _pSizeGrip->setFixedSize(12, 12); ui->treeView_item->setModel(_parent->getLstModel()); connect(ui->btn_ok,&QPushButton::clicked,this,&MonitorConfigDlg::onOkClicked); @@ -214,6 +218,11 @@ bool MonitorConfigDlg::eventFilter(QObject *obj, QEvent *event) return QDialog::eventFilter(obj, event); } +void MonitorConfigDlg::resizeEvent(QResizeEvent *) { + _pSizeGrip->move(width() - _pSizeGrip->width(), + height() - _pSizeGrip->height()); +} + void MonitorConfigDlg::savePropertyData(const QModelIndex &previous,QUuid uid) { if(_tempConfig.contains(uid)){ diff --git a/diagramCavas/source/monitorDetailAttributeDlg.cpp b/diagramCavas/source/monitorDetailAttributeDlg.cpp index 64d26f0..9098bdb 100644 --- a/diagramCavas/source/monitorDetailAttributeDlg.cpp +++ b/diagramCavas/source/monitorDetailAttributeDlg.cpp @@ -4,12 +4,14 @@ #include "monitorPanel.h" #include "graphicsDataModel/fixedPortsModel.h" #include "titleBar.h" +#include MonitorDetailAttributeDlg::MonitorDetailAttributeDlg(QWidget *parent) : QDialog(parent) , ui(new Ui::monitorDetailAttributeDlg) ,_pParent(nullptr) ,m_gridLayout(nullptr) + ,_pSizeGrip(nullptr) { _pParent = dynamic_cast(parent); ui->setupUi(this); @@ -27,6 +29,8 @@ void MonitorDetailAttributeDlg::initial() m_titleBar = new TitleBar(this); m_titleBar->setTitle("属性详细信息"); ui->verticalLayout->insertWidget(0,m_titleBar); + _pSizeGrip = new QSizeGrip(this); + _pSizeGrip->setFixedSize(12, 12); _curColNum = 2; connect(ui->btn_exit,&QPushButton::clicked,this,&MonitorDetailAttributeDlg::onCloseClicked); @@ -90,3 +94,8 @@ void MonitorDetailAttributeDlg::clearAllGroup() } _curGroups.clear(); } + +void MonitorDetailAttributeDlg::resizeEvent(QResizeEvent *) { + _pSizeGrip->move(width() - _pSizeGrip->width(), + height() - _pSizeGrip->height()); +} diff --git a/diagramCavas/source/monitorDisplaySettingDlg.cpp b/diagramCavas/source/monitorDisplaySettingDlg.cpp index eb5d8e1..0c2226c 100644 --- a/diagramCavas/source/monitorDisplaySettingDlg.cpp +++ b/diagramCavas/source/monitorDisplaySettingDlg.cpp @@ -8,10 +8,12 @@ #include "projectModelManager.h" #include "projectIconSelectionDlg.h" #include "titleBar.h" +#include MonitorDisplaySettingDlg::MonitorDisplaySettingDlg(QWidget *parent) : QDialog(parent) , ui(new Ui::monitorDisplaySettingDlg) + ,_pSizeGrip(nullptr) { ui->setupUi(this); this->setWindowFlags(Qt::FramelessWindowHint | windowFlags()); @@ -29,6 +31,8 @@ void MonitorDisplaySettingDlg::initial() m_titleBar = new TitleBar(this); m_titleBar->setTitle("图元状态设置"); ui->verticalLayout_2->insertWidget(0,m_titleBar); + _pSizeGrip = new QSizeGrip(this); + _pSizeGrip->setFixedSize(12, 12); connect(ui->btn_save,&QPushButton::clicked,this,&MonitorDisplaySettingDlg::onSaveClicked); connect(ui->btn_cancel,&QPushButton::clicked,this,&MonitorDisplaySettingDlg::onCancelClicked); @@ -423,3 +427,7 @@ bool MonitorDisplaySettingDlg::validateCurrentDeviceState() const _tempSetting[_curType].contains(_curState); } +void MonitorDisplaySettingDlg::resizeEvent(QResizeEvent *) { + _pSizeGrip->move(width() - _pSizeGrip->width(), + height() - _pSizeGrip->height()); +} diff --git a/diagramCavas/source/projectDiagramNameInput.cpp b/diagramCavas/source/projectDiagramNameInput.cpp index e360931..44408ba 100644 --- a/diagramCavas/source/projectDiagramNameInput.cpp +++ b/diagramCavas/source/projectDiagramNameInput.cpp @@ -3,11 +3,13 @@ #include "dataBase.h" #include "ui_projectDiagramNameInput.h" #include "titleBar.h" +#include ProjectDiagramNameInput::ProjectDiagramNameInput(QWidget *parent) : QDialog(parent) ,ui(new Ui::projectDiagramNameInput) ,_model(nullptr) + ,_pSizeGrip(nullptr) { ui->setupUi(this); this->setWindowFlags(Qt::FramelessWindowHint | windowFlags()); @@ -24,6 +26,8 @@ void ProjectDiagramNameInput::initial() m_titleBar = new TitleBar(this); m_titleBar->setTitle("组态名称设置"); ui->verticalLayout->insertWidget(0,m_titleBar); + _pSizeGrip = new QSizeGrip(this); + _pSizeGrip->setFixedSize(12, 12); connect(ui->btn_ok,&QPushButton::clicked,this,&ProjectDiagramNameInput::onOkClicked); connect(ui->btn_cancel,&QPushButton::clicked,this,&ProjectDiagramNameInput::onCancelClicked); @@ -55,3 +59,8 @@ void ProjectDiagramNameInput::onNameEdited(const QString& text) } } } + +void ProjectDiagramNameInput::resizeEvent(QResizeEvent *) { + _pSizeGrip->move(width() - _pSizeGrip->width(), + height() - _pSizeGrip->height()); +} diff --git a/diagramCavas/source/projectIconSetting.cpp b/diagramCavas/source/projectIconSetting.cpp index f99761b..04bf9d7 100644 --- a/diagramCavas/source/projectIconSetting.cpp +++ b/diagramCavas/source/projectIconSetting.cpp @@ -8,11 +8,13 @@ #include #include #include "titleBar.h" +#include ProjectIconSetting::ProjectIconSetting(QWidget *parent) : QDialog(parent) , ui(new Ui::projectIconSetting) ,_controller(nullptr) + ,_pSizeGrip(nullptr) { ui->setupUi(this); this->setWindowFlags(Qt::FramelessWindowHint | Qt::WindowStaysOnTopHint | windowFlags()); @@ -52,6 +54,8 @@ void ProjectIconSetting::initial() m_titleBar = new TitleBar(this); m_titleBar->setTitle("工程模图标选择"); ui->verticalLayout->insertWidget(0,m_titleBar); + _pSizeGrip = new QSizeGrip(this); + _pSizeGrip->setFixedSize(12, 12); QStringList headerText; headerText<<"类别"<<"图标"; @@ -141,3 +145,8 @@ void ProjectIconSetting::onCellClicked(int row,int col) selectImage(row); } } + +void ProjectIconSetting::resizeEvent(QResizeEvent *) { + _pSizeGrip->move(width() - _pSizeGrip->width(), + height() - _pSizeGrip->height()); +} diff --git a/diagramCavas/source/projectModelSetting.cpp b/diagramCavas/source/projectModelSetting.cpp index 7e2d7a7..c14066e 100644 --- a/diagramCavas/source/projectModelSetting.cpp +++ b/diagramCavas/source/projectModelSetting.cpp @@ -12,16 +12,17 @@ #include "graphicsDataModel/fixedPortsModel.h" #include "projectModelManager.h" #include "tools.h" -//#include "global.h" #include "logger.h" #include "dataBase.h" #include "titleBar.h" +#include ProjectModelSetting::ProjectModelSetting(QWidget *parent) : QDialog(parent) ,ui(new Ui::projectModelSetting) ,_curItemData(nullptr) ,_controller(nullptr) + ,_pSizeGrip(nullptr) { ui->setupUi(this); this->setWindowFlags(Qt::FramelessWindowHint | windowFlags()); @@ -38,6 +39,8 @@ void ProjectModelSetting::initial() m_titleBar = new TitleBar(this); m_titleBar->setTitle("工程模设置"); ui->verticalLayout_2->insertWidget(0,m_titleBar); + _pSizeGrip = new QSizeGrip(this); + _pSizeGrip->setFixedSize(12, 12); connect(ui->btn_ok,&QPushButton::clicked,this,&ProjectModelSetting::onOkClicked); connect(ui->btn_cancel,&QPushButton::clicked,this,&ProjectModelSetting::onCancelClicked); @@ -443,3 +446,8 @@ void ProjectModelSetting::loadModel(const QString& text) setSelectedItems(_curItemData->getModelProperty().modelSetting.mapSvg.keys()); } } + +void ProjectModelSetting::resizeEvent(QResizeEvent *) { + _pSizeGrip->move(width() - _pSizeGrip->width(), + height() - _pSizeGrip->height()); +} diff --git a/diagramCavas/source/structDataPreviewDlg.cpp b/diagramCavas/source/structDataPreviewDlg.cpp index a3cc075..73a395a 100644 --- a/diagramCavas/source/structDataPreviewDlg.cpp +++ b/diagramCavas/source/structDataPreviewDlg.cpp @@ -14,7 +14,7 @@ #include "structDataPropertyDelegate.h" #include "structDataMeasurementDelegate.h" #include "dataBase.h" -//#include "global.h" +#include StructDataPreviewDlg::StructDataPreviewDlg(QWidget *parent) : QDialog(parent) @@ -56,6 +56,8 @@ void StructDataPreviewDlg::initial() m_titleBar = new TitleBar(this,true,true); m_titleBar->setTitle("结构数据展示"); ui->mainLayout->insertWidget(0,m_titleBar); + _pSizeGrip = new QSizeGrip(this); + _pSizeGrip->setFixedSize(12, 12); QMenuBar *menuBar = new QMenuBar(this); QMenu *fileMenu = menuBar->addMenu("文件"); @@ -904,6 +906,8 @@ void StructDataPreviewDlg::resizeEvent(QResizeEvent *event) if (m_titleBar) { m_titleBar->updateMaximizeButton(); } + _pSizeGrip->move(width() - _pSizeGrip->width(), + height() - _pSizeGrip->height()); } void StructDataPreviewDlg::toggleMaximize() diff --git a/diagramCavas/source/topologyManager.cpp b/diagramCavas/source/topologyManager.cpp index 3da35ed..16dda34 100644 --- a/diagramCavas/source/topologyManager.cpp +++ b/diagramCavas/source/topologyManager.cpp @@ -19,6 +19,16 @@ TopologyManager::~TopologyManager() { void TopologyManager::clearAllData() { + // 清理 diagrams(新增) + qDeleteAll(m_diagrams); + m_diagrams.clear(); + + qDeleteAll(m_baseDiagrams); + m_baseDiagrams.clear(); + + qDeleteAll(m_monitorDiagrams); + m_monitorDiagrams.clear(); + // 删除所有连接 qDeleteAll(m_connections); m_connections.clear(); diff --git a/diagramCavas/ui/confirmEditorDlg.ui b/diagramCavas/ui/confirmEditorDlg.ui index 46d72ef..ceb20a0 100644 --- a/diagramCavas/ui/confirmEditorDlg.ui +++ b/diagramCavas/ui/confirmEditorDlg.ui @@ -143,6 +143,9 @@ font: 12pt "Microsoft YaHei UI"; + + 10 + diff --git a/diagramCavas/ui/dataSourceDlg.ui b/diagramCavas/ui/dataSourceDlg.ui index 075ec10..e576d7e 100644 --- a/diagramCavas/ui/dataSourceDlg.ui +++ b/diagramCavas/ui/dataSourceDlg.ui @@ -127,6 +127,9 @@ + + 12 + diff --git a/diagramCavas/ui/diagramConnectSetting.ui b/diagramCavas/ui/diagramConnectSetting.ui index 06ee65f..08e556f 100644 --- a/diagramCavas/ui/diagramConnectSetting.ui +++ b/diagramCavas/ui/diagramConnectSetting.ui @@ -525,6 +525,9 @@ QPushButton:disabled { + + 12 + diff --git a/diagramCavas/ui/diagramEditorBayDetailAddDlg.ui b/diagramCavas/ui/diagramEditorBayDetailAddDlg.ui index 441aaa4..ec2c44a 100644 --- a/diagramCavas/ui/diagramEditorBayDetailAddDlg.ui +++ b/diagramCavas/ui/diagramEditorBayDetailAddDlg.ui @@ -188,6 +188,12 @@ QPushButton:disabled { + + + 331 + 16777215 + + 编辑设备 @@ -354,7 +360,7 @@ QPushButton:disabled { 0 - 0 + 12 0 diff --git a/diagramCavas/ui/diagramEditorBayDetailSettingDlg.ui b/diagramCavas/ui/diagramEditorBayDetailSettingDlg.ui index f5c96c5..cda1e16 100644 --- a/diagramCavas/ui/diagramEditorBayDetailSettingDlg.ui +++ b/diagramCavas/ui/diagramEditorBayDetailSettingDlg.ui @@ -150,6 +150,9 @@ QPushButton:disabled { 0 + + 12 + 0 diff --git a/diagramCavas/ui/diagramEditorBaySettingDlg.ui b/diagramCavas/ui/diagramEditorBaySettingDlg.ui index 4b0b932..cb150ba 100644 --- a/diagramCavas/ui/diagramEditorBaySettingDlg.ui +++ b/diagramCavas/ui/diagramEditorBaySettingDlg.ui @@ -141,7 +141,14 @@ - + + + + 280 + 16777215 + + + @@ -284,6 +291,9 @@ QPushButton:disabled { + + 12 + diff --git a/diagramCavas/ui/diagramEditorTransDetailAddDlg.ui b/diagramCavas/ui/diagramEditorTransDetailAddDlg.ui index e144906..68c633b 100644 --- a/diagramCavas/ui/diagramEditorTransDetailAddDlg.ui +++ b/diagramCavas/ui/diagramEditorTransDetailAddDlg.ui @@ -53,7 +53,7 @@ 0 - 0 + 12 0 @@ -305,6 +305,12 @@ QPushButton:disabled { + + + 331 + 16777215 + + 编辑设备 diff --git a/diagramCavas/ui/diagramEditorTransDetailSettingDlg.ui b/diagramCavas/ui/diagramEditorTransDetailSettingDlg.ui index ad1507b..438a794 100644 --- a/diagramCavas/ui/diagramEditorTransDetailSettingDlg.ui +++ b/diagramCavas/ui/diagramEditorTransDetailSettingDlg.ui @@ -248,6 +248,9 @@ QTabBar::tab:selected { 0 + + 12 + 0 diff --git a/diagramCavas/ui/diagramEditorTransSettingDlg.ui b/diagramCavas/ui/diagramEditorTransSettingDlg.ui index c7d2b39..28064f3 100644 --- a/diagramCavas/ui/diagramEditorTransSettingDlg.ui +++ b/diagramCavas/ui/diagramEditorTransSettingDlg.ui @@ -180,7 +180,14 @@ QPushButton:disabled { - + + + + 280 + 16777215 + + + @@ -304,6 +311,9 @@ QPushButton:disabled { + + 12 + diff --git a/diagramCavas/ui/diagramEditorWizard.ui b/diagramCavas/ui/diagramEditorWizard.ui index f8f6856..cc1e726 100644 --- a/diagramCavas/ui/diagramEditorWizard.ui +++ b/diagramCavas/ui/diagramEditorWizard.ui @@ -378,6 +378,9 @@ QPushButton:disabled { + + 12 + diff --git a/diagramCavas/ui/itemPropertyDlg.ui b/diagramCavas/ui/itemPropertyDlg.ui index 98a7262..20edcd9 100644 --- a/diagramCavas/ui/itemPropertyDlg.ui +++ b/diagramCavas/ui/itemPropertyDlg.ui @@ -43,6 +43,12 @@ 0 + + + 180 + 16777215 + + diff --git a/diagramCavas/ui/measureSettingDlg.ui b/diagramCavas/ui/measureSettingDlg.ui index 1e0084b..6ca7334 100644 --- a/diagramCavas/ui/measureSettingDlg.ui +++ b/diagramCavas/ui/measureSettingDlg.ui @@ -1293,7 +1293,7 @@ QCheckBox::indicator:checked { 0 - 0 + 12 0 diff --git a/include/createEditor.h b/include/createEditor.h index b2cba38..89bc26e 100644 --- a/include/createEditor.h +++ b/include/createEditor.h @@ -9,6 +9,7 @@ QT_END_NAMESPACE class TitleBar; class DiagramView; +class QSizeGrip; class CreateEditor : public QDialog { @@ -24,10 +25,13 @@ signals: public slots: void onOkClicked(); void onCancelClicked(); +protected: + void resizeEvent(QResizeEvent *); private: Ui::createEditor *ui; TitleBar* m_titleBar; DiagramView* m_pView; + QSizeGrip* _pSizeGrip; }; #endif diff --git a/include/loadPageDlg.h b/include/loadPageDlg.h index 53af85c..4db9174 100644 --- a/include/loadPageDlg.h +++ b/include/loadPageDlg.h @@ -9,6 +9,7 @@ namespace Ui { class loadPageDlg; } QT_END_NAMESPACE class TitleBar; +class QSizeGrip; class LoadPageDlg : public QDialog { @@ -27,11 +28,14 @@ public slots: void onCancelClicked(); void onItemChanged(const QModelIndex& current); void onItemDoubleClicked(const QModelIndex &index); +protected: + void resizeEvent(QResizeEvent *); private: Ui::loadPageDlg *ui; QStandardItemModel* m_standardItemModel; QString _pageName; TitleBar* m_titleBar; + QSizeGrip* _pSizeGrip; }; #endif diff --git a/include/mainwindow.h b/include/mainwindow.h index 7f5d4ff..0d80760 100644 --- a/include/mainwindow.h +++ b/include/mainwindow.h @@ -87,6 +87,5 @@ private: BaseDockWidget* m_pPropertyEditorDock; QDetailsView* m_pPropertiesEditorView; QAction* _pActMonitor; - bool _released = false; }; #endif // MAINWINDOW_H diff --git a/include/projectModelDlg.h b/include/projectModelDlg.h index 09c8778..21d04de 100644 --- a/include/projectModelDlg.h +++ b/include/projectModelDlg.h @@ -15,6 +15,7 @@ namespace Ui { class projectModelDlg; } QT_END_NAMESPACE class TitleBar; +class QSizeGrip; class projectModelDlg : public QDialog { @@ -54,6 +55,8 @@ private: void setTableItemState(int row,TableItemState state); //设置状态 int getModelEditState(); //返回工程模编辑状态(选择、编辑、新建) +protected: + void resizeEvent(QResizeEvent *); private: Ui::projectModelDlg *ui; QString _curMeta; //当前元模型 @@ -64,6 +67,7 @@ private: BiDirectionalMap _mapType; //类型名映射表 TitleBar* m_titleBar; + QSizeGrip* _pSizeGrip; }; #endif diff --git a/source/createEditor.cpp b/source/createEditor.cpp index 5fd0604..a69c74f 100644 --- a/source/createEditor.cpp +++ b/source/createEditor.cpp @@ -5,11 +5,13 @@ #include "ui_createEditor.h" #include "titleBar.h" #include "diagramView.h" +#include CreateEditor::CreateEditor(QWidget *parent,DiagramView* p) : QDialog(parent) , ui(new Ui::createEditor) , m_pView(p) + ,_pSizeGrip(nullptr) { ui->setupUi(this); setWindowModality(Qt::ApplicationModal); @@ -31,6 +33,8 @@ void CreateEditor::initial() m_titleBar = new TitleBar(this); m_titleBar->setTitle("新建"); ui->verticalLayout->insertWidget(0,m_titleBar); + _pSizeGrip = new QSizeGrip(this); + _pSizeGrip->setFixedSize(12, 12); connect(ui->btn_ok,&QPushButton::clicked,this,&CreateEditor::onOkClicked); connect(ui->btn_cancel,&QPushButton::clicked,this,&CreateEditor::onCancelClicked); @@ -77,3 +81,8 @@ void CreateEditor::onCancelClicked() { hide(); } + +void CreateEditor::resizeEvent(QResizeEvent *) { + _pSizeGrip->move(width() - _pSizeGrip->width(), + height() - _pSizeGrip->height()); +} diff --git a/source/electricElementsBox.cpp b/source/electricElementsBox.cpp index 18f664a..5837455 100644 --- a/source/electricElementsBox.cpp +++ b/source/electricElementsBox.cpp @@ -32,7 +32,7 @@ void ElectricElementsBox::addPanelItems(const QString& sPanel) for(auto &model:_modelInfo) { - GraphicsItemType localType = linkType[(AbstractItemType)model.modelType]; + GraphicsItemType localType = getLinkType().value((AbstractItemType)model.modelType); model.modelType = localType; //转换图元类别,从字典表转到内部类别 } @@ -58,7 +58,7 @@ void ElectricElementsBox::updateModelList() { for(auto &model:_modelInfo) { - GraphicsItemType localType = linkType[(AbstractItemType)model.modelType]; + GraphicsItemType localType = getLinkType().value((AbstractItemType)model.modelType); model.modelType = localType; } diff --git a/source/loadPageDlg.cpp b/source/loadPageDlg.cpp index 76417ed..aa79054 100644 --- a/source/loadPageDlg.cpp +++ b/source/loadPageDlg.cpp @@ -2,10 +2,12 @@ #include "dataBase.h" #include "ui_loadPageDlg.h" #include "titleBar.h" +#include LoadPageDlg::LoadPageDlg(QWidget *parent) : QDialog(parent) , ui(new Ui::loadPageDlg) + ,_pSizeGrip(nullptr) { ui->setupUi(this); setWindowModality(Qt::ApplicationModal); @@ -23,6 +25,8 @@ void LoadPageDlg::initial() m_titleBar = new TitleBar(this); m_titleBar->setTitle("加载"); ui->verticalLayout->insertWidget(0,m_titleBar); + _pSizeGrip = new QSizeGrip(this); + _pSizeGrip->setFixedSize(12, 12); connect(ui->btnOk,&QPushButton::clicked,this,&LoadPageDlg::onOkClicked); connect(ui->btnCancel,&QPushButton::clicked,this,&LoadPageDlg::onCancelClicked); @@ -104,3 +108,8 @@ void LoadPageDlg::onItemDoubleClicked(const QModelIndex &index) hide(); } } + +void LoadPageDlg::resizeEvent(QResizeEvent *) { + _pSizeGrip->move(width() - _pSizeGrip->width(), + height() - _pSizeGrip->height()); +} diff --git a/source/mainwindow.cpp b/source/mainwindow.cpp index a683d38..4b0097b 100644 --- a/source/mainwindow.cpp +++ b/source/mainwindow.cpp @@ -61,12 +61,9 @@ CMainWindow::~CMainWindow() delete ui; //if(m_pElectricElementsBox) //delete m_pElectricElementsBox; - if(!_released){ - if(m_pPropertiesEditorView){ - auto pView = m_pPropertiesEditorView->getQuickDetailsView(); - delete pView; - delete m_pPropertiesEditorView; - } + if(m_pPropertiesEditorView){ + + m_pPropertiesEditorView->deleteLater(); } } @@ -76,12 +73,6 @@ void CMainWindow::closeEvent(QCloseEvent* event) // Delete dock manager here to delete all floating widgets. This ensures // that all top level windows of the dock manager are properly closed QMainWindow::closeEvent(event); - if(m_pPropertiesEditorView){ - auto pView = m_pPropertiesEditorView->getQuickDetailsView(); - delete pView; - delete m_pPropertiesEditorView; - _released = true; - } } void CMainWindow::changeEvent(QEvent* event) diff --git a/source/projectModelDlg.cpp b/source/projectModelDlg.cpp index a71d5ff..7833c2e 100644 --- a/source/projectModelDlg.cpp +++ b/source/projectModelDlg.cpp @@ -9,11 +9,13 @@ #include "projectTableDelegate.h" #include "projectModelManager.h" #include "titleBar.h" +#include projectModelDlg::projectModelDlg(QWidget *parent) : QDialog(parent) , ui(new Ui::projectModelDlg) ,_curRow(-1) + ,_pSizeGrip(nullptr) { ui->setupUi(this); this->setWindowFlags(Qt::FramelessWindowHint | windowFlags()); @@ -33,6 +35,8 @@ void projectModelDlg::initial() m_titleBar = new TitleBar(this); m_titleBar->setTitle("工程模设置"); ui->verticalLayout_2->insertWidget(0,m_titleBar); + _pSizeGrip = new QSizeGrip(this); + _pSizeGrip->setFixedSize(12, 12); connect(ui->btn_save,&QPushButton::clicked,this,&projectModelDlg::onSaveClicked); connect(ui->btn_cancel,&QPushButton::clicked,this,&projectModelDlg::onCancelClicked); @@ -874,3 +878,8 @@ int projectModelDlg::getModelEditState() } return res; } + +void projectModelDlg::resizeEvent(QResizeEvent *) { + _pSizeGrip->move(width() - _pSizeGrip->width(), + height() - _pSizeGrip->height()); +}