diff --git a/obs/forms/OBSBasic.ui b/obs/forms/OBSBasic.ui index 7f4d29fb9..20227cc6d 100644 --- a/obs/forms/OBSBasic.ui +++ b/obs/forms/OBSBasic.ui @@ -166,8 +166,8 @@ - - + + @@ -236,8 +236,8 @@ - - + + @@ -438,7 +438,7 @@ SourceProperties - + :/res/images/up.ico:/res/images/up.ico @@ -447,7 +447,7 @@ SceneMoveUp - + :/res/images/up.ico:/res/images/up.ico @@ -456,7 +456,7 @@ SourceMoveUp - + :/res/images/down.ico:/res/images/down.ico @@ -465,7 +465,7 @@ SceneMoveDown - + :/res/images/down.ico:/res/images/down.ico diff --git a/obs/forms/OBSBasicSettings.ui b/obs/forms/OBSBasicSettings.ui index 6cb512c65..593cd67a5 100644 --- a/obs/forms/OBSBasicSettings.ui +++ b/obs/forms/OBSBasicSettings.ui @@ -170,7 +170,7 @@ - Aux Audio Device 1: + Mic/Aux Audio Device 1: @@ -184,7 +184,7 @@ - Aux Audio Device 2: + Mic/Aux Audio Device 2: @@ -198,7 +198,7 @@ - Aux Audio Device 3: + Mic/Aux Audio Device 3: @@ -224,7 +224,7 @@ - + @@ -247,7 +247,10 @@ - + + + false + @@ -261,7 +264,7 @@ - + true @@ -284,7 +287,7 @@ - + true @@ -294,7 +297,11 @@ - + + + false + + @@ -304,7 +311,7 @@ - + 0 @@ -312,25 +319,33 @@ - Common FPS + FPS (Common) QComboBox::AdjustToContents - Common FPS + FPS (Common) - Fractional FPS (Advanced) + FPS (Integer) + + + + + FPS (Fractional) + + 0 + @@ -346,7 +361,75 @@ 0 - + + + 30 + + + + 10 + + + + + 20 + + + + + 29.97 + + + + + 30 + + + + + 48 + + + + + 59.94 + + + + + 60 + + + + + + + + + + 0 + + + 0 + + + 0 + + + 0 + + + + + 1 + + + 120 + + + 30 + + @@ -368,10 +451,27 @@ 0 - + + + 1 + + + 1000000 + + + 30 + + - + + + 1 + + + 1000000 + + @@ -432,7 +532,7 @@ - comboBox_6 + fpsType currentIndexChanged(int) stackedWidget setCurrentIndex(int) diff --git a/obs/window-basic-main.cpp b/obs/window-basic-main.cpp index 3ba3e0244..759610a34 100644 --- a/obs/window-basic-main.cpp +++ b/obs/window-basic-main.cpp @@ -20,7 +20,7 @@ #include #include "obs-app.hpp" -//#include "window-basic-settings.hpp" +#include "window-basic-settings.hpp" #include "window-namedialog.hpp" #include "window-basic-main.hpp" #include "qt-wrappers.hpp" @@ -521,4 +521,6 @@ void OBSBasic::on_actionSourceDown_triggered() void OBSBasic::on_settingsButton_clicked() { + OBSBasicSettings settings(this); + settings.exec(); } diff --git a/obs/window-basic-settings.cpp b/obs/window-basic-settings.cpp index 053327d22..411a294d3 100644 --- a/obs/window-basic-settings.cpp +++ b/obs/window-basic-settings.cpp @@ -15,86 +15,23 @@ along with this program. If not, see . ******************************************************************************/ -#include #include "window-basic-settings.hpp" -using namespace std; -OBSBasicSettings::OBSBasicSettings(wxWindow *parent) - : OBSBasicSettingsBase(parent) +OBSBasicSettings::OBSBasicSettings(QWidget *parent) + : QDialog (parent), + ui (new Ui::OBSBasicSettings) { - unique_ptr data(CreateBasicGeneralSettings(this)); - settings = move(data); + ui->setupUi(this); } -void OBSBasicSettings::PageChanged(wxListbookEvent &event) +void OBSBasicSettings::closeEvent(QCloseEvent *event) { - wxWindow *curPage = settingsList->GetCurrentPage(); - if (!curPage) - return; - - int id = curPage->GetId(); - - BasicSettingsData *ptr = NULL; - - switch (id) { - case ID_SETTINGS_GENERAL: - ptr = CreateBasicGeneralSettings(this); - break; - case ID_SETTINGS_VIDEO: - ptr = CreateBasicVideoSettings(this); - break; - } - - settings = move(unique_ptr(ptr)); } -bool OBSBasicSettings::ConfirmChanges() +void OBSBasicSettings::on_listWidget_currentRowChanged(int row) { - if (settings && settings->DataChanged()) { - int confirm = wxMessageBox(WXStr("Settings.Confirm"), - WXStr("Settings.ConfirmTitle"), - wxYES_NO | wxCANCEL); - - if (confirm == wxCANCEL) { - return false; - } else if (confirm == wxYES) { - settings->Apply(); - return true; - } - } - - return true; } -void OBSBasicSettings::PageChanging(wxListbookEvent &event) +void OBSBasicSettings::on_buttonBox_clicked(QAbstractButton *button) { - if (!ConfirmChanges()) - event.Veto(); -} - -void OBSBasicSettings::OnClose(wxCloseEvent &event) -{ - if (!ConfirmChanges()) - event.Veto(); - else - EndModal(0); -} - -void OBSBasicSettings::OKClicked(wxCommandEvent &event) -{ - if (settings && settings->DataChanged()) - settings->Apply(); - - EndModal(0); -} - -void OBSBasicSettings::CancelClicked(wxCommandEvent &event) -{ - EndModal(0); -} - -void OBSBasicSettings::ApplyClicked(wxCommandEvent &event) -{ - if (settings && settings->DataChanged()) - settings->Apply(); } diff --git a/obs/window-basic-settings.hpp b/obs/window-basic-settings.hpp index 9fcca8b29..2517a28e5 100644 --- a/obs/window-basic-settings.hpp +++ b/obs/window-basic-settings.hpp @@ -17,25 +17,26 @@ #pragma once -#include "forms/OBSWindows.h" -#include "settings-basic.hpp" - +#include #include -class OBSBasicSettings : public OBSBasicSettingsBase { +class QAbstractButton; + +#include "ui_OBSBasicSettings.h" + +class OBSBasicSettings : public QDialog { + Q_OBJECT + +private: + std::unique_ptr ui; + +private slots: + void on_listWidget_currentRowChanged(int row); + void on_buttonBox_clicked(QAbstractButton *button); + protected: - std::unique_ptr settings; - - virtual void PageChanged(wxListbookEvent &event); - virtual void PageChanging(wxListbookEvent &event); - virtual void OnClose(wxCloseEvent &event); - - bool ConfirmChanges(); - - virtual void OKClicked(wxCommandEvent &event); - virtual void CancelClicked(wxCommandEvent &event); - virtual void ApplyClicked(wxCommandEvent &event); + virtual void closeEvent(QCloseEvent *event); public: - OBSBasicSettings(wxWindow *parent); + OBSBasicSettings(QWidget *parent); };