You cannot select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
nmWATI/Include/iGui/iGuiConfig/iWxConfigWizard.h

95 lines
1.9 KiB
C++

#pragma once
#include "iWxConfigBase.h"
#include "iGuiConfig_global.h"
class TreeWxConfig;
class X_GUI_CONFIG_EXPORT iWxConfigWizard : public iWxConfigBase
{
Q_OBJECT
public:
explicit iWxConfigWizard(QWidget *parent = 0);
~iWxConfigWizard();
// 初始化
virtual void initUI();
// 清空
void clearWx();
signals:
void sigCurrentWxChanged(ConfigWxType&);
private:
// 初始化
void initBase();
void initBase_MainLayout();
void initBase_TreeWx();
QVBoxLayout* initBase_ConfigWxs();
QHBoxLayout* initBase_ToolBars();
void refreshOthers();
// 子窗体
void initSubWxs();
void dealSubWxs_Special();
// 刷新
void freshCommonBtns(iWxConfigBase* pWx);
void freshOwnBtns(iWxConfigBase* pWx);
void freshTitle(iWxConfigBase* pWx);
void freshTreeSelNode(iWxConfigBase* pWx);
protected:
virtual void paintEvent(QPaintEvent *);
virtual void onSerialize(ZxSerializer* ser);
virtual void onDeserialize(ZxSerializer* ser);
private slots:
// 左侧树双击
virtual void slotTreeItemChanged(QTreeWidgetItem*, int);
void slotSubWxChanged(int);
// 把Wizard中所有项进行保存或者恢复
void slotSaveAll();
void slotSaveActionTriggered();
// 按钮
void on_btnBack_clicked();
void on_btnNext_clicked();
void on_btnHelp_clicked();
// 属性编辑与XPF编辑工具的交互
void slotOpenWithXpfTool(QString s);
private:
QHBoxLayout* m_pMainLayout;
// 子窗体,本类不负责创建维护
QVector<iWxConfigBase*> m_vecSubWxs;
// TreeCtrl
TreeWxConfig* m_pTreeWx;
// 子窗体容器
QStackedWidget* m_pStackedWidget;
// Tags
QLabel* m_pLblTitle;
// Btn
QPushButton* m_pBtnBack;
QPushButton* m_pBtnNext;
QPushButton* m_pBtnSave;
// Menu
QMenu* m_pSaveBtnMenu;
// PropEdit与XpfEdit的索引
int m_nIndexProp;
int m_nIndexXpf;
};