#include "ToolDialog.h" #include #include #include #include #include ToolDialogImpl::ToolDialogImpl(QWidget *parent) : DllToolDialog(parent) { ui.setupUi(this); this->setWindowFlags(Qt::Dialog | Qt::WindowMaximizeButtonHint | Qt::WindowCloseButtonHint /*| Qt::WindowStaysOnTopHint*/); connect(this, SIGNAL(sigUpdateUI()), this, SLOT(on_UpdateUI())); m_pCamera = nullptr; } ToolDialogImpl::~ToolDialogImpl() { } VPEnum::RETURN_VALUE ToolDialogImpl::Execute() { emit sigUpdateUI(); return VPEnum::RETURN_VALUE::Success; } void ToolDialogImpl::Running(bool bRun) { } bool ToolDialogImpl::Serialized(QDataStream& ar, bool bIsOut) { int m_Value = 0; int paranum;//参数数量 if (bIsOut)//保存参数流程 { paranum = 1; ar << paranum;//先保存参数数量 ar << (int)1 << m_Value; } else//加载参数流程,参数加载顺序一定要跟保存顺序一致 { int nSize1 = 0; int para; ar >> paranum;//读取参数数量 for (int i = 0; i < paranum; i++) { ar >> para; switch (para) { case 1: ar >> m_Value; break; default: { qWarning() << "Serialized(In) Error" ; return false; } break; } } //hwndUnit->getHWndCtrl()->useROIController(&roiController); } return true; } void ToolDialogImpl::on_UpdateUI() { } /// /// 确定 /// void ToolDialogImpl::on_btnOK_clicked() { this->hide(); } /// /// 取消按钮 /// void ToolDialogImpl::on_btnCancel_clicked() { // 将本工具的恢复到打开工具之前的状态 RecoverData(); } /// /// 测试按钮 /// void ToolDialogImpl::on_btnExecute_clicked() { QElapsedTimer toolTimer; toolTimer.start(); VPEnum::RETURN_VALUE ret = this->Execute(); double nExecTime = toolTimer.elapsed(); QString str; str = QString("耗时: %1 ms").arg(nExecTime, 0, 'G', 5); ui.label_time->setText(str); str = QString("状态: %1 ").arg(QMetaEnum::fromType().key((short)ret)); ui.label_state->setText(str); } void ToolDialogImpl::on_btn_Config_clicked() { if (m_pCamera) { m_pCamera->showParamConfigWindow(); } }