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 2013/11/16 08:29:16 UTC
git commit: ISIS-589: simplified the CSS bundling, fixed some issues
Updated Branches:
refs/heads/master bf4af4ec3 -> 71df3f63f
ISIS-589: simplified the CSS bundling, fixed some issues
Specifically:
* no need to contribute a list of classes, just a single will suffice
* no need for IsisBlobOrClobPanelAbstract, has no CSS
* cannot bundle LinksSelectPanelAbstract, since has images relative to class, referenced by its in CSS
In addition:
* fixed some existing CSS that wasn't correctly scoped so was not being applied.
Project: http://git-wip-us.apache.org/repos/asf/isis/repo
Commit: http://git-wip-us.apache.org/repos/asf/isis/commit/71df3f63
Tree: http://git-wip-us.apache.org/repos/asf/isis/tree/71df3f63
Diff: http://git-wip-us.apache.org/repos/asf/isis/diff/71df3f63
Branch: refs/heads/master
Commit: 71df3f63fae3e369d0818d397b5ec467dbe62299
Parents: bf4af4e
Author: Dan Haywood <da...@apache.org>
Authored: Sat Nov 16 07:29:00 2013 +0000
Committer: Dan Haywood <da...@apache.org>
Committed: Sat Nov 16 07:29:00 2013 +0000
----------------------------------------------------------------------
.../wicket/viewer/IsisWicketApplication.java | 46 ++++++--
.../isis/viewer/wicket/ui/ComponentFactory.java | 2 +-
.../wicket/ui/ComponentFactoryAbstract.java | 39 +++----
.../cssmenu/AppActionsCssMenuFactory.java | 2 +-
.../bookmarkedpages/BookmarkedPagesPanel.css | 54 ++++-----
.../bookmarkedpages/BookmarkedPagesPanel.html | 48 ++++----
...ectionContentsLinksSelectorPanelFactory.java | 4 +-
.../entity/EntityComponentFactoryAbstract.java | 8 +-
.../links/EntityLinksSelectorPanelFactory.java | 4 +-
.../scalars/ComponentFactoryScalarAbstract.java | 13 +--
.../isisapplib/IsisBlobOrClobPanelAbstract.css | 34 ------
.../isisapplib/IsisBlobOrClobPanelAbstract.html | 2 -
.../isisapplib/IsisBlobOrClobPanelAbstract.java | 3 +-
.../isisapplib/IsisBlobPanelFactory.java | 5 +-
.../isisapplib/IsisClobPanelFactory.java | 5 +-
.../scalars/string/StringPanelFactory.java | 2 +-
.../unknown/UnknownModelPanelFactory.java | 4 +-
.../EntityLinkSelect2PanelFactory.java | 2 +-
.../EntityLinkSimplePanelFactory.java | 2 +-
.../isis/viewer/wicket/ui/panels/PanelUtil.java | 19 +---
.../links/LinksSelectorPanelAbstract.css | 14 +--
.../links/LinksSelectorPanelAbstract.java | 8 ++
.../ui/ComponentFactoryAbstractTest_init.java | 109 +++++++++++++++++++
23 files changed, 254 insertions(+), 175 deletions(-)
----------------------------------------------------------------------
http://git-wip-us.apache.org/repos/asf/isis/blob/71df3f63/component/viewer/wicket/impl/src/main/java/org/apache/isis/viewer/wicket/viewer/IsisWicketApplication.java
----------------------------------------------------------------------
diff --git a/component/viewer/wicket/impl/src/main/java/org/apache/isis/viewer/wicket/viewer/IsisWicketApplication.java b/component/viewer/wicket/impl/src/main/java/org/apache/isis/viewer/wicket/viewer/IsisWicketApplication.java
index 1b97d1d..68457e7 100644
--- a/component/viewer/wicket/impl/src/main/java/org/apache/isis/viewer/wicket/viewer/IsisWicketApplication.java
+++ b/component/viewer/wicket/impl/src/main/java/org/apache/isis/viewer/wicket/viewer/IsisWicketApplication.java
@@ -20,7 +20,7 @@
package org.apache.isis.viewer.wicket.viewer;
import java.util.Collection;
-import java.util.LinkedHashSet;
+import java.util.Collections;
import java.util.List;
import java.util.ServiceLoader;
import java.util.Set;
@@ -82,15 +82,14 @@ import org.apache.isis.viewer.wicket.ui.ComponentFactory;
import org.apache.isis.viewer.wicket.ui.app.registry.ComponentFactoryRegistrar;
import org.apache.isis.viewer.wicket.ui.app.registry.ComponentFactoryRegistry;
import org.apache.isis.viewer.wicket.ui.app.registry.ComponentFactoryRegistryAccessor;
-import org.apache.isis.viewer.wicket.ui.components.widgets.cssmenu.CssMenuItem;
-import org.apache.isis.viewer.wicket.ui.components.widgets.cssmenu.CssMenuPanel;
-import org.apache.isis.viewer.wicket.ui.components.widgets.cssmenu.CssSubMenuItemsPanel;
+import org.apache.isis.viewer.wicket.ui.components.scalars.isisapplib.IsisBlobOrClobPanelAbstract;
+import org.apache.isis.viewer.wicket.ui.components.scalars.string.MultiLineStringPanel;
import org.apache.isis.viewer.wicket.ui.pages.BookmarkedPagesModelProvider;
-import org.apache.isis.viewer.wicket.ui.pages.PageAbstract;
import org.apache.isis.viewer.wicket.ui.pages.PageClassList;
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.PanelUtil;
+import org.apache.isis.viewer.wicket.ui.selector.links.LinksSelectorPanelAbstract;
import org.apache.isis.viewer.wicket.viewer.integration.isis.DeploymentTypeWicketAbstract;
import org.apache.isis.viewer.wicket.viewer.integration.isis.WicketServer;
import org.apache.isis.viewer.wicket.viewer.integration.isis.WicketServerPrototype;
@@ -249,21 +248,54 @@ public class IsisWicketApplication extends AuthenticatedWebApplication implement
LOG.error("Failed to initialize", ex);
throw ex;
}
-
}
private void buildCssBundle() {
+ // get the css for all components built by component factories
final Set<CssResourceReference> references = cssResourceReferencesForAllComponents();
+
+ // some additional special cases.
+ addSpecialCasesToCssBundle(references);
+
+ // create the bundle
getResourceBundles().addCssBundle(
IsisWicketApplication.class, "isis-wicket-viewer-bundle.css",
references.toArray(new CssResourceReference[]{}));
}
+ /**
+ * Additional special cases to be included in the main CSS bundle.
+ *
+ * <p>
+ * These are typically either superclasses or components that don't have their own ComponentFactory, or
+ * for {@link ComponentFactory}s (such as <tt>StringPanelFactory</tt>) that don't quite follow the usual pattern
+ * (because they create different types of panels).
+ *
+ * <p>
+ * Note that it doesn't really matter if we miss one or two; their CSS will simply be served up individually.
+ */
+ private void addSpecialCasesToCssBundle(final Set<CssResourceReference> references) {
+
+ // abstract classes
+
+ // ... though it turns out we cannot add this particular one to the bundle, because
+ // it has CSS image links intended to be resolved relative to LinksSelectorPanelAbstract.class.
+ // Adding them into the bundle would mean these CSS links are resolved relative to IsisWicketApplication.class
+ // instead.
+ // references.add(PanelUtil.cssResourceReferenceFor(LinksSelectorPanelAbstract.class));
+
+ // non-conforming component factories
+ references.add(PanelUtil.cssResourceReferenceFor(MultiLineStringPanel.class));
+ }
+
private final static Function<ComponentFactory, Iterable<CssResourceReference>> getCssResourceReferences =
new Function<ComponentFactory, Iterable<CssResourceReference>>(){
@Override
public Iterable<CssResourceReference> apply(final ComponentFactory input) {
- return input.getCssResourceReferences();
+ final CssResourceReference cssResourceReference = input.getCssResourceReferences();
+ return cssResourceReference != null?
+ Collections.singletonList(cssResourceReference):
+ Collections.<CssResourceReference>emptyList();
}
};
http://git-wip-us.apache.org/repos/asf/isis/blob/71df3f63/component/viewer/wicket/ui/src/main/java/org/apache/isis/viewer/wicket/ui/ComponentFactory.java
----------------------------------------------------------------------
diff --git a/component/viewer/wicket/ui/src/main/java/org/apache/isis/viewer/wicket/ui/ComponentFactory.java b/component/viewer/wicket/ui/src/main/java/org/apache/isis/viewer/wicket/ui/ComponentFactory.java
index f4c189e..3b8dd18 100644
--- a/component/viewer/wicket/ui/src/main/java/org/apache/isis/viewer/wicket/ui/ComponentFactory.java
+++ b/component/viewer/wicket/ui/src/main/java/org/apache/isis/viewer/wicket/ui/ComponentFactory.java
@@ -102,6 +102,6 @@ public interface ComponentFactory extends Serializable {
*/
String getName();
- Iterable<CssResourceReference> getCssResourceReferences();
+ CssResourceReference getCssResourceReferences();
}
http://git-wip-us.apache.org/repos/asf/isis/blob/71df3f63/component/viewer/wicket/ui/src/main/java/org/apache/isis/viewer/wicket/ui/ComponentFactoryAbstract.java
----------------------------------------------------------------------
diff --git a/component/viewer/wicket/ui/src/main/java/org/apache/isis/viewer/wicket/ui/ComponentFactoryAbstract.java b/component/viewer/wicket/ui/src/main/java/org/apache/isis/viewer/wicket/ui/ComponentFactoryAbstract.java
index 422daa3..24c5049 100644
--- a/component/viewer/wicket/ui/src/main/java/org/apache/isis/viewer/wicket/ui/ComponentFactoryAbstract.java
+++ b/component/viewer/wicket/ui/src/main/java/org/apache/isis/viewer/wicket/ui/ComponentFactoryAbstract.java
@@ -19,8 +19,6 @@
package org.apache.isis.viewer.wicket.ui;
-import java.util.Collections;
-
import org.apache.wicket.Component;
import org.apache.wicket.model.IModel;
import org.apache.wicket.request.resource.CssResourceReference;
@@ -37,21 +35,27 @@ public abstract class ComponentFactoryAbstract implements ComponentFactory {
private final ComponentType componentType;
private final String name;
- private final Class<?>[] cssClasses;
+ private final Class<?> componentClass;
+
+ public ComponentFactoryAbstract(final ComponentType componentType) {
+ this(componentType, null, null);
+ }
- public ComponentFactoryAbstract(final ComponentType componentType, @SuppressWarnings("rawtypes") Class... classes) {
- this(componentType, null, classes);
+ public ComponentFactoryAbstract(final ComponentType componentType, final String name) {
+ this(componentType, name, null);
+ }
+
+ public ComponentFactoryAbstract(final ComponentType componentType, @SuppressWarnings("rawtypes") Class componentClass) {
+ this(componentType, null, componentClass);
}
- public ComponentFactoryAbstract(final ComponentType componentType, final String name, @SuppressWarnings("rawtypes") Class... cssClasses) {
+ public ComponentFactoryAbstract(final ComponentType componentType, final String name, @SuppressWarnings("rawtypes") Class componentClass) {
this.componentType = componentType;
this.name = name != null ? name : getClass().getSimpleName();
- for (Class<?> cls : cssClasses) {
- if(ComponentFactory.class.isAssignableFrom(cls)) {
- throw new IllegalArgumentException("specified a ComponentFactory as a cssClass... you probably meant the component instead? cls = " + cls.getName());
- }
+ if(componentClass != null && ComponentFactory.class.isAssignableFrom(componentClass)) {
+ throw new IllegalArgumentException("specified a ComponentFactory as a componentClass... you probably meant the component instead? componentClass = " + componentClass.getName());
}
- this.cssClasses = cssClasses;
+ this.componentClass = componentClass;
}
@Override
@@ -103,18 +107,9 @@ public abstract class ComponentFactoryAbstract implements ComponentFactory {
}
@Override
- public Iterable<CssResourceReference> getCssResourceReferences() {
- if (cssClasses!=null && cssClasses.length>0) {
- return cssResourceReferencesFor(cssClasses);
- } else {
- return Collections.<CssResourceReference>emptyList();
- }
+ public CssResourceReference getCssResourceReferences() {
+ return PanelUtil.cssResourceReferenceFor(componentClass);
}
- @SuppressWarnings("rawtypes")
- private static Iterable<CssResourceReference> cssResourceReferencesFor(
- final Class... classes) {
- return PanelUtil.cssResourceReferencesFor(classes);
- }
}
http://git-wip-us.apache.org/repos/asf/isis/blob/71df3f63/component/viewer/wicket/ui/src/main/java/org/apache/isis/viewer/wicket/ui/components/appactions/cssmenu/AppActionsCssMenuFactory.java
----------------------------------------------------------------------
diff --git a/component/viewer/wicket/ui/src/main/java/org/apache/isis/viewer/wicket/ui/components/appactions/cssmenu/AppActionsCssMenuFactory.java b/component/viewer/wicket/ui/src/main/java/org/apache/isis/viewer/wicket/ui/components/appactions/cssmenu/AppActionsCssMenuFactory.java
index 67f1e35..016731f 100644
--- a/component/viewer/wicket/ui/src/main/java/org/apache/isis/viewer/wicket/ui/components/appactions/cssmenu/AppActionsCssMenuFactory.java
+++ b/component/viewer/wicket/ui/src/main/java/org/apache/isis/viewer/wicket/ui/components/appactions/cssmenu/AppActionsCssMenuFactory.java
@@ -77,7 +77,7 @@ public class AppActionsCssMenuFactory extends ComponentFactoryAbstract {
}
public AppActionsCssMenuFactory() {
- super(ComponentType.APPLICATION_ACTIONS);
+ super(ComponentType.APPLICATION_ACTIONS, CssMenuPanel.class);
}
/**
http://git-wip-us.apache.org/repos/asf/isis/blob/71df3f63/component/viewer/wicket/ui/src/main/java/org/apache/isis/viewer/wicket/ui/components/bookmarkedpages/BookmarkedPagesPanel.css
----------------------------------------------------------------------
diff --git a/component/viewer/wicket/ui/src/main/java/org/apache/isis/viewer/wicket/ui/components/bookmarkedpages/BookmarkedPagesPanel.css b/component/viewer/wicket/ui/src/main/java/org/apache/isis/viewer/wicket/ui/components/bookmarkedpages/BookmarkedPagesPanel.css
index 2fac53a..6caa1bb 100644
--- a/component/viewer/wicket/ui/src/main/java/org/apache/isis/viewer/wicket/ui/components/bookmarkedpages/BookmarkedPagesPanel.css
+++ b/component/viewer/wicket/ui/src/main/java/org/apache/isis/viewer/wicket/ui/components/bookmarkedpages/BookmarkedPagesPanel.css
@@ -17,7 +17,7 @@
* under the License.
*/
-.bookmarkedPagesPanel {
+.bookmarkedPagesPanel .bookmarkedPagesPanelHolder {
font-size: 0.7em;
text-transform:uppercase;
font-weight:bold;
@@ -25,17 +25,17 @@
margin-bottom:5px;
}
-.bookmarkedPagesPanel .bookmarkedPagesList {
+.bookmarkedPagesPanel .bookmarkedPagesPanelHolder .bookmarkedPagesList {
margin-top:30px;
}
-.bookmarkedPagesPanel .bookmarkedPageItem {
+.bookmarkedPagesPanel .bookmarkedPagesPanelHolder .bookmarkedPageItem {
margin-top:10px;
margin-bottom:10px;
}
-.bookmarkedPagesPanel span.bookmarkedPageImageAndTitle {
+.bookmarkedPagesPanel .bookmarkedPagesPanelHolder span.bookmarkedPageImageAndTitle {
margin-right: 5px;
margin-bottom:5px;
@@ -47,11 +47,11 @@
padding:10px 10px 3px 10px;
}
-.bookmarkedPagesPanel span.bookmarkedPageImageAndTitle:hover {
+.bookmarkedPagesPanel .bookmarkedPagesPanelHolder span.bookmarkedPageImageAndTitle:hover {
background-color:#FFFFFF;
}
-.bookmarkedPagesPanel .bookmarkedPagesList a img.bookmarkedPageImage {
+.bookmarkedPagesPanel .bookmarkedPagesPanelHolder .bookmarkedPagesList a img.bookmarkedPageImage {
/*float:left;*/
background-color: transparent;
width: 16px;
@@ -59,27 +59,27 @@
/*padding:3px 0px 0px 3px;*/
}
-.bookmarkedPagesPanel .bookmarkedPagesList span.bookmarkedPageTitle {
+.bookmarkedPagesPanel .bookmarkedPagesPanelHolder .bookmarkedPagesList span.bookmarkedPageTitle {
font-style:normal !important;
vertical-align: top;
padding-left: 5px;
}
-.bookmarkedPagesPanel span.bookmarkedPageTitle {
+.bookmarkedPagesPanel .bookmarkedPagesPanelHolder span.bookmarkedPageTitle {
background-color:#F0EFEA;
}
-.bookmarkedPagesPanel .bookmarkedPagesList a:hover span.bookmarkedPageTitle {
+.bookmarkedPagesPanel .bookmarkedPagesPanelHolder .bookmarkedPagesList a:hover span.bookmarkedPageTitle {
text-decoration:none;
background-color:#FFFFFF;
}
-.bookmarkedPagesPanel .clearBookmarks {
+.bookmarkedPagesPanel .bookmarkedPagesPanelHolder .clearBookmarks {
color: rgb(128,0,0);
}
-.bookmarkedPagesPanel .clearBookmarks {
+.bookmarkedPagesPanel .bookmarkedPagesPanelHolder .clearBookmarks {
border-radius: 4px 4px 4px 4px;
color: #46413B;
display: block;
@@ -89,13 +89,12 @@
margin-right: 5px;
}
-.bookmarkedPagesPanel .currentBookmark span.bookmarkedPageImageAndTitle,
-.bookmarkedPagesPanel .currentBookmark span.bookmarkedPageTitle {
+.bookmarkedPagesPanel .bookmarkedPagesPanelHolder .currentBookmark span.bookmarkedPageImageAndTitle,
+.bookmarkedPagesPanel .bookmarkedPagesPanelHolder .currentBookmark span.bookmarkedPageTitle {
background-color:#FFFFFF;
}
-
-.showPanelTab {
+.bookmarkedPagesPanel .showPanelTab {
border-radius: 0px 8px 8px 0px;
width:10px;
height:200px;
@@ -111,7 +110,7 @@
font-weight:bold;
}
-#bookmarkedPagesSlidingDiv {
+.bookmarkedPagesPanel #bookmarkedPagesSlidingDiv {
border-radius: 0px 8px 8px 0px;
position:fixed;
left:0px;
@@ -121,7 +120,8 @@
width:0;/*new line*/
z-index: 998;
}
-#bookmarkedPagesSlidingDiv .content {
+
+.bookmarkedPagesPanel #bookmarkedPagesSlidingDiv .content {
width:290px;
margin-left:30px;
@@ -129,26 +129,26 @@
}
-.bookmarkDepth0 {
+.bookmarkedPagesPanel .bookmarkDepth0 {
padding-left: 0px;
}
-.bookmarkDepth1 {
+.bookmarkedPagesPanel .bookmarkDepth1 {
padding-left: 20px;
}
-.bookmarkDepth2 {
+.bookmarkedPagesPanel .bookmarkDepth2 {
padding-left: 40px;
}
-.bookmarkDepth3 {
+.bookmarkedPagesPanel .bookmarkDepth3 {
padding-left: 60px;
}
-.bookmarkDepth4 {
+.bookmarkedPagesPanel .bookmarkDepth4 {
padding-left: 80px;
}
-.bookmarkDepth5 {
+.bookmarkedPagesPanel .bookmarkDepth5 {
padding-left: 100px;
}
-.clearBookmarkPlaceHolder {
+.bookmarkedPagesPanel .clearBookmarkPlaceHolder {
position: relative;
top: -7px;
width: 20px;
@@ -156,11 +156,11 @@
padding-bottom: 40px;
}
-.clearBookmark,
-.clearBookmarks {
+.bookmarkedPagesPanel .clearBookmark,
+.bookmarkedPagesPanel .clearBookmarks {
background: url('images/clear_bookmarks.png') no-repeat;
}
-.clearBookmarks span {
+.bookmarkedPagesPanel .clearBookmarks span {
padding-left: 25px;
}
http://git-wip-us.apache.org/repos/asf/isis/blob/71df3f63/component/viewer/wicket/ui/src/main/java/org/apache/isis/viewer/wicket/ui/components/bookmarkedpages/BookmarkedPagesPanel.html
----------------------------------------------------------------------
diff --git a/component/viewer/wicket/ui/src/main/java/org/apache/isis/viewer/wicket/ui/components/bookmarkedpages/BookmarkedPagesPanel.html b/component/viewer/wicket/ui/src/main/java/org/apache/isis/viewer/wicket/ui/components/bookmarkedpages/BookmarkedPagesPanel.html
index 62bae65..be68d2c 100644
--- a/component/viewer/wicket/ui/src/main/java/org/apache/isis/viewer/wicket/ui/components/bookmarkedpages/BookmarkedPagesPanel.html
+++ b/component/viewer/wicket/ui/src/main/java/org/apache/isis/viewer/wicket/ui/components/bookmarkedpages/BookmarkedPagesPanel.html
@@ -24,29 +24,31 @@
lang="en">
<body>
<wicket:panel>
- <div class="showPanelTab">
- </div>
- <div id="bookmarkedPagesSlidingDiv">
- <div class="content">
- <div id="bookmarkedPages" class="bookmarkedPagesPanel bookmarkedPagesComponentType">
- <a href="#" wicket:id="clearBookmarks" class="clearBookmarks" title="Clear Bookmarks">
- <span>clear all</span>
- </a>
- <ul wicket:id="bookmarkList" class="bookmarkedPagesList">
- <li wicket:id="bookmarkedPageItem" class="bookmarkedPageItem">
- <span>
- <a href="#" wicket:id="clearBookmarkLink" class="clearBookmarkPlaceHolder"></a>
- <a href="#" wicket:id="bookmarkedPageLink">
- <span class="bookmarkedPageImageAndTitle">
- <img wicket:id="bookmarkedPageImage" class="bookmarkedPageImage"/>
- <span wicket:id="bookmarkedPageTitle" class="bookmarkedPageTitle">[link title]</span>
- </span>
- </a>
- </span>
- </li>
- </ul>
- </div>
- </div>
+ <div class="bookmarkedPagesPanel">
+ <div class="showPanelTab">
+ </div>
+ <div id="bookmarkedPagesSlidingDiv">
+ <div class="content">
+ <div id="bookmarkedPages" class="bookmarkedPagesPanelHolder bookmarkedPagesComponentType">
+ <a href="#" wicket:id="clearBookmarks" class="clearBookmarks" title="Clear Bookmarks">
+ <span>clear all</span>
+ </a>
+ <ul wicket:id="bookmarkList" class="bookmarkedPagesList">
+ <li wicket:id="bookmarkedPageItem" class="bookmarkedPageItem">
+ <span>
+ <a href="#" wicket:id="clearBookmarkLink" class="clearBookmarkPlaceHolder"></a>
+ <a href="#" wicket:id="bookmarkedPageLink">
+ <span class="bookmarkedPageImageAndTitle">
+ <img wicket:id="bookmarkedPageImage" class="bookmarkedPageImage"/>
+ <span wicket:id="bookmarkedPageTitle" class="bookmarkedPageTitle">[link title]</span>
+ </span>
+ </a>
+ </span>
+ </li>
+ </ul>
+ </div>
+ </div>
+ </div>
</div>
</wicket:panel>
</body>
http://git-wip-us.apache.org/repos/asf/isis/blob/71df3f63/component/viewer/wicket/ui/src/main/java/org/apache/isis/viewer/wicket/ui/components/collectioncontents/selector/links/CollectionContentsLinksSelectorPanelFactory.java
----------------------------------------------------------------------
diff --git a/component/viewer/wicket/ui/src/main/java/org/apache/isis/viewer/wicket/ui/components/collectioncontents/selector/links/CollectionContentsLinksSelectorPanelFactory.java b/component/viewer/wicket/ui/src/main/java/org/apache/isis/viewer/wicket/ui/components/collectioncontents/selector/links/CollectionContentsLinksSelectorPanelFactory.java
index 7e090da..de0a3bb 100644
--- a/component/viewer/wicket/ui/src/main/java/org/apache/isis/viewer/wicket/ui/components/collectioncontents/selector/links/CollectionContentsLinksSelectorPanelFactory.java
+++ b/component/viewer/wicket/ui/src/main/java/org/apache/isis/viewer/wicket/ui/components/collectioncontents/selector/links/CollectionContentsLinksSelectorPanelFactory.java
@@ -21,13 +21,11 @@ package org.apache.isis.viewer.wicket.ui.components.collectioncontents.selector.
import org.apache.wicket.Component;
import org.apache.wicket.model.IModel;
-import org.apache.wicket.request.resource.CssResourceReference;
import org.apache.isis.viewer.wicket.model.models.EntityCollectionModel;
import org.apache.isis.viewer.wicket.ui.ComponentFactory;
import org.apache.isis.viewer.wicket.ui.ComponentFactoryAbstract;
import org.apache.isis.viewer.wicket.ui.ComponentType;
-import org.apache.isis.viewer.wicket.ui.selector.links.LinksSelectorPanelAbstract;
/**
* {@link ComponentFactory} for {@link CollectionContentsLinksSelectorPanel}.
@@ -42,7 +40,7 @@ public class CollectionContentsLinksSelectorPanelFactory extends ComponentFactor
public CollectionContentsLinksSelectorPanelFactory() {
super(ComponentType.COLLECTION_CONTENTS,
- CollectionContentsLinksSelectorPanel.class, LinksSelectorPanelAbstract.class);
+ CollectionContentsLinksSelectorPanel.class);
}
@Override
http://git-wip-us.apache.org/repos/asf/isis/blob/71df3f63/component/viewer/wicket/ui/src/main/java/org/apache/isis/viewer/wicket/ui/components/entity/EntityComponentFactoryAbstract.java
----------------------------------------------------------------------
diff --git a/component/viewer/wicket/ui/src/main/java/org/apache/isis/viewer/wicket/ui/components/entity/EntityComponentFactoryAbstract.java b/component/viewer/wicket/ui/src/main/java/org/apache/isis/viewer/wicket/ui/components/entity/EntityComponentFactoryAbstract.java
index be0e5c6..717caf3 100644
--- a/component/viewer/wicket/ui/src/main/java/org/apache/isis/viewer/wicket/ui/components/entity/EntityComponentFactoryAbstract.java
+++ b/component/viewer/wicket/ui/src/main/java/org/apache/isis/viewer/wicket/ui/components/entity/EntityComponentFactoryAbstract.java
@@ -38,12 +38,12 @@ public abstract class EntityComponentFactoryAbstract extends ComponentFactoryAbs
private static final long serialVersionUID = 1L;
- public EntityComponentFactoryAbstract(final ComponentType componentType, final @SuppressWarnings("rawtypes") Class... classes) {
- super(componentType, classes);
+ public EntityComponentFactoryAbstract(final ComponentType componentType, final @SuppressWarnings("rawtypes") Class componentClass) {
+ super(componentType, componentClass);
}
- public EntityComponentFactoryAbstract(final ComponentType componentType, final String name, final @SuppressWarnings("rawtypes") Class... classes) {
- super(componentType, name, classes);
+ public EntityComponentFactoryAbstract(final ComponentType componentType, final String name, final @SuppressWarnings("rawtypes") Class componentClass) {
+ super(componentType, name, componentClass);
}
@Override
http://git-wip-us.apache.org/repos/asf/isis/blob/71df3f63/component/viewer/wicket/ui/src/main/java/org/apache/isis/viewer/wicket/ui/components/entity/selector/links/EntityLinksSelectorPanelFactory.java
----------------------------------------------------------------------
diff --git a/component/viewer/wicket/ui/src/main/java/org/apache/isis/viewer/wicket/ui/components/entity/selector/links/EntityLinksSelectorPanelFactory.java b/component/viewer/wicket/ui/src/main/java/org/apache/isis/viewer/wicket/ui/components/entity/selector/links/EntityLinksSelectorPanelFactory.java
index 615599a..7a9f6d0 100644
--- a/component/viewer/wicket/ui/src/main/java/org/apache/isis/viewer/wicket/ui/components/entity/selector/links/EntityLinksSelectorPanelFactory.java
+++ b/component/viewer/wicket/ui/src/main/java/org/apache/isis/viewer/wicket/ui/components/entity/selector/links/EntityLinksSelectorPanelFactory.java
@@ -26,7 +26,6 @@ import org.apache.isis.viewer.wicket.model.models.EntityModel;
import org.apache.isis.viewer.wicket.ui.ComponentFactory;
import org.apache.isis.viewer.wicket.ui.ComponentType;
import org.apache.isis.viewer.wicket.ui.components.entity.EntityComponentFactoryAbstract;
-import org.apache.isis.viewer.wicket.ui.selector.links.LinksSelectorPanelAbstract;
/**
* {@link ComponentFactory} for {@link EntityLinksSelectorPanel}.
@@ -40,8 +39,7 @@ public class EntityLinksSelectorPanelFactory extends EntityComponentFactoryAbstr
private static final long serialVersionUID = 1L;
public EntityLinksSelectorPanelFactory() {
- super(ComponentType.ENTITY,
- EntityLinksSelectorPanel.class, LinksSelectorPanelAbstract.class);
+ super(ComponentType.ENTITY, EntityLinksSelectorPanel.class);
}
@Override
http://git-wip-us.apache.org/repos/asf/isis/blob/71df3f63/component/viewer/wicket/ui/src/main/java/org/apache/isis/viewer/wicket/ui/components/scalars/ComponentFactoryScalarAbstract.java
----------------------------------------------------------------------
diff --git a/component/viewer/wicket/ui/src/main/java/org/apache/isis/viewer/wicket/ui/components/scalars/ComponentFactoryScalarAbstract.java b/component/viewer/wicket/ui/src/main/java/org/apache/isis/viewer/wicket/ui/components/scalars/ComponentFactoryScalarAbstract.java
index db034e8..ed0d8a4 100644
--- a/component/viewer/wicket/ui/src/main/java/org/apache/isis/viewer/wicket/ui/components/scalars/ComponentFactoryScalarAbstract.java
+++ b/component/viewer/wicket/ui/src/main/java/org/apache/isis/viewer/wicket/ui/components/scalars/ComponentFactoryScalarAbstract.java
@@ -19,9 +19,6 @@
package org.apache.isis.viewer.wicket.ui.components.scalars;
-import java.util.Collections;
-import java.util.List;
-
import org.apache.wicket.Component;
import org.apache.wicket.model.IModel;
@@ -36,15 +33,9 @@ public abstract class ComponentFactoryScalarAbstract extends ComponentFactoryAbs
private final Class<?>[] scalarTypes;
public ComponentFactoryScalarAbstract(
- final @SuppressWarnings("rawtypes") Class panelClass,
- final Class<?>... scalarTypes) {
- this(Collections.singletonList(panelClass), scalarTypes);
- }
-
- public ComponentFactoryScalarAbstract(
- final @SuppressWarnings("rawtypes") List<Class> panelClasses,
+ final @SuppressWarnings("rawtypes") Class componentClass,
final Class<?>... scalarTypes) {
- super(ComponentType.SCALAR_NAME_AND_VALUE, panelClasses.toArray(new Class[]{}));
+ super(ComponentType.SCALAR_NAME_AND_VALUE, componentClass);
this.scalarTypes = scalarTypes;
}
http://git-wip-us.apache.org/repos/asf/isis/blob/71df3f63/component/viewer/wicket/ui/src/main/java/org/apache/isis/viewer/wicket/ui/components/scalars/isisapplib/IsisBlobOrClobPanelAbstract.css
----------------------------------------------------------------------
diff --git a/component/viewer/wicket/ui/src/main/java/org/apache/isis/viewer/wicket/ui/components/scalars/isisapplib/IsisBlobOrClobPanelAbstract.css b/component/viewer/wicket/ui/src/main/java/org/apache/isis/viewer/wicket/ui/components/scalars/isisapplib/IsisBlobOrClobPanelAbstract.css
deleted file mode 100644
index 1e56186..0000000
--- a/component/viewer/wicket/ui/src/main/java/org/apache/isis/viewer/wicket/ui/components/scalars/isisapplib/IsisBlobOrClobPanelAbstract.css
+++ /dev/null
@@ -1,34 +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.
- */
-
-/* REVIEW: what is this, exactly */
-.yourBtn{
- position: relative;
- top: 150px;
- font-family: calibri;
- width: 150px;
- padding: 10px;
- -webkit-border-radius: 5px;
- -moz-border-radius: 5px;
- border: 1px dashed #BBB;
- text-align: center;
- background-color: #DDD;
- cursor:pointer;
-}
-
http://git-wip-us.apache.org/repos/asf/isis/blob/71df3f63/component/viewer/wicket/ui/src/main/java/org/apache/isis/viewer/wicket/ui/components/scalars/isisapplib/IsisBlobOrClobPanelAbstract.html
----------------------------------------------------------------------
diff --git a/component/viewer/wicket/ui/src/main/java/org/apache/isis/viewer/wicket/ui/components/scalars/isisapplib/IsisBlobOrClobPanelAbstract.html b/component/viewer/wicket/ui/src/main/java/org/apache/isis/viewer/wicket/ui/components/scalars/isisapplib/IsisBlobOrClobPanelAbstract.html
index 8c1ca98..cf3302e 100644
--- a/component/viewer/wicket/ui/src/main/java/org/apache/isis/viewer/wicket/ui/components/scalars/isisapplib/IsisBlobOrClobPanelAbstract.html
+++ b/component/viewer/wicket/ui/src/main/java/org/apache/isis/viewer/wicket/ui/components/scalars/isisapplib/IsisBlobOrClobPanelAbstract.html
@@ -18,8 +18,6 @@
under the License.
-->
<html>
- <wicket:head>
- </wicket:head>
<body>
<wicket:panel>
<div class="isisBlobPanel scalarNameAndValueComponentType">
http://git-wip-us.apache.org/repos/asf/isis/blob/71df3f63/component/viewer/wicket/ui/src/main/java/org/apache/isis/viewer/wicket/ui/components/scalars/isisapplib/IsisBlobOrClobPanelAbstract.java
----------------------------------------------------------------------
diff --git a/component/viewer/wicket/ui/src/main/java/org/apache/isis/viewer/wicket/ui/components/scalars/isisapplib/IsisBlobOrClobPanelAbstract.java b/component/viewer/wicket/ui/src/main/java/org/apache/isis/viewer/wicket/ui/components/scalars/isisapplib/IsisBlobOrClobPanelAbstract.java
index cbeed95..251e461 100644
--- a/component/viewer/wicket/ui/src/main/java/org/apache/isis/viewer/wicket/ui/components/scalars/isisapplib/IsisBlobOrClobPanelAbstract.java
+++ b/component/viewer/wicket/ui/src/main/java/org/apache/isis/viewer/wicket/ui/components/scalars/isisapplib/IsisBlobOrClobPanelAbstract.java
@@ -26,7 +26,6 @@ import java.util.List;
import javax.activation.MimeType;
import javax.imageio.ImageIO;
-import org.apache.wicket.Application;
import org.apache.wicket.Component;
import org.apache.wicket.MarkupContainer;
import org.apache.wicket.ajax.AjaxRequestTarget;
@@ -34,7 +33,6 @@ import org.apache.wicket.ajax.markup.html.AjaxLink;
import org.apache.wicket.behavior.Behavior;
import org.apache.wicket.extensions.markup.html.image.resource.ThumbnailImageResource;
import org.apache.wicket.markup.head.IHeaderResponse;
-import org.apache.wicket.markup.head.JavaScriptHeaderItem;
import org.apache.wicket.markup.html.WebMarkupContainer;
import org.apache.wicket.markup.html.basic.Label;
import org.apache.wicket.markup.html.form.FormComponentLabel;
@@ -56,6 +54,7 @@ import org.apache.isis.core.commons.lang.CloseableExtensions;
import org.apache.isis.core.metamodel.adapter.ObjectAdapter;
import org.apache.isis.viewer.wicket.model.models.ScalarModel;
import org.apache.isis.viewer.wicket.ui.components.scalars.ScalarPanelAbstract;
+import org.apache.isis.viewer.wicket.ui.panels.PanelUtil;
import org.apache.isis.viewer.wicket.ui.util.Components;
public abstract class IsisBlobOrClobPanelAbstract<T extends NamedWithMimeType> extends ScalarPanelAbstract {
http://git-wip-us.apache.org/repos/asf/isis/blob/71df3f63/component/viewer/wicket/ui/src/main/java/org/apache/isis/viewer/wicket/ui/components/scalars/isisapplib/IsisBlobPanelFactory.java
----------------------------------------------------------------------
diff --git a/component/viewer/wicket/ui/src/main/java/org/apache/isis/viewer/wicket/ui/components/scalars/isisapplib/IsisBlobPanelFactory.java b/component/viewer/wicket/ui/src/main/java/org/apache/isis/viewer/wicket/ui/components/scalars/isisapplib/IsisBlobPanelFactory.java
index 9c099b6..c3fbea4 100644
--- a/component/viewer/wicket/ui/src/main/java/org/apache/isis/viewer/wicket/ui/components/scalars/isisapplib/IsisBlobPanelFactory.java
+++ b/component/viewer/wicket/ui/src/main/java/org/apache/isis/viewer/wicket/ui/components/scalars/isisapplib/IsisBlobPanelFactory.java
@@ -19,8 +19,6 @@
package org.apache.isis.viewer.wicket.ui.components.scalars.isisapplib;
-import com.google.common.collect.Lists;
-
import org.apache.wicket.Component;
import org.apache.isis.viewer.wicket.model.models.ScalarModel;
@@ -35,8 +33,7 @@ public class IsisBlobPanelFactory extends ComponentFactoryScalarAbstract {
private static final long serialVersionUID = 1L;
public IsisBlobPanelFactory() {
- super(Lists.<Class>newArrayList(IsisBlobPanel.class, IsisBlobOrClobPanelAbstract.class), org.apache.isis.applib.value.Blob.class);
- //super(IsisBlobPanel.class, org.apache.isis.applib.value.Blob.class);
+ super(IsisBlobPanel.class, org.apache.isis.applib.value.Blob.class);
}
@Override
http://git-wip-us.apache.org/repos/asf/isis/blob/71df3f63/component/viewer/wicket/ui/src/main/java/org/apache/isis/viewer/wicket/ui/components/scalars/isisapplib/IsisClobPanelFactory.java
----------------------------------------------------------------------
diff --git a/component/viewer/wicket/ui/src/main/java/org/apache/isis/viewer/wicket/ui/components/scalars/isisapplib/IsisClobPanelFactory.java b/component/viewer/wicket/ui/src/main/java/org/apache/isis/viewer/wicket/ui/components/scalars/isisapplib/IsisClobPanelFactory.java
index 99061f0..d9dc802 100644
--- a/component/viewer/wicket/ui/src/main/java/org/apache/isis/viewer/wicket/ui/components/scalars/isisapplib/IsisClobPanelFactory.java
+++ b/component/viewer/wicket/ui/src/main/java/org/apache/isis/viewer/wicket/ui/components/scalars/isisapplib/IsisClobPanelFactory.java
@@ -19,8 +19,6 @@
package org.apache.isis.viewer.wicket.ui.components.scalars.isisapplib;
-import com.google.common.collect.Lists;
-
import org.apache.wicket.Component;
import org.apache.isis.viewer.wicket.model.models.ScalarModel;
@@ -35,8 +33,7 @@ public class IsisClobPanelFactory extends ComponentFactoryScalarAbstract {
private static final long serialVersionUID = 1L;
public IsisClobPanelFactory() {
- super(Lists.<Class>newArrayList(IsisClobPanel.class, IsisBlobOrClobPanelAbstract.class), org.apache.isis.applib.value.Clob.class);
- //super(IsisClobPanel.class, org.apache.isis.applib.value.Clob.class);
+ super(IsisClobPanel.class, org.apache.isis.applib.value.Clob.class);
}
@Override
http://git-wip-us.apache.org/repos/asf/isis/blob/71df3f63/component/viewer/wicket/ui/src/main/java/org/apache/isis/viewer/wicket/ui/components/scalars/string/StringPanelFactory.java
----------------------------------------------------------------------
diff --git a/component/viewer/wicket/ui/src/main/java/org/apache/isis/viewer/wicket/ui/components/scalars/string/StringPanelFactory.java b/component/viewer/wicket/ui/src/main/java/org/apache/isis/viewer/wicket/ui/components/scalars/string/StringPanelFactory.java
index dceb3c1..17eb3ce 100644
--- a/component/viewer/wicket/ui/src/main/java/org/apache/isis/viewer/wicket/ui/components/scalars/string/StringPanelFactory.java
+++ b/component/viewer/wicket/ui/src/main/java/org/apache/isis/viewer/wicket/ui/components/scalars/string/StringPanelFactory.java
@@ -34,7 +34,7 @@ public class StringPanelFactory extends ComponentFactoryScalarAbstract {
@SuppressWarnings("rawtypes")
public StringPanelFactory() {
super(
- Lists.<Class>newArrayList(StringPanel.class, MultiLineStringPanel.class),
+ StringPanel.class,
String.class);
}
http://git-wip-us.apache.org/repos/asf/isis/blob/71df3f63/component/viewer/wicket/ui/src/main/java/org/apache/isis/viewer/wicket/ui/components/unknown/UnknownModelPanelFactory.java
----------------------------------------------------------------------
diff --git a/component/viewer/wicket/ui/src/main/java/org/apache/isis/viewer/wicket/ui/components/unknown/UnknownModelPanelFactory.java b/component/viewer/wicket/ui/src/main/java/org/apache/isis/viewer/wicket/ui/components/unknown/UnknownModelPanelFactory.java
index ce82e9d..e7d80e6 100644
--- a/component/viewer/wicket/ui/src/main/java/org/apache/isis/viewer/wicket/ui/components/unknown/UnknownModelPanelFactory.java
+++ b/component/viewer/wicket/ui/src/main/java/org/apache/isis/viewer/wicket/ui/components/unknown/UnknownModelPanelFactory.java
@@ -57,8 +57,8 @@ public class UnknownModelPanelFactory implements ComponentFactory {
}
@Override
- public Iterable<CssResourceReference> getCssResourceReferences() {
- return PanelUtil.cssResourceReferencesFor(UnknownModelPanel.class);
+ public CssResourceReference getCssResourceReferences() {
+ return PanelUtil.cssResourceReferenceFor(UnknownModelPanel.class);
}
}
http://git-wip-us.apache.org/repos/asf/isis/blob/71df3f63/component/viewer/wicket/ui/src/main/java/org/apache/isis/viewer/wicket/ui/components/widgets/entitylink/EntityLinkSelect2PanelFactory.java
----------------------------------------------------------------------
diff --git a/component/viewer/wicket/ui/src/main/java/org/apache/isis/viewer/wicket/ui/components/widgets/entitylink/EntityLinkSelect2PanelFactory.java b/component/viewer/wicket/ui/src/main/java/org/apache/isis/viewer/wicket/ui/components/widgets/entitylink/EntityLinkSelect2PanelFactory.java
index 7f75eb7..911ca68 100644
--- a/component/viewer/wicket/ui/src/main/java/org/apache/isis/viewer/wicket/ui/components/widgets/entitylink/EntityLinkSelect2PanelFactory.java
+++ b/component/viewer/wicket/ui/src/main/java/org/apache/isis/viewer/wicket/ui/components/widgets/entitylink/EntityLinkSelect2PanelFactory.java
@@ -33,7 +33,7 @@ public class EntityLinkSelect2PanelFactory extends ComponentFactoryAbstract {
private static final long serialVersionUID = 1L;
public EntityLinkSelect2PanelFactory() {
- super(ComponentType.ENTITY_LINK);
+ super(ComponentType.ENTITY_LINK, EntityLinkSelect2Panel.class);
}
@Override
http://git-wip-us.apache.org/repos/asf/isis/blob/71df3f63/component/viewer/wicket/ui/src/main/java/org/apache/isis/viewer/wicket/ui/components/widgets/entitysimplelink/EntityLinkSimplePanelFactory.java
----------------------------------------------------------------------
diff --git a/component/viewer/wicket/ui/src/main/java/org/apache/isis/viewer/wicket/ui/components/widgets/entitysimplelink/EntityLinkSimplePanelFactory.java b/component/viewer/wicket/ui/src/main/java/org/apache/isis/viewer/wicket/ui/components/widgets/entitysimplelink/EntityLinkSimplePanelFactory.java
index 9286148..02afd2a 100644
--- a/component/viewer/wicket/ui/src/main/java/org/apache/isis/viewer/wicket/ui/components/widgets/entitysimplelink/EntityLinkSimplePanelFactory.java
+++ b/component/viewer/wicket/ui/src/main/java/org/apache/isis/viewer/wicket/ui/components/widgets/entitysimplelink/EntityLinkSimplePanelFactory.java
@@ -34,7 +34,7 @@ public class EntityLinkSimplePanelFactory extends ComponentFactoryAbstract {
private static final long serialVersionUID = 1L;
public EntityLinkSimplePanelFactory() {
- super(ComponentType.ENTITY_LINK);
+ super(ComponentType.ENTITY_LINK, EntityLinkSimplePanel.class);
}
@Override
http://git-wip-us.apache.org/repos/asf/isis/blob/71df3f63/component/viewer/wicket/ui/src/main/java/org/apache/isis/viewer/wicket/ui/panels/PanelUtil.java
----------------------------------------------------------------------
diff --git a/component/viewer/wicket/ui/src/main/java/org/apache/isis/viewer/wicket/ui/panels/PanelUtil.java b/component/viewer/wicket/ui/src/main/java/org/apache/isis/viewer/wicket/ui/panels/PanelUtil.java
index 72046ae..3a79669 100644
--- a/component/viewer/wicket/ui/src/main/java/org/apache/isis/viewer/wicket/ui/panels/PanelUtil.java
+++ b/component/viewer/wicket/ui/src/main/java/org/apache/isis/viewer/wicket/ui/panels/PanelUtil.java
@@ -18,10 +18,7 @@
*/
package org.apache.isis.viewer.wicket.ui.panels;
-import java.util.List;
-
import com.google.common.base.Strings;
-import com.google.common.collect.Lists;
import org.apache.wicket.markup.head.CssHeaderItem;
import org.apache.wicket.markup.head.CssReferenceHeaderItem;
@@ -49,7 +46,7 @@ public final class PanelUtil {
response.render(forReference);
}
- private static CssResourceReference cssResourceReferenceFor(final Class<?> cls) {
+ public static CssResourceReference cssResourceReferenceFor(final Class<?> cls) {
final String url = cssFor(cls);
if(url == null) {
return null;
@@ -57,18 +54,10 @@ public final class PanelUtil {
return new CssResourceReference(cls, url);
}
- public static Iterable<CssResourceReference> cssResourceReferencesFor(final Class<?>... classes) {
- final List<CssResourceReference> cssResourceReferences = Lists.newArrayList();
- for (Class<?> cls : classes) {
- final CssResourceReference cssResourceReference = cssResourceReferenceFor(cls);
- if(cssResourceReference != null) {
- cssResourceReferences.add(cssResourceReference);
- }
- }
- return cssResourceReferences;
- }
-
private static String cssFor(final Class<?> cls) {
+ if(cls == null) {
+ return null;
+ }
String simpleName = cls.getSimpleName();
if(Strings.isNullOrEmpty(simpleName)) {
return null; // eg inner classes
http://git-wip-us.apache.org/repos/asf/isis/blob/71df3f63/component/viewer/wicket/ui/src/main/java/org/apache/isis/viewer/wicket/ui/selector/links/LinksSelectorPanelAbstract.css
----------------------------------------------------------------------
diff --git a/component/viewer/wicket/ui/src/main/java/org/apache/isis/viewer/wicket/ui/selector/links/LinksSelectorPanelAbstract.css b/component/viewer/wicket/ui/src/main/java/org/apache/isis/viewer/wicket/ui/selector/links/LinksSelectorPanelAbstract.css
index 6552c8d..49c6b0b 100644
--- a/component/viewer/wicket/ui/src/main/java/org/apache/isis/viewer/wicket/ui/selector/links/LinksSelectorPanelAbstract.css
+++ b/component/viewer/wicket/ui/src/main/java/org/apache/isis/viewer/wicket/ui/selector/links/LinksSelectorPanelAbstract.css
@@ -45,7 +45,7 @@
-webkit-border-radius:0px 4px 4px 0px;
}
-a span.ViewLinkItem {
+.linksSelectorPanel a span.ViewLinkItem {
color:#46423C;
background-color:#F0EFEA;
float:left;
@@ -54,7 +54,7 @@ a span.ViewLinkItem {
line-height:30px;
}
-span.ViewLinkItem {
+.linksSelectorPanel span.ViewLinkItem {
color:#FFFFFF;
background-color:#20B5C2;
float:left;
@@ -66,31 +66,31 @@ span.ViewLinkItem {
text-indent:-999em;
}
-span.ViewLinkItem.hide {
+.linksSelectorPanel span.ViewLinkItem.hide {
background-image:url('images/icon_hide_on.png');
background-position: center center;
background-repeat:no-repeat;
}
-span.ViewLinkItem.table {
+.linksSelectorPanel span.ViewLinkItem.table {
background-image:url('images/icon_table_on.png');
background-position: center center;
background-repeat:no-repeat;
}
-a span.ViewLinkItem.hide {
+.linksSelectorPanel a span.ViewLinkItem.hide {
background-image:url('images/icon_hide_off.png');
background-position: center center;
background-repeat:no-repeat;
}
-a span.ViewLinkItem.table {
+.linksSelectorPanel a span.ViewLinkItem.table {
background-image:url('images/icon_table_off.png');
background-position: center center;
background-repeat:no-repeat;
}
-.ViewLinkItem {
+.linksSelectorPanel .ViewLinkItem {
padding:0px 10px;
font-weight:bold;
text-transform:uppercase;
http://git-wip-us.apache.org/repos/asf/isis/blob/71df3f63/component/viewer/wicket/ui/src/main/java/org/apache/isis/viewer/wicket/ui/selector/links/LinksSelectorPanelAbstract.java
----------------------------------------------------------------------
diff --git a/component/viewer/wicket/ui/src/main/java/org/apache/isis/viewer/wicket/ui/selector/links/LinksSelectorPanelAbstract.java b/component/viewer/wicket/ui/src/main/java/org/apache/isis/viewer/wicket/ui/selector/links/LinksSelectorPanelAbstract.java
index bf6195a..62065a6 100644
--- a/component/viewer/wicket/ui/src/main/java/org/apache/isis/viewer/wicket/ui/selector/links/LinksSelectorPanelAbstract.java
+++ b/component/viewer/wicket/ui/src/main/java/org/apache/isis/viewer/wicket/ui/selector/links/LinksSelectorPanelAbstract.java
@@ -32,6 +32,7 @@ import org.apache.wicket.MarkupContainer;
import org.apache.wicket.ajax.AjaxRequestTarget;
import org.apache.wicket.ajax.markup.html.AjaxLink;
import org.apache.wicket.behavior.AttributeAppender;
+import org.apache.wicket.markup.head.IHeaderResponse;
import org.apache.wicket.markup.html.WebMarkupContainer;
import org.apache.wicket.markup.html.basic.Label;
import org.apache.wicket.markup.html.link.AbstractLink;
@@ -48,6 +49,7 @@ import org.apache.isis.viewer.wicket.ui.ComponentType;
import org.apache.isis.viewer.wicket.ui.components.additionallinks.AdditionalLinksPanel;
import org.apache.isis.viewer.wicket.ui.components.collectioncontents.unresolved.CollectionContentsAsUnresolvedPanelFactory;
import org.apache.isis.viewer.wicket.ui.panels.PanelAbstract;
+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;
@@ -270,4 +272,10 @@ public abstract class LinksSelectorPanelAbstract<T extends IModel<?>> extends Pa
return otherFactories;
}
+ @Override
+ public void renderHead(final IHeaderResponse response) {
+ super.renderHead(response);
+ PanelUtil.renderHead(response, LinksSelectorPanelAbstract.class);
+ }
+
}
http://git-wip-us.apache.org/repos/asf/isis/blob/71df3f63/component/viewer/wicket/ui/src/test/java/org/apache/isis/viewer/wicket/ui/ComponentFactoryAbstractTest_init.java
----------------------------------------------------------------------
diff --git a/component/viewer/wicket/ui/src/test/java/org/apache/isis/viewer/wicket/ui/ComponentFactoryAbstractTest_init.java b/component/viewer/wicket/ui/src/test/java/org/apache/isis/viewer/wicket/ui/ComponentFactoryAbstractTest_init.java
new file mode 100644
index 0000000..a47fb1b
--- /dev/null
+++ b/component/viewer/wicket/ui/src/test/java/org/apache/isis/viewer/wicket/ui/ComponentFactoryAbstractTest_init.java
@@ -0,0 +1,109 @@
+/**
+ * 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;
+
+import org.apache.wicket.Component;
+import org.apache.wicket.model.IModel;
+import org.junit.Rule;
+import org.junit.Test;
+import org.junit.rules.ExpectedException;
+
+public class ComponentFactoryAbstractTest_init {
+
+ @Rule
+ public ExpectedException thrown= ExpectedException.none();
+
+ @Test
+ public void canInstantiateComponentFactoryWithNoComponentClass() {
+ class ComponentFactoryWithNoComponentClass extends ComponentFactoryAbstract {
+
+ private static final long serialVersionUID = 1L;
+
+ public ComponentFactoryWithNoComponentClass() {
+ super(null);
+ }
+
+ @Override
+ protected ApplicationAdvice appliesTo(IModel<?> model) {
+ return null;
+ }
+
+ @Override
+ public Component createComponent(String id, IModel<?> model) {
+ return null;
+ }
+
+ }
+
+ new ComponentFactoryWithNoComponentClass();
+ }
+
+ @Test
+ public void canInstantiateComponentFactoryWithComponentClass() {
+ class ComponentClass {};
+ class ComponentFactoryWithComponentClass extends ComponentFactoryAbstract {
+
+ private static final long serialVersionUID = 1L;
+
+ public ComponentFactoryWithComponentClass() {
+ super(null, ComponentClass.class);
+ }
+
+ @Override
+ protected ApplicationAdvice appliesTo(IModel<?> model) {
+ return null;
+ }
+
+ @Override
+ public Component createComponent(String id, IModel<?> model) {
+ return null;
+ }
+
+ }
+
+ new ComponentFactoryWithComponentClass();
+ }
+
+ @Test
+ public void cannotInstantiateComponentFactoryWithIncorrectComponentClass() {
+ thrown.expect(IllegalArgumentException.class);
+
+ class ComponentFactoryWithIncorrectComponentClass extends ComponentFactoryAbstract {
+
+ private static final long serialVersionUID = 1L;
+
+ public ComponentFactoryWithIncorrectComponentClass() {
+ super(null, ComponentFactoryWithIncorrectComponentClass.class);
+ }
+
+ @Override
+ protected ApplicationAdvice appliesTo(IModel<?> model) {
+ return null;
+ }
+
+ @Override
+ public Component createComponent(String id, IModel<?> model) {
+ return null;
+ }
+
+ }
+
+ new ComponentFactoryWithIncorrectComponentClass();
+ }
+
+
+}