You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@wicket.apache.org by sv...@apache.org on 2018/04/10 21:16:43 UTC
[4/5] wicket git commit: WICKET-6541 override onConfigure instead of
isVisible/isEnabled
WICKET-6541 override onConfigure instead of isVisible/isEnabled
Project: http://git-wip-us.apache.org/repos/asf/wicket/repo
Commit: http://git-wip-us.apache.org/repos/asf/wicket/commit/401daa25
Tree: http://git-wip-us.apache.org/repos/asf/wicket/tree/401daa25
Diff: http://git-wip-us.apache.org/repos/asf/wicket/diff/401daa25
Branch: refs/heads/master
Commit: 401daa25183c93e2e8b99f8b4e3dbe4189a69dc1
Parents: 35822e3
Author: Sven Meier <sv...@apache.org>
Authored: Fri Mar 2 13:58:49 2018 +0100
Committer: Sven Meier <sv...@apache.org>
Committed: Tue Apr 10 22:00:54 2018 +0200
----------------------------------------------------------------------
.../wicket/extensions/wizard/CancelButton.java | 22 ++++-------
.../wicket/extensions/wizard/FinishButton.java | 13 ++++---
.../wicket/extensions/wizard/IWizardModel.java | 40 +++++++++++++++-----
.../wicket/extensions/wizard/LastButton.java | 21 ++++------
.../wicket/extensions/wizard/NextButton.java | 12 +++---
.../extensions/wizard/PreviousButton.java | 13 ++++---
.../wicket/extensions/wizard/WizardButton.java | 19 +++++++++-
.../wizard/dynamic/IDynamicWizardStep.java | 3 +-
8 files changed, 84 insertions(+), 59 deletions(-)
----------------------------------------------------------------------
http://git-wip-us.apache.org/repos/asf/wicket/blob/401daa25/wicket-extensions/src/main/java/org/apache/wicket/extensions/wizard/CancelButton.java
----------------------------------------------------------------------
diff --git a/wicket-extensions/src/main/java/org/apache/wicket/extensions/wizard/CancelButton.java b/wicket-extensions/src/main/java/org/apache/wicket/extensions/wizard/CancelButton.java
index 7830190..64386fc 100644
--- a/wicket-extensions/src/main/java/org/apache/wicket/extensions/wizard/CancelButton.java
+++ b/wicket-extensions/src/main/java/org/apache/wicket/extensions/wizard/CancelButton.java
@@ -16,6 +16,8 @@
*/
package org.apache.wicket.extensions.wizard;
+import org.apache.wicket.model.ResourceModel;
+
/**
* Models a cancel button in the wizard. When pressed, it calls {@link Wizard#onCancel()} which
* should do the real work.
@@ -36,26 +38,16 @@ public class CancelButton extends WizardButton
*/
public CancelButton(final String id, final IWizard wizard)
{
- super(id, wizard, "org.apache.wicket.extensions.wizard.cancel");
+ super(id, wizard, new ResourceModel("org.apache.wicket.extensions.wizard.cancel"));
setDefaultFormProcessing(false);
}
- /**
- * @see org.apache.wicket.Component#isEnabled()
- */
- @Override
- public final boolean isEnabled()
- {
- return true;
- }
-
- /**
- * @see org.apache.wicket.Component#isVisible()
- */
@Override
- public final boolean isVisible()
+ protected void onConfigure()
{
- return getWizardModel().isCancelVisible() && super.isVisible();
+ super.onConfigure();
+
+ setVisible(getWizardModel().isCancelVisible());
}
/**
http://git-wip-us.apache.org/repos/asf/wicket/blob/401daa25/wicket-extensions/src/main/java/org/apache/wicket/extensions/wizard/FinishButton.java
----------------------------------------------------------------------
diff --git a/wicket-extensions/src/main/java/org/apache/wicket/extensions/wizard/FinishButton.java b/wicket-extensions/src/main/java/org/apache/wicket/extensions/wizard/FinishButton.java
index 7cf29d1..4f403a3 100644
--- a/wicket-extensions/src/main/java/org/apache/wicket/extensions/wizard/FinishButton.java
+++ b/wicket-extensions/src/main/java/org/apache/wicket/extensions/wizard/FinishButton.java
@@ -16,6 +16,8 @@
*/
package org.apache.wicket.extensions.wizard;
+import org.apache.wicket.model.ResourceModel;
+
/**
* Models a cancel button in the wizard. When pressed, it calls {@link IWizardStep#applyState()} on
* the active wizard step, and then {@link Wizard#onFinish()} on the wizard.
@@ -36,16 +38,15 @@ public class FinishButton extends WizardButton
*/
public FinishButton(final String id, final IWizard wizard)
{
- super(id, wizard, "org.apache.wicket.extensions.wizard.finish");
+ super(id, wizard, new ResourceModel("org.apache.wicket.extensions.wizard.finish"));
}
- /**
- * @see org.apache.wicket.Component#isEnabled()
- */
@Override
- public boolean isEnabled()
+ protected void onConfigure()
{
- return getWizardModel().isFinishAvailable() && super.isEnabled();
+ super.onConfigure();
+
+ setEnabled(getWizardModel().isFinishAvailable());
}
/**
http://git-wip-us.apache.org/repos/asf/wicket/blob/401daa25/wicket-extensions/src/main/java/org/apache/wicket/extensions/wizard/IWizardModel.java
----------------------------------------------------------------------
diff --git a/wicket-extensions/src/main/java/org/apache/wicket/extensions/wizard/IWizardModel.java b/wicket-extensions/src/main/java/org/apache/wicket/extensions/wizard/IWizardModel.java
index ca0bb68..a66c1e8 100644
--- a/wicket-extensions/src/main/java/org/apache/wicket/extensions/wizard/IWizardModel.java
+++ b/wicket-extensions/src/main/java/org/apache/wicket/extensions/wizard/IWizardModel.java
@@ -83,14 +83,30 @@ public interface IWizardModel extends IClusterable
* Gets whether the cancel button should be displayed.
*
* @return True if the cancel button should be displayed
+ *
+ * @see #cancel()
*/
boolean isCancelVisible();
/**
+ * Gets whether the last button should be displayed. This method should only return true if the
+ * {@link #isLastAvailable} will return true at any point. Returning false will prevent the last
+ * button from appearing on the wizard at all.
+ *
+ * @return True if the last button should be displayed, False otherwise.
+
+ * @see #isLastAvailable()
+ * @see #last()
+ */
+ boolean isLastVisible();
+
+ /**
* Checks if the last button should be enabled.
*
* @return <tt>true</tt> if the last button should be enabled, <tt>false</tt> otherwise.
- * @see #isLastVisible
+ *
+ * @see #isLastVisible()
+ * @see #last()
*/
boolean isLastAvailable();
@@ -104,18 +120,11 @@ public interface IWizardModel extends IClusterable
boolean isLastStep(IWizardStep step);
/**
- * Gets whether the last button should be displayed. This method should only return true if the
- * {@link #isLastAvailable} will return true at any point. Returning false will prevent the last
- * button from appearing on the wizard at all.
- *
- * @return True if the last button should be displayed, False otherwise.
- */
- boolean isLastVisible();
-
- /**
* Gets whether the next button should be enabled.
*
* @return True if the next button should be enabled, false otherwise.
+ *
+ * @see #next()
*/
boolean isNextAvailable();
@@ -123,6 +132,8 @@ public interface IWizardModel extends IClusterable
* Gets whether the previous button should be enabled.
*
* @return True if the previous button should be enabled, false otherwise.
+ *
+ * @see #previous()
*/
boolean isPreviousAvailable();
@@ -134,6 +145,8 @@ public interface IWizardModel extends IClusterable
* @see #isLastStep(IWizardStep)
*
* @return True if the finish button should be enabled, false otherwise.
+ *
+ * @see #finish()
*/
default boolean isFinishAvailable() {
return isLastStep(getActiveStep());
@@ -144,6 +157,9 @@ public interface IWizardModel extends IClusterable
* {@link #isLastAvailable} returns <tt>true</tt>. Implementors should notify
* {@link IWizardModelListener listeners} through calling
* {@link IWizardModelListener#onActiveStepChanged(IWizardStep)}.
+ *
+ * @see #isLastVisible()
+ * @see #isLastAvailable()
*/
void last();
@@ -152,6 +168,8 @@ public interface IWizardModel extends IClusterable
* {@link #isNextAvailable} returns <tt>true</tt>. Implementors should notify
* {@link IWizardModelListener listeners} through calling
* {@link IWizardModelListener#onActiveStepChanged(IWizardStep)}.
+ *
+ * @see #isNextAvailable()
*/
void next();
@@ -160,6 +178,8 @@ public interface IWizardModel extends IClusterable
* {@link #isPreviousAvailable} returns <tt>true</tt>. Implementors should notify
* {@link IWizardModelListener listeners} through calling
* {@link IWizardModelListener#onActiveStepChanged(IWizardStep)}.
+ *
+ * @see #isPreviousAvailable()
*/
void previous();
http://git-wip-us.apache.org/repos/asf/wicket/blob/401daa25/wicket-extensions/src/main/java/org/apache/wicket/extensions/wizard/LastButton.java
----------------------------------------------------------------------
diff --git a/wicket-extensions/src/main/java/org/apache/wicket/extensions/wizard/LastButton.java b/wicket-extensions/src/main/java/org/apache/wicket/extensions/wizard/LastButton.java
index 5fad4d4..fbda834 100644
--- a/wicket-extensions/src/main/java/org/apache/wicket/extensions/wizard/LastButton.java
+++ b/wicket-extensions/src/main/java/org/apache/wicket/extensions/wizard/LastButton.java
@@ -16,6 +16,8 @@
*/
package org.apache.wicket.extensions.wizard;
+import org.apache.wicket.model.ResourceModel;
+
/**
* Models a 'last' button in the wizard. When pressed, it calls {@link IWizardStep#applyState()} on
* the active wizard step, and then moves to the last step in the model with
@@ -37,25 +39,16 @@ public class LastButton extends WizardButton
*/
public LastButton(final String id, final IWizard wizard)
{
- super(id, wizard, "org.apache.wicket.extensions.wizard.last");
+ super(id, wizard, new ResourceModel("org.apache.wicket.extensions.wizard.last"));
}
- /**
- * @see org.apache.wicket.Component#isEnabled()
- */
@Override
- public boolean isEnabled()
+ protected void onConfigure()
{
- return getWizardModel().isLastAvailable() && super.isEnabled();
- }
+ super.onConfigure();
- /**
- * @see org.apache.wicket.Component#isVisible()
- */
- @Override
- public boolean isVisible()
- {
- return getWizardModel().isLastVisible() && super.isVisible();
+ setVisible(getWizardModel().isLastVisible());
+ setEnabled(getWizardModel().isLastAvailable());
}
/**
http://git-wip-us.apache.org/repos/asf/wicket/blob/401daa25/wicket-extensions/src/main/java/org/apache/wicket/extensions/wizard/NextButton.java
----------------------------------------------------------------------
diff --git a/wicket-extensions/src/main/java/org/apache/wicket/extensions/wizard/NextButton.java b/wicket-extensions/src/main/java/org/apache/wicket/extensions/wizard/NextButton.java
index 6237242..cdd2d69 100644
--- a/wicket-extensions/src/main/java/org/apache/wicket/extensions/wizard/NextButton.java
+++ b/wicket-extensions/src/main/java/org/apache/wicket/extensions/wizard/NextButton.java
@@ -16,6 +16,7 @@
*/
package org.apache.wicket.extensions.wizard;
+import org.apache.wicket.model.ResourceModel;
/**
* Models a next button in the wizard. When pressed, it calls {@link IWizardStep#applyState()} on
@@ -36,16 +37,15 @@ public class NextButton extends WizardButton
*/
public NextButton(final String id, final IWizard wizard)
{
- super(id, wizard, "org.apache.wicket.extensions.wizard.next");
+ super(id, wizard, new ResourceModel("org.apache.wicket.extensions.wizard.next"));
}
- /**
- * @see org.apache.wicket.Component#isEnabled()
- */
@Override
- public boolean isEnabled()
+ protected void onConfigure()
{
- return super.isEnabled() && getWizardModel().isNextAvailable();
+ super.onConfigure();
+
+ setEnabled(getWizardModel().isNextAvailable());
}
/**
http://git-wip-us.apache.org/repos/asf/wicket/blob/401daa25/wicket-extensions/src/main/java/org/apache/wicket/extensions/wizard/PreviousButton.java
----------------------------------------------------------------------
diff --git a/wicket-extensions/src/main/java/org/apache/wicket/extensions/wizard/PreviousButton.java b/wicket-extensions/src/main/java/org/apache/wicket/extensions/wizard/PreviousButton.java
index cf801f2..69be43b 100644
--- a/wicket-extensions/src/main/java/org/apache/wicket/extensions/wizard/PreviousButton.java
+++ b/wicket-extensions/src/main/java/org/apache/wicket/extensions/wizard/PreviousButton.java
@@ -16,6 +16,8 @@
*/
package org.apache.wicket.extensions.wizard;
+import org.apache.wicket.model.ResourceModel;
+
/**
* Models a previous button in the wizard. When pressed, it moves the wizard state to the previous
* step of the model by calling {@link IWizardModel#previous() previous} on the wizard's model.
@@ -36,17 +38,16 @@ public class PreviousButton extends WizardButton
*/
public PreviousButton(final String id, final IWizard wizard)
{
- super(id, wizard, "org.apache.wicket.extensions.wizard.previous");
+ super(id, wizard, new ResourceModel("org.apache.wicket.extensions.wizard.previous"));
setDefaultFormProcessing(false);
}
- /**
- * @see org.apache.wicket.Component#isEnabled()
- */
@Override
- public boolean isEnabled()
+ protected void onConfigure()
{
- return getWizardModel().isPreviousAvailable() && super.isEnabled();
+ super.onConfigure();
+
+ setEnabled(getWizardModel().isPreviousAvailable());
}
/**
http://git-wip-us.apache.org/repos/asf/wicket/blob/401daa25/wicket-extensions/src/main/java/org/apache/wicket/extensions/wizard/WizardButton.java
----------------------------------------------------------------------
diff --git a/wicket-extensions/src/main/java/org/apache/wicket/extensions/wizard/WizardButton.java b/wicket-extensions/src/main/java/org/apache/wicket/extensions/wizard/WizardButton.java
index fe21518..61f2109 100644
--- a/wicket-extensions/src/main/java/org/apache/wicket/extensions/wizard/WizardButton.java
+++ b/wicket-extensions/src/main/java/org/apache/wicket/extensions/wizard/WizardButton.java
@@ -17,6 +17,7 @@
package org.apache.wicket.extensions.wizard;
import org.apache.wicket.markup.html.form.Button;
+import org.apache.wicket.model.IModel;
import org.apache.wicket.model.ResourceModel;
/**
@@ -48,9 +49,25 @@ public abstract class WizardButton extends Button
* @param labelResourceKey
* The resource key of the button's label
*/
+ @Deprecated
public WizardButton(final String id, final IWizard wizard, final String labelResourceKey)
{
- super(id, new ResourceModel(labelResourceKey));
+ this(id, wizard, new ResourceModel(labelResourceKey));
+ }
+
+ /**
+ * Construct.
+ *
+ * @param id
+ * The component id
+ * @param wizard
+ * The wizard
+ * @param labelResourceKey
+ * The resource key of the button's label
+ */
+ public WizardButton(final String id, final IWizard wizard, final IModel<String> label)
+ {
+ super(id, label);
this.wizard = wizard;
}
http://git-wip-us.apache.org/repos/asf/wicket/blob/401daa25/wicket-extensions/src/main/java/org/apache/wicket/extensions/wizard/dynamic/IDynamicWizardStep.java
----------------------------------------------------------------------
diff --git a/wicket-extensions/src/main/java/org/apache/wicket/extensions/wizard/dynamic/IDynamicWizardStep.java b/wicket-extensions/src/main/java/org/apache/wicket/extensions/wizard/dynamic/IDynamicWizardStep.java
index fa6d3e8..94cacde 100644
--- a/wicket-extensions/src/main/java/org/apache/wicket/extensions/wizard/dynamic/IDynamicWizardStep.java
+++ b/wicket-extensions/src/main/java/org/apache/wicket/extensions/wizard/dynamic/IDynamicWizardStep.java
@@ -37,7 +37,8 @@ public interface IDynamicWizardStep extends IWizardStep
* Checks if the last button should be enabled.
*
* @return <tt>true</tt> if the last button should be enabled, <tt>false</tt> otherwise.
- * @see IWizardModel#isLastVisible
+ *
+ * @see IWizardModel#isLastAvailable()
*/
boolean isLastAvailable();