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/10/24 18:03:23 UTC
[09/15] git commit: ISIS-537 Fix the icons for the application
actions. Use fa-fw as additional icon type to fix the width
ISIS-537 Fix the icons for the application actions. Use fa-fw as additional icon type to fix the width
Project: http://git-wip-us.apache.org/repos/asf/isis/repo
Commit: http://git-wip-us.apache.org/repos/asf/isis/commit/ca0085ee
Tree: http://git-wip-us.apache.org/repos/asf/isis/tree/ca0085ee
Diff: http://git-wip-us.apache.org/repos/asf/isis/diff/ca0085ee
Branch: refs/heads/master
Commit: ca0085ee6a18f987b4dd53fa4a359479a0479923
Parents: 6ab6109
Author: Martin Tzvetanov Grigorov <mg...@apache.org>
Authored: Fri Oct 24 16:18:11 2014 +0300
Committer: Martin Tzvetanov Grigorov <mg...@apache.org>
Committed: Fri Oct 24 16:18:11 2014 +0300
----------------------------------------------------------------------
.../cssmenu/ApplicationActionsPanel.html | 5 ++--
.../cssmenu/ApplicationActionsPanel.java | 9 +++---
.../cssclass/CssClassFaFacetAbstract.java | 29 ++++++++++++--------
3 files changed, 26 insertions(+), 17 deletions(-)
----------------------------------------------------------------------
http://git-wip-us.apache.org/repos/asf/isis/blob/ca0085ee/component/viewer/wicket/ui/src/main/java/org/apache/isis/viewer/wicket/ui/components/widgets/cssmenu/ApplicationActionsPanel.html
----------------------------------------------------------------------
diff --git a/component/viewer/wicket/ui/src/main/java/org/apache/isis/viewer/wicket/ui/components/widgets/cssmenu/ApplicationActionsPanel.html b/component/viewer/wicket/ui/src/main/java/org/apache/isis/viewer/wicket/ui/components/widgets/cssmenu/ApplicationActionsPanel.html
index ba2be98..0a37c74 100644
--- a/component/viewer/wicket/ui/src/main/java/org/apache/isis/viewer/wicket/ui/components/widgets/cssmenu/ApplicationActionsPanel.html
+++ b/component/viewer/wicket/ui/src/main/java/org/apache/isis/viewer/wicket/ui/components/widgets/cssmenu/ApplicationActionsPanel.html
@@ -12,8 +12,9 @@
</li>
<wicket:fragment wicket:id="leafItem">
- <span class="fontAwesomeIcon" wicket:id="menuLinkFontAwesome"/>
- <a class="menuLink" wicket:id="menuLink"></a>
+ <a class="menuLink" wicket:id="menuLink">
+ <span class="fontAwesomeIcon" wicket:id="menuLinkFontAwesome"></span> <span wicket:id="menuLinkLabel"></span>
+ </a>
</wicket:fragment>
<wicket:fragment wicket:id="folderItem">
http://git-wip-us.apache.org/repos/asf/isis/blob/ca0085ee/component/viewer/wicket/ui/src/main/java/org/apache/isis/viewer/wicket/ui/components/widgets/cssmenu/ApplicationActionsPanel.java
----------------------------------------------------------------------
diff --git a/component/viewer/wicket/ui/src/main/java/org/apache/isis/viewer/wicket/ui/components/widgets/cssmenu/ApplicationActionsPanel.java b/component/viewer/wicket/ui/src/main/java/org/apache/isis/viewer/wicket/ui/components/widgets/cssmenu/ApplicationActionsPanel.java
index b4338b7..723f31f 100644
--- a/component/viewer/wicket/ui/src/main/java/org/apache/isis/viewer/wicket/ui/components/widgets/cssmenu/ApplicationActionsPanel.java
+++ b/component/viewer/wicket/ui/src/main/java/org/apache/isis/viewer/wicket/ui/components/widgets/cssmenu/ApplicationActionsPanel.java
@@ -15,7 +15,6 @@ import org.apache.wicket.markup.html.list.ListItem;
import org.apache.wicket.markup.html.list.ListView;
import org.apache.wicket.markup.html.panel.Fragment;
import org.apache.wicket.markup.html.panel.Panel;
-import org.apache.wicket.model.Model;
import org.apache.wicket.request.resource.CssResourceReference;
import org.apache.isis.viewer.wicket.ui.util.Components;
import org.apache.isis.viewer.wicket.ui.util.CssClassAppender;
@@ -107,7 +106,9 @@ public class ApplicationActionsPanel extends Panel {
AbstractLink subMenuItemLink = menuItem.getLink();
- subMenuItemLink.setBody(Model.of(menuItem.getName()));
+ Label menuItemLabel = new Label("menuLinkLabel", menuItem.getName());
+ subMenuItemLink.add(menuItemLabel);
+
if (!menuItem.isEnabled()) {
listItem.add(new CssClassNameAppender("disabled"));
}
@@ -119,12 +120,12 @@ public class ApplicationActionsPanel extends Panel {
String cssClassFa = menuItem.getCssClassFa();
if (Strings.isNullOrEmpty(cssClassFa)) {
- Components.permanentlyHide(leafItem, "menuLinkFontAwesome");
+ Components.permanentlyHide(subMenuItemLink, "menuLinkFontAwesome");
subMenuItemLink.add(new CssClassAppender("menuLinkSpacer"));
} else {
Label dummy = new Label("menuLinkFontAwesome", "");
dummy.add(new CssClassAppender(cssClassFa));
- leafItem.add(dummy);
+ subMenuItemLink.add(dummy);
}
}
http://git-wip-us.apache.org/repos/asf/isis/blob/ca0085ee/core/metamodel/src/main/java/org/apache/isis/core/metamodel/facets/members/cssclassfa/cssclass/CssClassFaFacetAbstract.java
----------------------------------------------------------------------
diff --git a/core/metamodel/src/main/java/org/apache/isis/core/metamodel/facets/members/cssclassfa/cssclass/CssClassFaFacetAbstract.java b/core/metamodel/src/main/java/org/apache/isis/core/metamodel/facets/members/cssclassfa/cssclass/CssClassFaFacetAbstract.java
index dae7dfc..8d28563 100644
--- a/core/metamodel/src/main/java/org/apache/isis/core/metamodel/facets/members/cssclassfa/cssclass/CssClassFaFacetAbstract.java
+++ b/core/metamodel/src/main/java/org/apache/isis/core/metamodel/facets/members/cssclassfa/cssclass/CssClassFaFacetAbstract.java
@@ -19,28 +19,35 @@
package org.apache.isis.core.metamodel.facets.members.cssclassfa.cssclass;
+import java.util.Set;
+import java.util.regex.Pattern;
+import com.google.common.base.Joiner;
+import com.google.common.base.Splitter;
+import com.google.common.collect.Sets;
import org.apache.isis.core.metamodel.facetapi.Facet;
import org.apache.isis.core.metamodel.facetapi.FacetHolder;
import org.apache.isis.core.metamodel.facets.SingleStringValueFacetAbstract;
public class CssClassFaFacetAbstract extends SingleStringValueFacetAbstract implements CssClassFaFacet {
+ private static final Pattern WHITESPACE = Pattern.compile("\\s+");
+
public CssClassFaFacetAbstract(final String value, final FacetHolder holder) {
super(type(), holder, sanitize(value));
}
+ /**
+ * Adds the optional <em>fa</em> and <em>fa-fw</em> FontAwesome classes
+ *
+ * @param value The original CSS classes defined with {@literal @}{@link org.apache.isis.applib.annotation.CssClassFa CssClassFa}
+ * @return The original CSS classes plus <em>fa</em> and <em>fa-fw</em> if not already provided
+ */
static String sanitize(String value) {
- return containsFa(value)? value: "fa " + value;
- }
-
- private static boolean containsFa(String value) {
- final String[] split = value.split("\\s");
- for (String s : split) {
- if(s.trim().equals("fa")) {
- return true;
- }
- }
- return false;
+ Iterable<String> classes = Splitter.on(WHITESPACE).split(value);
+ Set<String> cssClassesSet = Sets.newHashSet(classes);
+ cssClassesSet.add("fa");
+ cssClassesSet.add("fa-fw");
+ return Joiner.on(' ').join(cssClassesSet);
}
public static Class<? extends Facet> type() {