From 5f8f7446e3cf83714bf18d74ec86ebe2f4c1eeb8 Mon Sep 17 00:00:00 2001 From: Manfred Karrer Date: Wed, 26 Nov 2014 21:35:47 +0100 Subject: [PATCH] Remove ChildView --- .../changepassword/ChangePasswordView.java | 10 +++---- .../account/content/fiat/FiatAccountView.java | 8 +++--- .../account/content/irc/IrcAccountView.java | 10 +++---- .../content/password/PasswordView.java | 10 +++---- .../registration/RegistrationView.java | 8 +++--- .../restrictions/RestrictionsView.java | 11 ++++---- .../content/seedwords/SeedWordsView.java | 8 +++--- .../account/setup/AccountSetupWizard.java | 2 +- .../bitsquare/gui/main/trade/TradeView.java | 28 +++++++++++++++++-- .../main/trade/offerbook/OfferBookView.java | 14 ++++------ src/main/java/viewfx/view/ChildView.java | 22 --------------- src/main/java/viewfx/view/Wizard.java | 4 ++- 12 files changed, 68 insertions(+), 67 deletions(-) delete mode 100644 src/main/java/viewfx/view/ChildView.java diff --git a/src/main/java/io/bitsquare/gui/main/account/content/changepassword/ChangePasswordView.java b/src/main/java/io/bitsquare/gui/main/account/content/changepassword/ChangePasswordView.java index 139fc7a3bb..46bc75f955 100644 --- a/src/main/java/io/bitsquare/gui/main/account/content/changepassword/ChangePasswordView.java +++ b/src/main/java/io/bitsquare/gui/main/account/content/changepassword/ChangePasswordView.java @@ -37,7 +37,7 @@ public class ChangePasswordView extends InitializableView typesComboBox; @FXML ComboBox currencyComboBox; - private Wizard parent; + private Wizard wizard; private final OverlayManager overlayManager; @@ -99,8 +99,8 @@ public class FiatAccountView extends ActivatableViewAndModel typesComboBox; @FXML ComboBox currencyComboBox; - private Wizard parent; + private Wizard wizard; @Inject public IrcAccountView(IrcAccountViewModel model) { @@ -132,8 +132,8 @@ public class IrcAccountView extends ActivatableViewAndModel @FXML Button saveButton, skipButton; @FXML PasswordField oldPasswordField, passwordField, repeatedPasswordField; - private Wizard parent; + private Wizard wizard; @Inject private PasswordView(PasswordViewModel model) { @@ -53,8 +53,8 @@ public class PasswordView extends InitializableView } @Override - public void setParent(Wizard parent) { - this.parent = parent; + public void setWizard(Wizard wizard) { + this.wizard = wizard; } @Override @@ -65,14 +65,14 @@ public class PasswordView extends InitializableView @FXML private void onSaved() { if (model.requestSavePassword()) - parent.nextStep(this); + wizard.nextStep(this); else log.debug(model.getErrorMessage()); // TODO use validating passwordTF } @FXML private void onSkipped() { - parent.nextStep(this); + wizard.nextStep(this); } @FXML diff --git a/src/main/java/io/bitsquare/gui/main/account/content/registration/RegistrationView.java b/src/main/java/io/bitsquare/gui/main/account/content/registration/RegistrationView.java index 5b9cb9bd5f..3cd5998567 100644 --- a/src/main/java/io/bitsquare/gui/main/account/content/registration/RegistrationView.java +++ b/src/main/java/io/bitsquare/gui/main/account/content/registration/RegistrationView.java @@ -53,7 +53,7 @@ public class RegistrationView extends InitializableView countryComboBox; @FXML Button completedButton, addAllEuroCountriesButton; - private Wizard parent; + private Wizard wizard; private final ViewLoader viewLoader; private final Stage primaryStage; @@ -86,8 +86,8 @@ public class RestrictionsView extends ActivatableViewAndModel { navigation.removeListener(listener); } - public void createOffer(Coin amount, Fiat price) { this.amount = amount; this.price = price; @@ -128,7 +127,26 @@ public abstract class TradeView extends ActivatableView { tab.setContent(view.getRoot()); tabPane.getTabs().add(tab); offerBookView = (OfferBookView) view; - offerBookView.setParent(this); + + OfferActionHandler offerActionHandler = new OfferActionHandler() { + @Override + public void createOffer(Coin amount, Fiat price) { + TradeView.this.amount = amount; + TradeView.this.price = price; + TradeView.this.navigation.navigateTo(MainView.class, TradeView.this.getClass(), + CreateOfferView.class); + } + + @Override + public void takeOffer(Coin amount, Fiat price, Offer offer) { + TradeView.this.amount = amount; + TradeView.this.price = price; + TradeView.this.offer = offer; + TradeView.this.navigation.navigateTo(MainView.class, TradeView.this.getClass(), + TakeOfferView.class); + } + }; + offerBookView.setOfferActionHandler(offerActionHandler); offerBookView.setDirection(direction); @@ -177,5 +195,11 @@ public abstract class TradeView extends ActivatableView { // update the navigation state navigation.navigateTo(MainView.class, this.getClass(), OfferBookView.class); } + + public interface OfferActionHandler { + void createOffer(Coin amount, Fiat price); + + void takeOffer(Coin amount, Fiat price, Offer offer); + } } diff --git a/src/main/java/io/bitsquare/gui/main/trade/offerbook/OfferBookView.java b/src/main/java/io/bitsquare/gui/main/trade/offerbook/OfferBookView.java index c9beec8663..ce44c4a3ee 100644 --- a/src/main/java/io/bitsquare/gui/main/trade/offerbook/OfferBookView.java +++ b/src/main/java/io/bitsquare/gui/main/trade/offerbook/OfferBookView.java @@ -40,7 +40,6 @@ import java.util.List; import javax.inject.Inject; -import viewfx.view.ChildView; import viewfx.view.FxmlView; import viewfx.view.support.ActivatableViewAndModel; @@ -61,8 +60,7 @@ import org.controlsfx.dialog.Dialog; import static javafx.beans.binding.Bindings.createStringBinding; @FxmlView -public class OfferBookView extends ActivatableViewAndModel - implements ChildView { +public class OfferBookView extends ActivatableViewAndModel { @FXML CheckBox showOnlyMatchingCheckBox; @FXML TableView table; @@ -73,7 +71,6 @@ public class OfferBookView extends ActivatableViewAndModel. - */ - -package viewfx.view; - -public interface ChildView extends View { - void setParent(Parent parent); -} diff --git a/src/main/java/viewfx/view/Wizard.java b/src/main/java/viewfx/view/Wizard.java index 7d87b31cfd..604197581c 100644 --- a/src/main/java/viewfx/view/Wizard.java +++ b/src/main/java/viewfx/view/Wizard.java @@ -20,7 +20,9 @@ package viewfx.view; public interface Wizard extends View { void nextStep(Step currentStep); - public interface Step extends ChildView { + public interface Step { void hideWizardNavigation(); + + void setWizard(Wizard wizard); } }