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/11/27 18:06:18 UTC

[06/15] isis git commit: ISIS-537: AdditionalLinksPanel now supports being rendered either as inline-list (the original) or as a drop-down. Instantiated through factory method throughout.

ISIS-537: AdditionalLinksPanel now supports being rendered either as inline-list (the original) or as a drop-down.  Instantiated through factory method throughout.


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

Branch: refs/heads/master
Commit: 36efbfb3ee4d5ef4eecb431a11bc8ba7dbcafb45
Parents: e183bbf
Author: Dan Haywood <da...@haywood-associates.co.uk>
Authored: Wed Nov 26 16:24:28 2014 +0000
Committer: Dan Haywood <da...@haywood-associates.co.uk>
Committed: Wed Nov 26 16:24:28 2014 +0000

----------------------------------------------------------------------
 .../AdditionalLinksAsDropDownPanel.html         | 42 ++++++++++++++++++++
 .../AdditionalLinksAsDropDownPanel.java         | 32 +++++++++++++++
 .../AdditionalLinksAsInlineListPanel.html       | 37 +++++++++++++++++
 .../AdditionalLinksAsInlineListPanel.java       | 32 +++++++++++++++
 .../additionallinks/AdditionalLinksPanel.html   | 37 -----------------
 .../additionallinks/AdditionalLinksPanel.java   | 31 +++++++++++----
 .../collections/EntityCollectionsPanel.java     |  3 +-
 .../entity/properties/EntityPropertiesForm.java |  6 ++-
 .../links/EntityLinksSelectorPanel.java         | 19 +++++----
 .../components/scalars/ScalarPanelAbstract.java |  2 +-
 .../StandaloneCollectionPanel.java              | 10 ++---
 11 files changed, 189 insertions(+), 62 deletions(-)
----------------------------------------------------------------------


http://git-wip-us.apache.org/repos/asf/isis/blob/36efbfb3/component/viewer/wicket/ui/src/main/java/org/apache/isis/viewer/wicket/ui/components/additionallinks/AdditionalLinksAsDropDownPanel.html
----------------------------------------------------------------------
diff --git a/component/viewer/wicket/ui/src/main/java/org/apache/isis/viewer/wicket/ui/components/additionallinks/AdditionalLinksAsDropDownPanel.html b/component/viewer/wicket/ui/src/main/java/org/apache/isis/viewer/wicket/ui/components/additionallinks/AdditionalLinksAsDropDownPanel.html
new file mode 100644
index 0000000..0b10479
--- /dev/null
+++ b/component/viewer/wicket/ui/src/main/java/org/apache/isis/viewer/wicket/ui/components/additionallinks/AdditionalLinksAsDropDownPanel.html
@@ -0,0 +1,42 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!--
+  Licensed to the Apache Software Foundation (ASF) under one
+  or more contributor license agreements.  See the NOTICE file
+  distributed with this work for additional information
+  regarding copyright ownership.  The ASF licenses this file
+  to you under the Apache License, Version 2.0 (the
+  "License"); you may not use this file except in compliance
+  with the License.  You may obtain a copy of the License at
+  
+         http://www.apache.org/licenses/LICENSE-2.0
+         
+  Unless required by applicable law or agreed to in writing,
+  software distributed under the License is distributed on an
+  "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
+  KIND, either express or implied.  See the License for the
+  specific language governing permissions and limitations
+  under the License.
+-->
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd">
+<html xmlns="http://www.w3.org/1999/xhtml"  
+      xmlns:wicket="http://wicket.apache.org/dtds.data/wicket-xhtml1.4-strict.dtd"  
+      xml:lang="en"  
+      lang="en">
+    <body>
+        <wicket:panel>
+            <div wicket:id="additionalLinkList" class="additionalLinkList">
+                <div class="btn-group">
+                    <button type="button" class="btn btn-default btn-sm dropdown-toggle" data-toggle="dropdown" aria-expanded="false"><span class="caret"></span></button>
+                    <ul class="dropdown-menu" role="menu">
+                        <li wicket:id="additionalLinkItem" class="additionalLinkItem">
+                            <a href="#" wicket:id="additionalLink">
+                                <span wicket:id="additionalLinkFontAwesome"></span>
+                                <span wicket:id="additionalLinkTitle" class="additionalLinkItem">[link title]</span>
+                            </a>
+                        </li>
+                    </ul>
+                </div>
+            </div>
+        </wicket:panel>
+    </body>
+</html>

