You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@isis.apache.org by mg...@apache.org on 2016/03/25 15:17:45 UTC

[07/50] isis git commit: ISIS-1332: renamed IsisUiHintEvent to IsisSelectorEvent, no longer related to the UI hint stuff at all. Removed subscribingLink from ZeroClipboardPanel, no longer required.

ISIS-1332: renamed IsisUiHintEvent to IsisSelectorEvent, no longer related to the UI hint stuff at all.  Removed subscribingLink from ZeroClipboardPanel, no longer required.


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

Branch: refs/heads/ISIS-1224-select2-v4
Commit: 46bbbed8a9db736a45b54e63ba233bcb2f3343f6
Parents: 5d7d90f
Author: Dan Haywood <da...@haywood-associates.co.uk>
Authored: Sat Mar 19 13:47:36 2016 +0000
Committer: Dan Haywood <da...@haywood-associates.co.uk>
Committed: Sat Mar 19 13:47:36 2016 +0000

----------------------------------------------------------------------
 .../wicket/model/hints/IsisSelectorEvent.java   | 43 +++++++++++
 .../wicket/model/hints/IsisUiHintEvent.java     | 65 -----------------
 .../selector/CollectionSelectorPanel.java       | 15 ++--
 .../ajaxtable/IsisAjaxFallbackDataTable.java    |  4 +-
 .../ajaxtable/IsisAjaxNavigationToolbar.java    |  3 +-
 .../CollectionContentsMultipleViewsPanel.java   | 27 ++-----
 .../links/EntityLinksSelectorPanel.java         |  3 +-
 .../widgets/zclip/ZeroClipboardPanel.html       |  5 --
 .../widgets/zclip/ZeroClipboardPanel.java       | 75 +++-----------------
 .../wicket/ui/pages/entity/EntityPage.java      |  9 +--
 10 files changed, 66 insertions(+), 183 deletions(-)
----------------------------------------------------------------------


http://git-wip-us.apache.org/repos/asf/isis/blob/46bbbed8/core/viewer-wicket-model/src/main/java/org/apache/isis/viewer/wicket/model/hints/IsisSelectorEvent.java
----------------------------------------------------------------------
diff --git a/core/viewer-wicket-model/src/main/java/org/apache/isis/viewer/wicket/model/hints/IsisSelectorEvent.java b/core/viewer-wicket-model/src/main/java/org/apache/isis/viewer/wicket/model/hints/IsisSelectorEvent.java
new file mode 100644
index 0000000..e3df09c
--- /dev/null
+++ b/core/viewer-wicket-model/src/main/java/org/apache/isis/viewer/wicket/model/hints/IsisSelectorEvent.java
@@ -0,0 +1,43 @@
+/**
+ *  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.model.hints;
+
+import org.apache.wicket.Component;
+import org.apache.wicket.ajax.AjaxRequestTarget;
+
+public class IsisSelectorEvent extends IsisEventLetterAbstract {
+    
+    private final Component component;
+    private final String hintKey;
+    private final String hintValue;
+
+    public IsisSelectorEvent(
+            final Component component,
+            final String hintKey,
+            final String hintValue,
+            final AjaxRequestTarget target) {
+        super(target);
+        this.component = component;
+        this.hintKey = hintKey;
+        this.hintValue = hintValue;
+    }
+
+    public String hintFor(Component component, String hintKey) {
+        return this.component == component && this.hintKey == hintKey ? hintValue : null;
+    }
+}
+

http://git-wip-us.apache.org/repos/asf/isis/blob/46bbbed8/core/viewer-wicket-model/src/main/java/org/apache/isis/viewer/wicket/model/hints/IsisUiHintEvent.java
----------------------------------------------------------------------
diff --git a/core/viewer-wicket-model/src/main/java/org/apache/isis/viewer/wicket/model/hints/IsisUiHintEvent.java b/core/viewer-wicket-model/src/main/java/org/apache/isis/viewer/wicket/model/hints/IsisUiHintEvent.java
deleted file mode 100644
index d472559..0000000
--- a/core/viewer-wicket-model/src/main/java/org/apache/isis/viewer/wicket/model/hints/IsisUiHintEvent.java
+++ /dev/null
@@ -1,65 +0,0 @@
-/**
- *  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.model.hints;
-
-import org.apache.wicket.Component;
-import org.apache.wicket.ajax.AjaxRequestTarget;
-
-/**
- *
- */
-public class IsisUiHintEvent extends IsisEventLetterAbstract {
-    
-    private final UiHintContainer uiHintContainer;
-    private final Component component;
-    private final String hintKey;
-    private final String hintValue;
-
-    public IsisUiHintEvent(UiHintContainer uiHintContainer, AjaxRequestTarget target) {
-        this(uiHintContainer, null, null, null, target);
-    }
-
-    public IsisUiHintEvent(
-            final Component component,
-            final String hintKey,
-            final String hintValue,
-            final AjaxRequestTarget target) {
-        this(null, component, hintKey, hintValue, target);
-    }
-
-    public IsisUiHintEvent(
-            final UiHintContainer uiHintContainer,
-            final Component component,
-            final String hintKey,
-            final String hintValue,
-            final AjaxRequestTarget target) {
-        super(target);
-        this.uiHintContainer = uiHintContainer;
-        this.component = component;
-        this.hintKey = hintKey;
-        this.hintValue = hintValue;
-    }
-
-    public UiHintContainer getUiHintContainer() {
-        return uiHintContainer;
-    }
-
-    public String hintFor(Component component, String hintKey) {
-        return this.component == component && this.hintKey == hintKey ? hintValue : null;
-    }
-}
-

