This is an automated email from the ASF dual-hosted git repository.

doebele pushed a commit to branch master
in repository https://gitbox.apache.org/repos/asf/empire-db.git


The following commit(s) were added to refs/heads/master by this push:
     new 11ee156c EMPIREDB-431 MenuListTag style class defaults added.
11ee156c is described below

commit 11ee156c7c55d71ff741d8640fbeee759611eb39
Author: Rainer Döbele <[email protected]>
AuthorDate: Mon Oct 7 18:32:21 2024 +0200

    EMPIREDB-431
    MenuListTag style class defaults added.
---
 .../empire/jakarta/components/MenuItemTag.java     |   3 +-
 .../empire/jakarta/components/MenuListTag.java     | 106 ++++++++++++---------
 .../apache/empire/jsf2/components/MenuListTag.java |  94 ++++++++++--------
 3 files changed, 114 insertions(+), 89 deletions(-)

diff --git 
a/empire-db-jakarta-faces/src/main/java/org/apache/empire/jakarta/components/MenuItemTag.java
 
b/empire-db-jakarta-faces/src/main/java/org/apache/empire/jakarta/components/MenuItemTag.java
index 9c1b8d23..a746c83f 100644
--- 
a/empire-db-jakarta-faces/src/main/java/org/apache/empire/jakarta/components/MenuItemTag.java
+++ 
b/empire-db-jakarta-faces/src/main/java/org/apache/empire/jakarta/components/MenuItemTag.java
@@ -190,7 +190,8 @@ public class MenuItemTag extends LinkTag
     @Override
     protected String getLinkStyleClass()
     {
-        return null;
+        Object linkStyle = getAttributes().get("linkStyle");
+        return (linkStyle!=null ? linkStyle.toString() : null);
     }
     
     protected MenuListTag findParentMenu()
diff --git 
a/empire-db-jakarta-faces/src/main/java/org/apache/empire/jakarta/components/MenuListTag.java
 
b/empire-db-jakarta-faces/src/main/java/org/apache/empire/jakarta/components/MenuListTag.java
index 3238045f..d111fc0b 100644
--- 
a/empire-db-jakarta-faces/src/main/java/org/apache/empire/jakarta/components/MenuListTag.java
+++ 
b/empire-db-jakarta-faces/src/main/java/org/apache/empire/jakarta/components/MenuListTag.java
@@ -20,18 +20,18 @@ package org.apache.empire.jakarta.components;
 
 import java.io.IOException;
 
-import jakarta.faces.component.UIComponent;
-import jakarta.faces.component.UINamingContainer;
-import jakarta.faces.component.UIOutput;
-import jakarta.faces.context.FacesContext;
-import jakarta.faces.context.ResponseWriter;
-
 import org.apache.empire.commons.StringUtils;
 import org.apache.empire.jakarta.controls.InputControl;
 import org.apache.empire.jakarta.utils.TagEncodingHelper;
 import org.apache.empire.jakarta.utils.TagEncodingHelperFactory;
 import org.apache.empire.jakarta.utils.TagStyleClass;
 
