mirror of
https://github.com/haveno-dex/haveno.git
synced 2025-06-25 15:20:40 -04:00
Add sticky market price checkbox to settings: If sticky market price is selected market price does not change with currency selection, otherwise it is context sensitive.
This commit is contained in:
parent
1c51efa704
commit
b4fdb2e059
10 changed files with 113 additions and 41 deletions
|
@ -156,6 +156,10 @@ public class CurrencyUtil {
|
||||||
return !(isCryptoCurrency(currencyCode)) && Currency.getInstance(currencyCode) != null;
|
return !(isCryptoCurrency(currencyCode)) && Currency.getInstance(currencyCode) != null;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
public static Optional<FiatCurrency> getFiatCurrency(String currencyCode) {
|
||||||
|
return allSortedFiatCurrencies.stream().filter(e -> e.getCode().equals(currencyCode)).findAny();
|
||||||
|
}
|
||||||
|
|
||||||
@SuppressWarnings("WeakerAccess")
|
@SuppressWarnings("WeakerAccess")
|
||||||
public static boolean isCryptoCurrency(String currencyCode) {
|
public static boolean isCryptoCurrency(String currencyCode) {
|
||||||
return getAllSortedCryptoCurrencies().stream().filter(e -> e.getCode().equals(currencyCode)).findAny().isPresent();
|
return getAllSortedCryptoCurrencies().stream().filter(e -> e.getCode().equals(currencyCode)).findAny().isPresent();
|
||||||
|
|
|
@ -108,6 +108,7 @@ public final class Preferences implements Persistable {
|
||||||
private long nonTradeTxFeePerKB = FeePolicy.getNonTradeFeePerKb().value;
|
private long nonTradeTxFeePerKB = FeePolicy.getNonTradeFeePerKb().value;
|
||||||
private double maxPriceDistanceInPercent;
|
private double maxPriceDistanceInPercent;
|
||||||
private boolean useInvertedMarketPrice;
|
private boolean useInvertedMarketPrice;
|
||||||
|
private boolean useStickyMarketPrice = false;
|
||||||
|
|
||||||
// Observable wrappers
|
// Observable wrappers
|
||||||
transient private final StringProperty btcDenominationProperty = new SimpleStringProperty(btcDenomination);
|
transient private final StringProperty btcDenominationProperty = new SimpleStringProperty(btcDenomination);
|
||||||
|
@ -158,6 +159,7 @@ public final class Preferences implements Persistable {
|
||||||
preferredTradeCurrency = persisted.getPreferredTradeCurrency();
|
preferredTradeCurrency = persisted.getPreferredTradeCurrency();
|
||||||
defaultTradeCurrency = preferredTradeCurrency;
|
defaultTradeCurrency = preferredTradeCurrency;
|
||||||
useTorForBitcoinJ = persisted.getUseTorForBitcoinJ();
|
useTorForBitcoinJ = persisted.getUseTorForBitcoinJ();
|
||||||
|
useStickyMarketPrice = persisted.getUseStickyMarketPrice();
|
||||||
showOwnOffersInOfferBook = persisted.getShowOwnOffersInOfferBook();
|
showOwnOffersInOfferBook = persisted.getShowOwnOffersInOfferBook();
|
||||||
maxPriceDistanceInPercent = persisted.getMaxPriceDistanceInPercent();
|
maxPriceDistanceInPercent = persisted.getMaxPriceDistanceInPercent();
|
||||||
// Backward compatible to version 0.3.6. Can be removed after a while
|
// Backward compatible to version 0.3.6. Can be removed after a while
|
||||||
|
@ -359,6 +361,10 @@ public final class Preferences implements Persistable {
|
||||||
return getUseInvertedMarketPrice();
|
return getUseInvertedMarketPrice();
|
||||||
}
|
}
|
||||||
|
|
||||||
|
public void setUseStickyMarketPrice(boolean useStickyMarketPrice) {
|
||||||
|
this.useStickyMarketPrice = useStickyMarketPrice;
|
||||||
|
storage.queueUpForSave();
|
||||||
|
}
|
||||||
|
|
||||||
///////////////////////////////////////////////////////////////////////////////////////////
|
///////////////////////////////////////////////////////////////////////////////////////////
|
||||||
// Getter
|
// Getter
|
||||||
|
@ -476,6 +482,10 @@ public final class Preferences implements Persistable {
|
||||||
return maxPriceDistanceInPercent;
|
return maxPriceDistanceInPercent;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
public boolean getUseStickyMarketPrice() {
|
||||||
|
return useStickyMarketPrice;
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
///////////////////////////////////////////////////////////////////////////////////////////
|
///////////////////////////////////////////////////////////////////////////////////////////
|
||||||
// Private
|
// Private
|
||||||
|
|
|
@ -137,10 +137,10 @@ public class MainView extends InitializableView<StackPane, MainViewModel> {
|
||||||
|
|
||||||
priceComboBox.getSelectionModel().selectedItemProperty().addListener((observable, oldValue, newValue) -> {
|
priceComboBox.getSelectionModel().selectedItemProperty().addListener((observable, oldValue, newValue) -> {
|
||||||
model.setPriceFeedComboBoxItem(newValue);
|
model.setPriceFeedComboBoxItem(newValue);
|
||||||
|
|
||||||
});
|
});
|
||||||
selectedPriceFeedItemListender = (observable, oldValue, newValue) -> {
|
selectedPriceFeedItemListender = (observable, oldValue, newValue) -> {
|
||||||
priceComboBox.getSelectionModel().select(newValue);
|
if (newValue != null)
|
||||||
|
priceComboBox.getSelectionModel().select(newValue);
|
||||||
|
|
||||||
};
|
};
|
||||||
model.selectedPriceFeedComboBoxItemProperty.addListener(selectedPriceFeedItemListender);
|
model.selectedPriceFeedComboBoxItemProperty.addListener(selectedPriceFeedItemListender);
|
||||||
|
|
|
@ -711,15 +711,34 @@ public class MainViewModel implements ViewModel {
|
||||||
(useInvertedMarketPrice ? " BTC/" + marketPriceCurrency : " " + marketPriceCurrency + "/BTC"));
|
(useInvertedMarketPrice ? " BTC/" + marketPriceCurrency : " " + marketPriceCurrency + "/BTC"));
|
||||||
|
|
||||||
marketPriceBinding.subscribe((observable, oldValue, newValue) -> {
|
marketPriceBinding.subscribe((observable, oldValue, newValue) -> {
|
||||||
if (selectedPriceFeedComboBoxItemProperty.get() == null) {
|
if (newValue != null && !newValue.equals(oldValue)) {
|
||||||
findPriceFeedComboBoxItem(preferences.getPreferredTradeCurrency().getCode())
|
|
||||||
.ifPresent(item -> {
|
String code = preferences.getUseStickyMarketPrice() ?
|
||||||
item.setDisplayString(newValue);
|
preferences.getPreferredTradeCurrency().getCode() :
|
||||||
selectedPriceFeedComboBoxItemProperty.set(item);
|
priceFeed.currencyCodeProperty().get();
|
||||||
|
Optional<PriceFeedComboBoxItem> itemOptional = findPriceFeedComboBoxItem(code);
|
||||||
|
if (itemOptional.isPresent()) {
|
||||||
|
if (selectedPriceFeedComboBoxItemProperty.get() == null || !preferences.getUseStickyMarketPrice()) {
|
||||||
|
itemOptional.get().setDisplayString(newValue);
|
||||||
|
selectedPriceFeedComboBoxItemProperty.set(itemOptional.get());
|
||||||
|
}
|
||||||
|
} else {
|
||||||
|
if (CurrencyUtil.isCryptoCurrency(code)) {
|
||||||
|
CurrencyUtil.getCryptoCurrency(code).ifPresent(cryptoCurrency -> {
|
||||||
|
preferences.addCryptoCurrency(cryptoCurrency);
|
||||||
|
fillPriceFeedComboBoxItems();
|
||||||
});
|
});
|
||||||
|
} else {
|
||||||
|
CurrencyUtil.getFiatCurrency(code).ifPresent(fiatCurrency -> {
|
||||||
|
preferences.addFiatCurrency(fiatCurrency);
|
||||||
|
fillPriceFeedComboBoxItems();
|
||||||
|
});
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
if (selectedPriceFeedComboBoxItemProperty.get() != null)
|
||||||
|
selectedPriceFeedComboBoxItemProperty.get().setDisplayString(newValue);
|
||||||
}
|
}
|
||||||
if (selectedPriceFeedComboBoxItemProperty.get() != null)
|
|
||||||
selectedPriceFeedComboBoxItemProperty.get().setDisplayString(newValue);
|
|
||||||
});
|
});
|
||||||
|
|
||||||
priceFeedAllLoadedSubscription = EasyBind.subscribe(priceFeed.currenciesUpdateFlagProperty(), newPriceUpdate -> setMarketPriceInItems());
|
priceFeedAllLoadedSubscription = EasyBind.subscribe(priceFeed.currenciesUpdateFlagProperty(), newPriceUpdate -> setMarketPriceInItems());
|
||||||
|
@ -755,7 +774,14 @@ public class MainViewModel implements ViewModel {
|
||||||
}
|
}
|
||||||
|
|
||||||
public void setPriceFeedComboBoxItem(PriceFeedComboBoxItem item) {
|
public void setPriceFeedComboBoxItem(PriceFeedComboBoxItem item) {
|
||||||
if (item != null) {
|
if (!preferences.getUseStickyMarketPrice()) {
|
||||||
|
Optional<PriceFeedComboBoxItem> itemOptional = findPriceFeedComboBoxItem(priceFeed.currencyCodeProperty().get());
|
||||||
|
if (itemOptional.isPresent())
|
||||||
|
selectedPriceFeedComboBoxItemProperty.set(itemOptional.get());
|
||||||
|
else
|
||||||
|
findPriceFeedComboBoxItem(preferences.getPreferredTradeCurrency().getCode())
|
||||||
|
.ifPresent(item2 -> selectedPriceFeedComboBoxItemProperty.set(item2));
|
||||||
|
} else if (item != null) {
|
||||||
selectedPriceFeedComboBoxItemProperty.set(item);
|
selectedPriceFeedComboBoxItemProperty.set(item);
|
||||||
priceFeed.setCurrencyCode(item.currencyCode);
|
priceFeed.setCurrencyCode(item.currencyCode);
|
||||||
} else {
|
} else {
|
||||||
|
|
|
@ -74,7 +74,9 @@ class MarketsChartsViewModel extends ActivatableViewModel {
|
||||||
offerBookListItems.addListener(listChangeListener);
|
offerBookListItems.addListener(listChangeListener);
|
||||||
offerBook.fillOfferBookListItems();
|
offerBook.fillOfferBookListItems();
|
||||||
updateChartData(offerBookListItems);
|
updateChartData(offerBookListItems);
|
||||||
//priceFeed.setCurrencyCode(tradeCurrency.get().getCode());
|
|
||||||
|
if (!preferences.getUseStickyMarketPrice())
|
||||||
|
priceFeed.setCurrencyCode(tradeCurrency.get().getCode());
|
||||||
}
|
}
|
||||||
|
|
||||||
@Override
|
@Override
|
||||||
|
@ -136,7 +138,9 @@ class MarketsChartsViewModel extends ActivatableViewModel {
|
||||||
public void onSetTradeCurrency(TradeCurrency tradeCurrency) {
|
public void onSetTradeCurrency(TradeCurrency tradeCurrency) {
|
||||||
this.tradeCurrency.set(tradeCurrency);
|
this.tradeCurrency.set(tradeCurrency);
|
||||||
updateChartData(offerBookListItems);
|
updateChartData(offerBookListItems);
|
||||||
//priceFeed.setCurrencyCode(tradeCurrency.getCode());
|
|
||||||
|
if (!preferences.getUseStickyMarketPrice())
|
||||||
|
priceFeed.setCurrencyCode(tradeCurrency.getCode());
|
||||||
}
|
}
|
||||||
|
|
||||||
///////////////////////////////////////////////////////////////////////////////////////////
|
///////////////////////////////////////////////////////////////////////////////////////////
|
||||||
|
|
|
@ -31,6 +31,7 @@ import io.bitsquare.gui.Navigation;
|
||||||
import io.bitsquare.gui.common.model.ActivatableDataModel;
|
import io.bitsquare.gui.common.model.ActivatableDataModel;
|
||||||
import io.bitsquare.gui.main.overlays.notifications.Notification;
|
import io.bitsquare.gui.main.overlays.notifications.Notification;
|
||||||
import io.bitsquare.gui.util.BSFormatter;
|
import io.bitsquare.gui.util.BSFormatter;
|
||||||
|
import io.bitsquare.locale.CurrencyUtil;
|
||||||
import io.bitsquare.locale.TradeCurrency;
|
import io.bitsquare.locale.TradeCurrency;
|
||||||
import io.bitsquare.p2p.P2PService;
|
import io.bitsquare.p2p.P2PService;
|
||||||
import io.bitsquare.payment.*;
|
import io.bitsquare.payment.*;
|
||||||
|
@ -176,8 +177,8 @@ class CreateOfferDataModel extends ActivatableDataModel {
|
||||||
|
|
||||||
paymentAccounts.setAll(user.getPaymentAccounts());
|
paymentAccounts.setAll(user.getPaymentAccounts());
|
||||||
|
|
||||||
/*if (isTabSelected)
|
if (!preferences.getUseStickyMarketPrice() && isTabSelected)
|
||||||
priceFeed.setCurrencyCode(tradeCurrencyCode.get());*/
|
priceFeed.setCurrencyCode(tradeCurrencyCode.get());
|
||||||
|
|
||||||
updateBalance();
|
updateBalance();
|
||||||
}
|
}
|
||||||
|
@ -232,7 +233,8 @@ class CreateOfferDataModel extends ActivatableDataModel {
|
||||||
|
|
||||||
tradeCurrencyCode.set(this.tradeCurrency.getCode());
|
tradeCurrencyCode.set(this.tradeCurrency.getCode());
|
||||||
|
|
||||||
//priceFeed.setCurrencyCode(tradeCurrencyCode.get());
|
if (!preferences.getUseStickyMarketPrice())
|
||||||
|
priceFeed.setCurrencyCode(tradeCurrencyCode.get());
|
||||||
|
|
||||||
calculateVolume();
|
calculateVolume();
|
||||||
calculateTotalToPay();
|
calculateTotalToPay();
|
||||||
|
@ -241,8 +243,8 @@ class CreateOfferDataModel extends ActivatableDataModel {
|
||||||
|
|
||||||
void onTabSelected(boolean isSelected) {
|
void onTabSelected(boolean isSelected) {
|
||||||
this.isTabSelected = isSelected;
|
this.isTabSelected = isSelected;
|
||||||
/*if (isTabSelected)
|
if (!preferences.getUseStickyMarketPrice() && isTabSelected)
|
||||||
priceFeed.setCurrencyCode(tradeCurrencyCode.get());*/
|
priceFeed.setCurrencyCode(tradeCurrencyCode.get());
|
||||||
}
|
}
|
||||||
|
|
||||||
///////////////////////////////////////////////////////////////////////////////////////////
|
///////////////////////////////////////////////////////////////////////////////////////////
|
||||||
|
@ -306,13 +308,27 @@ class CreateOfferDataModel extends ActivatableDataModel {
|
||||||
public void onCurrencySelected(TradeCurrency tradeCurrency) {
|
public void onCurrencySelected(TradeCurrency tradeCurrency) {
|
||||||
if (tradeCurrency != null) {
|
if (tradeCurrency != null) {
|
||||||
this.tradeCurrency = tradeCurrency;
|
this.tradeCurrency = tradeCurrency;
|
||||||
String code = tradeCurrency.getCode();
|
final String code = tradeCurrency.getCode();
|
||||||
tradeCurrencyCode.set(code);
|
tradeCurrencyCode.set(code);
|
||||||
|
|
||||||
if (paymentAccount != null)
|
if (paymentAccount != null)
|
||||||
paymentAccount.setSelectedTradeCurrency(tradeCurrency);
|
paymentAccount.setSelectedTradeCurrency(tradeCurrency);
|
||||||
|
|
||||||
//priceFeed.setCurrencyCode(code);
|
if (!preferences.getUseStickyMarketPrice())
|
||||||
|
priceFeed.setCurrencyCode(code);
|
||||||
|
|
||||||
|
Optional<TradeCurrency> tradeCurrencyOptional = preferences.getTradeCurrenciesAsObservable().stream().filter(e -> e.getCode().equals(code)).findAny();
|
||||||
|
if (!tradeCurrencyOptional.isPresent()) {
|
||||||
|
if (CurrencyUtil.isCryptoCurrency(code)) {
|
||||||
|
CurrencyUtil.getCryptoCurrency(code).ifPresent(cryptoCurrency -> {
|
||||||
|
preferences.addCryptoCurrency(cryptoCurrency);
|
||||||
|
});
|
||||||
|
} else {
|
||||||
|
CurrencyUtil.getFiatCurrency(code).ifPresent(fiatCurrency -> {
|
||||||
|
preferences.addFiatCurrency(fiatCurrency);
|
||||||
|
});
|
||||||
|
}
|
||||||
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
|
@ -165,6 +165,9 @@ public class CreateOfferView extends ActivatableViewAndModel<AnchorPane, CreateO
|
||||||
|
|
||||||
@Override
|
@Override
|
||||||
protected void activate() {
|
protected void activate() {
|
||||||
|
currencyComboBox.setPrefWidth(250);
|
||||||
|
paymentAccountsComboBox.setPrefWidth(250);
|
||||||
|
|
||||||
addBindings();
|
addBindings();
|
||||||
addListeners();
|
addListeners();
|
||||||
addSubscriptions();
|
addSubscriptions();
|
||||||
|
|
|
@ -159,12 +159,12 @@ class OfferBookViewModel extends ActivatableViewModel {
|
||||||
}
|
}
|
||||||
|
|
||||||
private void setMarketPriceFeedCurrency() {
|
private void setMarketPriceFeedCurrency() {
|
||||||
/*if (isTabSelected) {
|
if (!preferences.getUseStickyMarketPrice() && isTabSelected) {
|
||||||
if (showAllTradeCurrenciesProperty.get())
|
if (showAllTradeCurrenciesProperty.get())
|
||||||
priceFeed.setCurrencyCode(CurrencyUtil.getDefaultTradeCurrency().getCode());
|
priceFeed.setCurrencyCode(CurrencyUtil.getDefaultTradeCurrency().getCode());
|
||||||
else
|
else
|
||||||
priceFeed.setCurrencyCode(tradeCurrencyCode.get());
|
priceFeed.setCurrencyCode(tradeCurrencyCode.get());
|
||||||
}*/
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
///////////////////////////////////////////////////////////////////////////////////////////
|
///////////////////////////////////////////////////////////////////////////////////////////
|
||||||
|
@ -186,19 +186,21 @@ class OfferBookViewModel extends ActivatableViewModel {
|
||||||
///////////////////////////////////////////////////////////////////////////////////////////
|
///////////////////////////////////////////////////////////////////////////////////////////
|
||||||
|
|
||||||
public void onSetTradeCurrency(TradeCurrency tradeCurrency) {
|
public void onSetTradeCurrency(TradeCurrency tradeCurrency) {
|
||||||
String code = tradeCurrency.getCode();
|
if (tradeCurrency != null) {
|
||||||
boolean showAllEntry = isShowAllEntry(code);
|
String code = tradeCurrency.getCode();
|
||||||
showAllTradeCurrenciesProperty.set(showAllEntry);
|
boolean showAllEntry = isShowAllEntry(code);
|
||||||
if (isEditEntry(code))
|
showAllTradeCurrenciesProperty.set(showAllEntry);
|
||||||
navigation.navigateTo(MainView.class, SettingsView.class, PreferencesView.class);
|
if (isEditEntry(code))
|
||||||
else if (!showAllEntry) {
|
navigation.navigateTo(MainView.class, SettingsView.class, PreferencesView.class);
|
||||||
this.selectedTradeCurrency = tradeCurrency;
|
else if (!showAllEntry) {
|
||||||
tradeCurrencyCode.set(code);
|
this.selectedTradeCurrency = tradeCurrency;
|
||||||
|
tradeCurrencyCode.set(code);
|
||||||
|
}
|
||||||
|
|
||||||
|
setMarketPriceFeedCurrency();
|
||||||
|
|
||||||
|
filterList();
|
||||||
}
|
}
|
||||||
|
|
||||||
setMarketPriceFeedCurrency();
|
|
||||||
|
|
||||||
filterList();
|
|
||||||
}
|
}
|
||||||
|
|
||||||
public void onSetPaymentMethod(PaymentMethod paymentMethod) {
|
public void onSetPaymentMethod(PaymentMethod paymentMethod) {
|
||||||
|
|
|
@ -136,7 +136,7 @@ class TakeOfferDataModel extends ActivatableDataModel {
|
||||||
// if (isWalletFunded.get())
|
// if (isWalletFunded.get())
|
||||||
// feeFromFundingTxProperty.set(FeePolicy.getMinRequiredFeeForFundingTx());
|
// feeFromFundingTxProperty.set(FeePolicy.getMinRequiredFeeForFundingTx());
|
||||||
|
|
||||||
/*if (isTabSelected)*/
|
if (!preferences.getUseStickyMarketPrice() && isTabSelected)
|
||||||
priceFeed.setCurrencyCode(offer.getCurrencyCode());
|
priceFeed.setCurrencyCode(offer.getCurrencyCode());
|
||||||
|
|
||||||
tradeManager.checkOfferAvailability(offer, () -> {
|
tradeManager.checkOfferAvailability(offer, () -> {
|
||||||
|
@ -207,13 +207,15 @@ class TakeOfferDataModel extends ActivatableDataModel {
|
||||||
};
|
};
|
||||||
|
|
||||||
offer.resetState();
|
offer.resetState();
|
||||||
//priceFeed.setCurrencyCode(offer.getCurrencyCode());
|
|
||||||
|
if (!preferences.getUseStickyMarketPrice())
|
||||||
|
priceFeed.setCurrencyCode(offer.getCurrencyCode());
|
||||||
}
|
}
|
||||||
|
|
||||||
void onTabSelected(boolean isSelected) {
|
void onTabSelected(boolean isSelected) {
|
||||||
this.isTabSelected = isSelected;
|
this.isTabSelected = isSelected;
|
||||||
/*if (isTabSelected)
|
if (!preferences.getUseStickyMarketPrice() && isTabSelected)
|
||||||
priceFeed.setCurrencyCode(offer.getCurrencyCode());*/
|
priceFeed.setCurrencyCode(offer.getCurrencyCode());
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
|
|
|
@ -58,7 +58,7 @@ public class PreferencesView extends ActivatableViewAndModel<GridPane, Activatab
|
||||||
// private ComboBox<String> userLanguageComboBox;
|
// private ComboBox<String> userLanguageComboBox;
|
||||||
private ComboBox<TradeCurrency> preferredTradeCurrencyComboBox;
|
private ComboBox<TradeCurrency> preferredTradeCurrencyComboBox;
|
||||||
|
|
||||||
private CheckBox useAnimationsCheckBox, autoSelectArbitratorsCheckBox, showOwnOffersInOfferBook;
|
private CheckBox useAnimationsCheckBox, autoSelectArbitratorsCheckBox, showOwnOffersInOfferBook, useStickyMarketPriceCheckBox;
|
||||||
private int gridRow = 0;
|
private int gridRow = 0;
|
||||||
private InputTextField transactionFeeInputTextField;
|
private InputTextField transactionFeeInputTextField;
|
||||||
private ChangeListener<Boolean> transactionFeeFocusedListener;
|
private ChangeListener<Boolean> transactionFeeFocusedListener;
|
||||||
|
@ -329,11 +329,12 @@ public class PreferencesView extends ActivatableViewAndModel<GridPane, Activatab
|
||||||
}
|
}
|
||||||
|
|
||||||
private void initializeDisplayOptions() {
|
private void initializeDisplayOptions() {
|
||||||
TitledGroupBg titledGroupBg = addTitledGroupBg(root, ++gridRow, 3, "Display options", Layout.GROUP_DISTANCE);
|
TitledGroupBg titledGroupBg = addTitledGroupBg(root, ++gridRow, 4, "Display options", Layout.GROUP_DISTANCE);
|
||||||
GridPane.setColumnSpan(titledGroupBg, 4);
|
GridPane.setColumnSpan(titledGroupBg, 4);
|
||||||
|
|
||||||
showOwnOffersInOfferBook = addLabelCheckBox(root, gridRow, "Show my own offers in offer book:", "", Layout.FIRST_ROW_AND_GROUP_DISTANCE).second;
|
showOwnOffersInOfferBook = addLabelCheckBox(root, gridRow, "Show my own offers in offer book:", "", Layout.FIRST_ROW_AND_GROUP_DISTANCE).second;
|
||||||
useAnimationsCheckBox = addLabelCheckBox(root, ++gridRow, "Use animations:", "").second;
|
useAnimationsCheckBox = addLabelCheckBox(root, ++gridRow, "Use animations:", "").second;
|
||||||
|
useStickyMarketPriceCheckBox = addLabelCheckBox(root, ++gridRow, "Use sticky market price:", "").second;
|
||||||
resetDontShowAgainButton = addLabelButton(root, ++gridRow, "Reset all don't show again flags:", "Reset", 0).second;
|
resetDontShowAgainButton = addLabelButton(root, ++gridRow, "Reset all don't show again flags:", "Reset", 0).second;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@ -445,6 +446,9 @@ public class PreferencesView extends ActivatableViewAndModel<GridPane, Activatab
|
||||||
useAnimationsCheckBox.setSelected(preferences.getUseAnimations());
|
useAnimationsCheckBox.setSelected(preferences.getUseAnimations());
|
||||||
useAnimationsCheckBox.setOnAction(e -> preferences.setUseAnimations(useAnimationsCheckBox.isSelected()));
|
useAnimationsCheckBox.setOnAction(e -> preferences.setUseAnimations(useAnimationsCheckBox.isSelected()));
|
||||||
|
|
||||||
|
useStickyMarketPriceCheckBox.setSelected(preferences.getUseStickyMarketPrice());
|
||||||
|
useStickyMarketPriceCheckBox.setOnAction(e -> preferences.setUseStickyMarketPrice(useStickyMarketPriceCheckBox.isSelected()));
|
||||||
|
|
||||||
resetDontShowAgainButton.setOnAction(e -> preferences.resetDontShowAgainForType());
|
resetDontShowAgainButton.setOnAction(e -> preferences.resetDontShowAgainForType());
|
||||||
|
|
||||||
autoSelectArbitratorsCheckBox.setSelected(preferences.getAutoSelectArbitrators());
|
autoSelectArbitratorsCheckBox.setSelected(preferences.getAutoSelectArbitrators());
|
||||||
|
@ -471,6 +475,7 @@ public class PreferencesView extends ActivatableViewAndModel<GridPane, Activatab
|
||||||
|
|
||||||
private void deactivateDisplayPreferences() {
|
private void deactivateDisplayPreferences() {
|
||||||
useAnimationsCheckBox.setOnAction(null);
|
useAnimationsCheckBox.setOnAction(null);
|
||||||
|
useStickyMarketPriceCheckBox.setOnAction(null);
|
||||||
showOwnOffersInOfferBook.setOnAction(null);
|
showOwnOffersInOfferBook.setOnAction(null);
|
||||||
autoSelectArbitratorsCheckBox.setOnAction(null);
|
autoSelectArbitratorsCheckBox.setOnAction(null);
|
||||||
resetDontShowAgainButton.setOnAction(null);
|
resetDontShowAgainButton.setOnAction(null);
|
||||||
|
|
Loading…
Add table
Add a link
Reference in a new issue