void BronchoscopyRegistrationWidget::setup() { mOptions = profile()->getXmlSettings().descend("bronchoscopyregistrationwidget"); mSelectMeshWidget = StringPropertySelectMesh::New(mServices->patient()); mSelectMeshWidget->setValueName("Centerline: "); //this->initializeTrackingService(); connect(mServices->patient().get(),&PatientModelService::patientChanged,this,&BronchoscopyRegistrationWidget::clearDataOnNewPatient); mProcessCenterlineButton = new QPushButton("Process centerline"); connect(mProcessCenterlineButton, SIGNAL(clicked()), this, SLOT(processCenterlineSlot())); mProcessCenterlineButton->setToolTip(this->defaultWhatsThis()); // mBronchoscopeRegistrationPtr = BronchoscopeRegistrationPtr(new BronchoscopePositionProjection()); // mProjectionCenterlinePtr->createMaxDistanceToCenterlineOption(mOptions.getElement()); mRegisterButton = new QPushButton("Register"); connect(mRegisterButton, SIGNAL(clicked()), this, SLOT(registerSlot())); mRegisterButton->setToolTip(this->defaultWhatsThis()); mRecordTrackingWidget = new RecordTrackingWidget(mOptions.descend("recordTracker"), mServices->acquisition(), mServices, "bronc_path", this); mRecordTrackingWidget->getSessionSelector()->setHelp("Select bronchoscope path for registration"); mRecordTrackingWidget->getSessionSelector()->setDisplayName("Bronchoscope path"); mVerticalLayout->setMargin(0); mVerticalLayout->addWidget(new DataSelectWidget(mServices->view(), mServices->patient(), this, mSelectMeshWidget)); this->selectSubsetOfBranches(mOptions.getElement()); this->createMaxNumberOfGenerations(mOptions.getElement()); this->useLocalRegistration(mOptions.getElement()); this->createMaxLocalRegistrationDistance(mOptions.getElement()); // PropertyPtr maxLocalRegistrationDistance = mProjectionCenterlinePtr->getMaxLocalRegistrationDistanceOption(); mVerticalLayout->addWidget(new CheckBoxWidget(this, mUseSubsetOfGenerations)); mVerticalLayout->addWidget(createDataWidget(mServices->view(), mServices->patient(), this, mMaxNumberOfGenerations)); mVerticalLayout->addWidget(mProcessCenterlineButton); mVerticalLayout->addWidget(mRecordTrackingWidget); mVerticalLayout->addWidget(new CheckBoxWidget(this, mUseLocalRegistration)); mVerticalLayout->addWidget(createDataWidget(mServices->view(), mServices->patient(), this, mMaxLocalRegistrationDistance)); mVerticalLayout->addWidget(mRegisterButton); mVerticalLayout->addStretch(); }
MyWidget::MyWidget(QWidget* parent) : QWidget(parent) { modelIsChanged=false; typeData=-1; createActions(); createMenus(); createModel(); createDataWidget(); createView(); createDxBar(); connectSignalSlot(); }