#include "zxLogInstance.h" #include "iRibbonXmlCmd.h" #ifdef MY_OWN_GRID #include "iSubWndGrid.h" #else #include "nmSubWndDemo.h" #endif #include "nmSubWndUtils.h" #include "nmNewDlg.h" #include "nmNewNormalDlg.h" #include "nmWxParaProperty.h" #include "nmDataDemo.h" #include iSubWnd* nmSubWndUtils::createSubWnd(iRibbonXmlCmd* pCmdInfo) { if (NULL == pCmdInfo) { return NULL; } return createSubWnd(pCmdInfo->m_sID, pCmdInfo->m_sExtInfo); } iSubWnd* nmSubWndUtils::createSubWnd(QString sID, QString sExt) { iSubWnd* pSubWnd = NULL; // Here is your own codes int nID = sID.toInt(); if (nID == 5101) { // 初始化一个数据类 nmDataDemo* analyzeData = new nmDataDemo(); // TODO,先弹窗做新建分析,再创建subWnd nmNewNormalDlg* dlg = new nmNewNormalDlg(analyzeData); dlg->exec(); if(dlg->result() == QDialog::Rejected) { // 对话框被用户显式拒绝 // 在这里处理你的逻辑 delete analyzeData; analyzeData = NULL; return nullptr; } nmSubWndDemo* pSubWndDemo = new nmSubWndDemo(NULL, sExt); pSubWndDemo->setAnalyzeData(analyzeData); pSubWnd = pSubWndDemo; } if (NULL != pSubWnd) { // TODO 此处根据需要设置 改变 标识 pSubWnd->setModified(true); } return pSubWnd; } bool nmSubWndUtils::runCmdBySpecial(iRibbonXmlCmd* pCmdInfo) { if (NULL == pCmdInfo) { return false; } return runCmdBySpecial(pCmdInfo->m_sID, pCmdInfo->m_sExtInfo); } bool nmSubWndUtils::runCmdBySpecial(QString sID, QString sExt) { // Here is your own codes if (_isSame(sID, "12345")) { QMessageBox::information(NULL, zxAppID, QObject::tr("I am abc")); return true; } else { return false; } } bool nmSubWndUtils::isEnableOfID_Common(QString sID, QString sName, const bool bLicensed) { // 如果是5101,即 新建PVT if (sID.toInt() == 5101) { return true; } // Here is your own codes if (_isSame(sName, "NmDemo")) { return (bLicensed); } else { return false; } }