http://git-wip-us.apache.org/repos/asf/isis/blob/36efbfb3/component/viewer/wicket/ui/src/main/java/org/apache/isis/viewer/wicket/ui/components/additionallinks/AdditionalLinksAsDropDownPanel.java
----------------------------------------------------------------------
diff --git a/component/viewer/wicket/ui/src/main/java/org/apache/isis/viewer/wicket/ui/components/additionallinks/AdditionalLinksAsDropDownPanel.java b/component/viewer/wicket/ui/src/main/java/org/apache/isis/viewer/wicket/ui/components/additionallinks/AdditionalLinksAsDropDownPanel.java
new file mode 100644
index 0000000..3e971eb
--- /dev/null
+++ b/component/viewer/wicket/ui/src/main/java/org/apache/isis/viewer/wicket/ui/components/additionallinks/AdditionalLinksAsDropDownPanel.java
@@ -0,0 +1,32 @@
+/*
+ *  Licensed to the Apache Software Foundation (ASF) under one
+ *  or more contributor license agreements.  See the NOTICE file
+ *  distributed with this work for additional information
+ *  regarding copyright ownership.  The ASF licenses this file
+ *  to you under the Apache License, Version 2.0 (the
+ *  "License"); you may not use this file except in compliance
+ *  with the License.  You may obtain a copy of the License at
+ *
+ *        http://www.apache.org/licenses/LICENSE-2.0
+ *
+ *  Unless required by applicable law or agreed to in writing,
+ *  software distributed under the License is distributed on an
+ *  "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
+ *  KIND, either express or implied.  See the License for the
+ *  specific language governing permissions and limitations
+ *  under the License.
+ */
+
+package org.apache.isis.viewer.wicket.ui.components.additionallinks;
+
+import java.util.List;
+import org.apache.isis.viewer.wicket.model.links.LinkAndLabel;
+
+public class AdditionalLinksAsDropDownPanel extends AdditionalLinksPanel {
+
+    private static final long serialVersionUID = 1L;
+
+    public AdditionalLinksAsDropDownPanel(String id, List<LinkAndLabel> links) {
+        super(id, links);
+    }
+}

http://git-wip-us.apache.org/repos/asf/isis/blob/36efbfb3/component/viewer/wicket/ui/src/main/java/org/apache/isis/viewer/wicket/ui/components/additionallinks/AdditionalLinksAsInlineListPanel.html
----------------------------------------------------------------------
diff --git a/component/viewer/wicket/ui/src/main/java/org/apache/isis/viewer/wicket/ui/components/additionallinks/AdditionalLinksAsInlineListPanel.html b/component/viewer/wicket/ui/src/main/java/org/apache/isis/viewer/wicket/ui/components/additionallinks/AdditionalLinksAsInlineListPanel.html
new file mode 100644
index 0000000..3d3fb81
--- /dev/null
+++ b/component/viewer/wicket/ui/src/main/java/org/apache/isis/viewer/wicket/ui/components/additionallinks/AdditionalLinksAsInlineListPanel.html
@@ -0,0 +1,37 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!--
+  Licensed to the Apache Software Foundation (ASF) under one
+  or more contributor license agreements.  See the NOTICE file
+  distributed with this work for additional information
+  regarding copyright ownership.  The ASF licenses this file
+  to you under the Apache License, Version 2.0 (the
+  "License"); you may not use this file except in compliance
+  with the License.  You may obtain a copy of the License at
+  
+         http://www.apache.org/licenses/LICENSE-2.0
+         
+  Unless required by applicable law or agreed to in writing,
+  software distributed under the License is distributed on an
+  "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
+  KIND, either express or implied.  See the License for the
+  specific language governing permissions and limitations
+  under the License.
+-->
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd">
+<html xmlns="http://www.w3.org/1999/xhtml"  
+      xmlns:wicket="http://wicket.apache.org/dtds.data/wicket-xhtml1.4-strict.dtd"  
+      xml:lang="en"  
+      lang="en">
+    <body>
+        <wicket:panel>
+            <ul wicket:id="additionalLinkList" class="additionalLinkList list-unstyled list-inline">
+                <li wicket:id="additionalLinkItem" class="additionalLinkItem">
+                    <a href="#" wicket:id="additionalLink" class="btn btn-sm btn-primary">
+                        <span wicket:id="additionalLinkFontAwesome"></span>
+                        <span wicket:id="additionalLinkTitle" class="additionalLinkItem">[link title]</span>
+                    </a>
+                </li>
+            </ul>
+        </wicket:panel>
+    </body>
+</html>

