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:49 UTC

[18/37] isis git commit: ISIS-1613: ensures that ScalarModel and ActionModel have a FormExecutor assigned to them as soon as created.

ISIS-1613: ensures that ScalarModel and ActionModel have a FormExecutor assigned to them as soon as created.

Also removes commented out code from previous commit.


Project: http://git-wip-us.apache.org/repos/asf/isis/repo
Commit: http://git-wip-us.apache.org/repos/asf/isis/commit/cfb20671
Tree: http://git-wip-us.apache.org/repos/asf/isis/tree/cfb20671
Diff: http://git-wip-us.apache.org/repos/asf/isis/diff/cfb20671

Branch: refs/heads/master
Commit: cfb206716b353234c3d5d4c7888e472456f6d794
Parents: c1323ca
Author: Dan Haywood <da...@haywood-associates.co.uk>
Authored: Mon May 15 13:23:31 2017 +0100
Committer: Dan Haywood <da...@haywood-associates.co.uk>
Committed: Mon May 15 13:23:31 2017 +0100

----------------------------------------------------------------------
 .../ui/components/actions/ActionParametersFormExecutor.java   | 4 ++--
 .../ajaxtable/columns/ObjectAdapterPropertyColumn.java        | 3 +++
 .../wicket/ui/components/entity/fieldset/PropertyGroup.java   | 4 ++++
 .../ui/components/property/PropertyEditFormExecutor.java      | 4 ++--
 .../wicket/ui/components/property/PropertyEditPanel.java      | 7 +++++--
 .../wicket/ui/components/scalars/ScalarPanelAbstract2.java    | 6 ------
 .../viewer/wicket/ui/pages/actionprompt/ActionPromptPage.java | 5 ++++-
 .../isis/viewer/wicket/ui/panels/FormExecutorAbstract.java    | 7 +------
 8 files changed, 21 insertions(+), 19 deletions(-)
----------------------------------------------------------------------