http://git-wip-us.apache.org/repos/asf/isis/blob/46bbbed8/core/viewer-wicket-ui/src/main/java/org/apache/isis/viewer/wicket/ui/components/collection/selector/CollectionSelectorPanel.java
----------------------------------------------------------------------
diff --git a/core/viewer-wicket-ui/src/main/java/org/apache/isis/viewer/wicket/ui/components/collection/selector/CollectionSelectorPanel.java b/core/viewer-wicket-ui/src/main/java/org/apache/isis/viewer/wicket/ui/components/collection/selector/CollectionSelectorPanel.java
index 4d92ae2..b0d65ba 100644
--- a/core/viewer-wicket-ui/src/main/java/org/apache/isis/viewer/wicket/ui/components/collection/selector/CollectionSelectorPanel.java
+++ b/core/viewer-wicket-ui/src/main/java/org/apache/isis/viewer/wicket/ui/components/collection/selector/CollectionSelectorPanel.java
@@ -36,8 +36,7 @@ import org.apache.wicket.model.Model;
 
 import org.apache.isis.applib.services.bookmark.Bookmark;
 import org.apache.isis.core.commons.lang.StringExtensions;
-import org.apache.isis.viewer.wicket.model.hints.IsisUiHintEvent;
-import org.apache.isis.viewer.wicket.model.hints.UiHintContainer;
+import org.apache.isis.viewer.wicket.model.hints.IsisSelectorEvent;
 import org.apache.isis.viewer.wicket.model.models.EntityCollectionModel;
 import org.apache.isis.viewer.wicket.model.models.EntityModel;
 import org.apache.isis.viewer.wicket.model.util.ComponentHintKey;
@@ -223,15 +222,9 @@ public class CollectionSelectorPanel extends PanelAbstract<EntityCollectionModel
 
     protected void setViewHintAndBroadcast(String viewName, AjaxRequestTarget target) {
         final CollectionSelectorPanel component = CollectionSelectorPanel.this;
-        final IsisUiHintEvent hintEvent;
-        if(getModel().isParented()) {
-            final UiHintContainer uiHintContainer = getUiHintContainer(EntityModel.class);
-            uiHintContainer.setHint(component, CollectionSelectorHelper.UIHINT_EVENT_VIEW_KEY, viewName);
-            hintEvent = new IsisUiHintEvent(uiHintContainer, target);
-        } else {
-            hintEvent = new IsisUiHintEvent(component, CollectionSelectorHelper.UIHINT_EVENT_VIEW_KEY, viewName, target);
-        }
-        send(getPage(), Broadcast.EXACT, hintEvent);
+        final IsisSelectorEvent selectorEvent =
+                new IsisSelectorEvent(component, CollectionSelectorHelper.UIHINT_EVENT_VIEW_KEY, viewName, target);
+        send(getPage(), Broadcast.EXACT, selectorEvent);
     }
 }
 