http://git-wip-us.apache.org/repos/asf/isis/blob/36efbfb3/component/viewer/wicket/ui/src/main/java/org/apache/isis/viewer/wicket/ui/components/additionallinks/AdditionalLinksAsInlineListPanel.java
----------------------------------------------------------------------
diff --git a/component/viewer/wicket/ui/src/main/java/org/apache/isis/viewer/wicket/ui/components/additionallinks/AdditionalLinksAsInlineListPanel.java b/component/viewer/wicket/ui/src/main/java/org/apache/isis/viewer/wicket/ui/components/additionallinks/AdditionalLinksAsInlineListPanel.java
new file mode 100644
index 0000000..caf4964
--- /dev/null
+++ b/component/viewer/wicket/ui/src/main/java/org/apache/isis/viewer/wicket/ui/components/additionallinks/AdditionalLinksAsInlineListPanel.java
@@ -0,0 +1,32 @@
+/*
+ *  Licensed to the Apache Software Foundation (ASF) under one
+ *  or more contributor license agreements.  See the NOTICE file
+ *  distributed with this work for additional information
+ *  regarding copyright ownership.  The ASF licenses this file
+ *  to you under the Apache License, Version 2.0 (the
+ *  "License"); you may not use this file except in compliance
+ *  with the License.  You may obtain a copy of the License at
+ *
+ *        http://www.apache.org/licenses/LICENSE-2.0
+ *
+ *  Unless required by applicable law or agreed to in writing,
+ *  software distributed under the License is distributed on an
+ *  "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
+ *  KIND, either express or implied.  See the License for the
+ *  specific language governing permissions and limitations
+ *  under the License.
+ */
+
+package org.apache.isis.viewer.wicket.ui.components.additionallinks;
+
+import java.util.List;
+import org.apache.isis.viewer.wicket.model.links.LinkAndLabel;
+
+public class AdditionalLinksAsInlineListPanel extends AdditionalLinksPanel {
+
+    private static final long serialVersionUID = 1L;
+
+    public AdditionalLinksAsInlineListPanel(String id, List<LinkAndLabel> links) {
+        super(id, links);
+    }
+}

