19static unsigned int DEFAULTUPDATEVALUE = 50;
21static unsigned int MINIMUMUPDATEVALUE = 10;
22static unsigned int MAXIMUMUPDATEVALUE = 1000;
23static unsigned int UPDATEVALUESTEP = 10;
26: QWidget(parent), m_Controls(nullptr)
28 this->m_UpdateTimer =
new QTimer(
this );
31 this->
m_Controls->m_StopNavigationBtn->setEnabled(
false );
32 this->SetupUpdateRateSB( MINIMUMUPDATEVALUE, MAXIMUMUPDATEVALUE, UPDATEVALUESTEP );
34 this->m_UpdateTimer->setInterval( DEFAULTUPDATEVALUE );
35 this->
m_Controls->m_UpdateRateSB->setValue( DEFAULTUPDATEVALUE );
42 m_UpdateTimer->stop();
43 m_UpdateTimer =
nullptr;
53 m_Controls =
new Ui::QmitkUpdateTimerWidgetControls;
69 return this->m_UpdateTimer->interval();
75 this->SetFrameRateLabel();
80 this->m_UpdateTimer->setInterval( msec );
81 this->
m_Controls->m_UpdateRateSB->setValue( msec );
86 if(!m_UpdateTimer->isActive())
88 this->m_UpdateTimer->start();
89 this->
m_Controls->m_StartNavigationBtn->setEnabled(
false );
90 this->
m_Controls->m_StopNavigationBtn->setEnabled(
true );
91 this->
m_Controls->m_NavigationStateLbl->setStyleSheet(
"QLabel{background-color: #96e066 }" );
92 this->
m_Controls->m_NavigationStateLbl->setText(
"Started ... " );
100 if(m_UpdateTimer->isActive())
102 m_UpdateTimer->stop();
103 this->
m_Controls->m_StopNavigationBtn->setEnabled(
false );
104 this->
m_Controls->m_StartNavigationBtn->setEnabled(
true );
105 this->
m_Controls->m_NavigationStateLbl->setStyleSheet(
"QLabel{background-color: #ffcccc }" );
106 this->
m_Controls->m_NavigationStateLbl->setText(
"Stopped ... " );
114 return this->m_UpdateTimer;
130 m_Controls->m_StartNavigationBtn->setText(
" Start " + text );
131 m_Controls->m_StopNavigationBtn->setText(
" Stop " + text );
135void QmitkUpdateTimerWidget::SetupUpdateRateSB(
int min,
int max,
int step )
137 this->
m_Controls->m_UpdateRateSB->setRange( min , max );
138 this->
m_Controls->m_UpdateRateSB->setSingleStep( step );
142void QmitkUpdateTimerWidget::SetFrameRateLabel()
145 QString frameRateString = QString::number( frameRate,
'g', 4 );
146 this->
m_Controls->m_FrameRateLbl->setText(
"msec (" + frameRateString +
" Hz)");
151 this->
m_Controls->m_UpdatesInMsecLbl->setVisible( !hidden );
152 this->
m_Controls->m_UpdateRateSB->setVisible ( !hidden );
153 this->
m_Controls->m_FrameRateLbl->setVisible ( !hidden );
159 this->setEnabled(
true );
165 this->setEnabled(
false );
175 m_Controls->m_StartNavigationBtn->setIcon(icon);