+import jakarta.faces.component.UIComponent;
+import jakarta.faces.component.UINamingContainer;
+import jakarta.faces.component.UIOutput;
+import jakarta.faces.context.FacesContext;
+import jakarta.faces.context.ResponseWriter;
+
 public class MenuListTag extends UIOutput // implements NamingContainer
 {
     // Logger
@@ -39,7 +39,7 @@ public class MenuListTag extends UIOutput // implements 
NamingContainer
     
     protected final TagEncodingHelper helper = 
TagEncodingHelperFactory.create(this, TagStyleClass.MENU.get());
     
-    private enum Properties
+    private enum MenuProperty
     {
         currentId,
         currentClass,
@@ -86,7 +86,7 @@ public class MenuListTag extends UIOutput // implements 
NamingContainer
         helper.writeComponentId(writer);
         
         // Style class and style
-        helper.writeAttribute(writer, "class", getStyleClass());
+        helper.writeAttribute(writer, "class", getMenuStyleClass());
         helper.writeAttribute(writer, "style", 
helper.getTagAttributeString("style"));
     }
 
@@ -117,78 +117,90 @@ public class MenuListTag extends UIOutput // implements 
NamingContainer
     
     protected void initMenuAttributes(FacesContext context)
     {        
-        currentId        = 
helper.getTagAttributeString(Properties.currentId.name()); 
-        currentClass     = 
helper.getTagAttributeString(Properties.currentClass.name()); 
-        disabledClass    = 
helper.getTagAttributeString(Properties.disabledClass.name()); 
-        parentClass      = 
helper.getTagAttributeString(Properties.parentClass.name());
-        expandedClass    = 
helper.getTagAttributeString(Properties.expandedClass.name());
-        itemWrapTag      = 
helper.getTagAttributeString(Properties.itemWrapTag.name());
-        defaultItemClass = 
helper.getTagAttributeString(Properties.defaultItemClass.name());
+        currentId        = 
helper.getTagAttributeString(MenuProperty.currentId.name()); 
+        currentClass     = 
helper.getTagAttributeString(MenuProperty.currentClass.name()); 
+        parentClass      = 
helper.getTagAttributeString(MenuProperty.parentClass.name());
+        disabledClass    = 
helper.getTagAttributeString(MenuProperty.disabledClass.name()); 
+        expandedClass    = 
helper.getTagAttributeString(MenuProperty.expandedClass.name());
+        itemWrapTag      = 
helper.getTagAttributeString(MenuProperty.itemWrapTag.name());
+        defaultItemClass = 
helper.getTagAttributeString(MenuProperty.defaultItemClass.name());
 
         // find parent
         if (parentMenu==null)
             parentMenu = findParentMenu();
         if (parentMenu==null)
-            return;
-        
-        if (currentId==null)
-            currentId = parentMenu.getCurrentId();
-        if (currentClass==null)
-            currentClass = parentMenu.getCurrentClass();  
-        if (disabledClass==null)
-            disabledClass = parentMenu.getDisabledClass();
-        if (parentClass==null)
-            parentClass = parentMenu.getParentClass();
-        if (expandedClass==null)
-            expandedClass = parentMenu.getExpandedClass();
-        if (itemWrapTag==null)
-            itemWrapTag = parentMenu.getItemWrapTag();
-        if (defaultItemClass==null)
-            defaultItemClass = parentMenu.defaultItemClass;
-        
-        // Copy parent Info
-        level = parentMenu.level + 1;
+        {   // the root menu
+            if (currentClass==null)
+                currentClass = "current";  
+            if (parentClass==null)
+                parentClass = "parent";
+            if (disabledClass==null)
+                disabledClass = "parent";
+            if (expandedClass==null)
+                expandedClass = "expanded";
+            // level
+            level = 0;
+        }
+        else
+        {   // copy from parent
+            if (currentId==null)
+                currentId = parentMenu.getCurrentId();
+            if (currentClass==null)
+                currentClass = parentMenu.getCurrentClass();  
+            if (parentClass==null)
+                parentClass = parentMenu.getParentClass();
+            if (disabledClass==null)
+                disabledClass = parentMenu.getDisabledClass();
+            if (expandedClass==null)
+                expandedClass = parentMenu.getExpandedClass();
+            if (itemWrapTag==null)
+                itemWrapTag = parentMenu.getItemWrapTag();
+            if (defaultItemClass==null)
+                defaultItemClass = parentMenu.defaultItemClass;
+            // increase level
+            level = parentMenu.level + 1;
+        }
     }
     
     public String getCurrentId()
     {
         if (currentId==null)
-            currentId= 
StringUtils.toString(getStateHelper().get(Properties.currentId));
+            currentId= 
StringUtils.toString(getStateHelper().get(MenuProperty.currentId));
         return currentId;
     }
 
     public String getCurrentClass()
     {
         if (currentClass==null)
-            currentClass= 
StringUtils.toString(getStateHelper().get(Properties.currentClass));
+            currentClass= 
StringUtils.toString(getStateHelper().get(MenuProperty.currentClass));
         return currentClass;
     }
 
     public String getDisabledClass()
     {
         if (disabledClass==null)
-            disabledClass= 
StringUtils.toString(getStateHelper().get(Properties.disabledClass));
+            disabledClass= 
StringUtils.toString(getStateHelper().get(MenuProperty.disabledClass));
         return disabledClass;
     }
 
     public String getParentClass()
     {
         if (parentClass==null)
-            parentClass= 
StringUtils.toString(getStateHelper().get(Properties.parentClass));
+            parentClass= 
StringUtils.toString(getStateHelper().get(MenuProperty.parentClass));
         return parentClass;
     }
 
     public String getExpandedClass()
     {
         if (expandedClass==null)
-            expandedClass= 
StringUtils.toString(getStateHelper().get(Properties.expandedClass));
+            expandedClass= 
StringUtils.toString(getStateHelper().get(MenuProperty.expandedClass));
         return expandedClass;
     }
 
     public String getItemWrapTag()
     {
         if (itemWrapTag==null)
-            itemWrapTag= 
StringUtils.toString(getStateHelper().get(Properties.itemWrapTag));
+            itemWrapTag= 
StringUtils.toString(getStateHelper().get(MenuProperty.itemWrapTag));
         return itemWrapTag;
     }
     
@@ -197,7 +209,7 @@ public class MenuListTag extends UIOutput // implements 
NamingContainer
         return level;
     }
     
