#pragma warning(push ,0) #include #include #include #include "ModuleTreeDlg.h" #include "GlobalUtility.h" #include "GeometryUtils.h" #pragma warning(pop) BEGIN_OSGGRAPHICS_NAMESPACE; ModuleTreeDlg::ModuleTreeDlg(QWidget * parent, Qt::WindowFlags f) : QDialog(parent, f) { m_pModuleTree = new CPaiModuleTree(this); m_pCompositeModuleTree=new CPaiWorkflowTemplateTree(QUuid(),this); m_TabWidget_Module = new QTabWidget(this); m_pOKButton = new QPushButton(QObject::tr("选定")); m_pOKButton->setIcon(QIcon(::GetImagePath()+"icon/OK.png")); m_pOKButton->setMaximumWidth(100); m_pCancelButton = new QPushButton(QObject::tr("取消")); m_pCancelButton->setIcon(QIcon(::GetImagePath()+"icon/Cancel.png")); m_pCancelButton->setMaximumWidth(100); connect(m_pOKButton, SIGNAL(clicked()), this, SLOT(accept())); connect(m_pCancelButton, SIGNAL(clicked()), this, SLOT(reject())); connect(m_pModuleTree,SIGNAL(DeliverModule(const QString&)),this,SLOT(accept())); m_TabWidget_Module->addTab(m_pModuleTree,QIcon(::GetImagePath() + "icon/ModuleOne.png"),QObject::tr("单方法")); m_TabWidget_Module->addTab(m_pCompositeModuleTree,QIcon(::GetImagePath() + "icon/Workflowtemplate.png"),QObject::tr("组合方法")); QGridLayout *layout = new QGridLayout; layout->addWidget(m_TabWidget_Module, 0,0,1,3); layout->addWidget(m_pOKButton, 1,1,1,1); layout->addWidget(m_pCancelButton,1,2,1,1); layout->setRowStretch(0, 1); layout->setColumnStretch(0, 1); layout->setColumnStretch(1, 1); setLayout(layout); layout->setColumnMinimumWidth(0,150); layout->setColumnMinimumWidth(1,100); layout->setColumnMinimumWidth(2,100); this->setWindowTitle("请选择处理方法"); this->setWindowIcon(QIcon(::GetImagePath()+"icon/workflow.png")); this->setMinimumHeight(500); this->setMinimumWidth(350); } ModuleTreeDlg::~ModuleTreeDlg(void) { } void ModuleTreeDlg::accept() { if(m_pModuleTree->selectedItems().size()>=1||m_pCompositeModuleTree->selectedItems().size()>=1) { if(m_TabWidget_Module->currentIndex()==0){//选择了单方法 QTreeWidgetItem* selectd=m_pModuleTree->selectedItems().at(0); m_SelectedModuleClassID=selectd->data(0,pai::gui::IDRole).toString(); m_SelectedModuleName=selectd->text(0); m_SelectedCompositeMethod=""; if(m_SelectedModuleClassID!="") QDialog::accept(); } else if(m_TabWidget_Module->currentIndex()==1){//选择了组合方法 QTreeWidgetItem* selectd=m_pCompositeModuleTree->selectedItems().at(0); m_SelectedModuleClassID=""; m_SelectedModuleName=""; m_SelectedCompositeMethod=selectd->text(0); if(m_SelectedCompositeMethod!="") QDialog::accept(); } } else { QMessageBox::information(this,QObject::tr("提示"),QObject::tr("请选择一个模块或者组合方法")); } } END_OSGGRAPHICS_NAMESPACE