You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@isis.apache.org by da...@apache.org on 2014/01/17 19:04:13 UTC
git commit: ISIS-637: fixes for validation with modal action dialogs
Updated Branches:
refs/heads/master e7f97df59 -> 04baa307b
ISIS-637: fixes for validation with modal action dialogs
* if entity link (select2choice dropdown) is required, show feedback.
* shouldn't call setResponsePage when commit change to select2choice
Project: http://git-wip-us.apache.org/repos/asf/isis/repo
Commit: http://git-wip-us.apache.org/repos/asf/isis/commit/04baa307
Tree: http://git-wip-us.apache.org/repos/asf/isis/tree/04baa307
Diff: http://git-wip-us.apache.org/repos/asf/isis/diff/04baa307
Branch: refs/heads/master
Commit: 04baa307b7fb1afe42e2b5e684ac9bbab64223cc
Parents: e7f97df
Author: Dan Haywood <da...@apache.org>
Authored: Fri Jan 17 17:57:00 2014 +0000
Committer: Dan Haywood <da...@apache.org>
Committed: Fri Jan 17 17:57:00 2014 +0000
----------------------------------------------------------------------
.../ui/components/widgets/Select2ChoiceUtil.java | 3 ++-
.../entitylink/EntityLinkSelect2Panel.java | 18 +++++++++++++++++-
2 files changed, 19 insertions(+), 2 deletions(-)
----------------------------------------------------------------------
http://git-wip-us.apache.org/repos/asf/isis/blob/04baa307/component/viewer/wicket/ui/src/main/java/org/apache/isis/viewer/wicket/ui/components/widgets/Select2ChoiceUtil.java
----------------------------------------------------------------------
diff --git a/component/viewer/wicket/ui/src/main/java/org/apache/isis/viewer/wicket/ui/components/widgets/Select2ChoiceUtil.java b/component/viewer/wicket/ui/src/main/java/org/apache/isis/viewer/wicket/ui/components/widgets/Select2ChoiceUtil.java
index 8738a80..4edc76e 100644
--- a/component/viewer/wicket/ui/src/main/java/org/apache/isis/viewer/wicket/ui/components/widgets/Select2ChoiceUtil.java
+++ b/component/viewer/wicket/ui/src/main/java/org/apache/isis/viewer/wicket/ui/components/widgets/Select2ChoiceUtil.java
@@ -36,8 +36,9 @@ public final class Select2ChoiceUtil {
public static Select2Choice<ObjectAdapterMemento> newSelect2Choice(String id, final IModel<ObjectAdapterMemento> modelObject, ScalarModel scalarModel) {
Select2Choice<ObjectAdapterMemento> select2Choice = new Select2Choice<ObjectAdapterMemento>(id, modelObject);
- int typicalLength = scalarModel.getTypicalLength();
+ int typicalLength = scalarModel.getTypicalLength();
select2Choice.add(new AttributeAppender("style", asCssStyleWidth(typicalLength)));
+ select2Choice.setRequired(scalarModel.isRequired());
return select2Choice;
}
http://git-wip-us.apache.org/repos/asf/isis/blob/04baa307/component/viewer/wicket/ui/src/main/java/org/apache/isis/viewer/wicket/ui/components/widgets/entitylink/EntityLinkSelect2Panel.java
----------------------------------------------------------------------
diff --git a/component/viewer/wicket/ui/src/main/java/org/apache/isis/viewer/wicket/ui/components/widgets/entitylink/EntityLinkSelect2Panel.java b/component/viewer/wicket/ui/src/main/java/org/apache/isis/viewer/wicket/ui/components/widgets/entitylink/EntityLinkSelect2Panel.java
index 3357976..ea2550a 100644
--- a/component/viewer/wicket/ui/src/main/java/org/apache/isis/viewer/wicket/ui/components/widgets/entitylink/EntityLinkSelect2Panel.java
+++ b/component/viewer/wicket/ui/src/main/java/org/apache/isis/viewer/wicket/ui/components/widgets/entitylink/EntityLinkSelect2Panel.java
@@ -93,7 +93,21 @@ public class EntityLinkSelect2Panel extends FormComponentPanelAbstract<ObjectAda
syncWithInput();
}
+ /**
+ * Necessary because {@link FormComponentPanel} overrides this as <tt>true</tt>, whereas we want to
+ * report on the state of the underlying {@link Select2Choice}.
+ */
+ @Override
+ public boolean checkRequired() {
+ return select2Field.checkRequired();
+ }
+ @Override
+ public boolean isRequired() {
+ return super.isRequired();
+ }
+
+
/**
* Must be called after {@link #setEnabled(boolean)} to ensure that the
* <tt>findUsing</tt> button, and the <tt>entityClearLink</tt> are
@@ -189,6 +203,7 @@ public class EntityLinkSelect2Panel extends FormComponentPanelAbstract<ObjectAda
final IModel<ObjectAdapterMemento> model = ScalarModelWithPending.Util.createModel(getScalarModel().asScalarModelWithPending());
if(select2Field == null) {
+ setRequired(getScalarModel().isRequired());
select2Field = Select2ChoiceUtil.newSelect2Choice(ID_AUTO_COMPLETE, model, getScalarModel());
setProviderAndCurrAndPending(select2Field, getScalarModel().getActionArgsHint());
if(!getScalarModel().hasChoices()) {
@@ -329,7 +344,8 @@ public class EntityLinkSelect2Panel extends FormComponentPanelAbstract<ObjectAda
if(this.select2Field != null) {
select2Field.getModel().setObject(selectedAdapterMemento);
}
- renderSamePage();
+ // not sure why this was here, at any rate it trips up when performing validation with modal dialogs.
+ // renderSamePage();
}
public void onNoResults() {