http://git-wip-us.apache.org/repos/asf/isis/blob/cfb20671/core/viewer-wicket-ui/src/main/java/org/apache/isis/viewer/wicket/ui/components/actions/ActionParametersFormExecutor.java
----------------------------------------------------------------------
diff --git a/core/viewer-wicket-ui/src/main/java/org/apache/isis/viewer/wicket/ui/components/actions/ActionParametersFormExecutor.java b/core/viewer-wicket-ui/src/main/java/org/apache/isis/viewer/wicket/ui/components/actions/ActionParametersFormExecutor.java
index 46d5cbf..850bc18 100644
--- a/core/viewer-wicket-ui/src/main/java/org/apache/isis/viewer/wicket/ui/components/actions/ActionParametersFormExecutor.java
+++ b/core/viewer-wicket-ui/src/main/java/org/apache/isis/viewer/wicket/ui/components/actions/ActionParametersFormExecutor.java
@@ -16,8 +16,8 @@ import org.apache.isis.viewer.wicket.ui.panels.FormExecutorAbstract;
 
 public class ActionParametersFormExecutor extends FormExecutorAbstract<ActionModel> {
 
-    public ActionParametersFormExecutor(/*final MarkupContainer panel, */final ActionModel actionModel) {
-        super(/*panel, */actionModel);
+    public ActionParametersFormExecutor(final ActionModel actionModel) {
+        super(actionModel);
     }
 
 

http://git-wip-us.apache.org/repos/asf/isis/blob/cfb20671/core/viewer-wicket-ui/src/main/java/org/apache/isis/viewer/wicket/ui/components/collectioncontents/ajaxtable/columns/ObjectAdapterPropertyColumn.java
----------------------------------------------------------------------
diff --git a/core/viewer-wicket-ui/src/main/java/org/apache/isis/viewer/wicket/ui/components/collectioncontents/ajaxtable/columns/ObjectAdapterPropertyColumn.java b/core/viewer-wicket-ui/src/main/java/org/apache/isis/viewer/wicket/ui/components/collectioncontents/ajaxtable/columns/ObjectAdapterPropertyColumn.java
index b078f20..c043d44 100644
--- a/core/viewer-wicket-ui/src/main/java/org/apache/isis/viewer/wicket/ui/components/collectioncontents/ajaxtable/columns/ObjectAdapterPropertyColumn.java
+++ b/core/viewer-wicket-ui/src/main/java/org/apache/isis/viewer/wicket/ui/components/collectioncontents/ajaxtable/columns/ObjectAdapterPropertyColumn.java
@@ -35,6 +35,7 @@ import org.apache.isis.viewer.wicket.ui.ComponentFactory;
 import org.apache.isis.viewer.wicket.ui.ComponentType;
 import org.apache.isis.viewer.wicket.ui.app.registry.ComponentFactoryRegistry;
 import org.apache.isis.viewer.wicket.ui.components.collectioncontents.ajaxtable.CollectionContentsAsAjaxTablePanel;
+import org.apache.isis.viewer.wicket.ui.components.property.PropertyEditFormExecutor;
 
 /**
  * A {@link ColumnAbstract column} within a
@@ -87,7 +88,9 @@ public final class ObjectAdapterPropertyColumn extends ColumnAbstract<ObjectAdap
         final EntityModel entityModel = new EntityModel(adapter);
         final OneToOneAssociation property = (OneToOneAssociation) adapter.getSpecification().getAssociation(propertyExpression);
         final PropertyMemento pm = new PropertyMemento(property, entityModel.getIsisSessionFactory());
+
         final ScalarModel scalarModel = entityModel.getPropertyModel(pm);
+        scalarModel.setFormExecutor(new PropertyEditFormExecutor(scalarModel));
 
         scalarModel.setRenderingHint(RenderingHint.PROPERTY_COLUMN);
         scalarModel.toViewMode();

http://git-wip-us.apache.org/repos/asf/isis/blob/cfb20671/core/viewer-wicket-ui/src/main/java/org/apache/isis/viewer/wicket/ui/components/entity/fieldset/PropertyGroup.java
----------------------------------------------------------------------
diff --git a/core/viewer-wicket-ui/src/main/java/org/apache/isis/viewer/wicket/ui/components/entity/fieldset/PropertyGroup.java b/core/viewer-wicket-ui/src/main/java/org/apache/isis/viewer/wicket/ui/components/entity/fieldset/PropertyGroup.java
index c758b8d..916c212 100644
--- a/core/viewer-wicket-ui/src/main/java/org/apache/isis/viewer/wicket/ui/components/entity/fieldset/PropertyGroup.java
+++ b/core/viewer-wicket-ui/src/main/java/org/apache/isis/viewer/wicket/ui/components/entity/fieldset/PropertyGroup.java
@@ -52,6 +52,7 @@ import org.apache.isis.viewer.wicket.model.models.ScalarModel;
 import org.apache.isis.viewer.wicket.ui.ComponentType;
 import org.apache.isis.viewer.wicket.ui.components.actionmenu.entityactions.AdditionalLinksPanel;
 import org.apache.isis.viewer.wicket.ui.components.actionmenu.entityactions.LinkAndLabelUtil;
+import org.apache.isis.viewer.wicket.ui.components.property.PropertyEditFormExecutor;
 import org.apache.isis.viewer.wicket.ui.panels.HasDynamicallyVisibleContent;
 import org.apache.isis.viewer.wicket.ui.panels.PanelAbstract;
 import org.apache.isis.viewer.wicket.ui.util.Components;
@@ -166,7 +167,10 @@ public class PropertyGroup extends PanelAbstract<EntityModel> implements HasDyna
             final List<LinkAndLabel> entityActions) {
 
         final PropertyMemento pm = new PropertyMemento(otoa, entityModel.getIsisSessionFactory());
+
         final ScalarModel scalarModel = entityModel.getPropertyModel(pm);
+        scalarModel.setFormExecutor(new PropertyEditFormExecutor(scalarModel));
+
         getComponentFactoryRegistry()
                 .addOrReplaceComponent(container, ID_PROPERTY, ComponentType.SCALAR_NAME_AND_VALUE, scalarModel);
 

http://git-wip-us.apache.org/repos/asf/isis/blob/cfb20671/core/viewer-wicket-ui/src/main/java/org/apache/isis/viewer/wicket/ui/components/property/PropertyEditFormExecutor.java
----------------------------------------------------------------------
diff --git a/core/viewer-wicket-ui/src/main/java/org/apache/isis/viewer/wicket/ui/components/property/PropertyEditFormExecutor.java b/core/viewer-wicket-ui/src/main/java/org/apache/isis/viewer/wicket/ui/components/property/PropertyEditFormExecutor.java
index 6fcdef5..2c88aa9 100644
--- a/core/viewer-wicket-ui/src/main/java/org/apache/isis/viewer/wicket/ui/components/property/PropertyEditFormExecutor.java
+++ b/core/viewer-wicket-ui/src/main/java/org/apache/isis/viewer/wicket/ui/components/property/PropertyEditFormExecutor.java
@@ -14,8 +14,8 @@ import org.apache.isis.viewer.wicket.ui.panels.FormExecutorAbstract;
 
 public class PropertyEditFormExecutor extends FormExecutorAbstract<ScalarModel> {
 
-    public PropertyEditFormExecutor(/*final MarkupContainer panel, */final ScalarModel scalarModel) {
-        super(/*panel, */scalarModel);
+    public PropertyEditFormExecutor(final ScalarModel scalarModel) {
+        super(scalarModel);
     }
 
     protected ObjectAdapter obtainTargetAdapter() {

http://git-wip-us.apache.org/repos/asf/isis/blob/cfb20671/core/viewer-wicket-ui/src/main/java/org/apache/isis/viewer/wicket/ui/components/property/PropertyEditPanel.java
----------------------------------------------------------------------
diff --git a/core/viewer-wicket-ui/src/main/java/org/apache/isis/viewer/wicket/ui/components/property/PropertyEditPanel.java b/core/viewer-wicket-ui/src/main/java/org/apache/isis/viewer/wicket/ui/components/property/PropertyEditPanel.java
index c442464..8bbc616 100644
--- a/core/viewer-wicket-ui/src/main/java/org/apache/isis/viewer/wicket/ui/components/property/PropertyEditPanel.java
+++ b/core/viewer-wicket-ui/src/main/java/org/apache/isis/viewer/wicket/ui/components/property/PropertyEditPanel.java
@@ -54,8 +54,11 @@ public class PropertyEditPanel extends PanelAbstract<ScalarModel> {
             final String id,
             final ScalarModel scalarModel) {
         super(id, new ScalarModel(scalarModel.getParentEntityModel(), scalarModel.getPropertyMemento()));
-        final PropertyEditFormExecutor formExecutor = new PropertyEditFormExecutor(/*this, */scalarModel);
-        scalarModel.setFormExecutor(formExecutor);
+
+        final ScalarModel model = getModel();
+        final PropertyEditFormExecutor formExecutor = new PropertyEditFormExecutor(/*this, */model);
+        model.setFormExecutor(formExecutor);
+
         buildGui(scalarModel);
     }
 

http://git-wip-us.apache.org/repos/asf/isis/blob/cfb20671/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 62cc6d9..d74b644 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
@@ -53,7 +53,6 @@ import org.apache.isis.viewer.wicket.model.models.ScalarModel;
 import org.apache.isis.viewer.wicket.ui.ComponentType;
 import org.apache.isis.viewer.wicket.ui.components.actionmenu.entityactions.AdditionalLinksPanel;
 import org.apache.isis.viewer.wicket.ui.components.actionmenu.entityactions.LinkAndLabelUtil;
-import org.apache.isis.viewer.wicket.ui.components.property.PropertyEditFormExecutor;
 import org.apache.isis.viewer.wicket.ui.components.property.PropertyEditFormPanel;
 import org.apache.isis.viewer.wicket.ui.components.property.PropertyEditPanel;
 import org.apache.isis.viewer.wicket.ui.components.propertyheader.PropertyEditPromptHeaderPanel;
@@ -526,11 +525,6 @@ public abstract class ScalarPanelAbstract2 extends PanelAbstract<ScalarModel> im
 
                 scalarModel.toEditMode();
 
-                // dynamically update the edit form.
-                final PropertyEditFormExecutor formExecutor =
-                        new PropertyEditFormExecutor(/*ScalarPanelAbstract2.this, */scalarModel);
-                scalarModel.setFormExecutor(formExecutor);
-
                 switchFormForInlinePrompt(target);
 
                 getComponentForRegular().setVisible(false);

http://git-wip-us.apache.org/repos/asf/isis/blob/cfb20671/core/viewer-wicket-ui/src/main/java/org/apache/isis/viewer/wicket/ui/pages/actionprompt/ActionPromptPage.java
----------------------------------------------------------------------
diff --git a/core/viewer-wicket-ui/src/main/java/org/apache/isis/viewer/wicket/ui/pages/actionprompt/ActionPromptPage.java b/core/viewer-wicket-ui/src/main/java/org/apache/isis/viewer/wicket/ui/pages/actionprompt/ActionPromptPage.java
index a9c96e6..156e36e 100644
--- a/core/viewer-wicket-ui/src/main/java/org/apache/isis/viewer/wicket/ui/pages/actionprompt/ActionPromptPage.java
+++ b/core/viewer-wicket-ui/src/main/java/org/apache/isis/viewer/wicket/ui/pages/actionprompt/ActionPromptPage.java
@@ -27,6 +27,7 @@ import org.apache.isis.core.metamodel.specloader.SpecificationLoader;
 import org.apache.isis.core.runtime.system.context.IsisContext;
 import org.apache.isis.viewer.wicket.model.models.ActionModel;
 import org.apache.isis.viewer.wicket.ui.ComponentType;
+import org.apache.isis.viewer.wicket.ui.components.actions.ActionParametersFormExecutor;
 import org.apache.isis.viewer.wicket.ui.pages.PageAbstract;
 
 /**
@@ -72,6 +73,8 @@ public class ActionPromptPage extends PageAbstract {
     private static ActionModel buildModel(
             final PageParameters pageParameters,
             final SpecificationLoader specificationLoader) {
-        return ActionModel.createForPersistent(pageParameters, specificationLoader);
+        final ActionModel actionModel = ActionModel.createForPersistent(pageParameters, specificationLoader);
+        actionModel.setFormExecutor(new ActionParametersFormExecutor(actionModel));
+        return actionModel;
     }
 }

http://git-wip-us.apache.org/repos/asf/isis/blob/cfb20671/core/viewer-wicket-ui/src/main/java/org/apache/isis/viewer/wicket/ui/panels/FormExecutorAbstract.java
----------------------------------------------------------------------
diff --git a/core/viewer-wicket-ui/src/main/java/org/apache/isis/viewer/wicket/ui/panels/FormExecutorAbstract.java b/core/viewer-wicket-ui/src/main/java/org/apache/isis/viewer/wicket/ui/panels/FormExecutorAbstract.java
index 6bb72d5..97611da 100644
--- a/core/viewer-wicket-ui/src/main/java/org/apache/isis/viewer/wicket/ui/panels/FormExecutorAbstract.java
+++ b/core/viewer-wicket-ui/src/main/java/org/apache/isis/viewer/wicket/ui/panels/FormExecutorAbstract.java
@@ -37,11 +37,9 @@ import org.apache.isis.viewer.wicket.ui.actionresponse.ActionResultResponseHandl
 
 public abstract class FormExecutorAbstract<M extends BookmarkableModel<ObjectAdapter>> implements FormExecutor {
 
-    // protected final MarkupContainer panel;
     protected final M model;
 
-    public FormExecutorAbstract(/*final MarkupContainer panel, */final M model) {
-        // this.panel = panel;
+    public FormExecutorAbstract(final M model) {
         this.model = model;
     }
 
@@ -51,8 +49,6 @@ public abstract class FormExecutorAbstract<M extends BookmarkableModel<ObjectAda
             final Form<?> feedbackForm,
             final PromptStyle promptStyle) {
 
-        // Components.permanentlyHide(panel, ComponentType.ENTITY_ICON_AND_TITLE);
-
         ObjectAdapter targetAdapter = null;
         try {
             targetAdapter = obtainTargetAdapter();
@@ -326,5 +322,4 @@ public abstract class FormExecutorAbstract<M extends BookmarkableModel<ObjectAda
             final AjaxRequestTarget target);
 
 
-
 }