39 qRegisterMetaType<CByteImage**>(
"CByteImage**");
47 QSizePolicy sizePoli(QSizePolicy::Expanding, QSizePolicy::Expanding);
48 sizePoli.setVerticalStretch(15);
49 imageViewer->setSizePolicy(sizePoli);
50 ui.imageViewerLayout->addWidget(imageViewer);
54 imageMonitorPropertiesWidget->hide();
57 imageMonitorStatisticsWidget->hide();
60 connect(ui.settingsButton, SIGNAL(clicked(
bool)),
this, SLOT(settingsButtonClicked(
bool)));
62 ui.statisticsButton, SIGNAL(clicked(
bool)),
this, SLOT(statisticsButtonClicked(
bool)));
63 connect(ui.snapshotButton, SIGNAL(clicked(
bool)),
this, SLOT(snapshotButtonClicked(
bool)));
64 connect(ui.playButton, SIGNAL(toggled(
bool)),
this, SLOT(playButtonToggled(
bool)));
65 connect(ui.cbBufferImages, SIGNAL(toggled(
bool)),
this, SLOT(bufferImagesToggled(
bool)));
66 connect(ui.sliderImageBuffer,
67 SIGNAL(valueChanged(
int)),
69 SLOT(sliderPositionChanged(
int)));
70 connect(ui.buttonShowBufferImages,
71 SIGNAL(toggled(
bool)),
73 SLOT(bufferImagesPaneChanged(
bool)));
75 connect(imageMonitorPropertiesWidget, SIGNAL(accepted()),
this, SLOT(propertiesAccepted()));
76 connect(imageMonitorStatisticsWidget, SIGNAL(accepted()),
this, SLOT(statisticsAccepted()));
78 ui.frameImageBuffer->hide();
83 ImageMonitorWidget::~ImageMonitorWidget()
85 delete imageMonitorPropertiesWidget;
89 ImageMonitorWidget::drawImages(
int numberImages,
99 for (
int i = 0; i < numberImages; ++i)
107 imageViewer->setImages(numberImages, images, imageTimestamp, receiveTimestamp);
111 ImageMonitorWidget::hideControlWidgets(
bool hide)
113 ui.controlWidgetsContainer->setVisible(!hide);
120 ImageMonitorWidget::settingsButtonClicked(
bool toggled)
123 imageMonitorPropertiesWidget->update(
controller->getProperties(),
127 imageMonitorPropertiesWidget->setModal(
true);
128 imageMonitorPropertiesWidget->show();
132 ImageMonitorWidget::statisticsButtonClicked(
bool toggled)
135 imageMonitorStatisticsWidget->update(
controller->getProperties().providerName,
140 imageMonitorStatisticsWidget->setModal(
true);
141 imageMonitorStatisticsWidget->show();
145 ImageMonitorWidget::propertiesAccepted()
148 controller->applyProperties(imageMonitorPropertiesWidget->getProperties());
150 ui.sliderImageBuffer->setMaximum(
151 imageMonitorPropertiesWidget->getProperties().imageBufferSize);
155 ImageMonitorWidget::statisticsAccepted()
160 ImageMonitorWidget::bufferImagesToggled(
bool toggled)
164 ui.sliderImageBuffer->setEnabled(toggled);
168 ImageMonitorWidget::sliderPositionChanged(
int pos)
170 if (ui.playButton->isChecked())
172 ui.playButton->setChecked(
false);
175 unsigned int realPos = 0;
177 auto imagesToShow =
controller->getProperties().imagesToShow;
179 ui.lblSliderPosition->setText(QString::number(realPos + 1) +
"/" +
180 QString::number(
controller->getBufferedImageCount()));
182 if (images.size() == 0)
187 std::vector<CByteImage*> selectedImages;
189 for (
unsigned int i = 0; i < images.size(); ++i)
191 if (imagesToShow.size() > 0 && imagesToShow.count(i) == 0)
195 if (!images[i].get())
201 selectedImages.push_back(images[i].get());
203 if (selectedImages.size() > 0)
210 ImageMonitorWidget::bufferImagesPaneChanged(
bool toggled)
214 ui.buttonShowBufferImages->setArrowType(Qt::DownArrow);
218 ui.buttonShowBufferImages->setArrowType(Qt::LeftArrow);
223 ImageMonitorWidget::getImageViewer()
const
229 ImageMonitorWidget::snapshotButtonClicked(
bool toggled)
235 ImageMonitorWidget::playButtonToggled(
bool playing)
238 ui.playButton->setChecked(playing);
242 ImageMonitorWidget::setConnected(
bool connected)
244 ui.playButton->setEnabled(connected);
245 ui.statisticsButton->setEnabled(connected);
246 ui.snapshotButton->setEnabled(connected);
247 ui.cbBufferImages->setEnabled(connected);
251 ui.sliderImageBuffer->setEnabled(
false);
253 playButtonToggled(connected);
257 ImageMonitorWidget::updateStatistics(
const QString& statisticsStr)
259 ui.imageViewerStats->setText(statisticsStr);