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/06/02 16:09:11 UTC

isis git commit: ISIS-1633: fixes to UI, for reference panel and boolean panel

Repository: isis
Updated Branches:
  refs/heads/master 8c0f7d207 -> 3aca448ba


ISIS-1633: fixes to UI, for reference panel and boolean panel


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

Branch: refs/heads/master
Commit: 3aca448ba669afb95a6517e6e80202df11cd2ac2
Parents: 8c0f7d2
Author: Dan Haywood <da...@haywood-associates.co.uk>
Authored: Fri Jun 2 17:09:00 2017 +0100
Committer: Dan Haywood <da...@haywood-associates.co.uk>
Committed: Fri Jun 2 17:09:00 2017 +0100

----------------------------------------------------------------------
 .../isis/viewer/wicket/model/models/ScalarModel.java | 15 ++++++++++++++-
 .../ui/components/scalars/ScalarPanelAbstract2.java  |  3 +++
 .../components/scalars/primitive/BooleanPanel.java   |  8 +++++++-
 .../components/scalars/reference/ReferencePanel.java | 14 ++++++++------
 4 files changed, 32 insertions(+), 8 deletions(-)
----------------------------------------------------------------------


http://git-wip-us.apache.org/repos/asf/isis/blob/3aca448b/core/viewer-wicket-model/src/main/java/org/apache/isis/viewer/wicket/model/models/ScalarModel.java
----------------------------------------------------------------------
diff --git a/core/viewer-wicket-model/src/main/java/org/apache/isis/viewer/wicket/model/models/ScalarModel.java b/core/viewer-wicket-model/src/main/java/org/apache/isis/viewer/wicket/model/models/ScalarModel.java
index b660b2b..28aa815 100644
--- a/core/viewer-wicket-model/src/main/java/org/apache/isis/viewer/wicket/model/models/ScalarModel.java
+++ b/core/viewer-wicket-model/src/main/java/org/apache/isis/viewer/wicket/model/models/ScalarModel.java
@@ -1067,7 +1067,20 @@ public class ScalarModel extends EntityModel implements LinksProvider,FormExecut
         this.inlinePromptContext = inlinePromptContext;
     }
 
-    // //////////////////////////////////////
+
+    private boolean actionWithInlineAsIfEdit;
+
+    /**
+     * Whether there is an action configured for {@link PromptStyle#INLINE_AS_IF_EDIT} for this property.
+     */
+    public boolean hasActionWithInlineAsIfEdit() {
+        return actionWithInlineAsIfEdit;
+    }
+
+    public void setHasActionWithInlineAsIfEdit(final boolean inlineAsIfEditHint) {
+        this.actionWithInlineAsIfEdit = inlineAsIfEditHint;
+    }
+
 
     // //////////////////////////////////////
 

http://git-wip-us.apache.org/repos/asf/isis/blob/3aca448b/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 a42c0be..47790cd 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
@@ -280,6 +280,9 @@ public abstract class ScalarPanelAbstract2 extends PanelAbstract<ScalarModel> im
                 final LinkAndLabel linkAndLabelAsIfEdit = inlineAsIfEditIfAny(linkAndLabels);
 
                 if(linkAndLabelAsIfEdit != null) {
+
+                    scalarModel.setHasActionWithInlineAsIfEdit(true);
+
                     // safe to do this, the inlineAsEditIfAny(...) method checks for us
                     final ActionLink actionLinkInlineAsIfEdit = (ActionLink) linkAndLabelAsIfEdit.getLink();
 

http://git-wip-us.apache.org/repos/asf/isis/blob/3aca448b/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 484966c..e434f65 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
@@ -31,6 +31,7 @@ import org.apache.isis.applib.annotation.LabelPosition;
 import org.apache.isis.core.metamodel.adapter.ObjectAdapter;
 import org.apache.isis.core.metamodel.facets.objectvalue.labelat.LabelAtFacet;
 import org.apache.isis.core.metamodel.spec.ObjectSpecification;
+import org.apache.isis.viewer.wicket.model.models.EntityModel;
 import org.apache.isis.viewer.wicket.model.models.ScalarModel;
 import org.apache.isis.viewer.wicket.ui.components.scalars.ScalarPanelAbstract2;
 import org.apache.isis.viewer.wicket.ui.components.widgets.bootstrap.FormGroup;
@@ -97,7 +98,12 @@ public class BooleanPanel extends ScalarPanelAbstract2 {
 
     @Override
     protected InlinePromptConfig getInlinePromptConfig() {
-        return InlinePromptConfig.supportedAndHide(this.checkBox);
+        return InlinePromptConfig.supportedAndHide(
+                scalarModel.getMode() == EntityModel.Mode.EDIT || scalarModel.hasActionWithInlineAsIfEdit() ||
+                scalarModel.getKind() == ScalarModel.Kind.PARAMETER
+                        ? this.checkBox
+                        : null
+        );
     }
 
     @Override

http://git-wip-us.apache.org/repos/asf/isis/blob/3aca448b/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 3662a57..4e3ebb6 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
@@ -286,18 +286,20 @@ public class ReferencePanel extends ScalarPanelSelect2Abstract implements PanelW
 
             componentForRegular.addOrReplace(component);
 
+            boolean inlinePrompt = (scalarModel.getPromptStyle().isInline() && scalarModel.canEnterEditMode()) ||
+                                    scalarModel.hasActionWithInlineAsIfEdit();
+            if(inlinePrompt) {
+                // bit of a hack... allows us to suppress the title using CSS
+                component.add(new CssClassAppender("inlinePrompt"));
+            }
+
             if (adapter != null) {
-                if(scalarModel.getPromptStyle().isInlineOrInlineAsIfEdit() && scalarModel.canEnterEditMode()) {
-                    // bit of a hack... allows us to suppress the title using CSS
-                    component.add(new CssClassAppender("inlinePrompt"));
-                }
 
                 Components.permanentlyHide(componentForRegular, "entityTitleIfNull");
 
             } else {
 
-
-                if(scalarModel.getPromptStyle().isInlineOrInlineAsIfEdit() && scalarModel.canEnterEditMode()) {
+                if(inlinePrompt) {
                     Components.permanentlyHide(componentForRegular, "entityTitleIfNull");
                 } else {
                     componentForRegular.addOrReplace(new Label("entityTitleIfNull", "(none)"));