mirror of
https://github.com/PrismLauncher/PrismLauncher.git
synced 2026-07-07 05:46:58 +03:00
GH-2639 Add simple fabric loader installation support
This commit is contained in:
parent
83c48a0f1a
commit
6c30076b6c
4 changed files with 51 additions and 1 deletions
|
|
@ -180,6 +180,7 @@ void VersionPage::packageCurrent(const QModelIndex ¤t, const QModelIndex &
|
|||
|
||||
void VersionPage::updateVersionControls()
|
||||
{
|
||||
ui->fabricBtn->setEnabled(true);
|
||||
ui->forgeBtn->setEnabled(true);
|
||||
ui->liteloaderBtn->setEnabled(true);
|
||||
updateButtons();
|
||||
|
|
@ -187,6 +188,7 @@ void VersionPage::updateVersionControls()
|
|||
|
||||
void VersionPage::disableVersionControls()
|
||||
{
|
||||
ui->fabricBtn->setEnabled(false);
|
||||
ui->forgeBtn->setEnabled(false);
|
||||
ui->liteloaderBtn->setEnabled(false);
|
||||
ui->reloadBtn->setEnabled(false);
|
||||
|
|
@ -389,6 +391,33 @@ void VersionPage::on_forgeBtn_clicked()
|
|||
}
|
||||
}
|
||||
|
||||
void VersionPage::on_fabricBtn_clicked()
|
||||
{
|
||||
auto vlist = ENV.metadataIndex()->get("net.fabricmc.fabric-loader");
|
||||
if(!vlist)
|
||||
{
|
||||
return;
|
||||
}
|
||||
VersionSelectDialog vselect(vlist.get(), tr("Select Fabric Loader version"), this);
|
||||
vselect.setEmptyString(tr("No Fabric Loader versions are currently available."));
|
||||
vselect.setEmptyErrorString(tr("Couldn't load or download the Fabric Loader version lists!"));
|
||||
|
||||
auto currentVersion = m_profile->getComponentVersion("net.fabricmc.fabric-loader");
|
||||
if(!currentVersion.isEmpty())
|
||||
{
|
||||
vselect.setCurrentVersion(currentVersion);
|
||||
}
|
||||
|
||||
if (vselect.exec() && vselect.selectedVersion())
|
||||
{
|
||||
auto vsn = vselect.selectedVersion();
|
||||
m_profile->setComponentVersion("net.fabricmc.fabric-loader", vsn->descriptor());
|
||||
m_profile->resolve(Net::Mode::Online);
|
||||
preselect(m_profile->rowCount(QModelIndex())-1);
|
||||
m_container->refreshContainer();
|
||||
}
|
||||
}
|
||||
|
||||
void VersionPage::on_addEmptyBtn_clicked()
|
||||
{
|
||||
NewComponentDialog compdialog(QString(), QString(), this);
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue