diff --git a/Modules/IGTUI/Qmitk/QmitkTrackingDeviceConfigurationWidget.cpp b/Modules/IGTUI/Qmitk/QmitkTrackingDeviceConfigurationWidget.cpp index 375fd2931b..39b980192d 100644 --- a/Modules/IGTUI/Qmitk/QmitkTrackingDeviceConfigurationWidget.cpp +++ b/Modules/IGTUI/Qmitk/QmitkTrackingDeviceConfigurationWidget.cpp @@ -1,317 +1,330 @@ /*========================================================================= Program: Medical Imaging & Interaction Toolkit Language: C++ Date: $Date: 2009-05-12 19:14:45 +0200 (Di, 12 Mai 2009) $ Version: $Revision: 1.12 $ Copyright (c) German Cancer Research Center, Division of Medical and Biological Informatics. All rights reserved. See MITKCopyright.txt or http://www.mitk.org/copyright.html for details. This software is distributed WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the above copyright notices for more information. =========================================================================*/ #include "QmitkTrackingDeviceConfigurationWidget.h" #include "mitkClaronTrackingDevice.h" #include "mitkNDITrackingDevice.h" #include "mitkSerialCommunication.h" #include "qscrollbar.h" const std::string QmitkTrackingDeviceConfigurationWidget::VIEW_ID = "org.mitk.views.trackingdeviceconfigurationwidget"; QmitkTrackingDeviceConfigurationWidget::QmitkTrackingDeviceConfigurationWidget(QWidget* parent, Qt::WindowFlags f) : QWidget(parent, f) { m_Controls = NULL; CreateQtPartControl(this); CreateConnections(); //reset a few things ResetOutput(); AddOutput("
NDI Polaris selected"); this->m_TrackingDeviceConfigurated = false; + this->SetGUIStyle(QmitkTrackingDeviceConfigurationWidget::SIMPLE); + m_AdvancedUserControl = true; } -void QmitkTrackingDeviceConfigurationWidget::SetStyle(QmitkTrackingDeviceConfigurationWidget::Style style) +void QmitkTrackingDeviceConfigurationWidget::SetGUIStyle(QmitkTrackingDeviceConfigurationWidget::Style style) { switch(style) { case QmitkTrackingDeviceConfigurationWidget::SIMPLE: - /* //move all UI elements to an empty dummy layout - m_Controls->dummy_layout2->addItem(m_Controls->main_layout); - m_Controls->dummy_layout2->addWidget(m_Controls->widget_title_label); - m_Controls->dummy_layout2->addWidget(m_Controls->choose_tracking_device_label); - m_Controls->dummy_layout2->addWidget(m_Controls->polaris_label); - m_Controls->dummy_layout2->addWidget( m_Controls->aurora_label); - m_Controls->dummy_layout2->addWidget(m_Controls->aurora_label); - m_Controls->dummy_layout2->addWidget(m_Controls->microntracker_label); - m_Controls->dummy_layout2->addWidget(m_Controls->m_testConnectionMicronTracker); - m_Controls->dummy_layout2->addWidget(m_Controls->m_outputTextMicronTracker); - m_Controls->dummy_layout2->addWidget(m_Controls->m_outputTextAurora); - m_Controls->dummy_layout2->addWidget(m_Controls->m_testConnectionAurora); - m_Controls->dummy_layout2->addWidget(m_Controls->m_outputTextPolaris); - m_Controls->dummy_layout2->addWidget(m_Controls->m_testConnectionPolaris); - m_Controls->dummy_layout2->addWidget(m_Controls->m_polarisTrackingModeBox); - m_Controls->dummy_layout2->addWidget(m_Controls->m_finishedLine); - m_Controls->dummy_layout2->addWidget(m_Controls->line); - m_Controls->dummy_layout2->addWidget(m_Controls->configuration_finished_label); - m_Controls->dummy_layout2->addItem(m_Controls->horizontalLayout_4); - m_Controls->dummy_layout2->addWidget(m_Controls->configuration_finished_label); - m_Controls->dummy_layout2->addItem(m_Controls->verticalSpacer_2); - m_Controls->dummy_layout2->addItem(m_Controls->horizontalSpacer_9); - m_Controls->dummy_layout2->addItem(m_Controls->horizontalSpacer_3); - m_Controls->dummy_layout2->addItem(m_Controls->verticalSpacer_3); - m_Controls->dummy_layout2->addItem(m_Controls->verticalSpacer_4); - m_Controls->dummy_layout2->addItem(m_Controls->horizontalSpacer_10); - m_Controls->dummy_layout2->addItem(m_Controls->horizontalSpacer_10); - + m_Controls->dummyLayout->addItem(m_Controls->mainLayout); + m_Controls->dummyLayout->addWidget(m_Controls->widget_title_label); + m_Controls->dummyLayout->addWidget(m_Controls->choose_tracking_device_label); + m_Controls->dummyLayout->addWidget(m_Controls->polaris_label); + m_Controls->dummyLayout->addWidget( m_Controls->aurora_label); + m_Controls->dummyLayout->addWidget(m_Controls->aurora_label); + m_Controls->dummyLayout->addWidget(m_Controls->microntracker_label); + m_Controls->dummyLayout->addWidget(m_Controls->m_testConnectionMicronTracker); + m_Controls->dummyLayout->addWidget(m_Controls->m_outputTextMicronTracker); + m_Controls->dummyLayout->addWidget(m_Controls->m_outputTextAurora); + m_Controls->dummyLayout->addWidget(m_Controls->m_testConnectionAurora); + m_Controls->dummyLayout->addWidget(m_Controls->m_outputTextPolaris); + m_Controls->dummyLayout->addWidget(m_Controls->m_testConnectionPolaris); + m_Controls->dummyLayout->addWidget(m_Controls->m_polarisTrackingModeBox); + m_Controls->dummyLayout->addWidget(m_Controls->m_finishedLine); + m_Controls->dummyLayout->addWidget(m_Controls->line); + m_Controls->dummyLayout->addWidget(m_Controls->configuration_finished_label); + m_Controls->dummyLayout->addItem(m_Controls->horizontalLayout_4); + m_Controls->dummyLayout->addWidget(m_Controls->configuration_finished_label); + m_Controls->dummyLayout->addItem(m_Controls->verticalSpacer_2); + m_Controls->dummyLayout->addItem(m_Controls->horizontalSpacer_9); + m_Controls->dummyLayout->addItem(m_Controls->horizontalSpacer_3); + m_Controls->dummyLayout->addItem(m_Controls->verticalSpacer_3); + m_Controls->dummyLayout->addItem(m_Controls->verticalSpacer_4); + m_Controls->dummyLayout->addItem(m_Controls->horizontalSpacer_10); + m_Controls->dummyLayout->addItem(m_Controls->horizontalSpacer_10); + + m_Controls->m_outputTextPolaris->setMinimumHeight(0); + m_Controls->m_outputTextPolaris->setMaximumHeight(0); + m_Controls->m_outputTextMicronTracker->setMinimumHeight(0); + m_Controls->m_outputTextMicronTracker->setMaximumHeight(0); + m_Controls->m_outputTextAurora->setMinimumHeight(0); + m_Controls->m_outputTextAurora->setMaximumHeight(0); + + //set the height of the tracking device combo box m_Controls->m_trackingDeviceChooser->setMinimumHeight(50); //move back the used elemets to the main layout - m_Controls->main_layout2->addWidget(m_Controls->m_trackingDeviceChooser); - m_Controls->main_layout2->addWidget(m_Controls->m_TrackingSystemWidget); + m_Controls->simpleLayout->addWidget(m_Controls->m_trackingDeviceChooser); + m_Controls->simpleLayout->addWidget(m_Controls->m_TrackingSystemWidget); + + m_Controls->mainWidget->setCurrentIndex(1); + + this->setMaximumHeight(150); this->EnableAdvancedUserControl(false); - */ + break; case QmitkTrackingDeviceConfigurationWidget::ADVANCED: //default at the moment => start settings are advanced break; } } QmitkTrackingDeviceConfigurationWidget::~QmitkTrackingDeviceConfigurationWidget() { } void QmitkTrackingDeviceConfigurationWidget::CreateQtPartControl(QWidget *parent) { if (!m_Controls) { // create GUI widgets m_Controls = new Ui::QmitkTrackingDeviceConfigurationWidgetControls; m_Controls->setupUi(parent); } } void QmitkTrackingDeviceConfigurationWidget::CreateConnections() { if ( m_Controls ) { connect( (QObject*)(m_Controls->m_trackingDeviceChooser), SIGNAL(currentIndexChanged(int)), this, SLOT(TrackingDeviceChanged()) ); connect( (QObject*)(m_Controls->m_testConnectionPolaris), SIGNAL(clicked()), this, SLOT(TestConnection()) ); connect( (QObject*)(m_Controls->m_testConnectionAurora), SIGNAL(clicked()), this, SLOT(TestConnection()) ); connect( (QObject*)(m_Controls->m_testConnectionMicronTracker), SIGNAL(clicked()), this, SLOT(TestConnection()) ); connect( (QObject*)(m_Controls->m_resetButton), SIGNAL(clicked()), this, SLOT(ResetByUser()) ); connect( (QObject*)(m_Controls->m_finishedButton), SIGNAL(clicked()), this, SLOT(Finished()) ); //set a few UI components depending on Windows / Linux #ifdef WIN32 m_Controls->portTypeLabelPolaris->setVisible(false); m_Controls->portTypePolaris->setVisible(false); m_Controls->portTypeLabelAurora->setVisible(false); m_Controls->portTypeAurora->setVisible(false); #else m_Controls->comPortLabelAurora->setText("Port Nr:"); m_Controls->m_comPortLabelPolaris->setText("Port Nr:"); m_Controls->m_portSpinBoxAurora->setPrefix(""); m_Controls->m_portSpinBoxPolaris->setPrefix(""); #endif } } void QmitkTrackingDeviceConfigurationWidget::TrackingDeviceChanged() { //show the correspondig widget m_Controls->m_TrackingSystemWidget->setCurrentIndex(m_Controls->m_trackingDeviceChooser->currentIndex()); //the new trackingdevice is not configurated yet m_TrackingDeviceConfigurated = false; //reset output ResetOutput(); //print output if (m_Controls->m_trackingDeviceChooser->currentIndex()==0) AddOutput("
NDI Polaris selected"); //NDI Polaris else if (m_Controls->m_trackingDeviceChooser->currentIndex()==1) AddOutput("
NDI Aurora selected"); //NDI Aurora else if (m_Controls->m_trackingDeviceChooser->currentIndex()==2) AddOutput("
Microntracker selected"); //ClaronTechnology MicronTracker 2 } void QmitkTrackingDeviceConfigurationWidget::EnableUserReset(bool enable) { if (enable) m_Controls->m_resetButton->setVisible(true); else m_Controls->m_resetButton->setVisible(false); } void QmitkTrackingDeviceConfigurationWidget::TestConnection() { //#### Step 1: construct a tracking device: mitk::TrackingDevice::Pointer testTrackingDevice = ConstructTrackingDevice(); //#### Step 2: test connection and start tracking, generate output AddOutput("
testing connection
..."); if (testTrackingDevice->OpenConnection()) { AddOutput(" OK"); AddOutput("
testing tracking
..."); if (testTrackingDevice->StartTracking()) { AddOutput(" OK"); if (!testTrackingDevice->StopTracking())AddOutput("
ERROR while stop tracking
"); } else AddOutput(" ERROR!"); if (!testTrackingDevice->CloseConnection())AddOutput("
ERROR while closing connection
"); } else AddOutput(" ERROR!"); } void QmitkTrackingDeviceConfigurationWidget::Finished() { m_TrackingDevice = ConstructTrackingDevice(); m_Controls->m_TrackingSystemWidget->setEnabled(false); m_Controls->m_trackingDeviceChooser->setEnabled(false); m_Controls->choose_tracking_device_label->setEnabled(false); m_Controls->configuration_finished_label->setText("\n\n