http://git-wip-us.apache.org/repos/asf/isis/blob/36efbfb3/component/viewer/wicket/ui/src/main/java/org/apache/isis/viewer/wicket/ui/components/additionallinks/AdditionalLinksPanel.html
----------------------------------------------------------------------
diff --git a/component/viewer/wicket/ui/src/main/java/org/apache/isis/viewer/wicket/ui/components/additionallinks/AdditionalLinksPanel.html b/component/viewer/wicket/ui/src/main/java/org/apache/isis/viewer/wicket/ui/components/additionallinks/AdditionalLinksPanel.html
deleted file mode 100644
index 3d3fb81..0000000
--- a/component/viewer/wicket/ui/src/main/java/org/apache/isis/viewer/wicket/ui/components/additionallinks/AdditionalLinksPanel.html
+++ /dev/null
@@ -1,37 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-<!--
-  Licensed to the Apache Software Foundation (ASF) under one
-  or more contributor license agreements.  See the NOTICE file
-  distributed with this work for additional information
-  regarding copyright ownership.  The ASF licenses this file
-  to you under the Apache License, Version 2.0 (the
-  "License"); you may not use this file except in compliance
-  with the License.  You may obtain a copy of the License at
-  
-         http://www.apache.org/licenses/LICENSE-2.0
-         
-  Unless required by applicable law or agreed to in writing,
-  software distributed under the License is distributed on an
-  "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
-  KIND, either express or implied.  See the License for the
-  specific language governing permissions and limitations
-  under the License.
--->
-<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd">
-<html xmlns="http://www.w3.org/1999/xhtml"  
-      xmlns:wicket="http://wicket.apache.org/dtds.data/wicket-xhtml1.4-strict.dtd"  
-      xml:lang="en"  
-      lang="en">
-    <body>
-        <wicket:panel>
-            <ul wicket:id="additionalLinkList" class="additionalLinkList list-unstyled list-inline">
-                <li wicket:id="additionalLinkItem" class="additionalLinkItem">
-                    <a href="#" wicket:id="additionalLink" class="btn btn-sm btn-primary">
-                        <span wicket:id="additionalLinkFontAwesome"></span>
-                        <span wicket:id="additionalLinkTitle" class="additionalLinkItem">[link title]</span>
-                    </a>
-                </li>
-            </ul>
-        </wicket:panel>
-    </body>
-</html>

http://git-wip-us.apache.org/repos/asf/isis/blob/36efbfb3/component/viewer/wicket/ui/src/main/java/org/apache/isis/viewer/wicket/ui/components/additionallinks/AdditionalLinksPanel.java
----------------------------------------------------------------------
diff --git a/component/viewer/wicket/ui/src/main/java/org/apache/isis/viewer/wicket/ui/components/additionallinks/AdditionalLinksPanel.java b/component/viewer/wicket/ui/src/main/java/org/apache/isis/viewer/wicket/ui/components/additionallinks/AdditionalLinksPanel.java
index dd32ddb..b288c2d 100644
--- a/component/viewer/wicket/ui/src/main/java/org/apache/isis/viewer/wicket/ui/components/additionallinks/AdditionalLinksPanel.java
+++ b/component/viewer/wicket/ui/src/main/java/org/apache/isis/viewer/wicket/ui/components/additionallinks/AdditionalLinksPanel.java
@@ -38,9 +38,6 @@ import org.apache.isis.viewer.wicket.ui.panels.PanelUtil;
 import org.apache.isis.viewer.wicket.ui.util.Components;
 import org.apache.isis.viewer.wicket.ui.util.CssClassAppender;
 
