mirror of
https://github.com/PrismLauncher/PrismLauncher.git
synced 2025-09-13 14:06:07 -04:00
Merge branch 'develop' into refactor-filter
Signed-off-by: TheKodeToad <TheKodeToad@proton.me>
This commit is contained in:
commit
8420e75cfa
@ -90,7 +90,7 @@ runs:
|
||||
|
||||
- name: Retrieve ccache cache (MinGW)
|
||||
if: ${{ inputs.msystem != '' && inputs.build-type == 'Debug' }}
|
||||
uses: actions/cache@v4.2.3
|
||||
uses: actions/cache@v4.2.4
|
||||
with:
|
||||
path: '${{ github.workspace }}\.ccache'
|
||||
key: ${{ runner.os }}-mingw-w64-ccache-${{ github.run_id }}
|
||||
|
4
.github/workflows/backport.yml
vendored
4
.github/workflows/backport.yml
vendored
@ -21,11 +21,11 @@ jobs:
|
||||
if: github.repository_owner == 'PrismLauncher' && github.event.pull_request.merged == true && (github.event_name != 'labeled' || startsWith('backport', github.event.label.name))
|
||||
runs-on: ubuntu-latest
|
||||
steps:
|
||||
- uses: actions/checkout@v4
|
||||
- uses: actions/checkout@v5
|
||||
with:
|
||||
ref: ${{ github.event.pull_request.head.sha }}
|
||||
- name: Create backport PRs
|
||||
uses: korthout/backport-action@v3.2.1
|
||||
uses: korthout/backport-action@v3.3.0
|
||||
with:
|
||||
# Config README: https://github.com/korthout/backport-action#backport-action
|
||||
pull_description: |-
|
||||
|
2
.github/workflows/build.yml
vendored
2
.github/workflows/build.yml
vendored
@ -133,7 +133,7 @@ jobs:
|
||||
##
|
||||
|
||||
- name: Checkout
|
||||
uses: actions/checkout@v4
|
||||
uses: actions/checkout@v5
|
||||
with:
|
||||
submodules: true
|
||||
|
||||
|
2
.github/workflows/codeql.yml
vendored
2
.github/workflows/codeql.yml
vendored
@ -60,7 +60,7 @@ jobs:
|
||||
|
||||
steps:
|
||||
- name: Checkout repository
|
||||
uses: actions/checkout@v4
|
||||
uses: actions/checkout@v5
|
||||
with:
|
||||
submodules: "true"
|
||||
|
||||
|
2
.github/workflows/flatpak.yml
vendored
2
.github/workflows/flatpak.yml
vendored
@ -84,7 +84,7 @@ jobs:
|
||||
|
||||
steps:
|
||||
- name: Checkout repository
|
||||
uses: actions/checkout@v4
|
||||
uses: actions/checkout@v5
|
||||
with:
|
||||
submodules: true
|
||||
|
||||
|
2
.github/workflows/nix.yml
vendored
2
.github/workflows/nix.yml
vendored
@ -105,7 +105,7 @@ jobs:
|
||||
GH_TOKEN: ${{ secrets.GITHUB_TOKEN }}
|
||||
|
||||
- name: Checkout repository
|
||||
uses: actions/checkout@v4
|
||||
uses: actions/checkout@v5
|
||||
with:
|
||||
ref: ${{ steps.merge-commit.outputs.merge-commit-sha || github.sha }}
|
||||
|
||||
|
4
.github/workflows/release.yml
vendored
4
.github/workflows/release.yml
vendored
@ -20,12 +20,12 @@ jobs:
|
||||
upload_url: ${{ steps.create_release.outputs.upload_url }}
|
||||
steps:
|
||||
- name: Checkout
|
||||
uses: actions/checkout@v4
|
||||
uses: actions/checkout@v5
|
||||
with:
|
||||
submodules: "true"
|
||||
path: "PrismLauncher-source"
|
||||
- name: Download artifacts
|
||||
uses: actions/download-artifact@v4
|
||||
uses: actions/download-artifact@v5
|
||||
- name: Grab and store version
|
||||
run: |
|
||||
tag_name=$(echo ${{ github.ref }} | grep -oE "[^/]+$")
|
||||
|
2
.github/workflows/update-flake.yml
vendored
2
.github/workflows/update-flake.yml
vendored
@ -16,7 +16,7 @@ jobs:
|
||||
runs-on: ubuntu-latest
|
||||
|
||||
steps:
|
||||
- uses: actions/checkout@v4
|
||||
- uses: actions/checkout@v5
|
||||
- uses: cachix/install-nix-action@c134e4c9e34bac6cab09cf239815f9339aaaf84e # v31
|
||||
|
||||
- uses: DeterminateSystems/update-flake-lock@v27
|
||||
|
6
flake.lock
generated
6
flake.lock
generated
@ -18,11 +18,11 @@
|
||||
},
|
||||
"nixpkgs": {
|
||||
"locked": {
|
||||
"lastModified": 1752687322,
|
||||
"narHash": "sha256-RKwfXA4OZROjBTQAl9WOZQFm7L8Bo93FQwSJpAiSRvo=",
|
||||
"lastModified": 1754498491,
|
||||
"narHash": "sha256-erbiH2agUTD0Z30xcVSFcDHzkRvkRXOQ3lb887bcVrs=",
|
||||
"owner": "NixOS",
|
||||
"repo": "nixpkgs",
|
||||
"rev": "6e987485eb2c77e5dcc5af4e3c70843711ef9251",
|
||||
"rev": "c2ae88e026f9525daf89587f3cbee584b92b6134",
|
||||
"type": "github"
|
||||
},
|
||||
"original": {
|
||||
|
@ -31,7 +31,7 @@ static const QMap<QString, IndexedVersionType::VersionType> s_indexed_version_ty
|
||||
{ "alpha", IndexedVersionType::VersionType::Alpha }
|
||||
};
|
||||
|
||||
static const QList<ModLoaderType> loaderList = { NeoForge, Forge, Cauldron, LiteLoader, Quilt, Fabric, Babric, BTA };
|
||||
static const QList<ModLoaderType> loaderList = { NeoForge, Forge, Cauldron, LiteLoader, Quilt, Fabric, Babric, BTA, LegacyFabric, Ornithe, Rift };
|
||||
|
||||
QList<ModLoaderType> modLoaderTypesToList(ModLoaderTypes flags)
|
||||
{
|
||||
@ -122,7 +122,7 @@ auto getModLoaderAsString(ModLoaderType type) -> const QString
|
||||
case Cauldron:
|
||||
return "cauldron";
|
||||
case LiteLoader:
|
||||
return "liteloader";
|
||||
return "liteloader";
|
||||
case Fabric:
|
||||
return "fabric";
|
||||
case Quilt:
|
||||
@ -133,6 +133,12 @@ auto getModLoaderAsString(ModLoaderType type) -> const QString
|
||||
return "babric";
|
||||
case BTA:
|
||||
return "bta-babric";
|
||||
case LegacyFabric:
|
||||
return "legacy-fabric";
|
||||
case Ornithe:
|
||||
return "ornithe";
|
||||
case Rift:
|
||||
return "rift";
|
||||
default:
|
||||
break;
|
||||
}
|
||||
@ -157,6 +163,12 @@ auto getModLoaderFromString(QString type) -> ModLoaderType
|
||||
return Babric;
|
||||
if (type == "bta-babric")
|
||||
return BTA;
|
||||
if (type == "legacy-fabric")
|
||||
return LegacyFabric;
|
||||
if (type == "ornithe")
|
||||
return Ornithe;
|
||||
if (type == "rift")
|
||||
return Rift;
|
||||
return {};
|
||||
}
|
||||
|
||||
|
@ -38,7 +38,10 @@ enum ModLoaderType {
|
||||
Quilt = 1 << 5,
|
||||
DataPack = 1 << 6,
|
||||
Babric = 1 << 7,
|
||||
BTA = 1 << 8
|
||||
BTA = 1 << 8,
|
||||
LegacyFabric = 1 << 9,
|
||||
Ornithe = 1 << 10,
|
||||
Rift = 1 << 11
|
||||
};
|
||||
Q_DECLARE_FLAGS(ModLoaderTypes, ModLoaderType)
|
||||
QList<ModLoaderType> modLoaderTypesToList(ModLoaderTypes flags);
|
||||
|
@ -73,6 +73,9 @@ class FlameAPI : public NetworkResourceAPI {
|
||||
case ModPlatform::DataPack:
|
||||
case ModPlatform::Babric:
|
||||
case ModPlatform::BTA:
|
||||
case ModPlatform::LegacyFabric:
|
||||
case ModPlatform::Ornithe:
|
||||
case ModPlatform::Rift:
|
||||
break; // not supported
|
||||
}
|
||||
return 0;
|
||||
|
@ -95,6 +95,12 @@ void PackInstallTask::copySettings()
|
||||
break;
|
||||
case ModPlatform::BTA:
|
||||
break;
|
||||
case ModPlatform::LegacyFabric:
|
||||
break;
|
||||
case ModPlatform::Ornithe:
|
||||
break;
|
||||
case ModPlatform::Rift:
|
||||
break;
|
||||
}
|
||||
components->saveNow();
|
||||
|
||||
|
@ -43,7 +43,7 @@ class ModrinthAPI : public NetworkResourceAPI {
|
||||
{
|
||||
QStringList l;
|
||||
for (auto loader : { ModPlatform::NeoForge, ModPlatform::Forge, ModPlatform::Fabric, ModPlatform::Quilt, ModPlatform::LiteLoader,
|
||||
ModPlatform::DataPack, ModPlatform::Babric, ModPlatform::BTA }) {
|
||||
ModPlatform::DataPack, ModPlatform::Babric, ModPlatform::BTA, ModPlatform::LegacyFabric, ModPlatform::Ornithe, ModPlatform::Rift }) {
|
||||
if (types & loader) {
|
||||
l << getModLoaderAsString(loader);
|
||||
}
|
||||
@ -202,7 +202,7 @@ class ModrinthAPI : public NetworkResourceAPI {
|
||||
static inline auto validateModLoaders(ModPlatform::ModLoaderTypes loaders) -> bool
|
||||
{
|
||||
return loaders & (ModPlatform::NeoForge | ModPlatform::Forge | ModPlatform::Fabric | ModPlatform::Quilt | ModPlatform::LiteLoader |
|
||||
ModPlatform::DataPack | ModPlatform::Babric | ModPlatform::BTA);
|
||||
ModPlatform::DataPack | ModPlatform::Babric | ModPlatform::BTA | ModPlatform::LegacyFabric | ModPlatform::Ornithe | ModPlatform::Rift);
|
||||
}
|
||||
|
||||
std::optional<QString> getDependencyURL(DependencySearchArgs const& args) const override
|
||||
|
@ -65,15 +65,6 @@ enum InstSortMode {
|
||||
Sort_LastLaunch
|
||||
};
|
||||
|
||||
enum InstRenamingMode {
|
||||
// Rename metadata only.
|
||||
Rename_Always,
|
||||
// Ask everytime.
|
||||
Rename_Ask,
|
||||
// Rename physical directory too.
|
||||
Rename_Never
|
||||
};
|
||||
|
||||
LauncherPage::LauncherPage(QWidget* parent) : QWidget(parent), ui(new Ui::LauncherPage)
|
||||
{
|
||||
ui->setupUi(this);
|
||||
@ -242,18 +233,12 @@ void LauncherPage::applySettings()
|
||||
break;
|
||||
}
|
||||
|
||||
auto renamingMode = (InstRenamingMode)ui->renamingBehaviorComboBox->currentIndex();
|
||||
switch (renamingMode) {
|
||||
case Rename_Always:
|
||||
s->set("InstRenamingMode", "MetadataOnly");
|
||||
break;
|
||||
case Rename_Never:
|
||||
s->set("InstRenamingMode", "PhysicalDir");
|
||||
break;
|
||||
case Rename_Ask:
|
||||
default:
|
||||
s->set("InstRenamingMode", "AskEverytime");
|
||||
break;
|
||||
if (ui->askToRenameDirBtn->isChecked()) {
|
||||
s->set("InstRenamingMode", "AskEverytime");
|
||||
} else if (ui->alwaysRenameDirBtn->isChecked()) {
|
||||
s->set("InstRenamingMode", "PhysicalDir");
|
||||
} else if (ui->neverRenameDirBtn->isChecked()) {
|
||||
s->set("InstRenamingMode", "MetadataOnly");
|
||||
}
|
||||
|
||||
// Mods
|
||||
@ -300,15 +285,9 @@ void LauncherPage::loadSettings()
|
||||
}
|
||||
|
||||
QString renamingMode = s->get("InstRenamingMode").toString();
|
||||
InstRenamingMode renamingModeEnum;
|
||||
if (renamingMode == "MetadataOnly") {
|
||||
renamingModeEnum = Rename_Always;
|
||||
} else if (renamingMode == "PhysicalDir") {
|
||||
renamingModeEnum = Rename_Never;
|
||||
} else {
|
||||
renamingModeEnum = Rename_Ask;
|
||||
}
|
||||
ui->renamingBehaviorComboBox->setCurrentIndex(renamingModeEnum);
|
||||
ui->askToRenameDirBtn->setChecked(renamingMode == "AskEverytime");
|
||||
ui->alwaysRenameDirBtn->setChecked(renamingMode == "PhysicalDir");
|
||||
ui->neverRenameDirBtn->setChecked(renamingMode == "MetadataOnly");
|
||||
|
||||
// Mods
|
||||
ui->metadataEnableBtn->setChecked(!s->get("ModMetadataDisabled").toBool());
|
||||
|
@ -32,7 +32,7 @@
|
||||
<item>
|
||||
<widget class="QScrollArea" name="scrollArea">
|
||||
<property name="horizontalScrollBarPolicy">
|
||||
<enum>Qt::ScrollBarAsNeeded</enum>
|
||||
<enum>Qt::ScrollBarPolicy::ScrollBarAsNeeded</enum>
|
||||
</property>
|
||||
<property name="widgetResizable">
|
||||
<bool>true</bool>
|
||||
@ -41,9 +41,9 @@
|
||||
<property name="geometry">
|
||||
<rect>
|
||||
<x>0</x>
|
||||
<y>-356</y>
|
||||
<width>742</width>
|
||||
<height>1148</height>
|
||||
<y>0</y>
|
||||
<width>746</width>
|
||||
<height>1194</height>
|
||||
</rect>
|
||||
</property>
|
||||
<layout class="QVBoxLayout" name="verticalLayout_8">
|
||||
@ -86,10 +86,10 @@
|
||||
<item>
|
||||
<spacer name="verticalSpacer">
|
||||
<property name="orientation">
|
||||
<enum>Qt::Vertical</enum>
|
||||
<enum>Qt::Orientation::Vertical</enum>
|
||||
</property>
|
||||
<property name="sizeType">
|
||||
<enum>QSizePolicy::Fixed</enum>
|
||||
<enum>QSizePolicy::Policy::Fixed</enum>
|
||||
</property>
|
||||
<property name="sizeHint" stdset="0">
|
||||
<size>
|
||||
@ -107,37 +107,42 @@
|
||||
</widget>
|
||||
</item>
|
||||
<item>
|
||||
<widget class="QComboBox" name="renamingBehaviorComboBox">
|
||||
<property name="sizePolicy">
|
||||
<sizepolicy hsizetype="Maximum" vsizetype="Fixed">
|
||||
<horstretch>0</horstretch>
|
||||
<verstretch>0</verstretch>
|
||||
</sizepolicy>
|
||||
<widget class="QRadioButton" name="askToRenameDirBtn">
|
||||
<property name="text">
|
||||
<string>Ask what to do</string>
|
||||
</property>
|
||||
<item>
|
||||
<property name="text">
|
||||
<string>Ask what to do with the folder</string>
|
||||
</property>
|
||||
</item>
|
||||
<item>
|
||||
<property name="text">
|
||||
<string>Always rename the folder</string>
|
||||
</property>
|
||||
</item>
|
||||
<item>
|
||||
<property name="text">
|
||||
<string>Never rename the folder—only the displayed name</string>
|
||||
</property>
|
||||
</item>
|
||||
<attribute name="buttonGroup">
|
||||
<string notr="true">renamingBehaviorGroup</string>
|
||||
</attribute>
|
||||
</widget>
|
||||
</item>
|
||||
<item>
|
||||
<widget class="QRadioButton" name="alwaysRenameDirBtn">
|
||||
<property name="text">
|
||||
<string>Always rename the folder</string>
|
||||
</property>
|
||||
<attribute name="buttonGroup">
|
||||
<string notr="true">renamingBehaviorGroup</string>
|
||||
</attribute>
|
||||
</widget>
|
||||
</item>
|
||||
<item>
|
||||
<widget class="QRadioButton" name="neverRenameDirBtn">
|
||||
<property name="text">
|
||||
<string>Never rename the folder</string>
|
||||
</property>
|
||||
<attribute name="buttonGroup">
|
||||
<string notr="true">renamingBehaviorGroup</string>
|
||||
</attribute>
|
||||
</widget>
|
||||
</item>
|
||||
<item>
|
||||
<spacer name="verticalSpacer_2">
|
||||
<property name="orientation">
|
||||
<enum>Qt::Vertical</enum>
|
||||
<enum>Qt::Orientation::Vertical</enum>
|
||||
</property>
|
||||
<property name="sizeType">
|
||||
<enum>QSizePolicy::Fixed</enum>
|
||||
<enum>QSizePolicy::Policy::Fixed</enum>
|
||||
</property>
|
||||
<property name="sizeHint" stdset="0">
|
||||
<size>
|
||||
@ -206,7 +211,7 @@
|
||||
<item>
|
||||
<spacer name="horizontalSpacer">
|
||||
<property name="orientation">
|
||||
<enum>Qt::Horizontal</enum>
|
||||
<enum>Qt::Orientation::Horizontal</enum>
|
||||
</property>
|
||||
<property name="sizeHint" stdset="0">
|
||||
<size>
|
||||
@ -433,7 +438,7 @@
|
||||
</property>
|
||||
<layout class="QFormLayout" name="formLayout">
|
||||
<property name="labelAlignment">
|
||||
<set>Qt::AlignLeading|Qt::AlignLeft|Qt::AlignVCenter</set>
|
||||
<set>Qt::AlignmentFlag::AlignLeading|Qt::AlignmentFlag::AlignLeft|Qt::AlignmentFlag::AlignVCenter</set>
|
||||
</property>
|
||||
<item row="0" column="0">
|
||||
<widget class="QLabel" name="lineLimitLabel">
|
||||
@ -602,7 +607,7 @@
|
||||
<item row="0" column="2">
|
||||
<spacer name="horizontalSpacer_2">
|
||||
<property name="orientation">
|
||||
<enum>Qt::Horizontal</enum>
|
||||
<enum>Qt::Orientation::Horizontal</enum>
|
||||
</property>
|
||||
<property name="sizeHint" stdset="0">
|
||||
<size>
|
||||
@ -618,7 +623,7 @@
|
||||
<item>
|
||||
<spacer name="verticalSpacer_FeaturesTab">
|
||||
<property name="orientation">
|
||||
<enum>Qt::Vertical</enum>
|
||||
<enum>Qt::Orientation::Vertical</enum>
|
||||
</property>
|
||||
<property name="sizeHint" stdset="0">
|
||||
<size>
|
||||
@ -636,9 +641,6 @@
|
||||
</widget>
|
||||
<tabstops>
|
||||
<tabstop>scrollArea</tabstop>
|
||||
<tabstop>sortByNameBtn</tabstop>
|
||||
<tabstop>sortLastLaunchedBtn</tabstop>
|
||||
<tabstop>renamingBehaviorComboBox</tabstop>
|
||||
<tabstop>preferMenuBarCheckBox</tabstop>
|
||||
<tabstop>autoUpdateCheckBox</tabstop>
|
||||
<tabstop>updateIntervalSpinBox</tabstop>
|
||||
@ -670,5 +672,6 @@
|
||||
<connections/>
|
||||
<buttongroups>
|
||||
<buttongroup name="sortingModeGroup"/>
|
||||
<buttongroup name="renamingBehaviorGroup"/>
|
||||
</buttongroups>
|
||||
</ui>
|
||||
|
@ -203,53 +203,6 @@
|
||||
</property>
|
||||
</spacer>
|
||||
</item>
|
||||
<item>
|
||||
<widget class="QLabel" name="catFitLabel">
|
||||
<property name="sizePolicy">
|
||||
<sizepolicy hsizetype="Maximum" vsizetype="Fixed">
|
||||
<horstretch>0</horstretch>
|
||||
<verstretch>0</verstretch>
|
||||
</sizepolicy>
|
||||
</property>
|
||||
<property name="text">
|
||||
<string>Fit</string>
|
||||
</property>
|
||||
</widget>
|
||||
</item>
|
||||
<item>
|
||||
<widget class="QComboBox" name="catFitComboBox">
|
||||
<property name="sizePolicy">
|
||||
<sizepolicy hsizetype="Maximum" vsizetype="Fixed">
|
||||
<horstretch>0</horstretch>
|
||||
<verstretch>0</verstretch>
|
||||
</sizepolicy>
|
||||
</property>
|
||||
<property name="sizeHint" stdset="0">
|
||||
<size>
|
||||
<width>77</width>
|
||||
<height>30</height>
|
||||
</size>
|
||||
</property>
|
||||
<property name="currentIndex">
|
||||
<number>0</number>
|
||||
</property>
|
||||
<item>
|
||||
<property name="text">
|
||||
<string>Fit</string>
|
||||
</property>
|
||||
</item>
|
||||
<item>
|
||||
<property name="text">
|
||||
<string>Fill</string>
|
||||
</property>
|
||||
</item>
|
||||
<item>
|
||||
<property name="text">
|
||||
<string>Stretch</string>
|
||||
</property>
|
||||
</item>
|
||||
</widget>
|
||||
</item>
|
||||
<item>
|
||||
<widget class="QLabel" name="catOpacityLabel">
|
||||
<property name="text">
|
||||
@ -370,6 +323,53 @@
|
||||
</property>
|
||||
</spacer>
|
||||
</item>
|
||||
<item>
|
||||
<widget class="QLabel" name="catFitLabel">
|
||||
<property name="sizePolicy">
|
||||
<sizepolicy hsizetype="Maximum" vsizetype="Fixed">
|
||||
<horstretch>0</horstretch>
|
||||
<verstretch>0</verstretch>
|
||||
</sizepolicy>
|
||||
</property>
|
||||
<property name="text">
|
||||
<string>Cat Scaling</string>
|
||||
</property>
|
||||
</widget>
|
||||
</item>
|
||||
<item>
|
||||
<widget class="QComboBox" name="catFitComboBox">
|
||||
<property name="sizePolicy">
|
||||
<sizepolicy hsizetype="Maximum" vsizetype="Fixed">
|
||||
<horstretch>0</horstretch>
|
||||
<verstretch>0</verstretch>
|
||||
</sizepolicy>
|
||||
</property>
|
||||
<property name="sizeHint" stdset="0">
|
||||
<size>
|
||||
<width>77</width>
|
||||
<height>30</height>
|
||||
</size>
|
||||
</property>
|
||||
<property name="currentIndex">
|
||||
<number>0</number>
|
||||
</property>
|
||||
<item>
|
||||
<property name="text">
|
||||
<string>Fit</string>
|
||||
</property>
|
||||
</item>
|
||||
<item>
|
||||
<property name="text">
|
||||
<string>Fill</string>
|
||||
</property>
|
||||
</item>
|
||||
<item>
|
||||
<property name="text">
|
||||
<string>Stretch</string>
|
||||
</property>
|
||||
</item>
|
||||
</widget>
|
||||
</item>
|
||||
</layout>
|
||||
</widget>
|
||||
</item>
|
||||
|
@ -152,6 +152,9 @@ ModFilterWidget::ModFilterWidget(MinecraftInstance* instance, bool extended)
|
||||
connect(ui->liteLoader, &QCheckBox::stateChanged, this, &ModFilterWidget::onLoadersFilterChanged);
|
||||
connect(ui->babric, &QCheckBox::stateChanged, this, &ModFilterWidget::onLoadersFilterChanged);
|
||||
connect(ui->btaBabric, &QCheckBox::stateChanged, this, &ModFilterWidget::onLoadersFilterChanged);
|
||||
connect(ui->legacyFabric, &QCheckBox::stateChanged, this, &ModFilterWidget::onLoadersFilterChanged);
|
||||
connect(ui->ornithe, &QCheckBox::stateChanged, this, &ModFilterWidget::onLoadersFilterChanged);
|
||||
connect(ui->rift, &QCheckBox::stateChanged, this, &ModFilterWidget::onLoadersFilterChanged);
|
||||
|
||||
connect(ui->showMoreButton, &QPushButton::clicked, this, &ModFilterWidget::onShowMoreClicked);
|
||||
|
||||
@ -289,6 +292,12 @@ void ModFilterWidget::onLoadersFilterChanged()
|
||||
loaders |= ModPlatform::Babric;
|
||||
if (ui->btaBabric->isChecked())
|
||||
loaders |= ModPlatform::BTA;
|
||||
if (ui->legacyFabric->isChecked())
|
||||
loaders |= ModPlatform::LegacyFabric;
|
||||
if (ui->ornithe->isChecked())
|
||||
loaders |= ModPlatform::Ornithe;
|
||||
if (ui->rift->isChecked())
|
||||
loaders |= ModPlatform::Rift;
|
||||
m_filter_changed = loaders != m_filter->loaders;
|
||||
m_filter->loaders = loaders;
|
||||
if (m_filter_changed)
|
||||
|
@ -167,6 +167,27 @@
|
||||
</property>
|
||||
</widget>
|
||||
</item>
|
||||
<item>
|
||||
<widget class="QCheckBox" name="legacyFabric">
|
||||
<property name="text">
|
||||
<string>Legacy Fabric</string>
|
||||
</property>
|
||||
</widget>
|
||||
</item>
|
||||
<item>
|
||||
<widget class="QCheckBox" name="ornithe">
|
||||
<property name="text">
|
||||
<string>Ornithe</string>
|
||||
</property>
|
||||
</widget>
|
||||
</item>
|
||||
<item>
|
||||
<widget class="QCheckBox" name="rift">
|
||||
<property name="text">
|
||||
<string>Rift</string>
|
||||
</property>
|
||||
</widget>
|
||||
</item>
|
||||
</layout>
|
||||
</widget>
|
||||
</item>
|
||||
|
Loading…
x
Reference in New Issue
Block a user