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 2020/02/12 10:38:37 UTC

[isis] 03/19: ISIS-2062: updates examples

This is an automated email from the ASF dual-hosted git repository.

danhaywood pushed a commit to branch master
in repository https://gitbox.apache.org/repos/asf/isis.git

commit 248c731e1a9329beb6d67db8b88e712ca79c7485
Author: danhaywood <da...@haywood-associates.co.uk>
AuthorDate: Tue Feb 11 20:58:09 2020 +0000

    ISIS-2062: updates examples
---
 .../examples/annotation/ActionLayout.java          |  9 ++---
 .../examples/annotation/DomainObjectLayout.java    |  4 +--
 .../examples/annotation/ViewModelLayout.java       |  6 +---
 .../layout/component/ActionLayoutData.java         |  7 ++--
 ...{HasCssClassFa.java => CssClassFaPosition.java} | 19 ++++-------
 .../layout/component/DomainObjectLayoutData.java   |  6 ++--
 .../examples/layout/component/HasCssClassFa.java   |  6 ++--
 .../examples/layout/grid/GridAbstract.java         |  1 +
 .../examples/services/layout/LayoutService.java    | 38 +++++++++++++++-------
 9 files changed, 46 insertions(+), 50 deletions(-)

diff --git a/api/applib/src/main/adoc/modules/applib-ant/examples/annotation/ActionLayout.java b/api/applib/src/main/adoc/modules/applib-ant/examples/annotation/ActionLayout.java
index 45239f3..ca1a3a7 100644
--- a/api/applib/src/main/adoc/modules/applib-ant/examples/annotation/ActionLayout.java
+++ b/api/applib/src/main/adoc/modules/applib-ant/examples/annotation/ActionLayout.java
@@ -27,6 +27,8 @@ import java.lang.annotation.Target;
 
 import javax.xml.bind.annotation.XmlType;
 
+import org.apache.isis.applib.layout.component.CssClassFaPosition;
+
 /**
  * Layout hints for actions.
  */
