diff options
| author | Admiral H. Curtiss <pikachu025@gmail.com> | 2026-10-03 12:25:05 +0200 |
|---|---|---|
| committer | GitHub <noreply@github.com> | 2026-10-03 12:25:05 +0200 |
| commit | 562875dd60fd0ff50b65dbbb611a2096802cd1b9 (patch) | |
| tree | fecf6d0e25c38816da0cd5c8e36c83716f78761f /Source | |
| parent | 8c16ea6c2777800fc3437dd1016f786c88a97730 (diff) | |
| parent | 76320c7cdfa5de3268108e328a1a4038a8372bdf (diff) | |
Merge pull request #14879 from jordan-woyak/infinity-window-adjustments
DolphinQt/InfinityBaseWindow: Minor adjustments.
Diffstat (limited to 'Source')
| -rw-r--r-- | Source/Core/DolphinQt/InfinityBase/InfinityBaseWindow.cpp | 32 | ||||
| -rw-r--r-- | Source/Core/DolphinQt/InfinityBase/InfinityBaseWindow.h | 4 |
2 files changed, 25 insertions, 11 deletions
diff --git a/Source/Core/DolphinQt/InfinityBase/InfinityBaseWindow.cpp b/Source/Core/DolphinQt/InfinityBase/InfinityBaseWindow.cpp index 38a14d984e..c2e888d97b 100644 --- a/Source/Core/DolphinQt/InfinityBase/InfinityBaseWindow.cpp +++ b/Source/Core/DolphinQt/InfinityBase/InfinityBaseWindow.cpp @@ -15,6 +15,7 @@ #include <QMessageBox> #include <QPushButton> #include <QScrollArea> +#include <QStackedWidget> #include <QString> #include <QVBoxLayout> @@ -26,6 +27,7 @@ #include "Core/System.h" #include "DolphinQt/QtUtils/DolphinFileDialog.h" +#include "DolphinQt/QtUtils/WrapInScrollArea.h" #include "DolphinQt/Resources.h" #include "DolphinQt/Settings.h" @@ -76,9 +78,19 @@ void InfinityBaseWindow::CreateMainWindow() vbox->addWidget(line); }; - m_group_figures = new QGroupBox(tr("Active Infinity Figures:")); - auto* vbox_group = new QVBoxLayout(); - auto* scroll_area = new QScrollArea(); + m_stacked_groupboxes = new QStackedWidget; + + auto* const active_figures_group = new QGroupBox(tr("Active Infinity Figures:")); + auto* const active_figures_layout = new QVBoxLayout{active_figures_group}; + auto* const active_figures = new QWidget; + active_figures_layout->setContentsMargins(QMargins{}); + active_figures_layout->addWidget(GetWrappedWidget(active_figures)); + + // Stack contains an empty QGroupBox for when hidden along with the proper QGroupBox. + m_stacked_groupboxes->addWidget(new QGroupBox); + m_stacked_groupboxes->addWidget(active_figures_group); + + auto* const vbox_group = new QVBoxLayout{active_figures}; AddFigureSlot(vbox_group, tr("Play Set/Power Disc"), FigureUIPosition::HexagonDiscOne); add_line(vbox_group); @@ -98,11 +110,11 @@ void InfinityBaseWindow::CreateMainWindow() add_line(vbox_group); AddFigureSlot(vbox_group, tr("Player Two Ability Two"), FigureUIPosition::P2AbilityTwo); - m_group_figures->setLayout(vbox_group); - scroll_area->setWidget(m_group_figures); - scroll_area->setWidgetResizable(true); - m_group_figures->setVisible(Config::Get(Config::MAIN_EMULATE_INFINITY_BASE)); - main_layout->addWidget(scroll_area); + vbox_group->addStretch(); + + m_stacked_groupboxes->setCurrentIndex(Config::Get(Config::MAIN_EMULATE_INFINITY_BASE) ? 1 : 0); + + main_layout->addWidget(m_stacked_groupboxes); setLayout(main_layout); } @@ -253,6 +265,8 @@ CreateFigureDialog::CreateFigureDialog(QWidget* parent, FigureUIPosition slot) : hbox_idvar->addWidget(edit_num); layout->addLayout(hbox_idvar); + layout->addStretch(); + auto* buttons = new QDialogButtonBox(QDialogButtonBox::Ok | QDialogButtonBox::Cancel); buttons->button(QDialogButtonBox::Ok)->setText(tr("Create")); layout->addWidget(buttons); @@ -329,7 +343,7 @@ QString CreateFigureDialog::GetFilePath() const void InfinityBaseWindow::EmulateBase(bool emulate) { Config::SetBaseOrCurrent(Config::MAIN_EMULATE_INFINITY_BASE, emulate); - m_group_figures->setVisible(emulate); + m_stacked_groupboxes->setCurrentIndex(emulate ? 1 : 0); } void InfinityBaseWindow::OnEmulationStateChanged(Core::State state) diff --git a/Source/Core/DolphinQt/InfinityBase/InfinityBaseWindow.h b/Source/Core/DolphinQt/InfinityBase/InfinityBaseWindow.h index a7d0c69d37..fb8c174947 100644 --- a/Source/Core/DolphinQt/InfinityBase/InfinityBaseWindow.h +++ b/Source/Core/DolphinQt/InfinityBase/InfinityBaseWindow.h @@ -11,8 +11,8 @@ #include "Common/CommonTypes.h" class QCheckBox; -class QGroupBox; class QLineEdit; +class QStackedWidget; class QVBoxLayout; namespace Core @@ -47,7 +47,7 @@ private: void LoadFigurePath(IOS::HLE::USB::FigureUIPosition slot, const QString& path); QCheckBox* m_checkbox; - QGroupBox* m_group_figures; + QStackedWidget* m_stacked_groupboxes; }; class CreateFigureDialog : public QDialog |
