Add 'capture frame immediately' button

* This should be more obvious especially on e.g. android where there's no
  overlay and key shortcut.
This commit is contained in:
baldurk
2018-08-06 11:29:04 +01:00
parent 889904e155
commit 7d55ecbc48
3 changed files with 36 additions and 20 deletions
+19 -11
View File
@@ -119,7 +119,8 @@ LiveCapture::LiveCapture(ICaptureContext &ctx, const QString &hostname, const QS
ui->apiIcon->setVisible(false);
ui->triggerCapture->setEnabled(false);
ui->triggerDelayedCapture->setEnabled(false);
ui->triggerImmediateCapture->setEnabled(false);
ui->queueCap->setEnabled(false);
ui->target->setText(QString());
@@ -275,19 +276,24 @@ void LiveCapture::on_queueCap_clicked()
m_QueueCapture = true;
}
void LiveCapture::on_triggerCapture_clicked()
void LiveCapture::on_triggerImmediateCapture_clicked()
{
m_TriggerCapture = true;
m_CaptureNumFrames = (int)ui->numFrames->value();
}
void LiveCapture::on_triggerDelayedCapture_clicked()
{
if(ui->captureDelay->value() == 0.0)
{
m_TriggerCapture = true;
m_CaptureNumFrames = (int)ui->numFrames->value();
on_triggerImmediateCapture_clicked();
}
else
{
m_CaptureCounter = (int)ui->captureDelay->value();
countdownTimer.start();
ui->triggerCapture->setEnabled(false);
ui->triggerCapture->setText(tr("Triggering in %1s").arg(m_CaptureCounter));
ui->triggerDelayedCapture->setEnabled(false);
ui->triggerDelayedCapture->setText(tr("Triggering in %1s").arg(m_CaptureCounter));
}
}
@@ -479,13 +485,13 @@ void LiveCapture::captureCountdownTick()
{
m_TriggerCapture = true;
m_CaptureNumFrames = (int)ui->numFrames->value();
ui->triggerCapture->setEnabled(true);
ui->triggerCapture->setText(tr("Trigger After Delay"));
ui->triggerDelayedCapture->setEnabled(true);
ui->triggerDelayedCapture->setText(tr("Trigger After Delay"));
}
else
{
countdownTimer.start();
ui->triggerCapture->setText(tr("Triggering in %1s").arg(m_CaptureCounter));
ui->triggerDelayedCapture->setText(tr("Triggering in %1s").arg(m_CaptureCounter));
}
}
@@ -1146,7 +1152,8 @@ void LiveCapture::connectionThreadEntry()
if(presenting && supported)
{
ui->triggerCapture->setEnabled(true);
ui->triggerImmediateCapture->setEnabled(true);
ui->triggerDelayedCapture->setEnabled(true);
ui->queueCap->setEnabled(true);
}
@@ -1225,7 +1232,8 @@ void LiveCapture::connectionThreadEntry()
ui->numFrames->setEnabled(false);
ui->captureDelay->setEnabled(false);
ui->captureFrame->setEnabled(false);
ui->triggerCapture->setEnabled(false);
ui->triggerDelayedCapture->setEnabled(false);
ui->triggerImmediateCapture->setEnabled(false);
ui->queueCap->setEnabled(false);
ui->apiStatus->setText(tr("None"));
+2 -1
View File
@@ -69,7 +69,8 @@ private slots:
void on_captures_mouseClicked(QMouseEvent *e);
void on_captures_itemActivated(QListWidgetItem *item);
void on_childProcesses_itemActivated(QListWidgetItem *item);
void on_triggerCapture_clicked();
void on_triggerImmediateCapture_clicked();
void on_triggerDelayedCapture_clicked();
void on_queueCap_clicked();
void on_previewSplit_splitterMoved(int pos, int index);
void on_apiIcon_clicked(QMouseEvent *event);
+15 -8
View File
@@ -190,7 +190,7 @@
<string>Tools</string>
</property>
<layout class="QGridLayout" name="gridLayout_3">
<item row="1" column="0">
<item row="2" column="1">
<widget class="QDoubleSpinBox" name="captureDelay">
<property name="baseSize">
<size>
@@ -212,7 +212,7 @@
</property>
</widget>
</item>
<item row="2" column="0">
<item row="3" column="1">
<widget class="QDoubleSpinBox" name="captureFrame">
<property name="prefix">
<string>Frame </string>
@@ -225,17 +225,17 @@
</property>
</widget>
</item>
<item row="1" column="1">
<widget class="QPushButton" name="triggerCapture">
<item row="2" column="0">
<widget class="QPushButton" name="triggerDelayedCapture">
<property name="text">
<string>Trigger After Delay</string>
<string>Capture After Delay:</string>
</property>
</widget>
</item>
<item row="2" column="1">
<item row="3" column="0">
<widget class="QPushButton" name="queueCap">
<property name="text">
<string>Queue Specific Frame</string>
<string>Capture Specific Frame(s):</string>
</property>
</widget>
</item>
@@ -267,7 +267,7 @@
</property>
</widget>
</item>
<item row="3" column="0" colspan="2">
<item row="4" column="0" colspan="2">
<spacer name="verticalSpacer">
<property name="orientation">
<enum>Qt::Vertical</enum>
@@ -280,6 +280,13 @@
</property>
</spacer>
</item>
<item row="1" column="0" colspan="2">
<widget class="QPushButton" name="triggerImmediateCapture">
<property name="text">
<string>Capture Frame(s) Immediately</string>
</property>
</widget>
</item>
</layout>
</widget>
</item>