This commit is contained in:
Manfred Karrer 2014-11-12 03:23:55 +01:00
parent 8d5cdf8d1f
commit 60102661ff
5 changed files with 26 additions and 33 deletions

View file

@ -38,15 +38,16 @@ class ApplicationPreferencesModel extends UIModel {
private final ApplicationPreferences applicationPreferences; private final ApplicationPreferences applicationPreferences;
private final ChangeListener<Boolean> useAnimationsListener;
private final ChangeListener<Boolean> useEffectsListener;
private final ChangeListener<String> btcDenominationListener;
final ObservableList<String> btcDenominations; final ObservableList<String> btcDenominations;
final BooleanProperty useAnimations = new SimpleBooleanProperty(); final BooleanProperty useAnimations = new SimpleBooleanProperty();
final BooleanProperty useEffects = new SimpleBooleanProperty(); final BooleanProperty useEffects = new SimpleBooleanProperty();
final StringProperty btcDenomination = new SimpleStringProperty(); final StringProperty btcDenomination = new SimpleStringProperty();
private ChangeListener<Boolean> useAnimationsListener;
private ChangeListener<Boolean> useEffectsListener;
private ChangeListener<String> btcDenominationListener;
/////////////////////////////////////////////////////////////////////////////////////////// ///////////////////////////////////////////////////////////////////////////////////////////
// Constructor // Constructor
@ -57,6 +58,9 @@ class ApplicationPreferencesModel extends UIModel {
this.applicationPreferences = applicationPreferences; this.applicationPreferences = applicationPreferences;
btcDenominations = FXCollections.observableArrayList(applicationPreferences.getBtcDenominations()); btcDenominations = FXCollections.observableArrayList(applicationPreferences.getBtcDenominations());
btcDenominationListener = (ov, oldValue, newValue) -> applicationPreferences.setBtcDenomination(newValue);
useAnimationsListener = (ov, oldValue, newValue) -> applicationPreferences.setUseAnimations(newValue);
useEffectsListener = (ov, oldValue, newValue) -> applicationPreferences.setUseEffects(newValue);
} }
@ -64,17 +68,10 @@ class ApplicationPreferencesModel extends UIModel {
// Lifecycle // Lifecycle
/////////////////////////////////////////////////////////////////////////////////////////// ///////////////////////////////////////////////////////////////////////////////////////////
@SuppressWarnings("EmptyMethod")
@Override @Override
public void initialize() { public void initialize() {
super.initialize(); super.initialize();
useAnimationsListener = (ov, oldValue, newValue) -> applicationPreferences
.setUseAnimations(newValue);
useEffectsListener = (ov, oldValue, newValue) -> applicationPreferences
.setUseEffects(newValue);
btcDenominationListener = (ov, oldValue, newValue) -> applicationPreferences
.setBtcDenomination(newValue);
} }
@Override @Override
@ -88,7 +85,6 @@ class ApplicationPreferencesModel extends UIModel {
useAnimations.addListener(useAnimationsListener); useAnimations.addListener(useAnimationsListener);
useEffects.addListener(useEffectsListener); useEffects.addListener(useEffectsListener);
btcDenomination.addListener(btcDenominationListener); btcDenomination.addListener(btcDenominationListener);
} }
@Override @Override
@ -106,6 +102,5 @@ class ApplicationPreferencesModel extends UIModel {
super.terminate(); super.terminate();
} }
} }

View file

@ -46,12 +46,13 @@ public class ApplicationPreferencesPM extends PresentationModel<ApplicationPrefe
// Lifecycle // Lifecycle
/////////////////////////////////////////////////////////////////////////////////////////// ///////////////////////////////////////////////////////////////////////////////////////////
@SuppressWarnings("EmptyMethod")
@Override @Override
public void initialize() { public void initialize() {
super.initialize(); super.initialize();
} }
@SuppressWarnings("EmptyMethod")
@Override @Override
public void activate() { public void activate() {
super.activate(); super.activate();
@ -69,6 +70,16 @@ public class ApplicationPreferencesPM extends PresentationModel<ApplicationPrefe
super.terminate(); super.terminate();
} }
///////////////////////////////////////////////////////////////////////////////////////////
// Methods
///////////////////////////////////////////////////////////////////////////////////////////
///////////////////////////////////////////////////////////////////////////////////////////
// Getters
///////////////////////////////////////////////////////////////////////////////////////////
public ObservableList<String> getBtcDenominationItems() { public ObservableList<String> getBtcDenominationItems() {
return model.btcDenominations; return model.btcDenominations;
} }
@ -86,16 +97,6 @@ public class ApplicationPreferencesPM extends PresentationModel<ApplicationPrefe
} }
///////////////////////////////////////////////////////////////////////////////////////////
// Methods
///////////////////////////////////////////////////////////////////////////////////////////
///////////////////////////////////////////////////////////////////////////////////////////
// Getters
///////////////////////////////////////////////////////////////////////////////////////////
/////////////////////////////////////////////////////////////////////////////////////////// ///////////////////////////////////////////////////////////////////////////////////////////
// Private // Private
/////////////////////////////////////////////////////////////////////////////////////////// ///////////////////////////////////////////////////////////////////////////////////////////

