From eadc86b88dd8b01741e60aa0cd70e08d811ed71f Mon Sep 17 00:00:00 2001 From: Johannes Geppert Date: Sun, 29 Jul 2012 18:23:06 +0000 Subject: [PATCH] WW-3846 Add a new attributes for optionsCollection git-svn-id: https://svn.apache.org/repos/asf/struts/struts2/trunk@1366884 13f79535-47bb-0310-9956-ffa450edef68 --- .../apache/struts2/showcase/UITagExample.java | 20 ++--- .../src/main/resources/log4j.properties | 2 +- .../src/main/webapp/tags/ui/example.jsp | 1 + .../struts2/components/DoubleListUIBean.java | 35 +++++++-- .../apache/struts2/components/ListUIBean.java | 76 +++++++++++++------ .../struts2/views/jsp/ui/AbstractListTag.java | 18 +++++ .../resources/template/simple/combobox.ftl | 30 ++++++++ .../template/simple/doubleselect.ftl | 30 ++++++++ .../resources/template/simple/radiomap.ftl | 43 +++++++++-- .../main/resources/template/simple/select.ftl | 30 ++++++++ .../src/site/resources/tags/checkboxlist.html | 24 ++++++ .../src/site/resources/tags/doubleselect.html | 48 ++++++++++++ .../resources/tags/inputtransferselect.html | 24 ++++++ .../resources/tags/optiontransferselect.html | 48 ++++++++++++ core/src/site/resources/tags/radio.html | 24 ++++++ core/src/site/resources/tags/select.html | 24 ++++++ .../src/site/resources/tags/updownselect.html | 24 ++++++ 17 files changed, 455 insertions(+), 46 deletions(-) diff --git a/apps/showcase/src/main/java/org/apache/struts2/showcase/UITagExample.java b/apps/showcase/src/main/java/org/apache/struts2/showcase/UITagExample.java index c85b61118..077a7f380 100644 --- a/apps/showcase/src/main/java/org/apache/struts2/showcase/UITagExample.java +++ b/apps/showcase/src/main/java/org/apache/struts2/showcase/UITagExample.java @@ -26,12 +26,7 @@ import com.opensymphony.xwork2.util.ValueStack; import org.apache.struts2.ServletActionContext; import java.io.File; -import java.util.ArrayList; -import java.util.Collections; -import java.util.Date; -import java.util.HashMap; -import java.util.List; -import java.util.Map; +import java.util.*; /** */ @@ -67,9 +62,9 @@ public class UITagExample extends ActionSupport implements Validateable { String thoughts; public UITagExample() { - favouriteLanguages.add(new Language("EnglishKey", "English Language")); - favouriteLanguages.add(new Language("FrenchKey", "French Language")); - favouriteLanguages.add(new Language("SpanishKey", "Spanish Language")); + favouriteLanguages.add(new Language("EnglishKey", "English Language", "color: blue; font-style: italic;")); + favouriteLanguages.add(new Language("FrenchKey", "French Language", "color: grey;")); + favouriteLanguages.add(new Language("SpanishKey", "Spanish Language", "color: red; font-wight: bold;")); VehicalType car = new VehicalType("CarKey", "Car"); VehicalType motorcycle = new VehicalType("MotorcycleKey", "Motorcycle"); @@ -268,10 +263,12 @@ public class UITagExample extends ActionSupport implements Validateable { public static class Language { String description; String key; + String style; - public Language(String key, String description) { + public Language(String key, String description, String style) { this.key = key; this.description = description; + this.style = style; } public String getKey() { @@ -280,6 +277,9 @@ public class UITagExample extends ActionSupport implements Validateable { public String getDescription() { return description; } + public String getStyle() { + return style; + } } diff --git a/apps/showcase/src/main/resources/log4j.properties b/apps/showcase/src/main/resources/log4j.properties index 226f3de08..1af121eb1 100644 --- a/apps/showcase/src/main/resources/log4j.properties +++ b/apps/showcase/src/main/resources/log4j.properties @@ -24,7 +24,7 @@ log4j.logger.noModule=FATAL # OpenSymphony Stuff log4j.logger.com.opensymphony=INFO -log4j.logger.org.apache.struts2=DEBUG +log4j.logger.org.apache.struts2=INFO # Spring Stuff log4j.logger.org.springframework=INFO diff --git a/apps/showcase/src/main/webapp/tags/ui/example.jsp b/apps/showcase/src/main/webapp/tags/ui/example.jsp index 5e395bc86..1ef6f30d7 100644 --- a/apps/showcase/src/main/webapp/tags/ui/example.jsp +++ b/apps/showcase/src/main/webapp/tags/ui/example.jsp @@ -55,6 +55,7 @@ name="favouriteLanguage" listKey="key" listValue="description" + listCssStyle="style" emptyOption="true" headerKey="None" headerValue="None"/> diff --git a/core/src/main/java/org/apache/struts2/components/DoubleListUIBean.java b/core/src/main/java/org/apache/struts2/components/DoubleListUIBean.java index 66338f0cb..f6b4b8dec 100644 --- a/core/src/main/java/org/apache/struts2/components/DoubleListUIBean.java +++ b/core/src/main/java/org/apache/struts2/components/DoubleListUIBean.java @@ -21,14 +21,12 @@ package org.apache.struts2.components; -import java.util.Map; +import com.opensymphony.xwork2.util.ValueStack; +import org.apache.struts2.views.annotations.StrutsTagAttribute; import javax.servlet.http.HttpServletRequest; import javax.servlet.http.HttpServletResponse; - -import org.apache.struts2.views.annotations.StrutsTagAttribute; - -import com.opensymphony.xwork2.util.ValueStack; +import java.util.Map; /** * DoubleListUIBean is the standard superclass of all Struts double list handling components. @@ -55,6 +53,9 @@ public abstract class DoubleListUIBean extends ListUIBean { protected String doubleList; protected String doubleListKey; protected String doubleListValue; + protected String doubleListCssClass; + protected String doubleListCssStyle; + protected String doubleListTitle; protected String doubleName; protected String doubleValue; protected String formName; @@ -149,6 +150,15 @@ public abstract class DoubleListUIBean extends ListUIBean { }else if (tmpDoubleList instanceof Map) { addParameter("doubleListValue", "value"); } + if (doubleListCssClass != null) { + addParameter("doubleListCssClass", findString(doubleListCssClass)); + } + if (doubleListCssStyle!= null) { + addParameter("doubleListCssStyle", findString(doubleListCssStyle)); + } + if (doubleListTitle != null) { + addParameter("doubleListTitle", findString(doubleListTitle)); + } if (formName != null) { @@ -276,6 +286,21 @@ public abstract class DoubleListUIBean extends ListUIBean { this.doubleListValue = doubleListValue; } + @StrutsTagAttribute(description = "Property of second list objects to get css class from") + public void setDoubleListCssClass(String doubleListCssClass) { + this.doubleListCssClass = doubleListCssClass; + } + + @StrutsTagAttribute(description = "Property of second list objects to get css style from") + public void setDoubleListCssStyle(String doubleListCssStyle) { + this.doubleListCssStyle = doubleListCssStyle; + } + + @StrutsTagAttribute(description = "Property of second list objects to get title from") + public void setDoubleListTitle(String doubleListTitle) { + this.doubleListTitle = doubleListTitle; + } + @StrutsTagAttribute(description="The name for complete component", required=true) public void setDoubleName(String doubleName) { this.doubleName = doubleName; diff --git a/core/src/main/java/org/apache/struts2/components/ListUIBean.java b/core/src/main/java/org/apache/struts2/components/ListUIBean.java index fe61c1199..b1a4493b6 100644 --- a/core/src/main/java/org/apache/struts2/components/ListUIBean.java +++ b/core/src/main/java/org/apache/struts2/components/ListUIBean.java @@ -21,37 +21,37 @@ package org.apache.struts2.components; +import com.opensymphony.xwork2.util.ValueStack; +import org.apache.struts2.util.ContainUtil; +import org.apache.struts2.util.MakeIterator; +import org.apache.struts2.views.annotations.StrutsTagAttribute; + +import javax.servlet.http.HttpServletRequest; +import javax.servlet.http.HttpServletResponse; import java.lang.reflect.Array; import java.util.Collection; import java.util.Map; -import javax.servlet.http.HttpServletRequest; -import javax.servlet.http.HttpServletResponse; - -import org.apache.struts2.views.annotations.StrutsTagAttribute; -import org.apache.struts2.util.ContainUtil; -import org.apache.struts2.util.MakeIterator; - -import com.opensymphony.xwork2.util.ValueStack; - /** * DoubleListUIBean is the standard superclass of all Struts list handling components. - * *

