summaryrefslogtreecommitdiff
path: root/Source/Core
diff options
context:
space:
mode:
authorAdmiral H. Curtiss <pikachu025@gmail.com>2026-10-03 12:25:05 +0200
committerGitHub <noreply@github.com>2026-10-03 12:25:05 +0200
commit562875dd60fd0ff50b65dbbb611a2096802cd1b9 (patch)
treefecf6d0e25c38816da0cd5c8e36c83716f78761f /Source/Core
parent8c16ea6c2777800fc3437dd1016f786c88a97730 (diff)
parent76320c7cdfa5de3268108e328a1a4038a8372bdf (diff)
Merge pull request #14879 from jordan-woyak/infinity-window-adjustments
DolphinQt/InfinityBaseWindow: Minor adjustments.
Diffstat (limited to 'Source/Core')
-rw-r--r--Source/Core/DolphinQt/InfinityBase/InfinityBaseWindow.cpp32
-rw-r--r--Source/Core/DolphinQt/InfinityBase/InfinityBaseWindow.h4
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