View file

@ -55,7 +55,6 @@
<CheckBox fx:id="useEffectsCheckBox" <CheckBox fx:id="useEffectsCheckBox"
GridPane.columnIndex="1" GridPane.rowIndex="2"/> GridPane.columnIndex="1" GridPane.rowIndex="2"/>
<columnConstraints> <columnConstraints>
<ColumnConstraints hgrow="SOMETIMES" halignment="RIGHT" minWidth="200.0"/> <ColumnConstraints hgrow="SOMETIMES" halignment="RIGHT" minWidth="200.0"/>
<ColumnConstraints hgrow="ALWAYS" minWidth="300.0"/> <ColumnConstraints hgrow="ALWAYS" minWidth="300.0"/>

View file

@ -38,7 +38,6 @@ public class ApplicationPreferencesViewCB extends CachedViewCB<ApplicationPrefer
private static final Logger log = LoggerFactory.getLogger(ApplicationPreferencesViewCB.class); private static final Logger log = LoggerFactory.getLogger(ApplicationPreferencesViewCB.class);
@FXML ComboBox<String> btcDenominationComboBox; @FXML ComboBox<String> btcDenominationComboBox;
@FXML CheckBox useAnimationsCheckBox, useEffectsCheckBox; @FXML CheckBox useAnimationsCheckBox, useEffectsCheckBox;
@ -68,6 +67,7 @@ public class ApplicationPreferencesViewCB extends CachedViewCB<ApplicationPrefer
btcDenominationComboBox.setItems(presentationModel.getBtcDenominationItems()); btcDenominationComboBox.setItems(presentationModel.getBtcDenominationItems());
btcDenominationComboBox.getSelectionModel().select(presentationModel.btcDenomination().get()); btcDenominationComboBox.getSelectionModel().select(presentationModel.btcDenomination().get());
useAnimationsCheckBox.selectedProperty().bindBidirectional(presentationModel.useAnimations()); useAnimationsCheckBox.selectedProperty().bindBidirectional(presentationModel.useAnimations());
useEffectsCheckBox.selectedProperty().bindBidirectional(presentationModel.useEffects()); useEffectsCheckBox.selectedProperty().bindBidirectional(presentationModel.useEffects());
@ -76,6 +76,9 @@ public class ApplicationPreferencesViewCB extends CachedViewCB<ApplicationPrefer
@Override @Override
public void deactivate() { public void deactivate() {
super.deactivate(); super.deactivate();
useAnimationsCheckBox.selectedProperty().unbind();
useEffectsCheckBox.selectedProperty().unbind();
} }
@SuppressWarnings("EmptyMethod") @SuppressWarnings("EmptyMethod")
@ -93,5 +96,4 @@ public class ApplicationPreferencesViewCB extends CachedViewCB<ApplicationPrefer
void onSelectBtcDenomination() { void onSelectBtcDenomination() {
presentationModel.btcDenomination().set(btcDenominationComboBox.getSelectionModel().getSelectedItem()); presentationModel.btcDenomination().set(btcDenominationComboBox.getSelectionModel().getSelectedItem());
} }
} }

View file

@ -76,22 +76,18 @@ public class ApplicationPreferences implements Serializable {
if (data instanceof String) { if (data instanceof String) {
btcDenominationString = (String) data; btcDenominationString = (String) data;
this.btcDenomination.set(btcDenominationString); this.btcDenomination.set(btcDenominationString);
log.debug(data.toString());
} }
data = persistence.read(this, "useEffects"); data = persistence.read(this, "useEffects");
if (data instanceof Boolean) { if (data instanceof Boolean) {
useEffectsBoolean = (Boolean) data; useEffectsBoolean = (Boolean) data;
this.useEffects.set(useEffectsBoolean); this.useEffects.set(useEffectsBoolean);
log.debug(data.toString());
} }
data = persistence.read(this, "useAnimations"); data = persistence.read(this, "useAnimations");
if (data instanceof Boolean) { if (data instanceof Boolean) {
useAnimationsBoolean = (Boolean) data; useAnimationsBoolean = (Boolean) data;
this.useAnimations.set(useAnimationsBoolean); this.useAnimations.set(useAnimationsBoolean);
log.debug(data.toString());
} }
} }