#pragma once #include "mModuleDefines.h" #include "iDlgBase.h" #include "mGuiSysManager_global.h" class QFile; class ZxDataWell; class ZxDataObject; namespace Ui { class iWxWellNew; } // 新建或编辑项目对话框 class M_GUI_SYSMANAGER_EXPORT iWxWellNew : public iDlgBase { Q_OBJECT public: explicit iWxWellNew(QWidget *parent = 0); ~iWxWellNew(); // 初始化 virtual void initUI(); void setDataWell(ZxDataWell* p); void setClonedDataWell(ZxDataWell* p); //克隆的目标 void setActionMode(DataActionMode o); // 返回 QString getUiWellName(); QString getUiCreator(); QString getUiCreatedTime(); QString getUiModifier(); QString getUiModifiedTime(); QString getUiDesc(); // 节点名称 QString getNodeName(); private: // 根据不同模式进行初始化 void initUI_ModeNew(); void initUI_ModeEdit(); void initUI_ModeScan(); void initUI_ModeSaveAs(); void initUI_ModeClone(); // 其它部分的初始 void initCbxAbouts(); //井型井别 void initXyAbouts(); //坐标相关 void initDataOptions(); //克隆选项 void fillCbbDataOf(QString sType, \ ZxDataObjectList& vecObjs, \ QComboBox* pCbb);// QStringList getFieldBlockNames(bool bBlock); bool checkInputs(); bool saveWellDataObj(ZxDataWell* pObj); bool saveWellDataOthers(ZxDataWell* pWellDataFrom, \ ZxDataWell* pWellDataTo, \ int nPrsIndex); //克隆其它选项的数据 bool isCloneNeeded(QString sType, ZxDataObject* pObj); // 进度条相关 int getLoopCount(); //需要遍历多少 void startProgressBar(int nMax); void stepProgressBar(int nIndex); void finishProgressBar(); signals: private slots: // 克隆相关的选项 void on_cbxDataGaugeF_clicked(); void on_cbxDataGaugeP_clicked(); void on_cbxDataGaugeT_clicked(); void on_tbxWellName_editingFinished(); void on_btnOK_clicked(); void on_btnCancel_clicked(); protected: Ui::iWxWellNew *ui; ZxDataWell* m_pObj; ZxDataWell* m_pClonedObj; DataActionMode m_oDAM; // 为了方便 QMap m_mapOptionCbxs; };