Configuration finished

"); this->m_TrackingDeviceConfigurated = true; emit TrackingDeviceConfigurationFinished(); } void QmitkTrackingDeviceConfigurationWidget::Reset() { m_TrackingDevice = NULL; m_Controls->m_TrackingSystemWidget->setEnabled(true); m_Controls->m_trackingDeviceChooser->setEnabled(true); m_Controls->choose_tracking_device_label->setEnabled(true); m_Controls->configuration_finished_label->setText("\n\n

Press \"Finished\" to confirm configuration

"); this->m_TrackingDeviceConfigurated = false; emit TrackingDeviceConfigurationReseted(); } void QmitkTrackingDeviceConfigurationWidget::ResetByUser() { Reset(); } //######################### internal help methods ####################################### void QmitkTrackingDeviceConfigurationWidget::ResetOutput() { m_output.str(""); m_output <<"output:"; m_Controls->m_outputTextAurora->setHtml(QString(m_output.str().c_str())); m_Controls->m_outputTextPolaris->setHtml(QString(m_output.str().c_str())); m_Controls->m_outputTextMicronTracker->setHtml(QString(m_output.str().c_str())); } void QmitkTrackingDeviceConfigurationWidget::AddOutput(std::string s) { //print output m_output << s; m_Controls->m_outputTextAurora->setHtml(QString(m_output.str().c_str())); m_Controls->m_outputTextPolaris->setHtml(QString(m_output.str().c_str())); m_Controls->m_outputTextMicronTracker->setHtml(QString(m_output.str().c_str())); m_Controls->m_outputTextPolaris->verticalScrollBar()->setValue(m_Controls->m_outputTextPolaris->verticalScrollBar()->maximum()); m_Controls->m_outputTextAurora->verticalScrollBar()->setValue(m_Controls->m_outputTextAurora->verticalScrollBar()->maximum()); m_Controls->m_outputTextMicronTracker->verticalScrollBar()->setValue(m_Controls->m_outputTextMicronTracker->verticalScrollBar()->maximum()); repaint(); } mitk::TrackingDevice::Pointer QmitkTrackingDeviceConfigurationWidget::ConstructTrackingDevice() { mitk::TrackingDevice::Pointer returnValue; //#### Step 1: configure tracking device: if (m_Controls->m_trackingDeviceChooser->currentIndex()==0)//NDI Polaris { if(m_Controls->m_radioPolaris5D->isChecked()) //5D Tracking { //not yet in the open source part so we'll only get NULL here. returnValue = ConfigureNDI5DTrackingDevice(); } else //6D Tracking { returnValue = ConfigureNDI6DTrackingDevice(); returnValue->SetType(mitk::NDIPolaris); } } else if (m_Controls->m_trackingDeviceChooser->currentIndex()==1)//NDI Aurora { returnValue = ConfigureNDI6DTrackingDevice(); returnValue->SetType(mitk::NDIAurora); } else if (m_Controls->m_trackingDeviceChooser->currentIndex()==2)//ClaronTechnology MicronTracker 2 { returnValue = mitk::ClaronTrackingDevice::New(); } return returnValue; } mitk::TrackingDevice::Pointer QmitkTrackingDeviceConfigurationWidget::ConfigureNDI5DTrackingDevice() { return NULL; } mitk::TrackingDevice::Pointer QmitkTrackingDeviceConfigurationWidget::ConfigureNDI6DTrackingDevice() { mitk::NDITrackingDevice::Pointer tempTrackingDevice = mitk::NDITrackingDevice::New(); //build prefix (depends on linux/win) QString prefix = ""; #ifdef WIN32 prefix ="COM"; #else if (m_Controls->m_trackingDeviceChooser->currentIndex()==1) //Aurora prefix = m_Controls->portTypeAurora->currentText(); else //Polaris prefix = m_Controls->portTypePolaris->currentText(); #endif //get port int port = 0; if (m_Controls->m_trackingDeviceChooser->currentIndex()==1) port = m_Controls->m_portSpinBoxAurora->value(); else port = m_Controls->m_portSpinBoxPolaris->value(); //build port name string QString portName = prefix + QString::number(port); tempTrackingDevice->SetDeviceName(portName.toStdString()); //set the port name mitk::TrackingDevice::Pointer returnValue = static_cast(tempTrackingDevice); return returnValue; } mitk::TrackingDevice::Pointer QmitkTrackingDeviceConfigurationWidget::GetTrackingDevice() { if (!m_AdvancedUserControl) m_TrackingDevice = ConstructTrackingDevice(); return this->m_TrackingDevice; } bool QmitkTrackingDeviceConfigurationWidget::GetTrackingDeviceConfigured() { return this->m_TrackingDeviceConfigurated; } void QmitkTrackingDeviceConfigurationWidget::ConfigurationFinished() { Finished(); } void QmitkTrackingDeviceConfigurationWidget::EnableAdvancedUserControl(bool enable) { m_AdvancedUserControl = enable; m_Controls->configuration_finished_label->setVisible(enable); m_Controls->m_finishedLine->setVisible(enable); m_Controls->m_resetButton->setVisible(enable); m_Controls->m_finishedButton->setVisible(enable); } diff --git a/Modules/IGTUI/Qmitk/QmitkTrackingDeviceConfigurationWidget.h b/Modules/IGTUI/Qmitk/QmitkTrackingDeviceConfigurationWidget.h index cb59a36cd4..346fdcc27f 100644 --- a/Modules/IGTUI/Qmitk/QmitkTrackingDeviceConfigurationWidget.h +++ b/Modules/IGTUI/Qmitk/QmitkTrackingDeviceConfigurationWidget.h @@ -1,168 +1,168 @@ /*========================================================================= Program: Medical Imaging & Interaction Toolkit Language: C++ Date: $Date: 2009-05-12 19:14:45 +0200 (Di, 12 Mai 2009) $ Version: $Revision: 1.12 $ Copyright (c) German Cancer Research Center, Division of Medical and Biological Informatics. All rights reserved. See MITKCopyright.txt or http://www.mitk.org/copyright.html for details. This software is distributed WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the above copyright notices for more information. =========================================================================*/ #ifndef QMITKTRACKINGDEVICECONFIGURATIONWIDGET_H #define QMITKTRACKINGDEVICECONFIGURATIONWIDGET_H #include #include "MitkIGTUIExports.h" #include "ui_QmitkTrackingDeviceConfigurationWidgetControls.h" #include "mitkTrackingDevice.h" //itk headers /** Documentation: * \brief An object of this class offers an UI to configurate * a tracking device. If the user finished the configuration process and * a fully configurated tracking device is availiabe the object emits a * signal "TrackingDeviceConfigurationFinished()". You can then get the * tracking device by calling the method GetTrackingDevice(). * * Once the tracking device is configurated there are two ways to reset * the UI to allow the user for configuring a new device. The method Reset() * can be called and there is also a button "reset" which can be pressed by * the user. In both cases a signal "TrackingDeviceConfigurationReseted()" * is emitted and you may wait for a new configurated tracking device. * * The possibility to reset the configuration by the user can also be switched * of by calling the method EnableUserReset(boolean enable). * * \ingroup IGTUI */ class MitkIGTUI_EXPORT QmitkTrackingDeviceConfigurationWidget : public QWidget { Q_OBJECT public: static const std::string VIEW_ID; QmitkTrackingDeviceConfigurationWidget(QWidget* parent = 0, Qt::WindowFlags f = 0); ~QmitkTrackingDeviceConfigurationWidget(); /* @return Returns the current configurated tracking device. If the user didn't finished the * configuration process NULL is returned. */ mitk::TrackingDevice::Pointer GetTrackingDevice(); enum Style { SIMPLE, ADVANCED, }; /* @brief Resets the UI to allow the user for configurating a new tracking device. */ void Reset(); /** @brief External call to disable this widget when configuration is finished. This is also called by the "finished" button, * but if you disable the advanced user control you might want to call this when the configuration is finished. * If you want to configure a new device call the Reset() funktion later. */ void ConfigurationFinished(); /* @brief Sets our unsets the possibility to reset the UI and start * a new configuration by the user. Concretely this means the * button "reset" is shown or not. */ void EnableUserReset(bool enable); /** @return Returns true if the tracking device is completely configured (you can get it by calling GetTrackingDevice() in this case). * Returns false if configuration is not finished. */ bool GetTrackingDeviceConfigured(); /** @brief Sets the style of this widget. Default is ADVANCED. Caution: The style can only be set once at startup! */ - void SetStyle(Style style); + void SetGUIStyle(Style style); /** @brief Enables/disables the advanced user controls which means the reset and finished button. When disabled you'll get NO * signals from this widget and you've to check by yourself if the configuration is finished. Default value is false. * Advanced user control is only availiable when style is ADVANCED. */ void EnableAdvancedUserControl(bool enable); signals: /* @brief This signal is sent if the user has finished the configuration of the tracking device. * The device is now availiable if the method GetTrackingDevice() is called. The tracking * device you'll get is completly configurated but no tools are added yet. */ void TrackingDeviceConfigurationFinished(); /* @brief This signal is sent if the UI was reseted and the user is required to configurate * a new tracking device. */ void TrackingDeviceConfigurationReseted(); protected: /// \brief Creation of the connections virtual void CreateConnections(); virtual void CreateQtPartControl(QWidget *parent); Ui::QmitkTrackingDeviceConfigurationWidgetControls* m_Controls; std::stringstream m_output; mitk::TrackingDevice::Pointer m_TrackingDevice; bool m_TrackingDeviceConfigurated; bool m_AdvancedUserControl; //######################### internal help methods ####################################### void ResetOutput(); void AddOutput(std::string s); mitk::TrackingDevice::Pointer ConstructTrackingDevice(); protected slots: /* @brief This method is called when the user changes the selection of the trackingdevice (m_trackingDeviceChooser). It then sets the correct widget for the selected tracking device.*/ void TrackingDeviceChanged(); /* @brief This method is called when the user presses the button "test connection". The method will then create a temporary tracking device, * try to open a connection and start tracking. The user can see the result of the connection test on the small output window. */ void TestConnection(); /* @brief This method is called when the user presses the button "finished". A new tracking device will be created in this case and will then * then be availiable by calling GetTrackingDevice(). Also a signal TrackingDeviceConfigurationFinished() will be emitted. After this the * UI will be disablet until the widget is reseted to configure a new tracking device. */ void Finished(); /* @brief This method is called when the user presses the button "reset". He can configure a new tracking device then. The signal * TrackingDeviceConfigurationReseted() will be emitted if this method is called. The method GetTrackingDevice() will return * NULL until a new tracking device is configured. */ void ResetByUser(); /* @return Returns a configured NDI 5D tracking device. Unfortunately the NDI 5D tracking device is not yet in the open source part * so this method only returns NULL at the moment. */ virtual mitk::TrackingDevice::Pointer ConfigureNDI5DTrackingDevice(); /* @return Returns a configured NDI 6D tracking device. * The type (which means Aurora/Polaris) will not be set in the returnvalue. You have to this later. */ mitk::TrackingDevice::Pointer ConfigureNDI6DTrackingDevice(); }; #endif \ No newline at end of file diff --git a/Modules/IGTUI/Qmitk/QmitkTrackingDeviceConfigurationWidgetControls.ui b/Modules/IGTUI/Qmitk/QmitkTrackingDeviceConfigurationWidgetControls.ui index 2d6099e654..cc665bdcad 100644 --- a/Modules/IGTUI/Qmitk/QmitkTrackingDeviceConfigurationWidgetControls.ui +++ b/Modules/IGTUI/Qmitk/QmitkTrackingDeviceConfigurationWidgetControls.ui @@ -1,666 +1,739 @@ QmitkTrackingDeviceConfigurationWidgetControls 0 0 358 - 363 + 784 Form - + - - - - 16777215 - 0 - - - - QFrame::StyledPanel - - - QFrame::Raised - - - - - - - - QFrame::StyledPanel + + + 0 - - QFrame::Raised - - - - - - - - <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0//EN" "http://www.w3.org/TR/REC-html40/strict.dtd"> + + + + + + + + + + <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0//EN" "http://www.w3.org/TR/REC-html40/strict.dtd"> <html><head><meta name="qrichtext" content="1" /><style type="text/css"> p, li { white-space: pre-wrap; } </style></head><body style=" font-family:'MS Shell Dlg 2'; font-size:8.25pt; font-weight:400; font-style:normal;"> <p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-size:14pt; font-weight:600;">Tracking Device Configuration</span></p></body></html> - - - - - - - - - - - Qt::Horizontal - - - - 128 - 20 - - - - - - - - Choose tracking device: - - - - - - - - Polaris (NDI) - - - - - Aurora (NDI) + + + + + + + + + + + Qt::Horizontal + + + + 128 + 20 + + + + + + + + Choose tracking device: + + + + + + + + 0 + 0 + + + + + Polaris + + + + + Aurora + + + + + MicronTracker + + + + + + + + + + Qt::Horizontal - - - - MicronTracker (Claron Technology) + + + + + + 0 - - - - - - - - - Qt::Horizontal - - - - - - - 0 - - - - - - - - - <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0//EN" "http://www.w3.org/TR/REC-html40/strict.dtd"> + + + + + + + + + + <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0//EN" "http://www.w3.org/TR/REC-html40/strict.dtd"> <html><head><meta name="qrichtext" content="1" /><style type="text/css"> p, li { white-space: pre-wrap; } </style></head><body style=" font-family:'MS Shell Dlg 2'; font-size:8.25pt; font-weight:400; font-style:normal;"> <p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-size:12pt; text-decoration: underline;">Polaris</span></p></body></html> - - - - - - - - - - - - - - - Com Port: - - - - - - - - - - COM - - - - - - - Qt::Horizontal - - - - 40 - 20 - - - - - - - - - - - - Port Type: - - - - - - + + + + + + + + + - /dev/ttyUSB + Com Port: - - + + + + + + + + + COM + + + + + + + Qt::Horizontal + + + + 40 + 20 + + + + + + + + + + - /dev/ttyS + Port Type: - - - - - - - Qt::Horizontal - - - - 40 - 20 - - - - - - - - - - Tracking Mode - - + + - + - - - false - - - 5D Tracking - - - false - - + + /dev/ttyUSB + - - - 6D Tracking - - - true - - + + /dev/ttyS + - + + + + + + Qt::Horizontal + + + + 40 + 20 + + + - - - - - - Qt::Vertical - - - QSizePolicy::Expanding - - - - 158 - 17 - - - - - - - - - - - - - - - - 120 - 80 - - - - - 120 - 80 - - - - - 120 - 0 - - - - <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0//EN" "http://www.w3.org/TR/REC-html40/strict.dtd"> + + + + + + 0 + 0 + + + + Tracking Mode + + + + + + false + + + 5D + + + false + + + + + + + 6D + + + true + + + + + + + Qt::Horizontal + + + + 62 + 20 + + + + + + + + + + + Qt::Vertical + + + QSizePolicy::Expanding + + + + 158 + 17 + + + + + + + + + + + + + + + + 120 + 80 + + + + + 120 + 80 + + + + + 120 + 0 + + + + <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0//EN" "http://www.w3.org/TR/REC-html40/strict.dtd"> <html><head><meta name="qrichtext" content="1" /><style type="text/css"> p, li { white-space: pre-wrap; } </style></head><body style=" font-family:'MS Shell Dlg 2'; font-size:8.25pt; font-weight:400; font-style:normal;" bgcolor="#000000"> <p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-size:7pt; text-decoration: underline; color:#ffffff;">output:</span></p> <p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-size:7pt; color:#ffffff;">NDI Polaris selected</span></p></body></html> - - - Qt::NoTextInteraction - - - - - - - - 120 - 0 - - - - - 120 - 16777215 - - - - Test Connection - - - - - - - - - - - - - - - - - <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0//EN" "http://www.w3.org/TR/REC-html40/strict.dtd"> + + + Qt::NoTextInteraction + + + + + + + + 120 + 0 + + + + + 120 + 16777215 + + + + Test Connection + + + + + + + + + + + + + + + <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0//EN" "http://www.w3.org/TR/REC-html40/strict.dtd"> <html><head><meta name="qrichtext" content="1" /><style type="text/css"> p, li { white-space: pre-wrap; } </style></head><body style=" font-family:'MS Shell Dlg 2'; font-size:8.25pt; font-weight:400; font-style:normal;"> <p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-size:12pt; text-decoration: underline;">Aurora</span></p></body></html> - - - - - - - - - - - - - - - Com Port: - - - - - - - COM - - - - - - - Qt::Horizontal - - - - 40 - 20 - - - - - - - - - - - - Port Type: - - - - - - - - /dev/ttyUSB + + + + + + + + + + + + + + + Com Port: + + + + + + + COM + + + + + + + Qt::Horizontal + + + + 40 + 20 + + + + + + + + + + + + Port Type: + + + + + + + + /dev/ttyUSB + + + + + /dev/ttyS + + + + + + + + Qt::Horizontal + + + + 40 + 20 + + + + + + + + + + Qt::Vertical - - - - /dev/ttyS + + + 20 + 40 + - - - - - - - Qt::Horizontal - - - - 40 - 20 - - - - - - - - - - Qt::Vertical - - - - 20 - 40 - - - - - - - - - - - - - 120 - 80 - - - - - 120 - 80 - - - - <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0//EN" "http://www.w3.org/TR/REC-html40/strict.dtd"> + + + + + + + + + + + 120 + 80 + + + + + 120 + 80 + + + + <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0//EN" "http://www.w3.org/TR/REC-html40/strict.dtd"> <html><head><meta name="qrichtext" content="1" /><style type="text/css"> p, li { white-space: pre-wrap; } </style></head><body style=" font-family:'MS Shell Dlg 2'; font-size:8.25pt; font-weight:400; font-style:normal;" bgcolor="#000000"> <p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-size:8pt; text-decoration: underline; color:#ffffff;">output:</span></p></body></html> - - - Qt::NoTextInteraction - - - - - - - - 120 - 0 - - - - - 120 - 16777215 - - - - test connection - - - - - - - - - - - - - - - - - <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0//EN" "http://www.w3.org/TR/REC-html40/strict.dtd"> + + + Qt::NoTextInteraction + + + + + + + + 120 + 0 + + + + + 120 + 16777215 + + + + test connection + + + + + + + + + + + + + + + + + <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0//EN" "http://www.w3.org/TR/REC-html40/strict.dtd"> <html><head><meta name="qrichtext" content="1" /><style type="text/css"> p, li { white-space: pre-wrap; } </style></head><body style=" font-family:'MS Shell Dlg 2'; font-size:8.25pt; font-weight:400; font-style:normal;"> <p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-size:12pt; text-decoration: underline;">MicronTracker</span></p></body></html> - - - - - - - - - - - - - Qt::Horizontal - - - - 40 - 20 - - - - - - - - Qt::Vertical - - - - 20 - 40 - - - - - - - - - - - - - 120 - 80 - - - - - 120 - 80 - - - - - 120 - 0 - - - - <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0//EN" "http://www.w3.org/TR/REC-html40/strict.dtd"> + + + + + + + + + + + + + Qt::Horizontal + + + + 40 + 20 + + + + + + + + Qt::Vertical + + + + 20 + 40 + + + + + + + + + + + + + 120 + 80 + + + + + 120 + 80 + + + + + 120 + 0 + + + + <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0//EN" "http://www.w3.org/TR/REC-html40/strict.dtd"> <html><head><meta name="qrichtext" content="1" /><style type="text/css"> p, li { white-space: pre-wrap; } </style></head><body style=" font-family:'MS Shell Dlg 2'; font-size:8.25pt; font-weight:400; font-style:normal;" bgcolor="#000000"> <p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-size:8pt; text-decoration: underline; color:#ffffff;">output:</span></p></body></html> - - - Qt::NoTextInteraction - - - - - - - - 120 - 0 - - - - - 120 - 16777215 - - - - - 120 - 0 - - - - test connection - - - - - - - - - - - - - - - <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0//EN" "http://www.w3.org/TR/REC-html40/strict.dtd"> + + + Qt::NoTextInteraction + + + + + + + + 120 + 0 + + + + + 120 + 16777215 + + + + + 120 + 0 + + + + test connection + + + + + + + + + + + + + + + <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0//EN" "http://www.w3.org/TR/REC-html40/strict.dtd"> <html><head><meta name="qrichtext" content="1" /><style type="text/css"> p, li { white-space: pre-wrap; } </style></head><body style=" font-family:'MS Shell Dlg 2'; font-size:8.25pt; font-weight:400; font-style:normal;"> <p align="right" style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px; font-size:8pt;"><span style=" font-weight:600;">Press "Finished" to confirm configuration</span></p></body></html> - - - - - - - Qt::Vertical - - - - 20 - 14 - - - - - - - - Qt::Horizontal - - - - - - - - - Qt::Horizontal - - - - 40 - 20 - - - - - - - - Reset - - - - - - - Finished + + + + + + + Qt::Vertical + + + + 20 + 14 + + + + + + + + Qt::Horizontal + + + + + + + + + Qt::Horizontal + + + + 40 + 20 + + + + + + + + Reset + + + + + + + Finished + + + + + + + + + + + + + + + + + + Qt::Vertical + + + + 20 + 289 + + + + + + + + + + + + true + + + + + 0 + 0 + 320 + 298 + + + + + + + + + Qt::Vertical + + + + 20 + 269 + + + + + - - - - + + + + + + + + + + + 16777215 + 0 + + +