http://git-wip-us.apache.org/repos/asf/isis/blob/46bbbed8/core/viewer-wicket-ui/src/main/java/org/apache/isis/viewer/wicket/ui/components/collectioncontents/ajaxtable/IsisAjaxFallbackDataTable.java
----------------------------------------------------------------------
diff --git a/core/viewer-wicket-ui/src/main/java/org/apache/isis/viewer/wicket/ui/components/collectioncontents/ajaxtable/IsisAjaxFallbackDataTable.java b/core/viewer-wicket-ui/src/main/java/org/apache/isis/viewer/wicket/ui/components/collectioncontents/ajaxtable/IsisAjaxFallbackDataTable.java
index fe56409..813e8f8 100644
--- a/core/viewer-wicket-ui/src/main/java/org/apache/isis/viewer/wicket/ui/components/collectioncontents/ajaxtable/IsisAjaxFallbackDataTable.java
+++ b/core/viewer-wicket-ui/src/main/java/org/apache/isis/viewer/wicket/ui/components/collectioncontents/ajaxtable/IsisAjaxFallbackDataTable.java
@@ -39,7 +39,7 @@ import org.apache.wicket.util.lang.Generics;
 
 import org.apache.isis.core.metamodel.adapter.ObjectAdapter;
 import org.apache.isis.core.metamodel.spec.ObjectSpecification;
-import org.apache.isis.viewer.wicket.model.hints.IsisUiHintEvent;
+import org.apache.isis.viewer.wicket.model.hints.IsisSelectorEvent;
 import org.apache.isis.viewer.wicket.model.hints.UiHintContainer;
 import org.apache.isis.viewer.wicket.model.models.EntityModel;
 import org.apache.isis.viewer.wicket.ui.util.CssClassAppender;
@@ -192,7 +192,6 @@ public class IsisAjaxFallbackDataTable<T, S> extends DataTable<T, S> {
             return;
         } 
         uiHintContainer.setHint(this, IsisAjaxFallbackDataTable.UIHINT_PAGE_NUMBER, ""+getCurrentPage());
-        send(getPage(), Broadcast.EXACT, new IsisUiHintEvent(uiHintContainer, target));
     }
 
     public void setSortOrderHintAndBroadcast(SortOrder order, String property, AjaxRequestTarget target) {
@@ -207,7 +206,6 @@ public class IsisAjaxFallbackDataTable<T, S> extends DataTable<T, S> {
         }
         // .. then set this one
         uiHintContainer.setHint(this, order.name(), property);
-        send(getPage(), Broadcast.EXACT, new IsisUiHintEvent(uiHintContainer, target));
     }
 
     private UiHintContainer getUiHintContainer() {

http://git-wip-us.apache.org/repos/asf/isis/blob/46bbbed8/core/viewer-wicket-ui/src/main/java/org/apache/isis/viewer/wicket/ui/components/collectioncontents/ajaxtable/IsisAjaxNavigationToolbar.java
----------------------------------------------------------------------
diff --git a/core/viewer-wicket-ui/src/main/java/org/apache/isis/viewer/wicket/ui/components/collectioncontents/ajaxtable/IsisAjaxNavigationToolbar.java b/core/viewer-wicket-ui/src/main/java/org/apache/isis/viewer/wicket/ui/components/collectioncontents/ajaxtable/IsisAjaxNavigationToolbar.java
index 27e79b0..f7ffd7e 100644
--- a/core/viewer-wicket-ui/src/main/java/org/apache/isis/viewer/wicket/ui/components/collectioncontents/ajaxtable/IsisAjaxNavigationToolbar.java
+++ b/core/viewer-wicket-ui/src/main/java/org/apache/isis/viewer/wicket/ui/components/collectioncontents/ajaxtable/IsisAjaxNavigationToolbar.java
@@ -24,7 +24,7 @@ import org.apache.wicket.extensions.ajax.markup.html.repeater.data.table.AjaxNav
 import org.apache.wicket.extensions.markup.html.repeater.data.table.DataTable;
 import org.apache.wicket.markup.html.navigation.paging.PagingNavigator;
 
-import org.apache.isis.viewer.wicket.model.hints.IsisUiHintEvent;
+import org.apache.isis.viewer.wicket.model.hints.IsisSelectorEvent;
 import org.apache.isis.viewer.wicket.model.hints.UiHintContainer;
 import org.apache.isis.viewer.wicket.model.models.EntityModel;
 
@@ -50,7 +50,6 @@ public class IsisAjaxNavigationToolbar extends AjaxNavigationToolbar {
                 showAllItemsOn(table);
                 final UiHintContainer hintContainer = getUiHintContainer();
                 hintContainer.setHint(table, HINT_KEY_SHOW_ALL, "true");
-                send(getPage(), Broadcast.EXACT, new IsisUiHintEvent(hintContainer, target));
                 target.add(table);
             }
         });

