From 58e32c44595cdda7d81662868e361a8a5d75b4ab Mon Sep 17 00:00:00 2001 From: Glavo Date: Tue, 15 Oct 2024 19:56:32 +0800 Subject: [PATCH] =?UTF-8?q?=E5=BD=93=E6=95=B4=E5=90=88=E5=8C=85=E6=B2=A1?= =?UTF-8?q?=E6=9C=89=E6=8F=8F=E8=BF=B0=E6=97=B6=EF=BC=8C=E9=9A=90=E8=97=8F?= =?UTF-8?q?=E6=9F=A5=E7=9C=8B=E6=95=B4=E5=90=88=E5=8C=85=E6=8F=8F=E8=BF=B0?= =?UTF-8?q?=E6=8C=89=E9=92=AE=20(#3347)?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../org/jackhuang/hmcl/ui/download/LocalModpackPage.java | 5 +++++ .../java/org/jackhuang/hmcl/ui/download/ModpackPage.java | 3 ++- .../org/jackhuang/hmcl/ui/download/RemoteModpackPage.java | 3 +++ 3 files changed, 10 insertions(+), 1 deletion(-) diff --git a/HMCL/src/main/java/org/jackhuang/hmcl/ui/download/LocalModpackPage.java b/HMCL/src/main/java/org/jackhuang/hmcl/ui/download/LocalModpackPage.java index 3b8525b06..eb9e3f441 100644 --- a/HMCL/src/main/java/org/jackhuang/hmcl/ui/download/LocalModpackPage.java +++ b/HMCL/src/main/java/org/jackhuang/hmcl/ui/download/LocalModpackPage.java @@ -36,6 +36,7 @@ import org.jackhuang.hmcl.ui.construct.MessageDialogPane; import org.jackhuang.hmcl.ui.construct.RequiredValidator; import org.jackhuang.hmcl.ui.construct.Validator; import org.jackhuang.hmcl.ui.wizard.WizardController; +import org.jackhuang.hmcl.util.StringUtils; import org.jackhuang.hmcl.util.io.CompressingUtils; import org.jackhuang.hmcl.util.io.FileUtils; @@ -79,6 +80,8 @@ public final class LocalModpackPage extends ModpackPage { }); } + btnDescription.setVisible(false); + File selectedFile; Optional filePath = tryCast(controller.getSettings().get(MODPACK_FILE), File.class); if (filePath.isPresent()) { @@ -134,6 +137,8 @@ public final class LocalModpackPage extends ModpackPage { // trim: https://github.com/HMCL-dev/HMCL/issues/962 txtModpackName.setText(manifest.getName().trim()); } + + btnDescription.setVisible(StringUtils.isNotBlank(manifest.getDescription())); } }).start(); } diff --git a/HMCL/src/main/java/org/jackhuang/hmcl/ui/download/ModpackPage.java b/HMCL/src/main/java/org/jackhuang/hmcl/ui/download/ModpackPage.java index c54317e41..107429813 100644 --- a/HMCL/src/main/java/org/jackhuang/hmcl/ui/download/ModpackPage.java +++ b/HMCL/src/main/java/org/jackhuang/hmcl/ui/download/ModpackPage.java @@ -24,6 +24,7 @@ public abstract class ModpackPage extends SpinnerPane implements WizardPage { protected final Label lblAuthor; protected final JFXTextField txtModpackName; protected final JFXButton btnInstall; + protected final JFXButton btnDescription; protected ModpackPage(WizardController controller) { this.controller = controller; @@ -77,7 +78,7 @@ public abstract class ModpackPage extends SpinnerPane implements WizardPage { BorderPane descriptionPane = new BorderPane(); { - JFXButton btnDescription = new JFXButton(i18n("modpack.description")); + btnDescription = new JFXButton(i18n("modpack.description")); btnDescription.getStyleClass().add("jfx-button-border"); btnDescription.setOnAction(e -> onDescribe()); descriptionPane.setLeft(btnDescription); diff --git a/HMCL/src/main/java/org/jackhuang/hmcl/ui/download/RemoteModpackPage.java b/HMCL/src/main/java/org/jackhuang/hmcl/ui/download/RemoteModpackPage.java index b29583fd3..1123f3fd8 100644 --- a/HMCL/src/main/java/org/jackhuang/hmcl/ui/download/RemoteModpackPage.java +++ b/HMCL/src/main/java/org/jackhuang/hmcl/ui/download/RemoteModpackPage.java @@ -27,6 +27,7 @@ import org.jackhuang.hmcl.ui.construct.MessageDialogPane; import org.jackhuang.hmcl.ui.construct.RequiredValidator; import org.jackhuang.hmcl.ui.construct.Validator; import org.jackhuang.hmcl.ui.wizard.WizardController; +import org.jackhuang.hmcl.util.StringUtils; import java.io.IOException; import java.util.Map; @@ -69,6 +70,8 @@ public final class RemoteModpackPage extends ModpackPage { new Validator(i18n("install.new_game.already_exists"), str -> !profile.getRepository().versionIdConflicts(str)), new Validator(i18n("install.new_game.malformed"), HMCLGameRepository::isValidVersionId)); } + + btnDescription.setVisible(StringUtils.isNotBlank(manifest.getDescription())); } @Override