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/07/16 12:57:04 UTC
git commit: ISIS-457 - New annotation @CssClass for class member,
should render in the HTML markup for that member.
Updated Branches:
refs/heads/master 789022471 -> 94ccda3a3
ISIS-457 - New annotation @CssClass for class member, should render in the HTML markup for that member.
Signed-off-by: Dan Haywood <da...@apache.org>
Project: http://git-wip-us.apache.org/repos/asf/isis/repo
Commit: http://git-wip-us.apache.org/repos/asf/isis/commit/94ccda3a
Tree: http://git-wip-us.apache.org/repos/asf/isis/tree/94ccda3a
Diff: http://git-wip-us.apache.org/repos/asf/isis/diff/94ccda3a
Branch: refs/heads/master
Commit: 94ccda3a3f43665e42abb34368a513ff9dccb06f
Parents: 7890224
Author: bibryam <bi...@gmail.com>
Authored: Tue Jul 16 10:23:44 2013 +0100
Committer: Dan Haywood <da...@apache.org>
Committed: Tue Jul 16 11:53:39 2013 +0100
----------------------------------------------------------------------
.../isis/viewer/wicket/model/links/LinkAndLabel.java | 11 ++++++++---
.../components/additionallinks/AdditionalLinksPanel.java | 8 +++++---
.../appactions/cssmenu/AppActionsCssMenuLinkFactory.java | 5 +++--
.../ajaxtable/BulkActionsLinkFactory.java | 3 ++-
.../ui/components/entity/EntityActionLinkFactory.java | 4 ++--
.../ui/components/scalars/ScalarPanelAbstract.java | 1 -
.../ui/components/widgets/cssmenu/CssMenuItem.java | 8 ++++++--
7 files changed, 26 insertions(+), 14 deletions(-)
----------------------------------------------------------------------
http://git-wip-us.apache.org/repos/asf/isis/blob/94ccda3a/component/viewer/wicket/model/src/main/java/org/apache/isis/viewer/wicket/model/links/LinkAndLabel.java
----------------------------------------------------------------------
diff --git a/component/viewer/wicket/model/src/main/java/org/apache/isis/viewer/wicket/model/links/LinkAndLabel.java b/component/viewer/wicket/model/src/main/java/org/apache/isis/viewer/wicket/model/links/LinkAndLabel.java
index 0b779a5..ae0d73f 100644
--- a/component/viewer/wicket/model/src/main/java/org/apache/isis/viewer/wicket/model/links/LinkAndLabel.java
+++ b/component/viewer/wicket/model/src/main/java/org/apache/isis/viewer/wicket/model/links/LinkAndLabel.java
@@ -32,14 +32,16 @@ public class LinkAndLabel implements Serializable {
private final boolean blobOrClob;
private final boolean prototype;
private final String actionIdentifier;
+ private final String cssClass;
- public LinkAndLabel(final AbstractLink link, final String label, String disabledReasonIfAny, final boolean blobOrClob, final boolean prototype, final String actionIdentifier) {
+ public LinkAndLabel(final AbstractLink link, final String label, String disabledReasonIfAny, final boolean blobOrClob, final boolean prototype, String identifier, final String cssClass) {
this.link = link;
this.label = label;
this.disabledReasonIfAny = disabledReasonIfAny;
this.blobOrClob = blobOrClob;
this.prototype = prototype;
- this.actionIdentifier = actionIdentifier;
+ this.actionIdentifier = identifier;
+ this.cssClass = cssClass;
}
public AbstractLink getLink() {
@@ -65,5 +67,8 @@ public class LinkAndLabel implements Serializable {
public String getActionIdentifier() {
return actionIdentifier;
}
-
+
+ public String getCssClass() {
+ return cssClass;
+ }
}
\ No newline at end of file
http://git-wip-us.apache.org/repos/asf/isis/blob/94ccda3a/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 68d40b2..f726d9c 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
@@ -21,14 +21,12 @@ package org.apache.isis.viewer.wicket.ui.components.additionallinks;
import java.util.List;
-import org.apache.wicket.AttributeModifier;
import org.apache.wicket.behavior.AttributeAppender;
import org.apache.wicket.markup.html.WebMarkupContainer;
import org.apache.wicket.markup.html.basic.Label;
import org.apache.wicket.markup.html.link.AbstractLink;
import org.apache.wicket.markup.html.list.ListItem;
import org.apache.wicket.markup.html.list.ListView;
-import org.apache.wicket.model.Model;
import org.apache.isis.core.commons.lang.StringUtils;
import org.apache.isis.viewer.wicket.model.links.LinkAndLabel;
@@ -70,7 +68,7 @@ public class AdditionalLinksPanel extends PanelAbstract<ListOfLinksModel> {
final LinkAndLabel linkAndLabel = item.getModelObject();
final AbstractLink link = linkAndLabel.getLink();
-
+
Label viewTitleLabel = new Label(ID_ADDITIONAL_LINK_TITLE, linkAndLabel.getLabel());
String disabledReasonIfAny = linkAndLabel.getDisabledReasonIfAny();
if(disabledReasonIfAny != null) {
@@ -83,6 +81,10 @@ public class AdditionalLinksPanel extends PanelAbstract<ListOfLinksModel> {
link.add(new CssClassAppender("prototype"));
}
link.add(new CssClassAppender(linkAndLabel.getActionIdentifier()));
+ String cssClass = linkAndLabel.getCssClass();
+ if(cssClass != null) {
+ item.add(new CssClassAppender(cssClass));
+ }
viewTitleLabel.add(new CssClassAppender(StringUtils.toLowerDashed(linkAndLabel.getLabel())));
link.addOrReplace(viewTitleLabel);
item.addOrReplace(link);
http://git-wip-us.apache.org/repos/asf/isis/blob/94ccda3a/component/viewer/wicket/ui/src/main/java/org/apache/isis/viewer/wicket/ui/components/appactions/cssmenu/AppActionsCssMenuLinkFactory.java
----------------------------------------------------------------------
diff --git a/component/viewer/wicket/ui/src/main/java/org/apache/isis/viewer/wicket/ui/components/appactions/cssmenu/AppActionsCssMenuLinkFactory.java b/component/viewer/wicket/ui/src/main/java/org/apache/isis/viewer/wicket/ui/components/appactions/cssmenu/AppActionsCssMenuLinkFactory.java
index 214349c..fdcf44e 100644
--- a/component/viewer/wicket/ui/src/main/java/org/apache/isis/viewer/wicket/ui/components/appactions/cssmenu/AppActionsCssMenuLinkFactory.java
+++ b/component/viewer/wicket/ui/src/main/java/org/apache/isis/viewer/wicket/ui/components/appactions/cssmenu/AppActionsCssMenuLinkFactory.java
@@ -53,8 +53,9 @@ class AppActionsCssMenuLinkFactory implements CssMenuLinkFactory {
final boolean blobOrClob = CssMenuItem.returnsBlobOrClob(action);
final boolean prototype = CssMenuItem.isExplorationOrPrototype(action);
final String actionIdentifier = CssMenuItem.actionIdentifierFor(action);
-
- return new LinkAndLabel(link, actionLabel, null, blobOrClob, prototype, actionIdentifier);
+ final String cssClass = CssMenuItem.cssClassFor(action);
+
+ return new LinkAndLabel(link, actionLabel, null, blobOrClob, prototype, actionIdentifier, cssClass);
}
http://git-wip-us.apache.org/repos/asf/isis/blob/94ccda3a/component/viewer/wicket/ui/src/main/java/org/apache/isis/viewer/wicket/ui/components/collectioncontents/ajaxtable/BulkActionsLinkFactory.java
----------------------------------------------------------------------
diff --git a/component/viewer/wicket/ui/src/main/java/org/apache/isis/viewer/wicket/ui/components/collectioncontents/ajaxtable/BulkActionsLinkFactory.java b/component/viewer/wicket/ui/src/main/java/org/apache/isis/viewer/wicket/ui/components/collectioncontents/ajaxtable/BulkActionsLinkFactory.java
index fac0a17..b1e3757 100644
--- a/component/viewer/wicket/ui/src/main/java/org/apache/isis/viewer/wicket/ui/components/collectioncontents/ajaxtable/BulkActionsLinkFactory.java
+++ b/component/viewer/wicket/ui/src/main/java/org/apache/isis/viewer/wicket/ui/components/collectioncontents/ajaxtable/BulkActionsLinkFactory.java
@@ -103,7 +103,8 @@ final class BulkActionsLinkFactory implements CssMenuLinkFactory {
link.add(new JGrowlBehaviour());
final boolean explorationOrPrototype = CssMenuItem.isExplorationOrPrototype(objectAction);
final String actionIdentifier = CssMenuItem.actionIdentifierFor(objectAction);
+ final String cssClass = CssMenuItem.cssClassFor(objectAction);
- return new LinkAndLabel(link, objectAction.getName(), null, false, explorationOrPrototype, actionIdentifier);
+ return new LinkAndLabel(link, objectAction.getName(), null, false, explorationOrPrototype, actionIdentifier, cssClass);
}
}
\ No newline at end of file
http://git-wip-us.apache.org/repos/asf/isis/blob/94ccda3a/component/viewer/wicket/ui/src/main/java/org/apache/isis/viewer/wicket/ui/components/entity/EntityActionLinkFactory.java
----------------------------------------------------------------------
diff --git a/component/viewer/wicket/ui/src/main/java/org/apache/isis/viewer/wicket/ui/components/entity/EntityActionLinkFactory.java b/component/viewer/wicket/ui/src/main/java/org/apache/isis/viewer/wicket/ui/components/entity/EntityActionLinkFactory.java
index d042e93..550206c 100644
--- a/component/viewer/wicket/ui/src/main/java/org/apache/isis/viewer/wicket/ui/components/entity/EntityActionLinkFactory.java
+++ b/component/viewer/wicket/ui/src/main/java/org/apache/isis/viewer/wicket/ui/components/entity/EntityActionLinkFactory.java
@@ -85,8 +85,8 @@ public final class EntityActionLinkFactory implements CssMenuLinkFactory {
final boolean blobOrClob = CssMenuItem.returnsBlobOrClob(action);
final boolean prototype = CssMenuItem.isExplorationOrPrototype(action);
final String actionIdentifier = CssMenuItem.actionIdentifierFor(action);
-
- return new LinkAndLabel(link, label, disabledReasonIfAny, blobOrClob, prototype, actionIdentifier);
+ final String cssClass = CssMenuItem.cssClassFor(action);
+ return new LinkAndLabel(link, label, disabledReasonIfAny, blobOrClob, prototype, actionIdentifier, cssClass);
}
private AbstractLink createLink(final ObjectAdapterMemento adapterMemento, final ObjectAction action, final String linkId, final ObjectAdapter adapter) {
http://git-wip-us.apache.org/repos/asf/isis/blob/94ccda3a/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 b3cf481..71fc5fc 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
@@ -42,7 +42,6 @@ import org.apache.isis.viewer.wicket.model.models.EntityModel.RenderingHint;
import org.apache.isis.viewer.wicket.model.models.ScalarModel;
import org.apache.isis.viewer.wicket.ui.components.additionallinks.AdditionalLinksPanel;
import org.apache.isis.viewer.wicket.ui.components.additionallinks.EntityActionUtil;
-import org.apache.isis.viewer.wicket.ui.components.scalars.ScalarPanelAbstract.Rendering;
import org.apache.isis.viewer.wicket.ui.components.scalars.TextFieldValueModel.ScalarModelProvider;
import org.apache.isis.viewer.wicket.ui.panels.PanelAbstract;
import org.apache.isis.viewer.wicket.ui.util.Components;
http://git-wip-us.apache.org/repos/asf/isis/blob/94ccda3a/component/viewer/wicket/ui/src/main/java/org/apache/isis/viewer/wicket/ui/components/widgets/cssmenu/CssMenuItem.java
----------------------------------------------------------------------
diff --git a/component/viewer/wicket/ui/src/main/java/org/apache/isis/viewer/wicket/ui/components/widgets/cssmenu/CssMenuItem.java b/component/viewer/wicket/ui/src/main/java/org/apache/isis/viewer/wicket/ui/components/widgets/cssmenu/CssMenuItem.java
index af86678..5dfeb3b 100644
--- a/component/viewer/wicket/ui/src/main/java/org/apache/isis/viewer/wicket/ui/components/widgets/cssmenu/CssMenuItem.java
+++ b/component/viewer/wicket/ui/src/main/java/org/apache/isis/viewer/wicket/ui/components/widgets/cssmenu/CssMenuItem.java
@@ -314,7 +314,11 @@ public class CssMenuItem implements Serializable {
return className + "-" + actionId;
}
-
+ public static String cssClassFor(ObjectAction action) {
+ CssClassFacet cssClassFacet = action.getFacet(CssClassFacet.class);
+ return cssClassFacet != null ? cssClassFacet.value() : null;
+ }
+
/**
* Creates a {@link Builder} for a submenu item where the provided {@link CssMenuLinkFactory} is able to provide the target adapter.
*/
@@ -361,7 +365,7 @@ public class CssMenuItem implements Serializable {
link.add(new CssClassAppender("prototype"));
}
if(this.cssClass != null) {
- link.add(new CssClassAppender(this.cssClass));
+ markupContainer.add(new CssClassAppender(this.cssClass));
}
link.add(new CssClassAppender(this.actionIdentifier));