-    protected String getStyleClass()
+    public String getMenuStyleClass()
     {
         String styleClass = 
helper.getTagAttributeString(InputControl.CSS_STYLE_CLASS);
         if (styleClass!=null && styleClass.indexOf("{}")>0)
@@ -237,42 +249,42 @@ public class MenuListTag extends UIOutput // implements 
NamingContainer
     {
         this.currentId = currentId;
         // save
-        getStateHelper().put(Properties.currentId, currentId);
+        getStateHelper().put(MenuProperty.currentId, currentId);
     }
 
     public void setCurrentClass(String currentClass)
     {
         this.currentClass = currentClass;
         // save
-        getStateHelper().put(Properties.currentClass, currentClass);
+        getStateHelper().put(MenuProperty.currentClass, currentClass);
     }
 
     public void setDisabledClass(String disabledClass)
     {
         this.disabledClass = disabledClass;
         // save
-        getStateHelper().put(Properties.disabledClass, disabledClass);
+        getStateHelper().put(MenuProperty.disabledClass, disabledClass);
     }
 
     public void setParentClass(String parentClass)
     {
         this.parentClass = parentClass;
         // save
-        getStateHelper().put(Properties.parentClass, parentClass);
+        getStateHelper().put(MenuProperty.parentClass, parentClass);
     }
 
     public void setExpandedClass(String expandedClass)
     {
         this.expandedClass = expandedClass;
         // save
-        getStateHelper().put(Properties.expandedClass, expandedClass);
+        getStateHelper().put(MenuProperty.expandedClass, expandedClass);
     }
 
     public void setItemWrapTag(String itemWrapTag)
     {
         this.itemWrapTag = itemWrapTag;
         // save
-        getStateHelper().put(Properties.itemWrapTag, itemWrapTag);
+        getStateHelper().put(MenuProperty.itemWrapTag, itemWrapTag);
     }
 
     /*
diff --git 
a/empire-db-jsf2/src/main/java/org/apache/empire/jsf2/components/MenuListTag.java
 
b/empire-db-jsf2/src/main/java/org/apache/empire/jsf2/components/MenuListTag.java
index 3929024e..04d08c63 100644
--- 
a/empire-db-jsf2/src/main/java/org/apache/empire/jsf2/components/MenuListTag.java
+++ 
b/empire-db-jsf2/src/main/java/org/apache/empire/jsf2/components/MenuListTag.java
@@ -39,7 +39,7 @@ public class MenuListTag extends UIOutput // implements 
NamingContainer
     
     protected final TagEncodingHelper helper = 
TagEncodingHelperFactory.create(this, TagStyleClass.MENU.get());
     
-    private enum Properties
+    private enum MenuProperty
     {
         currentId,
         currentClass,
@@ -86,7 +86,7 @@ public class MenuListTag extends UIOutput // implements 
NamingContainer
         helper.writeComponentId(writer);
         
         // Style class and style
-        helper.writeAttribute(writer, "class", getStyleClass());
+        helper.writeAttribute(writer, "class", getMenuStyleClass());
         helper.writeAttribute(writer, "style", 
helper.getTagAttributeString("style"));
     }
 
@@ -117,78 +117,90 @@ public class MenuListTag extends UIOutput // implements 
NamingContainer
     
     protected void initMenuAttributes(FacesContext context)
     {        
-        currentId        = 
helper.getTagAttributeString(Properties.currentId.name()); 
-        currentClass     = 
helper.getTagAttributeString(Properties.currentClass.name()); 
-        disabledClass    = 
helper.getTagAttributeString(Properties.disabledClass.name()); 
-        parentClass      = 
helper.getTagAttributeString(Properties.parentClass.name());
-        expandedClass    = 
helper.getTagAttributeString(Properties.expandedClass.name());
-        itemWrapTag      = 
helper.getTagAttributeString(Properties.itemWrapTag.name());
-        defaultItemClass = 
helper.getTagAttributeString(Properties.defaultItemClass.name());
+        currentId        = 
helper.getTagAttributeString(MenuProperty.currentId.name()); 
+        currentClass     = 
helper.getTagAttributeString(MenuProperty.currentClass.name()); 
+        parentClass      = 
helper.getTagAttributeString(MenuProperty.parentClass.name());
+        disabledClass    = 
helper.getTagAttributeString(MenuProperty.disabledClass.name()); 
+        expandedClass    = 
helper.getTagAttributeString(MenuProperty.expandedClass.name());
+        itemWrapTag      = 
helper.getTagAttributeString(MenuProperty.itemWrapTag.name());
+        defaultItemClass = 
helper.getTagAttributeString(MenuProperty.defaultItemClass.name());
 
         // find parent
         if (parentMenu==null)
             parentMenu = findParentMenu();
         if (parentMenu==null)
-            return;
-        
-        if (currentId==null)
-            currentId = parentMenu.getCurrentId();
-        if (currentClass==null)
-            currentClass = parentMenu.getCurrentClass();  
-        if (disabledClass==null)
-            disabledClass = parentMenu.getDisabledClass();
-        if (parentClass==null)
-            parentClass = parentMenu.getParentClass();
-        if (expandedClass==null)
-            expandedClass = parentMenu.getExpandedClass();
-        if (itemWrapTag==null)
-            itemWrapTag = parentMenu.getItemWrapTag();
-        if (defaultItemClass==null)
-            defaultItemClass = parentMenu.defaultItemClass;
-        
-        // Copy parent Info
-        level = parentMenu.level + 1;
+        {   // the root menu
+            if (currentClass==null)
+                currentClass = "current";  
+            if (parentClass==null)
+                parentClass = "parent";
+            if (disabledClass==null)
+                disabledClass = "parent";
+            if (expandedClass==null)
+                expandedClass = "expanded";
+            // level
+            level = 0;
+        }
+        else
+        {   // copy from parent
+            if (currentId==null)
+                currentId = parentMenu.getCurrentId();
+            if (currentClass==null)
+                currentClass = parentMenu.getCurrentClass();  
+            if (parentClass==null)
+                parentClass = parentMenu.getParentClass();
+            if (disabledClass==null)
+                disabledClass = parentMenu.getDisabledClass();
+            if (expandedClass==null)
+                expandedClass = parentMenu.getExpandedClass();
+            if (itemWrapTag==null)
+                itemWrapTag = parentMenu.getItemWrapTag();
+            if (defaultItemClass==null)
+                defaultItemClass = parentMenu.defaultItemClass;
+            // increase level
+            level = parentMenu.level + 1;
+        }
     }
     
     public String getCurrentId()
     {
         if (currentId==null)
-            currentId= 
StringUtils.toString(getStateHelper().get(Properties.currentId));
+            currentId= 
StringUtils.toString(getStateHelper().get(MenuProperty.currentId));
         return currentId;
     }
 
     public String getCurrentClass()
     {
         if (currentClass==null)
-            currentClass= 
StringUtils.toString(getStateHelper().get(Properties.currentClass));
+            currentClass= 
StringUtils.toString(getStateHelper().get(MenuProperty.currentClass));
         return currentClass;
     }
 
     public String getDisabledClass()
     {
         if (disabledClass==null)
-            disabledClass= 
StringUtils.toString(getStateHelper().get(Properties.disabledClass));
+            disabledClass= 
StringUtils.toString(getStateHelper().get(MenuProperty.disabledClass));
         return disabledClass;
     }
 
     public String getParentClass()
     {
         if (parentClass==null)
-            parentClass= 
StringUtils.toString(getStateHelper().get(Properties.parentClass));
+            parentClass= 
StringUtils.toString(getStateHelper().get(MenuProperty.parentClass));
         return parentClass;
     }
 
     public String getExpandedClass()
     {
         if (expandedClass==null)
-            expandedClass= 
StringUtils.toString(getStateHelper().get(Properties.expandedClass));
+            expandedClass= 
StringUtils.toString(getStateHelper().get(MenuProperty.expandedClass));
         return expandedClass;
     }
 
     public String getItemWrapTag()
     {
         if (itemWrapTag==null)
-            itemWrapTag= 
StringUtils.toString(getStateHelper().get(Properties.itemWrapTag));
+            itemWrapTag= 
StringUtils.toString(getStateHelper().get(MenuProperty.itemWrapTag));
         return itemWrapTag;
     }
     
@@ -197,7 +209,7 @@ public class MenuListTag extends UIOutput // implements 
NamingContainer
         return level;
     }
     
-    protected String getStyleClass()
+    public String getMenuStyleClass()
     {
         String styleClass = 
helper.getTagAttributeString(InputControl.CSS_STYLE_CLASS);
         if (styleClass!=null && styleClass.indexOf("{}")>0)
@@ -237,42 +249,42 @@ public class MenuListTag extends UIOutput // implements 
NamingContainer
     {
         this.currentId = currentId;
         // save
-        getStateHelper().put(Properties.currentId, currentId);
+        getStateHelper().put(MenuProperty.currentId, currentId);
     }
 
     public void setCurrentClass(String currentClass)
     {
         this.currentClass = currentClass;
         // save
-        getStateHelper().put(Properties.currentClass, currentClass);
+        getStateHelper().put(MenuProperty.currentClass, currentClass);
     }
 
     public void setDisabledClass(String disabledClass)
     {
         this.disabledClass = disabledClass;
         // save
-        getStateHelper().put(Properties.disabledClass, disabledClass);
+        getStateHelper().put(MenuProperty.disabledClass, disabledClass);
     }
 
     public void setParentClass(String parentClass)
     {
         this.parentClass = parentClass;
         // save
-        getStateHelper().put(Properties.parentClass, parentClass);
+        getStateHelper().put(MenuProperty.parentClass, parentClass);
     }
 
     public void setExpandedClass(String expandedClass)
     {
         this.expandedClass = expandedClass;
         // save
-        getStateHelper().put(Properties.expandedClass, expandedClass);
+        getStateHelper().put(MenuProperty.expandedClass, expandedClass);
     }
 
     public void setItemWrapTag(String itemWrapTag)
     {
         this.itemWrapTag = itemWrapTag;
         // save
-        getStateHelper().put(Properties.itemWrapTag, itemWrapTag);
+        getStateHelper().put(MenuProperty.itemWrapTag, itemWrapTag);
     }
 
     /*

Reply via email to