- * + *

+ *

* - * + *

* Note that the listkey and listvalue attribute will default to "key" and "value" * respectively only when the list attribute is evaluated to a Map or its decendant. * Everything else will result in listkey and listvalue to be null and not used. - * + *

* - * */ public abstract class ListUIBean extends UIBean { protected Object list; protected String listKey; protected String listValue; + protected String listCssClass; + protected String listCssStyle; + protected String listTitle; // indicate if an exception is to be thrown when value attribute is null protected boolean throwExceptionOnNullValueAttribute = false; @@ -78,13 +78,12 @@ public abstract class ListUIBean extends UIBean { if (throwExceptionOnNullValueAttribute) { // will throw an exception if not found value = findValue((list == null) ? (String) list : list.toString(), "list", - "The requested list key '" + list + "' could not be resolved as a collection/array/map/enumeration/iterator type. " + - "Example: people or people.{name}"); - } - else { + "The requested list key '" + list + "' could not be resolved as a collection/array/map/enumeration/iterator type. " + + "Example: people or people.{name}"); + } else { // ww-1010, allows value with null value to be compatible with ww // 2.1.7 behaviour - value = findValue((list == null)?(String) list:list.toString()); + value = findValue((list == null) ? (String) list : list.toString()); } } @@ -103,18 +102,30 @@ public abstract class ListUIBean extends UIBean { } if (listKey != null) { - listKey = stripExpressionIfAltSyntax(listKey); + listKey = stripExpressionIfAltSyntax(listKey); addParameter("listKey", listKey); } else if (value instanceof Map) { addParameter("listKey", "key"); } if (listValue != null) { - listValue = stripExpressionIfAltSyntax(listValue); + listValue = stripExpressionIfAltSyntax(listValue); addParameter("listValue", listValue); } else if (value instanceof Map) { addParameter("listValue", "value"); } + + if (listCssClass != null && listCssClass.trim().length() > 0) { + addParameter("listCssClass", listCssClass); + } + + if (listCssStyle != null && listCssStyle.trim().length() > 0) { + addParameter("listCssStyle", listCssStyle); + } + + if (listTitle != null && listTitle.trim().length() > 0) { + addParameter("listTitle", listTitle); + } } public boolean contains(Object obj1, Object obj2) { @@ -125,22 +136,37 @@ public abstract class ListUIBean extends UIBean { return null; // don't convert nameValue to anything, we need the raw value } - @StrutsTagAttribute(description="Iterable source to populate from. If the list is a Map (key, value), the Map key will become the option 'value'" + - " parameter and the Map value will become the option body.", required=true) + @StrutsTagAttribute(description = "Iterable source to populate from. If the list is a Map (key, value), the Map key will become the option 'value'" + + " parameter and the Map value will become the option body.", required = true) public void setList(Object list) { this.list = list; } - @StrutsTagAttribute(description=" Property of list objects to get field value from") + @StrutsTagAttribute(description = " Property of list objects to get field value from") public void setListKey(String listKey) { this.listKey = listKey; } - @StrutsTagAttribute(description="Property of list objects to get field content from") + @StrutsTagAttribute(description = "Property of list objects to get field content from") public void setListValue(String listValue) { this.listValue = listValue; } + @StrutsTagAttribute(description = "Property of list objects to get css class from") + public void setListCssClass(String listCssClass) { + this.listCssClass = listCssClass; + } + + @StrutsTagAttribute(description = "Property of list objects to get css style from") + public void setListCssStyle(String listCssStyle) { + this.listCssStyle = listCssStyle; + } + + @StrutsTagAttribute(description = "Property of list objects to get title from") + public void setListTitle(String listTitle) { + this.listTitle = listTitle; + } + public void setThrowExceptionOnNullValueAttribute(boolean throwExceptionOnNullValueAttribute) { this.throwExceptionOnNullValueAttribute = throwExceptionOnNullValueAttribute; diff --git a/core/src/main/java/org/apache/struts2/views/jsp/ui/AbstractListTag.java b/core/src/main/java/org/apache/struts2/views/jsp/ui/AbstractListTag.java index c2310643d..1f2ebb4e7 100644 --- a/core/src/main/java/org/apache/struts2/views/jsp/ui/AbstractListTag.java +++ b/core/src/main/java/org/apache/struts2/views/jsp/ui/AbstractListTag.java @@ -29,6 +29,9 @@ public abstract class AbstractListTag extends AbstractUITag { protected String list; protected String listKey; protected String listValue; + protected String listCssClass; + protected String listCssStyle; + protected String listTitle; protected void populateParams() { super.populateParams(); @@ -37,6 +40,9 @@ public abstract class AbstractListTag extends AbstractUITag { listUIBean.setList(list); listUIBean.setListKey(listKey); listUIBean.setListValue(listValue); + listUIBean.setListCssClass(listCssClass); + listUIBean.setListCssStyle(listCssStyle); + listUIBean.setListTitle(listTitle); } public void setList(String list) { @@ -50,4 +56,16 @@ public abstract class AbstractListTag extends AbstractUITag { public void setListValue(String listValue) { this.listValue = listValue; } + + public void setListCssClass(String listCssClass) { + this.listCssClass = listCssClass; + } + + public void setListCssStyle(String listCssStyle) { + this.listCssStyle = listCssStyle; + } + + public void setListTitle(String listTitle) { + this.listTitle = listTitle; + } } diff --git a/core/src/main/resources/template/simple/combobox.ftl b/core/src/main/resources/template/simple/combobox.ftl index 1099e58a8..2eba696a8 100644 --- a/core/src/main/resources/template/simple/combobox.ftl +++ b/core/src/main/resources/template/simple/combobox.ftl @@ -61,10 +61,40 @@ <#else> <#assign tmpListValue = stack.findString('top') /> + <#if parameters.listCssClass??> + <#if stack.findString(parameters.listCssClass)??> + <#assign itemCssClass= stack.findString(parameters.listCssClass)/> + <#else> + <#assign itemCssClass = ''/> + + + <#if parameters.listCssStyle??> + <#if stack.findString(parameters.listCssStyle)??> + <#assign itemCssStyle= stack.findString(parameters.listCssStyle)/> + <#else> + <#assign itemCssStyle = ''/> + + + <#if parameters.listTitle??> + <#if stack.findString(parameters.listTitle)??> + <#assign itemTitle= stack.findString(parameters.listTitle)/> + <#else> + <#assign itemTitle = ''/> + + <#lt/> diff --git a/core/src/main/resources/template/simple/doubleselect.ftl b/core/src/main/resources/template/simple/doubleselect.ftl index a01d4312a..88803772e 100644 --- a/core/src/main/resources/template/simple/doubleselect.ftl +++ b/core/src/main/resources/template/simple/doubleselect.ftl @@ -110,7 +110,37 @@ <#else> <#assign doubleItemValue = stack.findString('top')/> + <#if parameters.doubleListCssClass??> + <#if stack.findString(parameters.doubleListCssClass)??> + <#assign itemDoubleCssClass= stack.findString(parameters.doubleListCssClass)/> + <#else> + <#assign itemDoubleCssClass = ''/> + + + <#if parameters.doubleListCssStyle??> + <#if stack.findString(parameters.doubleListCssStyle)??> + <#assign itemDoubleCssStyle= stack.findString(parameters.doubleListCssStyle)/> + <#else> + <#assign itemDoubleCssStyle = ''/> + + + <#if parameters.doubleListTitle??> + <#if stack.findString(parameters.doubleListTitle)??> + <#assign itemDoubleTitle= stack.findString(parameters.doubleListTitle)/> + <#else> + <#assign itemDoubleTitle = ''/> + + ${parameters.id}Group[${itemCount}][${doubleItemCount}] = new Option("${doubleItemValue?js_string}", "${doubleItemKeyStr?js_string}"); + <#if itemDoubleCssClass?if_exists != ""> + ${parameters.id}Group[${itemCount}][${doubleItemCount}].setAttribute("class","${itemDoubleCssClass?html}"); + + <#if itemDoubleCssStyle?if_exists != ""> + ${parameters.id}Group[${itemCount}][${doubleItemCount}].setAttribute("style","${itemDoubleCssStyle?html}"); + + <#if itemDoubleTitle?if_exists != ""> + ${parameters.id}Group[${itemCount}][${doubleItemCount}].setAttribute("title","${itemDoubleTitle?html}"); + <#assign doubleItemCount = doubleItemCount + 1/> diff --git a/core/src/main/resources/template/simple/radiomap.ftl b/core/src/main/resources/template/simple/radiomap.ftl index fa5f9ac3b..7db6c9875 100644 --- a/core/src/main/resources/template/simple/radiomap.ftl +++ b/core/src/main/resources/template/simple/radiomap.ftl @@ -32,6 +32,27 @@ <#else> <#assign itemValue = stack.findString('top')/> + <#if parameters.listCssClass??> + <#if stack.findString(parameters.listCssClass)??> + <#assign itemCssClass= stack.findString(parameters.listCssClass)/> + <#else> + <#assign itemCssClass = ''/> + + + <#if parameters.listCssStyle??> + <#if stack.findString(parameters.listCssStyle)??> + <#assign itemCssStyle= stack.findString(parameters.listCssStyle)/> + <#else> + <#assign itemCssStyle = ''/> + + + <#if parameters.listTitle??> + <#if stack.findString(parameters.listTitle)??> + <#assign itemTitle= stack.findString(parameters.listTitle)/> + <#else> + <#assign itemTitle = ''/> + + <#if parameters.name??> name="${parameters.name?html}"<#rt/> @@ -49,16 +70,28 @@ <#if parameters.tabindex??> tabindex="${parameters.tabindex?html}"<#rt/> -<#if parameters.cssClass??> +<#if itemCssClass?if_exists != ""> + class="${itemCssClass?html}"<#rt/> +<#else> + <#if parameters.cssClass??> class="${parameters.cssClass?html}"<#rt/> + -<#if parameters.cssStyle??> +<#if itemCssStyle?if_exists != ""> + style="${itemCssStyle?html}"<#rt/> +<#else> + <#if parameters.cssStyle??> style="${parameters.cssStyle?html}"<#rt/> + + +<#if itemTitle?if_exists != ""> + title="${itemTitle?html}"<#rt/> +<#else> + <#if parameters.title??> + title="${parameters.title?html}"<#rt/> + <#include "/${parameters.templateDir}/simple/css.ftl" /> -<#if parameters.title??> - title="${parameters.title?html}"<#rt/> - <#include "/${parameters.templateDir}/simple/scripting-events.ftl" /> <#include "/${parameters.templateDir}/simple/common-attributes.ftl" /> <#include "/${parameters.templateDir}/simple/dynamic-attributes.ftl" /> diff --git a/core/src/main/resources/template/simple/select.ftl b/core/src/main/resources/template/simple/select.ftl index 468f14819..f34f214b9 100644 --- a/core/src/main/resources/template/simple/select.ftl +++ b/core/src/main/resources/template/simple/select.ftl @@ -78,10 +78,40 @@ <#else> <#assign itemValue = stack.findString('top')/> + <#if parameters.listCssClass??> + <#if stack.findString(parameters.listCssClass)??> + <#assign itemCssClass= stack.findString(parameters.listCssClass)/> + <#else> + <#assign itemCssClass = ''/> + + + <#if parameters.listCssStyle??> + <#if stack.findString(parameters.listCssStyle)??> + <#assign itemCssStyle= stack.findString(parameters.listCssStyle)/> + <#else> + <#assign itemCssStyle = ''/> + + + <#if parameters.listTitle??> + <#if stack.findString(parameters.listTitle)??> + <#assign itemTitle= stack.findString(parameters.listTitle)/> + <#else> + <#assign itemTitle = ''/> + + <#lt/> diff --git a/core/src/site/resources/tags/checkboxlist.html b/core/src/site/resources/tags/checkboxlist.html index c44b12dfd..94dc2343e 100644 --- a/core/src/site/resources/tags/checkboxlist.html +++ b/core/src/site/resources/tags/checkboxlist.html @@ -137,6 +137,22 @@ Please do not edit it directly. String Iterable source to populate from. If the list is a Map (key, value), the Map key will become the option 'value' parameter and the Map value will become the option body. + + listCssClass + false + + false + String + Property of list objects to get css class from + + + listCssStyle + false + + false + String + Property of list objects to get css style from + listKey false @@ -145,6 +161,14 @@ Please do not edit it directly. String Property of list objects to get field value from + + listTitle + false + + false + String + Property of list objects to get title from + listValue false diff --git a/core/src/site/resources/tags/doubleselect.html b/core/src/site/resources/tags/doubleselect.html index 09da45dd2..b8c1abab0 100644 --- a/core/src/site/resources/tags/doubleselect.html +++ b/core/src/site/resources/tags/doubleselect.html @@ -153,6 +153,22 @@ Please do not edit it directly. String The second iterable source to populate from. + + doubleListCssClass + false + + false + String + Property of second list objects to get css class from + + + doubleListCssStyle + false + + false + String + Property of second list objects to get css style from + doubleListKey false @@ -161,6 +177,14 @@ Please do not edit it directly. String The key expression to use for second list + + doubleListTitle + false + + false + String + Property of second list objects to get title from + doubleListValue false @@ -401,6 +425,22 @@ Please do not edit it directly. String Iterable source to populate from. If the list is a Map (key, value), the Map key will become the option 'value' parameter and the Map value will become the option body. + + listCssClass + false + + false + String + Property of list objects to get css class from + + + listCssStyle + false + + false + String + Property of list objects to get css style from + listKey false @@ -409,6 +449,14 @@ Please do not edit it directly. String Property of list objects to get field value from + + listTitle + false + + false + String + Property of list objects to get title from + listValue false diff --git a/core/src/site/resources/tags/inputtransferselect.html b/core/src/site/resources/tags/inputtransferselect.html index 148388347..ba72da100 100644 --- a/core/src/site/resources/tags/inputtransferselect.html +++ b/core/src/site/resources/tags/inputtransferselect.html @@ -209,6 +209,22 @@ Please do not edit it directly. String Iterable source to populate from. If the list is a Map (key, value), the Map key will become the option 'value' parameter and the Map value will become the option body. + + listCssClass + false + + false + String + Property of list objects to get css class from + + + listCssStyle + false + + false + String + Property of list objects to get css style from + listKey false @@ -217,6 +233,14 @@ Please do not edit it directly. String Property of list objects to get field value from + + listTitle + false + + false + String + Property of list objects to get title from + listValue false diff --git a/core/src/site/resources/tags/optiontransferselect.html b/core/src/site/resources/tags/optiontransferselect.html index 580a6b28b..190aef315 100644 --- a/core/src/site/resources/tags/optiontransferselect.html +++ b/core/src/site/resources/tags/optiontransferselect.html @@ -289,6 +289,22 @@ Please do not edit it directly. String The second iterable source to populate from. + + doubleListCssClass + false + + false + String + Property of second list objects to get css class from + + + doubleListCssStyle + false + + false + String + Property of second list objects to get css style from + doubleListKey false @@ -297,6 +313,14 @@ Please do not edit it directly. String The key expression to use for second list + + doubleListTitle + false + + false + String + Property of second list objects to get title from + doubleListValue false @@ -561,6 +585,22 @@ Please do not edit it directly. String Iterable source to populate from. If the list is a Map (key, value), the Map key will become the option 'value' parameter and the Map value will become the option body. + + listCssClass + false + + false + String + Property of list objects to get css class from + + + listCssStyle + false + + false + String + Property of list objects to get css style from + listKey false @@ -569,6 +609,14 @@ Please do not edit it directly. String Property of list objects to get field value from + + listTitle + false + + false + String + Property of list objects to get title from + listValue false diff --git a/core/src/site/resources/tags/radio.html b/core/src/site/resources/tags/radio.html index 40061aa2e..4aa427d0e 100644 --- a/core/src/site/resources/tags/radio.html +++ b/core/src/site/resources/tags/radio.html @@ -137,6 +137,22 @@ Please do not edit it directly. String Iterable source to populate from. If the list is a Map (key, value), the Map key will become the option 'value' parameter and the Map value will become the option body. + + listCssClass + false + + false + String + Property of list objects to get css class from + + + listCssStyle + false + + false + String + Property of list objects to get css style from + listKey false @@ -145,6 +161,14 @@ Please do not edit it directly. String Property of list objects to get field value from + + listTitle + false + + false + String + Property of list objects to get title from + listValue false diff --git a/core/src/site/resources/tags/select.html b/core/src/site/resources/tags/select.html index 82b27419a..5786c976f 100644 --- a/core/src/site/resources/tags/select.html +++ b/core/src/site/resources/tags/select.html @@ -161,6 +161,22 @@ Please do not edit it directly. String Iterable source to populate from. If the list is a Map (key, value), the Map key will become the option 'value' parameter and the Map value will become the option body. + + listCssClass + false + + false + String + Property of list objects to get css class from + + + listCssStyle + false + + false + String + Property of list objects to get css style from + listKey false @@ -169,6 +185,14 @@ Please do not edit it directly. String Property of list objects to get field value from + + listTitle + false + + false + String + Property of list objects to get title from + listValue false diff --git a/core/src/site/resources/tags/updownselect.html b/core/src/site/resources/tags/updownselect.html index 5fa3f0bc4..dcaaa9810 100644 --- a/core/src/site/resources/tags/updownselect.html +++ b/core/src/site/resources/tags/updownselect.html @@ -185,6 +185,22 @@ Please do not edit it directly. String Iterable source to populate from. If the list is a Map (key, value), the Map key will become the option 'value' parameter and the Map value will become the option body. + + listCssClass + false + + false + String + Property of list objects to get css class from + + + listCssStyle + false + + false + String + Property of list objects to get css style from + listKey false @@ -193,6 +209,14 @@ Please do not edit it directly. String Property of list objects to get field value from + + listTitle + false + + false + String + Property of list objects to get title from + listValue false