@@ -75,13 +77,6 @@ public @interface ActionLayout {
      */
     CssClassFaPosition cssClassFaPosition() default CssClassFaPosition.LEFT;
 
-    @XmlType(
-            namespace = "http://isis.apache.org/applib/layout/component"
-            )
-    enum CssClassFaPosition {
-        LEFT, RIGHT
-    }
-
     // //////////////////////////////////////
 
     /**
diff --git a/api/applib/src/main/adoc/modules/applib-ant/examples/annotation/DomainObjectLayout.java b/api/applib/src/main/adoc/modules/applib-ant/examples/annotation/DomainObjectLayout.java
index e971135..73344ce 100644
--- a/api/applib/src/main/adoc/modules/applib-ant/examples/annotation/DomainObjectLayout.java
+++ b/api/applib/src/main/adoc/modules/applib-ant/examples/annotation/DomainObjectLayout.java
@@ -29,6 +29,7 @@ import org.apache.isis.applib.events.ui.CssClassUiEvent;
 import org.apache.isis.applib.events.ui.IconUiEvent;
 import org.apache.isis.applib.events.ui.LayoutUiEvent;
 import org.apache.isis.applib.events.ui.TitleUiEvent;
+import org.apache.isis.applib.layout.component.CssClassFaPosition;
 
 /**
  * Layout hints for domain objects.
@@ -104,9 +105,6 @@ public @interface DomainObjectLayout {
      */
     CssClassFaPosition cssClassFaPosition() default CssClassFaPosition.LEFT;
 
-    enum CssClassFaPosition {
-        LEFT, RIGHT
-    }
 
     // //////////////////////////////////////
 
diff --git a/api/applib/src/main/adoc/modules/applib-ant/examples/annotation/ViewModelLayout.java b/api/applib/src/main/adoc/modules/applib-ant/examples/annotation/ViewModelLayout.java
index 6db5c3a..f2972f8 100644
--- a/api/applib/src/main/adoc/modules/applib-ant/examples/annotation/ViewModelLayout.java
+++ b/api/applib/src/main/adoc/modules/applib-ant/examples/annotation/ViewModelLayout.java
@@ -29,6 +29,7 @@ import org.apache.isis.applib.events.ui.CssClassUiEvent;
 import org.apache.isis.applib.events.ui.IconUiEvent;
 import org.apache.isis.applib.events.ui.LayoutUiEvent;
 import org.apache.isis.applib.events.ui.TitleUiEvent;
+import org.apache.isis.applib.layout.component.CssClassFaPosition;
 
 /**
  * Layout hints for view models.
@@ -116,11 +117,6 @@ public @interface ViewModelLayout {
      */
     CssClassFaPosition cssClassFaPosition() default CssClassFaPosition.LEFT;
 
-    enum CssClassFaPosition {
-        LEFT, RIGHT
-    }
-
-
     // //////////////////////////////////////
 
     /**
diff --git a/api/applib/src/main/adoc/modules/applib-cm/examples/layout/component/ActionLayoutData.java b/api/applib/src/main/adoc/modules/applib-cm/examples/layout/component/ActionLayoutData.java
index 0123d3c..0464846 100644
--- a/api/applib/src/main/adoc/modules/applib-cm/examples/layout/component/ActionLayoutData.java
+++ b/api/applib/src/main/adoc/modules/applib-cm/examples/layout/component/ActionLayoutData.java
@@ -125,17 +125,16 @@ HasDescribedAs, HasHidden, HasNamed, HasBookmarking {
     }
 
 
-
-    private org.apache.isis.applib.annotation.ActionLayout.CssClassFaPosition cssClassFaPosition;
+    private CssClassFaPosition cssClassFaPosition;
 
     @Override
     @XmlAttribute(required = false)
-    public org.apache.isis.applib.annotation.ActionLayout.CssClassFaPosition getCssClassFaPosition() {
+    public CssClassFaPosition getCssClassFaPosition() {
         return cssClassFaPosition;
     }
 
     @Override
-    public void setCssClassFaPosition(org.apache.isis.applib.annotation.ActionLayout.CssClassFaPosition cssClassFaPosition) {
+    public void setCssClassFaPosition(CssClassFaPosition cssClassFaPosition) {
         this.cssClassFaPosition = cssClassFaPosition;
     }
 
diff --git a/api/applib/src/main/adoc/modules/applib-cm/examples/layout/component/HasCssClassFa.java b/api/applib/src/main/adoc/modules/applib-cm/examples/layout/component/CssClassFaPosition.java
similarity index 67%
copy from api/applib/src/main/adoc/modules/applib-cm/examples/layout/component/HasCssClassFa.java
copy to api/applib/src/main/adoc/modules/applib-cm/examples/layout/component/CssClassFaPosition.java
index d556447..07faa5d 100644
--- a/api/applib/src/main/adoc/modules/applib-cm/examples/layout/component/HasCssClassFa.java
+++ b/api/applib/src/main/adoc/modules/applib-cm/examples/layout/component/CssClassFaPosition.java
@@ -18,18 +18,11 @@
  */
 package org.apache.isis.applib.layout.component;
 
-import javax.xml.bind.annotation.XmlAttribute;
-
-import org.apache.isis.applib.annotation.ActionLayout;
-
-public interface HasCssClassFa {
-
-    @XmlAttribute(required = false)
-    String getCssClassFa();
-    void setCssClassFa(String cssClassFa);
-
-    @XmlAttribute(required = false)
-    ActionLayout.CssClassFaPosition getCssClassFaPosition();
-    void setCssClassFaPosition(ActionLayout.CssClassFaPosition cssClassFaPosition);
+import javax.xml.bind.annotation.XmlType;
 
+@XmlType(
+        namespace = "http://isis.apache.org/applib/layout/component"
+        )
+public enum CssClassFaPosition {
+    LEFT, RIGHT
 }
diff --git a/api/applib/src/main/adoc/modules/applib-cm/examples/layout/component/DomainObjectLayoutData.java b/api/applib/src/main/adoc/modules/applib-cm/examples/layout/component/DomainObjectLayoutData.java
index 2630a05..e16a71a 100644
--- a/api/applib/src/main/adoc/modules/applib-cm/examples/layout/component/DomainObjectLayoutData.java
+++ b/api/applib/src/main/adoc/modules/applib-cm/examples/layout/component/DomainObjectLayoutData.java
@@ -98,16 +98,16 @@ HasBookmarking, HasCssClass, HasCssClassFa, HasDescribedAs, HasNamed {
 
 
 
-    private org.apache.isis.applib.annotation.ActionLayout.CssClassFaPosition cssClassFaPosition;
+    private CssClassFaPosition cssClassFaPosition;
 
     @Override
     @XmlAttribute(required = false)
-    public org.apache.isis.applib.annotation.ActionLayout.CssClassFaPosition getCssClassFaPosition() {
+    public CssClassFaPosition getCssClassFaPosition() {
         return cssClassFaPosition;
     }
 
     @Override
-    public void setCssClassFaPosition(org.apache.isis.applib.annotation.ActionLayout.CssClassFaPosition cssClassFaPosition) {
+    public void setCssClassFaPosition(CssClassFaPosition cssClassFaPosition) {
         this.cssClassFaPosition = cssClassFaPosition;
     }
 
diff --git a/api/applib/src/main/adoc/modules/applib-cm/examples/layout/component/HasCssClassFa.java b/api/applib/src/main/adoc/modules/applib-cm/examples/layout/component/HasCssClassFa.java
index d556447..8452713 100644
--- a/api/applib/src/main/adoc/modules/applib-cm/examples/layout/component/HasCssClassFa.java
+++ b/api/applib/src/main/adoc/modules/applib-cm/examples/layout/component/HasCssClassFa.java
@@ -20,8 +20,6 @@ package org.apache.isis.applib.layout.component;
 
 import javax.xml.bind.annotation.XmlAttribute;
 
-import org.apache.isis.applib.annotation.ActionLayout;
-
 public interface HasCssClassFa {
 
     @XmlAttribute(required = false)
@@ -29,7 +27,7 @@ public interface HasCssClassFa {
     void setCssClassFa(String cssClassFa);
 
     @XmlAttribute(required = false)
-    ActionLayout.CssClassFaPosition getCssClassFaPosition();
-    void setCssClassFaPosition(ActionLayout.CssClassFaPosition cssClassFaPosition);
+    CssClassFaPosition getCssClassFaPosition();
+    void setCssClassFaPosition(CssClassFaPosition cssClassFaPosition);
 
 }
diff --git a/api/applib/src/main/adoc/modules/applib-cm/examples/layout/grid/GridAbstract.java b/api/applib/src/main/adoc/modules/applib-cm/examples/layout/grid/GridAbstract.java
index 5ebfa9d..6a1fdc1 100644
--- a/api/applib/src/main/adoc/modules/applib-cm/examples/layout/grid/GridAbstract.java
+++ b/api/applib/src/main/adoc/modules/applib-cm/examples/layout/grid/GridAbstract.java
@@ -98,6 +98,7 @@ public abstract class GridAbstract implements Grid {
     protected void traverseActions(
             final ActionLayoutDataOwner actionLayoutDataOwner,
             final GridAbstract.Visitor visitor) {
+        
         final List<ActionLayoutData> actionLayoutDatas = actionLayoutDataOwner.getActions();
         if(actionLayoutDatas == null) {
             return;
diff --git a/api/applib/src/main/adoc/modules/applib-svc/examples/services/layout/LayoutService.java b/api/applib/src/main/adoc/modules/applib-svc/examples/services/layout/LayoutService.java
index ce40087..7b2f77f 100644
--- a/api/applib/src/main/adoc/modules/applib-svc/examples/services/layout/LayoutService.java
+++ b/api/applib/src/main/adoc/modules/applib-svc/examples/services/layout/LayoutService.java
@@ -24,45 +24,61 @@ import org.apache.isis.applib.services.menu.MenuBarsService;
 
 public interface LayoutService {
 
+    /**
+     * Mode of operation when downloading a layout file (while prototyping). It affects the way the file's 
+     * content is assembled. Once a layout file is in place, its layout data takes precedence over any 
+     * conflicting layout data from annotations.
+     */
     enum Style {
 
         /**
          * The current layout for the domain class.
-         * <p/>
          * <p>
          * If a <code>layout.xml</code> exists, then the grid returned will correspond to that
-         * grid, having been {@link org.apache.isis.applib.services.grid.GridService#normalize(Grid) normalized}.  If there is no <code>layout.xml</code> file, then the grid returned will be the
+         * grid, having been {@link org.apache.isis.applib.services.grid.GridService#normalize(Grid) normalized}.
+         * If there is no <code>layout.xml</code> file, then the grid returned will be the
          * {@link org.apache.isis.applib.services.grid.GridService#defaultGridFor(Class) default grid},
          * also {@link org.apache.isis.applib.services.grid.GridService#normalize(Grid) normalized}.
-         * </p>
          */
         CURRENT,
+        
         /**
          * As per {@link #NORMALIZED}, but also with all (non-null) facets for all
          * properties/collections/actions also included included in the grid.
-         * <p/>
          * <p>
          * The intention here is that any layout metadata annotations can be removed from the code.
-         * </p>
+         * <ul>
+         * <li>{@code @MemberGroupLayout}: <b>serialized as XML</b></li>
+         * <li>{@code @MemberOrder}: <b>serialized as XML</b></li>
+         * <li>{@code @ActionLayout, @PropertyLayout, @CollectionLayout}: <b>serialized as XML</b></li>
+         * </ul>
          */
         COMPLETE,
+        
         /**
          * Default, whereby missing properties/collections/actions are added to regions,
          * and unused/empty regions are removed/trimmed.
-         * <p/>
          * <p>
-         * It should be possible to remove any {@link MemberOrder} annotation but
-         * any layout annotations would need to be retained.
-         * </p>
+         * It should be possible to remove any {@link MemberOrder} and {@link MemberGroupLayout} annotation but
+         * any property/collection/action layout annotations would need to be retained.
+         * <ul>
+         * <li>{@code @MemberGroupLayout}: <b>serialized as XML</b></li>
+         * <li>{@code @MemberOrder}: <b>serialized as XML</b></li>
+         * <li>{@code @ActionLayout, @PropertyLayout, @CollectionLayout}: <b>ignored</b></li>
+         * </ul>
          */
         NORMALIZED,
+        
         /**
          * As per {@link #NORMALIZED}, but with no properties/collections/actions.
-         * <p/>
          * <p>
          * The intention here is for layout annotations that &quot;bind&quot; the properties/collections/actions
          * to the regions to be retained.
-         * </p>
+         * <ul>
+         * <li>{@code @MemberGroupLayout}: <b>serialized as XML</b></li>
+         * <li>{@code @MemberOrder}: <b>ignored</b></li>
+         * <li>{@code @ActionLayout, @PropertyLayout, @CollectionLayout}: <b>ignored</b></li>
+         * </ul>
          */
         MINIMAL
     }