Skip to content
Open
Show file tree
Hide file tree
Changes from 2 commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
12 changes: 12 additions & 0 deletions HMCL/src/main/java/org/jackhuang/hmcl/ui/FXUtils.java
Original file line number Diff line number Diff line change
Expand Up @@ -299,6 +299,18 @@ public static void limitSize(ImageView imageView, double maxWidth, double maxHei
});
}

private static final double WRAP_WIDTH = 30;
private static final double WRAP_HEIGHT = 20;
private static final int SVG_ICON_SIZE = 20;

public static Node wrap(Node node) {
return limitingSize(node, WRAP_WIDTH, WRAP_HEIGHT);
}

public static Node wrap(SVG svg) {
return wrap(svg.createIcon(SVG_ICON_SIZE));
}

private static class ListenerPair<T> {
private final ObservableValue<T> value;
private final ChangeListener<? super T> listener;
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -54,7 +54,7 @@
import java.util.Locale;

import static org.jackhuang.hmcl.setting.ConfigHolder.globalConfig;
import static org.jackhuang.hmcl.ui.versions.VersionPage.wrap;
import static org.jackhuang.hmcl.ui.FXUtils.wrap;
import static org.jackhuang.hmcl.util.i18n.I18n.i18n;
import static org.jackhuang.hmcl.util.javafx.ExtendedProperties.createSelectedItemPropertyFor;
import static org.jackhuang.hmcl.util.logging.Logger.LOG;
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -30,7 +30,6 @@
import org.jackhuang.hmcl.ui.SVG;
import org.jackhuang.hmcl.ui.animation.ContainerAnimations;
import org.jackhuang.hmcl.ui.animation.TransitionPane;
import org.jackhuang.hmcl.ui.versions.VersionPage;

import java.util.function.Consumer;

Expand Down Expand Up @@ -75,7 +74,7 @@ private AdvancedListItem createNavigationDrawerItem(String title, SVG leftGraphi
item.setActionButtonVisible(false);
item.setTitle(title);
if (leftGraphic != null) {
item.setLeftGraphic(VersionPage.wrap(leftGraphic));
item.setLeftGraphic(FXUtils.wrap(leftGraphic));
}
return item;
}
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -67,7 +67,7 @@
import java.util.stream.Collectors;

import static org.jackhuang.hmcl.ui.FXUtils.runInFX;
import static org.jackhuang.hmcl.ui.versions.VersionPage.wrap;
import static org.jackhuang.hmcl.ui.FXUtils.wrap;
import static org.jackhuang.hmcl.util.i18n.I18n.i18n;
import static org.jackhuang.hmcl.util.logging.Logger.LOG;

Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -28,7 +28,6 @@
import org.jackhuang.hmcl.ui.SVG;
import org.jackhuang.hmcl.ui.construct.RipplerContainer;
import org.jackhuang.hmcl.ui.construct.TwoLineListItem;
import org.jackhuang.hmcl.ui.versions.VersionPage;

public class ProfileListItemSkin extends SkinBase<ProfileListItem> {
private final PseudoClass SELECTED = PseudoClass.getPseudoClass("selected");
Expand All @@ -47,7 +46,7 @@ public ProfileListItemSkin(ProfileListItem skinnable) {

FXUtils.onClicked(getSkinnable(), () -> getSkinnable().setSelected(true));

Node left = VersionPage.wrap(SVG.FOLDER);
Node left = FXUtils.wrap(SVG.FOLDER);
root.setLeft(left);
BorderPane.setAlignment(left, Pos.CENTER_LEFT);

Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -68,7 +68,7 @@ public GameListPage() {
addProfileItem.getStyleClass().add("navigation-drawer-item");
addProfileItem.setTitle(i18n("profile.new"));
addProfileItem.setActionButtonVisible(false);
addProfileItem.setLeftGraphic(VersionPage.wrap(SVG.ADD_CIRCLE));
addProfileItem.setLeftGraphic(FXUtils.wrap(SVG.ADD_CIRCLE));
addProfileItem.setOnAction(e -> Controllers.navigate(new ProfilePage(null)));

pane.setFitToWidth(true);
Expand Down
17 changes: 0 additions & 17 deletions HMCL/src/main/java/org/jackhuang/hmcl/ui/versions/VersionPage.java
Original file line number Diff line number Diff line change
Expand Up @@ -21,11 +21,8 @@
import javafx.application.Platform;
import javafx.beans.binding.Bindings;
import javafx.beans.property.*;
import javafx.geometry.Insets;
import javafx.geometry.Pos;
import javafx.scene.Node;
import javafx.scene.layout.Priority;
import javafx.scene.layout.StackPane;
import javafx.scene.layout.VBox;
import org.jackhuang.hmcl.event.EventBus;
import org.jackhuang.hmcl.event.EventPriority;
Expand Down Expand Up @@ -305,20 +302,6 @@ protected Skin(VersionPage control) {
}
}

public static Node wrap(Node node) {
StackPane stackPane = new StackPane();
stackPane.setAlignment(Pos.CENTER);
FXUtils.setLimitWidth(stackPane, 30);
FXUtils.setLimitHeight(stackPane, 20);
stackPane.setPadding(new Insets(0, 0, 0, 0));
stackPane.getChildren().setAll(node);
return stackPane;
}

public static Node wrap(SVG svg) {
return wrap(svg.createIcon(20));
}

public interface VersionLoadable {
void loadVersion(Profile profile, String version);
}
Expand Down