mirror of
https://github.com/obsproject/obs-studio.git
synced 2026-06-25 08:09:53 -04:00
Frontend plugins should not require being placed in the frontend directory to be built successfully. Indeed they should only depend on libobs and the obs-frontend-api and thus their source tree should be able to exist anywhere (even standalone) and the plugin should still compile successfully (just like any 3rd party plugin). Thus moving those plugins into the main plugin directory ensures that they don't require on any "special sauce" within the source tree to compile.
45 lines
893 B
C++
45 lines
893 B
C++
#pragma once
|
|
|
|
#include <QDialog>
|
|
#include <memory>
|
|
|
|
#include "ui_output-timer.h"
|
|
|
|
class QCloseEvent;
|
|
|
|
class OutputTimer : public QDialog {
|
|
Q_OBJECT
|
|
|
|
public:
|
|
std::unique_ptr<Ui_OutputTimer> ui;
|
|
OutputTimer(QWidget *parent);
|
|
|
|
void closeEvent(QCloseEvent *event) override;
|
|
void PauseRecordingTimer();
|
|
void UnpauseRecordingTimer();
|
|
|
|
public slots:
|
|
void StreamingTimerButton();
|
|
void RecordingTimerButton();
|
|
void StreamTimerStart();
|
|
void RecordTimerStart();
|
|
void StreamTimerStop();
|
|
void RecordTimerStop();
|
|
void UpdateStreamTimerDisplay();
|
|
void UpdateRecordTimerDisplay();
|
|
void ShowHideDialog();
|
|
void EventStopStreaming();
|
|
void EventStopRecording();
|
|
|
|
private:
|
|
bool streamingAlreadyActive = false;
|
|
bool recordingAlreadyActive = false;
|
|
|
|
QTimer *streamingTimer;
|
|
QTimer *recordingTimer;
|
|
QTimer *streamingTimerDisplay;
|
|
QTimer *recordingTimerDisplay;
|
|
|
|
int recordingTimeLeft = -1;
|
|
};
|