mirror of
https://github.com/obsproject/obs-studio.git
synced 2026-09-24 23:31:36 +08:00
UI: Separate controls dock from the main window
This commit is contained in:
@@ -0,0 +1,72 @@
|
||||
#pragma once
|
||||
|
||||
#include <memory>
|
||||
|
||||
#include <QFrame>
|
||||
#include <QPointer>
|
||||
#include <QScopedPointer>
|
||||
|
||||
class OBSBasic;
|
||||
|
||||
#include "ui_OBSBasicControls.h"
|
||||
|
||||
class OBSBasicControls : public QFrame {
|
||||
Q_OBJECT
|
||||
|
||||
std::unique_ptr<Ui::OBSBasicControls> ui;
|
||||
|
||||
QScopedPointer<QMenu> streamButtonMenu;
|
||||
QPointer<QAction> startStreamAction;
|
||||
QPointer<QAction> stopStreamAction;
|
||||
|
||||
private slots:
|
||||
void StreamingPreparing();
|
||||
void StreamingStarting(bool broadcastAutoStart);
|
||||
void StreamingStarted(bool withDelay);
|
||||
void StreamingStopping();
|
||||
void StreamingStopped(bool withDelay);
|
||||
|
||||
void BroadcastStreamReady(bool ready);
|
||||
void BroadcastStreamActive();
|
||||
void BroadcastStreamStarted(bool autoStop);
|
||||
|
||||
void RecordingStarted(bool pausable);
|
||||
void RecordingPaused();
|
||||
void RecordingUnpaused();
|
||||
void RecordingStopping();
|
||||
void RecordingStopped();
|
||||
|
||||
void ReplayBufferStarted();
|
||||
void ReplayBufferStopping();
|
||||
void ReplayBufferStopped();
|
||||
|
||||
void VirtualCamStarted();
|
||||
void VirtualCamStopped();
|
||||
|
||||
void UpdateStudioModeState(bool enabled);
|
||||
|
||||
void EnableBroadcastFlow(bool enabled);
|
||||
void EnableReplayBufferButtons(bool enabled);
|
||||
void EnableVirtualCamButtons();
|
||||
|
||||
public:
|
||||
OBSBasicControls(OBSBasic *main);
|
||||
inline ~OBSBasicControls() {}
|
||||
|
||||
signals:
|
||||
void StreamButtonClicked();
|
||||
void BroadcastButtonClicked();
|
||||
void RecordButtonClicked();
|
||||
void PauseRecordButtonClicked();
|
||||
void ReplayBufferButtonClicked();
|
||||
void SaveReplayBufferButtonClicked();
|
||||
void VirtualCamButtonClicked();
|
||||
void VirtualCamConfigButtonClicked();
|
||||
void StudioModeButtonClicked();
|
||||
void SettingsButtonClicked();
|
||||
void ExitButtonClicked();
|
||||
|
||||
void StartStreamMenuActionClicked();
|
||||
void StopStreamMenuActionClicked();
|
||||
void ForceStopStreamMenuActionClicked();
|
||||
};
|
||||
Reference in New Issue
Block a user