From d02ddd694679367501b5c58bdd67fa7ebbdb47d2 Mon Sep 17 00:00:00 2001 From: Chris Beams Date: Sun, 23 Nov 2014 02:33:12 +0100 Subject: [PATCH] Remove notion of 'childController' from View hierarchy --- src/main/java/io/bitsquare/gui/View.java | 1 - .../gui/main/account/AccountView.java | 1 - .../arbitrator/ArbitratorSettingsView.java | 1 - .../browser/ArbitratorBrowserView.java | 1 - .../account/settings/AccountSettingsView.java | 10 ++--- .../main/account/setup/AccountSetupView.java | 37 ++++++++----------- .../bitsquare/gui/main/funds/FundsView.java | 1 - .../gui/main/portfolio/PortfolioView.java | 1 - .../gui/main/settings/SettingsView.java | 1 - 9 files changed, 21 insertions(+), 33 deletions(-) diff --git a/src/main/java/io/bitsquare/gui/View.java b/src/main/java/io/bitsquare/gui/View.java index 280af70384..f706e6a63a 100644 --- a/src/main/java/io/bitsquare/gui/View.java +++ b/src/main/java/io/bitsquare/gui/View.java @@ -33,7 +33,6 @@ public class View { protected final M model; protected @FXML Parent root; - protected View childController; protected Initializable parent; diff --git a/src/main/java/io/bitsquare/gui/main/account/AccountView.java b/src/main/java/io/bitsquare/gui/main/account/AccountView.java index 20adb6c2c4..aae8fca93a 100644 --- a/src/main/java/io/bitsquare/gui/main/account/AccountView.java +++ b/src/main/java/io/bitsquare/gui/main/account/AccountView.java @@ -26,7 +26,6 @@ import javax.inject.Inject; import javafx.beans.value.ChangeListener; import javafx.fxml.FXML; -import javafx.fxml.Initializable; import javafx.scene.control.*; import org.slf4j.Logger; diff --git a/src/main/java/io/bitsquare/gui/main/account/arbitrator/ArbitratorSettingsView.java b/src/main/java/io/bitsquare/gui/main/account/arbitrator/ArbitratorSettingsView.java index d691d5f3ae..eb94185df1 100644 --- a/src/main/java/io/bitsquare/gui/main/account/arbitrator/ArbitratorSettingsView.java +++ b/src/main/java/io/bitsquare/gui/main/account/arbitrator/ArbitratorSettingsView.java @@ -25,7 +25,6 @@ import io.bitsquare.gui.main.account.arbitrator.registration.ArbitratorRegistrat import javax.inject.Inject; import javafx.fxml.FXML; -import javafx.fxml.Initializable; import javafx.scene.*; import javafx.stage.Modality; import javafx.stage.Stage; diff --git a/src/main/java/io/bitsquare/gui/main/account/arbitrator/browser/ArbitratorBrowserView.java b/src/main/java/io/bitsquare/gui/main/account/arbitrator/browser/ArbitratorBrowserView.java index dd4d5c52ea..7dad2a16b7 100644 --- a/src/main/java/io/bitsquare/gui/main/account/arbitrator/browser/ArbitratorBrowserView.java +++ b/src/main/java/io/bitsquare/gui/main/account/arbitrator/browser/ArbitratorBrowserView.java @@ -35,7 +35,6 @@ import java.util.List; import javax.inject.Inject; import javafx.fxml.FXML; -import javafx.fxml.Initializable; import javafx.scene.control.*; import javafx.scene.layout.*; import javafx.stage.Stage; diff --git a/src/main/java/io/bitsquare/gui/main/account/settings/AccountSettingsView.java b/src/main/java/io/bitsquare/gui/main/account/settings/AccountSettingsView.java index f64759c30f..e48bd3c227 100644 --- a/src/main/java/io/bitsquare/gui/main/account/settings/AccountSettingsView.java +++ b/src/main/java/io/bitsquare/gui/main/account/settings/AccountSettingsView.java @@ -27,7 +27,6 @@ import io.bitsquare.gui.util.Colors; import javax.inject.Inject; import javafx.fxml.FXML; -import javafx.fxml.Initializable; import javafx.geometry.Pos; import javafx.scene.control.*; import javafx.scene.layout.*; @@ -132,10 +131,11 @@ public class AccountSettingsView extends ActivatableViewAndModel { protected View loadView(Navigation.Item navigationItem) { ViewLoader.Item loaded = viewLoader.load(navigationItem.getFxmlUrl()); content.getChildren().setAll(loaded.view); - childController = (View) loaded.controller; - childController.setParent(this); - ((ContextAware) childController).useSettingsContext(true); - return childController; + View child = (View) loaded.controller; + child.setParent(this); + if (child instanceof ContextAware) + ((ContextAware) child).useSettingsContext(true); + return child; } diff --git a/src/main/java/io/bitsquare/gui/main/account/setup/AccountSetupView.java b/src/main/java/io/bitsquare/gui/main/account/setup/AccountSetupView.java index 952b32d5ba..6d0db867f8 100644 --- a/src/main/java/io/bitsquare/gui/main/account/setup/AccountSetupView.java +++ b/src/main/java/io/bitsquare/gui/main/account/setup/AccountSetupView.java @@ -32,7 +32,6 @@ import io.bitsquare.gui.main.account.content.seedwords.SeedWordsView; import javax.inject.Inject; import javafx.fxml.FXML; -import javafx.fxml.Initializable; import javafx.geometry.Insets; import javafx.scene.control.*; import javafx.scene.image.*; @@ -82,29 +81,29 @@ public class AccountSetupView extends ActivatableView implements MultiStepNaviga switch (navigationItems[3]) { case SEED_WORDS: - childController = seedWords.show(); + seedWords.show(); break; case ADD_PASSWORD: seedWords.onCompleted(); - childController = password.show(); + password.show(); break; case RESTRICTIONS: seedWords.onCompleted(); password.onCompleted(); - childController = restrictions.show(); + restrictions.show(); break; case FIAT_ACCOUNT: seedWords.onCompleted(); password.onCompleted(); restrictions.onCompleted(); - childController = fiatAccount.show(); + fiatAccount.show(); break; case REGISTRATION: seedWords.onCompleted(); password.onCompleted(); restrictions.onCompleted(); fiatAccount.onCompleted(); - childController = registration.show(); + registration.show(); break; } } @@ -135,7 +134,7 @@ public class AccountSetupView extends ActivatableView implements MultiStepNaviga @Override public void activate() { navigation.addListener(listener); - childController = fiatAccount.show(); + fiatAccount.show(); } @Override @@ -152,23 +151,22 @@ public class AccountSetupView extends ActivatableView implements MultiStepNaviga public void nextStep(View childView) { if (childView instanceof SeedWordsView) { seedWords.onCompleted(); - childController = password.show(); + password.show(); } else if (childView instanceof PasswordView) { password.onCompleted(); - childController = restrictions.show(); + restrictions.show(); } else if (childView instanceof RestrictionsView) { restrictions.onCompleted(); - childController = fiatAccount.show(); + fiatAccount.show(); } else if (childView instanceof IrcAccountView) { fiatAccount.onCompleted(); - childController = registration.show(); + registration.show(); } else if (childView instanceof RegistrationView) { registration.onCompleted(); - childController = null; if (navigation.getItemsForReturning() != null) navigation.navigationTo(navigation.getItemsForReturning()); @@ -186,18 +184,17 @@ public class AccountSetupView extends ActivatableView implements MultiStepNaviga protected View loadView(Navigation.Item navigationItem) { ViewLoader.Item loaded = viewLoader.load(navigationItem.getFxmlUrl()); content.getChildren().setAll(loaded.view); - childController = (View) loaded.controller; - childController.setParent(this); - ((ContextAware) childController).useSettingsContext(false); - return childController; + View child = (View) loaded.controller; + child.setParent(this); + if (child instanceof ContextAware) + ((ContextAware) child).useSettingsContext(false); + return child; } } class WizardItem extends HBox { private static final Logger log = LoggerFactory.getLogger(WizardItem.class); - private View childController; - private final ImageView imageView; private final Label titleLabel; private final Label subTitleLabel; @@ -243,7 +240,7 @@ class WizardItem extends HBox { getChildren().addAll(imageView, vBox); } - View show() { + void show() { host.loadView(navigationItem); /* navigation.navigationTo(Navigation.Item.MAIN, Navigation.Item.ACCOUNT, Navigation .Item.ACCOUNT_SETUP, @@ -253,8 +250,6 @@ class WizardItem extends HBox { imageView.setId("image-arrow-blue"); titleLabel.setId("wizard-title-active"); subTitleLabel.setId("wizard-sub-title-active"); - - return childController; } void onCompleted() { diff --git a/src/main/java/io/bitsquare/gui/main/funds/FundsView.java b/src/main/java/io/bitsquare/gui/main/funds/FundsView.java index 4456a214d9..ca2c0ceefe 100644 --- a/src/main/java/io/bitsquare/gui/main/funds/FundsView.java +++ b/src/main/java/io/bitsquare/gui/main/funds/FundsView.java @@ -26,7 +26,6 @@ import javax.inject.Inject; import javafx.beans.value.ChangeListener; import javafx.fxml.FXML; -import javafx.fxml.Initializable; import javafx.scene.control.*; public class FundsView extends ActivatableViewAndModel { diff --git a/src/main/java/io/bitsquare/gui/main/portfolio/PortfolioView.java b/src/main/java/io/bitsquare/gui/main/portfolio/PortfolioView.java index a590438f2b..8cb7a2da93 100644 --- a/src/main/java/io/bitsquare/gui/main/portfolio/PortfolioView.java +++ b/src/main/java/io/bitsquare/gui/main/portfolio/PortfolioView.java @@ -27,7 +27,6 @@ import javax.inject.Inject; import javafx.beans.value.ChangeListener; import javafx.fxml.FXML; -import javafx.fxml.Initializable; import javafx.scene.control.*; public class PortfolioView extends ActivatableViewAndModel { diff --git a/src/main/java/io/bitsquare/gui/main/settings/SettingsView.java b/src/main/java/io/bitsquare/gui/main/settings/SettingsView.java index dfa8d79400..020232aa50 100644 --- a/src/main/java/io/bitsquare/gui/main/settings/SettingsView.java +++ b/src/main/java/io/bitsquare/gui/main/settings/SettingsView.java @@ -27,7 +27,6 @@ import javax.inject.Inject; import javafx.beans.value.ChangeListener; import javafx.fxml.FXML; -import javafx.fxml.Initializable; import javafx.scene.control.*; public class SettingsView extends ActivatableViewAndModel {