-/**
- * Panel for rendering scalars of type {@link String}.
- */
 public class AdditionalLinksPanel extends PanelAbstract<ListOfLinksModel> {
 
     private static final long serialVersionUID = 1L;
@@ -50,23 +47,41 @@ public class AdditionalLinksPanel extends PanelAbstract<ListOfLinksModel> {
     private static final String ID_ADDITIONAL_LINK_FONT_AWESOME = "additionalLinkFontAwesome";
     private static final String ID_ADDITIONAL_LINK_TITLE = "additionalLinkTitle";
 
-    public static void addAdditionalLinks(
+    public enum Style {
+        INLINE_LIST {
+            @Override
+            AdditionalLinksPanel newPanel(String id, List<LinkAndLabel> links) {
+                return new AdditionalLinksAsInlineListPanel(id, links);
+            }
+        },
+        DROPDOWN {
+            @Override
+            AdditionalLinksPanel newPanel(String id, List<LinkAndLabel> links) {
+                return new AdditionalLinksAsDropDownPanel(id, links);
+            }
+        };
+        abstract AdditionalLinksPanel newPanel(String id, List<LinkAndLabel> links);
+    }
+
+    public static AdditionalLinksPanel addAdditionalLinks(
             final MarkupContainer markupContainer,
             final String id,
-            final List<LinkAndLabel> links) {
+            final List<LinkAndLabel> links,
+            final Style style) {
         if(links.isEmpty()) {
             Components.permanentlyHide(markupContainer, id);
-            return;
+            return null;
         }
 
-        final WebMarkupContainer additionalLinksPanel = new AdditionalLinksPanel(id, links);
+        final AdditionalLinksPanel additionalLinksPanel =  style.newPanel(id, links);
         markupContainer.addOrReplace(additionalLinksPanel);
+        return additionalLinksPanel;
     }
 
 
     private List<LinkAndLabel> linkAndLabels;
     
-    public AdditionalLinksPanel(final String id, final List<LinkAndLabel> links) {
+    protected AdditionalLinksPanel(final String id, final List<LinkAndLabel> links) {
         super(id, new ListOfLinksModel(links));
 
         this.linkAndLabels = getModel().getObject();

http://git-wip-us.apache.org/repos/asf/isis/blob/36efbfb3/component/viewer/wicket/ui/src/main/java/org/apache/isis/viewer/wicket/ui/components/entity/collections/EntityCollectionsPanel.java
----------------------------------------------------------------------
diff --git a/component/viewer/wicket/ui/src/main/java/org/apache/isis/viewer/wicket/ui/components/entity/collections/EntityCollectionsPanel.java b/component/viewer/wicket/ui/src/main/java/org/apache/isis/viewer/wicket/ui/components/entity/collections/EntityCollectionsPanel.java
index d663d42..74f9617 100644
--- a/component/viewer/wicket/ui/src/main/java/org/apache/isis/viewer/wicket/ui/components/entity/collections/EntityCollectionsPanel.java
+++ b/component/viewer/wicket/ui/src/main/java/org/apache/isis/viewer/wicket/ui/components/entity/collections/EntityCollectionsPanel.java
@@ -124,8 +124,7 @@ public class EntityCollectionsPanel extends PanelAbstract<EntityModel> {
         final EntityCollectionModel entityCollectionModel = collectionPanel.getModel();
         List<LinkAndLabel> links = entityCollectionModel.getLinks();
 
-        AdditionalLinksPanel additionalLinks = new AdditionalLinksPanel(ID_ADDITIONAL_LINKS, links);
-        fieldset.addOrReplace(additionalLinks);
+        AdditionalLinksPanel.addAdditionalLinks (fieldset,ID_ADDITIONAL_LINKS, links, AdditionalLinksPanel.Style.INLINE_LIST);
 
         final CollectionSelectorHelper selectorHelper = new CollectionSelectorHelper(entityCollectionModel, getComponentFactoryRegistry());
 

http://git-wip-us.apache.org/repos/asf/isis/blob/36efbfb3/component/viewer/wicket/ui/src/main/java/org/apache/isis/viewer/wicket/ui/components/entity/properties/EntityPropertiesForm.java
----------------------------------------------------------------------
diff --git a/component/viewer/wicket/ui/src/main/java/org/apache/isis/viewer/wicket/ui/components/entity/properties/EntityPropertiesForm.java b/component/viewer/wicket/ui/src/main/java/org/apache/isis/viewer/wicket/ui/components/entity/properties/EntityPropertiesForm.java
index fa6250d..8474e4f 100644
--- a/component/viewer/wicket/ui/src/main/java/org/apache/isis/viewer/wicket/ui/components/entity/properties/EntityPropertiesForm.java
+++ b/component/viewer/wicket/ui/src/main/java/org/apache/isis/viewer/wicket/ui/components/entity/properties/EntityPropertiesForm.java
@@ -91,6 +91,8 @@ public class EntityPropertiesForm extends FormAbstract<ObjectAdapter> implements
     private static final String ID_MEMBER_GROUP = "memberGroup";
     private static final String ID_MEMBER_GROUP_NAME = "memberGroupName";
 
+    public static final String ID_ADDITIONAL_LINKS = "additionalLinks";
+
     private static final String ID_LEFT_COLUMN = "leftColumn";
     private static final String ID_MIDDLE_COLUMN = "middleColumn";
     private static final String ID_RIGHT_COLUMN = "rightColumn";
@@ -246,7 +248,9 @@ public class EntityPropertiesForm extends FormAbstract<ObjectAdapter> implements
             // TODO: suppressing until sort out markup and figure out which should contribute etc via Facets.
             memberGroupActions.clear();
             AdditionalLinksPanel.addAdditionalLinks(
-                    memberGroupRvContainer, "additionalLinks", memberGroupActions);
+                    memberGroupRvContainer, ID_ADDITIONAL_LINKS,
+                    memberGroupActions,
+                    AdditionalLinksPanel.Style.INLINE_LIST);
         }
         
         addClassForSpan(markupContainer, span);

http://git-wip-us.apache.org/repos/asf/isis/blob/36efbfb3/component/viewer/wicket/ui/src/main/java/org/apache/isis/viewer/wicket/ui/components/entity/selector/links/EntityLinksSelectorPanel.java
----------------------------------------------------------------------
diff --git a/component/viewer/wicket/ui/src/main/java/org/apache/isis/viewer/wicket/ui/components/entity/selector/links/EntityLinksSelectorPanel.java b/component/viewer/wicket/ui/src/main/java/org/apache/isis/viewer/wicket/ui/components/entity/selector/links/EntityLinksSelectorPanel.java
index 459b692..e8f7da9 100644
--- a/component/viewer/wicket/ui/src/main/java/org/apache/isis/viewer/wicket/ui/components/entity/selector/links/EntityLinksSelectorPanel.java
+++ b/component/viewer/wicket/ui/src/main/java/org/apache/isis/viewer/wicket/ui/components/entity/selector/links/EntityLinksSelectorPanel.java
@@ -61,6 +61,13 @@ import org.apache.isis.viewer.wicket.ui.util.CssClassRemover;
 /**
  * Provides a list of links for selecting other views that support
  * {@link ComponentType#ENTITY} with a backing {@link EntityModel}.
+ *
+ * <p>
+ *     TODO: this code could be simplified
+ *     (pushed down common code here and for the CollectionsSelectorPanel in order to do so);
+ *     haven't simplified this yet because currently there is only one view, so the markup
+ *     rendered by this component 'collapses' to just show that underlying view.
+ * </p>
  */
 public class EntityLinksSelectorPanel extends PanelAbstract<EntityModel> implements UiHintPathSignificant {
 
@@ -71,7 +78,6 @@ public class EntityLinksSelectorPanel extends PanelAbstract<EntityModel> impleme
     private static final int MAX_NUM_UNDERLYING_VIEWS = 10;
 
     private static final String ID_ADDITIONAL_LINKS = "additionalLinks";
-    public static final String ID_ADDITIONAL_LINK = "additionalLink";
 
     private static final String ID_VIEWS = "views";
     private static final String ID_VIEW_LIST = "viewList";
@@ -90,11 +96,6 @@ public class EntityLinksSelectorPanel extends PanelAbstract<EntityModel> impleme
     private ComponentFactory selectedComponentFactory;
     protected Component selectedComponent;
 
-    /**
-     * May be <tt>null</tt>, depending upon the model implementation.
-     */
-    protected WebMarkupContainer additionalLinks;
-
 
     public EntityLinksSelectorPanel(final String id, final EntityModel model, final ComponentFactory factory) {
         super(id, model);
@@ -142,8 +143,10 @@ public class EntityLinksSelectorPanel extends PanelAbstract<EntityModel> impleme
         }
         links = Lists.newArrayList(links); // copy, to serialize any lazy evaluation
 
-        additionalLinks = new AdditionalLinksPanel(ID_ADDITIONAL_LINKS, links);
-        markupContainer.addOrReplace(additionalLinks);
+        AdditionalLinksPanel.addAdditionalLinks(
+                markupContainer, ID_ADDITIONAL_LINKS,
+                links,
+                AdditionalLinksPanel.Style.INLINE_LIST);
     }
 
     private void addUnderlyingViews(final String underlyingIdPrefix, final EntityModel model, final ComponentFactory factory) {

http://git-wip-us.apache.org/repos/asf/isis/blob/36efbfb3/component/viewer/wicket/ui/src/main/java/org/apache/isis/viewer/wicket/ui/components/scalars/ScalarPanelAbstract.java
----------------------------------------------------------------------
diff --git a/component/viewer/wicket/ui/src/main/java/org/apache/isis/viewer/wicket/ui/components/scalars/ScalarPanelAbstract.java b/component/viewer/wicket/ui/src/main/java/org/apache/isis/viewer/wicket/ui/components/scalars/ScalarPanelAbstract.java
index 66b07c2..2d6ce7c 100644
--- a/component/viewer/wicket/ui/src/main/java/org/apache/isis/viewer/wicket/ui/components/scalars/ScalarPanelAbstract.java
+++ b/component/viewer/wicket/ui/src/main/java/org/apache/isis/viewer/wicket/ui/components/scalars/ScalarPanelAbstract.java
@@ -296,7 +296,7 @@ public abstract class ScalarPanelAbstract extends PanelAbstract<ScalarModel> imp
 
         EntityActionUtil.appendAdditionalLinksForAssociation(this.scalarModel, getDeploymentType(), ID_ADDITIONAL_LINK, entityActions);
         // ... and add them to the panel
-        AdditionalLinksPanel.addAdditionalLinks(labelIfRegular, ID_ADDITIONAL_LINKS, entityActions);
+        AdditionalLinksPanel.addAdditionalLinks(labelIfRegular, ID_ADDITIONAL_LINKS, entityActions, AdditionalLinksPanel.Style.INLINE_LIST);
     }
 
 

http://git-wip-us.apache.org/repos/asf/isis/blob/36efbfb3/component/viewer/wicket/ui/src/main/java/org/apache/isis/viewer/wicket/ui/components/standalonecollection/StandaloneCollectionPanel.java
----------------------------------------------------------------------
diff --git a/component/viewer/wicket/ui/src/main/java/org/apache/isis/viewer/wicket/ui/components/standalonecollection/StandaloneCollectionPanel.java b/component/viewer/wicket/ui/src/main/java/org/apache/isis/viewer/wicket/ui/components/standalonecollection/StandaloneCollectionPanel.java
index 279588f..89e7b50 100644
--- a/component/viewer/wicket/ui/src/main/java/org/apache/isis/viewer/wicket/ui/components/standalonecollection/StandaloneCollectionPanel.java
+++ b/component/viewer/wicket/ui/src/main/java/org/apache/isis/viewer/wicket/ui/components/standalonecollection/StandaloneCollectionPanel.java
@@ -64,7 +64,8 @@ public class StandaloneCollectionPanel extends PanelAbstract<EntityCollectionMod
     private final ActionPromptModalWindow actionPromptModalWindow;
     private final CollectionSelectorPanel selectorDropdownPanel;
     private final BulkActionsHelper bulkActionsHelper;
-    private AdditionalLinksPanel additionalLinks;
+
+    private boolean additionalLinksAdded;
 
     /**
      * note that the bulk actions components are added in {@link #configureBulkActions(org.apache.isis.viewer.wicket.ui.components.collectioncontents.ajaxtable.columns.ObjectAdapterToggleboxColumn)}.
@@ -152,7 +153,7 @@ public class StandaloneCollectionPanel extends PanelAbstract<EntityCollectionMod
     @Override
     public void configureBulkActions(final ObjectAdapterToggleboxColumn toggleboxColumn) {
 
-        if(additionalLinks != null) {
+        if(additionalLinksAdded) {
             return;
         }
         final BulkActionsLinkFactory linkFactory =
@@ -167,9 +168,8 @@ public class StandaloneCollectionPanel extends PanelAbstract<EntityCollectionMod
             }
         });
 
-        additionalLinks = new AdditionalLinksPanel(ID_ADDITIONAL_LINKS, links);
-        addOrReplace(additionalLinks);
-
+        AdditionalLinksPanel.addAdditionalLinks(this, ID_ADDITIONAL_LINKS, links, AdditionalLinksPanel.Style.INLINE_LIST);
+        additionalLinksAdded = true;
 
     }