diff --git a/src/main/java/io/bitsquare/settings/Settings.java b/src/main/java/io/bitsquare/account/AccountSettings.java
similarity index 76%
rename from src/main/java/io/bitsquare/settings/Settings.java
rename to src/main/java/io/bitsquare/account/AccountSettings.java
index 613c6e7037..a41851f36b 100644
--- a/src/main/java/io/bitsquare/settings/Settings.java
+++ b/src/main/java/io/bitsquare/account/AccountSettings.java
@@ -15,7 +15,7 @@
* along with Bitsquare. If not, see .
*/
-package io.bitsquare.settings;
+package io.bitsquare.account;
import io.bitsquare.arbitrator.Arbitrator;
import io.bitsquare.locale.Country;
@@ -30,26 +30,24 @@ import java.util.List;
import java.util.Locale;
import java.util.OptionalLong;
-import javafx.beans.property.SimpleStringProperty;
-import javafx.beans.property.StringProperty;
-
-public class Settings implements Serializable {
+public class AccountSettings implements Serializable {
private static final long serialVersionUID = 7995048077355006861L;
private List acceptedLanguageLocales = new ArrayList<>();
private List acceptedCountryLocales = new ArrayList<>();
private List acceptedArbitrators = new ArrayList<>();
- private Boolean useAnimations = true;
+ // needed for persistence
private String btcDenominationString = MonetaryFormat.CODE_BTC;
- final transient StringProperty btcDenomination = new SimpleStringProperty(MonetaryFormat.CODE_BTC);
+ private Boolean useAnimationsBoolean = true;
+ private Boolean useEffectsBoolean = true;
///////////////////////////////////////////////////////////////////////////////////////////
// Constructor
///////////////////////////////////////////////////////////////////////////////////////////
- public Settings() {
+ public AccountSettings() {
}
@@ -57,12 +55,11 @@ public class Settings implements Serializable {
// Public API
///////////////////////////////////////////////////////////////////////////////////////////
- public void applyPersistedSettings(Settings persistedSettings) {
+ public void applyPersistedAccountSettings(AccountSettings persistedSettings) {
if (persistedSettings != null) {
acceptedLanguageLocales = persistedSettings.getAcceptedLanguageLocales();
acceptedCountryLocales = persistedSettings.getAcceptedCountries();
acceptedArbitrators = persistedSettings.getAcceptedArbitrators();
- setBtcDenomination(persistedSettings.getBtcDenominationString());
}
}
@@ -118,30 +115,4 @@ public class Settings implements Serializable {
return result.isPresent() ? Coin.valueOf(result.getAsLong()) : Coin.ZERO;
}
- public String getBtcDenomination() {
- return btcDenomination.get();
- }
-
- public StringProperty btcDenominationProperty() {
- return btcDenomination;
- }
-
- public void setBtcDenomination(String btcDenomination) {
- btcDenominationString = btcDenomination;
- this.btcDenomination.set(btcDenomination);
- }
-
- public String getBtcDenominationString() {
- return btcDenominationString;
- }
-
- public Boolean getUseAnimations() {
- return useAnimations;
- }
-
- public void setUseAnimations(boolean useAnimations) {
- this.useAnimations = useAnimations;
- }
-
-
}
diff --git a/src/main/java/io/bitsquare/app/gui/BitsquareApp.java b/src/main/java/io/bitsquare/app/gui/BitsquareApp.java
index 408f0088dc..6e7bddf4f0 100644
--- a/src/main/java/io/bitsquare/app/gui/BitsquareApp.java
+++ b/src/main/java/io/bitsquare/app/gui/BitsquareApp.java
@@ -18,13 +18,14 @@
package io.bitsquare.app.gui;
import io.bitsquare.BitsquareException;
+import io.bitsquare.account.AccountSettings;
import io.bitsquare.gui.Navigation;
import io.bitsquare.gui.SystemTray;
import io.bitsquare.gui.ViewLoader;
import io.bitsquare.gui.components.Popups;
import io.bitsquare.gui.util.ImageUtil;
import io.bitsquare.persistence.Persistence;
-import io.bitsquare.settings.Settings;
+import io.bitsquare.preferences.ApplicationPreferences;
import io.bitsquare.user.User;
import com.google.common.base.Preconditions;
@@ -81,14 +82,18 @@ public class BitsquareApp extends Application {
// load and apply any stored settings
User user = injector.getInstance(User.class);
- Settings settings = injector.getInstance(Settings.class);
+ ApplicationPreferences applicationPreferences = injector.getInstance(ApplicationPreferences.class);
+ AccountSettings accountSettings = injector.getInstance(AccountSettings.class);
Persistence persistence = injector.getInstance(Persistence.class);
persistence.init();
User persistedUser = (User) persistence.read(user);
user.applyPersistedUser(persistedUser);
- settings.applyPersistedSettings((Settings) persistence.read(settings.getClass().getName()));
+ applicationPreferences.applyPersistedSettings((ApplicationPreferences) persistence
+ .read(applicationPreferences.getClass().getName()));
+ accountSettings.applyPersistedAccountSettings((AccountSettings) persistence
+ .read(accountSettings.getClass().getName()));
// load the main view and create the main scene
diff --git a/src/main/java/io/bitsquare/app/gui/BitsquareAppModule.java b/src/main/java/io/bitsquare/app/gui/BitsquareAppModule.java
index 6e45020571..1091eb0822 100644
--- a/src/main/java/io/bitsquare/app/gui/BitsquareAppModule.java
+++ b/src/main/java/io/bitsquare/app/gui/BitsquareAppModule.java
@@ -18,6 +18,7 @@
package io.bitsquare.app.gui;
import io.bitsquare.BitsquareModule;
+import io.bitsquare.account.AccountSettings;
import io.bitsquare.btc.BitcoinModule;
import io.bitsquare.crypto.CryptoModule;
import io.bitsquare.gui.GuiModule;
@@ -26,7 +27,7 @@ import io.bitsquare.msg.tomp2p.TomP2PMessageModule;
import io.bitsquare.offer.OfferModule;
import io.bitsquare.offer.tomp2p.TomP2POfferModule;
import io.bitsquare.persistence.Persistence;
-import io.bitsquare.settings.Settings;
+import io.bitsquare.preferences.ApplicationPreferences;
import io.bitsquare.trade.TradeModule;
import io.bitsquare.user.User;
@@ -52,7 +53,8 @@ class BitsquareAppModule extends BitsquareModule {
@Override
protected void configure() {
bind(User.class).asEagerSingleton();
- bind(Settings.class).asEagerSingleton();
+ bind(ApplicationPreferences.class).asEagerSingleton();
+ bind(AccountSettings.class).asEagerSingleton();
File persistenceDir = new File(env.getRequiredProperty(Persistence.DIR_KEY));
bind(File.class).annotatedWith(named(Persistence.DIR_KEY)).toInstance(persistenceDir);
diff --git a/src/main/java/io/bitsquare/gui/GuiModule.java b/src/main/java/io/bitsquare/gui/GuiModule.java
index ce06522b0f..7bbf61c716 100644
--- a/src/main/java/io/bitsquare/gui/GuiModule.java
+++ b/src/main/java/io/bitsquare/gui/GuiModule.java
@@ -22,6 +22,7 @@ import io.bitsquare.gui.components.Popups;
import io.bitsquare.gui.main.help.Help;
import io.bitsquare.gui.main.trade.offerbook.OfferBook;
import io.bitsquare.gui.util.BSFormatter;
+import io.bitsquare.gui.util.Transitions;
import io.bitsquare.gui.util.validation.BankAccountNumberValidator;
import io.bitsquare.gui.util.validation.BtcValidator;
import io.bitsquare.gui.util.validation.FiatValidator;
@@ -55,6 +56,7 @@ public class GuiModule extends BitsquareModule {
bind(FiatValidator.class).asEagerSingleton();
bind(InputValidator.class).asEagerSingleton();
bind(PasswordValidator.class).asEagerSingleton();
+ bind(Transitions.class).asEagerSingleton();
bind(Stage.class).toInstance(primaryStage);
Popups.primaryStage = primaryStage;
diff --git a/src/main/java/io/bitsquare/gui/main/MainViewCB.java b/src/main/java/io/bitsquare/gui/main/MainViewCB.java
index 993196015d..e528c0c7a2 100644
--- a/src/main/java/io/bitsquare/gui/main/MainViewCB.java
+++ b/src/main/java/io/bitsquare/gui/main/MainViewCB.java
@@ -26,7 +26,6 @@ import io.bitsquare.gui.components.Popups;
import io.bitsquare.gui.components.SystemNotification;
import io.bitsquare.gui.util.Profiler;
import io.bitsquare.gui.util.Transitions;
-import io.bitsquare.settings.Settings;
import io.bitsquare.trade.TradeManager;
import java.net.URL;
@@ -36,7 +35,6 @@ import java.util.ResourceBundle;
import javax.inject.Inject;
import javax.inject.Named;
-import javafx.animation.Interpolator;
import javafx.application.Platform;
import javafx.fxml.Initializable;
import javafx.geometry.Insets;
@@ -58,7 +56,7 @@ public class MainViewCB extends ViewCB {
private final Navigation navigation;
private final OverlayManager overlayManager;
private final ToggleGroup navButtonsGroup = new ToggleGroup();
- private final Settings settings;
+ private Transitions transitions;
private final String title;
private BorderPane baseApplicationContainer;
@@ -77,12 +75,13 @@ public class MainViewCB extends ViewCB {
@Inject
private MainViewCB(MainPM presentationModel, Navigation navigation, OverlayManager overlayManager,
- TradeManager tradeManager, Settings settings, @Named(TITLE_KEY) String title) {
+ TradeManager tradeManager, Transitions transitions,
+ @Named(TITLE_KEY) String title) {
super(presentationModel);
this.navigation = navigation;
this.overlayManager = overlayManager;
- this.settings = settings;
+ this.transitions = transitions;
this.title = title;
tradeManager.featureNotImplementedWarningProperty().addListener((ov, oldValue, newValue) -> {
@@ -118,14 +117,12 @@ public class MainViewCB extends ViewCB {
overlayManager.addListener(new OverlayManager.OverlayListener() {
@Override
public void onBlurContentRequested() {
- if (settings.getUseAnimations())
- Transitions.blur(baseApplicationContainer);
+ transitions.blur(baseApplicationContainer);
}
@Override
public void onRemoveBlurContentRequested() {
- if (settings.getUseAnimations())
- Transitions.removeBlur(baseApplicationContainer);
+ transitions.removeBlur(baseApplicationContainer);
}
});
@@ -230,7 +227,7 @@ public class MainViewCB extends ViewCB {
private void onContentAdded() {
Profiler.printMsgWithTime("MainController.onContentAdded");
- Transitions.fadeOutAndRemove(splashScreen, 1500).setInterpolator(Interpolator.EASE_IN);
+ transitions.fadeOutAndRemove(splashScreen, 1500);
}
diff --git a/src/main/java/io/bitsquare/gui/main/account/arbitrator/browser/ArbitratorBrowserViewCB.java b/src/main/java/io/bitsquare/gui/main/account/arbitrator/browser/ArbitratorBrowserViewCB.java
index 6e629f9a8c..a7eb516da8 100644
--- a/src/main/java/io/bitsquare/gui/main/account/arbitrator/browser/ArbitratorBrowserViewCB.java
+++ b/src/main/java/io/bitsquare/gui/main/account/arbitrator/browser/ArbitratorBrowserViewCB.java
@@ -17,6 +17,7 @@
package io.bitsquare.gui.main.account.arbitrator.browser;
+import io.bitsquare.account.AccountSettings;
import io.bitsquare.arbitrator.Arbitrator;
import io.bitsquare.gui.CachedViewCB;
import io.bitsquare.gui.Navigation;
@@ -27,7 +28,6 @@ import io.bitsquare.locale.LanguageUtil;
import io.bitsquare.msg.MessageFacade;
import io.bitsquare.msg.listeners.ArbitratorListener;
import io.bitsquare.persistence.Persistence;
-import io.bitsquare.settings.Settings;
import java.net.URL;
@@ -51,7 +51,7 @@ import org.slf4j.LoggerFactory;
public class ArbitratorBrowserViewCB extends CachedViewCB implements ArbitratorListener {
private static final Logger log = LoggerFactory.getLogger(ArbitratorBrowserViewCB.class);
- private final Settings settings;
+ private final AccountSettings accountSettings;
private final Persistence persistence;
private final MessageFacade messageFacade;
@@ -68,8 +68,9 @@ public class ArbitratorBrowserViewCB extends CachedViewCB implements ArbitratorL
///////////////////////////////////////////////////////////////////////////////////////////
@Inject
- public ArbitratorBrowserViewCB(Settings settings, Persistence persistence, MessageFacade messageFacade) {
- this.settings = settings;
+ public ArbitratorBrowserViewCB(AccountSettings accountSettings, Persistence persistence,
+ MessageFacade messageFacade) {
+ this.accountSettings = accountSettings;
this.persistence = persistence;
this.messageFacade = messageFacade;
}
@@ -199,8 +200,8 @@ public class ArbitratorBrowserViewCB extends CachedViewCB implements ArbitratorL
@FXML
public void onSelect() {
- settings.addAcceptedArbitrator(currentArbitrator);
- persistence.write(settings);
+ accountSettings.addAcceptedArbitrator(currentArbitrator);
+ persistence.write(accountSettings);
}
@FXML
diff --git a/src/main/java/io/bitsquare/gui/main/account/arbitrator/profile/ArbitratorProfileViewCB.java b/src/main/java/io/bitsquare/gui/main/account/arbitrator/profile/ArbitratorProfileViewCB.java
index af9dec5bc3..2b3873f527 100644
--- a/src/main/java/io/bitsquare/gui/main/account/arbitrator/profile/ArbitratorProfileViewCB.java
+++ b/src/main/java/io/bitsquare/gui/main/account/arbitrator/profile/ArbitratorProfileViewCB.java
@@ -21,7 +21,7 @@ import io.bitsquare.arbitrator.Arbitrator;
import io.bitsquare.gui.CachedViewCB;
import io.bitsquare.gui.util.BSFormatter;
import io.bitsquare.persistence.Persistence;
-import io.bitsquare.settings.Settings;
+import io.bitsquare.preferences.ApplicationPreferences;
import java.net.URL;
@@ -35,7 +35,7 @@ import javafx.scene.control.*;
// TODO Arbitration is very basic yet
public class ArbitratorProfileViewCB extends CachedViewCB {
- private final Settings settings;
+ private final ApplicationPreferences settings;
private final Persistence persistence;
private final BSFormatter formatter;
@@ -53,7 +53,7 @@ public class ArbitratorProfileViewCB extends CachedViewCB {
///////////////////////////////////////////////////////////////////////////////////////////
@Inject
- public ArbitratorProfileViewCB(Settings settings, Persistence persistence, BSFormatter formatter) {
+ public ArbitratorProfileViewCB(ApplicationPreferences settings, Persistence persistence, BSFormatter formatter) {
this.settings = settings;
this.persistence = persistence;
diff --git a/src/main/java/io/bitsquare/gui/main/account/content/fiat/FiatAccountModel.java b/src/main/java/io/bitsquare/gui/main/account/content/fiat/FiatAccountModel.java
index 24eb043004..adb9f9905a 100644
--- a/src/main/java/io/bitsquare/gui/main/account/content/fiat/FiatAccountModel.java
+++ b/src/main/java/io/bitsquare/gui/main/account/content/fiat/FiatAccountModel.java
@@ -17,6 +17,7 @@
package io.bitsquare.gui.main.account.content.fiat;
+import io.bitsquare.account.AccountSettings;
import io.bitsquare.bank.BankAccount;
import io.bitsquare.bank.BankAccountType;
import io.bitsquare.gui.UIModel;
@@ -25,7 +26,6 @@ import io.bitsquare.locale.CountryUtil;
import io.bitsquare.locale.CurrencyUtil;
import io.bitsquare.locale.Region;
import io.bitsquare.persistence.Persistence;
-import io.bitsquare.settings.Settings;
import io.bitsquare.user.User;
import com.google.inject.Inject;
@@ -48,7 +48,7 @@ class FiatAccountModel extends UIModel {
private static final Logger log = LoggerFactory.getLogger(FiatAccountModel.class);
private final User user;
- private final Settings settings;
+ private final AccountSettings accountSettings;
private final Persistence persistence;
final StringProperty title = new SimpleStringProperty();
@@ -75,10 +75,10 @@ class FiatAccountModel extends UIModel {
///////////////////////////////////////////////////////////////////////////////////////////
@Inject
- FiatAccountModel(User user, Persistence persistence, Settings settings) {
+ FiatAccountModel(User user, Persistence persistence, AccountSettings accountSettings) {
this.persistence = persistence;
this.user = user;
- this.settings = settings;
+ this.accountSettings = accountSettings;
}
@@ -127,7 +127,7 @@ class FiatAccountModel extends UIModel {
user.setBankAccount(bankAccount);
saveUser();
allBankAccounts.setAll(user.getBankAccounts());
- countryNotInAcceptedCountriesList.set(!settings.getAcceptedCountries().contains(country.get()));
+ countryNotInAcceptedCountriesList.set(!accountSettings.getAcceptedCountries().contains(country.get()));
reset();
}
@@ -141,7 +141,7 @@ class FiatAccountModel extends UIModel {
// We ask the user if he likes to add his own bank account country to the accepted country list if he has not
// already added it before
void addCountryToAcceptedCountriesList() {
- settings.addAcceptedCountry(country.get());
+ accountSettings.addAcceptedCountry(country.get());
saveSettings();
countryNotInAcceptedCountriesList.set(false);
}
@@ -225,6 +225,6 @@ class FiatAccountModel extends UIModel {
}
private void saveSettings() {
- persistence.write(settings);
+ persistence.write(accountSettings);
}
}
diff --git a/src/main/java/io/bitsquare/gui/main/account/content/irc/IrcAccountModel.java b/src/main/java/io/bitsquare/gui/main/account/content/irc/IrcAccountModel.java
index 231ff0f3f0..4f0f9ae294 100644
--- a/src/main/java/io/bitsquare/gui/main/account/content/irc/IrcAccountModel.java
+++ b/src/main/java/io/bitsquare/gui/main/account/content/irc/IrcAccountModel.java
@@ -17,6 +17,7 @@
package io.bitsquare.gui.main.account.content.irc;
+import io.bitsquare.account.AccountSettings;
import io.bitsquare.arbitrator.Arbitrator;
import io.bitsquare.arbitrator.Reputation;
import io.bitsquare.bank.BankAccount;
@@ -29,7 +30,6 @@ import io.bitsquare.locale.LanguageUtil;
import io.bitsquare.locale.Region;
import io.bitsquare.msg.MessageFacade;
import io.bitsquare.persistence.Persistence;
-import io.bitsquare.settings.Settings;
import io.bitsquare.user.User;
import io.bitsquare.util.DSAKeyUtil;
@@ -58,7 +58,7 @@ class IrcAccountModel extends UIModel {
private static final Logger log = LoggerFactory.getLogger(IrcAccountModel.class);
private final User user;
- private final Settings settings;
+ private final AccountSettings accountSettings;
private final MessageFacade messageFacade;
private final Persistence persistence;
@@ -78,10 +78,10 @@ class IrcAccountModel extends UIModel {
///////////////////////////////////////////////////////////////////////////////////////////
@Inject
- IrcAccountModel(User user, Persistence persistence, Settings settings, MessageFacade messageFacade) {
+ IrcAccountModel(User user, Persistence persistence, AccountSettings accountSettings, MessageFacade messageFacade) {
this.persistence = persistence;
this.user = user;
- this.settings = settings;
+ this.accountSettings = accountSettings;
this.messageFacade = messageFacade;
}
@@ -95,7 +95,7 @@ class IrcAccountModel extends UIModel {
public void initialize() {
super.initialize();
- if (settings.getAcceptedArbitrators().isEmpty())
+ if (accountSettings.getAcceptedArbitrators().isEmpty())
addMockArbitrator();
}
@@ -175,11 +175,11 @@ class IrcAccountModel extends UIModel {
}
private void saveSettings() {
- persistence.write(settings);
+ persistence.write(accountSettings);
}
private void addMockArbitrator() {
- if (settings.getAcceptedArbitrators().isEmpty() && user.getMessageKeyPair() != null) {
+ if (accountSettings.getAcceptedArbitrators().isEmpty() && user.getMessageKeyPair() != null) {
String pubKeyAsHex = Utils.HEX.encode(new ECKey().getPubKey());
String messagePubKeyAsHex = DSAKeyUtil.getHexStringFromPublicKey(user.getMessagePublicKey());
List languages = new ArrayList<>();
@@ -202,8 +202,8 @@ class IrcAccountModel extends UIModel {
"http://bitsquare.io/",
"Bla bla...");
- settings.addAcceptedArbitrator(arbitrator);
- persistence.write(settings);
+ accountSettings.addAcceptedArbitrator(arbitrator);
+ persistence.write(accountSettings);
messageFacade.addArbitrator(arbitrator);
}
diff --git a/src/main/java/io/bitsquare/gui/main/account/content/restrictions/RestrictionsModel.java b/src/main/java/io/bitsquare/gui/main/account/content/restrictions/RestrictionsModel.java
index 48320f24a1..ad14d4a88f 100644
--- a/src/main/java/io/bitsquare/gui/main/account/content/restrictions/RestrictionsModel.java
+++ b/src/main/java/io/bitsquare/gui/main/account/content/restrictions/RestrictionsModel.java
@@ -17,6 +17,7 @@
package io.bitsquare.gui.main.account.content.restrictions;
+import io.bitsquare.account.AccountSettings;
import io.bitsquare.arbitrator.Arbitrator;
import io.bitsquare.arbitrator.Reputation;
import io.bitsquare.gui.UIModel;
@@ -26,7 +27,6 @@ import io.bitsquare.locale.LanguageUtil;
import io.bitsquare.locale.Region;
import io.bitsquare.msg.MessageFacade;
import io.bitsquare.persistence.Persistence;
-import io.bitsquare.settings.Settings;
import io.bitsquare.user.User;
import io.bitsquare.util.DSAKeyUtil;
@@ -50,7 +50,7 @@ class RestrictionsModel extends UIModel {
private static final Logger log = LoggerFactory.getLogger(RestrictionsModel.class);
private final User user;
- private final Settings settings;
+ private final AccountSettings accountSettings;
private final Persistence persistence;
private final MessageFacade messageFacade;
@@ -67,9 +67,10 @@ class RestrictionsModel extends UIModel {
///////////////////////////////////////////////////////////////////////////////////////////
@Inject
- private RestrictionsModel(User user, Settings settings, Persistence persistence, MessageFacade messageFacade) {
+ private RestrictionsModel(User user, AccountSettings accountSettings, Persistence persistence,
+ MessageFacade messageFacade) {
this.user = user;
- this.settings = settings;
+ this.accountSettings = accountSettings;
this.persistence = persistence;
this.messageFacade = messageFacade;
}
@@ -83,9 +84,9 @@ class RestrictionsModel extends UIModel {
public void initialize() {
super.initialize();
- Settings persistedSettings = (Settings) persistence.read(settings);
- if (persistedSettings != null) {
- settings.applyPersistedSettings(persistedSettings);
+ AccountSettings persistedAccountSettings = (AccountSettings) persistence.read(accountSettings);
+ if (persistedAccountSettings != null) {
+ accountSettings.applyPersistedAccountSettings(persistedAccountSettings);
}
else {
if (Locale.getDefault() != null) {
@@ -103,9 +104,9 @@ class RestrictionsModel extends UIModel {
@Override
public void activate() {
super.activate();
- languageList.setAll(settings.getAcceptedLanguageLocales());
- countryList.setAll(settings.getAcceptedCountries());
- arbitratorList.setAll(settings.getAcceptedArbitrators());
+ languageList.setAll(accountSettings.getAcceptedLanguageLocales());
+ countryList.setAll(accountSettings.getAcceptedCountries());
+ arbitratorList.setAll(accountSettings.getAcceptedArbitrators());
}
@SuppressWarnings("EmptyMethod")
@@ -131,26 +132,26 @@ class RestrictionsModel extends UIModel {
}
void updateArbitratorList() {
- arbitratorList.setAll(settings.getAcceptedArbitrators());
+ arbitratorList.setAll(accountSettings.getAcceptedArbitrators());
}
void addLanguage(Locale locale) {
if (locale != null && !languageList.contains(locale)) {
languageList.add(locale);
- settings.addAcceptedLanguageLocale(locale);
+ accountSettings.addAcceptedLanguageLocale(locale);
}
}
void removeLanguage(Locale locale) {
languageList.remove(locale);
- settings.removeAcceptedLanguageLocale(locale);
+ accountSettings.removeAcceptedLanguageLocale(locale);
saveSettings();
}
void addCountry(Country country) {
if (!countryList.contains(country) && country != null) {
countryList.add(country);
- settings.addAcceptedCountry(country);
+ accountSettings.addAcceptedCountry(country);
saveSettings();
}
}
@@ -158,21 +159,21 @@ class RestrictionsModel extends UIModel {
ObservableList getListWithAllEuroCountries() {
// TODO use Set instead of List
// In addAcceptedCountry there is a check to no add duplicates, so it works correctly for now
- CountryUtil.getAllEuroCountries().stream().forEach(settings::addAcceptedCountry);
- countryList.setAll(settings.getAcceptedCountries());
+ CountryUtil.getAllEuroCountries().stream().forEach(accountSettings::addAcceptedCountry);
+ countryList.setAll(accountSettings.getAcceptedCountries());
saveSettings();
return countryList;
}
void removeCountry(Country country) {
countryList.remove(country);
- settings.removeAcceptedCountry(country);
+ accountSettings.removeAcceptedCountry(country);
saveSettings();
}
void removeArbitrator(Arbitrator arbitrator) {
arbitratorList.remove(arbitrator);
- settings.removeAcceptedArbitrator(arbitrator);
+ accountSettings.removeAcceptedArbitrator(arbitrator);
saveSettings();
}
@@ -182,12 +183,12 @@ class RestrictionsModel extends UIModel {
///////////////////////////////////////////////////////////////////////////////////////////
private void saveSettings() {
- persistence.write(settings);
+ persistence.write(accountSettings);
}
// TODO Remove mock later
private void addMockArbitrator() {
- if (settings.getAcceptedArbitrators().isEmpty() && user.getMessageKeyPair() != null) {
+ if (accountSettings.getAcceptedArbitrators().isEmpty() && user.getMessageKeyPair() != null) {
String pubKeyAsHex = Utils.HEX.encode(new ECKey().getPubKey());
String messagePubKeyAsHex = DSAKeyUtil.getHexStringFromPublicKey(user.getMessagePublicKey());
List languages = new ArrayList<>();
@@ -211,8 +212,8 @@ class RestrictionsModel extends UIModel {
"Bla bla...");
arbitratorList.add(arbitrator);
- settings.addAcceptedArbitrator(arbitrator);
- persistence.write(settings);
+ accountSettings.addAcceptedArbitrator(arbitrator);
+ persistence.write(accountSettings);
messageFacade.addArbitrator(arbitrator);
}
diff --git a/src/main/java/io/bitsquare/gui/main/preferences/PreferencesViewCB.java b/src/main/java/io/bitsquare/gui/main/preferences/PreferencesViewCB.java
index bce48fc96d..0bcabe5728 100644
--- a/src/main/java/io/bitsquare/gui/main/preferences/PreferencesViewCB.java
+++ b/src/main/java/io/bitsquare/gui/main/preferences/PreferencesViewCB.java
@@ -21,7 +21,7 @@ import io.bitsquare.gui.CachedViewCB;
import io.bitsquare.gui.Navigation;
import io.bitsquare.gui.ViewCB;
import io.bitsquare.gui.ViewLoader;
-import io.bitsquare.settings.Settings;
+import io.bitsquare.preferences.ApplicationPreferences;
import java.net.URL;
@@ -42,7 +42,7 @@ public class PreferencesViewCB extends CachedViewCB {
private static final Logger log = LoggerFactory.getLogger(PreferencesViewCB.class);
private final Navigation navigation;
- private Settings settings;
+ private ApplicationPreferences settings;
private Navigation.Listener navigationListener;
private ChangeListener tabChangeListener;
@@ -55,7 +55,7 @@ public class PreferencesViewCB extends CachedViewCB {
///////////////////////////////////////////////////////////////////////////////////////////
@Inject
- PreferencesViewCB(Navigation navigation, Settings settings) {
+ PreferencesViewCB(Navigation navigation, ApplicationPreferences settings) {
super();
this.navigation = navigation;
diff --git a/src/main/java/io/bitsquare/gui/main/trade/createoffer/CreateOfferModel.java b/src/main/java/io/bitsquare/gui/main/trade/createoffer/CreateOfferModel.java
index 9eae9dc269..789bb4575f 100644
--- a/src/main/java/io/bitsquare/gui/main/trade/createoffer/CreateOfferModel.java
+++ b/src/main/java/io/bitsquare/gui/main/trade/createoffer/CreateOfferModel.java
@@ -17,6 +17,7 @@
package io.bitsquare.gui.main.trade.createoffer;
+import io.bitsquare.account.AccountSettings;
import io.bitsquare.arbitrator.Arbitrator;
import io.bitsquare.bank.BankAccount;
import io.bitsquare.btc.AddressEntry;
@@ -28,7 +29,7 @@ import io.bitsquare.gui.util.BSFormatter;
import io.bitsquare.locale.Country;
import io.bitsquare.offer.Direction;
import io.bitsquare.persistence.Persistence;
-import io.bitsquare.settings.Settings;
+import io.bitsquare.preferences.ApplicationPreferences;
import io.bitsquare.trade.TradeManager;
import io.bitsquare.user.User;
@@ -68,7 +69,8 @@ class CreateOfferModel extends UIModel {
private final TradeManager tradeManager;
private final WalletFacade walletFacade;
- private final Settings settings;
+ private final AccountSettings accountSettings;
+ private ApplicationPreferences applicationPreferences;
private final User user;
private final Persistence persistence;
private final BSFormatter formatter;
@@ -110,11 +112,13 @@ class CreateOfferModel extends UIModel {
// non private for testing
@Inject
- public CreateOfferModel(TradeManager tradeManager, WalletFacade walletFacade, Settings settings, User user,
- Persistence persistence, BSFormatter formatter) {
+ public CreateOfferModel(TradeManager tradeManager, WalletFacade walletFacade, AccountSettings accountSettings,
+ ApplicationPreferences applicationPreferences, User user, Persistence persistence,
+ BSFormatter formatter) {
this.tradeManager = tradeManager;
this.walletFacade = walletFacade;
- this.settings = settings;
+ this.accountSettings = accountSettings;
+ this.applicationPreferences = applicationPreferences;
this.user = user;
this.persistence = persistence;
this.formatter = formatter;
@@ -151,12 +155,12 @@ class CreateOfferModel extends UIModel {
applyBankAccount(user.getCurrentBankAccount());
}
- if (settings != null)
- btcCode.bind(settings.btcDenominationProperty());
+ if (accountSettings != null)
+ btcCode.bind(applicationPreferences.btcDenominationProperty());
// we need to set it here already as initWithData is called before activate
- if (settings != null)
- securityDepositAsCoin.set(settings.getSecurityDeposit());
+ if (accountSettings != null)
+ securityDepositAsCoin.set(accountSettings.getSecurityDeposit());
super.initialize();
}
@@ -166,14 +170,14 @@ class CreateOfferModel extends UIModel {
super.activate();
// might be changed after screen change
- if (settings != null) {
+ if (accountSettings != null) {
// set it here again to cover the case of an securityDeposit change after a screen change
- if (settings != null)
- securityDepositAsCoin.set(settings.getSecurityDeposit());
+ if (accountSettings != null)
+ securityDepositAsCoin.set(accountSettings.getSecurityDeposit());
- acceptedCountries.setAll(settings.getAcceptedCountries());
- acceptedLanguages.setAll(settings.getAcceptedLanguageLocales());
- acceptedArbitrators.setAll(settings.getAcceptedArbitrators());
+ acceptedCountries.setAll(accountSettings.getAcceptedCountries());
+ acceptedLanguages.setAll(accountSettings.getAcceptedLanguageLocales());
+ acceptedArbitrators.setAll(accountSettings.getAcceptedArbitrators());
}
}
diff --git a/src/main/java/io/bitsquare/gui/main/trade/offerbook/OfferBookModel.java b/src/main/java/io/bitsquare/gui/main/trade/offerbook/OfferBookModel.java
index 5d79bf4700..3647bc0de7 100644
--- a/src/main/java/io/bitsquare/gui/main/trade/offerbook/OfferBookModel.java
+++ b/src/main/java/io/bitsquare/gui/main/trade/offerbook/OfferBookModel.java
@@ -24,7 +24,7 @@ import io.bitsquare.locale.Country;
import io.bitsquare.locale.CurrencyUtil;
import io.bitsquare.offer.Direction;
import io.bitsquare.offer.Offer;
-import io.bitsquare.settings.Settings;
+import io.bitsquare.preferences.ApplicationPreferences;
import io.bitsquare.trade.TradeManager;
import io.bitsquare.user.User;
@@ -56,7 +56,7 @@ class OfferBookModel extends UIModel {
private final User user;
private final OfferBook offerBook;
- private final Settings settings;
+ private final ApplicationPreferences settings;
private final BSFormatter formatter;
private final TradeManager tradeManager;
@@ -85,7 +85,7 @@ class OfferBookModel extends UIModel {
OfferBookModel(User user,
TradeManager tradeManager,
OfferBook offerBook,
- Settings settings,
+ ApplicationPreferences settings,
BSFormatter formatter) {
this.tradeManager = tradeManager;
this.user = user;
diff --git a/src/main/java/io/bitsquare/gui/main/trade/takeoffer/TakeOfferModel.java b/src/main/java/io/bitsquare/gui/main/trade/takeoffer/TakeOfferModel.java
index cd7020b01f..82790cbc44 100644
--- a/src/main/java/io/bitsquare/gui/main/trade/takeoffer/TakeOfferModel.java
+++ b/src/main/java/io/bitsquare/gui/main/trade/takeoffer/TakeOfferModel.java
@@ -24,7 +24,7 @@ import io.bitsquare.btc.listeners.BalanceListener;
import io.bitsquare.gui.UIModel;
import io.bitsquare.offer.Offer;
import io.bitsquare.persistence.Persistence;
-import io.bitsquare.settings.Settings;
+import io.bitsquare.preferences.ApplicationPreferences;
import io.bitsquare.trade.Trade;
import io.bitsquare.trade.TradeManager;
@@ -56,7 +56,7 @@ class TakeOfferModel extends UIModel {
private final TradeManager tradeManager;
private final WalletFacade walletFacade;
- private final Settings settings;
+ private final ApplicationPreferences settings;
private final Persistence persistence;
private Offer offer;
@@ -83,7 +83,8 @@ class TakeOfferModel extends UIModel {
///////////////////////////////////////////////////////////////////////////////////////////
@Inject
- TakeOfferModel(TradeManager tradeManager, WalletFacade walletFacade, Settings settings, Persistence persistence) {
+ TakeOfferModel(TradeManager tradeManager, WalletFacade walletFacade, ApplicationPreferences settings,
+ Persistence persistence) {
this.tradeManager = tradeManager;
this.walletFacade = walletFacade;
this.settings = settings;
diff --git a/src/main/java/io/bitsquare/gui/util/Transitions.java b/src/main/java/io/bitsquare/gui/util/Transitions.java
index 404df8b892..b59b7929e1 100644
--- a/src/main/java/io/bitsquare/gui/util/Transitions.java
+++ b/src/main/java/io/bitsquare/gui/util/Transitions.java
@@ -17,7 +17,12 @@
package io.bitsquare.gui.util;
+import io.bitsquare.preferences.ApplicationPreferences;
+
+import javax.inject.Inject;
+
import javafx.animation.FadeTransition;
+import javafx.animation.Interpolator;
import javafx.animation.KeyFrame;
import javafx.animation.KeyValue;
import javafx.animation.Timeline;
@@ -33,107 +38,130 @@ import org.slf4j.LoggerFactory;
public class Transitions {
private static final Logger log = LoggerFactory.getLogger(Transitions.class);
- public static final int DURATION = 400;
- private static Timeline removeBlurTimeline;
+ public final static int DEFAULT_DURATION = 400;
- public static void fadeIn(Node node) {
- fadeIn(node, DURATION);
+ private ApplicationPreferences settings;
+ private Timeline removeBlurTimeLine;
+
+ @Inject
+ public Transitions(ApplicationPreferences settings) {
+ this.settings = settings;
}
- public static FadeTransition fadeIn(Node node, int duration) {
- FadeTransition fade = new FadeTransition(Duration.millis(duration), node);
- fade.setFromValue(node.getOpacity());
- fade.setToValue(1.0);
- fade.play();
- return fade;
+ private int evaluateDuration(int duration) {
+ return settings.getUseAnimations() ? duration : 1;
}
- public static FadeTransition fadeOut(Node node) {
- return fadeOut(node, DURATION);
+ // Fade
+ public void fadeIn(Node node) {
+ fadeIn(node, DEFAULT_DURATION);
}
- public static FadeTransition fadeOut(Node node, int duration) {
- FadeTransition fade = new FadeTransition(Duration.millis(duration), node);
+ public void fadeIn(Node node, int duration) {
+ if (settings.getUseEffects()) {
+ FadeTransition fade = new FadeTransition(Duration.millis(evaluateDuration(duration)), node);
+ fade.setFromValue(node.getOpacity());
+ fade.setToValue(1.0);
+ fade.play();
+ }
+ }
+
+ public FadeTransition fadeOut(Node node) {
+ return fadeOut(node, DEFAULT_DURATION);
+ }
+
+ public FadeTransition fadeOut(Node node, int duration) {
+ if (!settings.getUseEffects())
+ duration = 1;
+
+ FadeTransition fade = new FadeTransition(Duration.millis(evaluateDuration(duration)), node);
fade.setFromValue(node.getOpacity());
fade.setToValue(0.0);
fade.play();
return fade;
}
- public static FadeTransition fadeOutAndRemove(Node node) {
- return fadeOutAndRemove(node, DURATION);
+ public void fadeOutAndRemove(Node node) {
+ fadeOutAndRemove(node, DEFAULT_DURATION);
}
- public static FadeTransition fadeOutAndRemove(Node node, int duration) {
- FadeTransition fade = fadeOut(node, duration);
+ public void fadeOutAndRemove(Node node, int duration) {
+ if (!settings.getUseEffects())
+ duration = 1;
+
+ FadeTransition fade = fadeOut(node, evaluateDuration(duration));
+ fade.setInterpolator(Interpolator.EASE_IN);
fade.setOnFinished(actionEvent -> {
((Pane) (node.getParent())).getChildren().remove(node);
Profiler.printMsgWithTime("fadeOutAndRemove");
});
- return fade;
}
- public static void blur(Node node) {
- blur(node, DURATION, true, false);
+ // Blur
+ public void blur(Node node) {
+ blur(node, DEFAULT_DURATION, true, false);
}
- public static Timeline blur(Node node, int duration, boolean useDarken, boolean removeNode) {
- if (removeBlurTimeline != null)
- removeBlurTimeline.stop();
+ public void blur(Node node, int duration, boolean useDarken, boolean removeNode) {
+ if (settings.getUseEffects()) {
+ if (removeBlurTimeLine != null)
+ removeBlurTimeLine.stop();
- GaussianBlur blur = new GaussianBlur(0.0);
- Timeline timeline = new Timeline();
- KeyValue kv1 = new KeyValue(blur.radiusProperty(), 15.0);
- KeyFrame kf1 = new KeyFrame(Duration.millis(duration), kv1);
+ GaussianBlur blur = new GaussianBlur(0.0);
+ Timeline timeline = new Timeline();
+ KeyValue kv1 = new KeyValue(blur.radiusProperty(), 15.0);
+ KeyFrame kf1 = new KeyFrame(Duration.millis(evaluateDuration(duration)), kv1);
- if (useDarken) {
- ColorAdjust darken = new ColorAdjust();
- darken.setBrightness(0.0);
- blur.setInput(darken);
+ if (useDarken) {
+ ColorAdjust darken = new ColorAdjust();
+ darken.setBrightness(0.0);
+ blur.setInput(darken);
- KeyValue kv2 = new KeyValue(darken.brightnessProperty(), -0.1);
- KeyFrame kf2 = new KeyFrame(Duration.millis(duration), kv2);
- timeline.getKeyFrames().addAll(kf1, kf2);
+ KeyValue kv2 = new KeyValue(darken.brightnessProperty(), -0.1);
+ KeyFrame kf2 = new KeyFrame(Duration.millis(evaluateDuration(duration)), kv2);
+ timeline.getKeyFrames().addAll(kf1, kf2);
+ }
+ else {
+ timeline.getKeyFrames().addAll(kf1);
+ }
+ node.setEffect(blur);
+ if (removeNode) timeline.setOnFinished(actionEvent -> Platform.runLater(() -> ((Pane) (node.getParent()))
+ .getChildren().remove(node)));
+ timeline.play();
}
- else {
- timeline.getKeyFrames().addAll(kf1);
- }
- node.setEffect(blur);
- if (removeNode) timeline.setOnFinished(actionEvent -> Platform.runLater(() -> ((Pane) (node.getParent()))
- .getChildren().remove(node)));
- timeline.play();
- return timeline;
}
- public static void removeBlur(Node node) {
- removeBlur(node, DURATION, false);
+ public void removeBlur(Node node) {
+ removeBlur(node, DEFAULT_DURATION, false);
}
- public static void removeBlur(Node node, int duration, boolean useDarken) {
- if (node != null) {
- GaussianBlur blur = (GaussianBlur) node.getEffect();
- if (blur != null) {
- removeBlurTimeline = new Timeline();
- KeyValue kv1 = new KeyValue(blur.radiusProperty(), 0.0);
- KeyFrame kf1 = new KeyFrame(Duration.millis(DURATION), kv1);
+ public void removeBlur(Node node, int duration, boolean useDarken) {
+ if (settings.getUseEffects()) {
+ if (node != null) {
+ GaussianBlur blur = (GaussianBlur) node.getEffect();
+ if (blur != null) {
+ removeBlurTimeLine = new Timeline();
+ KeyValue kv1 = new KeyValue(blur.radiusProperty(), 0.0);
+ KeyFrame kf1 = new KeyFrame(Duration.millis(evaluateDuration(duration)), kv1);
- if (useDarken) {
- ColorAdjust darken = (ColorAdjust) blur.getInput();
+ if (useDarken) {
+ ColorAdjust darken = (ColorAdjust) blur.getInput();
- KeyValue kv2 = new KeyValue(darken.brightnessProperty(), 0.0);
- KeyFrame kf2 = new KeyFrame(Duration.millis(duration), kv2);
- removeBlurTimeline.getKeyFrames().addAll(kf1, kf2);
+ KeyValue kv2 = new KeyValue(darken.brightnessProperty(), 0.0);
+ KeyFrame kf2 = new KeyFrame(Duration.millis(evaluateDuration(duration)), kv2);
+ removeBlurTimeLine.getKeyFrames().addAll(kf1, kf2);
+ }
+ else {
+ removeBlurTimeLine.getKeyFrames().addAll(kf1);
+ }
+
+ removeBlurTimeLine.setOnFinished(actionEvent -> {
+ node.setEffect(null);
+ removeBlurTimeLine = null;
+ });
+ removeBlurTimeLine.play();
}
- else {
- removeBlurTimeline.getKeyFrames().addAll(kf1);
- }
-
- removeBlurTimeline.setOnFinished(actionEvent -> {
- node.setEffect(null);
- removeBlurTimeline = null;
- });
- removeBlurTimeline.play();
}
}
}
diff --git a/src/main/java/io/bitsquare/preferences/ApplicationPreferences.java b/src/main/java/io/bitsquare/preferences/ApplicationPreferences.java
new file mode 100644
index 0000000000..b8b1a10072
--- /dev/null
+++ b/src/main/java/io/bitsquare/preferences/ApplicationPreferences.java
@@ -0,0 +1,125 @@
+/*
+ * This file is part of Bitsquare.
+ *
+ * Bitsquare is free software: you can redistribute it and/or modify it
+ * under the terms of the GNU Affero General Public License as published by
+ * the Free Software Foundation, either version 3 of the License, or (at
+ * your option) any later version.
+ *
+ * Bitsquare is distributed in the hope that it will be useful, but WITHOUT
+ * ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or
+ * FITNESS FOR A PARTICULAR PURPOSE. See the GNU Affero General Public
+ * License for more details.
+ *
+ * You should have received a copy of the GNU Affero General Public License
+ * along with Bitsquare. If not, see .
+ */
+
+package io.bitsquare.preferences;
+
+import org.bitcoinj.utils.MonetaryFormat;
+
+import java.io.Serializable;
+
+import javafx.beans.property.BooleanProperty;
+import javafx.beans.property.SimpleBooleanProperty;
+import javafx.beans.property.SimpleStringProperty;
+import javafx.beans.property.StringProperty;
+
+public class ApplicationPreferences implements Serializable {
+ private static final long serialVersionUID = 7995048077355006861L;
+
+ // Needed for persistence as Property objects are transient (not serializable)
+ // Will be probably removed when we have another persistence solution in place
+ private String btcDenominationString = MonetaryFormat.CODE_BTC;
+ private Boolean useAnimationsBoolean = true;
+ private Boolean useEffectsBoolean = true;
+
+ final transient StringProperty btcDenomination = new SimpleStringProperty(btcDenominationString);
+ final transient BooleanProperty useAnimations = new SimpleBooleanProperty(useAnimationsBoolean);
+ final transient BooleanProperty useEffects = new SimpleBooleanProperty(useEffectsBoolean);
+
+
+ ///////////////////////////////////////////////////////////////////////////////////////////
+ // Constructor
+ ///////////////////////////////////////////////////////////////////////////////////////////
+
+ public ApplicationPreferences() {
+ }
+
+
+ ///////////////////////////////////////////////////////////////////////////////////////////
+ // Public API
+ ///////////////////////////////////////////////////////////////////////////////////////////
+
+ public void applyPersistedSettings(ApplicationPreferences persistedSettings) {
+ if (persistedSettings != null) {
+ setBtcDenomination(persistedSettings.getBtcDenominationString());
+ setUseAnimations(persistedSettings.getUseAnimationsBooleanBoolean());
+ setUseEffects(persistedSettings.getUseEffectsBoolean());
+ }
+ }
+
+ ///////////////////////////////////////////////////////////////////////////////////////////
+ // Setters/Getters
+ ///////////////////////////////////////////////////////////////////////////////////////////
+
+ // btcDenomination
+ public String getBtcDenomination() {
+ return btcDenomination.get();
+ }
+
+ public StringProperty btcDenominationProperty() {
+ return btcDenomination;
+ }
+
+ public void setBtcDenomination(String btcDenomination) {
+ btcDenominationString = btcDenomination;
+ this.btcDenomination.set(btcDenomination);
+ }
+
+ // for persistence
+ public String getBtcDenominationString() {
+ return btcDenominationString;
+ }
+
+
+ // useAnimations
+ public boolean getUseAnimations() {
+ return useAnimations.get();
+ }
+
+ public BooleanProperty useAnimationsProperty() {
+ return useAnimations;
+ }
+
+ public void setUseAnimations(boolean useAnimations) {
+ useAnimationsBoolean = useAnimations;
+ this.useAnimations.set(useAnimations);
+ }
+
+ // for persistence
+ public boolean getUseAnimationsBooleanBoolean() {
+ return useAnimationsBoolean;
+ }
+
+ // useEffects
+ public boolean getUseEffects() {
+ return useEffects.get();
+ }
+
+ public BooleanProperty useEffectsProperty() {
+ return useEffects;
+ }
+
+ public void setUseEffects(boolean useEffects) {
+ useEffectsBoolean = useEffects;
+ this.useEffects.set(useEffects);
+ }
+
+ // for persistence
+ public boolean getUseEffectsBoolean() {
+ return useEffectsBoolean;
+ }
+
+}
diff --git a/src/main/java/io/bitsquare/trade/TradeManager.java b/src/main/java/io/bitsquare/trade/TradeManager.java
index 1d9d7d7dc4..4bc5594940 100644
--- a/src/main/java/io/bitsquare/trade/TradeManager.java
+++ b/src/main/java/io/bitsquare/trade/TradeManager.java
@@ -17,6 +17,7 @@
package io.bitsquare.trade;
+import io.bitsquare.account.AccountSettings;
import io.bitsquare.btc.BlockChainFacade;
import io.bitsquare.btc.WalletFacade;
import io.bitsquare.crypto.CryptoFacade;
@@ -27,7 +28,6 @@ import io.bitsquare.offer.Direction;
import io.bitsquare.offer.Offer;
import io.bitsquare.offer.OfferRepository;
import io.bitsquare.persistence.Persistence;
-import io.bitsquare.settings.Settings;
import io.bitsquare.trade.handlers.TransactionResultHandler;
import io.bitsquare.trade.protocol.createoffer.CreateOfferCoordinator;
import io.bitsquare.trade.protocol.trade.TradeMessage;
@@ -73,7 +73,7 @@ public class TradeManager {
private static final Logger log = LoggerFactory.getLogger(TradeManager.class);
private final User user;
- private final Settings settings;
+ private final AccountSettings accountSettings;
private final Persistence persistence;
private final MessageFacade messageFacade;
private final BlockChainFacade blockChainFacade;
@@ -99,11 +99,12 @@ public class TradeManager {
///////////////////////////////////////////////////////////////////////////////////////////
@Inject
- public TradeManager(User user, Settings settings, Persistence persistence, MessageFacade messageFacade,
+ public TradeManager(User user, AccountSettings accountSettings, Persistence persistence,
+ MessageFacade messageFacade,
BlockChainFacade blockChainFacade, WalletFacade walletFacade, CryptoFacade cryptoFacade,
OfferRepository offerRepository) {
this.user = user;
- this.settings = settings;
+ this.accountSettings = accountSettings;
this.persistence = persistence;
this.messageFacade = messageFacade;
this.blockChainFacade = blockChainFacade;
@@ -161,10 +162,10 @@ public class TradeManager {
user.getCurrentBankAccount().getCurrency(),
user.getCurrentBankAccount().getCountry(),
user.getCurrentBankAccount().getUid(),
- settings.getAcceptedArbitrators(),
- settings.getSecurityDeposit(),
- settings.getAcceptedCountries(),
- settings.getAcceptedLanguageLocales());
+ accountSettings.getAcceptedArbitrators(),
+ accountSettings.getSecurityDeposit(),
+ accountSettings.getAcceptedCountries(),
+ accountSettings.getAcceptedLanguageLocales());
CreateOfferCoordinator createOfferCoordinator = new CreateOfferCoordinator(
offer,
diff --git a/src/test/java/io/bitsquare/gui/main/trade/createoffer/CreateOfferPMTest.java b/src/test/java/io/bitsquare/gui/main/trade/createoffer/CreateOfferPMTest.java
index 26e907705b..d6d60dd6ce 100644
--- a/src/test/java/io/bitsquare/gui/main/trade/createoffer/CreateOfferPMTest.java
+++ b/src/test/java/io/bitsquare/gui/main/trade/createoffer/CreateOfferPMTest.java
@@ -48,7 +48,7 @@ public class CreateOfferPMTest {
BSFormatter formatter = new BSFormatter(new User());
formatter.setLocale(Locale.US);
formatter.setFiatCurrencyCode("USD");
- model = new CreateOfferModel(null, null, null, null, null, formatter);
+ model = new CreateOfferModel(null, null, null, null, null, null, formatter);
presenter = new CreateOfferPM(model, new FiatValidator(null), new BtcValidator(), formatter);
presenter.initialize();