Merge pull request #2383 from Trial97/scroll_new_instance

Made Custom New Instance scrollable
This commit is contained in:
ZekeZ 2024-06-07 16:37:21 +10:00 committed by GitHub
commit 39b8451130
No known key found for this signature in database
GPG Key ID: B5690EEEBB952194
3 changed files with 41 additions and 26 deletions

View File

@ -52,6 +52,7 @@
#include <QFileDialog> #include <QFileDialog>
#include <QLayout> #include <QLayout>
#include <QPushButton> #include <QPushButton>
#include <QScreen>
#include <QValidator> #include <QValidator>
#include <utility> #include <utility>
@ -63,6 +64,7 @@
#include "ui/pages/modplatform/modrinth/ModrinthPage.h" #include "ui/pages/modplatform/modrinth/ModrinthPage.h"
#include "ui/pages/modplatform/technic/TechnicPage.h" #include "ui/pages/modplatform/technic/TechnicPage.h"
#include "ui/widgets/PageContainer.h" #include "ui/widgets/PageContainer.h"
NewInstanceDialog::NewInstanceDialog(const QString& initialGroup, NewInstanceDialog::NewInstanceDialog(const QString& initialGroup,
const QString& url, const QString& url,
const QMap<QString, QString>& extra_info, const QMap<QString, QString>& extra_info,
@ -127,7 +129,17 @@ NewInstanceDialog::NewInstanceDialog(const QString& initialGroup,
updateDialogState(); updateDialogState();
if (APPLICATION->settings()->get("NewInstanceGeometry").isValid()) {
restoreGeometry(QByteArray::fromBase64(APPLICATION->settings()->get("NewInstanceGeometry").toByteArray())); restoreGeometry(QByteArray::fromBase64(APPLICATION->settings()->get("NewInstanceGeometry").toByteArray()));
} else {
#if QT_VERSION >= QT_VERSION_CHECK(5, 15, 0)
auto screen = parent->screen();
#else
auto screen = QGuiApplication::primaryScreen();
#endif
auto geometry = screen->availableSize();
resize(width(), qMin(geometry.height() - 50, 710));
}
} }
void NewInstanceDialog::reject() void NewInstanceDialog::reject()

View File

@ -49,7 +49,6 @@
CustomPage::CustomPage(NewInstanceDialog* dialog, QWidget* parent) : QWidget(parent), dialog(dialog), ui(new Ui::CustomPage) CustomPage::CustomPage(NewInstanceDialog* dialog, QWidget* parent) : QWidget(parent), dialog(dialog), ui(new Ui::CustomPage)
{ {
ui->setupUi(this); ui->setupUi(this);
ui->tabWidget->tabBar()->hide();
connect(ui->versionList, &VersionSelectWidget::selectedVersionChanged, this, &CustomPage::setSelectedVersion); connect(ui->versionList, &VersionSelectWidget::selectedVersionChanged, this, &CustomPage::setSelectedVersion);
filterChanged(); filterChanged();
connect(ui->alphaFilter, &QCheckBox::stateChanged, this, &CustomPage::filterChanged); connect(ui->alphaFilter, &QCheckBox::stateChanged, this, &CustomPage::filterChanged);

View File

@ -24,29 +24,21 @@
<number>0</number> <number>0</number>
</property> </property>
<item> <item>
<widget class="QTabWidget" name="tabWidget"> <widget class="QScrollArea" name="scrollArea">
<property name="currentIndex"> <property name="widgetResizable">
<number>0</number> <bool>true</bool>
</property> </property>
<widget class="QWidget" name="tab"> <widget class="QWidget" name="content">
<attribute name="title"> <property name="geometry">
<string notr="true"/> <rect>
</attribute> <x>0</x>
<layout class="QGridLayout" name="gridLayout_2"> <y>0</y>
<item row="2" column="0"> <width>813</width>
<widget class="Line" name="line"> <height>605</height>
<property name="sizePolicy"> </rect>
<sizepolicy hsizetype="Minimum" vsizetype="Fixed">
<horstretch>0</horstretch>
<verstretch>0</verstretch>
</sizepolicy>
</property> </property>
<property name="orientation"> <layout class="QVBoxLayout" name="verticalLayout_3">
<enum>Qt::Horizontal</enum> <item>
</property>
</widget>
</item>
<item row="0" column="0">
<layout class="QHBoxLayout" name="minecraftLayout"> <layout class="QHBoxLayout" name="minecraftLayout">
<item> <item>
<widget class="VersionSelectWidget" name="versionList" native="true"> <widget class="VersionSelectWidget" name="versionList" native="true">
@ -147,7 +139,20 @@
</item> </item>
</layout> </layout>
</item> </item>
<item row="4" column="0"> <item>
<widget class="Line" name="line">
<property name="sizePolicy">
<sizepolicy hsizetype="Minimum" vsizetype="Fixed">
<horstretch>0</horstretch>
<verstretch>0</verstretch>
</sizepolicy>
</property>
<property name="orientation">
<enum>Qt::Horizontal</enum>
</property>
</widget>
</item>
<item>
<layout class="QHBoxLayout" name="loaderLayout"> <layout class="QHBoxLayout" name="loaderLayout">
<item> <item>
<widget class="VersionSelectWidget" name="loaderVersionList" native="true"> <widget class="VersionSelectWidget" name="loaderVersionList" native="true">
@ -273,7 +278,6 @@
</customwidget> </customwidget>
</customwidgets> </customwidgets>
<tabstops> <tabstops>
<tabstop>tabWidget</tabstop>
<tabstop>releaseFilter</tabstop> <tabstop>releaseFilter</tabstop>
<tabstop>snapshotFilter</tabstop> <tabstop>snapshotFilter</tabstop>
<tabstop>betaFilter</tabstop> <tabstop>betaFilter</tabstop>