0
0
mirror of https://github.com/obsproject/obs-studio.git synced 2024-09-20 13:08:50 +02:00

frontend-tools: Add options to start output timers every time

Adds options to start output timers every time streaming or recording
has started.

Closes jp9000/obs-studio#668
This commit is contained in:
cg2121 2016-10-19 15:31:18 -05:00 committed by jp9000
parent ebd837d605
commit c6c58e55b3
3 changed files with 41 additions and 15 deletions

View File

@ -16,3 +16,5 @@ OutputTimer.Stream="Stop streaming after:"
OutputTimer.Record="Stop recording after:"
OutputTimer.Stream.StoppingIn="Streaming stopping in:"
OutputTimer.Record.StoppingIn="Recording stopping in:"
OutputTimer.Stream.EnableEverytime="Enable streaming timer every time"
OutputTimer.Record.EnableEverytime="Enable recording timer every time"

View File

@ -7,7 +7,7 @@
<x>0</x>
<y>0</y>
<width>600</width>
<height>150</height>
<height>200</height>
</rect>
</property>
<property name="windowTitle">
@ -85,28 +85,28 @@
</property>
</widget>
</item>
<item row="1" column="1">
<item row="2" column="1">
<widget class="QLabel" name="streamStoppingIn">
<property name="text">
<string>OutputTimer.Stream.StoppingIn</string>
</property>
</widget>
</item>
<item row="1" column="2">
<item row="2" column="2">
<widget class="QLabel" name="streamTime">
<property name="text">
<string>00:00:00</string>
</property>
</widget>
</item>
<item row="2" column="1">
<item row="3" column="1">
<widget class="QLabel" name="recordingLabel">
<property name="text">
<string>OutputTimer.Record</string>
</property>
</widget>
</item>
<item row="2" column="2">
<item row="3" column="2">
<widget class="QSpinBox" name="recordingTimerHours">
<property name="minimum">
<number>0</number>
@ -119,14 +119,14 @@
</property>
</widget>
</item>
<item row="2" column="3">
<item row="3" column="3">
<widget class="QLabel" name="hoursLabel_2">
<property name="text">
<string>Hours</string>
</property>
</widget>
</item>
<item row="2" column="4">
<item row="3" column="4">
<widget class="QSpinBox" name="recordingTimerMinutes">
<property name="minimum">
<number>0</number>
@ -139,14 +139,14 @@
</property>
</widget>
</item>
<item row="2" column="5">
<item row="3" column="5">
<widget class="QLabel" name="minutesLabel_2">
<property name="text">
<string>Minutes</string>
</property>
</widget>
</item>
<item row="2" column="6">
<item row="3" column="6">
<widget class="QSpinBox" name="recordingTimerSeconds">
<property name="minimum">
<number>0</number>
@ -159,34 +159,48 @@
</property>
</widget>
</item>
<item row="2" column="7">
<item row="3" column="7">
<widget class="QLabel" name="secondsLabel_2">
<property name="text">
<string>Seconds</string>
</property>
</widget>
</item>
<item row="2" column="8">
<item row="3" column="8">
<widget class="QPushButton" name="outputTimerRecord">
<property name="text">
<string>Start</string>
</property>
</widget>
</item>
<item row="3" column="1">
<item row="5" column="1">
<widget class="QLabel" name="recordStoppingIn">
<property name="text">
<string>OutputTimer.Record.StoppingIn</string>
</property>
</widget>
</item>
<item row="3" column="2">
<item row="5" column="2">
<widget class="QLabel" name="recordTime">
<property name="text">
<string>00:00:00</string>
</property>
</widget>
</item>
<item row="1" column="1" colspan="3">
<widget class="QCheckBox" name="autoStartStreamTimer">
<property name="text">
<string>OutputTimer.Stream.EnableEverytime</string>
</property>
</widget>
</item>
<item row="4" column="1" colspan="3">
<widget class="QCheckBox" name="autoStartRecordTimer">
<property name="text">
<string>OutputTimer.Record.EnableEverytime</string>
</property>
</widget>
</item>
</layout>
</widget>
<resources />

View File

@ -61,7 +61,7 @@ void OutputTimer::RecordingTimerButton()
void OutputTimer::StreamTimerStart()
{
if (!isVisible()) {
if (!isVisible() && ui->autoStartStreamTimer->isChecked() == false) {
streamingAlreadyActive = true;
return;
}
@ -95,7 +95,7 @@ void OutputTimer::StreamTimerStart()
void OutputTimer::RecordTimerStart()
{
if (!isVisible()) {
if (!isVisible() && ui->autoStartRecordTimer->isChecked() == false) {
recordingAlreadyActive = true;
return;
}
@ -229,6 +229,11 @@ static void SaveOutputTimer(obs_data_t *save_data, bool saving, void *)
obs_data_set_int(obj, "recordTimerSeconds",
ot->ui->recordingTimerSeconds->value());
obs_data_set_bool(obj, "autoStartStreamTimer",
ot->ui->autoStartStreamTimer->isChecked());
obs_data_set_bool(obj, "autoStartRecordTimer",
ot->ui->autoStartRecordTimer->isChecked());
obs_data_set_obj(save_data, "output-timer", obj);
obs_data_release(obj);
@ -253,6 +258,11 @@ static void SaveOutputTimer(obs_data_t *save_data, bool saving, void *)
ot->ui->recordingTimerSeconds->setValue(
obs_data_get_int(obj, "recordTimerSeconds"));
ot->ui->autoStartStreamTimer->setChecked(
obs_data_get_bool(obj, "autoStartStreamTimer"));
ot->ui->autoStartRecordTimer->setChecked(
obs_data_get_bool(obj, "autoStartRecordTimer"));
obs_data_release(obj);
}
}