diff --git a/src/main/java/io/bitsquare/gui/BasicView.java b/src/main/java/io/bitsquare/gui/BasicView.java
new file mode 100644
index 0000000000..ae88c99a47
--- /dev/null
+++ b/src/main/java/io/bitsquare/gui/BasicView.java
@@ -0,0 +1,44 @@
+/*
+ * 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.gui;
+
+import javafx.fxml.FXML;
+import javafx.scene.*;
+
+import org.slf4j.Logger;
+import org.slf4j.LoggerFactory;
+
+public abstract class BasicView implements View {
+
+ protected final Logger log = LoggerFactory.getLogger(this.getClass());
+
+ protected final M model;
+ protected @FXML Parent root;
+
+ public BasicView(M model) {
+ this.model = model;
+ }
+
+ public BasicView() {
+ this(null);
+ }
+
+ protected View loadView(Navigation.Item navigationItem) {
+ throw new UnsupportedOperationException("loadView not implemented");
+ }
+}
diff --git a/src/main/java/io/bitsquare/gui/ChildOf.java b/src/main/java/io/bitsquare/gui/ChildOf.java
index f659f45c29..d202946854 100644
--- a/src/main/java/io/bitsquare/gui/ChildOf.java
+++ b/src/main/java/io/bitsquare/gui/ChildOf.java
@@ -17,6 +17,6 @@
package io.bitsquare.gui;
-public interface ChildOf {
+public interface ChildOf extends View {
void setParent(Parent parent);
}
diff --git a/src/main/java/io/bitsquare/gui/InitializableView.java b/src/main/java/io/bitsquare/gui/InitializableView.java
index a3146df40b..aea2434b73 100644
--- a/src/main/java/io/bitsquare/gui/InitializableView.java
+++ b/src/main/java/io/bitsquare/gui/InitializableView.java
@@ -23,7 +23,7 @@ import java.util.ResourceBundle;
import javafx.fxml.Initializable;
-public class InitializableView extends View implements Initializable {
+public class InitializableView extends BasicView implements Initializable {
public InitializableView(M model) {
super(model);
diff --git a/src/main/java/io/bitsquare/gui/View.java b/src/main/java/io/bitsquare/gui/View.java
index 0686f7f7ea..8a5d8eaead 100644
--- a/src/main/java/io/bitsquare/gui/View.java
+++ b/src/main/java/io/bitsquare/gui/View.java
@@ -17,28 +17,5 @@
package io.bitsquare.gui;
-import javafx.fxml.FXML;
-import javafx.scene.*;
-
-import org.slf4j.Logger;
-import org.slf4j.LoggerFactory;
-
-public class View {
-
- protected final Logger log = LoggerFactory.getLogger(this.getClass());
-
- protected final M model;
- protected @FXML Parent root;
-
- public View(M model) {
- this.model = model;
- }
-
- public View() {
- this(null);
- }
-
- protected View loadView(Navigation.Item navigationItem) {
- throw new UnsupportedOperationException("loadView not implemented");
- }
+public interface View {
}
diff --git a/src/main/java/io/bitsquare/gui/Wizard.java b/src/main/java/io/bitsquare/gui/Wizard.java
index 86a34fa869..448e42c369 100644
--- a/src/main/java/io/bitsquare/gui/Wizard.java
+++ b/src/main/java/io/bitsquare/gui/Wizard.java
@@ -17,8 +17,8 @@
package io.bitsquare.gui;
-public interface Wizard {
- void nextStep(View current);
+public interface Wizard extends View {
+ void nextStep(Step currentStep);
public interface Step extends ChildOf {
void hideWizardNavigation();
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 eb94185df1..4f28f86376 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
@@ -17,6 +17,7 @@
package io.bitsquare.gui.main.account.arbitrator;
+import io.bitsquare.gui.BasicView;
import io.bitsquare.gui.Navigation;
import io.bitsquare.gui.View;
import io.bitsquare.gui.ViewLoader;
@@ -30,7 +31,7 @@ import javafx.stage.Modality;
import javafx.stage.Stage;
// TODO Arbitration is very basic yet
-public class ArbitratorSettingsView extends View {
+public class ArbitratorSettingsView extends BasicView {
private final ViewLoader viewLoader;
private final Navigation navigation;
diff --git a/src/main/java/io/bitsquare/gui/main/account/arbitrator/profile/ArbitratorProfileView.java b/src/main/java/io/bitsquare/gui/main/account/arbitrator/profile/ArbitratorProfileView.java
index ae687e315d..f5b2f6afaa 100644
--- a/src/main/java/io/bitsquare/gui/main/account/arbitrator/profile/ArbitratorProfileView.java
+++ b/src/main/java/io/bitsquare/gui/main/account/arbitrator/profile/ArbitratorProfileView.java
@@ -18,7 +18,7 @@
package io.bitsquare.gui.main.account.arbitrator.profile;
import io.bitsquare.arbitrator.Arbitrator;
-import io.bitsquare.gui.View;
+import io.bitsquare.gui.BasicView;
import io.bitsquare.gui.util.BSFormatter;
import io.bitsquare.persistence.Persistence;
import io.bitsquare.settings.Preferences;
@@ -29,7 +29,7 @@ import javafx.fxml.FXML;
import javafx.scene.control.*;
// TODO Arbitration is very basic yet
-public class ArbitratorProfileView extends View {
+public class ArbitratorProfileView extends BasicView {
private final Preferences preferences;
diff --git a/src/main/java/io/bitsquare/gui/main/account/setup/AccountSetupWizard.java b/src/main/java/io/bitsquare/gui/main/account/setup/AccountSetupWizard.java
index 919aeae394..5477ba1101 100644
--- a/src/main/java/io/bitsquare/gui/main/account/setup/AccountSetupWizard.java
+++ b/src/main/java/io/bitsquare/gui/main/account/setup/AccountSetupWizard.java
@@ -142,29 +142,25 @@ public class AccountSetupWizard extends ActivatableView implements Wizard {
}
- ///////////////////////////////////////////////////////////////////////////////////////////
- // MultiStepNavigation implementation
- ///////////////////////////////////////////////////////////////////////////////////////////
-
@Override
- public void nextStep(View childView) {
- if (childView instanceof SeedWordsView) {
+ public void nextStep(Step currentStep) {
+ if (currentStep instanceof SeedWordsView) {
seedWords.onCompleted();
password.show();
}
- else if (childView instanceof PasswordView) {
+ else if (currentStep instanceof PasswordView) {
password.onCompleted();
restrictions.show();
}
- else if (childView instanceof RestrictionsView) {
+ else if (currentStep instanceof RestrictionsView) {
restrictions.onCompleted();
fiatAccount.show();
}
- else if (childView instanceof IrcAccountView) {
+ else if (currentStep instanceof IrcAccountView) {
fiatAccount.onCompleted();
registration.show();
}
- else if (childView instanceof RegistrationView) {
+ else if (currentStep instanceof RegistrationView) {
registration.onCompleted();
if (navigation.getItemsForReturning() != null)
diff --git a/src/main/java/io/bitsquare/gui/main/home/HomeView.java b/src/main/java/io/bitsquare/gui/main/home/HomeView.java
index 20336ea20b..be17e38ed9 100644
--- a/src/main/java/io/bitsquare/gui/main/home/HomeView.java
+++ b/src/main/java/io/bitsquare/gui/main/home/HomeView.java
@@ -17,9 +17,9 @@
package io.bitsquare.gui.main.home;
-import io.bitsquare.gui.View;
+import io.bitsquare.gui.BasicView;
// home is just hosting the arbiters buttons yet, but that's just for dev, not clear yet what will be in home,
// probably overview, event history, news, charts,... -> low prio
-public class HomeView extends View {
+public class HomeView extends BasicView {
}
diff --git a/src/main/java/io/bitsquare/gui/main/msg/MsgView.java b/src/main/java/io/bitsquare/gui/main/msg/MsgView.java
index ef889f8b31..5b6e3f13e9 100644
--- a/src/main/java/io/bitsquare/gui/main/msg/MsgView.java
+++ b/src/main/java/io/bitsquare/gui/main/msg/MsgView.java
@@ -17,7 +17,7 @@
package io.bitsquare.gui.main.msg;
-import io.bitsquare.gui.View;
+import io.bitsquare.gui.BasicView;
import javax.inject.Inject;
@@ -27,7 +27,7 @@ import org.slf4j.LoggerFactory;
// will be probably only used for arbitration communication, will be renamed and the icon changed
-public class MsgView extends View {
+public class MsgView extends BasicView {
private static final Logger log = LoggerFactory.getLogger(MsgView.class);