mirror of
https://github.com/xpipe-io/xpipe.git
synced 2024-07-01 12:30:47 +12:00
Rework image sizes and caches
This commit is contained in:
parent
e4d3eb2a3d
commit
522c2c1664
|
@ -81,7 +81,7 @@ public class BrowserWelcomeComp extends SimpleComp {
|
|||
var listBox = new ListBoxViewComp<>(list, list, e -> {
|
||||
var entry = DataStorage.get().getStoreEntryIfPresent(e.getUuid());
|
||||
var graphic = entry.get().getProvider().getDisplayIconFileName(entry.get().getStore());
|
||||
var view = PrettyImageHelper.ofFixedSquare(graphic, 45);
|
||||
var view = PrettyImageHelper.ofFixed(graphic, 50, 40);
|
||||
view.padding(new Insets(2, 8, 2, 8));
|
||||
var content =
|
||||
JfxHelper.createNamedEntry(DataStorage.get().getStoreDisplayName(entry.get()), e.getPath(), graphic);
|
||||
|
|
|
@ -20,7 +20,7 @@ public class StandardStoreEntryComp extends StoreEntryComp {
|
|||
grid.setHgap(7);
|
||||
grid.setVgap(0);
|
||||
|
||||
var storeIcon = createIcon(50, 39);
|
||||
var storeIcon = createIcon(50, 40);
|
||||
grid.add(storeIcon, 0, 0, 1, 2);
|
||||
grid.getColumnConstraints().add(new ColumnConstraints(66));
|
||||
|
||||
|
|
|
@ -6,29 +6,38 @@ import io.xpipe.core.store.FileNames;
|
|||
import javafx.beans.property.SimpleStringProperty;
|
||||
import javafx.beans.value.ObservableValue;
|
||||
|
||||
import java.util.Optional;
|
||||
|
||||
public class PrettyImageHelper {
|
||||
|
||||
public static Comp<?> ofFixedSquare(String img, int size) {
|
||||
public static Optional<Comp<?>> rasterizedIfExists(String img, int width, int height) {
|
||||
if (img != null && img.endsWith(".svg")) {
|
||||
var base = FileNames.getBaseName(img);
|
||||
var renderedName = base + "-" + size + ".png";
|
||||
if (AppImages.hasNormalImage(base + "-" + size + ".png")) {
|
||||
return new PrettyImageComp(new SimpleStringProperty(renderedName), size, size);
|
||||
} else {
|
||||
return new PrettySvgComp(new SimpleStringProperty(img), size, size);
|
||||
var renderedName = base + "-" + height + ".png";
|
||||
if (AppImages.hasNormalImage(base + "-" + height + ".png")) {
|
||||
return Optional.of(new PrettyImageComp(new SimpleStringProperty(renderedName), width, height));
|
||||
}
|
||||
}
|
||||
|
||||
return new PrettyImageComp(new SimpleStringProperty(img), size, size);
|
||||
return Optional.empty();
|
||||
}
|
||||
|
||||
public static Comp<?> ofFixedSquare(String img, int size) {
|
||||
return ofFixed(img, size, size);
|
||||
}
|
||||
|
||||
public static Comp<?> ofFixed(String img, int w, int h) {
|
||||
if (w == h) {
|
||||
return ofFixedSquare(img, w);
|
||||
if (img == null) {
|
||||
return new PrettyImageComp(new SimpleStringProperty(null), w, h);
|
||||
}
|
||||
|
||||
var rasterized = rasterizedIfExists(img, w, h);
|
||||
if (rasterized.isPresent()) {
|
||||
return rasterized.get();
|
||||
} else {
|
||||
return img.endsWith(".svg") ? new PrettySvgComp(new SimpleStringProperty(img), w, h) : new PrettyImageComp(new SimpleStringProperty(img), w, h);
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
public static Comp<?> ofSvg(ObservableValue<String> img, int w, int h) {
|
||||
|
|
Loading…
Reference in a new issue