http://git-wip-us.apache.org/repos/asf/isis/blob/46bbbed8/core/viewer-wicket-ui/src/main/java/org/apache/isis/viewer/wicket/ui/components/collectioncontents/multiple/CollectionContentsMultipleViewsPanel.java
----------------------------------------------------------------------
diff --git a/core/viewer-wicket-ui/src/main/java/org/apache/isis/viewer/wicket/ui/components/collectioncontents/multiple/CollectionContentsMultipleViewsPanel.java b/core/viewer-wicket-ui/src/main/java/org/apache/isis/viewer/wicket/ui/components/collectioncontents/multiple/CollectionContentsMultipleViewsPanel.java
index dc2efbe..4c96910 100644
--- a/core/viewer-wicket-ui/src/main/java/org/apache/isis/viewer/wicket/ui/components/collectioncontents/multiple/CollectionContentsMultipleViewsPanel.java
+++ b/core/viewer-wicket-ui/src/main/java/org/apache/isis/viewer/wicket/ui/components/collectioncontents/multiple/CollectionContentsMultipleViewsPanel.java
@@ -27,8 +27,7 @@ import org.apache.wicket.ajax.AjaxRequestTarget;
 import org.apache.wicket.event.IEvent;
 
 import org.apache.isis.viewer.wicket.model.hints.IsisEnvelopeEvent;
-import org.apache.isis.viewer.wicket.model.hints.IsisUiHintEvent;
-import org.apache.isis.viewer.wicket.model.hints.UiHintContainer;
+import org.apache.isis.viewer.wicket.model.hints.IsisSelectorEvent;
 import org.apache.isis.viewer.wicket.model.models.EntityCollectionModel;
 import org.apache.isis.viewer.wicket.model.models.EntityModel;
 import org.apache.isis.viewer.wicket.model.util.ComponentHintKey;
