mirror of
https://github.com/obsproject/obs-studio.git
synced 2024-09-20 21:13:04 +02:00
Merge pull request #666 from cg2121/output-timer-fix
frontend-tools: Add ability to start timer if output is already active
This commit is contained in:
commit
65da3fbaa2
@ -37,24 +37,32 @@ void OutputTimer::closeEvent(QCloseEvent*)
|
|||||||
|
|
||||||
void OutputTimer::StreamingTimerButton()
|
void OutputTimer::StreamingTimerButton()
|
||||||
{
|
{
|
||||||
if (obs_frontend_streaming_active())
|
if (!obs_frontend_streaming_active()) {
|
||||||
obs_frontend_streaming_stop();
|
|
||||||
else
|
|
||||||
obs_frontend_streaming_start();
|
obs_frontend_streaming_start();
|
||||||
|
} else if (streamingAlreadyActive) {
|
||||||
|
StreamTimerStart();
|
||||||
|
streamingAlreadyActive = false;
|
||||||
|
} else if (obs_frontend_streaming_active()) {
|
||||||
|
obs_frontend_streaming_stop();
|
||||||
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
void OutputTimer::RecordingTimerButton()
|
void OutputTimer::RecordingTimerButton()
|
||||||
{
|
{
|
||||||
if (obs_frontend_recording_active())
|
if (!obs_frontend_recording_active()) {
|
||||||
obs_frontend_recording_stop();
|
|
||||||
else
|
|
||||||
obs_frontend_recording_start();
|
obs_frontend_recording_start();
|
||||||
|
} else if (recordingAlreadyActive) {
|
||||||
|
RecordTimerStart();
|
||||||
|
recordingAlreadyActive = false;
|
||||||
|
} else if (obs_frontend_recording_active()) {
|
||||||
|
obs_frontend_recording_stop();
|
||||||
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
void OutputTimer::StreamTimerStart()
|
void OutputTimer::StreamTimerStart()
|
||||||
{
|
{
|
||||||
if (!isVisible()) {
|
if (!isVisible()) {
|
||||||
ui->outputTimerStream->setEnabled(false);
|
streamingAlreadyActive = true;
|
||||||
return;
|
return;
|
||||||
}
|
}
|
||||||
|
|
||||||
@ -88,7 +96,7 @@ void OutputTimer::StreamTimerStart()
|
|||||||
void OutputTimer::RecordTimerStart()
|
void OutputTimer::RecordTimerStart()
|
||||||
{
|
{
|
||||||
if (!isVisible()) {
|
if (!isVisible()) {
|
||||||
ui->outputTimerRecord->setEnabled(false);
|
recordingAlreadyActive = true;
|
||||||
return;
|
return;
|
||||||
}
|
}
|
||||||
|
|
||||||
@ -121,7 +129,7 @@ void OutputTimer::RecordTimerStart()
|
|||||||
|
|
||||||
void OutputTimer::StreamTimerStop()
|
void OutputTimer::StreamTimerStop()
|
||||||
{
|
{
|
||||||
ui->outputTimerStream->setEnabled(true);
|
streamingAlreadyActive = false;
|
||||||
|
|
||||||
if (!isVisible() && streamingTimer->isActive() == false)
|
if (!isVisible() && streamingTimer->isActive() == false)
|
||||||
return;
|
return;
|
||||||
@ -139,7 +147,7 @@ void OutputTimer::StreamTimerStop()
|
|||||||
|
|
||||||
void OutputTimer::RecordTimerStop()
|
void OutputTimer::RecordTimerStop()
|
||||||
{
|
{
|
||||||
ui->outputTimerRecord->setEnabled(true);
|
recordingAlreadyActive = false;
|
||||||
|
|
||||||
if (!isVisible() && recordingTimer->isActive() == false)
|
if (!isVisible() && recordingTimer->isActive() == false)
|
||||||
return;
|
return;
|
||||||
|
@ -30,6 +30,9 @@ public slots:
|
|||||||
void EventStopRecording();
|
void EventStopRecording();
|
||||||
|
|
||||||
private:
|
private:
|
||||||
|
bool streamingAlreadyActive = false;
|
||||||
|
bool recordingAlreadyActive = false;
|
||||||
|
|
||||||
QTimer *streamingTimer;
|
QTimer *streamingTimer;
|
||||||
QTimer *recordingTimer;
|
QTimer *recordingTimer;
|
||||||
QTimer *streamingTimerDisplay;
|
QTimer *streamingTimerDisplay;
|
||||||
|
Loading…
Reference in New Issue
Block a user