UI: Add hotkeys page in settings dialog

This commit is contained in:
Palana
2015-05-11 20:45:27 +02:00
parent 369d95dfc3
commit d28e80ae39
6 changed files with 406 additions and 1 deletions
+14 -1
View File
@@ -31,6 +31,7 @@ class OBSBasic;
class QAbstractButton;
class QComboBox;
class OBSPropertiesView;
class OBSHotkeyWidget;
#include "ui_OBSBasicSettings.h"
@@ -58,11 +59,13 @@ private:
OBSBasic *main;
std::unique_ptr<Ui::OBSBasicSettings> ui;
bool generalChanged = false;
bool stream1Changed = false;
bool outputsChanged = false;
bool audioChanged = false;
bool videoChanged = false;
bool hotkeysChanged = false;
bool advancedChanged = false;
int pageIndex = 0;
bool loading = true;
@@ -74,6 +77,10 @@ private:
OBSPropertiesView *streamEncoderProps = nullptr;
OBSPropertiesView *recordEncoderProps = nullptr;
std::vector<std::pair<bool, QPointer<OBSHotkeyWidget>>> hotkeys;
OBSSignal hotkeyRegistered;
OBSSignal hotkeyUnregistered;
void SaveCombo(QComboBox *widget, const char *section,
const char *value);
void SaveComboData(QComboBox *widget, const char *section,
@@ -91,7 +98,8 @@ private:
inline bool Changed() const
{
return generalChanged || outputsChanged || stream1Changed ||
audioChanged || videoChanged || advancedChanged;
audioChanged || videoChanged || advancedChanged ||
hotkeysChanged;
}
inline void EnableApplyButton(bool en)
@@ -106,6 +114,7 @@ private:
outputsChanged = false;
audioChanged = false;
videoChanged = false;
hotkeysChanged = false;
advancedChanged= false;
EnableApplyButton(false);
}
@@ -125,6 +134,7 @@ private:
void LoadOutputSettings();
void LoadAudioSettings();
void LoadVideoSettings();
void LoadHotkeySettings(obs_hotkey_id ignoreKey=OBS_INVALID_HOTKEY_ID);
void LoadAdvancedSettings();
void LoadSettings(bool changedOnly);
@@ -165,6 +175,7 @@ private:
void SaveOutputSettings();
void SaveAudioSettings();
void SaveVideoSettings();
void SaveHotkeySettings();
void SaveAdvancedSettings();
void SaveSettings();
@@ -199,6 +210,8 @@ private slots:
void VideoChanged();
void VideoChangedResolution();
void VideoChangedRestart();
void HotkeysChanged();
void ReloadHotkeys(obs_hotkey_id ignoreKey=OBS_INVALID_HOTKEY_ID);
void AdvancedChanged();
void AdvancedChangedRestart();