@@ -145,8 +144,8 @@ public class CollectionContentsMultipleViewsPanel
     public void onEvent(IEvent<?> event) {
         super.onEvent(event);
 
-        final IsisUiHintEvent uiHintEvent = IsisEnvelopeEvent.openLetter(event, IsisUiHintEvent.class);
-        if(uiHintEvent == null) {
+        final IsisSelectorEvent selectorEvent = IsisEnvelopeEvent.openLetter(event, IsisSelectorEvent.class);
+        if(selectorEvent == null) {
             return;
         }
         final CollectionSelectorPanel selectorDropdownPanel = CollectionSelectorProvider.Util.getCollectionSelectorProvider(this);
@@ -156,24 +155,12 @@ public class CollectionContentsMultipleViewsPanel
             return;
         }
 
-        // try to obtain hint directly from hint container (EntityModel)
-        String viewStr = null;
-        final UiHintContainer uiHintContainer = uiHintEvent.getUiHintContainer();
-        if(uiHintContainer != null) {
-            viewStr = uiHintContainer.getHint(selectorDropdownPanel, UIHINT_VIEW);
-        }
-
-        // failing that, directly from the UiHintEvent itself (for standalone collections, which have no hint container)
-        if(viewStr == null) {
-            viewStr = uiHintEvent.hintFor(selectorDropdownPanel, UIHINT_VIEW);
-        }
-
-        // give up
-        if (viewStr == null) {
+        String selectedView = selectorEvent.hintFor(selectorDropdownPanel, UIHINT_VIEW);
+        if (selectedView == null) {
             return;
         }
 
-        int underlyingViewNum = selectorHelper.lookup(viewStr);
+        int underlyingViewNum = selectorHelper.lookup(selectedView);
 
         final EntityCollectionModel dummyModel = getModel().asDummy();
         for(int i=0; i<MAX_NUM_UNDERLYING_VIEWS; i++) {
@@ -188,7 +175,7 @@ public class CollectionContentsMultipleViewsPanel
 
         this.selectedComponent = underlyingViews[underlyingViewNum];
 
-        final AjaxRequestTarget target = uiHintEvent.getTarget();
+        final AjaxRequestTarget target = selectorEvent.getTarget();
         if(target != null) {
             target.add(this, selectorDropdownPanel);
         }

http://git-wip-us.apache.org/repos/asf/isis/blob/46bbbed8/core/viewer-wicket-ui/src/main/java/org/apache/isis/viewer/wicket/ui/components/entity/selector/links/EntityLinksSelectorPanel.java
----------------------------------------------------------------------
diff --git a/core/viewer-wicket-ui/src/main/java/org/apache/isis/viewer/wicket/ui/components/entity/selector/links/EntityLinksSelectorPanel.java b/core/viewer-wicket-ui/src/main/java/org/apache/isis/viewer/wicket/ui/components/entity/selector/links/EntityLinksSelectorPanel.java
index 329c59a..036592c 100644
--- a/core/viewer-wicket-ui/src/main/java/org/apache/isis/viewer/wicket/ui/components/entity/selector/links/EntityLinksSelectorPanel.java
+++ b/core/viewer-wicket-ui/src/main/java/org/apache/isis/viewer/wicket/ui/components/entity/selector/links/EntityLinksSelectorPanel.java
@@ -42,7 +42,7 @@ import org.apache.wicket.model.IModel;
 import org.apache.wicket.model.Model;
 
 import org.apache.isis.core.commons.lang.StringExtensions;
-import org.apache.isis.viewer.wicket.model.hints.IsisUiHintEvent;
+import org.apache.isis.viewer.wicket.model.hints.IsisSelectorEvent;
 import org.apache.isis.viewer.wicket.model.hints.UiHintContainer;
 import org.apache.isis.viewer.wicket.model.links.LinkAndLabel;
 import org.apache.isis.viewer.wicket.model.links.LinksProvider;
@@ -322,7 +322,6 @@ public class EntityLinksSelectorPanel extends PanelAbstract<EntityModel>  {
             return;
         }
         uiHintContainer.setHint(this, UIHINT_VIEW, ""+viewNum);
-        send(getPage(), Broadcast.EXACT, new IsisUiHintEvent(uiHintContainer, target));
     }
 
     /**

http://git-wip-us.apache.org/repos/asf/isis/blob/46bbbed8/core/viewer-wicket-ui/src/main/java/org/apache/isis/viewer/wicket/ui/components/widgets/zclip/ZeroClipboardPanel.html
----------------------------------------------------------------------
diff --git a/core/viewer-wicket-ui/src/main/java/org/apache/isis/viewer/wicket/ui/components/widgets/zclip/ZeroClipboardPanel.html b/core/viewer-wicket-ui/src/main/java/org/apache/isis/viewer/wicket/ui/components/widgets/zclip/ZeroClipboardPanel.html
index 7f93a49..5aa78fd 100644
--- a/core/viewer-wicket-ui/src/main/java/org/apache/isis/viewer/wicket/ui/components/widgets/zclip/ZeroClipboardPanel.html
+++ b/core/viewer-wicket-ui/src/main/java/org/apache/isis/viewer/wicket/ui/components/widgets/zclip/ZeroClipboardPanel.html
@@ -23,11 +23,6 @@
             <a wicket:id="copyLink" href="#" class="copyLink">
                 <i class="fa fa-fw fa-link" style="font-size: 1.5em"></i>
             </a>
-            <wicket:remove>
-                TODO mgrigorov reenable the subscribing link after figuring out what it is.
-                Can we have a separate <li></li> for it ?
-            </wicket:remove>
-            <!--<a wicket:id="subscribingLink" id="subscribingLink" class="subscribingLink" href="#">&nbsp;</a>-->
             <div wicket:id="simpleClipboardModalWindow" class="copyModal"></div>
 		</wicket:panel>
 	</body>

http://git-wip-us.apache.org/repos/asf/isis/blob/46bbbed8/core/viewer-wicket-ui/src/main/java/org/apache/isis/viewer/wicket/ui/components/widgets/zclip/ZeroClipboardPanel.java
----------------------------------------------------------------------
diff --git a/core/viewer-wicket-ui/src/main/java/org/apache/isis/viewer/wicket/ui/components/widgets/zclip/ZeroClipboardPanel.java b/core/viewer-wicket-ui/src/main/java/org/apache/isis/viewer/wicket/ui/components/widgets/zclip/ZeroClipboardPanel.java
index 3cf6b58..b34761f 100644
--- a/core/viewer-wicket-ui/src/main/java/org/apache/isis/viewer/wicket/ui/components/widgets/zclip/ZeroClipboardPanel.java
+++ b/core/viewer-wicket-ui/src/main/java/org/apache/isis/viewer/wicket/ui/components/widgets/zclip/ZeroClipboardPanel.java
@@ -16,29 +16,18 @@
  */
 package org.apache.isis.viewer.wicket.ui.components.widgets.zclip;
 
-import org.apache.wicket.Page;
 import org.apache.wicket.ajax.AjaxRequestTarget;
 import org.apache.wicket.ajax.markup.html.AjaxLink;
-import org.apache.wicket.event.IEvent;
 import org.apache.wicket.markup.html.form.TextField;
-import org.apache.wicket.markup.html.link.AbstractLink;
-import org.apache.wicket.markup.html.link.BookmarkablePageLink;
 import org.apache.wicket.model.LoadableDetachableModel;
 import org.apache.wicket.request.Url;
 import org.apache.wicket.request.mapper.parameter.PageParameters;
 
-import org.apache.isis.applib.services.hint.HintStore;
 import org.apache.isis.core.metamodel.adapter.ObjectAdapter;
-import org.apache.isis.core.runtime.system.context.IsisContext;
-import org.apache.isis.viewer.wicket.model.hints.IsisEnvelopeEvent;
-import org.apache.isis.viewer.wicket.model.hints.IsisUiHintEvent;
-import org.apache.isis.viewer.wicket.model.hints.UiHintContainer;
 import org.apache.isis.viewer.wicket.model.models.EntityModel;
-import org.apache.isis.viewer.wicket.model.models.PageType;
 import org.apache.isis.viewer.wicket.ui.pages.PageClassRegistry;
 import org.apache.isis.viewer.wicket.ui.pages.PageClassRegistryAccessor;
 import org.apache.isis.viewer.wicket.ui.panels.PanelAbstract;
-import org.apache.isis.viewer.wicket.ui.util.Links;
 
 import de.agilecoders.wicket.jquery.util.Strings2;
 
@@ -50,7 +39,6 @@ public class ZeroClipboardPanel extends PanelAbstract<EntityModel> {
     private static final String ID_COPY_LINK = "copyLink";
     private static final String ID_SIMPLE_CLIPBOARD_MODAL_WINDOW = "simpleClipboardModalWindow";
 
-    private AbstractLink subscribingLink;
     private AjaxLink<ObjectAdapter> copyLink;
     private SimpleClipboardModalWindow simpleClipboardModalWindow;
 
@@ -67,7 +55,6 @@ public class ZeroClipboardPanel extends PanelAbstract<EntityModel> {
             addOrReplace(copyLink);
         }
         EntityModel model = getModel();
-        addSubscribingLink(model);
         addSimpleClipboardModalWindow();
 
         EntityModel.RenderingHint renderingHint = model.getRenderingHint();
@@ -96,18 +83,14 @@ public class ZeroClipboardPanel extends PanelAbstract<EntityModel> {
                     @SuppressWarnings({ "rawtypes", "unchecked" })
                     @Override
                     protected String load() {
-                        if(subscribingLink instanceof BookmarkablePageLink) {
-                            final BookmarkablePageLink<?> link = (BookmarkablePageLink<?>) subscribingLink;
-                            final Class pageClass = link.getPageClass();
-
-                            final EntityModel entityModel = ZeroClipboardPanel.this.getModel();
-                            final PageParameters pageParameters = entityModel.getPageParameters();
-
-                            final CharSequence urlFor = link.urlFor(pageClass, pageParameters);
-                            return getRequestCycle().getUrlRenderer().renderFullUrl(Url.parse(urlFor));
-                        } else {
-                            return "";
-                        }
+
+                        final Class pageClass = ZeroClipboardPanel.this.getPage().getPageClass();
+
+                        final EntityModel entityModel = ZeroClipboardPanel.this.getModel();
+                        final PageParameters pageParameters = entityModel.getPageParameters();
+
+                        final CharSequence urlFor = getRequestCycle().urlFor(pageClass, pageParameters);
+                        return getRequestCycle().getUrlRenderer().renderFullUrl(Url.parse(urlFor));
                     }
                 });
                 panel.add(form);
@@ -128,51 +111,12 @@ public class ZeroClipboardPanel extends PanelAbstract<EntityModel> {
     }
 
     
-    private void addSubscribingLink(UiHintContainer uiHintContainer) {
-        if(uiHintContainer == null && subscribingLink != null) {
-            // ignore, since has already been primed
-            return;
-        }
-        AbstractLink subscribingLink = createSubscribingLink(uiHintContainer);
-        if(subscribingLink != null) {
-            this.subscribingLink = subscribingLink;
-            this.subscribingLink.setOutputMarkupId(true);
-        }
-    }
 
     private void addSimpleClipboardModalWindow() {
         simpleClipboardModalWindow = SimpleClipboardModalWindow.newModalWindow(ID_SIMPLE_CLIPBOARD_MODAL_WINDOW);
         addOrReplace(simpleClipboardModalWindow);
     }
 
-    private AbstractLink createSubscribingLink(UiHintContainer uiHintContainer) {
-        if(uiHintContainer == null || !(uiHintContainer instanceof EntityModel)) {
-            // return a no-op
-            return null;
-        } else {
-            final EntityModel entityModel = (EntityModel) uiHintContainer;
-            final PageParameters pageParameters = entityModel.getPageParameters();
-            final Class<? extends Page> pageClass = getPageClassRegistry().getPageClass(PageType.ENTITY);
-            return Links.newBookmarkablePageLink(ID_SUBSCRIBING_LINK, pageParameters, pageClass);
-        }
-    }
-
-    // //////////////////////////////////////
-    
-    @Override
-    public void onEvent(IEvent<?> event) {
-        super.onEvent(event);
-
-        final IsisUiHintEvent uiHintEvent = IsisEnvelopeEvent.openLetter(event, IsisUiHintEvent.class);
-        if(uiHintEvent == null) {
-            return;
-        } 
-        addSubscribingLink(uiHintEvent.getUiHintContainer());
-        final AjaxRequestTarget target = uiHintEvent.getTarget();
-        if(target != null) {
-            target.add(subscribingLink);
-        }
-    }
 
     // //////////////////////////////////////
 
@@ -181,8 +125,5 @@ public class ZeroClipboardPanel extends PanelAbstract<EntityModel> {
         return pcra.getPageClassRegistry();
     }
 
-    protected HintStore getHintStore() {
-        return IsisContext.getPersistenceSession().getServicesInjector().lookupService(HintStore.class);
-    }
 
 }

http://git-wip-us.apache.org/repos/asf/isis/blob/46bbbed8/core/viewer-wicket-ui/src/main/java/org/apache/isis/viewer/wicket/ui/pages/entity/EntityPage.java
----------------------------------------------------------------------
diff --git a/core/viewer-wicket-ui/src/main/java/org/apache/isis/viewer/wicket/ui/pages/entity/EntityPage.java b/core/viewer-wicket-ui/src/main/java/org/apache/isis/viewer/wicket/ui/pages/entity/EntityPage.java
index e74f33c..133b69e 100644
--- a/core/viewer-wicket-ui/src/main/java/org/apache/isis/viewer/wicket/ui/pages/entity/EntityPage.java
+++ b/core/viewer-wicket-ui/src/main/java/org/apache/isis/viewer/wicket/ui/pages/entity/EntityPage.java
@@ -40,7 +40,7 @@ import org.apache.isis.core.metamodel.spec.feature.ObjectMember;
 import org.apache.isis.core.runtime.system.DeploymentType;
 import org.apache.isis.core.runtime.system.context.IsisContext;
 import org.apache.isis.viewer.wicket.model.common.PageParametersUtils;
-import org.apache.isis.viewer.wicket.model.hints.IsisUiHintEvent;
+import org.apache.isis.viewer.wicket.model.hints.IsisSelectorEvent;
 import org.apache.isis.viewer.wicket.model.models.EntityModel;
 import org.apache.isis.viewer.wicket.ui.ComponentType;
 import org.apache.isis.viewer.wicket.ui.components.widgets.breadcrumbs.BreadcrumbModel;
@@ -157,13 +157,6 @@ public class EntityPage extends PageAbstract {
         addBreadcrumb(entityModel);
 
         addBookmarkedPages(entityPageContainer);
-
-
-        // TODO mgrigorov: Zero Clipboard has been moved to EntityIconAndTitlePanel where the entity model is available.
-        // Is this still needed for something else ?!
-        //
-        // ensure the copy link holds this page.
-        send(this, Broadcast.BREADTH, new IsisUiHintEvent(entityModel, null));
     }
 
     private void addBreadcrumb(final EntityModel entityModel) {