From b7b8f26992ca632a048e88099eeb324dcc25ad02 Mon Sep 17 00:00:00 2001 From: Sebastian Stenzel Date: Wed, 24 Jul 2019 14:57:56 +0200 Subject: [PATCH] cleanup and simplification --- .../java/org/cryptomator/ui/UiModule.java | 1 + .../ui/addvaultwizard/AddVaultModule.java | 5 --- .../mainwindow/VaultListCellController.java | 37 ++++++++----------- 3 files changed, 17 insertions(+), 26 deletions(-) diff --git a/main/ui/src/main/java/org/cryptomator/ui/UiModule.java b/main/ui/src/main/java/org/cryptomator/ui/UiModule.java index f5df4628e..ef5aed16e 100644 --- a/main/ui/src/main/java/org/cryptomator/ui/UiModule.java +++ b/main/ui/src/main/java/org/cryptomator/ui/UiModule.java @@ -46,6 +46,7 @@ public class UiModule { return executorService; } + // TODO @Binds abstract ExecutorService bindExecutorService(ScheduledExecutorService executor); ? @Provides @FxApplicationScoped ExecutorService provideExecutorService(@Named("shutdownTaskScheduler") Consumer shutdownTaskScheduler) { diff --git a/main/ui/src/main/java/org/cryptomator/ui/addvaultwizard/AddVaultModule.java b/main/ui/src/main/java/org/cryptomator/ui/addvaultwizard/AddVaultModule.java index bb36fe96c..45df3b975 100644 --- a/main/ui/src/main/java/org/cryptomator/ui/addvaultwizard/AddVaultModule.java +++ b/main/ui/src/main/java/org/cryptomator/ui/addvaultwizard/AddVaultModule.java @@ -9,16 +9,11 @@ import javafx.beans.property.SimpleObjectProperty; import javafx.stage.Modality; import javafx.stage.Stage; import javafx.stage.StageStyle; -import javafx.stage.Window; import org.cryptomator.ui.common.FXMLLoaderFactory; import org.cryptomator.ui.common.FxController; import org.cryptomator.ui.common.FxControllerKey; import org.cryptomator.ui.mainwindow.MainWindow; -import org.cryptomator.ui.mainwindow.MainWindowController; -import org.cryptomator.ui.mainwindow.VaultDetailController; -import org.cryptomator.ui.mainwindow.VaultListController; -import javax.inject.Named; import javax.inject.Provider; import java.nio.file.Path; import java.util.Map; diff --git a/main/ui/src/main/java/org/cryptomator/ui/mainwindow/VaultListCellController.java b/main/ui/src/main/java/org/cryptomator/ui/mainwindow/VaultListCellController.java index 0232aed88..90c4e297f 100644 --- a/main/ui/src/main/java/org/cryptomator/ui/mainwindow/VaultListCellController.java +++ b/main/ui/src/main/java/org/cryptomator/ui/mainwindow/VaultListCellController.java @@ -1,11 +1,11 @@ package org.cryptomator.ui.mainwindow; -import javafx.beans.binding.Bindings; -import javafx.beans.binding.StringBinding; +import javafx.beans.binding.Binding; import javafx.beans.property.ObjectProperty; import javafx.beans.property.SimpleObjectProperty; import org.cryptomator.ui.common.FxController; import org.cryptomator.ui.model.Vault; +import org.fxmisc.easybind.EasyBind; import javax.inject.Inject; @@ -13,39 +13,34 @@ import javax.inject.Inject; public class VaultListCellController implements FxController { private final ObjectProperty vault = new SimpleObjectProperty<>(); - private final StringBinding glyph; + private final Binding glyph; @Inject VaultListCellController() { - this.glyph = Bindings.createStringBinding(this::getGlyphForVault, vault); + this.glyph = EasyBind.select(vault).selectObject(Vault::stateProperty).map(this::getGlyphForVaultState).orElse("WARNING"); } - private String getGlyphForVault() { - Vault v = vault.get(); - if (v == null) { - return "WARNING"; - } else { - switch (v.getState()) { - case LOCKED: - return "LOCK"; - case UNLOCKED: - return "UNLOCK"; - case PROCESSING: - return "SPINNER"; - default: - return "WARNING"; - } + private String getGlyphForVaultState(Vault.State state) { + switch (state) { + case LOCKED: + return "LOCK"; + case PROCESSING: + return "SPINNER"; + case UNLOCKED: + return "UNLOCK"; + default: + return "WARNING"; } } /* Getter/Setter */ - public StringBinding glyphProperty() { + public Binding glyphProperty() { return glyph; } public String getGlyph() { - return glyph.get(); + return glyph.getValue(); } public ObjectProperty vaultProperty() {