GridFrame/diagramCavas/include/diagramEditor/diagramEditorBayDetailAddDlg.h

72 lines
2.2 KiB
C
Raw Normal View History

2026-03-23 11:11:55 +08:00
#ifndef DIAGRAMEDITORBAYDETAILADDDLG_H
#define DIAGRAMEDITORBAYDETAILADDDLG_H
#include <QDialog>
//#include "global.h"
#include "common/core_model/diagram.h"
QT_BEGIN_NAMESPACE
namespace Ui { class diagramEditorBayDetailAddDlg; }
QT_END_NAMESPACE
class DiagramEditorBayDetailSettingDlg;
class QStandardItemModel;
2026-05-08 18:03:54 +08:00
class QComboBox;
2026-05-18 19:12:28 +08:00
class TitleBar;
2026-05-22 16:08:15 +08:00
class QSizeGrip;
2026-03-23 11:11:55 +08:00
class DiagramEditorBayDetailAddDlg : public QDialog
{
Q_OBJECT
public:
2026-05-08 18:03:54 +08:00
enum Column
{
Col_Category = 0,
Col_Name,
Col_Type,
Col_BindObj,
Col_Route,
Col_Count
};
2026-03-23 11:11:55 +08:00
DiagramEditorBayDetailAddDlg(QWidget *parent = nullptr);
~DiagramEditorBayDetailAddDlg();
void initial();
void showDlg();
void showDlg(DiagramEditorRouteInfo info); //编辑
void setParent(DiagramEditorBayDetailSettingDlg* p) {_pParent = p;}
private:
void updateBindLst(); //刷新关联列表
2026-05-08 18:03:54 +08:00
void loadFromModelRow(int row); //载入行数据到界面
void setComboBoxByData(QComboBox *combo,int targetData); //按 data 设置 ComboBox 适用于cb_category cb_type
void setBindObjComboBox(QComboBox *combo,int bindType,int bindPara,const QString &bindParent); //专用:设置 cb_bindObj多 UserRole
void syncSelectedModel(const QString &deviceName); //按设备名同步当前线路(todo:其他线路)
2026-03-23 11:11:55 +08:00
public slots:
void onAddClicked();
void onDeleteClicked();
void onSaveClicked();
void onOkClicked();
void onCancelClicked();
void onCategoryChanged(const QString&);
void onComponentDeleteClicked();
void onComponentRbtnClicked(const QPoint &pos);
2026-05-08 18:03:54 +08:00
void onComponentSelected(const QModelIndex &index);
2026-03-23 11:11:55 +08:00
void onRouteDeleteClicked();
void onRouteRbtnClicked(const QPoint &pos); //线路右键菜单
2026-05-22 16:08:15 +08:00
protected:
void resizeEvent(QResizeEvent *);
2026-03-23 11:11:55 +08:00
private:
Ui::diagramEditorBayDetailAddDlg *ui;
QStandardItemModel* _selectedModel;
DiagramEditorBayDetailSettingDlg* _pParent;
int _curMode; //0新建1修改
QStandardItemModel* _bindItemModel; //绑定的对象模型
2026-05-18 19:12:28 +08:00
TitleBar* m_titleBar;
2026-05-22 16:08:15 +08:00
QSizeGrip* _pSizeGrip;
2026-03-23 11:11:55 +08:00
};
#endif