|
|
#pragma once
|
|
|
|
|
|
#include "iSubWnd.h"
|
|
|
|
|
|
class iJobInfoModel;
|
|
|
class ZxSegmentInfo;
|
|
|
class iWxBase;
|
|
|
class ZxPlot;
|
|
|
class iDockBaseWx;
|
|
|
class iJobRun;
|
|
|
class iWxWizard;
|
|
|
class iModelOption;
|
|
|
class ZxRstJobWnd;
|
|
|
|
|
|
class M_SUB_WND_EXPORT iSubWndBaseAF : public iSubWnd
|
|
|
{
|
|
|
Q_OBJECT
|
|
|
|
|
|
public:
|
|
|
|
|
|
explicit iSubWndBaseAF(QWidget *parent = 0, QString sExt = "");
|
|
|
~iSubWndBaseAF();
|
|
|
|
|
|
// 配置窗体
|
|
|
virtual void configWnd();
|
|
|
|
|
|
virtual void setDataWell(ZxDataWell* p);
|
|
|
|
|
|
// 序列化
|
|
|
virtual void onSerialize(ZxSerializer* ser);
|
|
|
virtual void onDeserialize(ZxSerializer* ser);
|
|
|
|
|
|
virtual bool saveRunAndSegInfo(ZxRstJobWnd* pRstWnd);
|
|
|
virtual bool loadRunAndSegInfo(ZxRstJobWnd* pRstWnd);
|
|
|
|
|
|
virtual void layoutSubWnds(WndLayoutMode oWlm);
|
|
|
|
|
|
// 把所有JobRun指针传递过来
|
|
|
void setAllJobRuns(QVector<iJobRun*>* p);
|
|
|
virtual void setJobRun(iJobRun* pJobRun, bool bFuzzyPit = false);
|
|
|
iJobRun* getJobRun();
|
|
|
// virtual void setSegmentInfo(ZxSegmentInfo* p);
|
|
|
ZxSegmentInfo* getSegmentInfo();
|
|
|
|
|
|
|
|
|
/// @brief 命令是否Enabled的状态判断,通常来自Ribbon
|
|
|
/// @param b (out),true:Enabled false:disabled
|
|
|
/// @param sName (in),Cmd Name
|
|
|
/// @param nID (in),Cmd ID
|
|
|
/// @param bLicensed (in),当前是否有授权
|
|
|
/// @return 本窗体是否已经进行状态判断(即属于本窗体可执行的命令)
|
|
|
virtual bool checkCmdEnable(bool &b, \
|
|
|
QString sName, int nID, \
|
|
|
bool bLicensed);
|
|
|
protected:
|
|
|
|
|
|
// 重新调整工具栏
|
|
|
virtual void reAdjustToolbar(QToolBar*);
|
|
|
|
|
|
// 20210825去除无效,比如变井储HegeMan开始处总是有空值TheoryDeriv / TheorySource
|
|
|
// 后续可以考虑是不是需要处理其它 TODO
|
|
|
virtual bool adjustResultDataOf(QString sCurveTag, \
|
|
|
VecFloat& vecX, \
|
|
|
VecFloat& vecY, \
|
|
|
bool bCutoffNeeded = false);
|
|
|
|
|
|
public slots:
|
|
|
|
|
|
// 增加JobRun选项
|
|
|
void slotToolbarBuilt(QToolBar*);
|
|
|
|
|
|
protected:
|
|
|
|
|
|
// 当前所有JobRun,输入主窗口,从主窗口传入
|
|
|
QVector<iJobRun*>* m_pVecJobRuns;
|
|
|
|
|
|
iJobRun* m_pJobRun; //这是传入,本类不负责维护
|
|
|
|
|
|
ZxSegmentInfo* m_pSegInfo;
|
|
|
|
|
|
// 临时,当前子窗体布局Mode
|
|
|
WndLayoutMode m_oWlm;
|
|
|
};
|