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