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 2017/05/16 13:00:41 UTC
[10/37] isis git commit: ISIS-1613: updates ScalarPanelAbstract2 to
move the initialization into onInitialize rather than onBeforeRender.
ISIS-1613: updates ScalarPanelAbstract2 to move the initialization into onInitialize rather than onBeforeRender.
Also renames the hooks
Project: http://git-wip-us.apache.org/repos/asf/isis/repo
Commit: http://git-wip-us.apache.org/repos/asf/isis/commit/a5c8f286
Tree: http://git-wip-us.apache.org/repos/asf/isis/tree/a5c8f286
Diff: http://git-wip-us.apache.org/repos/asf/isis/diff/a5c8f286
Branch: refs/heads/master
Commit: a5c8f286964839f920826af16d57f786e56d922b
Parents: 199428b
Author: Dan Haywood <da...@haywood-associates.co.uk>
Authored: Mon May 15 11:18:14 2017 +0100
Committer: Dan Haywood <da...@haywood-associates.co.uk>
Committed: Mon May 15 11:18:14 2017 +0100
----------------------------------------------------------------------
.../scalars/ScalarPanelAbstract2.java | 63 +++++++++++---------
.../scalars/ScalarPanelTextFieldAbstract.java | 12 ++--
.../isisapplib/IsisBlobOrClobPanelAbstract.java | 6 +-
.../scalars/primitive/BooleanPanel.java | 12 ++--
.../scalars/reference/ReferencePanel.java | 12 ++--
.../valuechoices/ValueChoicesSelect2Panel.java | 8 +--
6 files changed, 60 insertions(+), 53 deletions(-)
----------------------------------------------------------------------
http://git-wip-us.apache.org/repos/asf/isis/blob/a5c8f286/core/viewer-wicket-ui/src/main/java/org/apache/isis/viewer/wicket/ui/components/scalars/ScalarPanelAbstract2.java
----------------------------------------------------------------------
diff --git a/core/viewer-wicket-ui/src/main/java/org/apache/isis/viewer/wicket/ui/components/scalars/ScalarPanelAbstract2.java b/core/viewer-wicket-ui/src/main/java/org/apache/isis/viewer/wicket/ui/components/scalars/ScalarPanelAbstract2.java
index 80f848a..8d6e3b2 100644
--- a/core/viewer-wicket-ui/src/main/java/org/apache/isis/viewer/wicket/ui/components/scalars/ScalarPanelAbstract2.java
+++ b/core/viewer-wicket-ui/src/main/java/org/apache/isis/viewer/wicket/ui/components/scalars/ScalarPanelAbstract2.java
@@ -157,13 +157,36 @@ public abstract class ScalarPanelAbstract2 extends PanelAbstract<ScalarModel> im
protected void onInitialize() {
super.onInitialize();
- scalarTypeContainer = new WebMarkupContainer(ID_SCALAR_TYPE_CONTAINER);
- scalarTypeContainer.setOutputMarkupId(true);
- scalarTypeContainer.add(new CssClassAppender(Model.of(getScalarPanelType())));
- addOrReplace(scalarTypeContainer);
+ buildGuiAndCallHooks();
+
+ // REVIEW: think that this concurrency checking disabled is not needed given we disable in IsisWicketApplication anyway
+// AdapterManager.ConcurrencyChecking.executeWithConcurrencyCheckingDisabled(new Runnable() {
+// @Override public void run() {
+// buildGuiAndCallHooks();
+// }
+// });
+
+ setOutputMarkupId(true);
}
+ private void buildGuiAndCallHooks() {
+ buildGui();
+
+ final ScalarModel scalarModel = getModel();
+ final String disableReasonIfAny = scalarModel.disable(getRendering().getWhere());
+
+ if (scalarModel.isViewMode()) {
+ onInitializeWhenViewMode();
+ } else {
+ if (disableReasonIfAny != null) {
+ onInitializeWhenDisabled(disableReasonIfAny);
+ } else {
+ onInitializeWhenEnabled();
+ }
+ }
+ }
+
/**
* Mandatory hook; simply determines the CSS that is added to the outermost 'scalarTypeContainer' div.
*/
@@ -186,27 +209,6 @@ public abstract class ScalarPanelAbstract2 extends PanelAbstract<ScalarModel> im
*/
protected abstract InlinePromptConfig getInlinePromptConfig();
- @Override
- protected void onBeforeRender() {
-
- if ((!hasBeenRendered() || alwaysRebuildGui())) {
- buildGui();
- }
-
- final ScalarModel scalarModel = getModel();
- final String disableReasonIfAny = scalarModel.disable(getRendering().getWhere());
-
- if (scalarModel.isViewMode()) {
- onBeforeRenderWhenViewMode();
- } else {
- if (disableReasonIfAny != null) {
- onBeforeRenderWhenDisabled(disableReasonIfAny);
- } else {
- onBeforeRenderWhenEnabled();
- }
- }
- super.onBeforeRender();
- }
/**
@@ -230,6 +232,11 @@ public abstract class ScalarPanelAbstract2 extends PanelAbstract<ScalarModel> im
*/
private void buildGui() {
+ scalarTypeContainer = new WebMarkupContainer(ID_SCALAR_TYPE_CONTAINER);
+ scalarTypeContainer.setOutputMarkupId(true);
+ scalarTypeContainer.add(new CssClassAppender(Model.of(getScalarPanelType())));
+ addOrReplace(scalarTypeContainer);
+
this.scalarIfCompact = createComponentForCompact();
this.scalarIfRegular = createComponentForRegular();
scalarIfRegular.setOutputMarkupId(true);
@@ -291,19 +298,19 @@ public abstract class ScalarPanelAbstract2 extends PanelAbstract<ScalarModel> im
/**
* Optional hook.
*/
- protected void onBeforeRenderWhenViewMode() {
+ protected void onInitializeWhenViewMode() {
}
/**
* Optional hook.
*/
- protected void onBeforeRenderWhenDisabled(final String disableReason) {
+ protected void onInitializeWhenDisabled(final String disableReason) {
}
/**
* Optional hook.
*/
- protected void onBeforeRenderWhenEnabled() {
+ protected void onInitializeWhenEnabled() {
}
http://git-wip-us.apache.org/repos/asf/isis/blob/a5c8f286/core/viewer-wicket-ui/src/main/java/org/apache/isis/viewer/wicket/ui/components/scalars/ScalarPanelTextFieldAbstract.java
----------------------------------------------------------------------
diff --git a/core/viewer-wicket-ui/src/main/java/org/apache/isis/viewer/wicket/ui/components/scalars/ScalarPanelTextFieldAbstract.java b/core/viewer-wicket-ui/src/main/java/org/apache/isis/viewer/wicket/ui/components/scalars/ScalarPanelTextFieldAbstract.java
index 99638aa..3e37b4a 100644
--- a/core/viewer-wicket-ui/src/main/java/org/apache/isis/viewer/wicket/ui/components/scalars/ScalarPanelTextFieldAbstract.java
+++ b/core/viewer-wicket-ui/src/main/java/org/apache/isis/viewer/wicket/ui/components/scalars/ScalarPanelTextFieldAbstract.java
@@ -295,8 +295,8 @@ public abstract class ScalarPanelTextFieldAbstract<T extends Serializable> exten
@Override
- protected void onBeforeRenderWhenViewMode() {
- super.onBeforeRenderWhenViewMode();
+ protected void onInitializeWhenViewMode() {
+ super.onInitializeWhenViewMode();
textField.setEnabled(false);
addReplaceDisabledTagWithReadonlyTagBehaviourIfRequired(textField);
@@ -305,8 +305,8 @@ public abstract class ScalarPanelTextFieldAbstract<T extends Serializable> exten
}
@Override
- protected void onBeforeRenderWhenDisabled(final String disableReason) {
- super.onBeforeRenderWhenDisabled(disableReason);
+ protected void onInitializeWhenDisabled(final String disableReason) {
+ super.onInitializeWhenDisabled(disableReason);
textField.setEnabled(false);
addReplaceDisabledTagWithReadonlyTagBehaviourIfRequired(textField);
@@ -317,8 +317,8 @@ public abstract class ScalarPanelTextFieldAbstract<T extends Serializable> exten
}
@Override
- protected void onBeforeRenderWhenEnabled() {
- super.onBeforeRenderWhenEnabled();
+ protected void onInitializeWhenEnabled() {
+ super.onInitializeWhenEnabled();
textField.setEnabled(true);
inlinePromptLink.setEnabled(true);
setTitleAttribute("");
http://git-wip-us.apache.org/repos/asf/isis/blob/a5c8f286/core/viewer-wicket-ui/src/main/java/org/apache/isis/viewer/wicket/ui/components/scalars/isisapplib/IsisBlobOrClobPanelAbstract.java
----------------------------------------------------------------------
diff --git a/core/viewer-wicket-ui/src/main/java/org/apache/isis/viewer/wicket/ui/components/scalars/isisapplib/IsisBlobOrClobPanelAbstract.java b/core/viewer-wicket-ui/src/main/java/org/apache/isis/viewer/wicket/ui/components/scalars/isisapplib/IsisBlobOrClobPanelAbstract.java
index 9c1c57f..e3d56a1 100644
--- a/core/viewer-wicket-ui/src/main/java/org/apache/isis/viewer/wicket/ui/components/scalars/isisapplib/IsisBlobOrClobPanelAbstract.java
+++ b/core/viewer-wicket-ui/src/main/java/org/apache/isis/viewer/wicket/ui/components/scalars/isisapplib/IsisBlobOrClobPanelAbstract.java
@@ -191,15 +191,15 @@ public abstract class IsisBlobOrClobPanelAbstract<T extends NamedWithMimeType> e
// //////////////////////////////////////
- protected void onBeforeRenderWhenViewMode() {
+ protected void onInitializeWhenViewMode() {
updateRegularFormComponents(InputFieldVisibility.NOT_VISIBLE);
}
- protected void onBeforeRenderWhenDisabled(final String disableReason) {
+ protected void onInitializeWhenDisabled(final String disableReason) {
updateRegularFormComponents(InputFieldVisibility.NOT_VISIBLE);
}
- protected void onBeforeRenderWhenEnabled() {
+ protected void onInitializeWhenEnabled() {
updateRegularFormComponents(InputFieldVisibility.VISIBLE);
}
http://git-wip-us.apache.org/repos/asf/isis/blob/a5c8f286/core/viewer-wicket-ui/src/main/java/org/apache/isis/viewer/wicket/ui/components/scalars/primitive/BooleanPanel.java
----------------------------------------------------------------------
diff --git a/core/viewer-wicket-ui/src/main/java/org/apache/isis/viewer/wicket/ui/components/scalars/primitive/BooleanPanel.java b/core/viewer-wicket-ui/src/main/java/org/apache/isis/viewer/wicket/ui/components/scalars/primitive/BooleanPanel.java
index e7a737d..550eff3 100644
--- a/core/viewer-wicket-ui/src/main/java/org/apache/isis/viewer/wicket/ui/components/scalars/primitive/BooleanPanel.java
+++ b/core/viewer-wicket-ui/src/main/java/org/apache/isis/viewer/wicket/ui/components/scalars/primitive/BooleanPanel.java
@@ -191,20 +191,20 @@ public class BooleanPanel extends ScalarPanelAbstract2 {
}
@Override
- protected void onBeforeRenderWhenEnabled() {
- super.onBeforeRenderWhenEnabled();
+ protected void onInitializeWhenEnabled() {
+ super.onInitializeWhenEnabled();
checkBox.setEnabled(true);
}
@Override
- protected void onBeforeRenderWhenViewMode() {
- super.onBeforeRenderWhenViewMode();
+ protected void onInitializeWhenViewMode() {
+ super.onInitializeWhenViewMode();
checkBox.setEnabled(false);
}
@Override
- protected void onBeforeRenderWhenDisabled(final String disableReason) {
- super.onBeforeRenderWhenDisabled(disableReason);
+ protected void onInitializeWhenDisabled(final String disableReason) {
+ super.onInitializeWhenDisabled(disableReason);
checkBox.setEnabled(false);
}
http://git-wip-us.apache.org/repos/asf/isis/blob/a5c8f286/core/viewer-wicket-ui/src/main/java/org/apache/isis/viewer/wicket/ui/components/scalars/reference/ReferencePanel.java
----------------------------------------------------------------------
diff --git a/core/viewer-wicket-ui/src/main/java/org/apache/isis/viewer/wicket/ui/components/scalars/reference/ReferencePanel.java b/core/viewer-wicket-ui/src/main/java/org/apache/isis/viewer/wicket/ui/components/scalars/reference/ReferencePanel.java
index 5834103..c5804c3 100644
--- a/core/viewer-wicket-ui/src/main/java/org/apache/isis/viewer/wicket/ui/components/scalars/reference/ReferencePanel.java
+++ b/core/viewer-wicket-ui/src/main/java/org/apache/isis/viewer/wicket/ui/components/scalars/reference/ReferencePanel.java
@@ -240,22 +240,22 @@ public class ReferencePanel extends ScalarPanelSelect2Abstract implements PanelW
// //////////////////////////////////////
@Override
- protected void onBeforeRenderWhenEnabled() {
- super.onBeforeRenderWhenEnabled();
+ protected void onInitializeWhenEnabled() {
+ super.onInitializeWhenEnabled();
entityLink.setEnabled(true);
syncWithInput();
}
@Override
- protected void onBeforeRenderWhenViewMode() {
- super.onBeforeRenderWhenViewMode();
+ protected void onInitializeWhenViewMode() {
+ super.onInitializeWhenViewMode();
entityLink.setEnabled(false);
syncWithInput();
}
@Override
- protected void onBeforeRenderWhenDisabled(final String disableReason) {
- super.onBeforeRenderWhenDisabled(disableReason);
+ protected void onInitializeWhenDisabled(final String disableReason) {
+ super.onInitializeWhenDisabled(disableReason);
syncWithInput();
final EntityModel entityLinkModel = (EntityModel) entityLink.getModel();
entityLinkModel.toViewMode();
http://git-wip-us.apache.org/repos/asf/isis/blob/a5c8f286/core/viewer-wicket-ui/src/main/java/org/apache/isis/viewer/wicket/ui/components/scalars/valuechoices/ValueChoicesSelect2Panel.java
----------------------------------------------------------------------
diff --git a/core/viewer-wicket-ui/src/main/java/org/apache/isis/viewer/wicket/ui/components/scalars/valuechoices/ValueChoicesSelect2Panel.java b/core/viewer-wicket-ui/src/main/java/org/apache/isis/viewer/wicket/ui/components/scalars/valuechoices/ValueChoicesSelect2Panel.java
index db0f47f..756b5f7 100644
--- a/core/viewer-wicket-ui/src/main/java/org/apache/isis/viewer/wicket/ui/components/scalars/valuechoices/ValueChoicesSelect2Panel.java
+++ b/core/viewer-wicket-ui/src/main/java/org/apache/isis/viewer/wicket/ui/components/scalars/valuechoices/ValueChoicesSelect2Panel.java
@@ -118,13 +118,13 @@ public class ValueChoicesSelect2Panel extends ScalarPanelSelect2Abstract impleme
}
@Override
- protected void onBeforeRenderWhenViewMode() {
+ protected void onInitializeWhenViewMode() {
// View: Read only
select2.setEnabled(false);
}
@Override
- protected void onBeforeRenderWhenEnabled() {
+ protected void onInitializeWhenEnabled() {
// Edit: read/write
select2.setEnabled(true);
@@ -132,8 +132,8 @@ public class ValueChoicesSelect2Panel extends ScalarPanelSelect2Abstract impleme
}
@Override
- protected void onBeforeRenderWhenDisabled(final String disableReason) {
- super.onBeforeRenderWhenDisabled(disableReason);
+ protected void onInitializeWhenDisabled(final String disableReason) {
+ super.onInitializeWhenDisabled(disableReason);
setTitleAttribute(disableReason);
select2.setEnabled(false);
}