JBoss Rich Faces SVN: r20484 - in trunk/ui/output/ui/src: main/java/org/richfaces/renderkit/html and 4 other directories.
by richfaces-svn-commits@lists.jboss.org
Author: amarkhel
Date: 2010-12-09 12:53:09 -0500 (Thu, 09 Dec 2010)
New Revision: 20484
Modified:
trunk/ui/output/ui/src/main/java/org/richfaces/component/AbstractDropDownMenu.java
trunk/ui/output/ui/src/main/java/org/richfaces/component/AbstractMenuGroup.java
trunk/ui/output/ui/src/main/java/org/richfaces/renderkit/html/DropDownMenuRendererBase.java
trunk/ui/output/ui/src/main/resources/META-INF/pn.taglib.xml
trunk/ui/output/ui/src/main/templates/dropdownmenu.template.xml
trunk/ui/output/ui/src/test/java/org/richfaces/renderkit/html/DrowDownMenuRendererTest.java
trunk/ui/output/ui/src/test/resources/org/richfaces/renderkit/html/dropDownMenu_ajaxMode.xmlunit.xml
trunk/ui/output/ui/src/test/resources/org/richfaces/renderkit/html/dropDownMenu_serverMode.xmlunit.xml
Log:
https://issues.jboss.org/browse/RF-9676 Dropdown menu component . Unworking attributes was removed.
Modified: trunk/ui/output/ui/src/main/java/org/richfaces/component/AbstractDropDownMenu.java
===================================================================
--- trunk/ui/output/ui/src/main/java/org/richfaces/component/AbstractDropDownMenu.java 2010-12-09 17:26:24 UTC (rev 20483)
+++ trunk/ui/output/ui/src/main/java/org/richfaces/component/AbstractDropDownMenu.java 2010-12-09 17:53:09 UTC (rev 20484)
@@ -38,12 +38,12 @@
@Attribute(defaultValue = "250")
public abstract int getPopupWith();
- @Attribute(defaultValue = "auto")
- public abstract String getJointPoint();
+// @Attribute(defaultValue = "auto")
+// public abstract String getJointPoint();
+//
+// @Attribute(defaultValue = "auto")
+// public abstract String getDirection();
- @Attribute(defaultValue = "auto")
- public abstract String getDirection();
-
@Attribute(events = @EventName("groupshow"))
public abstract String getOngroupshow();
Modified: trunk/ui/output/ui/src/main/java/org/richfaces/component/AbstractMenuGroup.java
===================================================================
--- trunk/ui/output/ui/src/main/java/org/richfaces/component/AbstractMenuGroup.java 2010-12-09 17:26:24 UTC (rev 20483)
+++ trunk/ui/output/ui/src/main/java/org/richfaces/component/AbstractMenuGroup.java 2010-12-09 17:53:09 UTC (rev 20484)
@@ -38,15 +38,15 @@
@Attribute
public abstract String getStyle();
- @Attribute(defaultValue = "auto")
- public abstract String getDirection();
+// @Attribute(defaultValue = "auto")
+// public abstract String getDirection();
+//
+// @Attribute(defaultValue = "0")
+// public abstract String getVerticalOffset();
+//
+// @Attribute(defaultValue = "0")
+// public abstract String getHorizontalOffset();
- @Attribute(defaultValue = "0")
- public abstract String getVerticalOffset();
-
- @Attribute(defaultValue = "0")
- public abstract String getHorizontalOffset();
-
@Attribute(events = @EventName("show"))
public abstract String getOnshow();
Modified: trunk/ui/output/ui/src/main/java/org/richfaces/renderkit/html/DropDownMenuRendererBase.java
===================================================================
--- trunk/ui/output/ui/src/main/java/org/richfaces/renderkit/html/DropDownMenuRendererBase.java 2010-12-09 17:26:24 UTC (rev 20483)
+++ trunk/ui/output/ui/src/main/java/org/richfaces/renderkit/html/DropDownMenuRendererBase.java 2010-12-09 17:53:09 UTC (rev 20484)
@@ -84,9 +84,6 @@
if (group.isRendered() && !group.isDisabled()) {
Map<String, Object> map = new HashMap<String, Object>();
map.put("id", group.getClientId());
- map.put("horizontalOffset", group.getHorizontalOffset());
- map.put("verticalOffset", group.getVerticalOffset());
- map.put("direction", group.getDirection());
RenderKitUtils.addToScriptHash(map, "onhide", group.getOnhide(), null, ScriptHashVariableWrapper.eventHandler);
RenderKitUtils.addToScriptHash(map, "onshow", group.getOnshow(), null, ScriptHashVariableWrapper.eventHandler);
results.add(map);
Modified: trunk/ui/output/ui/src/main/resources/META-INF/pn.taglib.xml
===================================================================
--- trunk/ui/output/ui/src/main/resources/META-INF/pn.taglib.xml 2010-12-09 17:26:24 UTC (rev 20483)
+++ trunk/ui/output/ui/src/main/resources/META-INF/pn.taglib.xml 2010-12-09 17:53:09 UTC (rev 20484)
@@ -1,2724 +1,2323 @@
<?xml version="1.0" encoding="UTF-8"?>
-
-<facelet-taglib xmlns="http://java.sun.com/xml/ns/javaee"
- xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
- xsi:schemaLocation="http://java.sun.com/xml/ns/javaee
- http://java.sun.com/xml/ns/javaee/web-facelettaglibrary_2_0.xsd" version="2.0" id="output">
- <namespace>http://richfaces.org/output</namespace>
- <tag>
- <tag-name>dropDownMenu</tag-name>
- <component>
- <component-type>org.richfaces.DropDownMenu</component-type>
- <renderer-type>org.richfaces.DropDownMenuRenderer</renderer-type>
- </component>
- <attribute>
- <description>The value binding expression used to wire up this component to a component property of a JavaBean class</description>
- <icon/>
- <name>binding</name>
- <type>javax.faces.component.UIComponent</type>
- </attribute>
- <attribute>
- <description>Direction indication for text that does not inherit directionality. Valid values are "LTR" (left-to-right) and "RTL" (right-to-left).</description>
- <display-name>Direction</display-name>
- <icon/>
- <name>dir</name>
- <type>java.lang.String</type>
- </attribute>
- <attribute>
- <name>direction</name>
- <type>java.lang.String</type>
- </attribute>
- <attribute>
- <name>disabled</name>
- <type>boolean</type>
- </attribute>
- <attribute>
- <name>hideDelay</name>
- <type>int</type>
- </attribute>
- <attribute>
- <description>The component identifier for this component. This value must be unique within the closest parent component that is a naming container.</description>
- <display-name>Component Identifier</display-name>
- <icon/>
- <name>id</name>
- <type>java.lang.String</type>
- </attribute>
- <attribute>
- <name>jointPoint</name>
- <type>java.lang.String</type>
- </attribute>
- <attribute>
- <description>Code describing the language used in the generated markup for this component.</description>
- <display-name>Language Code</display-name>
- <icon/>
- <name>lang</name>
- <type>java.lang.String</type>
- </attribute>
- <attribute>
- <name>mode</name>
- <type>java.lang.String</type>
- </attribute>
- <attribute>
- <description>Javascript code executed when a pointer button is clicked over this element.</description>
- <display-name>Button Click Script</display-name>
- <icon/>
- <name>onclick</name>
- <type>java.lang.String</type>
- </attribute>
- <attribute>
- <description>Javascript code executed when a pointer button is double clicked over this element.</description>
- <display-name>Double Click Script</display-name>
- <icon/>
- <name>ondblclick</name>
- <type>java.lang.String</type>
- </attribute>
- <attribute>
- <name>ongrouphide</name>
- <type>java.lang.String</type>
- </attribute>
- <attribute>
- <name>ongroupshow</name>
- <type>java.lang.String</type>
- </attribute>
- <attribute>
- <name>onhide</name>
- <type>java.lang.String</type>
- </attribute>
- <attribute>
- <name>onitemclick</name>
- <type>java.lang.String</type>
- </attribute>
- <attribute>
- <description>Javascript code executed when a key is pressed down over this element.</description>
- <display-name>Key Down Script</display-name>
- <icon/>
- <name>onkeydown</name>
- <type>java.lang.String</type>
- </attribute>
- <attribute>
- <description>Javascript code executed when a key is pressed and released over this element.</description>
- <display-name>Key Press Script</display-name>
- <icon/>
- <name>onkeypress</name>
- <type>java.lang.String</type>
- </attribute>
- <attribute>
- <description>Javascript code executed when a key is released over this element.</description>
- <display-name>Key Up Script</display-name>
- <icon/>
- <name>onkeyup</name>
- <type>java.lang.String</type>
- </attribute>
- <attribute>
- <description>Javascript code executed when a pointer button is pressed down over this element.</description>
- <display-name>Mouse Down Script</display-name>
- <icon/>
- <name>onmousedown</name>
- <type>java.lang.String</type>
- </attribute>
- <attribute>
- <description>Javascript code executed when a pointer button is moved within this element.</description>
- <display-name>Mouse Move Script</display-name>
- <icon/>
- <name>onmousemove</name>
- <type>java.lang.String</type>
- </attribute>
- <attribute>
- <description>Javascript code executed when a pointer button is moved away from this element.</description>
- <display-name>Mouse Out Script</display-name>
- <icon/>
- <name>onmouseout</name>
- <type>java.lang.String</type>
- </attribute>
- <attribute>
- <description>Javascript code executed when a pointer button is moved onto this element.</description>
- <display-name>Mouse Over Script</display-name>
- <icon/>
- <name>onmouseover</name>
- <type>java.lang.String</type>
- </attribute>
- <attribute>
- <description>Javascript code executed when a pointer button is released over this element.</description>
- <display-name>Mouse Up Script</display-name>
- <icon/>
- <name>onmouseup</name>
- <type>java.lang.String</type>
- </attribute>
- <attribute>
- <name>onshow</name>
- <type>java.lang.String</type>
- </attribute>
- <attribute>
- <name>popupWith</name>
- <type>int</type>
- </attribute>
- <attribute>
- <description>Flag indicating whether or not this component should be rendered (during Render Response Phase), or processed on any subsequent form submit. The default value for this property is true.</description>
- <display-name>Rendered Flag</display-name>
- <icon/>
- <name>rendered</name>
- <type>boolean</type>
- </attribute>
- <attribute>
- <name>showDelay</name>
- <type>int</type>
- </attribute>
- <attribute>
- <name>showEvent</name>
- <type>java.lang.String</type>
- </attribute>
- <attribute>
- <description>CSS style(s) to be applied when this component is rendered.</description>
- <display-name>CSS Styles</display-name>
- <icon/>
- <name>style</name>
- <type>java.lang.String</type>
- </attribute>
- <attribute>
- <description>Space-separated list of CSS style class(es) to be applied when this element is rendered. This value must be passed through as the "class" attribute on generated markup.</description>
- <display-name>CSS Style Classes</display-name>
- <icon/>
- <name>styleClass</name>
- <type>java.lang.String</type>
- </attribute>
- <attribute>
- <description>Advisory title information about markup elements generated for this component.</description>
- <display-name>Advisory Title</display-name>
- <icon/>
- <name>title</name>
- <type>java.lang.String</type>
- </attribute>
- </tag>
- <tag>
- <tag-name>menuSeparator</tag-name>
- <component>
- <component-type>org.richfaces.MenuSeparator</component-type>
- <renderer-type>org.richfaces.MenuSeparatorRenderer</renderer-type>
- </component>
- <attribute>
- <description>The value binding expression used to wire up this component to a component property of a JavaBean class</description>
- <icon/>
- <name>binding</name>
- <type>javax.faces.component.UIComponent</type>
- </attribute>
- <attribute>
- <description>The component identifier for this component. This value must be unique within the closest parent component that is a naming container.</description>
- <display-name>Component Identifier</display-name>
- <icon/>
- <name>id</name>
- <type>java.lang.String</type>
- </attribute>
- <attribute>
- <description>Flag indicating whether or not this component should be rendered (during Render Response Phase), or processed on any subsequent form submit. The default value for this property is true.</description>
- <display-name>Rendered Flag</display-name>
- <icon/>
- <name>rendered</name>
- <type>boolean</type>
- </attribute>
- </tag>
- <tag>
- <tag-name>menuGroup</tag-name>
- <component>
- <component-type>org.richfaces.MenuGroup</component-type>
- <renderer-type>org.richfaces.MenuGroupRenderer</renderer-type>
- </component>
- <attribute>
- <description>The value binding expression used to wire up this component to a component property of a JavaBean class</description>
- <icon/>
- <name>binding</name>
- <type>javax.faces.component.UIComponent</type>
- </attribute>
- <attribute>
- <description>Converter instance registered with this component.</description>
- <display-name>Converter</display-name>
- <icon/>
- <name>converter</name>
- <type>javax.faces.convert.Converter</type>
- </attribute>
- <attribute>
- <description>Direction indication for text that does not inherit directionality. Valid values are "LTR" (left-to-right) and "RTL" (right-to-left).</description>
- <display-name>Direction</display-name>
- <icon/>
- <name>dir</name>
- <type>java.lang.String</type>
- </attribute>
- <attribute>
- <name>direction</name>
- <type>java.lang.String</type>
- </attribute>
- <attribute>
- <name>disabled</name>
- <type>boolean</type>
- </attribute>
- <attribute>
- <name>horizontalOffset</name>
- <type>java.lang.String</type>
- </attribute>
- <attribute>
- <name>icon</name>
- <type>java.lang.String</type>
- </attribute>
- <attribute>
- <name>iconDisabled</name>
- <type>java.lang.String</type>
- </attribute>
- <attribute>
- <name>iconFolder</name>
- <type>java.lang.String</type>
- </attribute>
- <attribute>
- <name>iconFolderDisabled</name>
- <type>java.lang.String</type>
- </attribute>
- <attribute>
- <description>The component identifier for this component. This value must be unique within the closest parent component that is a naming container.</description>
- <display-name>Component Identifier</display-name>
- <icon/>
- <name>id</name>
- <type>java.lang.String</type>
- </attribute>
- <attribute>
- <description>Code describing the language used in the generated markup for this component.</description>
- <display-name>Language Code</display-name>
- <icon/>
- <name>lang</name>
- <type>java.lang.String</type>
- </attribute>
- <attribute>
- <description>Javascript code executed when a pointer button is clicked over this element.</description>
- <display-name>Button Click Script</display-name>
- <icon/>
- <name>onclick</name>
- <type>java.lang.String</type>
- </attribute>
- <attribute>
- <description>Javascript code executed when a pointer button is double clicked over this element.</description>
- <display-name>Double Click Script</display-name>
- <icon/>
- <name>ondblclick</name>
- <type>java.lang.String</type>
- </attribute>
- <attribute>
- <name>onhide</name>
- <type>java.lang.String</type>
- </attribute>
- <attribute>
- <description>Javascript code executed when a key is pressed down over this element.</description>
- <display-name>Key Down Script</display-name>
- <icon/>
- <name>onkeydown</name>
- <type>java.lang.String</type>
- </attribute>
- <attribute>
- <description>Javascript code executed when a key is pressed and released over this element.</description>
- <display-name>Key Press Script</display-name>
- <icon/>
- <name>onkeypress</name>
- <type>java.lang.String</type>
- </attribute>
- <attribute>
- <description>Javascript code executed when a key is released over this element.</description>
- <display-name>Key Up Script</display-name>
- <icon/>
- <name>onkeyup</name>
- <type>java.lang.String</type>
- </attribute>
- <attribute>
- <description>Javascript code executed when a pointer button is pressed down over this element.</description>
- <display-name>Mouse Down Script</display-name>
- <icon/>
- <name>onmousedown</name>
- <type>java.lang.String</type>
- </attribute>
- <attribute>
- <description>Javascript code executed when a pointer button is moved within this element.</description>
- <display-name>Mouse Move Script</display-name>
- <icon/>
- <name>onmousemove</name>
- <type>java.lang.String</type>
- </attribute>
- <attribute>
- <description>Javascript code executed when a pointer button is moved away from this element.</description>
- <display-name>Mouse Out Script</display-name>
- <icon/>
- <name>onmouseout</name>
- <type>java.lang.String</type>
- </attribute>
- <attribute>
- <description>Javascript code executed when a pointer button is moved onto this element.</description>
- <display-name>Mouse Over Script</display-name>
- <icon/>
- <name>onmouseover</name>
- <type>java.lang.String</type>
- </attribute>
- <attribute>
- <description>Javascript code executed when a pointer button is released over this element.</description>
- <display-name>Mouse Up Script</display-name>
- <icon/>
- <name>onmouseup</name>
- <type>java.lang.String</type>
- </attribute>
- <attribute>
- <name>onshow</name>
- <type>java.lang.String</type>
- </attribute>
- <attribute>
- <description>Flag indicating whether or not this component should be rendered (during Render Response Phase), or processed on any subsequent form submit. The default value for this property is true.</description>
- <display-name>Rendered Flag</display-name>
- <icon/>
- <name>rendered</name>
- <type>boolean</type>
- </attribute>
- <attribute>
- <description>CSS style(s) to be applied when this component is rendered.</description>
- <display-name>CSS Styles</display-name>
- <icon/>
- <name>style</name>
- <type>java.lang.String</type>
- </attribute>
- <attribute>
- <description>Space-separated list of CSS style class(es) to be applied when this element is rendered. This value must be passed through as the "class" attribute on generated markup.</description>
- <display-name>CSS Style Classes</display-name>
- <icon/>
- <name>styleClass</name>
- <type>java.lang.String</type>
- </attribute>
- <attribute>
- <description>Advisory title information about markup elements generated for this component.</description>
- <display-name>Advisory Title</display-name>
- <icon/>
- <name>title</name>
- <type>java.lang.String</type>
- </attribute>
- <attribute>
- <description>The current value of this component.</description>
- <display-name>Value</display-name>
- <icon/>
- <name>value</name>
- <type>java.lang.Object</type>
- </attribute>
- <attribute>
- <name>verticalOffset</name>
- <type>java.lang.String</type>
- </attribute>
- </tag>
- <tag>
- <tag-name>menuItem</tag-name>
- <component>
- <component-type>org.richfaces.MenuItem</component-type>
- <renderer-type>org.richfaces.MenuItemRenderer</renderer-type>
- </component>
- <attribute>
- <description>MethodExpression representing the application action to invoke when this component is activated by the user. The expression must evaluate to a public method that takes no parameters, and returns an Object (the toString() of which is called to derive the logical outcome) which is passed to the NavigationHandler for this application.</description>
- <display-name>Application Action</display-name>
- <icon/>
- <name>action</name>
- <type>javax.faces.el.MethodBinding</type>
- </attribute>
- <attribute>
- <description>MethodExpression representing the application action to invoke when this component is activated by the user. The expression must evaluate to a public method that takes no parameters, and returns an Object (the toString() of which is called to derive the logical outcome) which is passed to the NavigationHandler for this application.</description>
- <display-name>Application Action</display-name>
- <icon/>
- <name>actionExpression</name>
- <type>javax.el.MethodExpression</type>
- </attribute>
- <attribute>
- <description><p> MethodExpression representing an action listener method that will be notified when this component is activated by the user. The expression must evaluate to a public method that takes an ActionEvent parameter, with a return type of void, <span class="changed_added_2_0">or to a public method that takes no arguments with a return type of void. In the latter case, the method has no way of easily knowing where the event came from, but this can be useful in cases where a notification is needed that "some action happened".</span> </p></description>
- <display-name>Action Listener</display-name>
- <icon/>
- <name>actionListener</name>
- <type>javax.faces.el.MethodBinding</type>
- </attribute>
- <attribute>
- <description>The value binding expression used to wire up this component to a component property of a JavaBean class</description>
- <icon/>
- <name>binding</name>
- <type>javax.faces.component.UIComponent</type>
- </attribute>
- <attribute>
- <description>Direction indication for text that does not inherit directionality. Valid values are "LTR" (left-to-right) and "RTL" (right-to-left).</description>
- <display-name>Direction</display-name>
- <icon/>
- <name>dir</name>
- <type>java.lang.String</type>
- </attribute>
- <attribute>
- <name>disabled</name>
- <type>boolean</type>
- </attribute>
- <attribute>
- <name>icon</name>
- <type>java.lang.String</type>
- </attribute>
- <attribute>
- <name>iconDisabled</name>
- <type>java.lang.String</type>
- </attribute>
- <attribute>
- <description>The component identifier for this component. This value must be unique within the closest parent component that is a naming container.</description>
- <display-name>Component Identifier</display-name>
- <icon/>
- <name>id</name>
- <type>java.lang.String</type>
- </attribute>
- <attribute>
- <description>Flag indicating that, if this component is activated by the user, notifications should be delivered to interested listeners and actions immediately (that is, during Apply Request Values phase) rather than waiting until Invoke Application phase.</description>
- <display-name>Immediate Action</display-name>
- <icon/>
- <name>immediate</name>
- <type>boolean</type>
- </attribute>
- <attribute>
- <name>label</name>
- <type>java.lang.Object</type>
- </attribute>
- <attribute>
- <description>Code describing the language used in the generated markup for this component.</description>
- <display-name>Language Code</display-name>
- <icon/>
- <name>lang</name>
- <type>java.lang.String</type>
- </attribute>
- <attribute>
- <name>mode</name>
- <type>java.lang.String</type>
- </attribute>
- <attribute>
- <description>Javascript code executed when a pointer button is clicked over this element.</description>
- <display-name>Button Click Script</display-name>
- <icon/>
- <name>onclick</name>
- <type>java.lang.String</type>
- </attribute>
- <attribute>
- <description>Javascript code executed when a pointer button is double clicked over this element.</description>
- <display-name>Double Click Script</display-name>
- <icon/>
- <name>ondblclick</name>
- <type>java.lang.String</type>
- </attribute>
- <attribute>
- <description>Javascript code executed when a key is pressed down over this element.</description>
- <display-name>Key Down Script</display-name>
- <icon/>
- <name>onkeydown</name>
- <type>java.lang.String</type>
- </attribute>
- <attribute>
- <description>Javascript code executed when a key is pressed and released over this element.</description>
- <display-name>Key Press Script</display-name>
- <icon/>
- <name>onkeypress</name>
- <type>java.lang.String</type>
- </attribute>
- <attribute>
- <description>Javascript code executed when a key is released over this element.</description>
- <display-name>Key Up Script</display-name>
- <icon/>
- <name>onkeyup</name>
- <type>java.lang.String</type>
- </attribute>
- <attribute>
- <description>Javascript code executed when a pointer button is pressed down over this element.</description>
- <display-name>Mouse Down Script</display-name>
- <icon/>
- <name>onmousedown</name>
- <type>java.lang.String</type>
- </attribute>
- <attribute>
- <description>Javascript code executed when a pointer button is moved within this element.</description>
- <display-name>Mouse Move Script</display-name>
- <icon/>
- <name>onmousemove</name>
- <type>java.lang.String</type>
- </attribute>
- <attribute>
- <description>Javascript code executed when a pointer button is moved away from this element.</description>
- <display-name>Mouse Out Script</display-name>
- <icon/>
- <name>onmouseout</name>
- <type>java.lang.String</type>
- </attribute>
- <attribute>
- <description>Javascript code executed when a pointer button is moved onto this element.</description>
- <display-name>Mouse Over Script</display-name>
- <icon/>
- <name>onmouseover</name>
- <type>java.lang.String</type>
- </attribute>
- <attribute>
- <description>Javascript code executed when a pointer button is released over this element.</description>
- <display-name>Mouse Up Script</display-name>
- <icon/>
- <name>onmouseup</name>
- <type>java.lang.String</type>
- </attribute>
- <attribute>
- <description>Flag indicating whether or not this component should be rendered (during Render Response Phase), or processed on any subsequent form submit. The default value for this property is true.</description>
- <display-name>Rendered Flag</display-name>
- <icon/>
- <name>rendered</name>
- <type>boolean</type>
- </attribute>
- <attribute>
- <description>CSS style(s) to be applied when this component is rendered.</description>
- <display-name>CSS Styles</display-name>
- <icon/>
- <name>style</name>
- <type>java.lang.String</type>
- </attribute>
- <attribute>
- <description>Space-separated list of CSS style class(es) to be applied when this element is rendered. This value must be passed through as the "class" attribute on generated markup.</description>
- <display-name>CSS Style Classes</display-name>
- <icon/>
- <name>styleClass</name>
- <type>java.lang.String</type>
- </attribute>
- <attribute>
- <description>Advisory title information about markup elements generated for this component.</description>
- <display-name>Advisory Title</display-name>
- <icon/>
- <name>title</name>
- <type>java.lang.String</type>
- </attribute>
- <attribute>
- <description>The current value of this component.</description>
- <display-name>Value</display-name>
- <icon/>
- <name>value</name>
- <type>java.lang.Object</type>
- </attribute>
- </tag>
- <tag>
- <tag-name>toolbar</tag-name>
- <component>
- <component-type>org.richfaces.Toolbar</component-type>
- <renderer-type>org.richfaces.ToolbarRenderer</renderer-type>
- </component>
- <attribute>
- <description>The value binding expression used to wire up this component to a component property of a JavaBean class</description>
- <icon/>
- <name>binding</name>
- <type>javax.faces.component.UIComponent</type>
- </attribute>
- <attribute>
- <name>height</name>
- <type>java.lang.String</type>
- </attribute>
- <attribute>
- <description>The component identifier for this component. This value must be unique within the closest parent component that is a naming container.</description>
- <display-name>Component Identifier</display-name>
- <icon/>
- <name>id</name>
- <type>java.lang.String</type>
- </attribute>
- <attribute>
- <name>itemClass</name>
- <type>java.lang.String</type>
- </attribute>
- <attribute>
- <name>itemStyle</name>
- <type>java.lang.String</type>
- </attribute>
- <attribute>
- <name>itemSeparator</name>
- <type>java.lang.String</type>
- </attribute>
- <attribute>
- <name>onitemclick</name>
- <type>java.lang.String</type>
- </attribute>
- <attribute>
- <name>onitemdblclick</name>
- <type>java.lang.String</type>
- </attribute>
- <attribute>
- <name>onitemkeydown</name>
- <type>java.lang.String</type>
- </attribute>
- <attribute>
- <name>onitemkeypress</name>
- <type>java.lang.String</type>
- </attribute>
- <attribute>
- <name>onitemkeyup</name>
- <type>java.lang.String</type>
- </attribute>
- <attribute>
- <name>onitemmousedown</name>
- <type>java.lang.String</type>
- </attribute>
- <attribute>
- <name>onitemmousemove</name>
- <type>java.lang.String</type>
- </attribute>
- <attribute>
- <name>onitemmouseout</name>
- <type>java.lang.String</type>
- </attribute>
- <attribute>
- <name>onitemmouseover</name>
- <type>java.lang.String</type>
- </attribute>
- <attribute>
- <name>onitemmouseup</name>
- <type>java.lang.String</type>
- </attribute>
- <attribute>
- <description>Flag indicating whether or not this component should be rendered (during Render Response Phase), or processed on any subsequent form submit. The default value for this property is true.</description>
- <display-name>Rendered Flag</display-name>
- <icon/>
- <name>rendered</name>
- <type>boolean</type>
- </attribute>
- <attribute>
- <name>width</name>
- <type>java.lang.String</type>
- </attribute>
- </tag>
- <tag>
- <tag-name>toolbarGroup</tag-name>
- <component>
- <component-type>org.richfaces.ToolbarGroup</component-type>
- <renderer-type>org.richfaces.ToolbarGroupRenderer</renderer-type>
- </component>
- <attribute>
- <description>The value binding expression used to wire up this component to a component property of a JavaBean class</description>
- <icon/>
- <name>binding</name>
- <type>javax.faces.component.UIComponent</type>
- </attribute>
- <attribute>
- <description>The component identifier for this component. This value must be unique within the closest parent component that is a naming container.</description>
- <display-name>Component Identifier</display-name>
- <icon/>
- <name>id</name>
- <type>java.lang.String</type>
- </attribute>
- <attribute>
- <name>itemClass</name>
- <type>java.lang.String</type>
- </attribute>
- <attribute>
- <name>itemStyle</name>
- <type>java.lang.String</type>
- </attribute>
- <attribute>
- <name>itemSeparator</name>
- <type>java.lang.String</type>
- </attribute>
- <attribute>
- <name>location</name>
- <type>java.lang.String</type>
- </attribute>
- <attribute>
- <name>onitemclick</name>
- <type>java.lang.String</type>
- </attribute>
- <attribute>
- <name>onitemdblclick</name>
- <type>java.lang.String</type>
- </attribute>
- <attribute>
- <name>onitemkeydown</name>
- <type>java.lang.String</type>
- </attribute>
- <attribute>
- <name>onitemkeypress</name>
- <type>java.lang.String</type>
- </attribute>
- <attribute>
- <name>onitemkeyup</name>
- <type>java.lang.String</type>
- </attribute>
- <attribute>
- <name>onitemmousedown</name>
- <type>java.lang.String</type>
- </attribute>
- <attribute>
- <name>onitemmousemove</name>
- <type>java.lang.String</type>
- </attribute>
- <attribute>
- <name>onitemmouseout</name>
- <type>java.lang.String</type>
- </attribute>
- <attribute>
- <name>onitemmouseover</name>
- <type>java.lang.String</type>
- </attribute>
- <attribute>
- <name>onitemmouseup</name>
- <type>java.lang.String</type>
- </attribute>
- <attribute>
- <description>Flag indicating whether or not this component should be rendered (during Render Response Phase), or processed on any subsequent form submit. The default value for this property is true.</description>
- <display-name>Rendered Flag</display-name>
- <icon/>
- <name>rendered</name>
- <type>boolean</type>
- </attribute>
- </tag>
-
-
- <tag>
- <tag-name>toggleControl</tag-name>
- <behavior>
- <behavior-id>org.richfaces.component.behavior.ToggleControl</behavior-id>
- <handler-class>org.richfaces.view.facelets.html.CustomBehaviorHandler</handler-class>
- </behavior>
- </tag>
- <tag>
- <tag-name>panel</tag-name>
- <component>
- <component-type>org.richfaces.Panel</component-type>
- <renderer-type>org.richfaces.PanelRenderer</renderer-type>
- </component>
- </tag>
- <tag>
- <tag-name>progressBar</tag-name>
- <component>
- <component-type>org.richfaces.ProgressBar</component-type>
- <renderer-type>org.richfaces.ProgressBarRenderer</renderer-type>
- </component>
- </tag>
- <tag>
- <tag-name>popupPanel</tag-name>
- <component>
- <description>JSF component class</description>
- <component-type>org.richfaces.PopupPanel</component-type>
- <renderer-type>org.richfaces.PopupPanelRenderer</renderer-type>
- </component>
- <attribute>
- <name>autosized</name>
- <type>boolean</type>
- </attribute>
- <attribute>
- <description>The value binding expression used to wire up this component to a component property of a JavaBean class</description>
- <icon/>
- <name>binding</name>
- <type>javax.faces.component.UIComponent</type>
- </attribute>
- <attribute>
- <name>controlsClass</name>
- <type>java.lang.String</type>
- </attribute>
- <attribute>
- <name>domElementAttachment</name>
- <type>java.lang.String</type>
- </attribute>
- <attribute>
- <name>followByScroll</name>
- <type>boolean</type>
- </attribute>
- <attribute>
- <name>header</name>
- <type>java.lang.String</type>
- </attribute>
- <attribute>
- <name>headerClass</name>
- <type>java.lang.String</type>
- </attribute>
- <attribute>
- <name>height</name>
- <type>int</type>
- </attribute>
- <attribute>
- <description>The component identifier for this component. This value must be unique within the closest parent component that is a naming container.</description>
- <display-name>Component Identifier</display-name>
- <icon/>
- <name>id</name>
- <type>java.lang.String</type>
- </attribute>
- <attribute>
- <name>keepVisualState</name>
- <type>boolean</type>
- </attribute>
- <attribute>
- <name>left</name>
- <type>java.lang.String</type>
- </attribute>
- <attribute>
- <name>maxHeight</name>
- <type>int</type>
- </attribute>
- <attribute>
- <name>maxWidth</name>
- <type>int</type>
- </attribute>
- <attribute>
- <name>minHeight</name>
- <type>int</type>
- </attribute>
- <attribute>
- <name>minWidth</name>
- <type>int</type>
- </attribute>
- <attribute>
- <name>modal</name>
- <type>boolean</type>
- </attribute>
- <attribute>
- <name>moveable</name>
- <type>boolean</type>
- </attribute>
- <attribute>
- <name>onbeforehide</name>
- <type>java.lang.String</type>
- </attribute>
- <attribute>
- <name>onbeforeshow</name>
- <type>java.lang.String</type>
- </attribute>
- <attribute>
- <name>onhide</name>
- <type>java.lang.String</type>
- </attribute>
- <attribute>
- <name>onmaskclick</name>
- <type>java.lang.String</type>
- </attribute>
- <attribute>
- <name>onmaskcontextmenu</name>
- <type>java.lang.String</type>
- </attribute>
- <attribute>
- <name>onmaskdblclick</name>
- <type>java.lang.String</type>
- </attribute>
- <attribute>
- <name>onmaskmousedown</name>
- <type>java.lang.String</type>
- </attribute>
- <attribute>
- <name>onmaskmousemove</name>
- <type>java.lang.String</type>
- </attribute>
- <attribute>
- <name>onmaskmouseout</name>
- <type>java.lang.String</type>
- </attribute>
- <attribute>
- <name>onmaskmouseover</name>
- <type>java.lang.String</type>
- </attribute>
- <attribute>
- <name>onmaskmouseup</name>
- <type>java.lang.String</type>
- </attribute>
- <attribute>
- <name>onmove</name>
- <type>java.lang.String</type>
- </attribute>
- <attribute>
- <name>onresize</name>
- <type>java.lang.String</type>
- </attribute>
- <attribute>
- <name>onshow</name>
- <type>java.lang.String</type>
- </attribute>
- <attribute>
- <name>overlapEmbedObjects</name>
- <type>boolean</type>
- </attribute>
- <attribute>
- <description>Flag indicating whether or not this component should be rendered (during Render Response Phase), or processed on any subsequent form submit. The default value for this property is true.</description>
- <display-name>Rendered Flag</display-name>
- <icon/>
- <name>rendered</name>
- <type>boolean</type>
- </attribute>
- <attribute>
- <name>resizeable</name>
- <type>boolean</type>
- </attribute>
- <attribute>
- <name>shadowDepth</name>
- <type>java.lang.String</type>
- </attribute>
- <attribute>
- <name>shadowOpacity</name>
- <type>java.lang.String</type>
- </attribute>
- <attribute>
- <name>show</name>
- <type>boolean</type>
- </attribute>
- <attribute>
- <name>top</name>
- <type>java.lang.String</type>
- </attribute>
- <attribute>
- <name>trimOverlayedElements</name>
- <type>boolean</type>
- </attribute>
- <attribute>
- <name>visualOptions</name>
- <type>java.lang.String</type>
- </attribute>
- <attribute>
- <name>width</name>
- <type>int</type>
- </attribute>
- <attribute>
- <name>zindex</name>
- <type>int</type>
- </attribute>
- </tag>
- <tag>
- <tag-name>tabPanel</tag-name>
- <component>
- <component-type>org.richfaces.TabPanel</component-type>
- <renderer-type>org.richfaces.TabPanel</renderer-type>
- </component>
- </tag>
- <tag>
- <tag-name>tab</tag-name>
- <component>
- <component-type>org.richfaces.TabPanelItem</component-type>
- <renderer-type>org.richfaces.Tab</renderer-type>
- </component>
- </tag>
-
- <tag>
- <tag-name>panelMenuItem</tag-name>
- <component>
- <component-type>org.richfaces.PanelMenuItem</component-type>
- <renderer-type>org.richfaces.PanelMenuItem</renderer-type>
- </component>
- <attribute>
- <description>MethodExpression representing the application action to invoke when this component is activated by the user. The expression must evaluate to a public method that takes no parameters, and returns an Object (the toString() of which is called to derive the logical outcome) which is passed to the NavigationHandler for this application.</description>
- <display-name>Application Action</display-name>
- <icon/>
- <name>action</name>
- <type>javax.faces.el.MethodBinding</type>
- </attribute>
- <attribute>
- <description>MethodExpression representing the application action to invoke when this component is activated by the user. The expression must evaluate to a public method that takes no parameters, and returns an Object (the toString() of which is called to derive the logical outcome) which is passed to the NavigationHandler for this application.</description>
- <display-name>Application Action</display-name>
- <icon/>
- <name>actionExpression</name>
- <type>javax.el.MethodExpression</type>
- </attribute>
- <attribute>
- <description><p> MethodExpression representing an action listener method that will be notified when this component is activated by the user. The expression must evaluate to a public method that takes an ActionEvent parameter, with a return type of void, <span class="changed_added_2_0">or to a public method that takes no arguments with a return type of void. In the latter case, the method has no way of easily knowing where the event came from, but this can be useful in cases where a notification is needed that "some action happened".</span> </p></description>
- <display-name>Action Listener</display-name>
- <icon/>
- <name>actionListener</name>
- <type>javax.faces.el.MethodBinding</type>
- </attribute>
- <attribute>
- <description></description>
- <name>icon</name>
- <type>java.lang.String</type>
- </attribute>
- <attribute>
- <description></description>
- <name>mode</name>
- <type>org.richfaces.PanelMenuMode</type>
- </attribute>
- <attribute>
- <description></description>
- <name>label</name>
- <type>java.lang.String</type>
- </attribute>
- <attribute>
- <description></description>
- <name>name</name>
- <type>java.lang.String</type>
- </attribute>
- <attribute>
- <description></description>
- <name>disabled</name>
- <type>boolean</type>
- </attribute>
- <attribute>
- <description></description>
- <name>bypassUpdates</name>
- <type>boolean</type>
- </attribute>
- <attribute>
- <description></description>
- <name>disableImplicitRender</name>
- <type>boolean</type>
- </attribute>
- <attribute>
- <description></description>
- <name>data</name>
- <type>java.lang.Object</type>
- </attribute>
- <attribute>
- <description></description>
- <name>status</name>
- <type>java.lang.String</type>
- </attribute>
- <attribute>
- <description></description>
- <name>execute</name>
- <type>java.lang.Object</type>
- </attribute>
- <attribute>
- <description></description>
- <name>render</name>
- <type>java.lang.Object</type>
- </attribute>
- <attribute>
- <description></description>
- <name>id</name>
- <type>java.lang.String</type>
- </attribute>
- <attribute>
- <description></description>
- <name>binding</name>
- <type>javax.faces.component.UIComponent</type>
- </attribute>
- <attribute>
- <description></description>
- <name>rendered</name>
- <type>boolean</type>
- </attribute>
- <attribute>
- <description></description>
- <name>disabledClass</name>
- <type>java.lang.String</type>
- </attribute>
- <attribute>
- <description></description>
- <name>hoverClass</name>
- <type>java.lang.String</type>
- </attribute>
- <attribute>
- <description></description>
- <name>iconLeftClass</name>
- <type>java.lang.String</type>
- </attribute>
- <attribute>
- <description></description>
- <name>iconLeftDisabled</name>
- <type>java.lang.String</type>
- </attribute>
- <attribute>
- <description></description>
- <name>iconRightClass</name>
- <type>java.lang.String</type>
- </attribute>
- <attribute>
- <description></description>
- <name>iconRightDisabled</name>
- <type>java.lang.String</type>
- </attribute>
- <attribute>
- <description></description>
- <name>style</name>
- <type>java.lang.String</type>
- </attribute>
- <attribute>
- <description></description>
- <name>styleClass</name>
- <type>java.lang.String</type>
- </attribute>
- <attribute>
- <description></description>
- <name>onbeforedomupdate</name>
- <type>java.lang.String</type>
- </attribute>
- <attribute>
- <description></description>
- <name>oncomplete</name>
- <type>java.lang.String</type>
- </attribute>
- <attribute>
- <description></description>
- <name>onclick</name>
- <type>java.lang.String</type>
- </attribute>
- <attribute>
- <description></description>
- <name>ondblclick</name>
- <type>java.lang.String</type>
- </attribute>
- <attribute>
- <description></description>
- <name>onmousedown</name>
- <type>java.lang.String</type>
- </attribute>
- <attribute>
- <description></description>
- <name>onmousemove</name>
- <type>java.lang.String</type>
- </attribute>
- <attribute>
- <description></description>
- <name>onmouseout</name>
- <type>java.lang.String</type>
- </attribute>
- <attribute>
- <description></description>
- <name>onmouseover</name>
- <type>java.lang.String</type>
- </attribute>
- <attribute>
- <description></description>
- <name>onmouseup</name>
- <type>java.lang.String</type>
- </attribute>
- <attribute>
- <description></description>
- <name>onunselect</name>
- <type>java.lang.String</type>
- </attribute>
- <attribute>
- <description></description>
- <name>onselect</name>
- <type>java.lang.String</type>
- </attribute>
- <attribute>
- <description></description>
- <name>onbeforeselect</name>
- <type>java.lang.String</type>
- </attribute>
-
- </tag>
- <tag>
- <tag-name>panelMenuGroup</tag-name>
- <component>
- <component-type>org.richfaces.PanelMenuGroup</component-type>
- <renderer-type>org.richfaces.PanelMenuGroup</renderer-type>
-
- </component>
- <attribute>
- <description>MethodExpression representing the application action to invoke when this component is activated by the user. The expression must evaluate to a public method that takes no parameters, and returns an Object (the toString() of which is called to derive the logical outcome) which is passed to the NavigationHandler for this application.</description>
- <display-name>Application Action</display-name>
- <icon/>
- <name>action</name>
- <type>javax.faces.el.MethodBinding</type>
- </attribute>
- <attribute>
- <description>MethodExpression representing the application action to invoke when this component is activated by the user. The expression must evaluate to a public method that takes no parameters, and returns an Object (the toString() of which is called to derive the logical outcome) which is passed to the NavigationHandler for this application.</description>
- <display-name>Application Action</display-name>
- <icon/>
- <name>actionExpression</name>
- <type>javax.el.MethodExpression</type>
- </attribute>
- <attribute>
- <description><p> MethodExpression representing an action listener method that will be notified when this component is activated by the user. The expression must evaluate to a public method that takes an ActionEvent parameter, with a return type of void, <span class="changed_added_2_0">or to a public method that takes no arguments with a return type of void. In the latter case, the method has no way of easily knowing where the event came from, but this can be useful in cases where a notification is needed that "some action happened".</span> </p></description>
- <display-name>Action Listener</display-name>
- <icon/>
- <name>actionListener</name>
- <type>javax.faces.el.MethodBinding</type>
- </attribute>
- <attribute>
- <description></description>
- <name>expanded</name>
- <type>boolean</type>
- </attribute>
- <attribute>
- <description></description>
- <name>expandSingle</name>
- <type>boolean</type>
- </attribute>
- <attribute>
- <description></description>
- <name>collapseEvent</name>
- <type>java.lang.String</type>
- </attribute>
- <attribute>
- <description></description>
- <name>expandEvent</name>
- <type>java.lang.String</type>
- </attribute>
- <attribute>
- <description></description>
- <name>bubbleSelection</name>
- <type>boolean</type>
- </attribute>
- <attribute>
- <description></description>
- <name>iconLeftCollapsed</name>
- <type>java.lang.String</type>
- </attribute>
- <attribute>
- <description></description>
- <name>iconLeftExpanded</name>
- <type>java.lang.String</type>
- </attribute>
- <attribute>
- <description></description>
- <name>iconRightCollapsed</name>
- <type>java.lang.String</type>
- </attribute>
- <attribute>
- <description></description>
- <name>iconRightExpanded</name>
- <type>java.lang.String</type>
- </attribute>
- <attribute>
- <description></description>
- <name>changeExpandListener</name>
- <type>java.lang.String</type>
- </attribute>
- <attribute>
- <description></description>
- <name>icon</name>
- <type>java.lang.String</type>
- </attribute>
- <attribute>
- <description></description>
- <name>mode</name>
- <type>org.richfaces.PanelMenuMode</type>
- </attribute>
- <attribute>
- <description></description>
- <name>label</name>
- <type>java.lang.String</type>
- </attribute>
- <attribute>
- <description></description>
- <name>name</name>
- <type>java.lang.String</type>
- </attribute>
- <attribute>
- <description></description>
- <name>disabled</name>
- <type>boolean</type>
- </attribute>
- <attribute>
- <description></description>
- <name>bypassUpdates</name>
- <type>boolean</type>
- </attribute>
- <attribute>
- <description></description>
- <name>disableImplicitRender</name>
- <type>boolean</type>
- </attribute>
- <attribute>
- <description></description>
- <name>data</name>
- <type>java.lang.Object</type>
- </attribute>
- <attribute>
- <description></description>
- <name>status</name>
- <type>java.lang.String</type>
- </attribute>
- <attribute>
- <description></description>
- <name>execute</name>
- <type>java.lang.Object</type>
- </attribute>
- <attribute>
- <description></description>
- <name>render</name>
- <type>java.lang.Object</type>
- </attribute>
- <attribute>
- <description></description>
- <name>id</name>
- <type>java.lang.String</type>
- </attribute>
- <attribute>
- <description></description>
- <name>binding</name>
- <type>javax.faces.component.UIComponent</type>
- </attribute>
- <attribute>
- <description></description>
- <name>rendered</name>
- <type>boolean</type>
- </attribute>
- <attribute>
- <description></description>
- <name>oncollapse</name>
- <type>java.lang.String</type>
- </attribute>
- <attribute>
- <description></description>
- <name>onexpand</name>
- <type>java.lang.String</type>
- </attribute>
- <attribute>
- <description></description>
- <name>onswitch</name>
- <type>java.lang.String</type>
- </attribute>
- <attribute>
- <description></description>
- <name>onbeforecollapse</name>
- <type>java.lang.String</type>
- </attribute>
- <attribute>
- <description></description>
- <name>onbeforeexpand</name>
- <type>java.lang.String</type>
- </attribute>
- <attribute>
- <description></description>
- <name>onbeforeswitch</name>
- <type>java.lang.String</type>
- </attribute>
-
- </tag>
- <tag>
- <tag-name>panelMenu</tag-name>
- <component>
- <component-type>org.richfaces.PanelMenu</component-type>
- <renderer-type>org.richfaces.PanelMenu</renderer-type>
- <handler-class>org.richfaces.view.facelets.html.PanelMenuTagHandler</handler-class>
- </component>
- <attribute>
- <description>MethodExpression representing the application action to invoke when this component is activated by the user. The expression must evaluate to a public method that takes no parameters, and returns an Object (the toString() of which is called to derive the logical outcome) which is passed to the NavigationHandler for this application.</description>
- <display-name>Application Action</display-name>
- <icon/>
- <name>action</name>
- <type>javax.faces.el.MethodBinding</type>
- </attribute>
- <attribute>
- <description>MethodExpression representing the application action to invoke when this component is activated by the user. The expression must evaluate to a public method that takes no parameters, and returns an Object (the toString() of which is called to derive the logical outcome) which is passed to the NavigationHandler for this application.</description>
- <display-name>Application Action</display-name>
- <icon/>
- <name>actionExpression</name>
- <type>javax.el.MethodExpression</type>
- </attribute>
- <attribute>
- <description><p> MethodExpression representing an action listener method that will be notified when this component is activated by the user. The expression must evaluate to a public method that takes an ActionEvent parameter, with a return type of void, <span class="changed_added_2_0">or to a public method that takes no arguments with a return type of void. In the latter case, the method has no way of easily knowing where the event came from, but this can be useful in cases where a notification is needed that "some action happened".</span> </p></description>
- <display-name>Action Listener</display-name>
- <icon/>
- <name>actionListener</name>
- <type>javax.faces.el.MethodBinding</type>
- </attribute>
- <attribute>
- <description></description>
- <name>disabled</name>
- <type>boolean</type>
- </attribute>
- <attribute>
- <description></description>
- <name>expandEvent</name>
- <type>java.lang.String</type>
- </attribute>
- <attribute>
- <description></description>
- <name>collapseEvent</name>
- <type>java.lang.String</type>
- </attribute>
- <attribute>
- <description></description>
- <name>groupMode</name>
- <type>org.richfaces.PanelMenuMode</type>
- </attribute>
- <attribute>
- <description></description>
- <name>expandSingle</name>
- <type>boolean</type>
- </attribute>
- <attribute>
- <description></description>
- <name>itemMode</name>
- <type>org.richfaces.PanelMenuMode</type>
- </attribute>
- <attribute>
- <description></description>
- <name>bubbleSelection</name>
- <type>boolean</type>
- </attribute>
- <attribute>
- <description></description>
- <name>activeItem</name>
- <type>java.lang.String</type>
- </attribute>
- <attribute>
- <description></description>
- <name>itemChangeListener</name>
- <type>java.lang.String</type>
- </attribute>
- <attribute>
- <description></description>
- <name>bypassUpdates</name>
- <type>boolean</type>
- </attribute>
- <attribute>
- <description></description>
- <name>disableImplicitRender</name>
- <type>boolean</type>
- </attribute>
- <attribute>
- <description></description>
- <name>data</name>
- <type>java.lang.Object</type>
- </attribute>
- <attribute>
- <description></description>
- <name>status</name>
- <type>java.lang.String</type>
- </attribute>
- <attribute>
- <description></description>
- <name>execute</name>
- <type>java.lang.Object</type>
- </attribute>
- <attribute>
- <description></description>
- <name>render</name>
- <type>java.lang.Object</type>
- </attribute>
- <attribute>
- <description></description>
- <name>id</name>
- <type>java.lang.String</type>
- </attribute>
- <attribute>
- <description></description>
- <name>binding</name>
- <type>javax.faces.component.UIComponent</type>
- </attribute>
- <attribute>
- <description></description>
- <name>rendered</name>
- <type>boolean</type>
- </attribute>
- <attribute>
- <description></description>
- <name>style</name>
- <type>java.lang.String</type>
- </attribute>
- <attribute>
- <description></description>
- <name>styleClass</name>
- <type>java.lang.String</type>
- </attribute>
- <attribute>
- <description></description>
- <name>width</name>
- <type>java.lang.String</type>
- </attribute>
- <attribute>
- <description></description>
- <name>itemClass</name>
- <type>java.lang.String</type>
- </attribute>
- <attribute>
- <description></description>
- <name>itemDisableClass</name>
- <type>java.lang.String</type>
- </attribute>
- <attribute>
- <description></description>
- <name>itemIconLeft</name>
- <type>java.lang.String</type>
- </attribute>
- <attribute>
- <description></description>
- <name>itemIconRight</name>
- <type>java.lang.String</type>
- </attribute>
- <attribute>
- <description></description>
- <name>itemDisableIconLeft</name>
- <type>java.lang.String</type>
- </attribute>
- <attribute>
- <description></description>
- <name>itemDisableIconRight</name>
- <type>java.lang.String</type>
- </attribute>
- <attribute>
- <description></description>
- <name>topItemClass</name>
- <type>java.lang.String</type>
- </attribute>
- <attribute>
- <description></description>
- <name>topItemDisableClass</name>
- <type>java.lang.String</type>
- </attribute>
- <attribute>
- <description></description>
- <name>topItemIconLeft</name>
- <type>java.lang.String</type>
- </attribute>
- <attribute>
- <description></description>
- <name>topItemIconRight</name>
- <type>java.lang.String</type>
- </attribute>
- <attribute>
- <description></description>
- <name>topItemDisableIconLeft</name>
- <type>java.lang.String</type>
- </attribute>
- <attribute>
- <description></description>
- <name>topItemDisableIconRight</name>
- <type>java.lang.String</type>
- </attribute>
- <attribute>
- <description></description>
- <name>groupClass</name>
- <type>java.lang.String</type>
- </attribute>
- <attribute>
- <description></description>
- <name>groupDisableClass</name>
- <type>java.lang.String</type>
- </attribute>
- <attribute>
- <description></description>
- <name>groupExpandIconLeft</name>
- <type>java.lang.String</type>
- </attribute>
- <attribute>
- <description></description>
- <name>groupExpandIconRight</name>
- <type>java.lang.String</type>
- </attribute>
- <attribute>
- <description></description>
- <name>groupCollapseIconLeft</name>
- <type>java.lang.String</type>
- </attribute>
- <attribute>
- <description></description>
- <name>groupCollapseIconRight</name>
- <type>java.lang.String</type>
- </attribute>
- <attribute>
- <description></description>
- <name>groupDisableIconLeft</name>
- <type>java.lang.String</type>
- </attribute>
- <attribute>
- <description></description>
- <name>groupDisableIconRight</name>
- <type>java.lang.String</type>
- </attribute>
- <attribute>
- <description></description>
- <name>topGroupClass</name>
- <type>java.lang.String</type>
- </attribute>
- <attribute>
- <description></description>
- <name>topGroupDisableClass</name>
- <type>java.lang.String</type>
- </attribute>
- <attribute>
- <description></description>
- <name>topGroupExpandIconLeft</name>
- <type>java.lang.String</type>
- </attribute>
- <attribute>
- <description></description>
- <name>topGroupExpandIconRight</name>
- <type>java.lang.String</type>
- </attribute>
- <attribute>
- <description></description>
- <name>topGroupCollapseIconLeft</name>
- <type>java.lang.String</type>
- </attribute>
- <attribute>
- <description></description>
- <name>topGroupCollapseIconRight</name>
- <type>java.lang.String</type>
- </attribute>
- <attribute>
- <description></description>
- <name>topGroupDisableIconLeft</name>
- <type>java.lang.String</type>
- </attribute>
- <attribute>
- <description></description>
- <name>topGroupDisableIconRight</name>
- <type>java.lang.String</type>
- </attribute>
- <attribute>
- <description></description>
- <name>onclick</name>
- <type>java.lang.String</type>
- </attribute>
- <attribute>
- <description></description>
- <name>ondblclick</name>
- <type>java.lang.String</type>
- </attribute>
- <attribute>
- <description></description>
- <name>onmousedown</name>
- <type>java.lang.String</type>
- </attribute>
- <attribute>
- <description></description>
- <name>onmousemove</name>
- <type>java.lang.String</type>
- </attribute>
- <attribute>
- <description></description>
- <name>onmouseout</name>
- <type>java.lang.String</type>
- </attribute>
- <attribute>
- <description></description>
- <name>onmouseover</name>
- <type>java.lang.String</type>
- </attribute>
- <attribute>
- <description></description>
- <name>onmouseup</name>
- <type>java.lang.String</type>
- </attribute>
-
- </tag>
-
- <tag>
- <tag-name>tooltip</tag-name>
- <component>
- <component-type>org.richfaces.Tooltip</component-type>
- <renderer-type>org.richfaces.Tooltip</renderer-type>
-
- </component>
- <attribute>
- <description></description>
- <name>for_</name>
- <type>java.lang.String</type>
- </attribute>
- <attribute>
- <description></description>
- <name>value</name>
- <type>java.lang.String</type>
- </attribute>
- <attribute>
- <description></description>
- <name>layout</name>
- <type>org.richfaces.TooltipLayout</type>
- </attribute>
- <attribute>
- <description></description>
- <name>attached</name>
- <type>boolean</type>
- </attribute>
- <attribute>
- <description></description>
- <name>direction</name>
- <type>org.richfaces.TooltipDirection</type>
- </attribute>
- <attribute>
- <description></description>
- <name>disabled</name>
- <type>boolean</type>
- </attribute>
- <attribute>
- <description></description>
- <name>followMouse</name>
- <type>boolean</type>
- </attribute>
- <attribute>
- <description></description>
- <name>hideDelay</name>
- <type>int</type>
- </attribute>
- <attribute>
- <description></description>
- <name>hideEvent</name>
- <type>java.lang.String</type>
- </attribute>
- <attribute>
- <description></description>
- <name>horizontalOffset</name>
- <type>int</type>
- </attribute>
- <attribute>
- <description></description>
- <name>mode</name>
- <type>org.richfaces.TooltipMode</type>
- </attribute>
- <attribute>
- <description></description>
- <name>showDelay</name>
- <type>int</type>
- </attribute>
- <attribute>
- <description></description>
- <name>showEvent</name>
- <type>java.lang.String</type>
- </attribute>
- <attribute>
- <description></description>
- <name>verticalOffset</name>
- <type>int</type>
- </attribute>
- <attribute>
- <description></description>
- <name>id</name>
- <type>java.lang.String</type>
- </attribute>
- <attribute>
- <description></description>
- <name>binding</name>
- <type>javax.faces.component.UIComponent</type>
- </attribute>
- <attribute>
- <description></description>
- <name>rendered</name>
- <type>boolean</type>
- </attribute>
- <attribute>
- <description></description>
- <name>bypassUpdates</name>
- <type>boolean</type>
- </attribute>
- <attribute>
- <description></description>
- <name>disableImplicitRender</name>
- <type>boolean</type>
- </attribute>
- <attribute>
- <description></description>
- <name>data</name>
- <type>java.lang.Object</type>
- </attribute>
- <attribute>
- <description></description>
- <name>status</name>
- <type>java.lang.String</type>
- </attribute>
- <attribute>
- <description></description>
- <name>execute</name>
- <type>java.lang.Object</type>
- </attribute>
- <attribute>
- <description></description>
- <name>render</name>
- <type>java.lang.Object</type>
- </attribute>
- <attribute>
- <description></description>
- <name>style</name>
- <type>java.lang.String</type>
- </attribute>
- <attribute>
- <description></description>
- <name>styleClass</name>
- <type>java.lang.String</type>
- </attribute>
- <attribute>
- <description></description>
- <name>zindex</name>
- <type>int</type>
- </attribute>
- <attribute>
- <description></description>
- <name>onclick</name>
- <type>java.lang.String</type>
- </attribute>
- <attribute>
- <description></description>
- <name>ondblclick</name>
- <type>java.lang.String</type>
- </attribute>
- <attribute>
- <description></description>
- <name>onmousedown</name>
- <type>java.lang.String</type>
- </attribute>
- <attribute>
- <description></description>
- <name>onmousemove</name>
- <type>java.lang.String</type>
- </attribute>
- <attribute>
- <description></description>
- <name>onmouseout</name>
- <type>java.lang.String</type>
- </attribute>
- <attribute>
- <description></description>
- <name>onmouseover</name>
- <type>java.lang.String</type>
- </attribute>
- <attribute>
- <description></description>
- <name>onmouseup</name>
- <type>java.lang.String</type>
- </attribute>
- <attribute>
- <description></description>
- <name>onhide</name>
- <type>java.lang.String</type>
- </attribute>
- <attribute>
- <description></description>
- <name>onshow</name>
- <type>java.lang.String</type>
- </attribute>
- <attribute>
- <description></description>
- <name>onbeforehide</name>
- <type>java.lang.String</type>
- </attribute>
- <attribute>
- <description></description>
- <name>onbeforeshow</name>
- <type>java.lang.String</type>
- </attribute>
-
- </tag>
-
- <tag>
- <tag-name>collapsiblePanel</tag-name>
- <component>
- <component-type>org.richfaces.CollapsiblePanel</component-type>
- <renderer-type>org.richfaces.CollapsiblePanel</renderer-type>
- <handler-class>org.richfaces.view.facelets.html.CollapsiblePanelTagHandler</handler-class>
- </component>
- <attribute>
- <description></description>
- <name>switchType</name>
- <type>org.richfaces.component.SwitchType</type>
- </attribute>
- <attribute>
- <description></description>
- <name>expanded</name>
- <type>boolean</type>
- </attribute>
- <attribute>
- <description></description>
- <name>header</name>
- <type>java.lang.String</type>
- </attribute>
- <attribute>
- <description></description>
- <name>bypassUpdates</name>
- <type>boolean</type>
- </attribute>
- <attribute>
- <description></description>
- <name>disableImplicitRender</name>
- <type>boolean</type>
- </attribute>
- <attribute>
- <description></description>
- <name>data</name>
- <type>java.lang.Object</type>
- </attribute>
- <attribute>
- <description></description>
- <name>status</name>
- <type>java.lang.String</type>
- </attribute>
- <attribute>
- <description></description>
- <name>execute</name>
- <type>java.lang.Object</type>
- </attribute>
- <attribute>
- <description></description>
- <name>render</name>
- <type>java.lang.Object</type>
- </attribute>
- <attribute>
- <description></description>
- <name>id</name>
- <type>java.lang.String</type>
- </attribute>
- <attribute>
- <description></description>
- <name>binding</name>
- <type>javax.faces.component.UIComponent</type>
- </attribute>
- <attribute>
- <description></description>
- <name>rendered</name>
- <type>boolean</type>
- </attribute>
- <attribute>
- <description></description>
- <name>immediate</name>
- <type>boolean</type>
- </attribute>
- <attribute>
- <description></description>
- <name>toggleListener</name>
- <type>javax.el.MethodExpression</type>
- </attribute>
- <attribute>
- <description></description>
- <name>bodyClass</name>
- <type>java.lang.String</type>
- </attribute>
- <attribute>
- <description></description>
- <name>headerClass</name>
- <type>java.lang.String</type>
- </attribute>
- <attribute>
- <description></description>
- <name>headerControlClass</name>
- <type>java.lang.String</type>
- </attribute>
- <attribute>
- <description></description>
- <name>oncomplete</name>
- <type>java.lang.String</type>
- </attribute>
- <attribute>
- <description></description>
- <name>onbeforedomupdate</name>
- <type>java.lang.String</type>
- </attribute>
- <attribute>
- <description></description>
- <name>onswitch</name>
- <type>java.lang.String</type>
- </attribute>
- <attribute>
- <description></description>
- <name>onbeforeswitch</name>
- <type>java.lang.String</type>
- </attribute>
- <attribute>
- <description></description>
- <name>lang</name>
- <type>java.lang.String</type>
- </attribute>
- <attribute>
- <description></description>
- <name>title</name>
- <type>java.lang.String</type>
- </attribute>
- <attribute>
- <description></description>
- <name>style</name>
- <type>java.lang.String</type>
- </attribute>
- <attribute>
- <description></description>
- <name>styleClass</name>
- <type>java.lang.String</type>
- </attribute>
- <attribute>
- <description></description>
- <name>dir</name>
- <type>java.lang.String</type>
- </attribute>
- <attribute>
- <description></description>
- <name>onclick</name>
- <type>java.lang.String</type>
- </attribute>
- <attribute>
- <description></description>
- <name>ondblclick</name>
- <type>java.lang.String</type>
- </attribute>
- <attribute>
- <description></description>
- <name>onmousedown</name>
- <type>java.lang.String</type>
- </attribute>
- <attribute>
- <description></description>
- <name>onmousemove</name>
- <type>java.lang.String</type>
- </attribute>
- <attribute>
- <description></description>
- <name>onmouseout</name>
- <type>java.lang.String</type>
- </attribute>
- <attribute>
- <description></description>
- <name>onmouseover</name>
- <type>java.lang.String</type>
- </attribute>
- <attribute>
- <description></description>
- <name>onmouseup</name>
- <type>java.lang.String</type>
- </attribute>
-
- </tag>
- <tag>
- <description>
- Register a PanelToggleListener instance on the UIComponent
- associated with the closest parent UIComponent custom
- action.
+<facelet-taglib id="output" version="2.0"
+ xmlns="http://java.sun.com/xml/ns/javaee"
+ xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://java.sun.com/xml/ns/javaee http://java.sun.com/xml/ns/javaee/web-facelettaglibrary_2_0.xsd">
+ <namespace>http://richfaces.org/output</namespace>
+ <tag>
+ <tag-name>dropDownMenu</tag-name>
+ <component>
+ <component-type>org.richfaces.DropDownMenu</component-type>
+ <renderer-type>org.richfaces.DropDownMenuRenderer</renderer-type>
+ <handler-class/>
+ </component>
+ <attribute>
+ <description>The value binding expression used to wire up this component to a component property of a JavaBean class</description>
+ <name>binding</name>
+ <type>javax.faces.component.UIComponent</type>
+ </attribute>
+ <attribute>
+ <description>Direction indication for text that does not inherit directionality. Valid values are "LTR" (left-to-right) and "RTL" (right-to-left).</description>
+ <display-name>Direction</display-name>
+ <name>dir</name>
+ <type>java.lang.String</type>
+ </attribute>
+ <attribute>
+ <name>disabled</name>
+ <type>boolean</type>
+ </attribute>
+ <attribute>
+ <name>hideDelay</name>
+ <type>int</type>
+ </attribute>
+ <attribute>
+ <description>The component identifier for this component. This value must be unique within the closest parent component that is a naming container.</description>
+ <display-name>Component Identifier</display-name>
+ <name>id</name>
+ <type>java.lang.String</type>
+ </attribute>
+ <attribute>
+ <description>Code describing the language used in the generated markup for this component.</description>
+ <display-name>Language Code</display-name>
+ <name>lang</name>
+ <type>java.lang.String</type>
+ </attribute>
+ <attribute>
+ <name>mode</name>
+ <type>java.lang.String</type>
+ </attribute>
+ <attribute>
+ <description>Javascript code executed when a pointer button is clicked over this element.</description>
+ <display-name>Button Click Script</display-name>
+ <name>onclick</name>
+ <type>java.lang.String</type>
+ </attribute>
+ <attribute>
+ <description>Javascript code executed when a pointer button is double clicked over this element.</description>
+ <display-name>Double Click Script</display-name>
+ <name>ondblclick</name>
+ <type>java.lang.String</type>
+ </attribute>
+ <attribute>
+ <name>ongrouphide</name>
+ <type>java.lang.String</type>
+ </attribute>
+ <attribute>
+ <name>ongroupshow</name>
+ <type>java.lang.String</type>
+ </attribute>
+ <attribute>
+ <name>onhide</name>
+ <type>java.lang.String</type>
+ </attribute>
+ <attribute>
+ <name>onitemclick</name>
+ <type>java.lang.String</type>
+ </attribute>
+ <attribute>
+ <description>Javascript code executed when a key is pressed down over this element.</description>
+ <display-name>Key Down Script</display-name>
+ <name>onkeydown</name>
+ <type>java.lang.String</type>
+ </attribute>
+ <attribute>
+ <description>Javascript code executed when a key is pressed and released over this element.</description>
+ <display-name>Key Press Script</display-name>
+ <name>onkeypress</name>
+ <type>java.lang.String</type>
+ </attribute>
+ <attribute>
+ <description>Javascript code executed when a key is released over this element.</description>
+ <display-name>Key Up Script</display-name>
+ <name>onkeyup</name>
+ <type>java.lang.String</type>
+ </attribute>
+ <attribute>
+ <description>Javascript code executed when a pointer button is pressed down over this element.</description>
+ <display-name>Mouse Down Script</display-name>
+ <name>onmousedown</name>
+ <type>java.lang.String</type>
+ </attribute>
+ <attribute>
+ <description>Javascript code executed when a pointer button is moved within this element.</description>
+ <display-name>Mouse Move Script</display-name>
+ <name>onmousemove</name>
+ <type>java.lang.String</type>
+ </attribute>
+ <attribute>
+ <description>Javascript code executed when a pointer button is moved away from this element.</description>
+ <display-name>Mouse Out Script</display-name>
+ <name>onmouseout</name>
+ <type>java.lang.String</type>
+ </attribute>
+ <attribute>
+ <description>Javascript code executed when a pointer button is moved onto this element.</description>
+ <display-name>Mouse Over Script</display-name>
+ <name>onmouseover</name>
+ <type>java.lang.String</type>
+ </attribute>
+ <attribute>
+ <description>Javascript code executed when a pointer button is released over this element.</description>
+ <display-name>Mouse Up Script</display-name>
+ <name>onmouseup</name>
+ <type>java.lang.String</type>
+ </attribute>
+ <attribute>
+ <name>onshow</name>
+ <type>java.lang.String</type>
+ </attribute>
+ <attribute>
+ <name>popupWith</name>
+ <type>int</type>
+ </attribute>
+ <attribute>
+ <description>Flag indicating whether or not this component should be rendered (during Render Response Phase), or processed on any subsequent form submit. The default value for this property is true.</description>
+ <display-name>Rendered Flag</display-name>
+ <name>rendered</name>
+ <type>boolean</type>
+ </attribute>
+ <attribute>
+ <name>showDelay</name>
+ <type>int</type>
+ </attribute>
+ <attribute>
+ <name>showEvent</name>
+ <type>java.lang.String</type>
+ </attribute>
+ <attribute>
+ <description>CSS style(s) to be applied when this component is rendered.</description>
+ <display-name>CSS Styles</display-name>
+ <name>style</name>
+ <type>java.lang.String</type>
+ </attribute>
+ <attribute>
+ <description>Space-separated list of CSS style class(es) to be applied when this element is rendered. This value must be passed through as the "class" attribute on generated markup.</description>
+ <display-name>CSS Style Classes</display-name>
+ <name>styleClass</name>
+ <type>java.lang.String</type>
+ </attribute>
+ <attribute>
+ <description>Advisory title information about markup elements generated for this component.</description>
+ <display-name>Advisory Title</display-name>
+ <name>title</name>
+ <type>java.lang.String</type>
+ </attribute>
+ </tag>
+ <tag>
+ <tag-name>menuSeparator</tag-name>
+ <component>
+ <component-type>org.richfaces.MenuSeparator</component-type>
+ <renderer-type>org.richfaces.MenuSeparatorRenderer</renderer-type>
+ <handler-class/>
+ </component>
+ <attribute>
+ <description>The value binding expression used to wire up this component to a component property of a JavaBean class</description>
+ <name>binding</name>
+ <type>javax.faces.component.UIComponent</type>
+ </attribute>
+ <attribute>
+ <description>The component identifier for this component. This value must be unique within the closest parent component that is a naming container.</description>
+ <display-name>Component Identifier</display-name>
+ <name>id</name>
+ <type>java.lang.String</type>
+ </attribute>
+ <attribute>
+ <description>Flag indicating whether or not this component should be rendered (during Render Response Phase), or processed on any subsequent form submit. The default value for this property is true.</description>
+ <display-name>Rendered Flag</display-name>
+ <name>rendered</name>
+ <type>boolean</type>
+ </attribute>
+ </tag>
+ <tag>
+ <tag-name>menuGroup</tag-name>
+ <component>
+ <component-type>org.richfaces.MenuGroup</component-type>
+ <renderer-type>org.richfaces.MenuGroupRenderer</renderer-type>
+ <handler-class/>
+ </component>
+ <attribute>
+ <description>The value binding expression used to wire up this component to a component property of a JavaBean class</description>
+ <name>binding</name>
+ <type>javax.faces.component.UIComponent</type>
+ </attribute>
+ <attribute>
+ <description>Converter instance registered with this component.</description>
+ <display-name>Converter</display-name>
+ <name>converter</name>
+ <type>javax.faces.convert.Converter</type>
+ </attribute>
+ <attribute>
+ <description>Direction indication for text that does not inherit directionality. Valid values are "LTR" (left-to-right) and "RTL" (right-to-left).</description>
+ <display-name>Direction</display-name>
+ <name>dir</name>
+ <type>java.lang.String</type>
+ </attribute>
+ <attribute>
+ <name>disabled</name>
+ <type>boolean</type>
+ </attribute>
+ <attribute>
+ <name>icon</name>
+ <type>java.lang.String</type>
+ </attribute>
+ <attribute>
+ <name>iconDisabled</name>
+ <type>java.lang.String</type>
+ </attribute>
+ <attribute>
+ <name>iconFolder</name>
+ <type>java.lang.String</type>
+ </attribute>
+ <attribute>
+ <name>iconFolderDisabled</name>
+ <type>java.lang.String</type>
+ </attribute>
+ <attribute>
+ <description>The component identifier for this component. This value must be unique within the closest parent component that is a naming container.</description>
+ <display-name>Component Identifier</display-name>
+ <name>id</name>
+ <type>java.lang.String</type>
+ </attribute>
+ <attribute>
+ <description>Code describing the language used in the generated markup for this component.</description>
+ <display-name>Language Code</display-name>
+ <name>lang</name>
+ <type>java.lang.String</type>
+ </attribute>
+ <attribute>
+ <description>Javascript code executed when a pointer button is clicked over this element.</description>
+ <display-name>Button Click Script</display-name>
+ <name>onclick</name>
+ <type>java.lang.String</type>
+ </attribute>
+ <attribute>
+ <description>Javascript code executed when a pointer button is double clicked over this element.</description>
+ <display-name>Double Click Script</display-name>
+ <name>ondblclick</name>
+ <type>java.lang.String</type>
+ </attribute>
+ <attribute>
+ <name>onhide</name>
+ <type>java.lang.String</type>
+ </attribute>
+ <attribute>
+ <description>Javascript code executed when a key is pressed down over this element.</description>
+ <display-name>Key Down Script</display-name>
+ <name>onkeydown</name>
+ <type>java.lang.String</type>
+ </attribute>
+ <attribute>
+ <description>Javascript code executed when a key is pressed and released over this element.</description>
+ <display-name>Key Press Script</display-name>
+ <name>onkeypress</name>
+ <type>java.lang.String</type>
+ </attribute>
+ <attribute>
+ <description>Javascript code executed when a key is released over this element.</description>
+ <display-name>Key Up Script</display-name>
+ <name>onkeyup</name>
+ <type>java.lang.String</type>
+ </attribute>
+ <attribute>
+ <description>Javascript code executed when a pointer button is pressed down over this element.</description>
+ <display-name>Mouse Down Script</display-name>
+ <name>onmousedown</name>
+ <type>java.lang.String</type>
+ </attribute>
+ <attribute>
+ <description>Javascript code executed when a pointer button is moved within this element.</description>
+ <display-name>Mouse Move Script</display-name>
+ <name>onmousemove</name>
+ <type>java.lang.String</type>
+ </attribute>
+ <attribute>
+ <description>Javascript code executed when a pointer button is moved away from this element.</description>
+ <display-name>Mouse Out Script</display-name>
+ <name>onmouseout</name>
+ <type>java.lang.String</type>
+ </attribute>
+ <attribute>
+ <description>Javascript code executed when a pointer button is moved onto this element.</description>
+ <display-name>Mouse Over Script</display-name>
+ <name>onmouseover</name>
+ <type>java.lang.String</type>
+ </attribute>
+ <attribute>
+ <description>Javascript code executed when a pointer button is released over this element.</description>
+ <display-name>Mouse Up Script</display-name>
+ <name>onmouseup</name>
+ <type>java.lang.String</type>
+ </attribute>
+ <attribute>
+ <name>onshow</name>
+ <type>java.lang.String</type>
+ </attribute>
+ <attribute>
+ <description>Flag indicating whether or not this component should be rendered (during Render Response Phase), or processed on any subsequent form submit. The default value for this property is true.</description>
+ <display-name>Rendered Flag</display-name>
+ <name>rendered</name>
+ <type>boolean</type>
+ </attribute>
+ <attribute>
+ <description>CSS style(s) to be applied when this component is rendered.</description>
+ <display-name>CSS Styles</display-name>
+ <name>style</name>
+ <type>java.lang.String</type>
+ </attribute>
+ <attribute>
+ <description>Space-separated list of CSS style class(es) to be applied when this element is rendered. This value must be passed through as the "class" attribute on generated markup.</description>
+ <display-name>CSS Style Classes</display-name>
+ <name>styleClass</name>
+ <type>java.lang.String</type>
+ </attribute>
+ <attribute>
+ <description>Advisory title information about markup elements generated for this component.</description>
+ <display-name>Advisory Title</display-name>
+ <name>title</name>
+ <type>java.lang.String</type>
+ </attribute>
+ <attribute>
+ <description>The current value of this component.</description>
+ <display-name>Value</display-name>
+ <name>value</name>
+ <type>java.lang.Object</type>
+ </attribute>
+ </tag>
+ <tag>
+ <tag-name>menuItem</tag-name>
+ <component>
+ <component-type>org.richfaces.MenuItem</component-type>
+ <renderer-type>org.richfaces.MenuItemRenderer</renderer-type>
+ <handler-class/>
+ </component>
+ <attribute>
+ <description>MethodExpression representing the application action to invoke when this component is activated by the user. The expression must evaluate to a public method that takes no parameters, and returns an Object (the toString() of which is called to derive the logical outcome) which is passed to the NavigationHandler for this application.</description>
+ <display-name>Application Action</display-name>
+ <name>action</name>
+ <type>javax.faces.el.MethodBinding</type>
+ </attribute>
+ <attribute>
+ <description>MethodExpression representing the application action to invoke when this component is activated by the user. The expression must evaluate to a public method that takes no parameters, and returns an Object (the toString() of which is called to derive the logical outcome) which is passed to the NavigationHandler for this application.</description>
+ <display-name>Application Action</display-name>
+ <name>actionExpression</name>
+ <type>javax.el.MethodExpression</type>
+ </attribute>
+ <attribute>
+ <description><p> MethodExpression representing an action listener method that will be notified when this component is activated by the user. The expression must evaluate to a public method that takes an ActionEvent parameter, with a return type of void, <span class="changed_added_2_0">or to a public method that takes no arguments with a return type of void. In the latter case, the method has no way of easily knowing where the event came from, but this can be useful in cases where a notification is needed that "some action happened".</span> </p></description>
+ <display-name>Action Listener</display-name>
+ <name>actionListener</name>
+ <type>javax.faces.el.MethodBinding</type>
+ </attribute>
+ <attribute>
+ <description>The value binding expression used to wire up this component to a component property of a JavaBean class</description>
+ <name>binding</name>
+ <type>javax.faces.component.UIComponent</type>
+ </attribute>
+ <attribute>
+ <description>Direction indication for text that does not inherit directionality. Valid values are "LTR" (left-to-right) and "RTL" (right-to-left).</description>
+ <display-name>Direction</display-name>
+ <name>dir</name>
+ <type>java.lang.String</type>
+ </attribute>
+ <attribute>
+ <name>disabled</name>
+ <type>boolean</type>
+ </attribute>
+ <attribute>
+ <name>icon</name>
+ <type>java.lang.String</type>
+ </attribute>
+ <attribute>
+ <name>iconDisabled</name>
+ <type>java.lang.String</type>
+ </attribute>
+ <attribute>
+ <description>The component identifier for this component. This value must be unique within the closest parent component that is a naming container.</description>
+ <display-name>Component Identifier</display-name>
+ <name>id</name>
+ <type>java.lang.String</type>
+ </attribute>
+ <attribute>
+ <description>Flag indicating that, if this component is activated by the user, notifications should be delivered to interested listeners and actions immediately (that is, during Apply Request Values phase) rather than waiting until Invoke Application phase.</description>
+ <display-name>Immediate Action</display-name>
+ <name>immediate</name>
+ <type>boolean</type>
+ </attribute>
+ <attribute>
+ <name>label</name>
+ <type>java.lang.Object</type>
+ </attribute>
+ <attribute>
+ <description>Code describing the language used in the generated markup for this component.</description>
+ <display-name>Language Code</display-name>
+ <name>lang</name>
+ <type>java.lang.String</type>
+ </attribute>
+ <attribute>
+ <name>mode</name>
+ <type>java.lang.String</type>
+ </attribute>
+ <attribute>
+ <description>Javascript code executed when a pointer button is clicked over this element.</description>
+ <display-name>Button Click Script</display-name>
+ <name>onclick</name>
+ <type>java.lang.String</type>
+ </attribute>
+ <attribute>
+ <description>Javascript code executed when a pointer button is double clicked over this element.</description>
+ <display-name>Double Click Script</display-name>
+ <name>ondblclick</name>
+ <type>java.lang.String</type>
+ </attribute>
+ <attribute>
+ <description>Javascript code executed when a key is pressed down over this element.</description>
+ <display-name>Key Down Script</display-name>
+ <name>onkeydown</name>
+ <type>java.lang.String</type>
+ </attribute>
+ <attribute>
+ <description>Javascript code executed when a key is pressed and released over this element.</description>
+ <display-name>Key Press Script</display-name>
+ <name>onkeypress</name>
+ <type>java.lang.String</type>
+ </attribute>
+ <attribute>
+ <description>Javascript code executed when a key is released over this element.</description>
+ <display-name>Key Up Script</display-name>
+ <name>onkeyup</name>
+ <type>java.lang.String</type>
+ </attribute>
+ <attribute>
+ <description>Javascript code executed when a pointer button is pressed down over this element.</description>
+ <display-name>Mouse Down Script</display-name>
+ <name>onmousedown</name>
+ <type>java.lang.String</type>
+ </attribute>
+ <attribute>
+ <description>Javascript code executed when a pointer button is moved within this element.</description>
+ <display-name>Mouse Move Script</display-name>
+ <name>onmousemove</name>
+ <type>java.lang.String</type>
+ </attribute>
+ <attribute>
+ <description>Javascript code executed when a pointer button is moved away from this element.</description>
+ <display-name>Mouse Out Script</display-name>
+ <name>onmouseout</name>
+ <type>java.lang.String</type>
+ </attribute>
+ <attribute>
+ <description>Javascript code executed when a pointer button is moved onto this element.</description>
+ <display-name>Mouse Over Script</display-name>
+ <name>onmouseover</name>
+ <type>java.lang.String</type>
+ </attribute>
+ <attribute>
+ <description>Javascript code executed when a pointer button is released over this element.</description>
+ <display-name>Mouse Up Script</display-name>
+ <name>onmouseup</name>
+ <type>java.lang.String</type>
+ </attribute>
+ <attribute>
+ <description>Flag indicating whether or not this component should be rendered (during Render Response Phase), or processed on any subsequent form submit. The default value for this property is true.</description>
+ <display-name>Rendered Flag</display-name>
+ <name>rendered</name>
+ <type>boolean</type>
+ </attribute>
+ <attribute>
+ <description>CSS style(s) to be applied when this component is rendered.</description>
+ <display-name>CSS Styles</display-name>
+ <name>style</name>
+ <type>java.lang.String</type>
+ </attribute>
+ <attribute>
+ <description>Space-separated list of CSS style class(es) to be applied when this element is rendered. This value must be passed through as the "class" attribute on generated markup.</description>
+ <display-name>CSS Style Classes</display-name>
+ <name>styleClass</name>
+ <type>java.lang.String</type>
+ </attribute>
+ <attribute>
+ <description>Advisory title information about markup elements generated for this component.</description>
+ <display-name>Advisory Title</display-name>
+ <name>title</name>
+ <type>java.lang.String</type>
+ </attribute>
+ <attribute>
+ <description>The current value of this component.</description>
+ <display-name>Value</display-name>
+ <name>value</name>
+ <type>java.lang.Object</type>
+ </attribute>
+ </tag>
+ <tag>
+ <tag-name>toolbar</tag-name>
+ <component>
+ <component-type>org.richfaces.Toolbar</component-type>
+ <renderer-type>org.richfaces.ToolbarRenderer</renderer-type>
+ <handler-class/>
+ </component>
+ <attribute>
+ <description>The value binding expression used to wire up this component to a component property of a JavaBean class</description>
+ <name>binding</name>
+ <type>javax.faces.component.UIComponent</type>
+ </attribute>
+ <attribute>
+ <name>height</name>
+ <type>java.lang.String</type>
+ </attribute>
+ <attribute>
+ <description>The component identifier for this component. This value must be unique within the closest parent component that is a naming container.</description>
+ <display-name>Component Identifier</display-name>
+ <name>id</name>
+ <type>java.lang.String</type>
+ </attribute>
+ <attribute>
+ <name>itemClass</name>
+ <type>java.lang.String</type>
+ </attribute>
+ <attribute>
+ <name>itemStyle</name>
+ <type>java.lang.String</type>
+ </attribute>
+ <attribute>
+ <name>itemSeparator</name>
+ <type>java.lang.String</type>
+ </attribute>
+ <attribute>
+ <name>onitemclick</name>
+ <type>java.lang.String</type>
+ </attribute>
+ <attribute>
+ <name>onitemdblclick</name>
+ <type>java.lang.String</type>
+ </attribute>
+ <attribute>
+ <name>onitemkeydown</name>
+ <type>java.lang.String</type>
+ </attribute>
+ <attribute>
+ <name>onitemkeypress</name>
+ <type>java.lang.String</type>
+ </attribute>
+ <attribute>
+ <name>onitemkeyup</name>
+ <type>java.lang.String</type>
+ </attribute>
+ <attribute>
+ <name>onitemmousedown</name>
+ <type>java.lang.String</type>
+ </attribute>
+ <attribute>
+ <name>onitemmousemove</name>
+ <type>java.lang.String</type>
+ </attribute>
+ <attribute>
+ <name>onitemmouseout</name>
+ <type>java.lang.String</type>
+ </attribute>
+ <attribute>
+ <name>onitemmouseover</name>
+ <type>java.lang.String</type>
+ </attribute>
+ <attribute>
+ <name>onitemmouseup</name>
+ <type>java.lang.String</type>
+ </attribute>
+ <attribute>
+ <description>Flag indicating whether or not this component should be rendered (during Render Response Phase), or processed on any subsequent form submit. The default value for this property is true.</description>
+ <display-name>Rendered Flag</display-name>
+ <name>rendered</name>
+ <type>boolean</type>
+ </attribute>
+ <attribute>
+ <name>width</name>
+ <type>java.lang.String</type>
+ </attribute>
+ </tag>
+ <tag>
+ <tag-name>toolbarGroup</tag-name>
+ <component>
+ <component-type>org.richfaces.ToolbarGroup</component-type>
+ <renderer-type>org.richfaces.ToolbarGroupRenderer</renderer-type>
+ <handler-class/>
+ </component>
+ <attribute>
+ <description>The value binding expression used to wire up this component to a component property of a JavaBean class</description>
+ <name>binding</name>
+ <type>javax.faces.component.UIComponent</type>
+ </attribute>
+ <attribute>
+ <description>The component identifier for this component. This value must be unique within the closest parent component that is a naming container.</description>
+ <display-name>Component Identifier</display-name>
+ <name>id</name>
+ <type>java.lang.String</type>
+ </attribute>
+ <attribute>
+ <name>itemClass</name>
+ <type>java.lang.String</type>
+ </attribute>
+ <attribute>
+ <name>itemStyle</name>
+ <type>java.lang.String</type>
+ </attribute>
+ <attribute>
+ <name>itemSeparator</name>
+ <type>java.lang.String</type>
+ </attribute>
+ <attribute>
+ <name>location</name>
+ <type>java.lang.String</type>
+ </attribute>
+ <attribute>
+ <name>onitemclick</name>
+ <type>java.lang.String</type>
+ </attribute>
+ <attribute>
+ <name>onitemdblclick</name>
+ <type>java.lang.String</type>
+ </attribute>
+ <attribute>
+ <name>onitemkeydown</name>
+ <type>java.lang.String</type>
+ </attribute>
+ <attribute>
+ <name>onitemkeypress</name>
+ <type>java.lang.String</type>
+ </attribute>
+ <attribute>
+ <name>onitemkeyup</name>
+ <type>java.lang.String</type>
+ </attribute>
+ <attribute>
+ <name>onitemmousedown</name>
+ <type>java.lang.String</type>
+ </attribute>
+ <attribute>
+ <name>onitemmousemove</name>
+ <type>java.lang.String</type>
+ </attribute>
+ <attribute>
+ <name>onitemmouseout</name>
+ <type>java.lang.String</type>
+ </attribute>
+ <attribute>
+ <name>onitemmouseover</name>
+ <type>java.lang.String</type>
+ </attribute>
+ <attribute>
+ <name>onitemmouseup</name>
+ <type>java.lang.String</type>
+ </attribute>
+ <attribute>
+ <description>Flag indicating whether or not this component should be rendered (during Render Response Phase), or processed on any subsequent form submit. The default value for this property is true.</description>
+ <display-name>Rendered Flag</display-name>
+ <name>rendered</name>
+ <type>boolean</type>
+ </attribute>
+ </tag>
+ <tag>
+ <tag-name>toggleControl</tag-name>
+ <behavior>
+ <behavior-id>org.richfaces.component.behavior.ToggleControl</behavior-id>
+ <handler-class>org.richfaces.view.facelets.html.CustomBehaviorHandler</handler-class>
+ </behavior>
+ </tag>
+ <tag>
+ <tag-name>panel</tag-name>
+ <component>
+ <component-type>org.richfaces.Panel</component-type>
+ <renderer-type>org.richfaces.PanelRenderer</renderer-type>
+ <handler-class/>
+ </component>
+ </tag>
+ <tag>
+ <tag-name>progressBar</tag-name>
+ <component>
+ <component-type>org.richfaces.ProgressBar</component-type>
+ <renderer-type>org.richfaces.ProgressBarRenderer</renderer-type>
+ <handler-class/>
+ </component>
+ </tag>
+ <tag>
+ <tag-name>popupPanel</tag-name>
+ <component>
+ <description>JSF component class</description>
+ <component-type>org.richfaces.PopupPanel</component-type>
+ <renderer-type>org.richfaces.PopupPanelRenderer</renderer-type>
+ <handler-class/>
+ </component>
+ <attribute>
+ <name>autosized</name>
+ <type>boolean</type>
+ </attribute>
+ <attribute>
+ <description>The value binding expression used to wire up this component to a component property of a JavaBean class</description>
+ <name>binding</name>
+ <type>javax.faces.component.UIComponent</type>
+ </attribute>
+ <attribute>
+ <name>controlsClass</name>
+ <type>java.lang.String</type>
+ </attribute>
+ <attribute>
+ <name>domElementAttachment</name>
+ <type>java.lang.String</type>
+ </attribute>
+ <attribute>
+ <name>followByScroll</name>
+ <type>boolean</type>
+ </attribute>
+ <attribute>
+ <name>header</name>
+ <type>java.lang.String</type>
+ </attribute>
+ <attribute>
+ <name>headerClass</name>
+ <type>java.lang.String</type>
+ </attribute>
+ <attribute>
+ <name>height</name>
+ <type>int</type>
+ </attribute>
+ <attribute>
+ <description>The component identifier for this component. This value must be unique within the closest parent component that is a naming container.</description>
+ <display-name>Component Identifier</display-name>
+ <name>id</name>
+ <type>java.lang.String</type>
+ </attribute>
+ <attribute>
+ <name>keepVisualState</name>
+ <type>boolean</type>
+ </attribute>
+ <attribute>
+ <name>left</name>
+ <type>java.lang.String</type>
+ </attribute>
+ <attribute>
+ <name>maxHeight</name>
+ <type>int</type>
+ </attribute>
+ <attribute>
+ <name>maxWidth</name>
+ <type>int</type>
+ </attribute>
+ <attribute>
+ <name>minHeight</name>
+ <type>int</type>
+ </attribute>
+ <attribute>
+ <name>minWidth</name>
+ <type>int</type>
+ </attribute>
+ <attribute>
+ <name>modal</name>
+ <type>boolean</type>
+ </attribute>
+ <attribute>
+ <name>moveable</name>
+ <type>boolean</type>
+ </attribute>
+ <attribute>
+ <name>onbeforehide</name>
+ <type>java.lang.String</type>
+ </attribute>
+ <attribute>
+ <name>onbeforeshow</name>
+ <type>java.lang.String</type>
+ </attribute>
+ <attribute>
+ <name>onhide</name>
+ <type>java.lang.String</type>
+ </attribute>
+ <attribute>
+ <name>onmaskclick</name>
+ <type>java.lang.String</type>
+ </attribute>
+ <attribute>
+ <name>onmaskcontextmenu</name>
+ <type>java.lang.String</type>
+ </attribute>
+ <attribute>
+ <name>onmaskdblclick</name>
+ <type>java.lang.String</type>
+ </attribute>
+ <attribute>
+ <name>onmaskmousedown</name>
+ <type>java.lang.String</type>
+ </attribute>
+ <attribute>
+ <name>onmaskmousemove</name>
+ <type>java.lang.String</type>
+ </attribute>
+ <attribute>
+ <name>onmaskmouseout</name>
+ <type>java.lang.String</type>
+ </attribute>
+ <attribute>
+ <name>onmaskmouseover</name>
+ <type>java.lang.String</type>
+ </attribute>
+ <attribute>
+ <name>onmaskmouseup</name>
+ <type>java.lang.String</type>
+ </attribute>
+ <attribute>
+ <name>onmove</name>
+ <type>java.lang.String</type>
+ </attribute>
+ <attribute>
+ <name>onresize</name>
+ <type>java.lang.String</type>
+ </attribute>
+ <attribute>
+ <name>onshow</name>
+ <type>java.lang.String</type>
+ </attribute>
+ <attribute>
+ <name>overlapEmbedObjects</name>
+ <type>boolean</type>
+ </attribute>
+ <attribute>
+ <description>Flag indicating whether or not this component should be rendered (during Render Response Phase), or processed on any subsequent form submit. The default value for this property is true.</description>
+ <display-name>Rendered Flag</display-name>
+ <name>rendered</name>
+ <type>boolean</type>
+ </attribute>
+ <attribute>
+ <name>resizeable</name>
+ <type>boolean</type>
+ </attribute>
+ <attribute>
+ <name>shadowDepth</name>
+ <type>java.lang.String</type>
+ </attribute>
+ <attribute>
+ <name>shadowOpacity</name>
+ <type>java.lang.String</type>
+ </attribute>
+ <attribute>
+ <name>show</name>
+ <type>boolean</type>
+ </attribute>
+ <attribute>
+ <name>top</name>
+ <type>java.lang.String</type>
+ </attribute>
+ <attribute>
+ <name>trimOverlayedElements</name>
+ <type>boolean</type>
+ </attribute>
+ <attribute>
+ <name>visualOptions</name>
+ <type>java.lang.String</type>
+ </attribute>
+ <attribute>
+ <name>width</name>
+ <type>int</type>
+ </attribute>
+ <attribute>
+ <name>zindex</name>
+ <type>int</type>
+ </attribute>
+ </tag>
+ <tag>
+ <tag-name>tabPanel</tag-name>
+ <component>
+ <component-type>org.richfaces.TabPanel</component-type>
+ <renderer-type>org.richfaces.TabPanel</renderer-type>
+ <handler-class/>
+ </component>
+ </tag>
+ <tag>
+ <tag-name>tab</tag-name>
+ <component>
+ <component-type>org.richfaces.TabPanelItem</component-type>
+ <renderer-type>org.richfaces.Tab</renderer-type>
+ <handler-class/>
+ </component>
+ </tag>
+ <tag>
+ <tag-name>panelMenuItem</tag-name>
+ <component>
+ <component-type>org.richfaces.PanelMenuItem</component-type>
+ <renderer-type>org.richfaces.PanelMenuItem</renderer-type>
+ <handler-class/>
+ </component>
+ <attribute>
+ <description>MethodExpression representing the application action to invoke when this component is activated by the user. The expression must evaluate to a public method that takes no parameters, and returns an Object (the toString() of which is called to derive the logical outcome) which is passed to the NavigationHandler for this application.</description>
+ <display-name>Application Action</display-name>
+ <name>action</name>
+ <type>javax.faces.el.MethodBinding</type>
+ </attribute>
+ <attribute>
+ <description>MethodExpression representing the application action to invoke when this component is activated by the user. The expression must evaluate to a public method that takes no parameters, and returns an Object (the toString() of which is called to derive the logical outcome) which is passed to the NavigationHandler for this application.</description>
+ <display-name>Application Action</display-name>
+ <name>actionExpression</name>
+ <type>javax.el.MethodExpression</type>
+ </attribute>
+ <attribute>
+ <description><p> MethodExpression representing an action listener method that will be notified when this component is activated by the user. The expression must evaluate to a public method that takes an ActionEvent parameter, with a return type of void, <span class="changed_added_2_0">or to a public method that takes no arguments with a return type of void. In the latter case, the method has no way of easily knowing where the event came from, but this can be useful in cases where a notification is needed that "some action happened".</span> </p></description>
+ <display-name>Action Listener</display-name>
+ <name>actionListener</name>
+ <type>javax.faces.el.MethodBinding</type>
+ </attribute>
+ <attribute>
+ <name>icon</name>
+ <type>java.lang.String</type>
+ </attribute>
+ <attribute>
+ <name>mode</name>
+ <type>org.richfaces.PanelMenuMode</type>
+ </attribute>
+ <attribute>
+ <name>label</name>
+ <type>java.lang.String</type>
+ </attribute>
+ <attribute>
+ <name>name</name>
+ <type>java.lang.String</type>
+ </attribute>
+ <attribute>
+ <name>disabled</name>
+ <type>boolean</type>
+ </attribute>
+ <attribute>
+ <name>bypassUpdates</name>
+ <type>boolean</type>
+ </attribute>
+ <attribute>
+ <name>disableImplicitRender</name>
+ <type>boolean</type>
+ </attribute>
+ <attribute>
+ <name>data</name>
+ <type>java.lang.Object</type>
+ </attribute>
+ <attribute>
+ <name>status</name>
+ <type>java.lang.String</type>
+ </attribute>
+ <attribute>
+ <name>execute</name>
+ <type>java.lang.Object</type>
+ </attribute>
+ <attribute>
+ <name>render</name>
+ <type>java.lang.Object</type>
+ </attribute>
+ <attribute>
+ <name>id</name>
+ <type>java.lang.String</type>
+ </attribute>
+ <attribute>
+ <name>binding</name>
+ <type>javax.faces.component.UIComponent</type>
+ </attribute>
+ <attribute>
+ <name>rendered</name>
+ <type>boolean</type>
+ </attribute>
+ <attribute>
+ <name>disabledClass</name>
+ <type>java.lang.String</type>
+ </attribute>
+ <attribute>
+ <name>hoverClass</name>
+ <type>java.lang.String</type>
+ </attribute>
+ <attribute>
+ <name>iconLeftClass</name>
+ <type>java.lang.String</type>
+ </attribute>
+ <attribute>
+ <name>iconLeftDisabled</name>
+ <type>java.lang.String</type>
+ </attribute>
+ <attribute>
+ <name>iconRightClass</name>
+ <type>java.lang.String</type>
+ </attribute>
+ <attribute>
+ <name>iconRightDisabled</name>
+ <type>java.lang.String</type>
+ </attribute>
+ <attribute>
+ <name>style</name>
+ <type>java.lang.String</type>
+ </attribute>
+ <attribute>
+ <name>styleClass</name>
+ <type>java.lang.String</type>
+ </attribute>
+ <attribute>
+ <name>onbeforedomupdate</name>
+ <type>java.lang.String</type>
+ </attribute>
+ <attribute>
+ <name>oncomplete</name>
+ <type>java.lang.String</type>
+ </attribute>
+ <attribute>
+ <name>onclick</name>
+ <type>java.lang.String</type>
+ </attribute>
+ <attribute>
+ <name>ondblclick</name>
+ <type>java.lang.String</type>
+ </attribute>
+ <attribute>
+ <name>onmousedown</name>
+ <type>java.lang.String</type>
+ </attribute>
+ <attribute>
+ <name>onmousemove</name>
+ <type>java.lang.String</type>
+ </attribute>
+ <attribute>
+ <name>onmouseout</name>
+ <type>java.lang.String</type>
+ </attribute>
+ <attribute>
+ <name>onmouseover</name>
+ <type>java.lang.String</type>
+ </attribute>
+ <attribute>
+ <name>onmouseup</name>
+ <type>java.lang.String</type>
+ </attribute>
+ <attribute>
+ <name>onunselect</name>
+ <type>java.lang.String</type>
+ </attribute>
+ <attribute>
+ <name>onselect</name>
+ <type>java.lang.String</type>
+ </attribute>
+ <attribute>
+ <name>onbeforeselect</name>
+ <type>java.lang.String</type>
+ </attribute>
+ </tag>
+ <tag>
+ <tag-name>panelMenuGroup</tag-name>
+ <component>
+ <component-type>org.richfaces.PanelMenuGroup</component-type>
+ <renderer-type>org.richfaces.PanelMenuGroup</renderer-type>
+ <handler-class/>
+ </component>
+ <attribute>
+ <description>MethodExpression representing the application action to invoke when this component is activated by the user. The expression must evaluate to a public method that takes no parameters, and returns an Object (the toString() of which is called to derive the logical outcome) which is passed to the NavigationHandler for this application.</description>
+ <display-name>Application Action</display-name>
+ <name>action</name>
+ <type>javax.faces.el.MethodBinding</type>
+ </attribute>
+ <attribute>
+ <description>MethodExpression representing the application action to invoke when this component is activated by the user. The expression must evaluate to a public method that takes no parameters, and returns an Object (the toString() of which is called to derive the logical outcome) which is passed to the NavigationHandler for this application.</description>
+ <display-name>Application Action</display-name>
+ <name>actionExpression</name>
+ <type>javax.el.MethodExpression</type>
+ </attribute>
+ <attribute>
+ <description><p> MethodExpression representing an action listener method that will be notified when this component is activated by the user. The expression must evaluate to a public method that takes an ActionEvent parameter, with a return type of void, <span class="changed_added_2_0">or to a public method that takes no arguments with a return type of void. In the latter case, the method has no way of easily knowing where the event came from, but this can be useful in cases where a notification is needed that "some action happened".</span> </p></description>
+ <display-name>Action Listener</display-name>
+ <name>actionListener</name>
+ <type>javax.faces.el.MethodBinding</type>
+ </attribute>
+ <attribute>
+ <name>expanded</name>
+ <type>boolean</type>
+ </attribute>
+ <attribute>
+ <name>expandSingle</name>
+ <type>boolean</type>
+ </attribute>
+ <attribute>
+ <name>collapseEvent</name>
+ <type>java.lang.String</type>
+ </attribute>
+ <attribute>
+ <name>expandEvent</name>
+ <type>java.lang.String</type>
+ </attribute>
+ <attribute>
+ <name>bubbleSelection</name>
+ <type>boolean</type>
+ </attribute>
+ <attribute>
+ <name>iconLeftCollapsed</name>
+ <type>java.lang.String</type>
+ </attribute>
+ <attribute>
+ <name>iconLeftExpanded</name>
+ <type>java.lang.String</type>
+ </attribute>
+ <attribute>
+ <name>iconRightCollapsed</name>
+ <type>java.lang.String</type>
+ </attribute>
+ <attribute>
+ <name>iconRightExpanded</name>
+ <type>java.lang.String</type>
+ </attribute>
+ <attribute>
+ <name>changeExpandListener</name>
+ <type>java.lang.String</type>
+ </attribute>
+ <attribute>
+ <name>icon</name>
+ <type>java.lang.String</type>
+ </attribute>
+ <attribute>
+ <name>mode</name>
+ <type>org.richfaces.PanelMenuMode</type>
+ </attribute>
+ <attribute>
+ <name>label</name>
+ <type>java.lang.String</type>
+ </attribute>
+ <attribute>
+ <name>name</name>
+ <type>java.lang.String</type>
+ </attribute>
+ <attribute>
+ <name>disabled</name>
+ <type>boolean</type>
+ </attribute>
+ <attribute>
+ <name>bypassUpdates</name>
+ <type>boolean</type>
+ </attribute>
+ <attribute>
+ <name>disableImplicitRender</name>
+ <type>boolean</type>
+ </attribute>
+ <attribute>
+ <name>data</name>
+ <type>java.lang.Object</type>
+ </attribute>
+ <attribute>
+ <name>status</name>
+ <type>java.lang.String</type>
+ </attribute>
+ <attribute>
+ <name>execute</name>
+ <type>java.lang.Object</type>
+ </attribute>
+ <attribute>
+ <name>render</name>
+ <type>java.lang.Object</type>
+ </attribute>
+ <attribute>
+ <name>id</name>
+ <type>java.lang.String</type>
+ </attribute>
+ <attribute>
+ <name>binding</name>
+ <type>javax.faces.component.UIComponent</type>
+ </attribute>
+ <attribute>
+ <name>rendered</name>
+ <type>boolean</type>
+ </attribute>
+ <attribute>
+ <name>oncollapse</name>
+ <type>java.lang.String</type>
+ </attribute>
+ <attribute>
+ <name>onexpand</name>
+ <type>java.lang.String</type>
+ </attribute>
+ <attribute>
+ <name>onswitch</name>
+ <type>java.lang.String</type>
+ </attribute>
+ <attribute>
+ <name>onbeforecollapse</name>
+ <type>java.lang.String</type>
+ </attribute>
+ <attribute>
+ <name>onbeforeexpand</name>
+ <type>java.lang.String</type>
+ </attribute>
+ <attribute>
+ <name>onbeforeswitch</name>
+ <type>java.lang.String</type>
+ </attribute>
+ </tag>
+ <tag>
+ <tag-name>panelMenu</tag-name>
+ <component>
+ <component-type>org.richfaces.PanelMenu</component-type>
+ <renderer-type>org.richfaces.PanelMenu</renderer-type>
+ <handler-class>org.richfaces.view.facelets.html.PanelMenuTagHandler</handler-class>
+ </component>
+ <attribute>
+ <description>MethodExpression representing the application action to invoke when this component is activated by the user. The expression must evaluate to a public method that takes no parameters, and returns an Object (the toString() of which is called to derive the logical outcome) which is passed to the NavigationHandler for this application.</description>
+ <display-name>Application Action</display-name>
+ <name>action</name>
+ <type>javax.faces.el.MethodBinding</type>
+ </attribute>
+ <attribute>
+ <description>MethodExpression representing the application action to invoke when this component is activated by the user. The expression must evaluate to a public method that takes no parameters, and returns an Object (the toString() of which is called to derive the logical outcome) which is passed to the NavigationHandler for this application.</description>
+ <display-name>Application Action</display-name>
+ <name>actionExpression</name>
+ <type>javax.el.MethodExpression</type>
+ </attribute>
+ <attribute>
+ <description><p> MethodExpression representing an action listener method that will be notified when this component is activated by the user. The expression must evaluate to a public method that takes an ActionEvent parameter, with a return type of void, <span class="changed_added_2_0">or to a public method that takes no arguments with a return type of void. In the latter case, the method has no way of easily knowing where the event came from, but this can be useful in cases where a notification is needed that "some action happened".</span> </p></description>
+ <display-name>Action Listener</display-name>
+ <name>actionListener</name>
+ <type>javax.faces.el.MethodBinding</type>
+ </attribute>
+ <attribute>
+ <name>disabled</name>
+ <type>boolean</type>
+ </attribute>
+ <attribute>
+ <name>expandEvent</name>
+ <type>java.lang.String</type>
+ </attribute>
+ <attribute>
+ <name>collapseEvent</name>
+ <type>java.lang.String</type>
+ </attribute>
+ <attribute>
+ <name>groupMode</name>
+ <type>org.richfaces.PanelMenuMode</type>
+ </attribute>
+ <attribute>
+ <name>expandSingle</name>
+ <type>boolean</type>
+ </attribute>
+ <attribute>
+ <name>itemMode</name>
+ <type>org.richfaces.PanelMenuMode</type>
+ </attribute>
+ <attribute>
+ <name>bubbleSelection</name>
+ <type>boolean</type>
+ </attribute>
+ <attribute>
+ <name>activeItem</name>
+ <type>java.lang.String</type>
+ </attribute>
+ <attribute>
+ <name>itemChangeListener</name>
+ <type>java.lang.String</type>
+ </attribute>
+ <attribute>
+ <name>bypassUpdates</name>
+ <type>boolean</type>
+ </attribute>
+ <attribute>
+ <name>disableImplicitRender</name>
+ <type>boolean</type>
+ </attribute>
+ <attribute>
+ <name>data</name>
+ <type>java.lang.Object</type>
+ </attribute>
+ <attribute>
+ <name>status</name>
+ <type>java.lang.String</type>
+ </attribute>
+ <attribute>
+ <name>execute</name>
+ <type>java.lang.Object</type>
+ </attribute>
+ <attribute>
+ <name>render</name>
+ <type>java.lang.Object</type>
+ </attribute>
+ <attribute>
+ <name>id</name>
+ <type>java.lang.String</type>
+ </attribute>
+ <attribute>
+ <name>binding</name>
+ <type>javax.faces.component.UIComponent</type>
+ </attribute>
+ <attribute>
+ <name>rendered</name>
+ <type>boolean</type>
+ </attribute>
+ <attribute>
+ <name>style</name>
+ <type>java.lang.String</type>
+ </attribute>
+ <attribute>
+ <name>styleClass</name>
+ <type>java.lang.String</type>
+ </attribute>
+ <attribute>
+ <name>width</name>
+ <type>java.lang.String</type>
+ </attribute>
+ <attribute>
+ <name>itemClass</name>
+ <type>java.lang.String</type>
+ </attribute>
+ <attribute>
+ <name>itemDisableClass</name>
+ <type>java.lang.String</type>
+ </attribute>
+ <attribute>
+ <name>itemIconLeft</name>
+ <type>java.lang.String</type>
+ </attribute>
+ <attribute>
+ <name>itemIconRight</name>
+ <type>java.lang.String</type>
+ </attribute>
+ <attribute>
+ <name>itemDisableIconLeft</name>
+ <type>java.lang.String</type>
+ </attribute>
+ <attribute>
+ <name>itemDisableIconRight</name>
+ <type>java.lang.String</type>
+ </attribute>
+ <attribute>
+ <name>topItemClass</name>
+ <type>java.lang.String</type>
+ </attribute>
+ <attribute>
+ <name>topItemDisableClass</name>
+ <type>java.lang.String</type>
+ </attribute>
+ <attribute>
+ <name>topItemIconLeft</name>
+ <type>java.lang.String</type>
+ </attribute>
+ <attribute>
+ <name>topItemIconRight</name>
+ <type>java.lang.String</type>
+ </attribute>
+ <attribute>
+ <name>topItemDisableIconLeft</name>
+ <type>java.lang.String</type>
+ </attribute>
+ <attribute>
+ <name>topItemDisableIconRight</name>
+ <type>java.lang.String</type>
+ </attribute>
+ <attribute>
+ <name>groupClass</name>
+ <type>java.lang.String</type>
+ </attribute>
+ <attribute>
+ <name>groupDisableClass</name>
+ <type>java.lang.String</type>
+ </attribute>
+ <attribute>
+ <name>groupExpandIconLeft</name>
+ <type>java.lang.String</type>
+ </attribute>
+ <attribute>
+ <name>groupExpandIconRight</name>
+ <type>java.lang.String</type>
+ </attribute>
+ <attribute>
+ <name>groupCollapseIconLeft</name>
+ <type>java.lang.String</type>
+ </attribute>
+ <attribute>
+ <name>groupCollapseIconRight</name>
+ <type>java.lang.String</type>
+ </attribute>
+ <attribute>
+ <name>groupDisableIconLeft</name>
+ <type>java.lang.String</type>
+ </attribute>
+ <attribute>
+ <name>groupDisableIconRight</name>
+ <type>java.lang.String</type>
+ </attribute>
+ <attribute>
+ <name>topGroupClass</name>
+ <type>java.lang.String</type>
+ </attribute>
+ <attribute>
+ <name>topGroupDisableClass</name>
+ <type>java.lang.String</type>
+ </attribute>
+ <attribute>
+ <name>topGroupExpandIconLeft</name>
+ <type>java.lang.String</type>
+ </attribute>
+ <attribute>
+ <name>topGroupExpandIconRight</name>
+ <type>java.lang.String</type>
+ </attribute>
+ <attribute>
+ <name>topGroupCollapseIconLeft</name>
+ <type>java.lang.String</type>
+ </attribute>
+ <attribute>
+ <name>topGroupCollapseIconRight</name>
+ <type>java.lang.String</type>
+ </attribute>
+ <attribute>
+ <name>topGroupDisableIconLeft</name>
+ <type>java.lang.String</type>
+ </attribute>
+ <attribute>
+ <name>topGroupDisableIconRight</name>
+ <type>java.lang.String</type>
+ </attribute>
+ <attribute>
+ <name>onclick</name>
+ <type>java.lang.String</type>
+ </attribute>
+ <attribute>
+ <name>ondblclick</name>
+ <type>java.lang.String</type>
+ </attribute>
+ <attribute>
+ <name>onmousedown</name>
+ <type>java.lang.String</type>
+ </attribute>
+ <attribute>
+ <name>onmousemove</name>
+ <type>java.lang.String</type>
+ </attribute>
+ <attribute>
+ <name>onmouseout</name>
+ <type>java.lang.String</type>
+ </attribute>
+ <attribute>
+ <name>onmouseover</name>
+ <type>java.lang.String</type>
+ </attribute>
+ <attribute>
+ <name>onmouseup</name>
+ <type>java.lang.String</type>
+ </attribute>
+ </tag>
+ <tag>
+ <tag-name>tooltip</tag-name>
+ <component>
+ <component-type>org.richfaces.Tooltip</component-type>
+ <renderer-type>org.richfaces.Tooltip</renderer-type>
+ <handler-class/>
+ </component>
+ <attribute>
+ <name>for_</name>
+ <type>java.lang.String</type>
+ </attribute>
+ <attribute>
+ <name>value</name>
+ <type>java.lang.String</type>
+ </attribute>
+ <attribute>
+ <name>layout</name>
+ <type>org.richfaces.TooltipLayout</type>
+ </attribute>
+ <attribute>
+ <name>attached</name>
+ <type>boolean</type>
+ </attribute>
+ <attribute>
+ <name>direction</name>
+ <type>org.richfaces.TooltipDirection</type>
+ </attribute>
+ <attribute>
+ <name>disabled</name>
+ <type>boolean</type>
+ </attribute>
+ <attribute>
+ <name>followMouse</name>
+ <type>boolean</type>
+ </attribute>
+ <attribute>
+ <name>hideDelay</name>
+ <type>int</type>
+ </attribute>
+ <attribute>
+ <name>hideEvent</name>
+ <type>java.lang.String</type>
+ </attribute>
+ <attribute>
+ <name>horizontalOffset</name>
+ <type>int</type>
+ </attribute>
+ <attribute>
+ <name>mode</name>
+ <type>org.richfaces.TooltipMode</type>
+ </attribute>
+ <attribute>
+ <name>showDelay</name>
+ <type>int</type>
+ </attribute>
+ <attribute>
+ <name>showEvent</name>
+ <type>java.lang.String</type>
+ </attribute>
+ <attribute>
+ <name>verticalOffset</name>
+ <type>int</type>
+ </attribute>
+ <attribute>
+ <name>id</name>
+ <type>java.lang.String</type>
+ </attribute>
+ <attribute>
+ <name>binding</name>
+ <type>javax.faces.component.UIComponent</type>
+ </attribute>
+ <attribute>
+ <name>rendered</name>
+ <type>boolean</type>
+ </attribute>
+ <attribute>
+ <name>bypassUpdates</name>
+ <type>boolean</type>
+ </attribute>
+ <attribute>
+ <name>disableImplicitRender</name>
+ <type>boolean</type>
+ </attribute>
+ <attribute>
+ <name>data</name>
+ <type>java.lang.Object</type>
+ </attribute>
+ <attribute>
+ <name>status</name>
+ <type>java.lang.String</type>
+ </attribute>
+ <attribute>
+ <name>execute</name>
+ <type>java.lang.Object</type>
+ </attribute>
+ <attribute>
+ <name>render</name>
+ <type>java.lang.Object</type>
+ </attribute>
+ <attribute>
+ <name>style</name>
+ <type>java.lang.String</type>
+ </attribute>
+ <attribute>
+ <name>styleClass</name>
+ <type>java.lang.String</type>
+ </attribute>
+ <attribute>
+ <name>zindex</name>
+ <type>int</type>
+ </attribute>
+ <attribute>
+ <name>onclick</name>
+ <type>java.lang.String</type>
+ </attribute>
+ <attribute>
+ <name>ondblclick</name>
+ <type>java.lang.String</type>
+ </attribute>
+ <attribute>
+ <name>onmousedown</name>
+ <type>java.lang.String</type>
+ </attribute>
+ <attribute>
+ <name>onmousemove</name>
+ <type>java.lang.String</type>
+ </attribute>
+ <attribute>
+ <name>onmouseout</name>
+ <type>java.lang.String</type>
+ </attribute>
+ <attribute>
+ <name>onmouseover</name>
+ <type>java.lang.String</type>
+ </attribute>
+ <attribute>
+ <name>onmouseup</name>
+ <type>java.lang.String</type>
+ </attribute>
+ <attribute>
+ <name>onhide</name>
+ <type>java.lang.String</type>
+ </attribute>
+ <attribute>
+ <name>onshow</name>
+ <type>java.lang.String</type>
+ </attribute>
+ <attribute>
+ <name>onbeforehide</name>
+ <type>java.lang.String</type>
+ </attribute>
+ <attribute>
+ <name>onbeforeshow</name>
+ <type>java.lang.String</type>
+ </attribute>
+ </tag>
+ <tag>
+ <tag-name>collapsiblePanel</tag-name>
+ <component>
+ <component-type>org.richfaces.CollapsiblePanel</component-type>
+ <renderer-type>org.richfaces.CollapsiblePanel</renderer-type>
+ <handler-class>org.richfaces.view.facelets.html.CollapsiblePanelTagHandler</handler-class>
+ </component>
+ <attribute>
+ <name>switchType</name>
+ <type>org.richfaces.component.SwitchType</type>
+ </attribute>
+ <attribute>
+ <name>expanded</name>
+ <type>boolean</type>
+ </attribute>
+ <attribute>
+ <name>header</name>
+ <type>java.lang.String</type>
+ </attribute>
+ <attribute>
+ <name>bypassUpdates</name>
+ <type>boolean</type>
+ </attribute>
+ <attribute>
+ <name>disableImplicitRender</name>
+ <type>boolean</type>
+ </attribute>
+ <attribute>
+ <name>data</name>
+ <type>java.lang.Object</type>
+ </attribute>
+ <attribute>
+ <name>status</name>
+ <type>java.lang.String</type>
+ </attribute>
+ <attribute>
+ <name>execute</name>
+ <type>java.lang.Object</type>
+ </attribute>
+ <attribute>
+ <name>render</name>
+ <type>java.lang.Object</type>
+ </attribute>
+ <attribute>
+ <name>id</name>
+ <type>java.lang.String</type>
+ </attribute>
+ <attribute>
+ <name>binding</name>
+ <type>javax.faces.component.UIComponent</type>
+ </attribute>
+ <attribute>
+ <name>rendered</name>
+ <type>boolean</type>
+ </attribute>
+ <attribute>
+ <name>immediate</name>
+ <type>boolean</type>
+ </attribute>
+ <attribute>
+ <name>toggleListener</name>
+ <type>javax.el.MethodExpression</type>
+ </attribute>
+ <attribute>
+ <name>bodyClass</name>
+ <type>java.lang.String</type>
+ </attribute>
+ <attribute>
+ <name>headerClass</name>
+ <type>java.lang.String</type>
+ </attribute>
+ <attribute>
+ <name>headerControlClass</name>
+ <type>java.lang.String</type>
+ </attribute>
+ <attribute>
+ <name>oncomplete</name>
+ <type>java.lang.String</type>
+ </attribute>
+ <attribute>
+ <name>onbeforedomupdate</name>
+ <type>java.lang.String</type>
+ </attribute>
+ <attribute>
+ <name>onswitch</name>
+ <type>java.lang.String</type>
+ </attribute>
+ <attribute>
+ <name>onbeforeswitch</name>
+ <type>java.lang.String</type>
+ </attribute>
+ <attribute>
+ <name>lang</name>
+ <type>java.lang.String</type>
+ </attribute>
+ <attribute>
+ <name>title</name>
+ <type>java.lang.String</type>
+ </attribute>
+ <attribute>
+ <name>style</name>
+ <type>java.lang.String</type>
+ </attribute>
+ <attribute>
+ <name>styleClass</name>
+ <type>java.lang.String</type>
+ </attribute>
+ <attribute>
+ <name>dir</name>
+ <type>java.lang.String</type>
+ </attribute>
+ <attribute>
+ <name>onclick</name>
+ <type>java.lang.String</type>
+ </attribute>
+ <attribute>
+ <name>ondblclick</name>
+ <type>java.lang.String</type>
+ </attribute>
+ <attribute>
+ <name>onmousedown</name>
+ <type>java.lang.String</type>
+ </attribute>
+ <attribute>
+ <name>onmousemove</name>
+ <type>java.lang.String</type>
+ </attribute>
+ <attribute>
+ <name>onmouseout</name>
+ <type>java.lang.String</type>
+ </attribute>
+ <attribute>
+ <name>onmouseover</name>
+ <type>java.lang.String</type>
+ </attribute>
+ <attribute>
+ <name>onmouseup</name>
+ <type>java.lang.String</type>
+ </attribute>
+ </tag>
+ <tag>
+ <description>
+ Register a PanelToggleListener instance on the UIComponent
+ associated with the closest parent UIComponent custom
+ action.
</description>
- <tag-name>panelToggleListener</tag-name>
- <handler-class>org.richfaces.view.facelets.html.PanelToggleListenerHandler</handler-class>
- <attribute>
- <description>
- Fully qualified Java class name of a
- PanelToggleListener to be created and registered.
+ <tag-name>panelToggleListener</tag-name>
+ <handler-class>org.richfaces.view.facelets.html.PanelToggleListenerHandler</handler-class>
+ <attribute>
+ <description>
+ Fully qualified Java class name of a
+ PanelToggleListener to be created and registered.
</description>
- <name>type</name>
- <type>java.lang.String</type>
- </attribute>
- <attribute>
- <description>
- Value binding expression that evaluates to an object that
- implements org.richfaces.event.PanelToggleListener.
+ <name>type</name>
+ <type>java.lang.String</type>
+ </attribute>
+ <attribute>
+ <description>
+ Value binding expression that evaluates to an object that
+ implements org.richfaces.event.PanelToggleListener.
</description>
- <name>binding</name>
- <required>false</required>
- <type>org.richfaces.event.PanelToggleListener</type>
- </attribute>
- <attribute>
- <description>
- <p class="changed_added_2_0">If present, this attribute refers
- to the value of one of the exposed attached objects within the
- composite component inside of which this tag is nested.</p>
+ <name>binding</name>
+ <required>false</required>
+ <type>org.richfaces.event.PanelToggleListener</type>
+ </attribute>
+ <attribute>
+ <description>
+ <p class="changed_added_2_0">If present, this attribute refers
+ to the value of one of the exposed attached objects within the
+ composite component inside of which this tag is nested.</p>
</description>
- <name>for</name>
- <required>false</required>
- <type>java.lang.String</type>
- </attribute>
- </tag>
-
- <tag>
- <tag-name>togglePanel</tag-name>
- <component>
- <component-type>org.richfaces.TogglePanel</component-type>
- <renderer-type>org.richfaces.TogglePanel</renderer-type>
- <handler-class>org.richfaces.view.facelets.html.TogglePanelTagHandler</handler-class>
- </component>
- <attribute>
- <description></description>
- <name>cycledSwitching</name>
- <type>boolean</type>
- </attribute>
- <attribute>
- <description></description>
- <name>switchType</name>
- <type>org.richfaces.component.SwitchType</type>
- </attribute>
- <attribute>
- <description></description>
- <name>activeItem</name>
- <type>java.lang.String</type>
- </attribute>
- <attribute>
- <description></description>
- <name>bypassUpdates</name>
- <type>boolean</type>
- </attribute>
- <attribute>
- <description></description>
- <name>disableImplicitRender</name>
- <type>boolean</type>
- </attribute>
- <attribute>
- <description></description>
- <name>data</name>
- <type>java.lang.Object</type>
- </attribute>
- <attribute>
- <description></description>
- <name>status</name>
- <type>java.lang.String</type>
- </attribute>
- <attribute>
- <description></description>
- <name>execute</name>
- <type>java.lang.Object</type>
- </attribute>
- <attribute>
- <description></description>
- <name>render</name>
- <type>java.lang.Object</type>
- </attribute>
- <attribute>
- <description></description>
- <name>immediate</name>
- <type>boolean</type>
- </attribute>
- <attribute>
- <description></description>
- <name>itemChangeListener</name>
- <type>javax.el.MethodExpression</type>
- </attribute>
- <attribute>
- <description>Long long text</description>
- <name>id</name>
- <type>java.lang.String</type>
- </attribute>
- <attribute>
- <description>binding description</description>
- <name>binding</name>
- <type>javax.faces.component.UIComponent</type>
- </attribute>
- <attribute>
- <description>I don't know maybe some thing strange</description>
- <name>rendered</name>
- <type>boolean</type>
- </attribute>
- <attribute>
- <description></description>
- <name>onitemchange</name>
- <type>java.lang.String</type>
- </attribute>
- <attribute>
- <description></description>
- <name>onbeforeitemchange</name>
- <type>java.lang.String</type>
- </attribute>
- <attribute>
- <description></description>
- <name>lang</name>
- <type>java.lang.String</type>
- </attribute>
- <attribute>
- <description></description>
- <name>title</name>
- <type>java.lang.String</type>
- </attribute>
- <attribute>
- <description></description>
- <name>style</name>
- <type>java.lang.String</type>
- </attribute>
- <attribute>
- <description></description>
- <name>styleClass</name>
- <type>java.lang.String</type>
- </attribute>
- <attribute>
- <description></description>
- <name>dir</name>
- <type>java.lang.String</type>
- </attribute>
- <attribute>
- <description></description>
- <name>onclick</name>
- <type>java.lang.String</type>
- </attribute>
- <attribute>
- <description></description>
- <name>ondblclick</name>
- <type>java.lang.String</type>
- </attribute>
- <attribute>
- <description></description>
- <name>onmousedown</name>
- <type>java.lang.String</type>
- </attribute>
- <attribute>
- <description></description>
- <name>onmousemove</name>
- <type>java.lang.String</type>
- </attribute>
- <attribute>
- <description></description>
- <name>onmouseout</name>
- <type>java.lang.String</type>
- </attribute>
- <attribute>
- <description></description>
- <name>onmouseover</name>
- <type>java.lang.String</type>
- </attribute>
- <attribute>
- <description></description>
- <name>onmouseup</name>
- <type>java.lang.String</type>
- </attribute>
-
- </tag>
- <tag>
- <description>
- Register a ItemChangeListener instance on the UIComponent
- associated with the closest parent UIComponent custom
- action.
+ <name>for</name>
+ <required>false</required>
+ <type>java.lang.String</type>
+ </attribute>
+ </tag>
+ <tag>
+ <tag-name>togglePanel</tag-name>
+ <component>
+ <component-type>org.richfaces.TogglePanel</component-type>
+ <renderer-type>org.richfaces.TogglePanel</renderer-type>
+ <handler-class>org.richfaces.view.facelets.html.TogglePanelTagHandler</handler-class>
+ </component>
+ <attribute>
+ <name>cycledSwitching</name>
+ <type>boolean</type>
+ </attribute>
+ <attribute>
+ <name>switchType</name>
+ <type>org.richfaces.component.SwitchType</type>
+ </attribute>
+ <attribute>
+ <name>activeItem</name>
+ <type>java.lang.String</type>
+ </attribute>
+ <attribute>
+ <name>bypassUpdates</name>
+ <type>boolean</type>
+ </attribute>
+ <attribute>
+ <name>disableImplicitRender</name>
+ <type>boolean</type>
+ </attribute>
+ <attribute>
+ <name>data</name>
+ <type>java.lang.Object</type>
+ </attribute>
+ <attribute>
+ <name>status</name>
+ <type>java.lang.String</type>
+ </attribute>
+ <attribute>
+ <name>execute</name>
+ <type>java.lang.Object</type>
+ </attribute>
+ <attribute>
+ <name>render</name>
+ <type>java.lang.Object</type>
+ </attribute>
+ <attribute>
+ <name>immediate</name>
+ <type>boolean</type>
+ </attribute>
+ <attribute>
+ <name>itemChangeListener</name>
+ <type>javax.el.MethodExpression</type>
+ </attribute>
+ <attribute>
+ <description>Long long text</description>
+ <name>id</name>
+ <type>java.lang.String</type>
+ </attribute>
+ <attribute>
+ <description>binding description</description>
+ <name>binding</name>
+ <type>javax.faces.component.UIComponent</type>
+ </attribute>
+ <attribute>
+ <description>I don't know maybe some thing strange</description>
+ <name>rendered</name>
+ <type>boolean</type>
+ </attribute>
+ <attribute>
+ <name>onitemchange</name>
+ <type>java.lang.String</type>
+ </attribute>
+ <attribute>
+ <name>onbeforeitemchange</name>
+ <type>java.lang.String</type>
+ </attribute>
+ <attribute>
+ <name>lang</name>
+ <type>java.lang.String</type>
+ </attribute>
+ <attribute>
+ <name>title</name>
+ <type>java.lang.String</type>
+ </attribute>
+ <attribute>
+ <name>style</name>
+ <type>java.lang.String</type>
+ </attribute>
+ <attribute>
+ <name>styleClass</name>
+ <type>java.lang.String</type>
+ </attribute>
+ <attribute>
+ <name>dir</name>
+ <type>java.lang.String</type>
+ </attribute>
+ <attribute>
+ <name>onclick</name>
+ <type>java.lang.String</type>
+ </attribute>
+ <attribute>
+ <name>ondblclick</name>
+ <type>java.lang.String</type>
+ </attribute>
+ <attribute>
+ <name>onmousedown</name>
+ <type>java.lang.String</type>
+ </attribute>
+ <attribute>
+ <name>onmousemove</name>
+ <type>java.lang.String</type>
+ </attribute>
+ <attribute>
+ <name>onmouseout</name>
+ <type>java.lang.String</type>
+ </attribute>
+ <attribute>
+ <name>onmouseover</name>
+ <type>java.lang.String</type>
+ </attribute>
+ <attribute>
+ <name>onmouseup</name>
+ <type>java.lang.String</type>
+ </attribute>
+ </tag>
+ <tag>
+ <description>
+ Register a ItemChangeListener instance on the UIComponent
+ associated with the closest parent UIComponent custom
+ action.
</description>
- <tag-name>itemChangeListener</tag-name>
- <handler-class>org.richfaces.view.facelets.html.ItemChangeListenerHandler</handler-class>
- <attribute>
- <description>
- Fully qualified Java class name of a
- ItemChangeListener to be created and registered.
+ <tag-name>itemChangeListener</tag-name>
+ <handler-class>org.richfaces.view.facelets.html.ItemChangeListenerHandler</handler-class>
+ <attribute>
+ <description>
+ Fully qualified Java class name of a
+ ItemChangeListener to be created and registered.
</description>
- <name>type</name>
- <type>java.lang.String</type>
- </attribute>
- <attribute>
- <description>
- Value binding expression that evaluates to an object that
- implements org.richfaces.event.ItemChangeListener.
+ <name>type</name>
+ <type>java.lang.String</type>
+ </attribute>
+ <attribute>
+ <description>
+ Value binding expression that evaluates to an object that
+ implements org.richfaces.event.ItemChangeListener.
</description>
- <name>binding</name>
- <required>false</required>
- <type>org.richfaces.event.ItemChangeListener</type>
- </attribute>
- <attribute>
- <description>
- <p class="changed_added_2_0">If present, this attribute refers
- to the value of one of the exposed attached objects within the
- composite component inside of which this tag is nested.</p>
+ <name>binding</name>
+ <required>false</required>
+ <type>org.richfaces.event.ItemChangeListener</type>
+ </attribute>
+ <attribute>
+ <description>
+ <p class="changed_added_2_0">If present, this attribute refers
+ to the value of one of the exposed attached objects within the
+ composite component inside of which this tag is nested.</p>
</description>
- <name>for</name>
- <required>false</required>
- <type>java.lang.String</type>
- </attribute>
- </tag>
-
- <tag>
- <tag-name>togglePanelItem</tag-name>
- <component>
- <component-type>org.richfaces.TogglePanelItem</component-type>
- <renderer-type>org.richfaces.TogglePanelItem</renderer-type>
-
- </component>
- <attribute>
- <description></description>
- <name>name</name>
- <type>java.lang.String</type>
- </attribute>
- <attribute>
- <description></description>
- <name>switchType</name>
- <type>org.richfaces.component.SwitchType</type>
- </attribute>
- <attribute>
- <description>Long long text</description>
- <name>id</name>
- <type>java.lang.String</type>
- </attribute>
- <attribute>
- <description>binding description</description>
- <name>binding</name>
- <type>javax.faces.component.UIComponent</type>
- </attribute>
- <attribute>
- <description>I don't know maybe some thing strange</description>
- <name>rendered</name>
- <type>boolean</type>
- </attribute>
- <attribute>
- <description></description>
- <name>onenter</name>
- <type>java.lang.String</type>
- </attribute>
- <attribute>
- <description></description>
- <name>onleave</name>
- <type>java.lang.String</type>
- </attribute>
- <attribute>
- <description></description>
- <name>lang</name>
- <type>java.lang.String</type>
- </attribute>
- <attribute>
- <description></description>
- <name>title</name>
- <type>java.lang.String</type>
- </attribute>
- <attribute>
- <description></description>
- <name>style</name>
- <type>java.lang.String</type>
- </attribute>
- <attribute>
- <description></description>
- <name>styleClass</name>
- <type>java.lang.String</type>
- </attribute>
- <attribute>
- <description></description>
- <name>dir</name>
- <type>java.lang.String</type>
- </attribute>
- <attribute>
- <description></description>
- <name>onclick</name>
- <type>java.lang.String</type>
- </attribute>
- <attribute>
- <description></description>
- <name>ondblclick</name>
- <type>java.lang.String</type>
- </attribute>
- <attribute>
- <description></description>
- <name>onmousedown</name>
- <type>java.lang.String</type>
- </attribute>
- <attribute>
- <description></description>
- <name>onmousemove</name>
- <type>java.lang.String</type>
- </attribute>
- <attribute>
- <description></description>
- <name>onmouseout</name>
- <type>java.lang.String</type>
- </attribute>
- <attribute>
- <description></description>
- <name>onmouseover</name>
- <type>java.lang.String</type>
- </attribute>
- <attribute>
- <description></description>
- <name>onmouseup</name>
- <type>java.lang.String</type>
- </attribute>
-
- </tag>
-
- <tag>
- <tag-name>accordion</tag-name>
- <component>
- <component-type>org.richfaces.Accordion</component-type>
- <renderer-type>org.richfaces.Accordion</renderer-type>
-
- </component>
- <attribute>
- <description></description>
- <name>cycledSwitching</name>
- <type>boolean</type>
- </attribute>
- <attribute>
- <description></description>
- <name>switchType</name>
- <type>org.richfaces.component.SwitchType</type>
- </attribute>
- <attribute>
- <description></description>
- <name>activeItem</name>
- <type>java.lang.String</type>
- </attribute>
- <attribute>
- <description></description>
- <name>bypassUpdates</name>
- <type>boolean</type>
- </attribute>
- <attribute>
- <description></description>
- <name>disableImplicitRender</name>
- <type>boolean</type>
- </attribute>
- <attribute>
- <description></description>
- <name>data</name>
- <type>java.lang.Object</type>
- </attribute>
- <attribute>
- <description></description>
- <name>status</name>
- <type>java.lang.String</type>
- </attribute>
- <attribute>
- <description></description>
- <name>execute</name>
- <type>java.lang.Object</type>
- </attribute>
- <attribute>
- <description></description>
- <name>render</name>
- <type>java.lang.Object</type>
- </attribute>
- <attribute>
- <description></description>
- <name>immediate</name>
- <type>boolean</type>
- </attribute>
- <attribute>
- <description></description>
- <name>itemChangeListener</name>
- <type>javax.el.MethodExpression</type>
- </attribute>
- <attribute>
- <description>Long long text</description>
- <name>id</name>
- <type>java.lang.String</type>
- </attribute>
- <attribute>
- <description>binding description</description>
- <name>binding</name>
- <type>javax.faces.component.UIComponent</type>
- </attribute>
- <attribute>
- <description>I don't know maybe some thing strange</description>
- <name>rendered</name>
- <type>boolean</type>
- </attribute>
- <attribute>
- <description></description>
- <name>width</name>
- <type>java.lang.String</type>
- </attribute>
- <attribute>
- <description></description>
- <name>height</name>
- <type>java.lang.String</type>
- </attribute>
- <attribute>
- <description></description>
- <name>itemHeaderClassActive</name>
- <type>java.lang.String</type>
- </attribute>
- <attribute>
- <description></description>
- <name>itemHeaderClassDisabled</name>
- <type>java.lang.String</type>
- </attribute>
- <attribute>
- <description></description>
- <name>itemHeaderClassInactive</name>
- <type>java.lang.String</type>
- </attribute>
- <attribute>
- <description></description>
- <name>itemContentClass</name>
- <type>java.lang.String</type>
- </attribute>
- <attribute>
- <description></description>
- <name>itemHeaderClass</name>
- <type>java.lang.String</type>
- </attribute>
- <attribute>
- <description></description>
- <name>onitemchange</name>
- <type>java.lang.String</type>
- </attribute>
- <attribute>
- <description></description>
- <name>onbeforeitemchange</name>
- <type>java.lang.String</type>
- </attribute>
- <attribute>
- <description></description>
- <name>lang</name>
- <type>java.lang.String</type>
- </attribute>
- <attribute>
- <description></description>
- <name>title</name>
- <type>java.lang.String</type>
- </attribute>
- <attribute>
- <description></description>
- <name>style</name>
- <type>java.lang.String</type>
- </attribute>
- <attribute>
- <description></description>
- <name>styleClass</name>
- <type>java.lang.String</type>
- </attribute>
- <attribute>
- <description></description>
- <name>dir</name>
- <type>java.lang.String</type>
- </attribute>
- <attribute>
- <description></description>
- <name>onclick</name>
- <type>java.lang.String</type>
- </attribute>
- <attribute>
- <description></description>
- <name>ondblclick</name>
- <type>java.lang.String</type>
- </attribute>
- <attribute>
- <description></description>
- <name>onmousedown</name>
- <type>java.lang.String</type>
- </attribute>
- <attribute>
- <description></description>
- <name>onmousemove</name>
- <type>java.lang.String</type>
- </attribute>
- <attribute>
- <description></description>
- <name>onmouseout</name>
- <type>java.lang.String</type>
- </attribute>
- <attribute>
- <description></description>
- <name>onmouseover</name>
- <type>java.lang.String</type>
- </attribute>
- <attribute>
- <description></description>
- <name>onmouseup</name>
- <type>java.lang.String</type>
- </attribute>
-
- </tag>
-
- <tag>
- <tag-name>accordionItem</tag-name>
- <component>
- <component-type>org.richfaces.AccordionItem</component-type>
- <renderer-type>org.richfaces.AccordionItem</renderer-type>
- </component>
- <attribute>
- <description></description>
- <name>disabled</name>
- <type>boolean</type>
- </attribute>
- <attribute>
- <description></description>
- <name>header</name>
- <type>java.lang.String</type>
- </attribute>
- <attribute>
- <description></description>
- <name>name</name>
- <type>java.lang.String</type>
- </attribute>
- <attribute>
- <description></description>
- <name>switchType</name>
- <type>org.richfaces.component.SwitchType</type>
- </attribute>
- <attribute>
- <description>Long long text</description>
- <name>id</name>
- <type>java.lang.String</type>
- </attribute>
- <attribute>
- <description>binding description</description>
- <name>binding</name>
- <type>javax.faces.component.UIComponent</type>
- </attribute>
- <attribute>
- <description>I don't know maybe some thing strange</description>
- <name>rendered</name>
- <type>boolean</type>
- </attribute>
- <attribute>
- <description></description>
- <name>headerClassActive</name>
- <type>java.lang.String</type>
- </attribute>
- <attribute>
- <description></description>
- <name>headerClassDisabled</name>
- <type>java.lang.String</type>
- </attribute>
- <attribute>
- <description></description>
- <name>headerClassInactive</name>
- <type>java.lang.String</type>
- </attribute>
- <attribute>
- <description></description>
- <name>headerClass</name>
- <type>java.lang.String</type>
- </attribute>
- <attribute>
- <description></description>
- <name>headerStyle</name>
- <type>java.lang.String</type>
- </attribute>
- <attribute>
- <description></description>
- <name>contentClass</name>
- <type>java.lang.String</type>
- </attribute>
- <attribute>
- <description></description>
- <name>onheaderclick</name>
- <type>java.lang.String</type>
- </attribute>
- <attribute>
- <description></description>
- <name>onheaderdblclick</name>
- <type>java.lang.String</type>
- </attribute>
- <attribute>
- <description></description>
- <name>onheadermousedown</name>
- <type>java.lang.String</type>
- </attribute>
- <attribute>
- <description></description>
- <name>onheadermousemove</name>
- <type>java.lang.String</type>
- </attribute>
- <attribute>
- <description></description>
- <name>onheadermouseup</name>
- <type>java.lang.String</type>
- </attribute>
- <attribute>
- <description></description>
- <name>onenter</name>
- <type>java.lang.String</type>
- </attribute>
- <attribute>
- <description></description>
- <name>onleave</name>
- <type>java.lang.String</type>
- </attribute>
- <attribute>
- <description></description>
- <name>lang</name>
- <type>java.lang.String</type>
- </attribute>
- <attribute>
- <description></description>
- <name>title</name>
- <type>java.lang.String</type>
- </attribute>
- <attribute>
- <description></description>
- <name>style</name>
- <type>java.lang.String</type>
- </attribute>
- <attribute>
- <description></description>
- <name>styleClass</name>
- <type>java.lang.String</type>
- </attribute>
- <attribute>
- <description></description>
- <name>dir</name>
- <type>java.lang.String</type>
- </attribute>
- <attribute>
- <description></description>
- <name>onclick</name>
- <type>java.lang.String</type>
- </attribute>
- <attribute>
- <description></description>
- <name>ondblclick</name>
- <type>java.lang.String</type>
- </attribute>
- <attribute>
- <description></description>
- <name>onmousedown</name>
- <type>java.lang.String</type>
- </attribute>
- <attribute>
- <description></description>
- <name>onmousemove</name>
- <type>java.lang.String</type>
- </attribute>
- <attribute>
- <description></description>
- <name>onmouseout</name>
- <type>java.lang.String</type>
- </attribute>
- <attribute>
- <description></description>
- <name>onmouseover</name>
- <type>java.lang.String</type>
- </attribute>
- <attribute>
- <description></description>
- <name>onmouseup</name>
- <type>java.lang.String</type>
- </attribute>
- </tag>
-
+ <name>for</name>
+ <required>false</required>
+ <type>java.lang.String</type>
+ </attribute>
+ </tag>
+ <tag>
+ <tag-name>togglePanelItem</tag-name>
+ <component>
+ <component-type>org.richfaces.TogglePanelItem</component-type>
+ <renderer-type>org.richfaces.TogglePanelItem</renderer-type>
+ <handler-class/>
+ </component>
+ <attribute>
+ <name>name</name>
+ <type>java.lang.String</type>
+ </attribute>
+ <attribute>
+ <name>switchType</name>
+ <type>org.richfaces.component.SwitchType</type>
+ </attribute>
+ <attribute>
+ <description>Long long text</description>
+ <name>id</name>
+ <type>java.lang.String</type>
+ </attribute>
+ <attribute>
+ <description>binding description</description>
+ <name>binding</name>
+ <type>javax.faces.component.UIComponent</type>
+ </attribute>
+ <attribute>
+ <description>I don't know maybe some thing strange</description>
+ <name>rendered</name>
+ <type>boolean</type>
+ </attribute>
+ <attribute>
+ <name>onenter</name>
+ <type>java.lang.String</type>
+ </attribute>
+ <attribute>
+ <name>onleave</name>
+ <type>java.lang.String</type>
+ </attribute>
+ <attribute>
+ <name>lang</name>
+ <type>java.lang.String</type>
+ </attribute>
+ <attribute>
+ <name>title</name>
+ <type>java.lang.String</type>
+ </attribute>
+ <attribute>
+ <name>style</name>
+ <type>java.lang.String</type>
+ </attribute>
+ <attribute>
+ <name>styleClass</name>
+ <type>java.lang.String</type>
+ </attribute>
+ <attribute>
+ <name>dir</name>
+ <type>java.lang.String</type>
+ </attribute>
+ <attribute>
+ <name>onclick</name>
+ <type>java.lang.String</type>
+ </attribute>
+ <attribute>
+ <name>ondblclick</name>
+ <type>java.lang.String</type>
+ </attribute>
+ <attribute>
+ <name>onmousedown</name>
+ <type>java.lang.String</type>
+ </attribute>
+ <attribute>
+ <name>onmousemove</name>
+ <type>java.lang.String</type>
+ </attribute>
+ <attribute>
+ <name>onmouseout</name>
+ <type>java.lang.String</type>
+ </attribute>
+ <attribute>
+ <name>onmouseover</name>
+ <type>java.lang.String</type>
+ </attribute>
+ <attribute>
+ <name>onmouseup</name>
+ <type>java.lang.String</type>
+ </attribute>
+ </tag>
+ <tag>
+ <tag-name>accordion</tag-name>
+ <component>
+ <component-type>org.richfaces.Accordion</component-type>
+ <renderer-type>org.richfaces.Accordion</renderer-type>
+ <handler-class/>
+ </component>
+ <attribute>
+ <name>cycledSwitching</name>
+ <type>boolean</type>
+ </attribute>
+ <attribute>
+ <name>switchType</name>
+ <type>org.richfaces.component.SwitchType</type>
+ </attribute>
+ <attribute>
+ <name>activeItem</name>
+ <type>java.lang.String</type>
+ </attribute>
+ <attribute>
+ <name>bypassUpdates</name>
+ <type>boolean</type>
+ </attribute>
+ <attribute>
+ <name>disableImplicitRender</name>
+ <type>boolean</type>
+ </attribute>
+ <attribute>
+ <name>data</name>
+ <type>java.lang.Object</type>
+ </attribute>
+ <attribute>
+ <name>status</name>
+ <type>java.lang.String</type>
+ </attribute>
+ <attribute>
+ <name>execute</name>
+ <type>java.lang.Object</type>
+ </attribute>
+ <attribute>
+ <name>render</name>
+ <type>java.lang.Object</type>
+ </attribute>
+ <attribute>
+ <name>immediate</name>
+ <type>boolean</type>
+ </attribute>
+ <attribute>
+ <name>itemChangeListener</name>
+ <type>javax.el.MethodExpression</type>
+ </attribute>
+ <attribute>
+ <description>Long long text</description>
+ <name>id</name>
+ <type>java.lang.String</type>
+ </attribute>
+ <attribute>
+ <description>binding description</description>
+ <name>binding</name>
+ <type>javax.faces.component.UIComponent</type>
+ </attribute>
+ <attribute>
+ <description>I don't know maybe some thing strange</description>
+ <name>rendered</name>
+ <type>boolean</type>
+ </attribute>
+ <attribute>
+ <name>width</name>
+ <type>java.lang.String</type>
+ </attribute>
+ <attribute>
+ <name>height</name>
+ <type>java.lang.String</type>
+ </attribute>
+ <attribute>
+ <name>itemHeaderClassActive</name>
+ <type>java.lang.String</type>
+ </attribute>
+ <attribute>
+ <name>itemHeaderClassDisabled</name>
+ <type>java.lang.String</type>
+ </attribute>
+ <attribute>
+ <name>itemHeaderClassInactive</name>
+ <type>java.lang.String</type>
+ </attribute>
+ <attribute>
+ <name>itemContentClass</name>
+ <type>java.lang.String</type>
+ </attribute>
+ <attribute>
+ <name>itemHeaderClass</name>
+ <type>java.lang.String</type>
+ </attribute>
+ <attribute>
+ <name>onitemchange</name>
+ <type>java.lang.String</type>
+ </attribute>
+ <attribute>
+ <name>onbeforeitemchange</name>
+ <type>java.lang.String</type>
+ </attribute>
+ <attribute>
+ <name>lang</name>
+ <type>java.lang.String</type>
+ </attribute>
+ <attribute>
+ <name>title</name>
+ <type>java.lang.String</type>
+ </attribute>
+ <attribute>
+ <name>style</name>
+ <type>java.lang.String</type>
+ </attribute>
+ <attribute>
+ <name>styleClass</name>
+ <type>java.lang.String</type>
+ </attribute>
+ <attribute>
+ <name>dir</name>
+ <type>java.lang.String</type>
+ </attribute>
+ <attribute>
+ <name>onclick</name>
+ <type>java.lang.String</type>
+ </attribute>
+ <attribute>
+ <name>ondblclick</name>
+ <type>java.lang.String</type>
+ </attribute>
+ <attribute>
+ <name>onmousedown</name>
+ <type>java.lang.String</type>
+ </attribute>
+ <attribute>
+ <name>onmousemove</name>
+ <type>java.lang.String</type>
+ </attribute>
+ <attribute>
+ <name>onmouseout</name>
+ <type>java.lang.String</type>
+ </attribute>
+ <attribute>
+ <name>onmouseover</name>
+ <type>java.lang.String</type>
+ </attribute>
+ <attribute>
+ <name>onmouseup</name>
+ <type>java.lang.String</type>
+ </attribute>
+ </tag>
+ <tag>
+ <tag-name>accordionItem</tag-name>
+ <component>
+ <component-type>org.richfaces.AccordionItem</component-type>
+ <renderer-type>org.richfaces.AccordionItem</renderer-type>
+ <handler-class/>
+ </component>
+ <attribute>
+ <name>disabled</name>
+ <type>boolean</type>
+ </attribute>
+ <attribute>
+ <name>header</name>
+ <type>java.lang.String</type>
+ </attribute>
+ <attribute>
+ <name>name</name>
+ <type>java.lang.String</type>
+ </attribute>
+ <attribute>
+ <name>switchType</name>
+ <type>org.richfaces.component.SwitchType</type>
+ </attribute>
+ <attribute>
+ <description>Long long text</description>
+ <name>id</name>
+ <type>java.lang.String</type>
+ </attribute>
+ <attribute>
+ <description>binding description</description>
+ <name>binding</name>
+ <type>javax.faces.component.UIComponent</type>
+ </attribute>
+ <attribute>
+ <description>I don't know maybe some thing strange</description>
+ <name>rendered</name>
+ <type>boolean</type>
+ </attribute>
+ <attribute>
+ <name>headerClassActive</name>
+ <type>java.lang.String</type>
+ </attribute>
+ <attribute>
+ <name>headerClassDisabled</name>
+ <type>java.lang.String</type>
+ </attribute>
+ <attribute>
+ <name>headerClassInactive</name>
+ <type>java.lang.String</type>
+ </attribute>
+ <attribute>
+ <name>headerClass</name>
+ <type>java.lang.String</type>
+ </attribute>
+ <attribute>
+ <name>headerStyle</name>
+ <type>java.lang.String</type>
+ </attribute>
+ <attribute>
+ <name>contentClass</name>
+ <type>java.lang.String</type>
+ </attribute>
+ <attribute>
+ <name>onheaderclick</name>
+ <type>java.lang.String</type>
+ </attribute>
+ <attribute>
+ <name>onheaderdblclick</name>
+ <type>java.lang.String</type>
+ </attribute>
+ <attribute>
+ <name>onheadermousedown</name>
+ <type>java.lang.String</type>
+ </attribute>
+ <attribute>
+ <name>onheadermousemove</name>
+ <type>java.lang.String</type>
+ </attribute>
+ <attribute>
+ <name>onheadermouseup</name>
+ <type>java.lang.String</type>
+ </attribute>
+ <attribute>
+ <name>onenter</name>
+ <type>java.lang.String</type>
+ </attribute>
+ <attribute>
+ <name>onleave</name>
+ <type>java.lang.String</type>
+ </attribute>
+ <attribute>
+ <name>lang</name>
+ <type>java.lang.String</type>
+ </attribute>
+ <attribute>
+ <name>title</name>
+ <type>java.lang.String</type>
+ </attribute>
+ <attribute>
+ <name>style</name>
+ <type>java.lang.String</type>
+ </attribute>
+ <attribute>
+ <name>styleClass</name>
+ <type>java.lang.String</type>
+ </attribute>
+ <attribute>
+ <name>dir</name>
+ <type>java.lang.String</type>
+ </attribute>
+ <attribute>
+ <name>onclick</name>
+ <type>java.lang.String</type>
+ </attribute>
+ <attribute>
+ <name>ondblclick</name>
+ <type>java.lang.String</type>
+ </attribute>
+ <attribute>
+ <name>onmousedown</name>
+ <type>java.lang.String</type>
+ </attribute>
+ <attribute>
+ <name>onmousemove</name>
+ <type>java.lang.String</type>
+ </attribute>
+ <attribute>
+ <name>onmouseout</name>
+ <type>java.lang.String</type>
+ </attribute>
+ <attribute>
+ <name>onmouseover</name>
+ <type>java.lang.String</type>
+ </attribute>
+ <attribute>
+ <name>onmouseup</name>
+ <type>java.lang.String</type>
+ </attribute>
+ </tag>
</facelet-taglib>
Modified: trunk/ui/output/ui/src/main/templates/dropdownmenu.template.xml
===================================================================
--- trunk/ui/output/ui/src/main/templates/dropdownmenu.template.xml 2010-12-09 17:26:24 UTC (rev 20483)
+++ trunk/ui/output/ui/src/main/templates/dropdownmenu.template.xml 2010-12-09 17:53:09 UTC (rev 20484)
@@ -49,7 +49,7 @@
</div>
<script type="text/javascript">
<cdk:scriptObject name="options">
- <cdk:scriptOption attributes="hideDelay showDelay popupWith jointPoint direction mode" />
+ <cdk:scriptOption attributes="hideDelay showDelay popupWith mode" />
<cdk:scriptOption attributes="onshow onhide ongroupshow ongrouphide onitemclick" wrapper="eventHandler"/>
</cdk:scriptObject>
Modified: trunk/ui/output/ui/src/test/java/org/richfaces/renderkit/html/DrowDownMenuRendererTest.java
===================================================================
--- trunk/ui/output/ui/src/test/java/org/richfaces/renderkit/html/DrowDownMenuRendererTest.java 2010-12-09 17:26:24 UTC (rev 20483)
+++ trunk/ui/output/ui/src/test/java/org/richfaces/renderkit/html/DrowDownMenuRendererTest.java 2010-12-09 17:53:09 UTC (rev 20484)
@@ -71,8 +71,7 @@
@Test
public void testAjaxClick() throws IOException, SAXException {
- HtmlPage page = environment.getPage("/dropDownMenu_ajaxMode.jsf");
-
+ HtmlPage page = environment.getPage("/dropDownMenu_ajaxMode.jsf");
HtmlDivision item = (HtmlDivision) page.getElementById("form:saveAll");
assertNotNull(item);
DropDownMenuBean.setCurrent("none");
Modified: trunk/ui/output/ui/src/test/resources/org/richfaces/renderkit/html/dropDownMenu_ajaxMode.xmlunit.xml
===================================================================
--- trunk/ui/output/ui/src/test/resources/org/richfaces/renderkit/html/dropDownMenu_ajaxMode.xmlunit.xml 2010-12-09 17:26:24 UTC (rev 20483)
+++ trunk/ui/output/ui/src/test/resources/org/richfaces/renderkit/html/dropDownMenu_ajaxMode.xmlunit.xml 2010-12-09 17:53:09 UTC (rev 20484)
@@ -54,7 +54,7 @@
</div>
<script type="text/javascript">
//<![CDATA[
-new RichFaces.ui.Menu("form:ddmenu",{"mode":"ajax"} ).initiateGroups([{"id":"form:group","horizontalOffset":"0","verticalOffset":"0","direction":"auto"} ] );
+new RichFaces.ui.Menu("form:ddmenu",{"mode":"ajax"} ).initiateGroups([{"id":"form:group"} ] );
//]]>
</script>
</div>
\ No newline at end of file
Modified: trunk/ui/output/ui/src/test/resources/org/richfaces/renderkit/html/dropDownMenu_serverMode.xmlunit.xml
===================================================================
--- trunk/ui/output/ui/src/test/resources/org/richfaces/renderkit/html/dropDownMenu_serverMode.xmlunit.xml 2010-12-09 17:26:24 UTC (rev 20483)
+++ trunk/ui/output/ui/src/test/resources/org/richfaces/renderkit/html/dropDownMenu_serverMode.xmlunit.xml 2010-12-09 17:53:09 UTC (rev 20484)
@@ -54,7 +54,7 @@
</div>
<script type="text/javascript">
//<![CDATA[
-new RichFaces.ui.Menu("form:ddmenu").initiateGroups([{"id":"form:group","horizontalOffset":"0","verticalOffset":"0","direction":"auto"} ] );
+new RichFaces.ui.Menu("form:ddmenu").initiateGroups([{"id":"form:group"} ] );
//]]>
</script>
</div>
\ No newline at end of file
14 years, 1 month
JBoss Rich Faces SVN: r20483 - in branches/RF-8742-1: cdk/maven-resources-plugin/src/main/java/org/richfaces/cdk and 67 other directories.
by richfaces-svn-commits@lists.jboss.org
Author: alexsmirnov
Date: 2010-12-09 12:26:24 -0500 (Thu, 09 Dec 2010)
New Revision: 20483
Added:
branches/RF-8742-1/cdk/maven-resources-plugin/src/main/java/org/richfaces/cdk/FileNameMapping.java
branches/RF-8742-1/core/api/src/main/java/org/richfaces/application/Module.java
branches/RF-8742-1/core/impl/src/main/java/org/richfaces/application/SkinningExternalContextFactory.java
branches/RF-8742-1/examples/output-demo/src/main/java/org/richfaces/CollapsiblePanel.java
branches/RF-8742-1/examples/output-demo/src/main/java/org/richfaces/RF9851.java
branches/RF-8742-1/examples/output-demo/src/main/webapp/examples/accordion/RF-9851.xhtml
branches/RF-8742-1/examples/richfaces-showcase/src/main/java/org/richfaces/demo/dropdownmenu/
branches/RF-8742-1/examples/richfaces-showcase/src/main/java/org/richfaces/demo/dropdownmenu/DropDownMenuBean.java
branches/RF-8742-1/examples/richfaces-showcase/src/main/java/org/richfaces/demo/fileupload/
branches/RF-8742-1/examples/richfaces-showcase/src/main/java/org/richfaces/demo/fileupload/FileUploadBean.java
branches/RF-8742-1/examples/richfaces-showcase/src/main/java/org/richfaces/demo/fileupload/UplocadedImage.java
branches/RF-8742-1/examples/richfaces-showcase/src/main/webapp/richfaces/dropDownMenu/
branches/RF-8742-1/examples/richfaces-showcase/src/main/webapp/richfaces/dropDownMenu/samples/
branches/RF-8742-1/examples/richfaces-showcase/src/main/webapp/richfaces/dropDownMenu/samples/sideMenu-sample.xhtml
branches/RF-8742-1/examples/richfaces-showcase/src/main/webapp/richfaces/dropDownMenu/samples/topMenu-sample.xhtml
branches/RF-8742-1/examples/richfaces-showcase/src/main/webapp/richfaces/dropDownMenu/sideMenu.xhtml
branches/RF-8742-1/examples/richfaces-showcase/src/main/webapp/richfaces/dropDownMenu/topMenu.xhtml
branches/RF-8742-1/examples/richfaces-showcase/src/main/webapp/richfaces/fileUpload/
branches/RF-8742-1/examples/richfaces-showcase/src/main/webapp/richfaces/fileUpload/imgUpload.xhtml
branches/RF-8742-1/examples/richfaces-showcase/src/main/webapp/richfaces/fileUpload/samples/
branches/RF-8742-1/examples/richfaces-showcase/src/main/webapp/richfaces/fileUpload/samples/imgUpload-sample.xhtml
branches/RF-8742-1/ui/common/ui/src/main/java/org/richfaces/renderkit/AjaxFunction.java
branches/RF-8742-1/ui/common/ui/src/main/java/org/richfaces/renderkit/AjaxOptions.java
branches/RF-8742-1/ui/output/ui/src/main/resources/META-INF/resources/org.richfaces/accordion.js
branches/RF-8742-1/ui/output/ui/src/main/resources/META-INF/resources/org.richfaces/accordionItem.js
branches/RF-8742-1/ui/output/ui/src/main/resources/META-INF/resources/org.richfaces/collapsiblePanel.js
branches/RF-8742-1/ui/output/ui/src/main/resources/META-INF/resources/org.richfaces/collapsiblePanelItem.js
branches/RF-8742-1/ui/output/ui/src/main/resources/META-INF/resources/org.richfaces/panelMenu.js
branches/RF-8742-1/ui/output/ui/src/main/resources/META-INF/resources/org.richfaces/panelMenuGroup.js
branches/RF-8742-1/ui/output/ui/src/main/resources/META-INF/resources/org.richfaces/panelMenuItem.js
branches/RF-8742-1/ui/output/ui/src/main/resources/META-INF/resources/org.richfaces/tab.js
branches/RF-8742-1/ui/output/ui/src/main/resources/META-INF/resources/org.richfaces/tabPanel.js
branches/RF-8742-1/ui/output/ui/src/main/resources/META-INF/resources/org.richfaces/togglePanel.js
branches/RF-8742-1/ui/output/ui/src/main/resources/META-INF/resources/org.richfaces/togglePanelItem.js
branches/RF-8742-1/ui/output/ui/src/main/resources/META-INF/resources/org.richfaces/tooltip.js
branches/RF-8742-1/ui/output/ui/src/test/java/org/richfaces/component/DropDownMenuBean.java
branches/RF-8742-1/ui/output/ui/src/test/java/org/richfaces/component/UIDropDownMenuTest.java
branches/RF-8742-1/ui/output/ui/src/test/java/org/richfaces/component/UIMenuGroupTest.java
branches/RF-8742-1/ui/output/ui/src/test/java/org/richfaces/component/UIMenuItemTest.java
branches/RF-8742-1/ui/output/ui/src/test/java/org/richfaces/component/UIMenuSeparatorTest.java
branches/RF-8742-1/ui/output/ui/src/test/java/org/richfaces/renderkit/html/DrowDownMenuRendererTest.java
branches/RF-8742-1/ui/output/ui/src/test/java/org/richfaces/renderkit/html/MenuItemRendererTest.java
branches/RF-8742-1/ui/output/ui/src/test/resources/org/richfaces/component/
branches/RF-8742-1/ui/output/ui/src/test/resources/org/richfaces/component/faces-config.xml
branches/RF-8742-1/ui/output/ui/src/test/resources/org/richfaces/renderkit/html/dropDownMenu_ajaxMode.xhtml
branches/RF-8742-1/ui/output/ui/src/test/resources/org/richfaces/renderkit/html/dropDownMenu_ajaxMode.xmlunit.xml
branches/RF-8742-1/ui/output/ui/src/test/resources/org/richfaces/renderkit/html/dropDownMenu_serverMode.xhtml
branches/RF-8742-1/ui/output/ui/src/test/resources/org/richfaces/renderkit/html/dropDownMenu_serverMode.xmlunit.xml
branches/RF-8742-1/ui/output/ui/src/test/resources/org/richfaces/renderkit/html/menuItem_ajaxMode.xhtml
branches/RF-8742-1/ui/output/ui/src/test/resources/org/richfaces/renderkit/html/menuItem_ajaxMode.xmlunit.xml
branches/RF-8742-1/ui/output/ui/src/test/resources/org/richfaces/renderkit/html/menuItem_clientMode.xhtml
branches/RF-8742-1/ui/output/ui/src/test/resources/org/richfaces/renderkit/html/menuItem_clientMode.xmlunit.xml
branches/RF-8742-1/ui/output/ui/src/test/resources/org/richfaces/renderkit/html/menuItem_serverMode.xhtml
branches/RF-8742-1/ui/output/ui/src/test/resources/org/richfaces/renderkit/html/menuItem_serverMode.xmlunit.xml
Removed:
branches/RF-8742-1/core/impl/src/main/java/org/richfaces/application/Module.java
branches/RF-8742-1/examples/richfaces-showcase/src/main/java/org/richfaces/demo/dropdownmenu/DropDownMenuBean.java
branches/RF-8742-1/examples/richfaces-showcase/src/main/java/org/richfaces/demo/fileupload/FileUploadBean.java
branches/RF-8742-1/examples/richfaces-showcase/src/main/java/org/richfaces/demo/fileupload/UplocadedImage.java
branches/RF-8742-1/examples/richfaces-showcase/src/main/webapp/richfaces/dropDownMenu/samples/
branches/RF-8742-1/examples/richfaces-showcase/src/main/webapp/richfaces/dropDownMenu/samples/sideMenu-sample.xhtml
branches/RF-8742-1/examples/richfaces-showcase/src/main/webapp/richfaces/dropDownMenu/samples/topMenu-sample.xhtml
branches/RF-8742-1/examples/richfaces-showcase/src/main/webapp/richfaces/dropDownMenu/sideMenu.xhtml
branches/RF-8742-1/examples/richfaces-showcase/src/main/webapp/richfaces/dropDownMenu/topMenu.xhtml
branches/RF-8742-1/examples/richfaces-showcase/src/main/webapp/richfaces/fileUpload/imgUpload.xhtml
branches/RF-8742-1/examples/richfaces-showcase/src/main/webapp/richfaces/fileUpload/samples/
branches/RF-8742-1/examples/richfaces-showcase/src/main/webapp/richfaces/fileUpload/samples/imgUpload-sample.xhtml
branches/RF-8742-1/ui/common/ui/src/main/java/org/richfaces/renderkit/AjaxEventOptions.java
branches/RF-8742-1/ui/core/ui/src/main/old_configs/
branches/RF-8742-1/ui/core/ui/src/main/templates/org/ajax4jsf/renderkit/html/log.jspx
branches/RF-8742-1/ui/output/ui/src/main/resources/META-INF/resources/org.richfaces/Accordion.js
branches/RF-8742-1/ui/output/ui/src/main/resources/META-INF/resources/org.richfaces/AccordionItem.js
branches/RF-8742-1/ui/output/ui/src/main/resources/META-INF/resources/org.richfaces/CollapsiblePanel.js
branches/RF-8742-1/ui/output/ui/src/main/resources/META-INF/resources/org.richfaces/CollapsiblePanelItem.js
branches/RF-8742-1/ui/output/ui/src/main/resources/META-INF/resources/org.richfaces/PanelMenu.js
branches/RF-8742-1/ui/output/ui/src/main/resources/META-INF/resources/org.richfaces/PanelMenuGroup.js
branches/RF-8742-1/ui/output/ui/src/main/resources/META-INF/resources/org.richfaces/PanelMenuItem.js
branches/RF-8742-1/ui/output/ui/src/main/resources/META-INF/resources/org.richfaces/Tab.js
branches/RF-8742-1/ui/output/ui/src/main/resources/META-INF/resources/org.richfaces/TabPanel.js
branches/RF-8742-1/ui/output/ui/src/main/resources/META-INF/resources/org.richfaces/TogglePanel.js
branches/RF-8742-1/ui/output/ui/src/main/resources/META-INF/resources/org.richfaces/TogglePanelItem.js
branches/RF-8742-1/ui/output/ui/src/main/resources/META-INF/resources/org.richfaces/Tooltip.js
branches/RF-8742-1/ui/output/ui/src/test/resources/org/richfaces/component/faces-config.xml
Modified:
branches/RF-8742-1/
branches/RF-8742-1/cdk/maven-resources-plugin/src/main/java/org/richfaces/cdk/ProcessMojo.java
branches/RF-8742-1/cdk/maven-resources-plugin/src/main/java/org/richfaces/cdk/naming/FileNameMapperImpl.java
branches/RF-8742-1/core/api/src/main/java/org/ajax4jsf/context/AjaxContext.java
branches/RF-8742-1/core/impl/src/main/java/org/ajax4jsf/context/AjaxContextImpl.java
branches/RF-8742-1/core/impl/src/main/resources/META-INF/components.faces-config.xml
branches/RF-8742-1/core/impl/src/main/resources/META-INF/resources/jquery.position.js
branches/RF-8742-1/core/impl/src/main/resources/META-INF/resources/richfaces.js
branches/RF-8742-1/core/impl/src/test/resources/javascript/4_0_0.html
branches/RF-8742-1/examples/input-demo/src/main/java/org/richfaces/demo/CalendarBean.java
branches/RF-8742-1/examples/input-demo/src/main/java/org/richfaces/demo/InputNumberSliderBean.java
branches/RF-8742-1/examples/input-demo/src/main/webapp/examples/autocomplete.xhtml
branches/RF-8742-1/examples/input-demo/src/main/webapp/examples/calendar.xhtml
branches/RF-8742-1/examples/input-demo/src/main/webapp/examples/inputNumberSlider.xhtml
branches/RF-8742-1/examples/output-demo/src/main/java/org/richfaces/ModalPanel.java
branches/RF-8742-1/examples/output-demo/src/main/webapp/WEB-INF/faces-config.xml
branches/RF-8742-1/examples/output-demo/src/main/webapp/examples/collapsiblePanel.xhtml
branches/RF-8742-1/examples/output-demo/src/main/webapp/examples/popupPanel.xhtml
branches/RF-8742-1/examples/output-demo/src/main/webapp/qunit/tooltip.xhtml
branches/RF-8742-1/examples/output-demo/src/main/webapp/templates/template.xhtml
branches/RF-8742-1/examples/richfaces-showcase/src/main/resources/org/richfaces/demo/data/common/navigation.xml
branches/RF-8742-1/examples/richfaces-showcase/src/main/webapp-gae/WEB-INF/web.xml
branches/RF-8742-1/examples/richfaces-showcase/src/main/webapp/WEB-INF/web.xml
branches/RF-8742-1/examples/richfaces-showcase/src/main/webapp/richfaces/calendar/samples/clientStylingDisablement-sample.xhtml
branches/RF-8742-1/examples/richfaces-showcase/src/main/webapp/richfaces/dataTable/samples/simpleTable-sample.xhtml
branches/RF-8742-1/examples/richfaces-showcase/src/main/webapp/richfaces/dataTable/simpleTable.xhtml
branches/RF-8742-1/examples/richfaces-showcase/src/main/webapp/richfaces/inputNumberSlider/samples/sliders-sample.xhtml
branches/RF-8742-1/examples/richfaces-showcase/src/main/webapp/richfaces/subTableToggleControl/samples/subTableToggleControl-sample.xhtml
branches/RF-8742-1/examples/richfaces-showcase/src/main/webapp/richfaces/subTableToggleControl/subTableToggleControl.xhtml
branches/RF-8742-1/examples/richfaces-showcase/src/main/webapp/richfaces/tooltip/tooltip.xhtml
branches/RF-8742-1/ui/common/ui/src/main/java/org/richfaces/renderkit/AjaxChildrenRenderer.java
branches/RF-8742-1/ui/common/ui/src/main/java/org/richfaces/renderkit/util/AjaxRendererUtils.java
branches/RF-8742-1/ui/common/ui/src/main/java/org/richfaces/renderkit/util/HandlersChain.java
branches/RF-8742-1/ui/core/ui/src/main/java/org/ajax4jsf/renderkit/AjaxBehaviorRenderer.java
branches/RF-8742-1/ui/core/ui/src/main/java/org/richfaces/renderkit/AjaxFunctionRendererBase.java
branches/RF-8742-1/ui/dist/richfaces-components-ui/pom.xml
branches/RF-8742-1/ui/dnd/ui/pom.xml
branches/RF-8742-1/ui/input/ui/pom.xml
branches/RF-8742-1/ui/input/ui/src/main/config/faces-config.xml
branches/RF-8742-1/ui/input/ui/src/main/java/org/richfaces/component/AbstractCalendar.java
branches/RF-8742-1/ui/input/ui/src/main/java/org/richfaces/component/AbstractSelectComponent.java
branches/RF-8742-1/ui/input/ui/src/main/java/org/richfaces/context/FileUploadPartialViewContextFactory.java
branches/RF-8742-1/ui/input/ui/src/main/java/org/richfaces/renderkit/AutocompleteRendererBase.java
branches/RF-8742-1/ui/input/ui/src/main/java/org/richfaces/renderkit/CalendarRendererBase.java
branches/RF-8742-1/ui/input/ui/src/main/java/org/richfaces/request/FileParam.java
branches/RF-8742-1/ui/input/ui/src/main/java/org/richfaces/request/MultipartRequest.java
branches/RF-8742-1/ui/input/ui/src/main/java/org/richfaces/utils/CalendarHelper.java
branches/RF-8742-1/ui/input/ui/src/main/resources/META-INF/resources/org.richfaces/Autocomplete.js
branches/RF-8742-1/ui/input/ui/src/main/resources/META-INF/resources/org.richfaces/AutocompleteBase.js
branches/RF-8742-1/ui/input/ui/src/main/resources/META-INF/resources/org.richfaces/calendar.js
branches/RF-8742-1/ui/input/ui/src/main/resources/META-INF/resources/org.richfaces/inplaceSelect.js
branches/RF-8742-1/ui/input/ui/src/main/resources/META-INF/resources/org.richfaces/select.js
branches/RF-8742-1/ui/input/ui/src/main/templates/inputnumberslider.template.xml
branches/RF-8742-1/ui/input/ui/src/main/templates/select.template.xml
branches/RF-8742-1/ui/iteration/ui/pom-list.xml
branches/RF-8742-1/ui/iteration/ui/src/main/java/org/richfaces/component/DataTableDataIterator.java
branches/RF-8742-1/ui/iteration/ui/src/main/java/org/richfaces/component/DataTableFixedChildrenIterator.java
branches/RF-8742-1/ui/iteration/ui/src/main/java/org/richfaces/renderkit/DataScrollerBaseRenderer.java
branches/RF-8742-1/ui/iteration/ui/src/main/java/org/richfaces/renderkit/DataTableRenderer.java
branches/RF-8742-1/ui/iteration/ui/src/main/java/org/richfaces/renderkit/ExtendedDataTableRenderer.java
branches/RF-8742-1/ui/iteration/ui/src/main/java/org/richfaces/renderkit/TreeRendererBase.java
branches/RF-8742-1/ui/iteration/ui/src/main/resources/META-INF/resources/org.richfaces/extendedDataTable.js
branches/RF-8742-1/ui/output/ui/pom.xml
branches/RF-8742-1/ui/output/ui/src/main/java/org/richfaces/component/AbstractDropDownMenu.java
branches/RF-8742-1/ui/output/ui/src/main/java/org/richfaces/component/AbstractPanelMenu.java
branches/RF-8742-1/ui/output/ui/src/main/java/org/richfaces/component/AbstractPanelMenuItem.java
branches/RF-8742-1/ui/output/ui/src/main/java/org/richfaces/component/AbstractPopupPanel.java
branches/RF-8742-1/ui/output/ui/src/main/java/org/richfaces/component/AbstractTogglePanel.java
branches/RF-8742-1/ui/output/ui/src/main/java/org/richfaces/component/AbstractTooltip.java
branches/RF-8742-1/ui/output/ui/src/main/java/org/richfaces/component/UIPanelMenu.java
branches/RF-8742-1/ui/output/ui/src/main/java/org/richfaces/component/UIPanelMenuItem.java
branches/RF-8742-1/ui/output/ui/src/main/java/org/richfaces/component/UITogglePanel.java
branches/RF-8742-1/ui/output/ui/src/main/java/org/richfaces/component/UITooltip.java
branches/RF-8742-1/ui/output/ui/src/main/java/org/richfaces/renderkit/html/AccordionItemRenderer.java
branches/RF-8742-1/ui/output/ui/src/main/java/org/richfaces/renderkit/html/AccordionRenderer.java
branches/RF-8742-1/ui/output/ui/src/main/java/org/richfaces/renderkit/html/CollapsiblePanelRenderer.java
branches/RF-8742-1/ui/output/ui/src/main/java/org/richfaces/renderkit/html/DivPanelRenderer.java
branches/RF-8742-1/ui/output/ui/src/main/java/org/richfaces/renderkit/html/PanelMenuRenderer.java
branches/RF-8742-1/ui/output/ui/src/main/java/org/richfaces/renderkit/html/PopupPanelBaseRenderer.java
branches/RF-8742-1/ui/output/ui/src/main/java/org/richfaces/renderkit/html/ProgressBarBaseRenderer.java
branches/RF-8742-1/ui/output/ui/src/main/java/org/richfaces/renderkit/html/TabPanelRenderer.java
branches/RF-8742-1/ui/output/ui/src/main/java/org/richfaces/renderkit/html/TabRenderer.java
branches/RF-8742-1/ui/output/ui/src/main/java/org/richfaces/renderkit/html/TogglePanelItemRenderer.java
branches/RF-8742-1/ui/output/ui/src/main/java/org/richfaces/renderkit/html/TogglePanelRenderer.java
branches/RF-8742-1/ui/output/ui/src/main/java/org/richfaces/renderkit/html/TooltipRenderer.java
branches/RF-8742-1/ui/output/ui/src/main/resources/META-INF/pn.faces-config.xml
branches/RF-8742-1/ui/output/ui/src/main/resources/META-INF/pn.taglib.xml
branches/RF-8742-1/ui/output/ui/src/main/resources/META-INF/resources/org.richfaces/dropdownmenu.ecss
branches/RF-8742-1/ui/output/ui/src/main/resources/META-INF/resources/org.richfaces/menu.js
branches/RF-8742-1/ui/output/ui/src/main/resources/META-INF/resources/org.richfaces/popupPanel.js
branches/RF-8742-1/ui/output/ui/src/main/resources/META-INF/resources/org.richfaces/progressBar.js
branches/RF-8742-1/ui/output/ui/src/main/templates/popupPanel.template.xml
branches/RF-8742-1/ui/parent/pom.xml
Log:
Merged revisions 20422-20423,20428,20430-20433,20437,20445,20447,20449-20451,20453-20454,20456-20460,20463-20464,20466,20468-20470,20475-20482 via svnmerge from
https://svn.jboss.org/repos/richfaces/trunk
.......
r20422 | nbelaevski | 2010-12-06 11:22:19 -0800 (Mon, 06 Dec 2010) | 1 line
https://jira.jboss.org/browse/RF-9882
.......
r20423 | nbelaevski | 2010-12-06 12:34:27 -0800 (Mon, 06 Dec 2010) | 2 lines
maven-resources-plugin:
- file name mappings are now applied in the same order as they are defined in pom.xml
.......
r20428 | amarkhel | 2010-12-07 02:32:26 -0800 (Tue, 07 Dec 2010) | 1 line
https://jira.jboss.org/browse/RF-9676 Dropdown menu component minor update
.......
r20430 | ilya_shaikovsky | 2010-12-07 03:43:29 -0800 (Tue, 07 Dec 2010) | 1 line
https://jira.jboss.org/browse/RF-9792
.......
r20431 | ilya_shaikovsky | 2010-12-07 03:56:13 -0800 (Tue, 07 Dec 2010) | 1 line
checkstyle corrections
.......
r20432 | abelevich | 2010-12-07 04:41:00 -0800 (Tue, 07 Dec 2010) | 1 line
RF-9855, RF-9800
.......
r20433 | amarkhel | 2010-12-07 05:02:18 -0800 (Tue, 07 Dec 2010) | 1 line
https://jira.jboss.org/browse/RF-9676 Dropdown menu component minor update
.......
r20437 | ilya_shaikovsky | 2010-12-07 07:33:15 -0800 (Tue, 07 Dec 2010) | 1 line
minor syntax corrections
.......
r20445 | amarkhel | 2010-12-08 00:13:40 -0800 (Wed, 08 Dec 2010) | 1 line
https://jira.jboss.org/browse/RF-9676 Dropdown menu component minor update
.......
r20447 | amarkhel | 2010-12-08 02:18:04 -0800 (Wed, 08 Dec 2010) | 1 line
RF-9742: Popup panel: rename ZIndex attribute
.......
r20449 | pyaschenko | 2010-12-08 03:29:25 -0800 (Wed, 08 Dec 2010) | 3 lines
http://jira.jboss.com/jira/browse/RF-9648
offsets support also was added to jquery.position plugin
.......
r20450 | pyaschenko | 2010-12-08 03:31:30 -0800 (Wed, 08 Dec 2010) | 2 lines
http://jira.jboss.com/jira/browse/RF-9648
example fix
.......
r20451 | amarkhel | 2010-12-08 03:34:06 -0800 (Wed, 08 Dec 2010) | 1 line
RF-9888 Popup panel: attribute zIndex ignored.
.......
r20453 | Alex.Kolonitsky | 2010-12-08 04:16:21 -0800 (Wed, 08 Dec 2010) | 1 line
RF-9851 accordion: wrong decode behavior
.......
r20454 | Alex.Kolonitsky | 2010-12-08 04:19:29 -0800 (Wed, 08 Dec 2010) | 1 line
RF-9890 panelMenu: itemChangeListener never fired and activeItem not put to model
.......
r20456 | Alex.Kolonitsky | 2010-12-08 04:27:08 -0800 (Wed, 08 Dec 2010) | 2 lines
RF-9608 - Rename JavaScript resources to lower case
.......
r20457 | Alex.Kolonitsky | 2010-12-08 04:31:27 -0800 (Wed, 08 Dec 2010) | 2 lines
RF-9608 - Rename JavaScript resources to lower case
.......
r20458 | amarkhel | 2010-12-08 04:55:29 -0800 (Wed, 08 Dec 2010) | 1 line
RF-9788 Dropdown menu component: unit tests for server-side code.
.......
r20459 | amarkhel | 2010-12-08 05:24:39 -0800 (Wed, 08 Dec 2010) | 1 line
RF-9905 popupPanel: popupPanel.js: this.id should contains component id but not an object
.......
r20460 | ilya_shaikovsky | 2010-12-08 05:43:58 -0800 (Wed, 08 Dec 2010) | 1 line
https://jira.jboss.org/browse/RF-9502
.......
r20463 | Alex.Kolonitsky | 2010-12-08 06:11:26 -0800 (Wed, 08 Dec 2010) | 1 line
RF-9550 TabPanel should not be JDK 6 dependent.
.......
r20464 | amarkhel | 2010-12-08 07:42:52 -0800 (Wed, 08 Dec 2010) | 1 line
RF-9887 : Popup panel: scrollable area too big
.......
r20466 | konstantin.mishin | 2010-12-08 08:16:00 -0800 (Wed, 08 Dec 2010) | 1 line
small code cleanup
.......
r20468 | Alex.Kolonitsky | 2010-12-09 00:49:25 -0800 (Thu, 09 Dec 2010) | 2 lines
RF-9624 Remove richfaces-core-impl from all pom.xml files
Only from ui
.......
r20469 | Alex.Kolonitsky | 2010-12-09 01:31:55 -0800 (Thu, 09 Dec 2010) | 2 lines
RF-9624 Remove richfaces-core-impl from all pom.xml files
Only from ui
.......
r20470 | Alex.Kolonitsky | 2010-12-09 01:38:14 -0800 (Thu, 09 Dec 2010) | 2 lines
RF-9865 - Tooltip: unify component name and other component's attributes
.......
r20475 | Alex.Kolonitsky | 2010-12-09 05:51:23 -0800 (Thu, 09 Dec 2010) | 1 line
RF-9959 Collapsible panel: toggleListener should accept methods with event parameter
.......
r20476 | amarkhel | 2010-12-09 06:04:09 -0800 (Thu, 09 Dec 2010) | 2 lines
https://jira.jboss.org/browse/RF-9837 Calendar: attribute defaultTime doesn't work
defaultTime attribute and time pattern is corrected
.......
r20477 | nbelaevski | 2010-12-09 06:05:21 -0800 (Thu, 09 Dec 2010) | 1 line
Removed legacy cofigs from core/ui
.......
r20478 | nbelaevski | 2010-12-09 06:07:18 -0800 (Thu, 09 Dec 2010) | 4 lines
https://issues.jboss.org/browse/RF-9809
Removed legacy cofigs from core/ui
Updated showcase for new subtable/toggler tag names
Fixed small mistake in showcase code
.......
r20479 | nbelaevski | 2010-12-09 06:40:27 -0800 (Thu, 09 Dec 2010) | 1 line
https://issues.jboss.org/browse/RF-9778
.......
r20480 | Alex.Kolonitsky | 2010-12-09 06:50:01 -0800 (Thu, 09 Dec 2010) | 1 line
RF-9773 rich:tabPanel - replace attribute limitToList with disableImplicitRender
.......
r20481 | nbelaevski | 2010-12-09 07:00:26 -0800 (Thu, 09 Dec 2010) | 1 line
Added workaround for http://java.net/jira/browse/JAVASERVERFACES-1646
.......
r20482 | pyaschenko | 2010-12-09 07:06:40 -0800 (Thu, 09 Dec 2010) | 1 line
http://jira.jboss.com/jira/browse/RF-9835
.......
Property changes on: branches/RF-8742-1
___________________________________________________________________
Name: svnmerge-integrated
- /trunk:1-20419
+ /trunk:1-20482
Copied: branches/RF-8742-1/cdk/maven-resources-plugin/src/main/java/org/richfaces/cdk/FileNameMapping.java (from rev 20482, trunk/cdk/maven-resources-plugin/src/main/java/org/richfaces/cdk/FileNameMapping.java)
===================================================================
--- branches/RF-8742-1/cdk/maven-resources-plugin/src/main/java/org/richfaces/cdk/FileNameMapping.java (rev 0)
+++ branches/RF-8742-1/cdk/maven-resources-plugin/src/main/java/org/richfaces/cdk/FileNameMapping.java 2010-12-09 17:26:24 UTC (rev 20483)
@@ -0,0 +1,61 @@
+/*
+ * JBoss, Home of Professional Open Source
+ * Copyright 2010, Red Hat, Inc. and individual contributors
+ * by the @authors tag. See the copyright.txt in the distribution for a
+ * full listing of individual contributors.
+ *
+ * This is free software; you can redistribute it and/or modify it
+ * under the terms of the GNU Lesser General Public License as
+ * published by the Free Software Foundation; either version 2.1 of
+ * the License, or (at your option) any later version.
+ *
+ * This software is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
+ * Lesser General Public License for more details.
+ *
+ * You should have received a copy of the GNU Lesser General Public
+ * License along with this software; if not, write to the Free
+ * Software Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA
+ * 02110-1301 USA, or see the FSF site: http://www.fsf.org.
+ */
+package org.richfaces.cdk;
+
+import java.util.regex.Pattern;
+
+/**
+ * @author Nick Belaevski
+ *
+ */
+public class FileNameMapping {
+
+ private String name;
+
+ private String value;
+
+ private Pattern namePattern = null;
+
+ public String getName() {
+ return name;
+ }
+
+ public void setName(String name) {
+ this.name = name;
+ }
+
+ public String getValue() {
+ return value;
+ }
+
+ public void setValue(String value) {
+ this.value = value;
+ }
+
+ public Pattern getNamePattern() {
+ if (namePattern == null) {
+ namePattern = Pattern.compile(name);
+ }
+
+ return namePattern;
+ }
+}
Modified: branches/RF-8742-1/cdk/maven-resources-plugin/src/main/java/org/richfaces/cdk/ProcessMojo.java
===================================================================
--- branches/RF-8742-1/cdk/maven-resources-plugin/src/main/java/org/richfaces/cdk/ProcessMojo.java 2010-12-09 15:06:40 UTC (rev 20482)
+++ branches/RF-8742-1/cdk/maven-resources-plugin/src/main/java/org/richfaces/cdk/ProcessMojo.java 2010-12-09 17:26:24 UTC (rev 20483)
@@ -36,7 +36,6 @@
import java.util.Collections;
import java.util.List;
import java.util.Locale;
-import java.util.Properties;
import java.util.concurrent.CompletionService;
import java.util.concurrent.ExecutionException;
import java.util.concurrent.ExecutorService;
@@ -79,7 +78,6 @@
import com.google.common.base.Predicates;
import com.google.common.collect.Constraints;
import com.google.common.collect.Lists;
-import com.google.common.collect.Maps;
import com.google.common.collect.Sets;
/**
* @goal process
@@ -151,7 +149,7 @@
* @parameter
*/
// TODO review usage of properties?
- private Properties fileNameMappings = new Properties();
+ private FileNameMapping[] fileNameMappings = new FileNameMapping[0];
/**
* @parameter
@@ -286,7 +284,7 @@
ResourceHandler resourceHandler = new DynamicResourceHandler(staticResourceHandler, resourceFactory);
// TODO set webroot
- faces = new FacesImpl(null, new FileNameMapperImpl(Maps.fromProperties(fileNameMappings)), resourceHandler);
+ faces = new FacesImpl(null, new FileNameMapperImpl(fileNameMappings), resourceHandler);
faces.start();
ResourceWriterImpl resourceWriter = new ResourceWriterImpl(resourceOutputDir, resourceMappingDir, resourceProcessors);
Modified: branches/RF-8742-1/cdk/maven-resources-plugin/src/main/java/org/richfaces/cdk/naming/FileNameMapperImpl.java
===================================================================
--- branches/RF-8742-1/cdk/maven-resources-plugin/src/main/java/org/richfaces/cdk/naming/FileNameMapperImpl.java 2010-12-09 15:06:40 UTC (rev 20482)
+++ branches/RF-8742-1/cdk/maven-resources-plugin/src/main/java/org/richfaces/cdk/naming/FileNameMapperImpl.java 2010-12-09 17:26:24 UTC (rev 20483)
@@ -21,73 +21,34 @@
*/
package org.richfaces.cdk.naming;
-import java.util.List;
-import java.util.Map;
-import java.util.Map.Entry;
import java.util.regex.Matcher;
-import java.util.regex.Pattern;
import org.richfaces.cdk.FileNameMapper;
+import org.richfaces.cdk.FileNameMapping;
-import com.google.common.collect.Lists;
-
/**
* @author Nick Belaevski
*
*/
public class FileNameMapperImpl implements FileNameMapper {
- private static final class Mapping {
+ private FileNameMapping[] fileNameMappings;
- private Pattern pattern;
-
- private String replacement;
-
- public Mapping(Pattern pattern, String replacement) {
- super();
- this.pattern = pattern;
- this.replacement = replacement;
- }
-
- public Pattern getPattern() {
- return pattern;
- }
-
- public String getReplacement() {
- return replacement;
- }
- }
-
- private List<Mapping> fileNameMappings;
-
- public FileNameMapperImpl(Map<String, String> fileNameMappings) {
+ public FileNameMapperImpl(FileNameMapping[] fileNameMappings) {
super();
- this.fileNameMappings = compileMappings(fileNameMappings);
+ this.fileNameMappings = fileNameMappings;
}
- private static List<Mapping> compileMappings(Map<String, String> mappings) {
- List<Mapping> result = Lists.newArrayList();
-
- for (Entry<String, String> entry: mappings.entrySet()) {
- Pattern pattern = Pattern.compile((String) entry.getKey());
- String replacement = entry.getValue();
-
- result.add(new Mapping(pattern, replacement));
- }
-
- return result;
- }
-
@Override
public String createName(String resourcePath) {
if (resourcePath == null) {
return resourcePath;
}
- for (Mapping mapping : fileNameMappings) {
- Matcher matcher = mapping.getPattern().matcher(resourcePath);
+ for (FileNameMapping mapping : fileNameMappings) {
+ Matcher matcher = mapping.getNamePattern().matcher(resourcePath);
if (matcher.find()) {
- return matcher.replaceAll(mapping.getReplacement());
+ return matcher.replaceAll(mapping.getValue());
}
}
Modified: branches/RF-8742-1/core/api/src/main/java/org/ajax4jsf/context/AjaxContext.java
===================================================================
--- branches/RF-8742-1/core/api/src/main/java/org/ajax4jsf/context/AjaxContext.java 2010-12-09 15:06:40 UTC (rev 20482)
+++ branches/RF-8742-1/core/api/src/main/java/org/ajax4jsf/context/AjaxContext.java 2010-12-09 17:26:24 UTC (rev 20483)
@@ -47,7 +47,7 @@
private static final String DEFAULT_CONTEXT_CLASS = "org.ajax4jsf.context.AjaxContextImpl";
private static Map<ClassLoader, Class<? extends AjaxContext>> ajaxContextClasses =
new HashMap<ClassLoader, Class<? extends AjaxContext>>();
- private boolean limitToList;
+ private boolean disableImplicitRender;
protected AjaxContext() { }
@@ -125,12 +125,12 @@
public abstract void setSubmittedRegionClientId(String submittedClientId);
- public boolean isLimitToList() {
- return limitToList;
+ public boolean isDisableImplicitRender() {
+ return disableImplicitRender;
}
- public void setLimitToList(boolean limitToList) {
- this.limitToList = limitToList;
+ public void setDisableImplicitRender(boolean disableImplicitRender) {
+ this.disableImplicitRender = disableImplicitRender;
}
/**
Copied: branches/RF-8742-1/core/api/src/main/java/org/richfaces/application/Module.java (from rev 20482, trunk/core/api/src/main/java/org/richfaces/application/Module.java)
===================================================================
--- branches/RF-8742-1/core/api/src/main/java/org/richfaces/application/Module.java (rev 0)
+++ branches/RF-8742-1/core/api/src/main/java/org/richfaces/application/Module.java 2010-12-09 17:26:24 UTC (rev 20483)
@@ -0,0 +1,13 @@
+package org.richfaces.application;
+
+
+/**
+ * <p class="changed_added_4_0">User-provided configuration module.</p>
+ * @author asmirnov(a)exadel.com
+ *
+ */
+public interface Module {
+
+ public void configure(ServicesFactory factory);
+
+}
Modified: branches/RF-8742-1/core/impl/src/main/java/org/ajax4jsf/context/AjaxContextImpl.java
===================================================================
--- branches/RF-8742-1/core/impl/src/main/java/org/ajax4jsf/context/AjaxContextImpl.java 2010-12-09 15:06:40 UTC (rev 20482)
+++ branches/RF-8742-1/core/impl/src/main/java/org/ajax4jsf/context/AjaxContextImpl.java 2010-12-09 17:26:24 UTC (rev 20483)
@@ -302,8 +302,8 @@
}
// Is that component limit to list ?
- if (Boolean.TRUE.equals(component.getAttributes().get("limitToList"))) {
- setLimitToList(true);
+ if (Boolean.TRUE.equals(component.getAttributes().get("disableImplicitRender"))) {
+ setDisableImplicitRender(true);
}
}
Deleted: branches/RF-8742-1/core/impl/src/main/java/org/richfaces/application/Module.java
===================================================================
--- branches/RF-8742-1/core/impl/src/main/java/org/richfaces/application/Module.java 2010-12-09 15:06:40 UTC (rev 20482)
+++ branches/RF-8742-1/core/impl/src/main/java/org/richfaces/application/Module.java 2010-12-09 17:26:24 UTC (rev 20483)
@@ -1,13 +0,0 @@
-package org.richfaces.application;
-
-
-/**
- * <p class="changed_added_4_0">User-provided configuration module.</p>
- * @author asmirnov(a)exadel.com
- *
- */
-public interface Module {
-
- public void configure(ServicesFactory factory);
-
-}
Copied: branches/RF-8742-1/core/impl/src/main/java/org/richfaces/application/SkinningExternalContextFactory.java (from rev 20482, trunk/core/impl/src/main/java/org/richfaces/application/SkinningExternalContextFactory.java)
===================================================================
--- branches/RF-8742-1/core/impl/src/main/java/org/richfaces/application/SkinningExternalContextFactory.java (rev 0)
+++ branches/RF-8742-1/core/impl/src/main/java/org/richfaces/application/SkinningExternalContextFactory.java 2010-12-09 17:26:24 UTC (rev 20483)
@@ -0,0 +1,88 @@
+/*
+ * JBoss, Home of Professional Open Source
+ * Copyright 2010, Red Hat, Inc. and individual contributors
+ * by the @authors tag. See the copyright.txt in the distribution for a
+ * full listing of individual contributors.
+ *
+ * This is free software; you can redistribute it and/or modify it
+ * under the terms of the GNU Lesser General Public License as
+ * published by the Free Software Foundation; either version 2.1 of
+ * the License, or (at your option) any later version.
+ *
+ * This software is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
+ * Lesser General Public License for more details.
+ *
+ * You should have received a copy of the GNU Lesser General Public
+ * License along with this software; if not, write to the Free
+ * Software Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA
+ * 02110-1301 USA, or see the FSF site: http://www.fsf.org.
+ */
+package org.richfaces.application;
+
+import javax.faces.FacesException;
+import javax.faces.FacesWrapper;
+import javax.faces.context.ExternalContext;
+import javax.faces.context.ExternalContextFactory;
+import javax.faces.context.ExternalContextWrapper;
+
+/**
+ * @author Nick Belaevski
+ *
+ */
+public class SkinningExternalContextFactory extends ExternalContextFactory implements FacesWrapper<ExternalContextFactory> {
+
+ private ExternalContextFactory factory;
+
+ private static final class ExternalContextWrapperImpl extends ExternalContextWrapper {
+
+ private ExternalContext externalContext;
+
+ public ExternalContextWrapperImpl(ExternalContext externalContext) {
+ super();
+ this.externalContext = externalContext;
+ }
+
+ @Override
+ public String getMimeType(String file) {
+ String mimeType;
+
+ if (file != null && file.endsWith(".ecss")) {
+ mimeType = "text/plain";
+ } else {
+ mimeType = super.getMimeType(file);
+ }
+
+ return mimeType;
+ }
+
+ @Override
+ public ExternalContext getWrapped() {
+ return externalContext;
+ }
+
+ }
+
+ public SkinningExternalContextFactory(ExternalContextFactory factory) {
+ super();
+ this.factory = factory;
+ }
+
+ @Override
+ public ExternalContextFactory getWrapped() {
+ return factory;
+ }
+
+ @Override
+ public ExternalContext getExternalContext(Object context, Object request, Object response) throws FacesException {
+ ExternalContext externalContext = factory.getExternalContext(context, request, response);
+
+ return wrap(externalContext);
+ }
+
+ private ExternalContext wrap(ExternalContext externalContext) {
+ return new ExternalContextWrapperImpl(externalContext);
+ }
+
+}
Modified: branches/RF-8742-1/core/impl/src/main/resources/META-INF/components.faces-config.xml
===================================================================
--- branches/RF-8742-1/core/impl/src/main/resources/META-INF/components.faces-config.xml 2010-12-09 15:06:40 UTC (rev 20482)
+++ branches/RF-8742-1/core/impl/src/main/resources/META-INF/components.faces-config.xml 2010-12-09 17:26:24 UTC (rev 20483)
@@ -2,8 +2,8 @@
<faces-config xmlns="http://java.sun.com/xml/ns/javaee"
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" version="2.0">
<factory>
- <partial-view-context-factory>org.richfaces.context.PartialViewContextFactoryImpl
- </partial-view-context-factory>
+ <external-context-factory>org.richfaces.application.SkinningExternalContextFactory</external-context-factory>
+ <partial-view-context-factory>org.richfaces.context.PartialViewContextFactoryImpl</partial-view-context-factory>
</factory>
<application>
Modified: branches/RF-8742-1/core/impl/src/main/resources/META-INF/resources/jquery.position.js
===================================================================
--- branches/RF-8742-1/core/impl/src/main/resources/META-INF/resources/jquery.position.js 2010-12-09 15:06:40 UTC (rev 20482)
+++ branches/RF-8742-1/core/impl/src/main/resources/META-INF/resources/jquery.position.js 2010-12-09 17:26:24 UTC (rev 20483)
@@ -182,21 +182,6 @@
}
return rect;
- /*
- var jqe = $(element);
- var offset = jqe.offset();
- var width = jqe.width();
- var height = jqe.height();
- if (width == 0 && height==0) {
- //TODO: create getComputedStyle function for this
- var e = jqe.get(0);
- if (e.currentStyle) {
- width = parseInt(e.currentStyle['width'],10) || 0;
- height = parseInt(e.currentStyle['height'],10) || 0;
- }
- }
- return {width: width, height: height, left: Math.floor(offset.left), top: Math.floor(offset.top)};
- */
};
function checkCollision (elementRect, windowRect) {
@@ -237,7 +222,6 @@
function getPositionRect(baseRect, rectOffset, elementDim, pos) {
var rect = {};
// TODO: add support for center and middle // may be middle rename to center too
- // TODO: add rectOffset support && tests
var v = pos.charAt(0);
if (v=='L') {
@@ -255,17 +239,21 @@
v = pos.charAt(2);
if (v=='L') {
+ rect.left -= rectOffset[0];
rect.right = rect.left;
rect.left -= elementDim.width;
} else if (v=='R') {
+ rect.left += rectOffset[0];
rect.right = rect.left + elementDim.width;
}
v = pos.charAt(3);
if (v=='T') {
+ rect.top -= rectOffset[1];
rect.bottom = rect.top;
rect.top -= elementDim.height;
} else if (v=='B') {
+ rect.top += rectOffset[1];
rect.bottom = rect.top + elementDim.height;
}
Modified: branches/RF-8742-1/core/impl/src/main/resources/META-INF/resources/richfaces.js
===================================================================
--- branches/RF-8742-1/core/impl/src/main/resources/META-INF/resources/richfaces.js 2010-12-09 15:06:40 UTC (rev 20482)
+++ branches/RF-8742-1/core/impl/src/main/resources/META-INF/resources/richfaces.js 2010-12-09 17:26:24 UTC (rev 20483)
@@ -478,7 +478,12 @@
}());
richfaces.ajax = function(source, event, options) {
- var sourceId = (typeof source == 'object' && source.id) ? source.id : source;
+ var sourceId;
+ if (options.sourceId) {
+ sourceId = options.sourceId;
+ } else {
+ sourceId = (typeof source == 'object' && source.id) ? source.id : source;
+ }
options = options || {};
Modified: branches/RF-8742-1/core/impl/src/test/resources/javascript/4_0_0.html
===================================================================
--- branches/RF-8742-1/core/impl/src/test/resources/javascript/4_0_0.html 2010-12-09 15:06:40 UTC (rev 20482)
+++ branches/RF-8742-1/core/impl/src/test/resources/javascript/4_0_0.html 2010-12-09 17:26:24 UTC (rev 20483)
@@ -115,6 +115,21 @@
RichFaces.ajax(ajaxSource, ajaxEvent, ajaxOptions);
});
+ test("RichFaces.ajax behavior test for sourceId option", function() {
+ expect(2);
+
+ var ajaxSource = "source";
+ var ajaxEvent = "event";
+ var ajaxOptions = {parameters: {'param': 'value'}, sourceId: 'someId'};
+ jsf.ajax = {
+ request : function(source, event, options) {
+ equals(source, ajaxSource);
+ equals(options['org.richfaces.ajax.component'], 'someId');
+ }
+ }
+ RichFaces.ajax(ajaxSource, ajaxEvent, ajaxOptions);
+ });
+
test("RichFaces.ajax component test", function() {
expect(7);
var ajaxSource = "source";
Modified: branches/RF-8742-1/examples/input-demo/src/main/java/org/richfaces/demo/CalendarBean.java
===================================================================
--- branches/RF-8742-1/examples/input-demo/src/main/java/org/richfaces/demo/CalendarBean.java 2010-12-09 15:06:40 UTC (rev 20482)
+++ branches/RF-8742-1/examples/input-demo/src/main/java/org/richfaces/demo/CalendarBean.java 2010-12-09 17:26:24 UTC (rev 20483)
@@ -20,7 +20,9 @@
private String mode = "client";
private String jointPoint = "auto-auto";
private String direction = "auto-auto";
-
+ private int horizontalOffset = 0;
+ private int verticalOffset = 0;
+
public CalendarBean() {
locale = Locale.US;
@@ -110,4 +112,20 @@
return direction;
}
+ public void setHorizontalOffset(int horizontalOffset) {
+ this.horizontalOffset = horizontalOffset;
+ }
+
+ public int getHorizontalOffset() {
+ return horizontalOffset;
+ }
+
+ public void setVerticalOffset(int verticalOffset) {
+ this.verticalOffset = verticalOffset;
+ }
+
+ public int getVerticalOffset() {
+ return verticalOffset;
+ }
+
}
\ No newline at end of file
Modified: branches/RF-8742-1/examples/input-demo/src/main/java/org/richfaces/demo/InputNumberSliderBean.java
===================================================================
--- branches/RF-8742-1/examples/input-demo/src/main/java/org/richfaces/demo/InputNumberSliderBean.java 2010-12-09 15:06:40 UTC (rev 20482)
+++ branches/RF-8742-1/examples/input-demo/src/main/java/org/richfaces/demo/InputNumberSliderBean.java 2010-12-09 17:26:24 UTC (rev 20483)
@@ -44,7 +44,7 @@
private boolean showArrows = false;
private boolean showBoundaryValues = true;
private boolean showInput = true;
- private boolean showToolTip = true;
+ private boolean showTooltip = true;
private double step = 1;
public void setValue(double value) {
@@ -131,12 +131,12 @@
this.showInput = showInput;
}
- public boolean isShowToolTip() {
- return showToolTip;
+ public boolean isShowTooltip() {
+ return showTooltip;
}
- public void setShowToolTip(boolean showToolTip) {
- this.showToolTip = showToolTip;
+ public void setShowTooltip(boolean showTooltip) {
+ this.showTooltip = showTooltip;
}
public double getStep() {
Modified: branches/RF-8742-1/examples/input-demo/src/main/webapp/examples/autocomplete.xhtml
===================================================================
--- branches/RF-8742-1/examples/input-demo/src/main/webapp/examples/autocomplete.xhtml 2010-12-09 15:06:40 UTC (rev 20482)
+++ branches/RF-8742-1/examples/input-demo/src/main/webapp/examples/autocomplete.xhtml 2010-12-09 17:26:24 UTC (rev 20483)
@@ -4,6 +4,7 @@
xmlns:f="http://java.sun.com/jsf/core"
xmlns:ui="http://java.sun.com/jsf/facelets"
xmlns:input="http://richfaces.org/input"
+ xmlns:rich="http://richfaces.org/iteration"
xmlns:a4j="http://richfaces.org/a4j">
<f:view contentType="text/html" />
@@ -43,6 +44,20 @@
#{country.name} #{country.iso} #{country.domain}
<a4j:ajax event="change" render="output"/>
</input:autocomplete>
+ <br /><h:outputText value="RF-9835:" /><br />
+ <input:autocomplete id="myAutocomplete1" mode="client" autocompleteMethod="#{autoCompleteBean.autocomplete}" var="country" fetchValue="#{country.name}" showButton="true"
+ value = "#{autoCompleteBean.value}" layout="table">
+ <rich:column>
+ <h:outputText value="#{country.name}" />
+ </rich:column>
+ <rich:column>
+ <h:outputText value="#{country.iso}" />
+ </rich:column>
+ <rich:column>
+ <h:outputText value="#{country.domain}" />
+ </rich:column>
+ <a4j:ajax event="change" render="output"/>
+ </input:autocomplete>
<br/><br/>
Your selection: <h:outputText id="output" value="#{autoCompleteBean.value}"/>
<script type="text/javascript">
Modified: branches/RF-8742-1/examples/input-demo/src/main/webapp/examples/calendar.xhtml
===================================================================
--- branches/RF-8742-1/examples/input-demo/src/main/webapp/examples/calendar.xhtml 2010-12-09 15:06:40 UTC (rev 20482)
+++ branches/RF-8742-1/examples/input-demo/src/main/webapp/examples/calendar.xhtml 2010-12-09 17:26:24 UTC (rev 20483)
@@ -58,7 +58,9 @@
onclean="return onEvent.call(this, event);"
ondatemouseout="return onEvent.call(this, event);"
ondatemouseover="return onEvent.call(this, event);"
-
+ firstWeekDay="4"
+ horizontalOffset="#{calendarBean.horizontalOffset}"
+ verticalOffset="#{calendarBean.verticalOffset}"
>
<f:ajax event="change" render="echo-text" />
</calendar:calendar>
@@ -97,7 +99,7 @@
<h:selectOneMenu value="#{calendarBean.mode}" onchange="submit()">
<f:selectItem itemValue="client"/>
<f:selectItem itemValue="ajax"/>
- </h:selectOneMenu><br/>
+ </h:selectOneMenu>
<h:outputText value="Select joint point:" />
<h:selectOneMenu value="#{calendarBean.jointPoint}">
@@ -116,7 +118,15 @@
<f:selectItem itemLabel="top-right" itemValue="top-right" />
<f:selectItem itemLabel="bottom-left" itemValue="bottom-left" />
<f:selectItem itemLabel="bottom-right" itemValue="bottom-right" />
- </h:selectOneMenu>
+ </h:selectOneMenu>
+ <h:outputText value="Horisontal offset:" />
+ <h:inputText value="#{calendarBean.horizontalOffset}">
+ <f:ajax execute="@form" event="change" render="calendar @this" />
+ </h:inputText>
+ <h:outputText value="Vertical offset:" />
+ <h:inputText value="#{calendarBean.verticalOffset}">
+ <f:ajax execute="@form" event="change" render="calendar @this" />
+ </h:inputText>
</h:panelGrid>
<h:panelGroup layout="block">
<div>
Modified: branches/RF-8742-1/examples/input-demo/src/main/webapp/examples/inputNumberSlider.xhtml
===================================================================
--- branches/RF-8742-1/examples/input-demo/src/main/webapp/examples/inputNumberSlider.xhtml 2010-12-09 15:06:40 UTC (rev 20482)
+++ branches/RF-8742-1/examples/input-demo/src/main/webapp/examples/inputNumberSlider.xhtml 2010-12-09 17:26:24 UTC (rev 20483)
@@ -46,7 +46,7 @@
disabled="#{inputNumberSliderBean.disabled}" enableManualInput="#{inputNumberSliderBean.enableManualInput}"
inputPosition="#{inputNumberSliderBean.inputPosition}" inputSize="#{inputNumberSliderBean.inputSize}" showArrows="#{inputNumberSliderBean.showArrows}"
showBoundaryValues="#{inputNumberSliderBean.showBoundaryValues}" showInput="#{inputNumberSliderBean.showInput}"
- showToolTip="#{inputNumberSliderBean.showToolTip}" maxValue="#{inputNumberSliderBean.maxValue}" minValue="#{inputNumberSliderBean.minValue}"
+ showTooltip="#{inputNumberSliderBean.showTooltip}" maxValue="#{inputNumberSliderBean.maxValue}" minValue="#{inputNumberSliderBean.minValue}"
step="#{inputNumberSliderBean.step}" >
<f:ajax render="date" />
</ins:inputNumberSlider>
@@ -107,8 +107,8 @@
<f:ajax render="ins"/>
</h:selectBooleanCheckbox>
<br />
- <h:outputText value="ShowToolTip: "/>
- <h:selectBooleanCheckbox value="#{inputNumberSliderBean.showToolTip}">
+ <h:outputText value="ShowTooltip: "/>
+ <h:selectBooleanCheckbox value="#{inputNumberSliderBean.showTooltip}">
<f:ajax render="ins"/>
</h:selectBooleanCheckbox>
<br />
Copied: branches/RF-8742-1/examples/output-demo/src/main/java/org/richfaces/CollapsiblePanel.java (from rev 20482, trunk/examples/output-demo/src/main/java/org/richfaces/CollapsiblePanel.java)
===================================================================
--- branches/RF-8742-1/examples/output-demo/src/main/java/org/richfaces/CollapsiblePanel.java (rev 0)
+++ branches/RF-8742-1/examples/output-demo/src/main/java/org/richfaces/CollapsiblePanel.java 2010-12-09 17:26:24 UTC (rev 20483)
@@ -0,0 +1,44 @@
+/**
+ * License Agreement.
+ *
+ * Rich Faces - Natural Ajax for Java Server Faces (JSF)
+ *
+ * Copyright (C) 2007 Exadel, Inc.
+ *
+ * This library is free software; you can redistribute it and/or
+ * modify it under the terms of the GNU Lesser General Public
+ * License version 2.1 as published by the Free Software Foundation.
+ *
+ * This library is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
+ * Lesser General Public License for more details.
+ *
+ * You should have received a copy of the GNU Lesser General Public
+ * License along with this library; if not, write to the Free Software
+ * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA
+ */
+
+package org.richfaces;
+
+import org.richfaces.event.PanelToggleEvent;
+
+import javax.faces.bean.ManagedBean;
+import javax.faces.bean.SessionScoped;
+
+/**
+ * @author akolonitsky
+ * @since Dec 9, 2010
+ */
+@ManagedBean
+@SessionScoped
+public class CollapsiblePanel {
+
+ public CollapsiblePanel() {
+ }
+
+ public void action() {
+ System.out.println("CollapsiblePanel.action");
+ }
+
+}
Modified: branches/RF-8742-1/examples/output-demo/src/main/java/org/richfaces/ModalPanel.java
===================================================================
--- branches/RF-8742-1/examples/output-demo/src/main/java/org/richfaces/ModalPanel.java 2010-12-09 15:06:40 UTC (rev 20482)
+++ branches/RF-8742-1/examples/output-demo/src/main/java/org/richfaces/ModalPanel.java 2010-12-09 17:26:24 UTC (rev 20483)
@@ -55,8 +55,17 @@
this.shadowOpacity = "3";
this.show = false;
this.domElementAttachment = "body";
+ this.zindex = 123;
}
+ public int getZindex() {
+ return zindex;
+ }
+
+ public void setZindex(int zindex) {
+ this.zindex = zindex;
+ }
+
public int getHeight() {
return height;
}
Copied: branches/RF-8742-1/examples/output-demo/src/main/java/org/richfaces/RF9851.java (from rev 20482, trunk/examples/output-demo/src/main/java/org/richfaces/RF9851.java)
===================================================================
--- branches/RF-8742-1/examples/output-demo/src/main/java/org/richfaces/RF9851.java (rev 0)
+++ branches/RF-8742-1/examples/output-demo/src/main/java/org/richfaces/RF9851.java 2010-12-09 17:26:24 UTC (rev 20483)
@@ -0,0 +1,60 @@
+/**
+ * License Agreement.
+ *
+ * Rich Faces - Natural Ajax for Java Server Faces (JSF)
+ *
+ * Copyright (C) 2007 Exadel, Inc.
+ *
+ * This library is free software; you can redistribute it and/or
+ * modify it under the terms of the GNU Lesser General Public
+ * License version 2.1 as published by the Free Software Foundation.
+ *
+ * This library is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
+ * Lesser General Public License for more details.
+ *
+ * You should have received a copy of the GNU Lesser General Public
+ * License along with this library; if not, write to the Free Software
+ * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA
+ */
+
+package org.richfaces;
+
+import javax.faces.bean.ManagedBean;
+import javax.faces.bean.SessionScoped;
+
+/**
+ * @author akolonitsky
+ * @since Dec 6, 2010
+ */
+@ManagedBean(name = "RF9851")
+@SessionScoped
+public class RF9851 {
+ private String name;
+ private String email;
+
+ public RF9851() {
+ System.out.println("RF9851.RF9851");
+ }
+
+ public String getName() {
+ System.out.println("RF9851.getName");
+ return name;
+ }
+
+ public void setName(String name) {
+ System.out.println("RF9851.setName name = " + name);
+ this.name = name;
+ }
+
+ public String getEmail() {
+ System.out.println("RF9851.getEmail");
+ return email;
+ }
+
+ public void setEmail(String email) {
+ System.out.println("RF9851.setEmail email = " + email);
+ this.email = email;
+ }
+}
Modified: branches/RF-8742-1/examples/output-demo/src/main/webapp/WEB-INF/faces-config.xml
===================================================================
--- branches/RF-8742-1/examples/output-demo/src/main/webapp/WEB-INF/faces-config.xml 2010-12-09 15:06:40 UTC (rev 20482)
+++ branches/RF-8742-1/examples/output-demo/src/main/webapp/WEB-INF/faces-config.xml 2010-12-09 17:26:24 UTC (rev 20483)
@@ -62,6 +62,10 @@
<to-view-id>/examples/accordion/RF-9364.xhtml</to-view-id>
</navigation-case>
<navigation-case>
+ <from-outcome>RF-9851</from-outcome>
+ <to-view-id>/examples/accordion/RF-9851.xhtml</to-view-id>
+ </navigation-case>
+ <navigation-case>
<from-outcome>qunit/accordion</from-outcome>
<to-view-id>/qunit/accordion.xhtml</to-view-id>
</navigation-case>
Copied: branches/RF-8742-1/examples/output-demo/src/main/webapp/examples/accordion/RF-9851.xhtml (from rev 20482, trunk/examples/output-demo/src/main/webapp/examples/accordion/RF-9851.xhtml)
===================================================================
--- branches/RF-8742-1/examples/output-demo/src/main/webapp/examples/accordion/RF-9851.xhtml (rev 0)
+++ branches/RF-8742-1/examples/output-demo/src/main/webapp/examples/accordion/RF-9851.xhtml 2010-12-09 17:26:24 UTC (rev 20483)
@@ -0,0 +1,54 @@
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
+<html xmlns="http://www.w3.org/1999/xhtml"
+ xmlns:h="http://java.sun.com/jsf/html"
+ xmlns:f="http://java.sun.com/jsf/core"
+ xmlns:ui="http://java.sun.com/jsf/facelets"
+ xmlns:pn="http://richfaces.org/output">
+
+<body>
+<ui:composition template="/templates/template.xhtml">
+
+ <ui:define name="title">Accordion Example</ui:define>
+ <ui:define name="body_head">Accordion Example</ui:define>
+
+ <ui:define name="body">
+ <p>Page</p>
+
+ <pre>
+ two critical issues there:
+ 1)
+ a) enter something into input at default item
+ b) switch to second
+ c) enter something to input there
+ d) click submit
+ RESULT - nothing being encoded for outputText's
+
+ 2)
+ a) enter something into input at default item
+ b) switch to second
+ c) enter something to input there
+ d) return to default tab(in order current item to be in sync with server side current)
+ e) click submit
+ RESULT - only one typed message encoded.
+ </pre>
+
+ <h:form>
+ <pn:accordion switchType="ajax" id="acc">
+ <pn:accordionItem header="Overview:" id="i1">
+ <h:inputText value="#{RF9851.name}"/>
+ </pn:accordionItem>
+ <pn:accordionItem header="JSF 2 and RichFaces 4:" id="i2">
+ <h:inputText value="#{RF9851.email}"/>
+
+ </pn:accordionItem>
+ </pn:accordion>
+ <h:commandButton/>
+ <h:outputText value="#{RF9851.name}"/>
+ <h:outputText value="#{RF9851.email}"/>
+ <h:messages/>
+ </h:form>
+ </ui:define>
+</ui:composition>
+</body>
+</html>
+
Modified: branches/RF-8742-1/examples/output-demo/src/main/webapp/examples/collapsiblePanel.xhtml
===================================================================
--- branches/RF-8742-1/examples/output-demo/src/main/webapp/examples/collapsiblePanel.xhtml 2010-12-09 15:06:40 UTC (rev 20482)
+++ branches/RF-8742-1/examples/output-demo/src/main/webapp/examples/collapsiblePanel.xhtml 2010-12-09 17:26:24 UTC (rev 20483)
@@ -27,7 +27,7 @@
</pn:collapsiblePanel>
- <pn:collapsiblePanel id="panel2" expanded="false" switchType="ajax">
+ <pn:collapsiblePanel id="panel2" expanded="false" switchType="ajax" toggleListener="#{collapsiblePanel.action}" >
<f:facet name="headerExpanded" >
header exanded
</f:facet>
Modified: branches/RF-8742-1/examples/output-demo/src/main/webapp/examples/popupPanel.xhtml
===================================================================
--- branches/RF-8742-1/examples/output-demo/src/main/webapp/examples/popupPanel.xhtml 2010-12-09 15:06:40 UTC (rev 20482)
+++ branches/RF-8742-1/examples/output-demo/src/main/webapp/examples/popupPanel.xhtml 2010-12-09 17:26:24 UTC (rev 20483)
@@ -28,6 +28,7 @@
shadowOpacity="#{modalPanel.shadowOpacity}"
show="#{modalPanel.show}"
domElementAttachment="#{modalPanel.domElementAttachment}"
+ zindex="#{modalPanel.zindex}"
>
<f:facet name="header">
<h:outputText value="HEADER for popup" />
Modified: branches/RF-8742-1/examples/output-demo/src/main/webapp/qunit/tooltip.xhtml
===================================================================
--- branches/RF-8742-1/examples/output-demo/src/main/webapp/qunit/tooltip.xhtml 2010-12-09 15:06:40 UTC (rev 20482)
+++ branches/RF-8742-1/examples/output-demo/src/main/webapp/qunit/tooltip.xhtml 2010-12-09 17:26:24 UTC (rev 20483)
@@ -50,7 +50,7 @@
Tooltip apeared under green rectangle.
<pn:tooltip id="tooltip" target="myRectangle" mode="ajax" showDelay="500">
- New ToolTip Yo!!!
+ New Tooltip Yo!!!
</pn:tooltip>
</div>
Modified: branches/RF-8742-1/examples/output-demo/src/main/webapp/templates/template.xhtml
===================================================================
--- branches/RF-8742-1/examples/output-demo/src/main/webapp/templates/template.xhtml 2010-12-09 15:06:40 UTC (rev 20482)
+++ branches/RF-8742-1/examples/output-demo/src/main/webapp/templates/template.xhtml 2010-12-09 17:26:24 UTC (rev 20483)
@@ -80,6 +80,7 @@
<p>Bugs</p>
<ul>
<li><h:commandLink value="RF-9364" action="RF-9364" /></li>
+ <li><h:commandLink value="RF-9851" action="RF-9851" /></li>
</ul>
</li>
</ul>
Copied: branches/RF-8742-1/examples/richfaces-showcase/src/main/java/org/richfaces/demo/dropdownmenu (from rev 20482, trunk/examples/richfaces-showcase/src/main/java/org/richfaces/demo/dropdownmenu)
Deleted: branches/RF-8742-1/examples/richfaces-showcase/src/main/java/org/richfaces/demo/dropdownmenu/DropDownMenuBean.java
===================================================================
--- trunk/examples/richfaces-showcase/src/main/java/org/richfaces/demo/dropdownmenu/DropDownMenuBean.java 2010-12-09 15:06:40 UTC (rev 20482)
+++ branches/RF-8742-1/examples/richfaces-showcase/src/main/java/org/richfaces/demo/dropdownmenu/DropDownMenuBean.java 2010-12-09 17:26:24 UTC (rev 20483)
@@ -1,50 +0,0 @@
-package org.richfaces.demo.dropdownmenu;
-
-import java.io.Serializable;
-
-import javax.faces.bean.ManagedBean;
-import javax.faces.bean.ViewScoped;
-
-@ManagedBean
-@ViewScoped
-public class DropDownMenuBean implements Serializable {
- private String current;
-
- public String getCurrent() {
- return this.current;
- }
-
- public void setCurrent(String current) {
- this.current = current;
- }
-
- public String doNew() {
- this.current = "New";
- return null;
- }
-
- public String doOpen() {
- this.current = "Open";
- return null;
- }
-
- public String doClose() {
- this.current = "Close";
- return null;
- }
-
- public String doSave() {
- this.current = "Save";
- return null;
- }
-
- public String doSaveAll() {
- this.current = "Save All";
- return null;
- }
-
- public String doExit() {
- this.current = "Exit";
- return null;
- }
-}
Copied: branches/RF-8742-1/examples/richfaces-showcase/src/main/java/org/richfaces/demo/dropdownmenu/DropDownMenuBean.java (from rev 20482, trunk/examples/richfaces-showcase/src/main/java/org/richfaces/demo/dropdownmenu/DropDownMenuBean.java)
===================================================================
--- branches/RF-8742-1/examples/richfaces-showcase/src/main/java/org/richfaces/demo/dropdownmenu/DropDownMenuBean.java (rev 0)
+++ branches/RF-8742-1/examples/richfaces-showcase/src/main/java/org/richfaces/demo/dropdownmenu/DropDownMenuBean.java 2010-12-09 17:26:24 UTC (rev 20483)
@@ -0,0 +1,50 @@
+package org.richfaces.demo.dropdownmenu;
+
+import java.io.Serializable;
+
+import javax.faces.bean.ManagedBean;
+import javax.faces.bean.ViewScoped;
+
+@ManagedBean
+@ViewScoped
+public class DropDownMenuBean implements Serializable {
+ private String current;
+
+ public String getCurrent() {
+ return this.current;
+ }
+
+ public void setCurrent(String current) {
+ this.current = current;
+ }
+
+ public String doNew() {
+ this.current = "New";
+ return null;
+ }
+
+ public String doOpen() {
+ this.current = "Open";
+ return null;
+ }
+
+ public String doClose() {
+ this.current = "Close";
+ return null;
+ }
+
+ public String doSave() {
+ this.current = "Save";
+ return null;
+ }
+
+ public String doSaveAll() {
+ this.current = "Save All";
+ return null;
+ }
+
+ public String doExit() {
+ this.current = "Exit";
+ return null;
+ }
+}
Copied: branches/RF-8742-1/examples/richfaces-showcase/src/main/java/org/richfaces/demo/fileupload (from rev 20482, trunk/examples/richfaces-showcase/src/main/java/org/richfaces/demo/fileupload)
Deleted: branches/RF-8742-1/examples/richfaces-showcase/src/main/java/org/richfaces/demo/fileupload/FileUploadBean.java
===================================================================
--- trunk/examples/richfaces-showcase/src/main/java/org/richfaces/demo/fileupload/FileUploadBean.java 2010-12-09 15:06:40 UTC (rev 20482)
+++ branches/RF-8742-1/examples/richfaces-showcase/src/main/java/org/richfaces/demo/fileupload/FileUploadBean.java 2010-12-09 17:26:24 UTC (rev 20483)
@@ -1,91 +0,0 @@
-package org.richfaces.demo.fileupload;
-
-import java.io.IOException;
-import java.io.OutputStream;
-import java.io.Serializable;
-import java.util.ArrayList;
-
-import javax.faces.bean.ManagedBean;
-import javax.faces.bean.SessionScoped;
-
-import org.richfaces.event.UploadEvent;
-import org.richfaces.model.UploadItem;
-
-/**
- * @author Ilya Shaikovsky
- *
- */
-@ManagedBean
-@SessionScoped
-public class FileUploadBean implements Serializable {
-
- private ArrayList<UplocadedImage> files = new ArrayList<UplocadedImage>();
- private int uploadsAvailable = 5;
- private boolean autoUpload = false;
- private boolean useFlash = false;
-
- public int getSize() {
- if (getFiles().size() > 0) {
- return getFiles().size();
- } else {
- return 0;
- }
- }
-
- public void paint(OutputStream stream, Object object) throws IOException {
- stream.write(getFiles().get((Integer) object).getData());
- }
-
- public void listener(UploadEvent event) throws Exception {
- UploadItem item = event.getUploadItem();
- UplocadedImage file = new UplocadedImage();
- file.setLength(item.getData().length);
- file.setName(item.getFileName());
- file.setData(item.getData());
- files.add(file);
- uploadsAvailable--;
- }
-
- public String clearUploadData() {
- files.clear();
- setUploadsAvailable(5);
- return null;
- }
-
- public long getTimeStamp() {
- return System.currentTimeMillis();
- }
-
- public ArrayList<UplocadedImage> getFiles() {
- return files;
- }
-
- public void setFiles(ArrayList<UplocadedImage> files) {
- this.files = files;
- }
-
- public int getUploadsAvailable() {
- return uploadsAvailable;
- }
-
- public void setUploadsAvailable(int uploadsAvailable) {
- this.uploadsAvailable = uploadsAvailable;
- }
-
- public boolean isAutoUpload() {
- return autoUpload;
- }
-
- public void setAutoUpload(boolean autoUpload) {
- this.autoUpload = autoUpload;
- }
-
- public boolean isUseFlash() {
- return useFlash;
- }
-
- public void setUseFlash(boolean useFlash) {
- this.useFlash = useFlash;
- }
-
-}
Copied: branches/RF-8742-1/examples/richfaces-showcase/src/main/java/org/richfaces/demo/fileupload/FileUploadBean.java (from rev 20482, trunk/examples/richfaces-showcase/src/main/java/org/richfaces/demo/fileupload/FileUploadBean.java)
===================================================================
--- branches/RF-8742-1/examples/richfaces-showcase/src/main/java/org/richfaces/demo/fileupload/FileUploadBean.java (rev 0)
+++ branches/RF-8742-1/examples/richfaces-showcase/src/main/java/org/richfaces/demo/fileupload/FileUploadBean.java 2010-12-09 17:26:24 UTC (rev 20483)
@@ -0,0 +1,91 @@
+package org.richfaces.demo.fileupload;
+
+import java.io.IOException;
+import java.io.OutputStream;
+import java.io.Serializable;
+import java.util.ArrayList;
+
+import javax.faces.bean.ManagedBean;
+import javax.faces.bean.SessionScoped;
+
+import org.richfaces.event.UploadEvent;
+import org.richfaces.model.UploadItem;
+
+/**
+ * @author Ilya Shaikovsky
+ *
+ */
+@ManagedBean
+@SessionScoped
+public class FileUploadBean implements Serializable {
+
+ private ArrayList<UplocadedImage> files = new ArrayList<UplocadedImage>();
+ private int uploadsAvailable = 5;
+ private boolean autoUpload = false;
+ private boolean useFlash = false;
+
+ public int getSize() {
+ if (getFiles().size() > 0) {
+ return getFiles().size();
+ } else {
+ return 0;
+ }
+ }
+
+ public void paint(OutputStream stream, Object object) throws IOException {
+ stream.write(getFiles().get((Integer) object).getData());
+ }
+
+ public void listener(UploadEvent event) throws Exception {
+ UploadItem item = event.getUploadItem();
+ UplocadedImage file = new UplocadedImage();
+ file.setLength(item.getData().length);
+ file.setName(item.getFileName());
+ file.setData(item.getData());
+ files.add(file);
+ uploadsAvailable--;
+ }
+
+ public String clearUploadData() {
+ files.clear();
+ setUploadsAvailable(5);
+ return null;
+ }
+
+ public long getTimeStamp() {
+ return System.currentTimeMillis();
+ }
+
+ public ArrayList<UplocadedImage> getFiles() {
+ return files;
+ }
+
+ public void setFiles(ArrayList<UplocadedImage> files) {
+ this.files = files;
+ }
+
+ public int getUploadsAvailable() {
+ return uploadsAvailable;
+ }
+
+ public void setUploadsAvailable(int uploadsAvailable) {
+ this.uploadsAvailable = uploadsAvailable;
+ }
+
+ public boolean isAutoUpload() {
+ return autoUpload;
+ }
+
+ public void setAutoUpload(boolean autoUpload) {
+ this.autoUpload = autoUpload;
+ }
+
+ public boolean isUseFlash() {
+ return useFlash;
+ }
+
+ public void setUseFlash(boolean useFlash) {
+ this.useFlash = useFlash;
+ }
+
+}
Deleted: branches/RF-8742-1/examples/richfaces-showcase/src/main/java/org/richfaces/demo/fileupload/UplocadedImage.java
===================================================================
--- trunk/examples/richfaces-showcase/src/main/java/org/richfaces/demo/fileupload/UplocadedImage.java 2010-12-09 15:06:40 UTC (rev 20482)
+++ branches/RF-8742-1/examples/richfaces-showcase/src/main/java/org/richfaces/demo/fileupload/UplocadedImage.java 2010-12-09 17:26:24 UTC (rev 20483)
@@ -1,52 +0,0 @@
-package org.richfaces.demo.fileupload;
-
-public class UplocadedImage {
-
- private String name;
- private String mime;
- private long length;
- private byte[] data;
-
- public byte[] getData() {
- return data;
- }
-
- public void setData(byte[] data) {
- this.data = data;
- }
-
- public String getName() {
- return name;
- }
-
- public void setName(String name) {
- name = name;
- int extDot = name.lastIndexOf('.');
- if (extDot > 0) {
- String extension = name.substring(extDot + 1);
- if ("bmp".equals(extension)) {
- mime = "image/bmp";
- } else if ("jpg".equals(extension)) {
- mime = "image/jpeg";
- } else if ("gif".equals(extension)) {
- mime = "image/gif";
- } else if ("png".equals(extension)) {
- mime = "image/png";
- } else {
- mime = "image/unknown";
- }
- }
- }
-
- public long getLength() {
- return length;
- }
-
- public void setLength(long length) {
- this.length = length;
- }
-
- public String getMime() {
- return mime;
- }
-}
Copied: branches/RF-8742-1/examples/richfaces-showcase/src/main/java/org/richfaces/demo/fileupload/UplocadedImage.java (from rev 20482, trunk/examples/richfaces-showcase/src/main/java/org/richfaces/demo/fileupload/UplocadedImage.java)
===================================================================
--- branches/RF-8742-1/examples/richfaces-showcase/src/main/java/org/richfaces/demo/fileupload/UplocadedImage.java (rev 0)
+++ branches/RF-8742-1/examples/richfaces-showcase/src/main/java/org/richfaces/demo/fileupload/UplocadedImage.java 2010-12-09 17:26:24 UTC (rev 20483)
@@ -0,0 +1,52 @@
+package org.richfaces.demo.fileupload;
+
+public class UplocadedImage {
+
+ private String name;
+ private String mime;
+ private long length;
+ private byte[] data;
+
+ public byte[] getData() {
+ return data;
+ }
+
+ public void setData(byte[] data) {
+ this.data = data;
+ }
+
+ public String getName() {
+ return name;
+ }
+
+ public void setName(String name) {
+ name = name;
+ int extDot = name.lastIndexOf('.');
+ if (extDot > 0) {
+ String extension = name.substring(extDot + 1);
+ if ("bmp".equals(extension)) {
+ mime = "image/bmp";
+ } else if ("jpg".equals(extension)) {
+ mime = "image/jpeg";
+ } else if ("gif".equals(extension)) {
+ mime = "image/gif";
+ } else if ("png".equals(extension)) {
+ mime = "image/png";
+ } else {
+ mime = "image/unknown";
+ }
+ }
+ }
+
+ public long getLength() {
+ return length;
+ }
+
+ public void setLength(long length) {
+ this.length = length;
+ }
+
+ public String getMime() {
+ return mime;
+ }
+}
Modified: branches/RF-8742-1/examples/richfaces-showcase/src/main/resources/org/richfaces/demo/data/common/navigation.xml
===================================================================
--- branches/RF-8742-1/examples/richfaces-showcase/src/main/resources/org/richfaces/demo/data/common/navigation.xml 2010-12-09 15:06:40 UTC (rev 20482)
+++ branches/RF-8742-1/examples/richfaces-showcase/src/main/resources/org/richfaces/demo/data/common/navigation.xml 2010-12-09 17:26:24 UTC (rev 20483)
@@ -435,6 +435,20 @@
</sample>
</samples>
</demo>
+ <demo new="true">
+ <id>dropDownMenu</id>
+ <name>rich:dropDownMenu</name>
+ <samples>
+ <sample>
+ <id>topMenu</id>
+ <name>Top Menu</name>
+ </sample>
+ <sample>
+ <id>sideMenu</id>
+ <name>Side Menu</name>
+ </sample>
+ </samples>
+ </demo>
</demos>
</group>
<group>
@@ -522,6 +536,16 @@
</sample>
</samples>
</demo>
+ <demo new="true">
+ <id>fileUpload</id>
+ <name>rich:fileUpload</name>
+ <samples>
+ <sample>
+ <id>imgUpload</id>
+ <name>Upload images</name>
+ </sample>
+ </samples>
+ </demo>
</demos>
</group>
<group>
Modified: branches/RF-8742-1/examples/richfaces-showcase/src/main/webapp/WEB-INF/web.xml
===================================================================
--- branches/RF-8742-1/examples/richfaces-showcase/src/main/webapp/WEB-INF/web.xml 2010-12-09 15:06:40 UTC (rev 20482)
+++ branches/RF-8742-1/examples/richfaces-showcase/src/main/webapp/WEB-INF/web.xml 2010-12-09 17:26:24 UTC (rev 20483)
@@ -1,58 +1,58 @@
<?xml version="1.0" encoding="UTF-8"?>
<web-app id="richfaces-showcase" version="2.5"
- xmlns="http://java.sun.com/xml/ns/javaee"
- xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://java.sun.com/xml/ns/javaee http://java.sun.com/xml/ns/javaee/web-app_2_5.xsd">
- <display-name>richfaces-showcase</display-name>
- <context-param>
- <param-name>javax.faces.FACELETS_LIBRARIES</param-name>
- <param-value>/WEB-INF/app-tags.taglib.xml</param-value>
- </context-param>
- <context-param>
- <param-name>org.richfaces.enableControlSkinning</param-name>
- <param-value>true</param-value>
- </context-param>
- <context-param>
- <param-name>org.richfaces.enableControlSkinningClasses</param-name>
- <param-value>false</param-value>
- </context-param>
- <context-param>
- <param-name>org.richfaces.skin</param-name>
- <param-value>#{skinBean.skin}</param-value>
- </context-param>
- <context-param>
- <param-name>javax.faces.PROJECT_STAGE</param-name>
- <param-value>Development</param-value>
- </context-param>
- <context-param>
- <param-name>javax.faces.STATE_SAVING_METHOD</param-name>
- <param-value>server</param-value>
- </context-param>
- <servlet>
- <servlet-name>Faces Servlet</servlet-name>
- <servlet-class>javax.faces.webapp.FacesServlet</servlet-class>
- <load-on-startup>1</load-on-startup>
- </servlet>
- <servlet-mapping>
- <servlet-name>Faces Servlet</servlet-name>
- <url-pattern>*.jsf</url-pattern>
- </servlet-mapping>
- <servlet-mapping>
- <servlet-name>Faces Servlet</servlet-name>
- <url-pattern>/faces/*</url-pattern>
- </servlet-mapping>
- <mime-mapping>
- <extension>ecss</extension>
- <mime-type>text/css</mime-type>
- </mime-mapping>
- <welcome-file-list>
- <welcome-file>index.html</welcome-file>
- <welcome-file>index.htm</welcome-file>
- <welcome-file>index.jsp</welcome-file>
- <welcome-file>default.html</welcome-file>
- <welcome-file>default.htm</welcome-file>
- <welcome-file>default.jsp</welcome-file>
- </welcome-file-list>
- <login-config>
- <auth-method>BASIC</auth-method>
- </login-config>
+ xmlns="http://java.sun.com/xml/ns/javaee" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
+ xsi:schemaLocation="http://java.sun.com/xml/ns/javaee http://java.sun.com/xml/ns/javaee/web-app_2_5.xsd">
+ <display-name>richfaces-showcase</display-name>
+ <context-param>
+ <param-name>javax.faces.FACELETS_LIBRARIES</param-name>
+ <param-value>/WEB-INF/app-tags.taglib.xml</param-value>
+ </context-param>
+ <context-param>
+ <param-name>org.richfaces.skin</param-name>
+ <param-value>#{skinBean.skin}</param-value>
+ </context-param>
+ <context-param>
+ <param-name>org.richfaces.fileUpload.maxRequestSize</param-name>
+ <param-value>100000</param-value>
+ </context-param>
+ <context-param>
+ <param-name>org.richfaces.fileUpload.createTempFiles</param-name>
+ <param-value>false</param-value>
+ </context-param>
+ <context-param>
+ <param-name>javax.faces.PROJECT_STAGE</param-name>
+ <param-value>Development</param-value>
+ </context-param>
+ <context-param>
+ <param-name>javax.faces.STATE_SAVING_METHOD</param-name>
+ <param-value>server</param-value>
+ </context-param>
+ <servlet>
+ <servlet-name>Faces Servlet</servlet-name>
+ <servlet-class>javax.faces.webapp.FacesServlet</servlet-class>
+ <load-on-startup>1</load-on-startup>
+ </servlet>
+ <servlet-mapping>
+ <servlet-name>Faces Servlet</servlet-name>
+ <url-pattern>*.jsf</url-pattern>
+ </servlet-mapping>
+ <servlet-mapping>
+ <servlet-name>Faces Servlet</servlet-name>
+ <url-pattern>/faces/*</url-pattern>
+ </servlet-mapping>
+ <mime-mapping>
+ <extension>ecss</extension>
+ <mime-type>text/css</mime-type>
+ </mime-mapping>
+ <welcome-file-list>
+ <welcome-file>index.html</welcome-file>
+ <welcome-file>index.htm</welcome-file>
+ <welcome-file>index.jsp</welcome-file>
+ <welcome-file>default.html</welcome-file>
+ <welcome-file>default.htm</welcome-file>
+ <welcome-file>default.jsp</welcome-file>
+ </welcome-file-list>
+ <login-config>
+ <auth-method>BASIC</auth-method>
+ </login-config>
</web-app>
Modified: branches/RF-8742-1/examples/richfaces-showcase/src/main/webapp/richfaces/calendar/samples/clientStylingDisablement-sample.xhtml
===================================================================
--- branches/RF-8742-1/examples/richfaces-showcase/src/main/webapp/richfaces/calendar/samples/clientStylingDisablement-sample.xhtml 2010-12-09 15:06:40 UTC (rev 20482)
+++ branches/RF-8742-1/examples/richfaces-showcase/src/main/webapp/richfaces/calendar/samples/clientStylingDisablement-sample.xhtml 2010-12-09 17:26:24 UTC (rev 20483)
@@ -20,7 +20,7 @@
function disablementFunction(day){
if (day.isWeekend) return false;
if (curDt==undefined){
- curDt = day.date.getDate;
+ curDt = day.date.getDate();
}
if (curDt.getTime() - day.date.getTime() < 0) return true; else return false;
}
Modified: branches/RF-8742-1/examples/richfaces-showcase/src/main/webapp/richfaces/dataTable/samples/simpleTable-sample.xhtml
===================================================================
--- branches/RF-8742-1/examples/richfaces-showcase/src/main/webapp/richfaces/dataTable/samples/simpleTable-sample.xhtml 2010-12-09 15:06:40 UTC (rev 20482)
+++ branches/RF-8742-1/examples/richfaces-showcase/src/main/webapp/richfaces/dataTable/samples/simpleTable-sample.xhtml 2010-12-09 17:26:24 UTC (rev 20483)
@@ -33,7 +33,7 @@
<h:outputText value="#{record.city}" />
</rich:column>
- <rich:subTable var="expense" value="#{record.items}">
+ <rich:collapsibleSubTable var="expense" value="#{record.items}">
<rich:column>
<h:outputText value="#{expense.day}"></h:outputText>
<f:facet name="footer">
@@ -80,7 +80,7 @@
</f:facet>
</rich:column>
- </rich:subTable>
+ </rich:collapsibleSubTable>
<f:facet name="footer">
Modified: branches/RF-8742-1/examples/richfaces-showcase/src/main/webapp/richfaces/dataTable/simpleTable.xhtml
===================================================================
--- branches/RF-8742-1/examples/richfaces-showcase/src/main/webapp/richfaces/dataTable/simpleTable.xhtml 2010-12-09 15:06:40 UTC (rev 20482)
+++ branches/RF-8742-1/examples/richfaces-showcase/src/main/webapp/richfaces/dataTable/simpleTable.xhtml 2010-12-09 17:26:24 UTC (rev 20483)
@@ -6,7 +6,7 @@
<ui:composition>
<p>This sample shows simple master-detail table implemented using<b>
- tbl:dataTable</b> and<b> tbl:subtable</b> components</p>
+ tbl:dataTable</b> and<b> tbl:collapsibleSubTable</b> components</p>
<ui:include src="#{demoNavigator.sampleIncludeURI}" />
<ui:include src="/templates/includes/source-view.xhtml">
<ui:param name="src" value="#{demoNavigator.sampleIncludeURI}" />
Copied: branches/RF-8742-1/examples/richfaces-showcase/src/main/webapp/richfaces/dropDownMenu (from rev 20482, trunk/examples/richfaces-showcase/src/main/webapp/richfaces/dropDownMenu)
Copied: branches/RF-8742-1/examples/richfaces-showcase/src/main/webapp/richfaces/dropDownMenu/samples (from rev 20482, trunk/examples/richfaces-showcase/src/main/webapp/richfaces/dropDownMenu/samples)
Deleted: branches/RF-8742-1/examples/richfaces-showcase/src/main/webapp/richfaces/dropDownMenu/samples/sideMenu-sample.xhtml
===================================================================
--- trunk/examples/richfaces-showcase/src/main/webapp/richfaces/dropDownMenu/samples/sideMenu-sample.xhtml 2010-12-09 15:06:40 UTC (rev 20482)
+++ branches/RF-8742-1/examples/richfaces-showcase/src/main/webapp/richfaces/dropDownMenu/samples/sideMenu-sample.xhtml 2010-12-09 17:26:24 UTC (rev 20483)
@@ -1,54 +0,0 @@
-<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
-<html xmlns="http://www.w3.org/1999/xhtml"
- xmlns:h="http://java.sun.com/jsf/html"
- xmlns:f="http://java.sun.com/jsf/core"
- xmlns:ui="http://java.sun.com/jsf/facelets"
- xmlns:a4j="http://richfaces.org/a4j"
- xmlns:rich="http://richfaces.org/rich">
-
-<ui:composition>
- <style>
-.optionList {
- height: 22px;
-}
-
-.vertical-menu-cell {
- padding: 0px 4px 0px 4px;
-}
-</style>
- <h:panelGrid styleClass="vertical-menu-cell"
- columnClasses="optionList" columns="1" cellspacing="0"
- cellpadding="0">
- <rich:dropDownMenu
- style="border:1px solid #{a4jSkin.panelBorderColor}" label="Option1"
- mode="none">
- <rich:menuItem label="Suboption 1-1" />
- <rich:menuItem label="Suboption 1-2">
- <f:facet name="icon">
- <h:graphicImage value="/richfaces/toolBar/images/print.gif" />
- </f:facet>
- </rich:menuItem>
- <rich:menuItem label="Suboption 1-3" />
- </rich:dropDownMenu>
- <rich:dropDownMenu
- style="border:1px solid #{a4jSkin.panelBorderColor}" label="Option2"
- mode="none">
- <rich:menuItem label="Suboption 2-1" />
- <rich:menuItem label="Suboption 2-2" />
- <rich:menuGroup label="Group2">
- <rich:menuItem label="Suboption 2-2-1" />
- <rich:menuItem label="Suboption 2-2-2" />
- </rich:menuGroup>
- <rich:menuItem label="Suboption 2-3" />
- </rich:dropDownMenu>
- <rich:dropDownMenu
- style="border:1px solid #{a4jSkin.panelBorderColor}" label="Option3"
- mode="none">
- <rich:menuItem label="Suboption 3-1" />
- <rich:menuItem label="Suboption 3-2" />
- <rich:menuItem label="Suboption 3-3" />
- </rich:dropDownMenu>
- </h:panelGrid>
-</ui:composition>
-
-</html>
\ No newline at end of file
Copied: branches/RF-8742-1/examples/richfaces-showcase/src/main/webapp/richfaces/dropDownMenu/samples/sideMenu-sample.xhtml (from rev 20482, trunk/examples/richfaces-showcase/src/main/webapp/richfaces/dropDownMenu/samples/sideMenu-sample.xhtml)
===================================================================
--- branches/RF-8742-1/examples/richfaces-showcase/src/main/webapp/richfaces/dropDownMenu/samples/sideMenu-sample.xhtml (rev 0)
+++ branches/RF-8742-1/examples/richfaces-showcase/src/main/webapp/richfaces/dropDownMenu/samples/sideMenu-sample.xhtml 2010-12-09 17:26:24 UTC (rev 20483)
@@ -0,0 +1,54 @@
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
+<html xmlns="http://www.w3.org/1999/xhtml"
+ xmlns:h="http://java.sun.com/jsf/html"
+ xmlns:f="http://java.sun.com/jsf/core"
+ xmlns:ui="http://java.sun.com/jsf/facelets"
+ xmlns:a4j="http://richfaces.org/a4j"
+ xmlns:rich="http://richfaces.org/rich">
+
+<ui:composition>
+ <style>
+.optionList {
+ height: 22px;
+}
+
+.vertical-menu-cell {
+ padding: 0px 4px 0px 4px;
+}
+</style>
+ <h:panelGrid styleClass="vertical-menu-cell"
+ columnClasses="optionList" columns="1" cellspacing="0"
+ cellpadding="0">
+ <rich:dropDownMenu
+ style="border:1px solid #{a4jSkin.panelBorderColor}" label="Option1"
+ mode="none">
+ <rich:menuItem label="Suboption 1-1" />
+ <rich:menuItem label="Suboption 1-2">
+ <f:facet name="icon">
+ <h:graphicImage value="/richfaces/toolBar/images/print.gif" />
+ </f:facet>
+ </rich:menuItem>
+ <rich:menuItem label="Suboption 1-3" />
+ </rich:dropDownMenu>
+ <rich:dropDownMenu
+ style="border:1px solid #{a4jSkin.panelBorderColor}" label="Option2"
+ mode="none">
+ <rich:menuItem label="Suboption 2-1" />
+ <rich:menuItem label="Suboption 2-2" />
+ <rich:menuGroup label="Group2">
+ <rich:menuItem label="Suboption 2-2-1" />
+ <rich:menuItem label="Suboption 2-2-2" />
+ </rich:menuGroup>
+ <rich:menuItem label="Suboption 2-3" />
+ </rich:dropDownMenu>
+ <rich:dropDownMenu
+ style="border:1px solid #{a4jSkin.panelBorderColor}" label="Option3"
+ mode="none">
+ <rich:menuItem label="Suboption 3-1" />
+ <rich:menuItem label="Suboption 3-2" />
+ <rich:menuItem label="Suboption 3-3" />
+ </rich:dropDownMenu>
+ </h:panelGrid>
+</ui:composition>
+
+</html>
\ No newline at end of file
Deleted: branches/RF-8742-1/examples/richfaces-showcase/src/main/webapp/richfaces/dropDownMenu/samples/topMenu-sample.xhtml
===================================================================
--- trunk/examples/richfaces-showcase/src/main/webapp/richfaces/dropDownMenu/samples/topMenu-sample.xhtml 2010-12-09 15:06:40 UTC (rev 20482)
+++ branches/RF-8742-1/examples/richfaces-showcase/src/main/webapp/richfaces/dropDownMenu/samples/topMenu-sample.xhtml 2010-12-09 17:26:24 UTC (rev 20483)
@@ -1,101 +0,0 @@
-<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
-<html xmlns="http://www.w3.org/1999/xhtml"
- xmlns:h="http://java.sun.com/jsf/html"
- xmlns:f="http://java.sun.com/jsf/core"
- xmlns:ui="http://java.sun.com/jsf/facelets"
- xmlns:a4j="http://richfaces.org/a4j"
- xmlns:rich="http://richfaces.org/rich">
-
-<ui:composition>
-
- <style>
-.pic {
- margin-bottom: -4px;
- margin-right: 2px;
-}
-
-.search .rf-ddm-itm-sel {
- background-color: transparent;
- background-image:none;
- border-color: transparent;
- cursor: default;
-}
-</style>
-
- <h:form>
- <rich:toolbar height="26px">
- <rich:dropDownMenu mode="ajax">
- <f:facet name="label">
- <h:panelGroup>
- <h:graphicImage value="/images/icons/copy.gif" styleClass="pic" />
- <h:outputText value="File" />
- </h:panelGroup>
- </f:facet>
- <rich:menuItem label="New"
- action="#{dropDownMenuBean.doNew}" icon="/images/icons/create_doc.gif">
- </rich:menuItem>
- <rich:menuItem label="Open"
- action="#{dropDownMenuBean.doOpen}" icon="/images/icons/open.gif" />
- <rich:menuGroup label="Save As...">
- <rich:menuItem label="Save"
- action="#{dropDownMenuBean.doSave}" icon="/images/icons/save.gif" />
- <rich:menuItem label="Save All"
- action="#{dropDownMenuBean.doSaveAll}">
- <f:facet name="icon">
- <h:graphicImage value="/images/icons/save_all.gif" />
- </f:facet>
- </rich:menuItem>
- </rich:menuGroup>
- <rich:menuItem label="Close"
- action="#{dropDownMenuBean.doClose}" />
- <rich:menuSeparator id="menuSeparator11" />
- <rich:menuItem label="Exit"
- action="#{dropDownMenuBean.doExit}" />
-
- </rich:dropDownMenu>
-
- <rich:dropDownMenu mode="ajax">
- <f:facet name="label">
- <h:panelGrid cellpadding="0" cellspacing="0" columns="2"
- style="vertical-align:middle">
- <h:outputText value="Links" />
- </h:panelGrid>
- </f:facet>
- <rich:menuItem submitMode="none"
- onclick="document.location.href='http://labs.jboss.com/jbossrichfaces/'">
- <h:outputLink value="http://labs.jboss.com/jbossrichfaces/">
- <h:outputText value="RichFaces Home Page"></h:outputText>
- </h:outputLink>
- </rich:menuItem>
- <rich:menuItem submitMode="none"
- onclick="document.location.href='http://jboss.com/index.html?module=bb&op=viewforum&f=261'">
- <h:outputLink
- value="http://jboss.com/index.html?module=bb&op=viewforum&f=261">
- <h:outputText value="RichFaces Forum"></h:outputText>
- </h:outputLink>
- </rich:menuItem>
- </rich:dropDownMenu>
- <rich:toolbarGroup location="right">
- <rich:dropDownMenu label="Search" direction="bottom-left"
- jointPoint="br" styleClass="search" mode="client">
- <rich:menuItem>
- <h:inputText value="" id="searchinput" />
- <button type="button">Search</button>
- </rich:menuItem>
- <rich:menuItem label="Enter your search criteria here"
- disabled="true"></rich:menuItem>
- </rich:dropDownMenu>
- </rich:toolbarGroup>
- </rich:toolbar>
- </h:form>
-
- <br />
- <a4j:outputPanel ajaxRendered="true">
- <h:outputText value="Current Selection: "></h:outputText>
- <h:outputText style="font-weight:bold" value="#{dropDownMenuBean.current}"></h:outputText>
- </a4j:outputPanel>
- <br />
-
-</ui:composition>
-
-</html>
\ No newline at end of file
Copied: branches/RF-8742-1/examples/richfaces-showcase/src/main/webapp/richfaces/dropDownMenu/samples/topMenu-sample.xhtml (from rev 20482, trunk/examples/richfaces-showcase/src/main/webapp/richfaces/dropDownMenu/samples/topMenu-sample.xhtml)
===================================================================
--- branches/RF-8742-1/examples/richfaces-showcase/src/main/webapp/richfaces/dropDownMenu/samples/topMenu-sample.xhtml (rev 0)
+++ branches/RF-8742-1/examples/richfaces-showcase/src/main/webapp/richfaces/dropDownMenu/samples/topMenu-sample.xhtml 2010-12-09 17:26:24 UTC (rev 20483)
@@ -0,0 +1,101 @@
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
+<html xmlns="http://www.w3.org/1999/xhtml"
+ xmlns:h="http://java.sun.com/jsf/html"
+ xmlns:f="http://java.sun.com/jsf/core"
+ xmlns:ui="http://java.sun.com/jsf/facelets"
+ xmlns:a4j="http://richfaces.org/a4j"
+ xmlns:rich="http://richfaces.org/rich">
+
+<ui:composition>
+
+ <style>
+.pic {
+ margin-bottom: -4px;
+ margin-right: 2px;
+}
+
+.search .rf-ddm-itm-sel {
+ background-color: transparent;
+ background-image:none;
+ border-color: transparent;
+ cursor: default;
+}
+</style>
+
+ <h:form>
+ <rich:toolbar height="26px">
+ <rich:dropDownMenu mode="ajax">
+ <f:facet name="label">
+ <h:panelGroup>
+ <h:graphicImage value="/images/icons/copy.gif" styleClass="pic" />
+ <h:outputText value="File" />
+ </h:panelGroup>
+ </f:facet>
+ <rich:menuItem label="New"
+ action="#{dropDownMenuBean.doNew}" icon="/images/icons/create_doc.gif">
+ </rich:menuItem>
+ <rich:menuItem label="Open"
+ action="#{dropDownMenuBean.doOpen}" icon="/images/icons/open.gif" />
+ <rich:menuGroup label="Save As...">
+ <rich:menuItem label="Save"
+ action="#{dropDownMenuBean.doSave}" icon="/images/icons/save.gif" />
+ <rich:menuItem label="Save All"
+ action="#{dropDownMenuBean.doSaveAll}">
+ <f:facet name="icon">
+ <h:graphicImage value="/images/icons/save_all.gif" />
+ </f:facet>
+ </rich:menuItem>
+ </rich:menuGroup>
+ <rich:menuItem label="Close"
+ action="#{dropDownMenuBean.doClose}" />
+ <rich:menuSeparator id="menuSeparator11" />
+ <rich:menuItem label="Exit"
+ action="#{dropDownMenuBean.doExit}" />
+
+ </rich:dropDownMenu>
+
+ <rich:dropDownMenu mode="ajax">
+ <f:facet name="label">
+ <h:panelGrid cellpadding="0" cellspacing="0" columns="2"
+ style="vertical-align:middle">
+ <h:outputText value="Links" />
+ </h:panelGrid>
+ </f:facet>
+ <rich:menuItem submitMode="none"
+ onclick="document.location.href='http://labs.jboss.com/jbossrichfaces/'">
+ <h:outputLink value="http://labs.jboss.com/jbossrichfaces/">
+ <h:outputText value="RichFaces Home Page"></h:outputText>
+ </h:outputLink>
+ </rich:menuItem>
+ <rich:menuItem submitMode="none"
+ onclick="document.location.href='http://jboss.com/index.html?module=bb&op=viewforum&f=261'">
+ <h:outputLink
+ value="http://jboss.com/index.html?module=bb&op=viewforum&f=261">
+ <h:outputText value="RichFaces Forum"></h:outputText>
+ </h:outputLink>
+ </rich:menuItem>
+ </rich:dropDownMenu>
+ <rich:toolbarGroup location="right">
+ <rich:dropDownMenu label="Search" direction="bottom-left"
+ jointPoint="br" styleClass="search" mode="client">
+ <rich:menuItem>
+ <h:inputText value="" id="searchinput" />
+ <button type="button">Search</button>
+ </rich:menuItem>
+ <rich:menuItem label="Enter your search criteria here"
+ disabled="true"></rich:menuItem>
+ </rich:dropDownMenu>
+ </rich:toolbarGroup>
+ </rich:toolbar>
+ </h:form>
+
+ <br />
+ <a4j:outputPanel ajaxRendered="true">
+ <h:outputText value="Current Selection: "></h:outputText>
+ <h:outputText style="font-weight:bold" value="#{dropDownMenuBean.current}"></h:outputText>
+ </a4j:outputPanel>
+ <br />
+
+</ui:composition>
+
+</html>
\ No newline at end of file
Deleted: branches/RF-8742-1/examples/richfaces-showcase/src/main/webapp/richfaces/dropDownMenu/sideMenu.xhtml
===================================================================
--- trunk/examples/richfaces-showcase/src/main/webapp/richfaces/dropDownMenu/sideMenu.xhtml 2010-12-09 15:06:40 UTC (rev 20482)
+++ branches/RF-8742-1/examples/richfaces-showcase/src/main/webapp/richfaces/dropDownMenu/sideMenu.xhtml 2010-12-09 17:26:24 UTC (rev 20483)
@@ -1,23 +0,0 @@
-<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
-<html xmlns="http://www.w3.org/1999/xhtml"
- xmlns:h="http://java.sun.com/jsf/html"
- xmlns:f="http://java.sun.com/jsf/core"
- xmlns:ui="http://java.sun.com/jsf/facelets">
-
-<ui:composition>
- <p>Instead of grouping menus in toolbar - you can just place a
- block of them horizontally or vertiсally how it is shown below.</p>
- <ui:include src="#{demoNavigator.sampleIncludeURI}" />
- <ui:include src="/templates/includes/source-view.xhtml">
- <ui:param name="src" value="#{demoNavigator.sampleIncludeURI}" />
- <ui:param name="sourceType" value="xhtml" />
- <ui:param name="openLabel" value="View Source" />
- <ui:param name="hideLabel" value="Hide Source" />
- </ui:include>
- <p>Pay attention that the default directions is not really
- convenient in that case. And we will work to add its customization
- support in nearest time. Demo will be updated with the changes after
- that.</p>
-</ui:composition>
-
-</html>
\ No newline at end of file
Copied: branches/RF-8742-1/examples/richfaces-showcase/src/main/webapp/richfaces/dropDownMenu/sideMenu.xhtml (from rev 20482, trunk/examples/richfaces-showcase/src/main/webapp/richfaces/dropDownMenu/sideMenu.xhtml)
===================================================================
--- branches/RF-8742-1/examples/richfaces-showcase/src/main/webapp/richfaces/dropDownMenu/sideMenu.xhtml (rev 0)
+++ branches/RF-8742-1/examples/richfaces-showcase/src/main/webapp/richfaces/dropDownMenu/sideMenu.xhtml 2010-12-09 17:26:24 UTC (rev 20483)
@@ -0,0 +1,23 @@
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
+<html xmlns="http://www.w3.org/1999/xhtml"
+ xmlns:h="http://java.sun.com/jsf/html"
+ xmlns:f="http://java.sun.com/jsf/core"
+ xmlns:ui="http://java.sun.com/jsf/facelets">
+
+<ui:composition>
+ <p>Instead of grouping menus in toolbar - you can just place a
+ block of them horizontally or vertiсally how it is shown below.</p>
+ <ui:include src="#{demoNavigator.sampleIncludeURI}" />
+ <ui:include src="/templates/includes/source-view.xhtml">
+ <ui:param name="src" value="#{demoNavigator.sampleIncludeURI}" />
+ <ui:param name="sourceType" value="xhtml" />
+ <ui:param name="openLabel" value="View Source" />
+ <ui:param name="hideLabel" value="Hide Source" />
+ </ui:include>
+ <p>Pay attention that the default directions is not really
+ convenient in that case. And we will work to add its customization
+ support in nearest time. Demo will be updated with the changes after
+ that.</p>
+</ui:composition>
+
+</html>
\ No newline at end of file
Deleted: branches/RF-8742-1/examples/richfaces-showcase/src/main/webapp/richfaces/dropDownMenu/topMenu.xhtml
===================================================================
--- trunk/examples/richfaces-showcase/src/main/webapp/richfaces/dropDownMenu/topMenu.xhtml 2010-12-09 15:06:40 UTC (rev 20482)
+++ branches/RF-8742-1/examples/richfaces-showcase/src/main/webapp/richfaces/dropDownMenu/topMenu.xhtml 2010-12-09 17:26:24 UTC (rev 20483)
@@ -1,33 +0,0 @@
-<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
-<html xmlns="http://www.w3.org/1999/xhtml"
- xmlns:h="http://java.sun.com/jsf/html"
- xmlns:f="http://java.sun.com/jsf/core"
- xmlns:ui="http://java.sun.com/jsf/facelets">
-
-<ui:composition>
- <p><b>rich:dropDownMenu</b> is a component that allows to organize
- the hierarchical menu similar to one that almost every desktop
- application has.</p>
- <ui:include src="#{demoNavigator.sampleIncludeURI}" />
- <ui:include src="/templates/includes/source-view.xhtml">
- <ui:param name="src" value="#{demoNavigator.sampleIncludeURI}" />
- <ui:param name="sourceType" value="xhtml" />
- <ui:param name="openLabel" value="View Source" />
- <ui:param name="hideLabel" value="Hide Source" />
- </ui:include>
- <p>The drop-down menu has a label that always appears on the page
- and invisible panel that appears with a particular client side event (<i>mouseover,
- click etc</i>). The event is defined with an <b>showEvent</b> attribute.</p>
- <p>Drop-down menu can contains a set of menuItem's, menuGroup's and
- menuSeparator's. Group plays a role of label for secondary levels on
- the menu. Separator is represented with horizontal lines between the
- items or groups. An item is an active element that might produce Ajax
- or non-Ajax requests. The submission mode is defined with <b>mode</b>
- attribute of the menu that has three possible options - "<i>server</i>",
- "<i>ajax</i>" or "<i>client</i>". Mode "<i>client</i>" does not produce
- any request, but allows you to provide your own functionality inside
- the menu item with an inline content. Mode could be overriden for
- concrete item</p>
-</ui:composition>
-
-</html>
\ No newline at end of file
Copied: branches/RF-8742-1/examples/richfaces-showcase/src/main/webapp/richfaces/dropDownMenu/topMenu.xhtml (from rev 20482, trunk/examples/richfaces-showcase/src/main/webapp/richfaces/dropDownMenu/topMenu.xhtml)
===================================================================
--- branches/RF-8742-1/examples/richfaces-showcase/src/main/webapp/richfaces/dropDownMenu/topMenu.xhtml (rev 0)
+++ branches/RF-8742-1/examples/richfaces-showcase/src/main/webapp/richfaces/dropDownMenu/topMenu.xhtml 2010-12-09 17:26:24 UTC (rev 20483)
@@ -0,0 +1,33 @@
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
+<html xmlns="http://www.w3.org/1999/xhtml"
+ xmlns:h="http://java.sun.com/jsf/html"
+ xmlns:f="http://java.sun.com/jsf/core"
+ xmlns:ui="http://java.sun.com/jsf/facelets">
+
+<ui:composition>
+ <p><b>rich:dropDownMenu</b> is a component that allows to organize
+ the hierarchical menu similar to one that almost every desktop
+ application has.</p>
+ <ui:include src="#{demoNavigator.sampleIncludeURI}" />
+ <ui:include src="/templates/includes/source-view.xhtml">
+ <ui:param name="src" value="#{demoNavigator.sampleIncludeURI}" />
+ <ui:param name="sourceType" value="xhtml" />
+ <ui:param name="openLabel" value="View Source" />
+ <ui:param name="hideLabel" value="Hide Source" />
+ </ui:include>
+ <p>The drop-down menu has a label that always appears on the page
+ and invisible panel that appears with a particular client side event (<i>mouseover,
+ click etc</i>). The event is defined with an <b>showEvent</b> attribute.</p>
+ <p>Drop-down menu can contains a set of menuItem's, menuGroup's and
+ menuSeparator's. Group plays a role of label for secondary levels on
+ the menu. Separator is represented with horizontal lines between the
+ items or groups. An item is an active element that might produce Ajax
+ or non-Ajax requests. The submission mode is defined with <b>mode</b>
+ attribute of the menu that has three possible options - "<i>server</i>",
+ "<i>ajax</i>" or "<i>client</i>". Mode "<i>client</i>" does not produce
+ any request, but allows you to provide your own functionality inside
+ the menu item with an inline content. Mode could be overriden for
+ concrete item</p>
+</ui:composition>
+
+</html>
\ No newline at end of file
Copied: branches/RF-8742-1/examples/richfaces-showcase/src/main/webapp/richfaces/fileUpload (from rev 20482, trunk/examples/richfaces-showcase/src/main/webapp/richfaces/fileUpload)
Deleted: branches/RF-8742-1/examples/richfaces-showcase/src/main/webapp/richfaces/fileUpload/imgUpload.xhtml
===================================================================
--- trunk/examples/richfaces-showcase/src/main/webapp/richfaces/fileUpload/imgUpload.xhtml 2010-12-09 15:06:40 UTC (rev 20482)
+++ branches/RF-8742-1/examples/richfaces-showcase/src/main/webapp/richfaces/fileUpload/imgUpload.xhtml 2010-12-09 17:26:24 UTC (rev 20483)
@@ -1,38 +0,0 @@
-<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
-<html xmlns="http://www.w3.org/1999/xhtml"
- xmlns:h="http://java.sun.com/jsf/html"
- xmlns:f="http://java.sun.com/jsf/core"
- xmlns:ui="http://java.sun.com/jsf/facelets">
-
-<ui:composition>
- <p><b>rich:fileUpload</b> is a component which provides files
- upload functionality and extends functionality of standard <b>input</b>
- with <b>type="file"</b>.</p>
- <p>The next example shows you File Upload which allows you to
- upload files to the server. Files number allowed to upload is managed
- with <b>maxFilesQuantity</b> attribute. Every uploaded file should be
- managed with <b>fileUploadListener</b> which is called after every
- single file upload is finished.</p>
- <fieldset><legend><b>Sample limitations</b></legend>This
- example allows to download <b>up to 5 files</b>. The file extension is
- limited to <b>GIF, JPG, BMP, PNG</b> and the maximum size of each file
- must not exceed 100kB</fieldset>
- <ui:include src="#{demoNavigator.sampleIncludeURI}" />
- <ui:include src="/templates/includes/source-view.xhtml">
- <ui:param name="src" value="#{demoNavigator.sampleIncludeURI}" />
- <ui:param name="sourceType" value="xhtml" />
- <ui:param name="openLabel" value="View Source" />
- <ui:param name="hideLabel" value="Hide Source" />
- </ui:include>
- <p><b>FileUpload requires two context-parameter's to be set in
- web.xml:</b></p>
- <ul>
- <li><b>createTempFiles</b> boolean attribute which defines whether the
- uploaded files are stored in temporary files or available in listener
- just as byte[] data (false for this example).</li>
- <li><b>maxRequestSize</b> attribute defines max size in bytes of the
- uploaded files (<u>1000000 for this example</u>).</li>
- </ul>
-</ui:composition>
-
-</html>
\ No newline at end of file
Copied: branches/RF-8742-1/examples/richfaces-showcase/src/main/webapp/richfaces/fileUpload/imgUpload.xhtml (from rev 20482, trunk/examples/richfaces-showcase/src/main/webapp/richfaces/fileUpload/imgUpload.xhtml)
===================================================================
--- branches/RF-8742-1/examples/richfaces-showcase/src/main/webapp/richfaces/fileUpload/imgUpload.xhtml (rev 0)
+++ branches/RF-8742-1/examples/richfaces-showcase/src/main/webapp/richfaces/fileUpload/imgUpload.xhtml 2010-12-09 17:26:24 UTC (rev 20483)
@@ -0,0 +1,38 @@
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
+<html xmlns="http://www.w3.org/1999/xhtml"
+ xmlns:h="http://java.sun.com/jsf/html"
+ xmlns:f="http://java.sun.com/jsf/core"
+ xmlns:ui="http://java.sun.com/jsf/facelets">
+
+<ui:composition>
+ <p><b>rich:fileUpload</b> is a component which provides files
+ upload functionality and extends functionality of standard <b>input</b>
+ with <b>type="file"</b>.</p>
+ <p>The next example shows you File Upload which allows you to
+ upload files to the server. Files number allowed to upload is managed
+ with <b>maxFilesQuantity</b> attribute. Every uploaded file should be
+ managed with <b>fileUploadListener</b> which is called after every
+ single file upload is finished.</p>
+ <fieldset><legend><b>Sample limitations</b></legend>This
+ example allows to download <b>up to 5 files</b>. The file extension is
+ limited to <b>GIF, JPG, BMP, PNG</b> and the maximum size of each file
+ must not exceed 100kB</fieldset>
+ <ui:include src="#{demoNavigator.sampleIncludeURI}" />
+ <ui:include src="/templates/includes/source-view.xhtml">
+ <ui:param name="src" value="#{demoNavigator.sampleIncludeURI}" />
+ <ui:param name="sourceType" value="xhtml" />
+ <ui:param name="openLabel" value="View Source" />
+ <ui:param name="hideLabel" value="Hide Source" />
+ </ui:include>
+ <p><b>FileUpload requires two context-parameter's to be set in
+ web.xml:</b></p>
+ <ul>
+ <li><b>createTempFiles</b> boolean attribute which defines whether the
+ uploaded files are stored in temporary files or available in listener
+ just as byte[] data (false for this example).</li>
+ <li><b>maxRequestSize</b> attribute defines max size in bytes of the
+ uploaded files (<u>1000000 for this example</u>).</li>
+ </ul>
+</ui:composition>
+
+</html>
\ No newline at end of file
Copied: branches/RF-8742-1/examples/richfaces-showcase/src/main/webapp/richfaces/fileUpload/samples (from rev 20482, trunk/examples/richfaces-showcase/src/main/webapp/richfaces/fileUpload/samples)
Deleted: branches/RF-8742-1/examples/richfaces-showcase/src/main/webapp/richfaces/fileUpload/samples/imgUpload-sample.xhtml
===================================================================
--- trunk/examples/richfaces-showcase/src/main/webapp/richfaces/fileUpload/samples/imgUpload-sample.xhtml 2010-12-09 15:06:40 UTC (rev 20482)
+++ branches/RF-8742-1/examples/richfaces-showcase/src/main/webapp/richfaces/fileUpload/samples/imgUpload-sample.xhtml 2010-12-09 17:26:24 UTC (rev 20483)
@@ -1,63 +0,0 @@
-<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
-<html xmlns="http://www.w3.org/1999/xhtml"
- xmlns:h="http://java.sun.com/jsf/html"
- xmlns:f="http://java.sun.com/jsf/core"
- xmlns:ui="http://java.sun.com/jsf/facelets"
- xmlns:a4j="http://richfaces.org/a4j"
- xmlns:rich="http://richfaces.org/rich">
-
-<ui:composition>
-
- <style>
-.top {
- vertical-align: top;
-}
-
-.info {
- height: 202px;
- overflow: auto;
-}
-</style>
- <h:form>
- <h:panelGrid columns="2" columnClasses="top,top">
- <rich:fileUpload fileUploadListener="#{fileUploadBean.listener}"
- maxFilesQuantity="#{fileUploadBean.uploadsAvailable}" id="upload"
- acceptedTypes="jpg, gif, png, bmp">
- <a4j:ajax event="uploadcomplete" execute="@none" render="info" />
- </rich:fileUpload>
- <h:panelGroup id="info">
- <rich:panel bodyClass="info">
- <f:facet name="header">
- <h:outputText value="Uploaded Files Info" />
- </f:facet>
- <h:outputText value="No files currently uploaded"
- rendered="#{fileUploadBean.size==0}" />
- <rich:dataGrid columns="1" value="#{fileUploadBean.files}"
- var="file" rowKeyVar="row">
- <rich:panel bodyClass="rich-laguna-panel-no-header">
- <h:panelGrid columns="2">
- <a4j:mediaOutput element="img" mimeType="#{file.mime}"
- createContent="#{fileUploadBean.paint}" value="#{row}"
- style="width:100px; height:100px;" cacheable="false">
- <f:param value="#{fileUploadBean.timeStamp}" name="time" />
- </a4j:mediaOutput>
- <h:panelGrid columns="2">
- <h:outputText value="File Name:" />
- <h:outputText value="#{file.name}" />
- <h:outputText value="File Length(bytes):" />
- <h:outputText value="#{file.length}" />
- </h:panelGrid>
- </h:panelGrid>
- </rich:panel>
- </rich:dataGrid>
- </rich:panel>
- <br />
- <a4j:commandButton action="#{fileUploadBean.clearUploadData}"
- render="info, upload" value="Clear Uploaded Data"
- rendered="#{fileUploadBean.size>0}" />
- </h:panelGroup>
- </h:panelGrid>
- </h:form>
-</ui:composition>
-
-</html>
\ No newline at end of file
Copied: branches/RF-8742-1/examples/richfaces-showcase/src/main/webapp/richfaces/fileUpload/samples/imgUpload-sample.xhtml (from rev 20482, trunk/examples/richfaces-showcase/src/main/webapp/richfaces/fileUpload/samples/imgUpload-sample.xhtml)
===================================================================
--- branches/RF-8742-1/examples/richfaces-showcase/src/main/webapp/richfaces/fileUpload/samples/imgUpload-sample.xhtml (rev 0)
+++ branches/RF-8742-1/examples/richfaces-showcase/src/main/webapp/richfaces/fileUpload/samples/imgUpload-sample.xhtml 2010-12-09 17:26:24 UTC (rev 20483)
@@ -0,0 +1,63 @@
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
+<html xmlns="http://www.w3.org/1999/xhtml"
+ xmlns:h="http://java.sun.com/jsf/html"
+ xmlns:f="http://java.sun.com/jsf/core"
+ xmlns:ui="http://java.sun.com/jsf/facelets"
+ xmlns:a4j="http://richfaces.org/a4j"
+ xmlns:rich="http://richfaces.org/rich">
+
+<ui:composition>
+
+ <style>
+.top {
+ vertical-align: top;
+}
+
+.info {
+ height: 202px;
+ overflow: auto;
+}
+</style>
+ <h:form>
+ <h:panelGrid columns="2" columnClasses="top,top">
+ <rich:fileUpload fileUploadListener="#{fileUploadBean.listener}"
+ maxFilesQuantity="#{fileUploadBean.uploadsAvailable}" id="upload"
+ acceptedTypes="jpg, gif, png, bmp">
+ <a4j:ajax event="uploadcomplete" execute="@none" render="info" />
+ </rich:fileUpload>
+ <h:panelGroup id="info">
+ <rich:panel bodyClass="info">
+ <f:facet name="header">
+ <h:outputText value="Uploaded Files Info" />
+ </f:facet>
+ <h:outputText value="No files currently uploaded"
+ rendered="#{fileUploadBean.size==0}" />
+ <rich:dataGrid columns="1" value="#{fileUploadBean.files}"
+ var="file" rowKeyVar="row">
+ <rich:panel bodyClass="rich-laguna-panel-no-header">
+ <h:panelGrid columns="2">
+ <a4j:mediaOutput element="img" mimeType="#{file.mime}"
+ createContent="#{fileUploadBean.paint}" value="#{row}"
+ style="width:100px; height:100px;" cacheable="false">
+ <f:param value="#{fileUploadBean.timeStamp}" name="time" />
+ </a4j:mediaOutput>
+ <h:panelGrid columns="2">
+ <h:outputText value="File Name:" />
+ <h:outputText value="#{file.name}" />
+ <h:outputText value="File Length(bytes):" />
+ <h:outputText value="#{file.length}" />
+ </h:panelGrid>
+ </h:panelGrid>
+ </rich:panel>
+ </rich:dataGrid>
+ </rich:panel>
+ <br />
+ <a4j:commandButton action="#{fileUploadBean.clearUploadData}"
+ render="info, upload" value="Clear Uploaded Data"
+ rendered="#{fileUploadBean.size>0}" />
+ </h:panelGroup>
+ </h:panelGrid>
+ </h:form>
+</ui:composition>
+
+</html>
\ No newline at end of file
Modified: branches/RF-8742-1/examples/richfaces-showcase/src/main/webapp/richfaces/inputNumberSlider/samples/sliders-sample.xhtml
===================================================================
--- branches/RF-8742-1/examples/richfaces-showcase/src/main/webapp/richfaces/inputNumberSlider/samples/sliders-sample.xhtml 2010-12-09 15:06:40 UTC (rev 20482)
+++ branches/RF-8742-1/examples/richfaces-showcase/src/main/webapp/richfaces/inputNumberSlider/samples/sliders-sample.xhtml 2010-12-09 17:26:24 UTC (rev 20483)
@@ -8,22 +8,22 @@
<p>Here is an example of default inputNumberSlider:</p>
- <rich:inputNumberSlider value="#{50}" />
+ <rich:inputNumberSlider value="50" />
<p>Here is "minimalistic" input:</p>
- <rich:inputNumberSlider value="#{50}" showInput="false"
+ <rich:inputNumberSlider value="50" showInput="false"
enableManualInput="false" showBoundaryValues="false"
- showToolTip="false" />
+ showTooltip="false" />
<p>Another variation of input:</p>
- <rich:inputNumberSlider value="#{500}" width="500" maxValue="#{1000}"
- step="#{50}" showArrows="true" showToolTip="false" />
+ <rich:inputNumberSlider value="500" width="500" maxValue="1000"
+ step="50" showArrows="true" showTooltip="false" />
<p>The same variant but the control disabled:</p>
- <rich:inputNumberSlider value="#{500}" width="500" maxValue="#{1000}"
- step="#{50}" showArrows="true" showToolTip="false" disabled="true" />
+ <rich:inputNumberSlider value="500" width="500" maxValue="1000"
+ step="50" showArrows="true" showTooltip="false" disabled="true" />
</ui:composition>
\ No newline at end of file
Modified: branches/RF-8742-1/examples/richfaces-showcase/src/main/webapp/richfaces/subTableToggleControl/samples/subTableToggleControl-sample.xhtml
===================================================================
--- branches/RF-8742-1/examples/richfaces-showcase/src/main/webapp/richfaces/subTableToggleControl/samples/subTableToggleControl-sample.xhtml 2010-12-09 15:06:40 UTC (rev 20482)
+++ branches/RF-8742-1/examples/richfaces-showcase/src/main/webapp/richfaces/subTableToggleControl/samples/subTableToggleControl-sample.xhtml 2010-12-09 17:26:24 UTC (rev 20483)
@@ -33,10 +33,10 @@
</rich:columnGroup>
</f:facet>
<rich:column colspan="6">
- <rich:subTableToggleControl for="sbtbl" />
+ <rich:collapsibleSubTableToggler for="sbtbl" />
<h:outputText value="#{list.vendor}" />
</rich:column>
- <rich:subTable value="#{list.vendorItems}" var="item" id="sbtbl"
+ <rich:collapsibleSubTable value="#{list.vendorItems}" var="item" id="sbtbl"
expandMode="client">
<rich:column>
<h:outputText value="#{item.model}" />
@@ -59,7 +59,7 @@
<f:facet name="footer">
<h:outputText value="Total of #{list.vendor} Cars: #{list.count}" />
</f:facet>
- </rich:subTable>
+ </rich:collapsibleSubTable>
</rich:dataTable>
</h:form>
</ui:composition>
\ No newline at end of file
Modified: branches/RF-8742-1/examples/richfaces-showcase/src/main/webapp/richfaces/subTableToggleControl/subTableToggleControl.xhtml
===================================================================
--- branches/RF-8742-1/examples/richfaces-showcase/src/main/webapp/richfaces/subTableToggleControl/subTableToggleControl.xhtml 2010-12-09 15:06:40 UTC (rev 20482)
+++ branches/RF-8742-1/examples/richfaces-showcase/src/main/webapp/richfaces/subTableToggleControl/subTableToggleControl.xhtml 2010-12-09 17:26:24 UTC (rev 20483)
@@ -6,9 +6,9 @@
<ui:composition>
<p>This sample shows simple master-detail table implemented using<b>
- rich:dataTable</b> and<b> rich:subtable</b> components</p>
+ rich:dataTable</b> and<b> rich:collapsibleSubtable</b> components</p>
<p>There is one feature which is completely new for 4.x - subtables
- now could be collapsed/expanded by using new component <b>rich:subTableToggleControl</b></p>
+ now could be collapsed/expanded by using new component <b>rich:collapsibleSubTableToggler</b></p>
<p>Switching customization:</p>
<ul>
<li>subTable's could be collapsed/expanded in different modes
Modified: branches/RF-8742-1/examples/richfaces-showcase/src/main/webapp/richfaces/tooltip/tooltip.xhtml
===================================================================
--- branches/RF-8742-1/examples/richfaces-showcase/src/main/webapp/richfaces/tooltip/tooltip.xhtml 2010-12-09 15:06:40 UTC (rev 20482)
+++ branches/RF-8742-1/examples/richfaces-showcase/src/main/webapp/richfaces/tooltip/tooltip.xhtml 2010-12-09 17:26:24 UTC (rev 20483)
@@ -5,10 +5,10 @@
xmlns:ui="http://java.sun.com/jsf/facelets">
<ui:composition>
- <p>ToolTip is a small non-modal pop-up that could be used to
+ <p>Tooltip is a small non-modal pop-up that could be used to
display additional information, that is usually hidden.<br />
</p>
- <p>Major toolTip features:</p>
+ <p>Major tooltip features:</p>
<ul>
<li>Tool-tip content may be <b>pre-rendered</b> on a page (client
mode) or <b>loaded on separate Ajax request</b> (ajax mode)</li>
Modified: branches/RF-8742-1/examples/richfaces-showcase/src/main/webapp-gae/WEB-INF/web.xml
===================================================================
--- branches/RF-8742-1/examples/richfaces-showcase/src/main/webapp-gae/WEB-INF/web.xml 2010-12-09 15:06:40 UTC (rev 20482)
+++ branches/RF-8742-1/examples/richfaces-showcase/src/main/webapp-gae/WEB-INF/web.xml 2010-12-09 17:26:24 UTC (rev 20483)
@@ -24,6 +24,14 @@
<param-name>org.richfaces.enableControlSkinningClasses</param-name>
<param-value>false</param-value>
</context-param>
+ <context-param>
+ <param-name>org.richfaces.fileUpload.maxRequestSize</param-name>
+ <param-value>100000</param-value>
+ </context-param>
+ <context-param>
+ <param-name>org.richfaces.fileUpload.createTempFiles</param-name>
+ <param-value>false</param-value>
+ </context-param>
<context-param>
<param-name>org.richfaces.skin</param-name>
<param-value>#{skinBean.skin}</param-value>
Modified: branches/RF-8742-1/ui/common/ui/src/main/java/org/richfaces/renderkit/AjaxChildrenRenderer.java
===================================================================
--- branches/RF-8742-1/ui/common/ui/src/main/java/org/richfaces/renderkit/AjaxChildrenRenderer.java 2010-12-09 15:06:40 UTC (rev 20482)
+++ branches/RF-8742-1/ui/common/ui/src/main/java/org/richfaces/renderkit/AjaxChildrenRenderer.java 2010-12-09 17:26:24 UTC (rev 20483)
@@ -72,7 +72,7 @@
// Do not check children if we have no id to render under naming
// container.
- if (AjaxContext.getCurrentInstance(context).isLimitToList() && noIdUnderPath(path, ids)) {
+ if (AjaxContext.getCurrentInstance(context).isDisableImplicitRender() && noIdUnderPath(path, ids)) {
return;
}
}
@@ -113,7 +113,7 @@
if (component.isRendered()) { // skip not-rendered components.
boolean found = false;
- boolean limitToList = AjaxContext.getCurrentInstance(context).isLimitToList();
+ boolean disableImplicitRender = AjaxContext.getCurrentInstance(context).isDisableImplicitRender();
String elementId = component.getId();
String absoluteId = currentPath + elementId;
@@ -133,12 +133,12 @@
}
//
- if (!found && limitToList && (component instanceof NamingContainer)
+ if (!found && disableImplicitRender && (component instanceof NamingContainer)
&& noIdUnderPath(absoluteId + NamingContainer.SEPARATOR_CHAR, ids)) {
return;
}
- if (!found && !limitToList && (component instanceof AjaxOutput)) {
+ if (!found && !disableImplicitRender && (component instanceof AjaxOutput)) {
if (((AjaxOutput) component).isAjaxRendered()) {
// renderChild(context, element);
Deleted: branches/RF-8742-1/ui/common/ui/src/main/java/org/richfaces/renderkit/AjaxEventOptions.java
===================================================================
--- branches/RF-8742-1/ui/common/ui/src/main/java/org/richfaces/renderkit/AjaxEventOptions.java 2010-12-09 15:06:40 UTC (rev 20482)
+++ branches/RF-8742-1/ui/common/ui/src/main/java/org/richfaces/renderkit/AjaxEventOptions.java 2010-12-09 17:26:24 UTC (rev 20483)
@@ -1,120 +0,0 @@
-/**
- * License Agreement.
- *
- * Rich Faces - Natural Ajax for Java Server Faces (JSF)
- *
- * Copyright (C) 2007 Exadel, Inc.
- *
- * This library is free software; you can redistribute it and/or
- * modify it under the terms of the GNU Lesser General Public
- * License version 2.1 as published by the Free Software Foundation.
- *
- * This library is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
- * Lesser General Public License for more details.
- *
- * You should have received a copy of the GNU Lesser General Public
- * License along with this library; if not, write to the Free Software
- * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA
- */
-
-package org.richfaces.renderkit;
-
-import java.io.IOException;
-import java.util.HashMap;
-import java.util.LinkedHashMap;
-import java.util.Map;
-
-import org.ajax4jsf.javascript.ScriptStringBase;
-import org.ajax4jsf.javascript.ScriptUtils;
-
-/**
- * @author Nick Belaevski
- * @since 4.0
- */
-public class AjaxEventOptions extends ScriptStringBase {
-
- public static final String PARAMETERS = "parameters";
-
- public static final String CLIENT_PARAMETERS = "clientParameters";
-
- private Map<String, Object> options = new HashMap<String, Object>();
-
- public void appendScript(Appendable target) throws IOException {
- ScriptUtils.appendScript(target, options);
- }
-
- public boolean isEmpty() {
- return options.isEmpty();
- }
-
- public Object get(String optionName) {
- return options.get(optionName);
- }
-
- public void set(String optionName, Object optionValue) {
- options.put(optionName, optionValue);
- }
-
- public void remove(String optionName) {
- options.remove(optionName);
- }
-
- public boolean hasParameters() {
- @SuppressWarnings("unchecked") Map<String, Object> parameters = (Map<String, Object>) options.get(PARAMETERS);
-
- return (parameters != null) && !parameters.isEmpty();
- }
-
- // TODO: optimize rendered data
- public Map<String, Object> getParameters() {
- @SuppressWarnings("unchecked") Map<String, Object> parameters = (Map<String, Object>) options.get(PARAMETERS);
-
- if (parameters == null) {
- parameters = new LinkedHashMap<String, Object>();
- options.put(PARAMETERS, parameters);
- }
-
- return parameters;
- }
-
- public Object getParameter(String parameterName) {
- Object result = null;
- @SuppressWarnings("unchecked") Map<String, Object> parameters = (Map<String, Object>) options.get(PARAMETERS);
-
- if (parameters != null) {
- result = parameters.get(parameterName);
- }
-
- return result;
- }
-
- public void setParameter(String parameterName, Object parameterValue) {
- getParameters().put(parameterName, parameterValue);
- }
-
- public void removeParameter(String parameterName) {
- @SuppressWarnings("unchecked") Map<String, Object> parameters = (Map<String, Object>) options.get(PARAMETERS);
-
- if (parameters != null) {
- parameters.remove(parameterName);
- }
- }
-
- public Object getClientParameters() {
- return options.get(CLIENT_PARAMETERS);
- }
-
- public void setClientParameters(Object value) {
- options.put(CLIENT_PARAMETERS, value);
- }
-
- public Object getAjaxComponent() {
- return getParameter(AjaxConstants.AJAX_COMPONENT_ID_PARAMETER);
- }
-
- public void setAjaxComponent(Object ajaxComponent) {
- getParameters().put(AjaxConstants.AJAX_COMPONENT_ID_PARAMETER, ajaxComponent);
- }
-}
Copied: branches/RF-8742-1/ui/common/ui/src/main/java/org/richfaces/renderkit/AjaxFunction.java (from rev 20482, trunk/ui/common/ui/src/main/java/org/richfaces/renderkit/AjaxFunction.java)
===================================================================
--- branches/RF-8742-1/ui/common/ui/src/main/java/org/richfaces/renderkit/AjaxFunction.java (rev 0)
+++ branches/RF-8742-1/ui/common/ui/src/main/java/org/richfaces/renderkit/AjaxFunction.java 2010-12-09 17:26:24 UTC (rev 20483)
@@ -0,0 +1,91 @@
+/*
+ * JBoss, Home of Professional Open Source
+ * Copyright 2010, Red Hat, Inc. and individual contributors
+ * by the @authors tag. See the copyright.txt in the distribution for a
+ * full listing of individual contributors.
+ *
+ * This is free software; you can redistribute it and/or modify it
+ * under the terms of the GNU Lesser General Public License as
+ * published by the Free Software Foundation; either version 2.1 of
+ * the License, or (at your option) any later version.
+ *
+ * This software is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
+ * Lesser General Public License for more details.
+ *
+ * You should have received a copy of the GNU Lesser General Public
+ * License along with this software; if not, write to the Free
+ * Software Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA
+ * 02110-1301 USA, or see the FSF site: http://www.fsf.org.
+ */
+package org.richfaces.renderkit;
+
+import java.io.IOException;
+
+import org.ajax4jsf.javascript.JSReference;
+import org.ajax4jsf.javascript.ScriptStringBase;
+import org.ajax4jsf.javascript.ScriptUtils;
+
+/**
+ * @author Nick Belaevski
+ *
+ */
+public class AjaxFunction extends ScriptStringBase {
+
+ public static final String FUNCTION_NAME = "RichFaces.ajax";
+
+ private Object source;
+
+ private Object event = JSReference.EVENT;
+
+ private AjaxOptions options;
+
+ public AjaxFunction(Object source, AjaxOptions options) {
+ super();
+ this.source = source;
+ this.options = options;
+ }
+
+ public Object getSource() {
+ return source;
+ }
+
+ public void setSource(Object source) {
+ this.source = source;
+ }
+
+ public Object getEvent() {
+ return event;
+ }
+
+ public void setEvent(Object event) {
+ this.event = event;
+ }
+
+ public AjaxOptions getOptions() {
+ return options;
+ }
+
+ public void setOptions(AjaxOptions eventOptions) {
+ this.options = eventOptions;
+ }
+
+ public void appendScript(Appendable target) throws IOException {
+ target.append(FUNCTION_NAME);
+ target.append('(');
+
+ ScriptUtils.appendScript(target, source);
+ target.append(',');
+ ScriptUtils.appendScript(target, event);
+
+ if (!options.isEmpty()) {
+ target.append(',');
+ ScriptUtils.appendScript(target, options);
+ }
+
+ target.append(")");
+ }
+
+
+}
Copied: branches/RF-8742-1/ui/common/ui/src/main/java/org/richfaces/renderkit/AjaxOptions.java (from rev 20482, trunk/ui/common/ui/src/main/java/org/richfaces/renderkit/AjaxOptions.java)
===================================================================
--- branches/RF-8742-1/ui/common/ui/src/main/java/org/richfaces/renderkit/AjaxOptions.java (rev 0)
+++ branches/RF-8742-1/ui/common/ui/src/main/java/org/richfaces/renderkit/AjaxOptions.java 2010-12-09 17:26:24 UTC (rev 20483)
@@ -0,0 +1,128 @@
+/**
+ * License Agreement.
+ *
+ * Rich Faces - Natural Ajax for Java Server Faces (JSF)
+ *
+ * Copyright (C) 2007 Exadel, Inc.
+ *
+ * This library is free software; you can redistribute it and/or
+ * modify it under the terms of the GNU Lesser General Public
+ * License version 2.1 as published by the Free Software Foundation.
+ *
+ * This library is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
+ * Lesser General Public License for more details.
+ *
+ * You should have received a copy of the GNU Lesser General Public
+ * License along with this library; if not, write to the Free Software
+ * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA
+ */
+
+package org.richfaces.renderkit;
+
+import java.io.IOException;
+import java.util.HashMap;
+import java.util.LinkedHashMap;
+import java.util.Map;
+
+import org.ajax4jsf.javascript.ScriptStringBase;
+import org.ajax4jsf.javascript.ScriptUtils;
+
+/**
+ * @author Nick Belaevski
+ * @since 4.0
+ */
+public class AjaxOptions extends ScriptStringBase {
+
+ public static final String PARAMETERS = "parameters";
+
+ public static final String CLIENT_PARAMETERS = "clientParameters";
+
+ private Map<String, Object> options = new HashMap<String, Object>();
+
+ public void appendScript(Appendable target) throws IOException {
+ ScriptUtils.appendScript(target, options);
+ }
+
+ public boolean isEmpty() {
+ return options.isEmpty();
+ }
+
+ public Object get(String optionName) {
+ return options.get(optionName);
+ }
+
+ public void set(String optionName, Object optionValue) {
+ options.put(optionName, optionValue);
+ }
+
+ public void remove(String optionName) {
+ options.remove(optionName);
+ }
+
+ public boolean hasParameters() {
+ @SuppressWarnings("unchecked") Map<String, Object> parameters = (Map<String, Object>) options.get(PARAMETERS);
+
+ return (parameters != null) && !parameters.isEmpty();
+ }
+
+ // TODO: optimize rendered data
+ public Map<String, Object> getParameters() {
+ @SuppressWarnings("unchecked") Map<String, Object> parameters = (Map<String, Object>) options.get(PARAMETERS);
+
+ if (parameters == null) {
+ parameters = new LinkedHashMap<String, Object>();
+ options.put(PARAMETERS, parameters);
+ }
+
+ return parameters;
+ }
+
+ public Object getParameter(String parameterName) {
+ Object result = null;
+ @SuppressWarnings("unchecked") Map<String, Object> parameters = (Map<String, Object>) options.get(PARAMETERS);
+
+ if (parameters != null) {
+ result = parameters.get(parameterName);
+ }
+
+ return result;
+ }
+
+ public void setParameter(String parameterName, Object parameterValue) {
+ getParameters().put(parameterName, parameterValue);
+ }
+
+ public void addParameters(Map<String, Object> params) {
+ if (params == null || params.isEmpty()) {
+ return;
+ }
+
+ getParameters().putAll(params);
+ }
+
+ public void removeParameter(String parameterName) {
+ @SuppressWarnings("unchecked") Map<String, Object> parameters = (Map<String, Object>) options.get(PARAMETERS);
+
+ if (parameters != null) {
+ parameters.remove(parameterName);
+ }
+ }
+
+ public Object getClientParameters() {
+ return options.get(CLIENT_PARAMETERS);
+ }
+
+ public void setClientParameters(Object value) {
+ options.put(CLIENT_PARAMETERS, value);
+ }
+
+ public Object getAjaxComponent() {
+ return getParameter(AjaxConstants.AJAX_COMPONENT_ID_PARAMETER);
+ }
+
+ public void setAjaxComponent(Object ajaxComponent) {
+ getParameters().put(AjaxConstants.AJAX_COMPONENT_ID_PARAMETER, ajaxComponent);
+ }
+}
Modified: branches/RF-8742-1/ui/common/ui/src/main/java/org/richfaces/renderkit/util/AjaxRendererUtils.java
===================================================================
--- branches/RF-8742-1/ui/common/ui/src/main/java/org/richfaces/renderkit/util/AjaxRendererUtils.java 2010-12-09 15:06:40 UTC (rev 20482)
+++ branches/RF-8742-1/ui/common/ui/src/main/java/org/richfaces/renderkit/util/AjaxRendererUtils.java 2010-12-09 17:26:24 UTC (rev 20483)
@@ -24,16 +24,20 @@
import java.util.Map;
import javax.faces.component.UIComponent;
+import javax.faces.component.behavior.ClientBehaviorContext;
import javax.faces.context.FacesContext;
import org.ajax4jsf.component.AjaxClientBehavior;
import org.ajax4jsf.component.AjaxComponent;
import org.ajax4jsf.context.AjaxContext;
-import org.ajax4jsf.javascript.JSFunction;
import org.ajax4jsf.javascript.JSFunctionDefinition;
import org.ajax4jsf.javascript.JSReference;
-import org.richfaces.renderkit.AjaxEventOptions;
+import org.richfaces.renderkit.AjaxConstants;
+import org.richfaces.renderkit.AjaxFunction;
+import org.richfaces.renderkit.AjaxOptions;
import org.richfaces.renderkit.HtmlConstants;
+
+import com.google.common.base.Strings;
/**
* @author shura
* <p/>
@@ -45,10 +49,6 @@
public static final String AJAX_AREAS_RENDERED = "org.ajax4jsf.areas.rendered";
public static final String AJAX_DELAY_ATTR = "requestDelay";
- /**
- * Name Javasript function for submit AJAX request
- */
- public static final String AJAX_FUNCTION_NAME = "RichFaces.ajax";
public static final String AJAX_QUEUE_ATTR = "eventsQueue";
public static final String AJAX_SINGLE_ATTR = "ajaxSingle";
@@ -79,7 +79,7 @@
private AjaxRendererUtils() {
}
- private static enum BehaviorEventOptionsData {
+ private static enum BehaviorOptionsData {
begin {
@Override
public String getAttributeValue(AjaxClientBehavior behavior) {
@@ -199,50 +199,58 @@
return onEvent;
}
- public static AjaxEventOptions buildEventOptions(FacesContext facesContext, UIComponent component) {
- return buildEventOptions(facesContext, component, null);
+ //TODO make this function private
+ public static AjaxOptions buildEventOptions(FacesContext facesContext, UIComponent component) {
+ AjaxOptions ajaxOptions = new AjaxOptions();
+ appendComponentOptions(facesContext, component, ajaxOptions);
+
+ Map<String, Object> parametersMap = RENDERER_UTILS.createParametersMap(facesContext, component);
+ ajaxOptions.addParameters(parametersMap);
+
+ return ajaxOptions;
}
- public static AjaxEventOptions buildEventOptions(FacesContext facesContext, UIComponent component,
+ private static AjaxOptions buildAjaxOptions(ClientBehaviorContext behaviorContext,
AjaxClientBehavior ajaxBehavior) {
- AjaxEventOptions ajaxEventOptions = new AjaxEventOptions();
+ FacesContext facesContext = behaviorContext.getFacesContext();
+ UIComponent component = behaviorContext.getComponent();
+
+ AjaxOptions ajaxOptions = new AjaxOptions();
+
Map<String, Object> parametersMap = RENDERER_UTILS.createParametersMap(facesContext, component);
- String ajaxStatusName = getAjaxStatus(component);
-
- if (ajaxBehavior != null) {
- ajaxStatusName = (ajaxBehavior.getStatus() != null) ? ajaxBehavior.getStatus() : ajaxStatusName;
- appenAjaxBehaviorOptions(ajaxBehavior, ajaxEventOptions);
- } else {
- appendComponentOptions(facesContext, component, ajaxEventOptions);
+ ajaxOptions.addParameters(parametersMap);
+
+ String ajaxStatusName = ajaxBehavior.getStatus();
+ if (Strings.isNullOrEmpty(ajaxStatusName)) {
+ ajaxStatusName = getAjaxStatus(component);
}
-
- if ((ajaxStatusName != null) && (ajaxStatusName.length() != 0)) {
- ajaxEventOptions.set(STATUS_ATTR_NAME, ajaxStatusName);
+ if (!Strings.isNullOrEmpty(ajaxStatusName)) {
+ ajaxOptions.set(STATUS_ATTR_NAME, ajaxStatusName);
}
- if (!parametersMap.isEmpty()) {
- ajaxEventOptions.getParameters().putAll(parametersMap);
- }
+ appenAjaxBehaviorOptions(behaviorContext, ajaxBehavior, ajaxOptions);
- return ajaxEventOptions;
+ return ajaxOptions;
}
private static boolean isNotEmpty(String value) {
return (value != null) && (value.length() != 0);
}
- private static void appenAjaxBehaviorOptions(AjaxClientBehavior behavior, AjaxEventOptions ajaxEventOptions) {
- for (BehaviorEventOptionsData optionsData : BehaviorEventOptionsData.values()) {
- String eventHandlerValue = optionsData.getAttributeValue(behavior);
+ private static void appenAjaxBehaviorOptions(ClientBehaviorContext behaviorContext, AjaxClientBehavior behavior, AjaxOptions ajaxOptions) {
+ ajaxOptions.setParameter(AjaxConstants.BEHAVIOR_EVENT_PARAMETER, behaviorContext.getEventName());
+
+ for (BehaviorOptionsData optionsData : BehaviorOptionsData.values()) {
+ String optionValue = optionsData.getAttributeValue(behavior);
- if (isNotEmpty(eventHandlerValue)) {
- ajaxEventOptions.set(optionsData.toString(), eventHandlerValue);
+ if (isNotEmpty(optionValue)) {
+ ajaxOptions.set(optionsData.toString(), optionValue);
}
}
}
private static void appendComponentOptions(FacesContext facesContext, UIComponent component,
- AjaxEventOptions ajaxEventOptions) {
+ AjaxOptions ajaxOptions) {
String behaviorName = "begin";
HandlersChain handlersChain = new HandlersChain(facesContext, component);
String inlineHandler = getAjaxOnBegin(component);
@@ -253,15 +261,20 @@
String handlerScript = handlersChain.toScript();
if (isNotEmpty(handlerScript)) {
- ajaxEventOptions.set(behaviorName, handlerScript);
+ ajaxOptions.set(behaviorName, handlerScript);
}
String queueId = getQueueId(component);
if (isNotEmpty(queueId)) {
- ajaxEventOptions.set(QUEUE_ID_ATTRIBUTE, queueId);
+ ajaxOptions.set(QUEUE_ID_ATTRIBUTE, queueId);
}
- ajaxEventOptions.set("incId", "1");
+ ajaxOptions.set("incId", "1");
+
+ String status = getAjaxStatus(component);
+ if (!Strings.isNullOrEmpty(status)) {
+ ajaxOptions.set(STATUS_ATTR_NAME, status);
+ }
}
// public static AjaxEventOptions buildEventOptions(FacesContext facesContext,
@@ -346,7 +359,7 @@
// options.put("parameters", parameters);
// }
// // parameter to render only current list of areas.
-//// if (isAjaxLimitToList(uiComponent)) {
+//// if (isAjaxDisableImplicitRender(uiComponent)) {
//// Set<? extends Object> ajaxAreas = getAjaxAreas(uiComponent);
//// Set<String> areasIds = new HashSet<String>();
//// if (null != ajaxAreas) {
@@ -456,16 +469,29 @@
* @param functionName
* @return
*/
- public static JSFunction buildAjaxFunction(FacesContext facesContext, UIComponent uiComponent,
- String functionName) {
- JSFunction ajaxFunction = new JSFunction(functionName);
+ public static AjaxFunction buildAjaxFunction(FacesContext facesContext, UIComponent component) {
+ return new AjaxFunction(component.getClientId(facesContext), buildEventOptions(facesContext, component));
+ }
- ajaxFunction.addParameter(uiComponent.getClientId(facesContext));
- ajaxFunction.addParameter(JSReference.EVENT);
+ public static AjaxFunction buildAjaxFunction(ClientBehaviorContext behaviorContext, AjaxClientBehavior behavior) {
+ Object source;
+
+ AjaxOptions options = buildAjaxOptions(behaviorContext, behavior);
- return ajaxFunction;
+ if (behaviorContext.getSourceId() != null) {
+ source = behaviorContext.getSourceId();
+ } else {
+ source = JSReference.THIS;
+
+ FacesContext facesContext = behaviorContext.getFacesContext();
+ UIComponent component = behaviorContext.getComponent();
+
+ options.set("sourceId", component.getClientId(facesContext));
+ }
+
+ return new AjaxFunction(source, options);
}
-
+
/**
* Append common parameters ( array of affected areas, status area id, on
* complete function ) to JavaScript event string.
@@ -481,7 +507,7 @@
// Set ajaxAreas = getAjaxAreas(uiComponent);
// onClick.append(',');
// // parameter to render only current list of areas.
- // if (isAjaxLimitToList(uiComponent) && ajaxAreas != null &&
+ // if (isAjaxDisableImplicitRender(uiComponent) && ajaxAreas != null &&
// ajaxAreas.size() > 0)
// {
// onClick.append('[');
Modified: branches/RF-8742-1/ui/common/ui/src/main/java/org/richfaces/renderkit/util/HandlersChain.java
===================================================================
--- branches/RF-8742-1/ui/common/ui/src/main/java/org/richfaces/renderkit/util/HandlersChain.java 2010-12-09 15:06:40 UTC (rev 20482)
+++ branches/RF-8742-1/ui/common/ui/src/main/java/org/richfaces/renderkit/util/HandlersChain.java 2010-12-09 17:26:24 UTC (rev 20483)
@@ -21,9 +21,7 @@
package org.richfaces.renderkit.util;
-import static org.richfaces.renderkit.util.AjaxRendererUtils.AJAX_FUNCTION_NAME;
import static org.richfaces.renderkit.util.AjaxRendererUtils.buildAjaxFunction;
-import static org.richfaces.renderkit.util.AjaxRendererUtils.buildEventOptions;
import java.util.ArrayList;
import java.util.Collection;
@@ -41,7 +39,7 @@
import org.ajax4jsf.javascript.JSFunction;
import org.ajax4jsf.javascript.JSReference;
-import org.richfaces.renderkit.AjaxEventOptions;
+import org.ajax4jsf.javascript.ScriptString;
/**
* @author Nick Belaevski
@@ -169,13 +167,7 @@
if (!this.hasSubmittingBehavior()) {
hasSubmittingBehavior = true;
- JSFunction ajaxFunction = buildAjaxFunction(facesContext, component, AJAX_FUNCTION_NAME);
- AjaxEventOptions eventOptions = buildEventOptions(facesContext, component);
-
- if (!eventOptions.isEmpty()) {
- ajaxFunction.addParameter(eventOptions);
- }
-
+ ScriptString ajaxFunction = buildAjaxFunction(facesContext, component);
this.addInlineHandlerAsValue(ajaxFunction.toScript());
}
}
Modified: branches/RF-8742-1/ui/core/ui/src/main/java/org/ajax4jsf/renderkit/AjaxBehaviorRenderer.java
===================================================================
--- branches/RF-8742-1/ui/core/ui/src/main/java/org/ajax4jsf/renderkit/AjaxBehaviorRenderer.java 2010-12-09 15:06:40 UTC (rev 20482)
+++ branches/RF-8742-1/ui/core/ui/src/main/java/org/ajax4jsf/renderkit/AjaxBehaviorRenderer.java 2010-12-09 17:26:24 UTC (rev 20483)
@@ -22,8 +22,6 @@
package org.ajax4jsf.renderkit;
-import static org.richfaces.renderkit.AjaxConstants.BEHAVIOR_EVENT_PARAMETER;
-
import javax.faces.application.ResourceDependency;
import javax.faces.component.ActionSource;
import javax.faces.component.EditableValueHolder;
@@ -37,10 +35,7 @@
import javax.faces.render.FacesBehaviorRenderer;
import javax.faces.render.RenderKitFactory;
-import org.ajax4jsf.component.AjaxClientBehavior;
import org.ajax4jsf.component.behavior.AjaxBehavior;
-import org.ajax4jsf.javascript.JSFunction;
-import org.richfaces.renderkit.AjaxEventOptions;
import org.richfaces.renderkit.util.AjaxRendererUtils;
import org.richfaces.renderkit.util.RendererUtils;
@@ -126,21 +121,7 @@
}
public String buildAjaxCommand(ClientBehaviorContext bContext, AjaxBehavior behavior) {
- UIComponent parent = bContext.getComponent();
- FacesContext context = bContext.getFacesContext();
- JSFunction ajaxFunction = AjaxRendererUtils.buildAjaxFunction(context, parent,
- AjaxRendererUtils.AJAX_FUNCTION_NAME);
- AjaxEventOptions options = buildOptions(context, bContext, behavior);
- ajaxFunction.addParameter(options);
- return ajaxFunction.toString();
+ return AjaxRendererUtils.buildAjaxFunction(bContext, behavior).toString();
}
- public AjaxEventOptions buildOptions(FacesContext context, ClientBehaviorContext bContext,
- AjaxClientBehavior behavior) {
- UIComponent parent = bContext.getComponent();
- String eventName = bContext.getEventName();
- AjaxEventOptions options = AjaxRendererUtils.buildEventOptions(context, parent, behavior);
- options.setParameter(BEHAVIOR_EVENT_PARAMETER, eventName);
- return options;
- }
}
Modified: branches/RF-8742-1/ui/core/ui/src/main/java/org/richfaces/renderkit/AjaxFunctionRendererBase.java
===================================================================
--- branches/RF-8742-1/ui/core/ui/src/main/java/org/richfaces/renderkit/AjaxFunctionRendererBase.java 2010-12-09 15:06:40 UTC (rev 20482)
+++ branches/RF-8742-1/ui/core/ui/src/main/java/org/richfaces/renderkit/AjaxFunctionRendererBase.java 2010-12-09 17:26:24 UTC (rev 20483)
@@ -31,7 +31,6 @@
import javax.faces.component.UIParameter;
import javax.faces.context.FacesContext;
-import org.ajax4jsf.javascript.JSFunction;
import org.ajax4jsf.javascript.JSFunctionDefinition;
import org.ajax4jsf.javascript.JSReference;
import org.ajax4jsf.javascript.ScriptUtils;
@@ -54,17 +53,13 @@
// func.setName(component.getName());
// Create AJAX Submit function.
- JSFunction ajaxFunction = AjaxRendererUtils.buildAjaxFunction(context, component,
- AjaxRendererUtils.AJAX_FUNCTION_NAME);
- AjaxEventOptions options = AjaxRendererUtils.buildEventOptions(context, component);
+ AjaxFunction ajaxFunction = AjaxRendererUtils.buildAjaxFunction(context, component);
+ ajaxFunction.setEvent(null);
+ AjaxOptions options = ajaxFunction.getOptions();
if (options.hasParameters()) {
Map<String, Object> parameters = options.getParameters();
-// if (null == parameters) {
-// parameters = new HashMap<String, Object>();
-// options.put("parameters", parameters);
-// }
// Fill parameters.
for (Iterator<UIComponent> it = component.getChildren().iterator(); it.hasNext(); ) {
UIComponent child = it.next();
@@ -88,12 +83,7 @@
}
}
- if (!options.isEmpty()) {
- ajaxFunction.addParameter(options);
- }
-
// TODO - added in 4.0 - ?
- func.addParameter(JSReference.EVENT);
func.addToBody(ajaxFunction.toScript());
func.appendScriptToStringBuilder(script);
Deleted: branches/RF-8742-1/ui/core/ui/src/main/templates/org/ajax4jsf/renderkit/html/log.jspx
===================================================================
--- branches/RF-8742-1/ui/core/ui/src/main/templates/org/ajax4jsf/renderkit/html/log.jspx 2010-12-09 15:06:40 UTC (rev 20482)
+++ branches/RF-8742-1/ui/core/ui/src/main/templates/org/ajax4jsf/renderkit/html/log.jspx 2010-12-09 17:26:24 UTC (rev 20483)
@@ -1,33 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-<f:root
- xmlns:f="http://jsf.exadel.com/template"
- xmlns:c=" http://java.sun.com/jsf/core"
- xmlns:ui=" http://jsf.exadel.com/ui"
- xmlns:vcp=" http://jsf.exadel.com/vcp"
- xmlns:u=" http://jsf.exadel.com/vcp"
- xmlns:x=" http://jsf.exadel.com/vcp"
- class="org.ajax4jsf.renderkit.html.LogRenderer"
- baseclass="org.ajax4jsf.renderkit.AjaxComponentRendererBase"
- component="org.ajax4jsf.component.UIAjaxLog"
- xmlns:jsp="http://java.sun.com/JSP/Page" version="2.0" >
- <jsp:directive.page import="javax.faces.context.FacesContext,javax.faces.component.UIComponent"/>
- <f:clientid var="clientId"/>
- <jsp:scriptlet> if(component.isPopup()){</jsp:scriptlet>
- <script
- id="#{clientId}"
- type="text/javascript"
- >
- LOG.registerPopup('#{component.hotkey}','#{component.name}',#{component.width},#{component.height},LOG.#{component.level});
- </script>
- <jsp:scriptlet>} else {</jsp:scriptlet>
- <div id="logConsole"
- x:style='width:#{component.width};height:#{component.height};overflow:auto;#{component.attributes["style"]}'
- x:passThruWithExclusions="value,name,id,style"
- >
- <button onclick="LOG.clear()">Clear</button><br />
- <script type="text/javascript">
- LOG.LEVEL = LOG.#{component.level};
- </script>
- </div>
- <jsp:scriptlet> } </jsp:scriptlet>
-</f:root>
Modified: branches/RF-8742-1/ui/dist/richfaces-components-ui/pom.xml
===================================================================
--- branches/RF-8742-1/ui/dist/richfaces-components-ui/pom.xml 2010-12-09 15:06:40 UTC (rev 20482)
+++ branches/RF-8742-1/ui/dist/richfaces-components-ui/pom.xml 2010-12-09 17:26:24 UTC (rev 20483)
@@ -74,10 +74,6 @@
<groupId>org.richfaces.core</groupId>
<artifactId>richfaces-core-api</artifactId>
</dependency>
- <dependency>
- <groupId>org.richfaces.core</groupId>
- <artifactId>richfaces-core-impl</artifactId>
- </dependency>
<dependency>
<groupId>javax.servlet</groupId>
Modified: branches/RF-8742-1/ui/dnd/ui/pom.xml
===================================================================
--- branches/RF-8742-1/ui/dnd/ui/pom.xml 2010-12-09 15:06:40 UTC (rev 20482)
+++ branches/RF-8742-1/ui/dnd/ui/pom.xml 2010-12-09 17:26:24 UTC (rev 20483)
@@ -56,10 +56,6 @@
<artifactId>richfaces-core-api</artifactId>
</dependency>
<dependency>
- <groupId>org.richfaces.core</groupId>
- <artifactId>richfaces-core-impl</artifactId>
- </dependency>
- <dependency>
<groupId>org.richfaces.ui.common</groupId>
<artifactId>richfaces-ui-common-ui</artifactId>
</dependency>
Modified: branches/RF-8742-1/ui/input/ui/pom.xml
===================================================================
--- branches/RF-8742-1/ui/input/ui/pom.xml 2010-12-09 15:06:40 UTC (rev 20482)
+++ branches/RF-8742-1/ui/input/ui/pom.xml 2010-12-09 17:26:24 UTC (rev 20483)
@@ -52,10 +52,6 @@
<groupId>org.richfaces.core</groupId>
<artifactId>richfaces-core-api</artifactId>
</dependency>
- <dependency>
- <groupId>org.richfaces.core</groupId>
- <artifactId>richfaces-core-impl</artifactId>
- </dependency>
<dependency>
<groupId>org.richfaces.ui.common</groupId>
<artifactId>richfaces-ui-common-ui</artifactId>
Modified: branches/RF-8742-1/ui/input/ui/src/main/config/faces-config.xml
===================================================================
--- branches/RF-8742-1/ui/input/ui/src/main/config/faces-config.xml 2010-12-09 15:06:40 UTC (rev 20482)
+++ branches/RF-8742-1/ui/input/ui/src/main/config/faces-config.xml 2010-12-09 17:26:24 UTC (rev 20483)
@@ -183,7 +183,7 @@
</property-extension>
</property>
<property>
- <property-name>showToolTip</property-name>
+ <property-name>showTooltip</property-name>
<property-class>boolean</property-class>
<default-value>true</default-value>
<property-extension>
@@ -221,7 +221,7 @@
</property-extension>
</property>
<property>
- <property-name>toolTipClass</property-name>
+ <property-name>tooltipClass</property-name>
<property-class>java.lang.String</property-class>
<property-extension>
<cdk:generate>true</cdk:generate>
Modified: branches/RF-8742-1/ui/input/ui/src/main/java/org/richfaces/component/AbstractCalendar.java
===================================================================
--- branches/RF-8742-1/ui/input/ui/src/main/java/org/richfaces/component/AbstractCalendar.java 2010-12-09 15:06:40 UTC (rev 20482)
+++ branches/RF-8742-1/ui/input/ui/src/main/java/org/richfaces/component/AbstractCalendar.java 2010-12-09 17:26:24 UTC (rev 20483)
@@ -78,13 +78,11 @@
public static final String COMPONENT_FAMILY = "org.richfaces.Calendar";
- public static final String SUB_TIME_PATTERN = "\\s*[hHkKma]+[\\W&&\\S]+[hHkKma]+\\s*";
+ public static final String SUB_TIME_PATTERN = "\\s*[hHkKma]+[\\W&&\\S]+[hHkKma]+[\\W&&\\S]*[s]*\\s*";
- public static final String TIME_PATTERN = "HH:mm";
+ public static final String TIME_PATTERN = "HH:mm:ss";
public static final String DEFAULT_DATE_PATTERN = "MMM d, yyyy";
-
- public static final String DEFAULT_DATE_VALUE = "12:00:00";
Logger log = RichfacesLogger.COMPONENTS.getLogger();
@@ -95,9 +93,8 @@
public enum Modes {
CLIENT,
AJAX
- }
+ }
-
@Attribute(defaultValue = "MMM d, yyyy")
public abstract String getDatePattern();
@@ -159,10 +156,10 @@
public abstract String getBoundaryDatesMode();
@Attribute(defaultValue = "0")
- public abstract String getHorizontalOffset();
+ public abstract int getHorizontalOffset();
@Attribute(defaultValue = "0")
- public abstract String getVerticalOffset();
+ public abstract int getVerticalOffset();
@Attribute(defaultValue = "3")
public abstract int getZindex();
@@ -218,7 +215,7 @@
@Attribute
public abstract String getButtonIconDisabled();
- @Attribute(defaultValue = "AbstractCalendar.DEFAULT_DATE_VALUE")
+ @Attribute(defaultValue = "getDefaultValueOfDefaultTime(null,null)")
public abstract Object getDefaultTime();
@Attribute(defaultValue = "getDefaultPreloadBegin(getCurrentDateOrDefault())")
@@ -332,6 +329,8 @@
public void setLocale(Object locale) {
getStateHelper().put(PropertyKeys.locale, locale);
}
+
+
public void updateCurrentDate(FacesContext facesContext, Object currentDate) {
if (facesContext == null) {
@@ -386,6 +385,18 @@
return (CurrentDateChangeListener[]) getFacesListeners(CurrentDateChangeListener.class);
}
+ public static Object getDefaultValueOfDefaultTime(FacesContext facesContext, AbstractCalendar calendarComponent) {
+ if (calendarComponent == null) {
+ return null;
+ }
+
+ Calendar calendar = CalendarHelper.getCalendar(facesContext, calendarComponent);
+ calendar.set(Calendar.HOUR_OF_DAY, 12);
+ calendar.set(Calendar.MINUTE, 0);
+ calendar.set(Calendar.SECOND, 0);
+ return calendar.getTime();
+ }
+
protected Date getDefaultPreloadBegin(Date date) {
FacesContext facesContext = FacesContext.getCurrentInstance();
Calendar calendar = Calendar.getInstance(getTimeZone(),
Modified: branches/RF-8742-1/ui/input/ui/src/main/java/org/richfaces/component/AbstractSelectComponent.java
===================================================================
--- branches/RF-8742-1/ui/input/ui/src/main/java/org/richfaces/component/AbstractSelectComponent.java 2010-12-09 15:06:40 UTC (rev 20482)
+++ branches/RF-8742-1/ui/input/ui/src/main/java/org/richfaces/component/AbstractSelectComponent.java 2010-12-09 17:26:24 UTC (rev 20483)
@@ -118,8 +118,8 @@
@Attribute(events=@EventName("listkeyup"))
public abstract String getOnlistkeyup();
- @Attribute(events=@EventName("select"))
- public abstract String getOnselect();
+ @Attribute(events=@EventName("selectitem"))
+ public abstract String getOnselectitem();
@Attribute(events=@EventName("change"))
public abstract String getOnchange();
Modified: branches/RF-8742-1/ui/input/ui/src/main/java/org/richfaces/context/FileUploadPartialViewContextFactory.java
===================================================================
--- branches/RF-8742-1/ui/input/ui/src/main/java/org/richfaces/context/FileUploadPartialViewContextFactory.java 2010-12-09 15:06:40 UTC (rev 20482)
+++ branches/RF-8742-1/ui/input/ui/src/main/java/org/richfaces/context/FileUploadPartialViewContextFactory.java 2010-12-09 17:26:24 UTC (rev 20483)
@@ -93,8 +93,8 @@
if (maxRequestSize != 0 && externalContext.getRequestContentLength() > maxRequestSize) {
printResponse(facesContext, uid, ResponseState.sizeExceeded);
} else {
- MultipartRequest multipartRequest = new MultipartRequest(request, createTempFiles,
- tempFilesDirectory, maxRequestSize, uid);
+ MultipartRequest multipartRequest = new MultipartRequest(request, createTempFiles, tempFilesDirectory,
+ uid);
try {
multipartRequest.parseRequest();
if (!multipartRequest.isDone()) {
Modified: branches/RF-8742-1/ui/input/ui/src/main/java/org/richfaces/renderkit/AutocompleteRendererBase.java
===================================================================
--- branches/RF-8742-1/ui/input/ui/src/main/java/org/richfaces/renderkit/AutocompleteRendererBase.java 2010-12-09 15:06:40 UTC (rev 20482)
+++ branches/RF-8742-1/ui/input/ui/src/main/java/org/richfaces/renderkit/AutocompleteRendererBase.java 2010-12-09 17:26:24 UTC (rev 20483)
@@ -46,14 +46,12 @@
import org.ajax4jsf.context.AjaxContext;
import org.ajax4jsf.javascript.JSReference;
+import org.ajax4jsf.javascript.ScriptUtils;
import org.richfaces.component.AbstractAutocomplete;
import org.richfaces.component.AutocompleteLayout;
import org.richfaces.component.MetaComponentResolver;
import org.richfaces.component.util.InputUtils;
-import com.google.common.base.Predicates;
-import com.google.common.collect.Iterators;
-
/**
* @author Nick Belaevski
*/
@@ -196,6 +194,7 @@
if (mode != null && mode.equals("client")) {
List<Object> fetchValues = new ArrayList<Object>();
this.encodeItems(facesContext, component, fetchValues);
+ this.encodeFetchValues(facesContext, component, fetchValues);
} else {
strategy.encodeItemsContainerBegin(facesContext, component);
// TODO: is it needed
@@ -203,6 +202,18 @@
strategy.encodeItemsContainerEnd(facesContext, component);
}
}
+
+ private void encodeFetchValues(FacesContext facesContext, UIComponent component, List<Object> fetchValues) throws IOException{
+ if (!fetchValues.isEmpty()) {
+ ResponseWriter writer = facesContext.getResponseWriter();
+ writer.startElement(HtmlConstants.SCRIPT_ELEM, component);
+ writer.writeAttribute(HtmlConstants.TYPE_ATTR, "text/javascript", null);
+ StringBuilder sb = new StringBuilder("\njQuery(RichFaces.getDomElement('");
+ sb.append(component.getClientId(facesContext)).append("Items')).data({componentData:").append(ScriptUtils.toScript(fetchValues)).append("});\n");
+ writer.write(sb.toString());
+ writer.endElement(HtmlConstants.SCRIPT_ELEM);
+ }
+ }
public void encodeItem(FacesContext facesContext, AbstractAutocomplete comboBox, Object item,
AutocompleteEncodeStrategy strategy) throws IOException {
@@ -282,7 +293,7 @@
encodeItems(context, component, fetchValues);
partialWriter.endUpdate();
- if (!fetchValues.isEmpty() && Iterators.find(fetchValues.iterator(), Predicates.notNull()) != null) {
+ if (!fetchValues.isEmpty()) {
Map<String, Object> dataMap = AjaxContext.getCurrentInstance(context).getResponseComponentDataMap();
dataMap.put(component.getClientId(context), fetchValues);
}
Modified: branches/RF-8742-1/ui/input/ui/src/main/java/org/richfaces/renderkit/CalendarRendererBase.java
===================================================================
--- branches/RF-8742-1/ui/input/ui/src/main/java/org/richfaces/renderkit/CalendarRendererBase.java 2010-12-09 15:06:40 UTC (rev 20482)
+++ branches/RF-8742-1/ui/input/ui/src/main/java/org/richfaces/renderkit/CalendarRendererBase.java 2010-12-09 17:26:24 UTC (rev 20483)
@@ -407,7 +407,7 @@
int minutes = calendar.get(Calendar.MINUTE);
int seconds = calendar.get(Calendar.SECOND);
- if (hours != 12 || minutes != 0) {
+ if (hours != 12 || minutes != 0 || seconds != 0) {
result.put(HOURS_VALUE, hours);
result.put(MINUTES_VALUE, minutes);
result.put(SECONDS_VALUE, seconds);
Modified: branches/RF-8742-1/ui/input/ui/src/main/java/org/richfaces/request/FileParam.java
===================================================================
--- branches/RF-8742-1/ui/input/ui/src/main/java/org/richfaces/request/FileParam.java 2010-12-09 15:06:40 UTC (rev 20482)
+++ branches/RF-8742-1/ui/input/ui/src/main/java/org/richfaces/request/FileParam.java 2010-12-09 17:26:24 UTC (rev 20483)
@@ -29,7 +29,7 @@
import java.io.FileOutputStream;
import java.io.IOException;
import java.io.InputStream;
-import java.rmi.server.UID;
+import java.util.UUID;
import org.richfaces.exception.FileUploadException;
import org.richfaces.log.Logger;
@@ -86,7 +86,7 @@
if (tempFilesDirectory != null) {
dir = new File(tempFilesDirectory);
}
- tempFile = File.createTempFile(new UID().toString().replace(":", "-"), ".upload", dir);
+ tempFile = File.createTempFile(UUID.randomUUID().toString(), ".upload", dir);
fOut = new FileOutputStream(tempFile);
} catch (IOException ex) {
if (fOut != null) {
Modified: branches/RF-8742-1/ui/input/ui/src/main/java/org/richfaces/request/MultipartRequest.java
===================================================================
--- branches/RF-8742-1/ui/input/ui/src/main/java/org/richfaces/request/MultipartRequest.java 2010-12-09 15:06:40 UTC (rev 20482)
+++ branches/RF-8742-1/ui/input/ui/src/main/java/org/richfaces/request/MultipartRequest.java 2010-12-09 17:26:24 UTC (rev 20483)
@@ -118,21 +118,11 @@
private HeadersHandler headersHandler = null;
- public MultipartRequest(HttpServletRequest request, boolean createTempFiles, String tempFilesDirectory,
- int maxRequestSize, String uid) {
+ public MultipartRequest(HttpServletRequest request, boolean createTempFiles, String tempFilesDirectory, String uid) {
super(request);
this.createTempFiles = createTempFiles;
this.tempFilesDirectory = tempFilesDirectory;
this.uid = uid;
-
- String contentLengthStr = request.getHeader("Content-Length");
- this.contentLength = Integer.parseInt(contentLengthStr);
- if (contentLengthStr != null && maxRequestSize > 0 && contentLength > maxRequestSize) {
- // TODO : we should make decision if can generate exception in this
- // place
- // throw new FileUploadException(
- // "Multipart request is larger than allowed size");
- }
}
private class ControlledProgressInputStream extends FilterInputStream {
Modified: branches/RF-8742-1/ui/input/ui/src/main/java/org/richfaces/utils/CalendarHelper.java
===================================================================
--- branches/RF-8742-1/ui/input/ui/src/main/java/org/richfaces/utils/CalendarHelper.java 2010-12-09 15:06:40 UTC (rev 20482)
+++ branches/RF-8742-1/ui/input/ui/src/main/java/org/richfaces/utils/CalendarHelper.java 2010-12-09 17:26:24 UTC (rev 20483)
@@ -75,19 +75,8 @@
}
return value;
- }
+ }
- public static Object getDefaultValueOfDefaultTime(FacesContext facesContext, AbstractCalendar calendarComponent) {
- if (calendarComponent == null) {
- return null;
- }
-
- Calendar calendar = getCalendar(facesContext, calendarComponent);
- calendar.set(Calendar.HOUR_OF_DAY, 12);
- calendar.set(Calendar.MINUTE, 0);
- return calendar.getTime();
- }
-
public static Date getFormattedDefaultTime(AbstractCalendar calendar) {
if (calendar == null || calendar.getDefaultTime() == null) {
return null;
@@ -106,12 +95,11 @@
String defaultTimeString = defaultTime.toString();
String datePattern = calendar.getDatePattern();
- String timePattern = AbstractCalendar.TIME_PATTERN;
- Pattern pattern = Pattern.compile(timePattern);
+ Pattern pattern = Pattern.compile(AbstractCalendar.SUB_TIME_PATTERN);
Matcher matcher = pattern.matcher(datePattern);
-
- String subTimePattern = AbstractCalendar.SUB_TIME_PATTERN;
- if (matcher.find()) {
+ String subTimePattern = AbstractCalendar.TIME_PATTERN;
+
+ if(matcher.find()) {
subTimePattern = matcher.group().trim();
}
Modified: branches/RF-8742-1/ui/input/ui/src/main/resources/META-INF/resources/org.richfaces/Autocomplete.js
===================================================================
--- branches/RF-8742-1/ui/input/ui/src/main/resources/META-INF/resources/org.richfaces/Autocomplete.js 2010-12-09 15:06:40 UTC (rev 20482)
+++ branches/RF-8742-1/ui/input/ui/src/main/resources/META-INF/resources/org.richfaces/Autocomplete.js 2010-12-09 17:26:24 UTC (rev 20483)
@@ -137,8 +137,6 @@
};
var REGEXP_TRIM = /^[\n\s]*(.*)[\n\s]*$/;
- var REGEXP_TOKEN_LEFT;
- var REGEXP_TOKEN_RIGHT;
var getData = function (nodeList) {
var data = [];
@@ -152,8 +150,8 @@
this.useTokens = (typeof this.options.tokens == "string" && this.options.tokens.length>0);
if (this.useTokens) {
var escapedTokens = this.options.tokens.split('').join("\\");
- REGEXP_TOKEN_LEFT = new RegExp('[^'+escapedTokens+']+$','i');
- REGEXP_TOKEN_RIGHT = new RegExp('['+escapedTokens+']','i');
+ this.REGEXP_TOKEN_LEFT = new RegExp('[^'+escapedTokens+']+$','i');
+ this.REGEXP_TOKEN_RIGHT = new RegExp('['+escapedTokens+']','i');
this.hasSpaceToken = this.options.tokens.indexOf(' ')!=-1;
};
};
@@ -178,9 +176,12 @@
};
var updateItemsList = function (value, fetchValues) {
- this.items = $(rf.getDomElement(this.id+ID.ITEMS)).find("."+this.options.itemClass);
+ var itemsContainer = $(rf.getDomElement(this.id+ID.ITEMS));
+ this.items = itemsContainer.find("."+this.options.itemClass);
+ var data = itemsContainer.data();
+ itemsContainer.removeData();
if (this.items.length>0) {
- this.cache = new rf.utils.Cache((this.options.ajaxMode ? value : ""), this.items, fetchValues || getData, !this.options.ajaxMode);
+ this.cache = new rf.utils.Cache((this.options.ajaxMode ? value : ""), this.items, fetchValues || data.componentData || getData, !this.options.ajaxMode);
}
};
@@ -353,12 +354,12 @@
var cursorPosition = rf.Selection.getStart(field);
var beforeCursorStr = value.substring(0, cursorPosition);
var afterCursorStr = value.substring(cursorPosition);
- var r = REGEXP_TOKEN_LEFT.exec(beforeCursorStr);
+ var r = this.REGEXP_TOKEN_LEFT.exec(beforeCursorStr);
var result = "";
if (r) {
result = r[0];
}
- r = afterCursorStr.search(REGEXP_TOKEN_RIGHT);
+ r = afterCursorStr.search(this.REGEXP_TOKEN_RIGHT);
if (r==-1) r = afterCursorStr.length;
result += afterCursorStr.substring(0, r);
@@ -376,9 +377,9 @@
var beforeCursorStr = inputValue.substring(0, cursorPosition);
var afterCursorStr = inputValue.substring(cursorPosition);
- var pos = beforeCursorStr.search(REGEXP_TOKEN_LEFT);
+ var pos = beforeCursorStr.search(this.REGEXP_TOKEN_LEFT);
var startPos = pos!=-1 ? pos : beforeCursorStr.length;
- pos = afterCursorStr.search(REGEXP_TOKEN_RIGHT);
+ pos = afterCursorStr.search(this.REGEXP_TOKEN_RIGHT);
var endPos = pos!=-1 ? pos : afterCursorStr.length;
var beginNewValue = inputValue.substring(0, startPos) + value;
Modified: branches/RF-8742-1/ui/input/ui/src/main/resources/META-INF/resources/org.richfaces/AutocompleteBase.js
===================================================================
--- branches/RF-8742-1/ui/input/ui/src/main/resources/META-INF/resources/org.richfaces/AutocompleteBase.js 2010-12-09 15:06:40 UTC (rev 20482)
+++ branches/RF-8742-1/ui/input/ui/src/main/resources/META-INF/resources/org.richfaces/AutocompleteBase.js 2010-12-09 17:26:24 UTC (rev 20483)
@@ -198,7 +198,7 @@
this.parentElement = element.parentNode;
$(element).detach().appendTo("body");
}
- $(rf.getDomElement(this.selectId)).setPosition({id: this.fieldId}, {type:"DROPDOWN", offset:[0,20]}).show();
+ $(rf.getDomElement(this.selectId)).setPosition({id: this.fieldId}, {type:"DROPDOWN"}).show();
this.isVisible = true;
this.__onShow(event);
}
Modified: branches/RF-8742-1/ui/input/ui/src/main/resources/META-INF/resources/org.richfaces/calendar.js
===================================================================
--- branches/RF-8742-1/ui/input/ui/src/main/resources/META-INF/resources/org.richfaces/calendar.js 2010-12-09 15:06:40 UTC (rev 20482)
+++ branches/RF-8742-1/ui/input/ui/src/main/resources/META-INF/resources/org.richfaces/calendar.js 2010-12-09 17:26:24 UTC (rev 20483)
@@ -342,7 +342,7 @@
}
this.params.labels = value;
- this.popupOffset = {dx:this.params.horizontalOffset, dy:this.params.verticalOffset};
+ this.popupOffset = [this.params.horizontalOffset, this.params.verticalOffset];
//
if (!this.params.popup) this.params.showApplyButton = false;
Modified: branches/RF-8742-1/ui/input/ui/src/main/resources/META-INF/resources/org.richfaces/inplaceSelect.js
===================================================================
--- branches/RF-8742-1/ui/input/ui/src/main/resources/META-INF/resources/org.richfaces/inplaceSelect.js 2010-12-09 15:06:40 UTC (rev 20482)
+++ branches/RF-8742-1/ui/input/ui/src/main/resources/META-INF/resources/org.richfaces/inplaceSelect.js 2010-12-09 17:26:24 UTC (rev 20483)
@@ -12,7 +12,8 @@
this.items = mergedOptions.items;
this.selValueInput = $(document.getElementById(id+"selValue"));
this.list = $(document.getElementById(id+"List"));
- this.list.bind("click", $.proxy(this.__onListClick, this));
+ this.list.bind("mousedown", $.proxy(this.__onListMouseDown, this));
+ this.list.bind("mouseup", $.proxy(this.__onListMouseUp, this));
this.openOnEdit = mergedOptions.openOnEdit;
this.saveOnSelect = mergedOptions.saveOnSelect;
this.savedIndex = -1;
@@ -98,7 +99,7 @@
if(this.saveOnSelect) {
this.save();
- }
+ }
},
getItemValue: function(item) {
@@ -169,20 +170,30 @@
},
__blurHandler: function(e) {
- if(this.isEditState()) {
- this.timeoutId = window.setTimeout($.proxy(function(){
- this.onblur();
- }, this), 200);
- }
+ if(!this.isMouseDown) {
+ if(this.isEditState()) {
+ this.timeoutId = window.setTimeout($.proxy(function(){
+ this.onblur();
+ }, this), 200);
+ }
+ } else {
+ this.__setInputFocus();
+ this.isMouseDown = false;
+ }
},
__clickHandler: function(e) {
this.showPopup();
},
- __onListClick: function(e) {
- window.clearTimeout(this.timeoutId);
- }
+ __onListMouseDown: function(e) {
+ this.isMouseDown = true;
+ },
+
+ __onListMouseUp: function(e) {
+ this.isMouseDown = false;
+ this.__setInputFocus();
+ }
}
})());
Modified: branches/RF-8742-1/ui/input/ui/src/main/resources/META-INF/resources/org.richfaces/select.js
===================================================================
--- branches/RF-8742-1/ui/input/ui/src/main/resources/META-INF/resources/org.richfaces/select.js 2010-12-09 15:06:40 UTC (rev 20482)
+++ branches/RF-8742-1/ui/input/ui/src/main/resources/META-INF/resources/org.richfaces/select.js 2010-12-09 17:26:24 UTC (rev 20483)
@@ -115,16 +115,17 @@
if(mergedOptions.showControl) {
this.btn = $(document.getElementById(id+"Button"));
- this.btn.bind("click", $.proxy(this.__clickHandler, this));
- this.btn.mousedown($.proxy(this, function(){
- this.focusin = false;
- }));
+ this.btn.bind("mousedown", $.proxy(this.__onBtnMouseDown, this));
+ this.btn.bind("mouseup", $.proxy(this.__onMouseUp, this));
}
this.selectFirst = mergedOptions.selectFirst;
this.popupList = new rf.ui.PopupList((id+"List"), this, mergedOptions);
this.listElem = $(document.getElementById(id+"List"));
- this.listElem.bind("click", $.proxy(this.__onListClick, this));
+
+ this.listElem.bind("mousedown", $.proxy(this.__onListMouseDown, this));
+ this.listElem.bind("mouseup", $.proxy(this.__onMouseUp, this));
+
this.items = this.popupList.__getItems();
this.enableManualInput = mergedOptions.enableManualInput;
@@ -162,16 +163,15 @@
return{
name : "select",
- __clickHandler: function(e) {
+ __onBtnMouseDown: function(e) {
if(!this.popupList.isVisible()) {
this.__updateItems();
this.showPopup();
} else {
this.hidePopup();
}
- this.__setInputFocus();
- window.clearTimeout(this.timeoutId);
- },
+ this.isMouseDown = true;
+ },
__focusHandler: function(e) {
if (!this.focused) {
@@ -259,15 +259,25 @@
},
__blurHandler: function(e) {
- this.timeoutId = window.setTimeout($.proxy(function(){
- this.onblur(e);
- }, this), 200);
+ if(!this.isMouseDown) {
+ this.timeoutId = window.setTimeout($.proxy(function(){
+ this.onblur(e);
+ }, this), 200);
+ } else {
+ this.__setInputFocus();
+ this.isMouseDown = false;
+ }
},
- __onListClick: function(e) {
- window.clearTimeout(this.timeoutId);
+ __onListMouseDown: function(e) {
+ this.isMouseDown = true;
},
+ __onMouseUp: function(e) {
+ this.isMouseDown = false;
+ this.__setInputFocus();
+ },
+
__updateItems: function() {
var newValue = this.getValue();
newValue = (newValue != this.defaultLabel) ? newValue : "";
@@ -287,6 +297,55 @@
}
},
+ __getClientItemFromCache: function(inputLabel) {
+ var value;
+ var label;
+ if(this.enableManualInput) {
+ var items = this.cache.getItems(inputLabel);
+ if(items && items.length > 0) {
+ var first = $(items[0]);
+ $.each(this.clientItems, function() {
+ if(this.id == first.attr("id")) {
+ label = this.label;
+ value = this.value;
+ return false;
+ }
+ });
+ } else {
+ this.field.removeClass("rf-sel-fld-err");
+
+ var prevValue = this.selValueInput.val();
+ if(prevValue && prevValue != "") {
+ $.each(this.clientItems, function() {
+ if(this.value == prevValue) {
+ label = this.label;
+ value = this.value
+ return false;
+ }
+ });
+ }
+ }
+ }
+
+ if(label && value) {
+ return {'label': label, 'value': value};
+ }
+ },
+
+ __getClientItem: function(inputLabel) {
+ var value;
+ var label = inputLabel;
+ $.each(this.clientItems, function(){
+ if(label == this.label) {
+ value = this.value;
+ }
+ });
+
+ if(label && value) {
+ return {'label': label, 'value': value};
+ }
+ },
+
showPopup: function() {
this.popupList.show();
},
@@ -307,38 +366,27 @@
this.setValue(label);
this.hidePopup();
this.__setInputFocus();
+
+ this.invokeEvent.call(this,"selectitem", document.getElementById(this.id + 'Input'), e);
},
onblur: function(e) {
this.hidePopup();
var value = "";
var label = this.defaultLabel;
+ var clientItem;
var inputLabel = this.getValue();
if(inputLabel && inputLabel != "") {
- var items = this.cache.getItems(inputLabel);
- if(items.length > 0) {
- var first = $(items[0]);
- $.each(this.clientItems, function() {
- if(this.id == first.attr("id")) {
- label = this.label;
- value = this.value;
- return false;
- }
- });
+ if(this.enableManualInput) {
+ clientItem = this.__getClientItemFromCache(inputLabel);
} else {
- this.field.removeClass("rf-sel-fld-err");
-
- var prevValue = this.selValueInput.val();
- if(prevValue && prevValue != "") {
- $.each(this.clientItems, function() {
- if(this.value == prevValue) {
- label = this.label;
- value = this.value
- return false;
- }
- });
- }
+ clientItem = this.__getClientItem(inputLabel);
}
+
+ if(clientItem) {
+ label = clientItem.label;
+ value = clientItem.value;
+ }
}
this.setValue(label);
Modified: branches/RF-8742-1/ui/input/ui/src/main/templates/inputnumberslider.template.xml
===================================================================
--- branches/RF-8742-1/ui/input/ui/src/main/templates/inputnumberslider.template.xml 2010-12-09 15:06:40 UTC (rev 20482)
+++ branches/RF-8742-1/ui/input/ui/src/main/templates/inputnumberslider.template.xml 2010-12-09 17:26:24 UTC (rev 20483)
@@ -65,8 +65,8 @@
</c:if>
<xi:include xpointer="xpointer(/*)" href="input.template.inc" />
</c:if>
- <c:if test="#{component.attributes['showToolTip']}">
- <span class="rf-insl-tt #{component.attributes['toolTipClass']}">#{getInputValue(facesContext, component)}</span>
+ <c:if test="#{component.attributes['showTooltip']}">
+ <span class="rf-insl-tt #{component.attributes['tooltipClass']}">#{getInputValue(facesContext, component)}</span>
</c:if>
<!-- TODO Rewrite the next line when the CDK will support normal way to take event handlers from attributes and behaviors. -->
<cdk:object name="onchange" type="String" value="#{convertToString(RenderKitUtils.getAttributeAndBehaviorsValue(facesContext, component, RenderKitUtils.attributes().generic('onchange', 'onchange', 'change').first()))}" />
Modified: branches/RF-8742-1/ui/input/ui/src/main/templates/select.template.xml
===================================================================
--- branches/RF-8742-1/ui/input/ui/src/main/templates/select.template.xml 2010-12-09 15:06:40 UTC (rev 20482)
+++ branches/RF-8742-1/ui/input/ui/src/main/templates/select.template.xml 2010-12-09 17:26:24 UTC (rev 20483)
@@ -23,7 +23,7 @@
<div style="position : relative; overflow : hidden; text-align : left; padding-right : 18px;">
<input id="#{clientId}selValue" name="#{clientId}" type="hidden" value="#{getInputValue(facesContext, component)}"/>
<div id="#{clientId}Field" class="rf-sel-fld">
- <input cdk:passThroughWithExclusions="class autocomplete id value disabled name type readonly"
+ <input cdk:passThroughWithExclusions="class autocomplete id value disabled name type readonly onchange onblur"
id="#{clientId}Input"
value="#{getSelectLabel(facesContext, component)}"
disabled="#{disabled}"
@@ -70,7 +70,7 @@
<cdk:scriptOption name="itemCss" value="#{concatClasses('rf-sel-opt', component.attributes['itemClass'])}" />
<cdk:scriptOption name="selectItemCss" value="#{concatClasses('rf-sel-sel', component.attributes['selectItemClass'])}" />
<cdk:scriptOption name="listCss" value="#{concatClasses('rf-sel-lst-cord', component.attributes['listClass'])}" />
- <cdk:scriptOption attributes="onchange onselect" wrapper="eventHandler"/>
+ <cdk:scriptOption attributes="onbegin oncomplete onerror onbeforedomupdate onchange onblur onselectitem" wrapper="eventHandler"/>
<cdk:scriptOption attributes="showControl defaultLabel enableManualInput selectFirst" />
</cdk:scriptObject>
new RichFaces.ui.Select("#{clientId}", #{toScriptArgs(options)});
Modified: branches/RF-8742-1/ui/iteration/ui/pom-list.xml
===================================================================
--- branches/RF-8742-1/ui/iteration/ui/pom-list.xml 2010-12-09 15:06:40 UTC (rev 20482)
+++ branches/RF-8742-1/ui/iteration/ui/pom-list.xml 2010-12-09 17:26:24 UTC (rev 20483)
@@ -46,11 +46,6 @@
<artifactId>richfaces-core-api</artifactId>
</dependency>
<dependency>
- <!-- todo remove this dependency or move to test scope -->
- <groupId>org.richfaces.core</groupId>
- <artifactId>richfaces-core-impl</artifactId>
- </dependency>
- <dependency>
<groupId>org.richfaces.cdk</groupId>
<artifactId>annotations</artifactId>
<scope>provided</scope>
Modified: branches/RF-8742-1/ui/iteration/ui/src/main/java/org/richfaces/component/DataTableDataIterator.java
===================================================================
--- branches/RF-8742-1/ui/iteration/ui/src/main/java/org/richfaces/component/DataTableDataIterator.java 2010-12-09 15:06:40 UTC (rev 20482)
+++ branches/RF-8742-1/ui/iteration/ui/src/main/java/org/richfaces/component/DataTableDataIterator.java 2010-12-09 17:26:24 UTC (rev 20483)
@@ -24,6 +24,7 @@
import java.util.Iterator;
+import javax.faces.component.UIColumn;
import javax.faces.component.UIComponent;
@@ -43,7 +44,7 @@
UIComponent nextColumn = null;
while (nextColumn == null && childrenIterator.hasNext()) {
UIComponent child = childrenIterator.next();
- if ((child instanceof AbstractColumn) || (child instanceof Column)) {
+ if ((child instanceof UIColumn) || (child instanceof Column)) {
nextColumn = child;
}
}
Modified: branches/RF-8742-1/ui/iteration/ui/src/main/java/org/richfaces/component/DataTableFixedChildrenIterator.java
===================================================================
--- branches/RF-8742-1/ui/iteration/ui/src/main/java/org/richfaces/component/DataTableFixedChildrenIterator.java 2010-12-09 15:06:40 UTC (rev 20482)
+++ branches/RF-8742-1/ui/iteration/ui/src/main/java/org/richfaces/component/DataTableFixedChildrenIterator.java 2010-12-09 17:26:24 UTC (rev 20483)
@@ -24,6 +24,7 @@
import java.util.Iterator;
+import javax.faces.component.UIColumn;
import javax.faces.component.UIComponent;
@@ -47,7 +48,7 @@
Iterator<UIComponent> childrenIterator = getChildrenIterator();
while (next == null && childrenIterator.hasNext()) {
UIComponent child = childrenIterator.next();
- if ((child instanceof AbstractColumn) && child.isRendered()) {
+ if ((child instanceof UIColumn) && child.isRendered()) {
currentColumnIterator = getChildFacetIterator(child);
next = nextItem();
}
Modified: branches/RF-8742-1/ui/iteration/ui/src/main/java/org/richfaces/renderkit/DataScrollerBaseRenderer.java
===================================================================
--- branches/RF-8742-1/ui/iteration/ui/src/main/java/org/richfaces/renderkit/DataScrollerBaseRenderer.java 2010-12-09 15:06:40 UTC (rev 20482)
+++ branches/RF-8742-1/ui/iteration/ui/src/main/java/org/richfaces/renderkit/DataScrollerBaseRenderer.java 2010-12-09 17:26:24 UTC (rev 20483)
@@ -312,18 +312,12 @@
JSFunctionDefinition definition = new JSFunctionDefinition(JSReference.EVENT, new JSReference("element"),
new JSReference("data"));
- JSFunction function = AjaxRendererUtils.buildAjaxFunction(facesContext, component,
- AjaxRendererUtils.AJAX_FUNCTION_NAME);
- AjaxEventOptions options = AjaxRendererUtils.buildEventOptions(facesContext, component);
+ AjaxFunction function = AjaxRendererUtils.buildAjaxFunction(facesContext, component);
- Map<String, Object> parameters = options.getParameters();
+ Map<String, Object> parameters = function.getOptions().getParameters();
parameters.put(component.getClientId(facesContext) + ":page", new JSLiteral("data.page"));
- function.addParameter(options);
-
- StringBuilder sb = new StringBuilder();
- function.appendScriptToStringBuilder(sb);
- definition.addToBody(sb);
+ definition.addToBody(function.toScript());
return definition;
}
Modified: branches/RF-8742-1/ui/iteration/ui/src/main/java/org/richfaces/renderkit/DataTableRenderer.java
===================================================================
--- branches/RF-8742-1/ui/iteration/ui/src/main/java/org/richfaces/renderkit/DataTableRenderer.java 2010-12-09 15:06:40 UTC (rev 20482)
+++ branches/RF-8742-1/ui/iteration/ui/src/main/java/org/richfaces/renderkit/DataTableRenderer.java 2010-12-09 17:26:24 UTC (rev 20483)
@@ -295,10 +295,10 @@
JSFunction function = new JSFunction("new RichFaces.ui.DataTable");
function.addParameter(dataTable.getClientId(facesContext));
- AjaxEventOptions ajaxEventOptions = AjaxRendererUtils.buildEventOptions(facesContext, dataTable);
+ AjaxOptions ajaxOptions = AjaxRendererUtils.buildEventOptions(facesContext, dataTable);
Map<String, Object> options = new HashMap<String, Object>();
- options.put("ajaxEventOptions", ajaxEventOptions.getParameters());
+ options.put("ajaxEventOptions", ajaxOptions.getParameters());
function.addParameter(options);
writer.writeText(function.toScript(), null);
Modified: branches/RF-8742-1/ui/iteration/ui/src/main/java/org/richfaces/renderkit/ExtendedDataTableRenderer.java
===================================================================
--- branches/RF-8742-1/ui/iteration/ui/src/main/java/org/richfaces/renderkit/ExtendedDataTableRenderer.java 2010-12-09 15:06:40 UTC (rev 20482)
+++ branches/RF-8742-1/ui/iteration/ui/src/main/java/org/richfaces/renderkit/ExtendedDataTableRenderer.java 2010-12-09 17:26:24 UTC (rev 20483)
@@ -23,9 +23,7 @@
import static org.richfaces.renderkit.RenderKitUtils.addToScriptHash;
import static org.richfaces.renderkit.RenderKitUtils.renderAttribute;
-import static org.richfaces.renderkit.util.AjaxRendererUtils.AJAX_FUNCTION_NAME;
import static org.richfaces.renderkit.util.AjaxRendererUtils.buildAjaxFunction;
-import static org.richfaces.renderkit.util.AjaxRendererUtils.buildEventOptions;
import java.io.IOException;
import java.util.ArrayList;
@@ -76,6 +74,8 @@
})
public class ExtendedDataTableRenderer extends SelectionRenderer implements MetaComponentRenderer {
+ private static final JSReference CLIENT_PARAMS = new JSReference("clientParams");
+
private static enum PartName {
frozen, normal;
@@ -664,14 +664,11 @@
writer.writeAttribute(HtmlConstants.TYPE_ATTR, HtmlConstants.INPUT_TYPE_HIDDEN, null);
writer.endElement(HtmlConstants.INPUT_ELEM);
encodeSelectionInput(writer, context, component);
- JSFunction ajaxFunction = buildAjaxFunction(context, component, AJAX_FUNCTION_NAME);
- AjaxEventOptions eventOptions = buildEventOptions(context, component);
- Map<String, Object> parameters = eventOptions.getParameters();
- eventOptions.set(AjaxEventOptions.PARAMETERS, new JSReference("parameters"));
- ajaxFunction.addParameter(eventOptions);
+ AjaxFunction ajaxFunction = buildAjaxFunction(context, component);
+ ajaxFunction.getOptions().setClientParameters(CLIENT_PARAMS);
+
Map<String, Object> attributes = component.getAttributes();
Map<String, Object> options = new HashMap<String, Object>();
- addToScriptHash(options, "parameters", parameters);
addToScriptHash(options, "selectionMode", attributes.get("selectionMode"),
SelectionMode.multiple);
addToScriptHash(options, "onbeforeselectionchange", RenderKitUtils.getAttributeAndBehaviorsValue(context,
@@ -680,7 +677,7 @@
component, EVENT_ATTRIBUTES.get("onselectionchange")), null, ScriptHashVariableWrapper.eventHandler);
StringBuilder builder = new StringBuilder("new RichFaces.ExtendedDataTable('");
builder.append(component.getClientId(context)).append("', ").append(getRowCount(component))
- .append(", function(event, parameters) {").append(ajaxFunction.toScript()).append(";}");
+ .append(", function(event, clientParams) {").append(ajaxFunction.toScript()).append(";}");
if (!options.isEmpty()) {
builder.append(",").append(ScriptUtils.toScript(options));
}
Modified: branches/RF-8742-1/ui/iteration/ui/src/main/java/org/richfaces/renderkit/TreeRendererBase.java
===================================================================
--- branches/RF-8742-1/ui/iteration/ui/src/main/java/org/richfaces/renderkit/TreeRendererBase.java 2010-12-09 15:06:40 UTC (rev 20482)
+++ branches/RF-8742-1/ui/iteration/ui/src/main/java/org/richfaces/renderkit/TreeRendererBase.java 2010-12-09 17:26:24 UTC (rev 20483)
@@ -22,8 +22,6 @@
package org.richfaces.renderkit;
import static org.richfaces.component.AbstractTree.SELECTION_META_COMPONENT_ID;
-import static org.richfaces.renderkit.util.AjaxRendererUtils.AJAX_FUNCTION_NAME;
-import static org.richfaces.renderkit.util.AjaxRendererUtils.buildEventOptions;
import java.io.IOException;
import java.util.Collection;
@@ -48,6 +46,7 @@
import org.richfaces.event.TreeSelectionChangeEvent;
import org.richfaces.log.Logger;
import org.richfaces.log.RichfacesLogger;
+import org.richfaces.renderkit.util.AjaxRendererUtils;
import com.google.common.base.Strings;
import com.google.common.collect.Sets;
@@ -100,20 +99,14 @@
return null;
}
- JSFunction ajaxFunction = new JSFunction(AJAX_FUNCTION_NAME);
+ AjaxFunction ajaxFunction = AjaxRendererUtils.buildAjaxFunction(context, component);
+ ajaxFunction.setSource(SOURCE_JS_REF);
- ajaxFunction.addParameter(SOURCE_JS_REF);
- ajaxFunction.addParameter(JSReference.EVENT);
+ AjaxOptions options = ajaxFunction.getOptions();
- AjaxEventOptions eventOptions = buildEventOptions(context, component);
+ options.set("complete", COMPLETE_JS_REF);
+ options.setClientParameters(PARAMS_JS_REF);
- eventOptions.set("complete", COMPLETE_JS_REF);
-
- eventOptions.setClientParameters(PARAMS_JS_REF);
-
- if (!eventOptions.isEmpty()) {
- ajaxFunction.addParameter(eventOptions);
- }
return ajaxFunction.toScript();
}
Modified: branches/RF-8742-1/ui/iteration/ui/src/main/resources/META-INF/resources/org.richfaces/extendedDataTable.js
===================================================================
--- branches/RF-8742-1/ui/iteration/ui/src/main/resources/META-INF/resources/org.richfaces/extendedDataTable.js 2010-12-09 15:06:40 UTC (rev 20482)
+++ branches/RF-8742-1/ui/iteration/ui/src/main/resources/META-INF/resources/org.richfaces/extendedDataTable.js 2010-12-09 17:26:24 UTC (rev 20483)
@@ -160,11 +160,6 @@
var timeoutId = null;
var sendAjax = function(event, map) {
- for (key in options.parameters) {
- if(!map[key]) {
- map[key] = options.parameters[key];
- }
- }
ajaxFunction(event, map);
};
Modified: branches/RF-8742-1/ui/output/ui/pom.xml
===================================================================
--- branches/RF-8742-1/ui/output/ui/pom.xml 2010-12-09 15:06:40 UTC (rev 20482)
+++ branches/RF-8742-1/ui/output/ui/pom.xml 2010-12-09 17:26:24 UTC (rev 20483)
@@ -56,10 +56,6 @@
<artifactId>richfaces-core-api</artifactId>
</dependency>
<dependency>
- <groupId>org.richfaces.core</groupId>
- <artifactId>richfaces-core-impl</artifactId>
- </dependency>
- <dependency>
<groupId>org.richfaces.ui.common</groupId>
<artifactId>richfaces-ui-common-ui</artifactId>
</dependency>
Modified: branches/RF-8742-1/ui/output/ui/src/main/java/org/richfaces/component/AbstractDropDownMenu.java
===================================================================
--- branches/RF-8742-1/ui/output/ui/src/main/java/org/richfaces/component/AbstractDropDownMenu.java 2010-12-09 15:06:40 UTC (rev 20482)
+++ branches/RF-8742-1/ui/output/ui/src/main/java/org/richfaces/component/AbstractDropDownMenu.java 2010-12-09 17:26:24 UTC (rev 20483)
@@ -29,10 +29,10 @@
@Attribute
public abstract boolean isDisabled();
- @Attribute(defaultValue = "800")
+ @Attribute(defaultValue = "300")
public abstract int getHideDelay();
- @Attribute(defaultValue = "800")
+ @Attribute(defaultValue = "50")
public abstract int getShowDelay();
@Attribute(defaultValue = "250")
Modified: branches/RF-8742-1/ui/output/ui/src/main/java/org/richfaces/component/AbstractPanelMenu.java
===================================================================
--- branches/RF-8742-1/ui/output/ui/src/main/java/org/richfaces/component/AbstractPanelMenu.java 2010-12-09 15:06:40 UTC (rev 20482)
+++ branches/RF-8742-1/ui/output/ui/src/main/java/org/richfaces/component/AbstractPanelMenu.java 2010-12-09 17:26:24 UTC (rev 20483)
@@ -30,6 +30,7 @@
import javax.el.ValueExpression;
import javax.faces.component.UIComponent;
+import javax.faces.component.UIOutput;
import javax.faces.context.FacesContext;
import javax.faces.event.AbortProcessingException;
import javax.faces.event.FacesEvent;
@@ -39,7 +40,7 @@
* @author akolonitsky
* @since 2010-10-25
*/
-public abstract class AbstractPanelMenu extends AbstractActionComponent implements ItemChangeSource {
+public abstract class AbstractPanelMenu extends UIOutput implements ItemChangeSource {
public static final String COMPONENT_TYPE = "org.richfaces.PanelMenu";
@@ -77,7 +78,7 @@
String previous = (String) getValue();
setActiveItem(activeItem);
setSubmittedActiveItem(null);
- if (previous != null && !previous.equalsIgnoreCase(activeItem)) {
+ if (previous == null || !previous.equalsIgnoreCase(activeItem)) {
queueEvent(new ItemChangeEvent(this, previous, activeItem));
}
}
@@ -191,7 +192,7 @@
public abstract boolean isBypassUpdates();
- public abstract boolean isLimitToList();
+ public abstract boolean isDisableImplicitRender();
public abstract Object getData();
Modified: branches/RF-8742-1/ui/output/ui/src/main/java/org/richfaces/component/AbstractPanelMenuItem.java
===================================================================
--- branches/RF-8742-1/ui/output/ui/src/main/java/org/richfaces/component/AbstractPanelMenuItem.java 2010-12-09 15:06:40 UTC (rev 20482)
+++ branches/RF-8742-1/ui/output/ui/src/main/java/org/richfaces/component/AbstractPanelMenuItem.java 2010-12-09 17:26:24 UTC (rev 20483)
@@ -114,7 +114,7 @@
public abstract boolean isBypassUpdates();
- public abstract boolean isLimitToList();
+ public abstract boolean isDisableImplicitRender();
public abstract Object getData();
Modified: branches/RF-8742-1/ui/output/ui/src/main/java/org/richfaces/component/AbstractPopupPanel.java
===================================================================
--- branches/RF-8742-1/ui/output/ui/src/main/java/org/richfaces/component/AbstractPopupPanel.java 2010-12-09 15:06:40 UTC (rev 20482)
+++ branches/RF-8742-1/ui/output/ui/src/main/java/org/richfaces/component/AbstractPopupPanel.java 2010-12-09 17:26:24 UTC (rev 20483)
@@ -45,7 +45,7 @@
public abstract String getVisualOptions();
@Attribute(defaultValue = "100")
- public abstract int getZIndex();
+ public abstract int getZindex();
@Attribute(defaultValue = "-1")
public abstract int getHeight();
Modified: branches/RF-8742-1/ui/output/ui/src/main/java/org/richfaces/component/AbstractTogglePanel.java
===================================================================
--- branches/RF-8742-1/ui/output/ui/src/main/java/org/richfaces/component/AbstractTogglePanel.java 2010-12-09 15:06:40 UTC (rev 20482)
+++ branches/RF-8742-1/ui/output/ui/src/main/java/org/richfaces/component/AbstractTogglePanel.java 2010-12-09 17:26:24 UTC (rev 20483)
@@ -111,7 +111,6 @@
return (Boolean) getStateHelper().eval(PropertyKeys.valid, true);
}
-
public void setValid(boolean valid) {
getStateHelper().put(PropertyKeys.valid, valid);
}
@@ -129,12 +128,10 @@
getStateHelper().put(PropertyKeys.required, required);
}
-
public boolean isImmediate() {
return (Boolean) getStateHelper().eval(PropertyKeys.immediate, false);
}
-
public void setImmediate(boolean immediate) {
getStateHelper().put(PropertyKeys.immediate, immediate);
}
@@ -170,7 +167,7 @@
String activeItem = getActiveItemValue();
while (kids.hasNext()) {
UIComponent kid = kids.next();
- if (isActiveItem(kid, activeItem)) {
+ if (isActiveItem(kid, activeItem) || this.getSwitchType() == SwitchType.client) {
kid.processDecodes(context);
}
}
@@ -184,8 +181,6 @@
} finally {
popComponentFromEL(context);
}
-
- executeValidate(context);
}
/**
@@ -222,7 +217,7 @@
String activeItem = getActiveItemValue();
while (kids.hasNext()) {
UIComponent kid = kids.next();
- if (isActiveItem(kid, activeItem)) {
+ if (isActiveItem(kid, activeItem) || this.getSwitchType() == SwitchType.client) {
kid.processValidators(context);
}
}
@@ -262,13 +257,13 @@
String activeItem = getActiveItemValue();
while (kids.hasNext()) {
UIComponent kid = kids.next();
- if (isActiveItem(kid, activeItem)) {
+ if (isActiveItem(kid, activeItem) || this.getSwitchType() == SwitchType.client) {
kid.processUpdates(context);
}
}
-
+
popComponentFromEL(context);
-
+
try {
updateModel(context);
} catch (RuntimeException e) {
@@ -276,6 +271,7 @@
throw e;
}
+ executeValidate(context);
if (!isValid()) {
context.renderResponse();
}
@@ -310,7 +306,7 @@
if (ve == null) {
return;
}
-
+
Throwable caught = null;
FacesMessage message = null;
try {
@@ -327,7 +323,7 @@
}
if (messageStr == null) {
- message = ServiceTracker.getService(MessageFactory.class).createMessage(context,
+ message = ServiceTracker.getService(MessageFactory.class).createMessage(context,
FacesMessage.SEVERITY_ERROR,
FacesMessages.UIINPUT_UPDATE, MessageUtil.getLabel(context, this));
} else {
@@ -347,7 +343,7 @@
@SuppressWarnings({"ThrowableInstanceNeverThrown"})
UpdateModelException toQueue = new UpdateModelException(message, caught);
ExceptionQueuedEventContext eventContext = new ExceptionQueuedEventContext(context,
- toQueue, this, PhaseId.UPDATE_MODEL_VALUES);
+ toQueue, this, PhaseId.UPDATE_MODEL_VALUES);
context.getApplication().publishEvent(context, ExceptionQueuedEvent.class, eventContext);
}
}
@@ -404,7 +400,6 @@
}
}
-
@Override
public void broadcast(FacesEvent event) throws AbortProcessingException {
super.broadcast(event);
@@ -416,6 +411,7 @@
}
// -------------------------------------------------- Panel Items Managing
+
@Override
public String getFamily() {
return COMPONENT_FAMILY;
@@ -442,7 +438,7 @@
if (kid == null || value == null) {
return false;
}
-
+
return getChildName(kid).equals(value);
}
@@ -457,7 +453,7 @@
return ((AbstractTogglePanelItem) item).getName();
}
-
+
public AbstractTogglePanelItem getItemByIndex(final int index) {
List<AbstractTogglePanelItem> children = getRenderedItems();
if (isCycledSwitching()) {
@@ -523,14 +519,14 @@
if (name == null) {
throw new IllegalArgumentException("Name is required parameter.");
}
-
+
List<AbstractTogglePanelItem> items = getRenderedItems();
for (int ind = 0; ind < items.size(); ind++) {
if (name.equals(items.get(ind).getName())) {
return ind;
}
}
-
+
return Integer.MIN_VALUE;
}
@@ -568,7 +564,7 @@
public abstract boolean isBypassUpdates();
- public abstract boolean isLimitToList();
+ public abstract boolean isDisableImplicitRender();
public abstract boolean isCycledSwitching();
@@ -583,7 +579,6 @@
public abstract MethodExpression getItemChangeListener();
-
// ------------------------------------------------ Event Processing Methods
public void addItemChangeListener(ItemChangeListener listener) {
Modified: branches/RF-8742-1/ui/output/ui/src/main/java/org/richfaces/component/AbstractTooltip.java
===================================================================
--- branches/RF-8742-1/ui/output/ui/src/main/java/org/richfaces/component/AbstractTooltip.java 2010-12-09 15:06:40 UTC (rev 20482)
+++ branches/RF-8742-1/ui/output/ui/src/main/java/org/richfaces/component/AbstractTooltip.java 2010-12-09 17:26:24 UTC (rev 20483)
@@ -88,7 +88,7 @@
public abstract boolean isBypassUpdates();
- public abstract boolean isLimitToList();
+ public abstract boolean isDisableImplicitRender();
public abstract Object getData();
Modified: branches/RF-8742-1/ui/output/ui/src/main/java/org/richfaces/component/UIPanelMenu.java
===================================================================
--- branches/RF-8742-1/ui/output/ui/src/main/java/org/richfaces/component/UIPanelMenu.java 2010-12-09 15:06:40 UTC (rev 20482)
+++ branches/RF-8742-1/ui/output/ui/src/main/java/org/richfaces/component/UIPanelMenu.java 2010-12-09 17:26:24 UTC (rev 20483)
@@ -42,7 +42,7 @@
activeItem,
itemChangeListener,
bypassUpdates,
- limitToList,
+ disableImplicitRender,
data,
status,
execute,
@@ -121,12 +121,12 @@
getStateHelper().put(PropertyKeys.bypassUpdates, bypassUpdates);
}
- public boolean isLimitToList() {
- return Boolean.valueOf(String.valueOf(getStateHelper().eval(PropertyKeys.limitToList)));
+ public boolean isDisableImplicitRender() {
+ return Boolean.valueOf(String.valueOf(getStateHelper().eval(PropertyKeys.disableImplicitRender)));
}
- public void setLimitToList(boolean limitToList) {
- getStateHelper().put(PropertyKeys.limitToList, limitToList);
+ public void setDisableImplicitRender(boolean disableImplicitRender) {
+ getStateHelper().put(PropertyKeys.disableImplicitRender, disableImplicitRender);
}
public Object getData() {
Modified: branches/RF-8742-1/ui/output/ui/src/main/java/org/richfaces/component/UIPanelMenuItem.java
===================================================================
--- branches/RF-8742-1/ui/output/ui/src/main/java/org/richfaces/component/UIPanelMenuItem.java 2010-12-09 15:06:40 UTC (rev 20482)
+++ branches/RF-8742-1/ui/output/ui/src/main/java/org/richfaces/component/UIPanelMenuItem.java 2010-12-09 17:26:24 UTC (rev 20483)
@@ -37,7 +37,7 @@
name,
disabled,
bypassUpdates,
- limitToList,
+ disableImplicitRender,
data,
status,
execute,
@@ -84,12 +84,12 @@
getStateHelper().put(PropertyKeys.bypassUpdates, bypassUpdates);
}
- public boolean isLimitToList() {
- return Boolean.valueOf(String.valueOf(getStateHelper().eval(PropertyKeys.limitToList)));
+ public boolean isDisableImplicitRender() {
+ return Boolean.valueOf(String.valueOf(getStateHelper().eval(PropertyKeys.disableImplicitRender)));
}
- public void setLimitToList(boolean limitToList) {
- getStateHelper().put(PropertyKeys.limitToList, limitToList);
+ public void setDisableImplicitRender(boolean disableImplicitRender) {
+ getStateHelper().put(PropertyKeys.disableImplicitRender, disableImplicitRender);
}
public Object getData() {
Modified: branches/RF-8742-1/ui/output/ui/src/main/java/org/richfaces/component/UITogglePanel.java
===================================================================
--- branches/RF-8742-1/ui/output/ui/src/main/java/org/richfaces/component/UITogglePanel.java 2010-12-09 15:06:40 UTC (rev 20482)
+++ branches/RF-8742-1/ui/output/ui/src/main/java/org/richfaces/component/UITogglePanel.java 2010-12-09 17:26:24 UTC (rev 20483)
@@ -33,7 +33,7 @@
public enum PropertyKeys {
switchType,
bypassUpdates,
- limitToList,
+ disableImplicitRender,
cycledSwitching,
data,
status,
@@ -59,12 +59,12 @@
getStateHelper().put(PropertyKeys.bypassUpdates, bypassUpdates);
}
- public boolean isLimitToList() {
- return Boolean.valueOf(String.valueOf(getStateHelper().eval(PropertyKeys.limitToList)));
+ public boolean isDisableImplicitRender() {
+ return Boolean.valueOf(String.valueOf(getStateHelper().eval(PropertyKeys.disableImplicitRender)));
}
- public void setLimitToList(boolean limitToList) {
- getStateHelper().put(PropertyKeys.limitToList, limitToList);
+ public void setDisableImplicitRender(boolean disableImplicitRender) {
+ getStateHelper().put(PropertyKeys.disableImplicitRender, disableImplicitRender);
}
public boolean isCycledSwitching() {
Modified: branches/RF-8742-1/ui/output/ui/src/main/java/org/richfaces/component/UITooltip.java
===================================================================
--- branches/RF-8742-1/ui/output/ui/src/main/java/org/richfaces/component/UITooltip.java 2010-12-09 15:06:40 UTC (rev 20482)
+++ branches/RF-8742-1/ui/output/ui/src/main/java/org/richfaces/component/UITooltip.java 2010-12-09 17:26:24 UTC (rev 20483)
@@ -49,7 +49,7 @@
showEvent,
verticalOffset,
bypassUpdates,
- limitToList,
+ disableImplicitRender,
data,
status,
execute,
@@ -176,12 +176,12 @@
getStateHelper().put(PropertyKeys.bypassUpdates, bypassUpdates);
}
- public boolean isLimitToList() {
- return Boolean.valueOf(String.valueOf(getStateHelper().eval(PropertyKeys.limitToList)));
+ public boolean isDisableImplicitRender() {
+ return Boolean.valueOf(String.valueOf(getStateHelper().eval(PropertyKeys.disableImplicitRender)));
}
- public void setLimitToList(boolean limitToList) {
- getStateHelper().put(PropertyKeys.limitToList, limitToList);
+ public void setDisableImplicitRender(boolean disableImplicitRender) {
+ getStateHelper().put(PropertyKeys.disableImplicitRender, disableImplicitRender);
}
public Object getData() {
Modified: branches/RF-8742-1/ui/output/ui/src/main/java/org/richfaces/renderkit/html/AccordionItemRenderer.java
===================================================================
--- branches/RF-8742-1/ui/output/ui/src/main/java/org/richfaces/renderkit/html/AccordionItemRenderer.java 2010-12-09 15:06:40 UTC (rev 20482)
+++ branches/RF-8742-1/ui/output/ui/src/main/java/org/richfaces/renderkit/html/AccordionItemRenderer.java 2010-12-09 17:26:24 UTC (rev 20483)
@@ -22,7 +22,6 @@
package org.richfaces.renderkit.html;
-import static org.richfaces.component.util.HtmlUtil.concatClasses;
import static org.richfaces.renderkit.RenderKitUtils.renderPassThroughAttributes;
import java.io.IOException;
@@ -63,8 +62,8 @@
@ResourceDependency(name = "richfaces.js"),
@ResourceDependency(name = "richfaces-event.js"),
@ResourceDependency(name = "richfaces-base-component.js"),
- @ResourceDependency(library = "org.richfaces", name = "TogglePanelItem.js"),
- @ResourceDependency(library = "org.richfaces", name = "AccordionItem.js")
+ @ResourceDependency(library = "org.richfaces", name = "togglePanelItem.js"),
+ @ResourceDependency(library = "org.richfaces", name = "accordionItem.js")
})
public class AccordionItemRenderer extends TogglePanelItemRenderer {
Modified: branches/RF-8742-1/ui/output/ui/src/main/java/org/richfaces/renderkit/html/AccordionRenderer.java
===================================================================
--- branches/RF-8742-1/ui/output/ui/src/main/java/org/richfaces/renderkit/html/AccordionRenderer.java 2010-12-09 15:06:40 UTC (rev 20482)
+++ branches/RF-8742-1/ui/output/ui/src/main/java/org/richfaces/renderkit/html/AccordionRenderer.java 2010-12-09 17:26:24 UTC (rev 20483)
@@ -46,8 +46,8 @@
@ResourceDependency(name = "richfaces.js"),
@ResourceDependency(name = "richfaces-base-component.js"),
@ResourceDependency(library = "org.richfaces", name = "accordion.ecss"),
- @ResourceDependency(library = "org.richfaces", name = "TogglePanel.js"),
- @ResourceDependency(library = "org.richfaces", name = "Accordion.js") })
+ @ResourceDependency(library = "org.richfaces", name = "togglePanel.js"),
+ @ResourceDependency(library = "org.richfaces", name = "accordion.js") })
public class AccordionRenderer extends TogglePanelRenderer {
@Override
@@ -90,7 +90,7 @@
@Override
protected Map<String, Object> getScriptObjectOptions(FacesContext context, UIComponent component) {
Map<String, Object> options = super.getScriptObjectOptions(context, component);
- options.put("isKeepHeight", !attributeAsString(component, height).isEmpty());
+ options.put("isKeepHeight", attributeAsString(component, height).length() > 0);
options.remove("items");
return options;
Modified: branches/RF-8742-1/ui/output/ui/src/main/java/org/richfaces/renderkit/html/CollapsiblePanelRenderer.java
===================================================================
--- branches/RF-8742-1/ui/output/ui/src/main/java/org/richfaces/renderkit/html/CollapsiblePanelRenderer.java 2010-12-09 15:06:40 UTC (rev 20482)
+++ branches/RF-8742-1/ui/output/ui/src/main/java/org/richfaces/renderkit/html/CollapsiblePanelRenderer.java 2010-12-09 17:26:24 UTC (rev 20483)
@@ -38,8 +38,6 @@
import java.util.Map;
import static org.richfaces.component.AbstractCollapsiblePanel.States.*;
-import static org.richfaces.component.util.HtmlUtil.concatClasses;
-import static org.richfaces.component.util.HtmlUtil.concatStyles;
/**
* @author akolonitsky
@@ -51,10 +49,10 @@
@ResourceDependency(name = "richfaces.js"),
@ResourceDependency(name = "richfaces-event.js"),
@ResourceDependency(name = "richfaces-base-component.js"),
- @ResourceDependency(library = "org.richfaces", name = "TogglePanel.js"),
- @ResourceDependency(library = "org.richfaces", name = "TogglePanelItem.js"),
- @ResourceDependency(library = "org.richfaces", name = "CollapsiblePanel.js"),
- @ResourceDependency(library = "org.richfaces", name = "CollapsiblePanelItem.js"),
+ @ResourceDependency(library = "org.richfaces", name = "togglePanel.js"),
+ @ResourceDependency(library = "org.richfaces", name = "togglePanelItem.js"),
+ @ResourceDependency(library = "org.richfaces", name = "collapsiblePanel.js"),
+ @ResourceDependency(library = "org.richfaces", name = "collapsiblePanelItem.js"),
@ResourceDependency(library = "org.richfaces", name = "collapsiblePanel.ecss") })
public class CollapsiblePanelRenderer extends TogglePanelRenderer {
@@ -139,7 +137,7 @@
header.encodeAll(context);
} else {
String headerText = (String) component.getAttributes().get("header");
- if (headerText != null && !headerText.isEmpty()) {
+ if (headerText != null && headerText.length() > 0) {
responseWriter.writeText(headerText, null);
}
}
Modified: branches/RF-8742-1/ui/output/ui/src/main/java/org/richfaces/renderkit/html/DivPanelRenderer.java
===================================================================
--- branches/RF-8742-1/ui/output/ui/src/main/java/org/richfaces/renderkit/html/DivPanelRenderer.java 2010-12-09 15:06:40 UTC (rev 20482)
+++ branches/RF-8742-1/ui/output/ui/src/main/java/org/richfaces/renderkit/html/DivPanelRenderer.java 2010-12-09 17:26:24 UTC (rev 20483)
@@ -58,7 +58,7 @@
protected static String attributeAsStyle(UIComponent comp, Enum attr) {
String value = attributeAsString(comp, attr.toString());
- if (value.isEmpty()) {
+ if (value.length() == 0) {
return "";
}
Modified: branches/RF-8742-1/ui/output/ui/src/main/java/org/richfaces/renderkit/html/PanelMenuRenderer.java
===================================================================
--- branches/RF-8742-1/ui/output/ui/src/main/java/org/richfaces/renderkit/html/PanelMenuRenderer.java 2010-12-09 15:06:40 UTC (rev 20482)
+++ branches/RF-8742-1/ui/output/ui/src/main/java/org/richfaces/renderkit/html/PanelMenuRenderer.java 2010-12-09 17:26:24 UTC (rev 20483)
@@ -40,7 +40,6 @@
import java.util.HashMap;
import java.util.Map;
-import static org.richfaces.component.util.HtmlUtil.concatClasses;
import static org.richfaces.renderkit.html.TogglePanelRenderer.getAjaxOptions;
import static org.richfaces.renderkit.html.TogglePanelRenderer.getValueRequestParamName;
@@ -54,9 +53,9 @@
@ResourceDependency(name = "richfaces.js"),
@ResourceDependency(name = "richfaces-event.js"),
@ResourceDependency(name = "richfaces-base-component.js"),
- @ResourceDependency(library = "org.richfaces", name = "PanelMenu.js"),
- @ResourceDependency(library = "org.richfaces", name = "PanelMenuItem.js"),
- @ResourceDependency(library = "org.richfaces", name = "PanelMenuGroup.js"),
+ @ResourceDependency(library = "org.richfaces", name = "panelMenu.js"),
+ @ResourceDependency(library = "org.richfaces", name = "panelMenuItem.js"),
+ @ResourceDependency(library = "org.richfaces", name = "panelMenuGroup.js"),
@ResourceDependency(library = "org.richfaces", name = "panelMenu.ecss") })
public class PanelMenuRenderer extends DivPanelRenderer {
Modified: branches/RF-8742-1/ui/output/ui/src/main/java/org/richfaces/renderkit/html/PopupPanelBaseRenderer.java
===================================================================
--- branches/RF-8742-1/ui/output/ui/src/main/java/org/richfaces/renderkit/html/PopupPanelBaseRenderer.java 2010-12-09 15:06:40 UTC (rev 20482)
+++ branches/RF-8742-1/ui/output/ui/src/main/java/org/richfaces/renderkit/html/PopupPanelBaseRenderer.java 2010-12-09 17:26:24 UTC (rev 20483)
@@ -187,7 +187,7 @@
addToScriptHash(options, "followByScroll", panel.isFollowByScroll(), "true");
addToScriptHash(options, "left", panel.getLeft(), "auto");
addToScriptHash(options, "top", panel.getTop(), "auto");
- addToScriptHash(options, "zindex", panel.getZIndex(), "100");
+ addToScriptHash(options, "zindex", panel.getZindex(), "100");
addToScriptHash(options, "shadowDepth", panel.getShadowDepth(), "2");
addToScriptHash(options, "shadowOpacity", panel.getShadowOpacity(), "0.1");
addToScriptHash(options, "domElementAttachment", panel.getDomElementAttachment());
Modified: branches/RF-8742-1/ui/output/ui/src/main/java/org/richfaces/renderkit/html/ProgressBarBaseRenderer.java
===================================================================
--- branches/RF-8742-1/ui/output/ui/src/main/java/org/richfaces/renderkit/html/ProgressBarBaseRenderer.java 2010-12-09 15:06:40 UTC (rev 20482)
+++ branches/RF-8742-1/ui/output/ui/src/main/java/org/richfaces/renderkit/html/ProgressBarBaseRenderer.java 2010-12-09 17:26:24 UTC (rev 20483)
@@ -38,13 +38,13 @@
import javax.faces.context.PartialViewContext;
import org.ajax4jsf.context.AjaxContext;
-import org.ajax4jsf.javascript.JSFunction;
import org.ajax4jsf.javascript.JSReference;
import org.richfaces.component.AbstractProgressBar;
import org.richfaces.component.MetaComponentResolver;
import org.richfaces.component.NumberUtils;
import org.richfaces.component.SwitchType;
-import org.richfaces.renderkit.AjaxEventOptions;
+import org.richfaces.renderkit.AjaxFunction;
+import org.richfaces.renderkit.AjaxOptions;
import org.richfaces.renderkit.MetaComponentRenderer;
import org.richfaces.renderkit.RendererBase;
import org.richfaces.renderkit.util.AjaxRendererUtils;
@@ -110,9 +110,9 @@
ProgressBarState result;
- if (value.doubleValue() <= minValue.doubleValue()) {
+ if (value.doubleValue() < minValue.doubleValue()) {
result = ProgressBarState.initialState;
- } else if (value.doubleValue() > maxValue.doubleValue()) {
+ } else if (value.doubleValue() >= maxValue.doubleValue()) {
result = ProgressBarState.finishState;
} else {
result = ProgressBarState.progressState;
@@ -140,12 +140,14 @@
return null;
}
- JSFunction ajaxFunction = AjaxRendererUtils.buildAjaxFunction(facesContext, component, AjaxRendererUtils.AJAX_FUNCTION_NAME);
- AjaxEventOptions eventOptions = AjaxRendererUtils.buildEventOptions(facesContext, component);
- eventOptions.set("beforedomupdate", BEFORE_UPDATE_HANDLER);
- eventOptions.set("complete", AFTER_UPDATE_HANDLER);
- eventOptions.setClientParameters(PARAMS);
- ajaxFunction.addParameter(eventOptions);
+ AjaxFunction ajaxFunction = AjaxRendererUtils.buildAjaxFunction(facesContext, component);
+
+ AjaxOptions options = ajaxFunction.getOptions();
+
+ options.set("beforedomupdate", BEFORE_UPDATE_HANDLER);
+ options.set("complete", AFTER_UPDATE_HANDLER);
+ options.setClientParameters(PARAMS);
+
return ajaxFunction.toScript();
}
Modified: branches/RF-8742-1/ui/output/ui/src/main/java/org/richfaces/renderkit/html/TabPanelRenderer.java
===================================================================
--- branches/RF-8742-1/ui/output/ui/src/main/java/org/richfaces/renderkit/html/TabPanelRenderer.java 2010-12-09 15:06:40 UTC (rev 20482)
+++ branches/RF-8742-1/ui/output/ui/src/main/java/org/richfaces/renderkit/html/TabPanelRenderer.java 2010-12-09 17:26:24 UTC (rev 20483)
@@ -26,8 +26,6 @@
import static org.richfaces.component.AbstractTogglePanelTitledItem.HeaderStates.disabled;
import static org.richfaces.component.AbstractTogglePanelTitledItem.HeaderStates.inactive;
import static org.richfaces.component.html.HtmlAccordion.PropertyKeys.height;
-import static org.richfaces.component.util.HtmlUtil.concatClasses;
-import static org.richfaces.component.util.HtmlUtil.concatStyles;
import static org.richfaces.renderkit.RenderKitUtils.renderPassThroughAttributes;
import java.io.IOException;
@@ -60,8 +58,8 @@
@ResourceDependency(name = "richfaces-event.js"),
@ResourceDependency(name = "richfaces-base-component.js"),
@ResourceDependency(library = "org.richfaces", name = "tabPanel.ecss"),
- @ResourceDependency(library = "org.richfaces", name = "TogglePanel.js"),
- @ResourceDependency(library = "org.richfaces", name = "TabPanel.js")
+ @ResourceDependency(library = "org.richfaces", name = "togglePanel.js"),
+ @ResourceDependency(library = "org.richfaces", name = "tabPanel.js")
})
public class TabPanelRenderer extends TogglePanelRenderer {
Modified: branches/RF-8742-1/ui/output/ui/src/main/java/org/richfaces/renderkit/html/TabRenderer.java
===================================================================
--- branches/RF-8742-1/ui/output/ui/src/main/java/org/richfaces/renderkit/html/TabRenderer.java 2010-12-09 15:06:40 UTC (rev 20482)
+++ branches/RF-8742-1/ui/output/ui/src/main/java/org/richfaces/renderkit/html/TabRenderer.java 2010-12-09 17:26:24 UTC (rev 20483)
@@ -22,8 +22,6 @@
package org.richfaces.renderkit.html;
-import static org.richfaces.component.util.HtmlUtil.concatClasses;
-
import java.io.IOException;
import java.util.Map;
@@ -47,8 +45,8 @@
@ResourceDependency(name = "richfaces.js"),
@ResourceDependency(name = "richfaces-event.js"),
@ResourceDependency(name = "richfaces-base-component.js"),
- @ResourceDependency(library = "org.richfaces", name = "TogglePanelItem.js"),
- @ResourceDependency(library = "org.richfaces", name = "Tab.js")
+ @ResourceDependency(library = "org.richfaces", name = "togglePanelItem.js"),
+ @ResourceDependency(library = "org.richfaces", name = "tab.js")
})
public class TabRenderer extends TogglePanelItemRenderer {
Modified: branches/RF-8742-1/ui/output/ui/src/main/java/org/richfaces/renderkit/html/TogglePanelItemRenderer.java
===================================================================
--- branches/RF-8742-1/ui/output/ui/src/main/java/org/richfaces/renderkit/html/TogglePanelItemRenderer.java 2010-12-09 15:06:40 UTC (rev 20482)
+++ branches/RF-8742-1/ui/output/ui/src/main/java/org/richfaces/renderkit/html/TogglePanelItemRenderer.java 2010-12-09 17:26:24 UTC (rev 20483)
@@ -46,7 +46,7 @@
@ResourceDependency(name = "richfaces.js"),
@ResourceDependency(name = "richfaces-event.js"),
@ResourceDependency(name = "richfaces-base-component.js"),
- @ResourceDependency(library = "org.richfaces", name = "TogglePanelItem.js") })
+ @ResourceDependency(library = "org.richfaces", name = "togglePanelItem.js") })
public class TogglePanelItemRenderer extends DivPanelRenderer {
private static final String LEAVE = "leave";
Modified: branches/RF-8742-1/ui/output/ui/src/main/java/org/richfaces/renderkit/html/TogglePanelRenderer.java
===================================================================
--- branches/RF-8742-1/ui/output/ui/src/main/java/org/richfaces/renderkit/html/TogglePanelRenderer.java 2010-12-09 15:06:40 UTC (rev 20482)
+++ branches/RF-8742-1/ui/output/ui/src/main/java/org/richfaces/renderkit/html/TogglePanelRenderer.java 2010-12-09 17:26:24 UTC (rev 20483)
@@ -41,7 +41,7 @@
import org.richfaces.component.AbstractTogglePanel;
import org.richfaces.component.AbstractTogglePanelItem;
import org.richfaces.component.util.HtmlUtil;
-import org.richfaces.renderkit.AjaxEventOptions;
+import org.richfaces.renderkit.AjaxOptions;
import org.richfaces.renderkit.HtmlConstants;
import org.richfaces.renderkit.util.AjaxRendererUtils;
import org.richfaces.renderkit.util.FormUtil;
@@ -57,7 +57,7 @@
@ResourceDependency(name = "richfaces.js"),
@ResourceDependency(name = "richfaces-event.js"),
@ResourceDependency(name = "richfaces-base-component.js"),
- @ResourceDependency(library = "org.richfaces", name = "TogglePanel.js") })
+ @ResourceDependency(library = "org.richfaces", name = "togglePanel.js") })
public class TogglePanelRenderer extends DivPanelRenderer {
public static final String VALUE_POSTFIX = "-value";
@@ -168,7 +168,7 @@
}
}
- public static AjaxEventOptions getAjaxOptions(FacesContext context, UIComponent panel) {
+ public static AjaxOptions getAjaxOptions(FacesContext context, UIComponent panel) {
return AjaxRendererUtils.buildEventOptions(context, panel);
}
Modified: branches/RF-8742-1/ui/output/ui/src/main/java/org/richfaces/renderkit/html/TooltipRenderer.java
===================================================================
--- branches/RF-8742-1/ui/output/ui/src/main/java/org/richfaces/renderkit/html/TooltipRenderer.java 2010-12-09 15:06:40 UTC (rev 20482)
+++ branches/RF-8742-1/ui/output/ui/src/main/java/org/richfaces/renderkit/html/TooltipRenderer.java 2010-12-09 17:26:24 UTC (rev 20483)
@@ -58,7 +58,7 @@
@ResourceDependency(name = "richfaces-event.js"),
@ResourceDependency(name = "richfaces-base-component.js"),
@ResourceDependency(library = "org.richfaces", name = "popup.js"),
- @ResourceDependency(library = "org.richfaces", name = "Tooltip.js"),
+ @ResourceDependency(library = "org.richfaces", name = "tooltip.js"),
@ResourceDependency(library = "org.richfaces", name = "tooltip.ecss") })
public class TooltipRenderer extends DivPanelRenderer implements MetaComponentRenderer {
Modified: branches/RF-8742-1/ui/output/ui/src/main/resources/META-INF/pn.faces-config.xml
===================================================================
--- branches/RF-8742-1/ui/output/ui/src/main/resources/META-INF/pn.faces-config.xml 2010-12-09 15:06:40 UTC (rev 20482)
+++ branches/RF-8742-1/ui/output/ui/src/main/resources/META-INF/pn.faces-config.xml 2010-12-09 17:26:24 UTC (rev 20483)
@@ -889,7 +889,7 @@
</property>
<property>
<description></description>
- <property-name>limitToList</property-name>
+ <property-name>disableImplicitRender</property-name>
<property-class>boolean</property-class>
</property>
<property>
@@ -940,7 +940,7 @@
</property>
<property>
<description></description>
- <property-name>limitToList</property-name>
+ <property-name>disableImplicitRender</property-name>
<property-class>boolean</property-class>
</property>
<property>
@@ -1000,7 +1000,7 @@
</property>
<property>
<description></description>
- <property-name>limitToList</property-name>
+ <property-name>disableImplicitRender</property-name>
<property-class>boolean</property-class>
</property>
<property>
@@ -1245,7 +1245,7 @@
</property>
<property>
<description></description>
- <property-name>limitToList</property-name>
+ <property-name>disableImplicitRender</property-name>
<property-class>boolean</property-class>
</property>
<property>
@@ -1615,7 +1615,7 @@
</property>
<property>
<description></description>
- <property-name>limitToList</property-name>
+ <property-name>disableImplicitRender</property-name>
<property-class>boolean</property-class>
</property>
<property>
@@ -1712,18 +1712,6 @@
<component-class>org.richfaces.component.html.HtmlPanelMenu</component-class>
<property>
- <property-name>action</property-name>
- <property-class>javax.faces.el.MethodBinding</property-class>
- </property>
- <property>
- <property-name>actionExpression</property-name>
- <property-class>javax.el.MethodExpression</property-class>
- </property>
- <property>
- <property-name>actionListener</property-name>
- <property-class>javax.faces.el.MethodBinding</property-class>
- </property>
- <property>
<description></description>
<property-name>disabled</property-name>
<property-class>boolean</property-class>
@@ -1775,7 +1763,7 @@
</property>
<property>
<description></description>
- <property-name>limitToList</property-name>
+ <property-name>disableImplicitRender</property-name>
<property-class>boolean</property-class>
</property>
<property>
Modified: branches/RF-8742-1/ui/output/ui/src/main/resources/META-INF/pn.taglib.xml
===================================================================
--- branches/RF-8742-1/ui/output/ui/src/main/resources/META-INF/pn.taglib.xml 2010-12-09 15:06:40 UTC (rev 20482)
+++ branches/RF-8742-1/ui/output/ui/src/main/resources/META-INF/pn.taglib.xml 2010-12-09 17:26:24 UTC (rev 20483)
@@ -785,11 +785,187 @@
<tag>
<tag-name>popupPanel</tag-name>
<component>
+ <description>JSF component class</description>
<component-type>org.richfaces.PopupPanel</component-type>
<renderer-type>org.richfaces.PopupPanelRenderer</renderer-type>
</component>
+ <attribute>
+ <name>autosized</name>
+ <type>boolean</type>
+ </attribute>
+ <attribute>
+ <description>The value binding expression used to wire up this component to a component property of a JavaBean class</description>
+ <icon/>
+ <name>binding</name>
+ <type>javax.faces.component.UIComponent</type>
+ </attribute>
+ <attribute>
+ <name>controlsClass</name>
+ <type>java.lang.String</type>
+ </attribute>
+ <attribute>
+ <name>domElementAttachment</name>
+ <type>java.lang.String</type>
+ </attribute>
+ <attribute>
+ <name>followByScroll</name>
+ <type>boolean</type>
+ </attribute>
+ <attribute>
+ <name>header</name>
+ <type>java.lang.String</type>
+ </attribute>
+ <attribute>
+ <name>headerClass</name>
+ <type>java.lang.String</type>
+ </attribute>
+ <attribute>
+ <name>height</name>
+ <type>int</type>
+ </attribute>
+ <attribute>
+ <description>The component identifier for this component. This value must be unique within the closest parent component that is a naming container.</description>
+ <display-name>Component Identifier</display-name>
+ <icon/>
+ <name>id</name>
+ <type>java.lang.String</type>
+ </attribute>
+ <attribute>
+ <name>keepVisualState</name>
+ <type>boolean</type>
+ </attribute>
+ <attribute>
+ <name>left</name>
+ <type>java.lang.String</type>
+ </attribute>
+ <attribute>
+ <name>maxHeight</name>
+ <type>int</type>
+ </attribute>
+ <attribute>
+ <name>maxWidth</name>
+ <type>int</type>
+ </attribute>
+ <attribute>
+ <name>minHeight</name>
+ <type>int</type>
+ </attribute>
+ <attribute>
+ <name>minWidth</name>
+ <type>int</type>
+ </attribute>
+ <attribute>
+ <name>modal</name>
+ <type>boolean</type>
+ </attribute>
+ <attribute>
+ <name>moveable</name>
+ <type>boolean</type>
+ </attribute>
+ <attribute>
+ <name>onbeforehide</name>
+ <type>java.lang.String</type>
+ </attribute>
+ <attribute>
+ <name>onbeforeshow</name>
+ <type>java.lang.String</type>
+ </attribute>
+ <attribute>
+ <name>onhide</name>
+ <type>java.lang.String</type>
+ </attribute>
+ <attribute>
+ <name>onmaskclick</name>
+ <type>java.lang.String</type>
+ </attribute>
+ <attribute>
+ <name>onmaskcontextmenu</name>
+ <type>java.lang.String</type>
+ </attribute>
+ <attribute>
+ <name>onmaskdblclick</name>
+ <type>java.lang.String</type>
+ </attribute>
+ <attribute>
+ <name>onmaskmousedown</name>
+ <type>java.lang.String</type>
+ </attribute>
+ <attribute>
+ <name>onmaskmousemove</name>
+ <type>java.lang.String</type>
+ </attribute>
+ <attribute>
+ <name>onmaskmouseout</name>
+ <type>java.lang.String</type>
+ </attribute>
+ <attribute>
+ <name>onmaskmouseover</name>
+ <type>java.lang.String</type>
+ </attribute>
+ <attribute>
+ <name>onmaskmouseup</name>
+ <type>java.lang.String</type>
+ </attribute>
+ <attribute>
+ <name>onmove</name>
+ <type>java.lang.String</type>
+ </attribute>
+ <attribute>
+ <name>onresize</name>
+ <type>java.lang.String</type>
+ </attribute>
+ <attribute>
+ <name>onshow</name>
+ <type>java.lang.String</type>
+ </attribute>
+ <attribute>
+ <name>overlapEmbedObjects</name>
+ <type>boolean</type>
+ </attribute>
+ <attribute>
+ <description>Flag indicating whether or not this component should be rendered (during Render Response Phase), or processed on any subsequent form submit. The default value for this property is true.</description>
+ <display-name>Rendered Flag</display-name>
+ <icon/>
+ <name>rendered</name>
+ <type>boolean</type>
+ </attribute>
+ <attribute>
+ <name>resizeable</name>
+ <type>boolean</type>
+ </attribute>
+ <attribute>
+ <name>shadowDepth</name>
+ <type>java.lang.String</type>
+ </attribute>
+ <attribute>
+ <name>shadowOpacity</name>
+ <type>java.lang.String</type>
+ </attribute>
+ <attribute>
+ <name>show</name>
+ <type>boolean</type>
+ </attribute>
+ <attribute>
+ <name>top</name>
+ <type>java.lang.String</type>
+ </attribute>
+ <attribute>
+ <name>trimOverlayedElements</name>
+ <type>boolean</type>
+ </attribute>
+ <attribute>
+ <name>visualOptions</name>
+ <type>java.lang.String</type>
+ </attribute>
+ <attribute>
+ <name>width</name>
+ <type>int</type>
+ </attribute>
+ <attribute>
+ <name>zindex</name>
+ <type>int</type>
+ </attribute>
</tag>
-
<tag>
<tag-name>tabPanel</tag-name>
<component>
@@ -864,7 +1040,7 @@
</attribute>
<attribute>
<description></description>
- <name>limitToList</name>
+ <name>disableImplicitRender</name>
<type>boolean</type>
</attribute>
<attribute>
@@ -1114,7 +1290,7 @@
</attribute>
<attribute>
<description></description>
- <name>limitToList</name>
+ <name>disableImplicitRender</name>
<type>boolean</type>
</attribute>
<attribute>
@@ -1264,7 +1440,7 @@
</attribute>
<attribute>
<description></description>
- <name>limitToList</name>
+ <name>disableImplicitRender</name>
<type>boolean</type>
</attribute>
<attribute>
@@ -1594,7 +1770,7 @@
</attribute>
<attribute>
<description></description>
- <name>limitToList</name>
+ <name>disableImplicitRender</name>
<type>boolean</type>
</attribute>
<attribute>
@@ -1719,7 +1895,7 @@
</attribute>
<attribute>
<description></description>
- <name>limitToList</name>
+ <name>disableImplicitRender</name>
<type>boolean</type>
</attribute>
<attribute>
@@ -1764,7 +1940,7 @@
</attribute>
<attribute>
<description></description>
- <name>panelToggleListener</name>
+ <name>toggleListener</name>
<type>javax.el.MethodExpression</type>
</attribute>
<attribute>
@@ -1930,7 +2106,7 @@
</attribute>
<attribute>
<description></description>
- <name>limitToList</name>
+ <name>disableImplicitRender</name>
<type>boolean</type>
</attribute>
<attribute>
@@ -2221,7 +2397,7 @@
</attribute>
<attribute>
<description></description>
- <name>limitToList</name>
+ <name>disableImplicitRender</name>
<type>boolean</type>
</attribute>
<attribute>
Deleted: branches/RF-8742-1/ui/output/ui/src/main/resources/META-INF/resources/org.richfaces/Accordion.js
===================================================================
--- branches/RF-8742-1/ui/output/ui/src/main/resources/META-INF/resources/org.richfaces/Accordion.js 2010-12-09 15:06:40 UTC (rev 20482)
+++ branches/RF-8742-1/ui/output/ui/src/main/resources/META-INF/resources/org.richfaces/Accordion.js 2010-12-09 17:26:24 UTC (rev 20483)
@@ -1,75 +0,0 @@
-/*
- * JBoss, Home of Professional Open Source
- * Copyright ${year}, Red Hat, Inc. and individual contributors
- * by the @authors tag. See the copyright.txt in the distribution for a
- * full listing of individual contributors.
- *
- * This is free software; you can redistribute it and/or modify it
- * under the terms of the GNU Lesser General Public License as
- * published by the Free Software Foundation; either version 2.1 of
- * the License, or (at your option) any later version.
- *
- * This software is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
- * Lesser General Public License for more details.
- *
- * You should have received a copy of the GNU Lesser General Public
- * License along with this software; if not, write to the Free
- * Software Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA
- * 02110-1301 USA, or see the FSF site: http://www.fsf.org.
- */
-
-(function ($, rf) {
-
- rf.ui = rf.ui || {};
-
- rf.ui.Accordion = rf.ui.TogglePanel.extendClass({
- // class name
- name:"Accordion",
-
- /**
- * @class Accordion
- * @name Accordion
- *
- * @constructor
- * @param {String} componentId - component id
- * @param {Hash} options - params
- * */
- init : function (componentId, options) {
- $super.constructor.call(this, componentId, options);
- this.items = [];
-
- this.isKeepHeight = options["isKeepHeight"] || false
- },
-
- /***************************** Public Methods ****************************************************************/
-
- getHeight : function (recalculate) {
- if (recalculate || !this.__height) {
- this.__height = $(rf.getDomElement(this.id)).outerHeight(true)
- }
-
- return this.__height;
- },
-
- getInnerHeight : function (recalculate) {
- if (recalculate || !this.__innerHeight) {
- this.__innerHeight = $(rf.getDomElement(this.id)).innerHeight(true)
- }
-
- return this.__innerHeight;
- },
-
- /***************************** Private Methods ********************************************************/
-
-
- destroy: function () {
- rf.Event.unbindById(this.id, "." + this.namespace);
- $super.destroy.call(this);
- }
- });
-
- // define super class link
- var $super = rf.ui.Accordion.$super;
-})(jQuery, RichFaces);
Deleted: branches/RF-8742-1/ui/output/ui/src/main/resources/META-INF/resources/org.richfaces/AccordionItem.js
===================================================================
--- branches/RF-8742-1/ui/output/ui/src/main/resources/META-INF/resources/org.richfaces/AccordionItem.js 2010-12-09 15:06:40 UTC (rev 20482)
+++ branches/RF-8742-1/ui/output/ui/src/main/resources/META-INF/resources/org.richfaces/AccordionItem.js 2010-12-09 17:26:24 UTC (rev 20483)
@@ -1,158 +0,0 @@
-/*
- * JBoss, Home of Professional Open Source
- * Copyright ${year}, Red Hat, Inc. and individual contributors
- * by the @authors tag. See the copyright.txt in the distribution for a
- * full listing of individual contributors.
- *
- * This is free software; you can redistribute it and/or modify it
- * under the terms of the GNU Lesser General Public License as
- * published by the Free Software Foundation; either version 2.1 of
- * the License, or (at your option) any later version.
- *
- * This software is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
- * Lesser General Public License for more details.
- *
- * You should have received a copy of the GNU Lesser General Public
- * License along with this software; if not, write to the Free
- * Software Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA
- * 02110-1301 USA, or see the FSF site: http://www.fsf.org.
- */
-
-(function ($, rf) {
-
- rf.ui = rf.ui || {};
-
- rf.ui.AccordionItem = rf.ui.TogglePanelItem.extendClass({
- // class name
- name:"AccordionItem",
-
- /**
- * @class AccordionItem
- * @name AccordionItem
- *
- * @constructor
- * @param {String} componentId - component id
- * @param {Hash} options - params
- * */
- init : function (componentId, options) {
- $super.constructor.call(this, componentId, options);
- this.index = options["index"];
- this.getTogglePanel().getItems()[this.index] = this;
-
- if (!this.disabled) {
- rf.Event.bindById(this.id + ":header", "click", this.__onHeaderClick, this);
- }
-
- if (this.isSelected()) {
- var item = this;
- $(document).ready(function () {
- item.__fitToHeight(item.getTogglePanel());
- });
- }
- },
-
- /***************************** Public Methods ****************************************************************/
-
- __onHeaderClick : function (comp) {
- this.getTogglePanel().switchToItem(this.getName());
- },
-
- /**
- * @param state {string} = inactive | active | disabled
- * in that case looking header by css class appropriate to this state
- *
- * @return {jQuery Object}
- * */
- __header : function (state) {
- var res = $(rf.getDomElement(this.id + ":header"));
- if (state) {
- return res.find(".rf-ac-itm-hdr-" + state);
- }
-
- return res;
- },
-
- /**
- * @return {jQuery Object}
- * */
- __content : function () {
- if (!this.__content_) {
- this.__content_ = $(rf.getDomElement(this.id + ":content"));
- }
- return this.__content_;
- },
-
- /**
- * @private
- *
- * used in TogglePanel
- * */
- __enter : function () {
- var parentPanel = this.getTogglePanel();
- if (parentPanel.isKeepHeight) {
- this.__content().hide(); // TODO ?
- this.__fitToHeight(parentPanel);
- }
-
- this.__content().show();
- this.__header("inact").hide();
- this.__header("act").show();
-
- return this.__fireEnter();
- },
-
- __fitToHeight : function (parentPanel) {
- var h = parentPanel.getInnerHeight();
-
- var items = parentPanel.getItems();
- for (var i in items) {
- h -= items[i].__header().outerHeight();
- }
-
- this.__content().height(h - 20); // 20 it is padding top and bottom
- },
-
- getHeight : function (recalculate) {
- if (recalculate || !this.__height) {
- this.__height = $(rf.getDomElement(this.id)).outerHeight(true)
- }
-
- return this.__height;
- },
-
- /**
- * @private
- *
- * used in TogglePanel
- * */
- __leave : function () {
- var continueProcess = this.__fireLeave();
- if (!continueProcess) {
- return false;
- }
-
- this.__content().hide();
- this.__header("act").hide();
- this.__header("inact").show();
-
- return true;
- },
-
- /***************************** Private Methods ********************************************************/
-
-
- destroy: function () {
- var parent = this.getTogglePanel();
- delete parent.getItems()[this.index];
-
- rf.Event.unbindById(this.id, "."+this.namespace);
-
- $super.destroy.call(this);
- }
- });
-
- // define super class link
- var $super = rf.ui.AccordionItem.$super;
-})(jQuery, RichFaces);
Deleted: branches/RF-8742-1/ui/output/ui/src/main/resources/META-INF/resources/org.richfaces/CollapsiblePanel.js
===================================================================
--- branches/RF-8742-1/ui/output/ui/src/main/resources/META-INF/resources/org.richfaces/CollapsiblePanel.js 2010-12-09 15:06:40 UTC (rev 20482)
+++ branches/RF-8742-1/ui/output/ui/src/main/resources/META-INF/resources/org.richfaces/CollapsiblePanel.js 2010-12-09 17:26:24 UTC (rev 20483)
@@ -1,82 +0,0 @@
-/*
- * JBoss, Home of Professional Open Source
- * Copyright ${year}, Red Hat, Inc. and individual contributors
- * by the @authors tag. See the copyright.txt in the distribution for a
- * full listing of individual contributors.
- *
- * This is free software; you can redistribute it and/or modify it
- * under the terms of the GNU Lesser General Public License as
- * published by the Free Software Foundation; either version 2.1 of
- * the License, or (at your option) any later version.
- *
- * This software is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
- * Lesser General Public License for more details.
- *
- * You should have received a copy of the GNU Lesser General Public
- * License along with this software; if not, write to the Free
- * Software Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA
- * 02110-1301 USA, or see the FSF site: http://www.fsf.org.
- */
-
-(function ($, rf) {
-
- rf.ui = rf.ui || {};
-
- rf.ui.CollapsiblePanel = rf.ui.TogglePanel.extendClass({
-
- name:"CollapsiblePanel",
-
- /**
- * @class CollapsiblePanel
- * @name CollapsiblePanel
- *
- * @constructor
- * @param {String} componentId - component id
- * @param {Hash} options - params
- * */
- init : function (componentId, options) {
- rf.ui.TogglePanel.call(this, componentId, options);
- this.switchMode = options.switchMode;
-
- this.__addUserEventHandler("beforeswitch");
- this.__addUserEventHandler("switch");
-
- this.items = [
- new RichFaces.ui.CollapsiblePanelItem(
- this.id + ":content", {"index":0, "togglePanelId":this.id, "switchMode":this.switchMode, "name":"true"}),
-
- new RichFaces.ui.CollapsiblePanelItem(
- this.id + ":empty", {"index":1, "togglePanelId":this.id, "switchMode":this.switchMode, "name":"false"})
- ];
- this.options.cycledSwitching = true;
-
- rf.Event.bindById(this.id + ":header", "click", this.__onHeaderClick, this)
- },
-
- switchPanel : function (to) {
- this.switchToItem(to || "@next");
- },
-
- /***************************** Private Methods ********************************************************/
-
- __onHeaderClick : function () {
- this.switchToItem("@next");
- },
-
- __fireItemChange : function (oldItem, newItem) {
- return new rf.Event.fireById(this.id, "switch", {
- id: this.id,
- isExpanded : newItem.getName()
- });
- },
-
- __fireBeforeItemChange : function (oldItem, newItem) {
- return rf.Event.fireById(this.id, "beforeswitch", {
- id: this.id,
- isExpanded : newItem.getName()
- });
- }
- });
-})(jQuery, RichFaces);
Deleted: branches/RF-8742-1/ui/output/ui/src/main/resources/META-INF/resources/org.richfaces/CollapsiblePanelItem.js
===================================================================
--- branches/RF-8742-1/ui/output/ui/src/main/resources/META-INF/resources/org.richfaces/CollapsiblePanelItem.js 2010-12-09 15:06:40 UTC (rev 20482)
+++ branches/RF-8742-1/ui/output/ui/src/main/resources/META-INF/resources/org.richfaces/CollapsiblePanelItem.js 2010-12-09 17:26:24 UTC (rev 20483)
@@ -1,60 +0,0 @@
-/*
- * JBoss, Home of Professional Open Source
- * Copyright ${year}, Red Hat, Inc. and individual contributors
- * by the @authors tag. See the copyright.txt in the distribution for a
- * full listing of individual contributors.
- *
- * This is free software; you can redistribute it and/or modify it
- * under the terms of the GNU Lesser General Public License as
- * published by the Free Software Foundation; either version 2.1 of
- * the License, or (at your option) any later version.
- *
- * This software is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
- * Lesser General Public License for more details.
- *
- * You should have received a copy of the GNU Lesser General Public
- * License along with this software; if not, write to the Free
- * Software Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA
- * 02110-1301 USA, or see the FSF site: http://www.fsf.org.
- */
-
-(function ($, rf) {
-
- rf.ui = rf.ui || {};
-
- rf.ui.CollapsiblePanelItem = rf.ui.TogglePanelItem.extendClass({
-
- init : function (componentId, options) {
- rf.ui.TogglePanelItem.call(this, componentId, options);
- },
-
- __enter : function () {
- rf.getDomElement(this.id).style.display = "block";
- this.__header(this.__state()).show();
-
- return true;
- },
-
- __leave : function () {
- rf.getDomElement(this.id).style.display = "none";
- this.__header(this.__state()).hide();
-
- return true;
- },
-
- __state : function () {
- return this.getName() === "true" ? "exp" : "colps";
- },
-
- __header : function (state) {
- var res = $(rf.getDomElement(this.togglePanelId + ":header"));
- if (state) {
- return res.find(".rf-cp-hdr-" + state);
- }
-
- return res;
- }
- });
-})(jQuery, RichFaces);
Deleted: branches/RF-8742-1/ui/output/ui/src/main/resources/META-INF/resources/org.richfaces/PanelMenu.js
===================================================================
--- branches/RF-8742-1/ui/output/ui/src/main/resources/META-INF/resources/org.richfaces/PanelMenu.js 2010-12-09 15:06:40 UTC (rev 20482)
+++ branches/RF-8742-1/ui/output/ui/src/main/resources/META-INF/resources/org.richfaces/PanelMenu.js 2010-12-09 17:26:24 UTC (rev 20483)
@@ -1,211 +0,0 @@
-/*
- * JBoss, Home of Professional Open Source
- * Copyright ${year}, Red Hat, Inc. and individual contributors
- * by the @authors tag. See the copyright.txt in the distribution for a
- * full listing of individual contributors.
- *
- * This is free software; you can redistribute it and/or modify it
- * under the terms of the GNU Lesser General Public License as
- * published by the Free Software Foundation; either version 2.1 of
- * the License, or (at your option) any later version.
- *
- * This software is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
- * Lesser General Public License for more details.
- *
- * You should have received a copy of the GNU Lesser General Public
- * License along with this software; if not, write to the Free
- * Software Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA
- * 02110-1301 USA, or see the FSF site: http://www.fsf.org.
- */
-
-
-(function ($, rf) {
-
- rf.ui = rf.ui || {};
-
- var __DEFAULT_OPTIONS = {
- expandSingle : true
- };
-
- rf.ui.PanelMenu = rf.BaseComponent.extendClass({
- // class name
- name:"PanelMenu",
-
- /**
- * @class PanelMenu
- * @name PanelMenu
- *
- * @constructor
- * @param {String} componentId - component id
- * @param {Hash} options - params
- * */
- init : function (componentId, options) {
- $super.constructor.call(this, componentId);
- this.items = [];
- this.attachToDom();
-
- this.options = $.extend(this.options, __DEFAULT_OPTIONS, options || {});
- this.activeItem = this.__getValueInput().value;
- this.nestingLevel = 0;
-
- var menuGroup = this;
- if (menuGroup.options.expandSingle) {
- menuGroup.__panelMenu().bind("expand", function (event) {
- menuGroup.__childGroups().each (function (index, group) {
- if (event.target.id != group.id) {
- rf.$(group.id).collapse();
- }
- });
-
- event.stopPropagation();
- });
- }
-
- if (menuGroup.activeItem) {
- this.__panelMenu().ready(function () {
- var item = menuGroup.items[menuGroup.activeItem];
- item.__select();
- item.__fireSelect();
- })
- }
-
- this.__addUserEventHandler("collapse");
- this.__addUserEventHandler("expand");
- },
-
- getItems: function () {
- return this.items;
- },
-
- getItem: function (name) {
- return this.items[name];
- },
-
- /***************************** Public Methods ****************************************************************/
- /**
- * @methodOf
- * @name PanelMenu#selectItem
- *
- * TODO ...
- *
- * @param {String} name
- * @return {void} TODO ...
- */
- selectItem: function (name) {
- // TODO implement
- },
-
- /**
- * @methodOf
- * @name PanelMenu#selectedItem
- *
- * TODO ...
- *
- * @return {String} TODO ...
- */
- selectedItem: function (id) {
- if (id != undefined) {
- var valueInput = this.__getValueInput();
- var prevActiveItem = valueInput.value;
-
- this.activeItem = id;
- valueInput.value = id;
-
- return prevActiveItem;
- } else {
- return this.activeItem;
- }
- },
-
- __getValueInput : function() {
- return document.getElementById(this.id + "-value");
- },
-
- selectItem: function (itemName) {
- // TODO
- },
-
- /**
- * @methodOf
- * @name PanelMenu#expandAll
- *
- * TODO ...
- *
- * @return {void} TODO ...
- */
- expandAll: function () {
- // TODO implement
- },
-
- /**
- * @methodOf
- * @name PanelMenu#collapseAll
- *
- * TODO ...
- *
- * @return {void} TODO ...
- */
- collapseAll: function () {
- // TODO implement
- },
-
- /**
- * @methodOf
- * @name PanelMenu#expandGroup
- *
- * TODO ...
- *
- * @param {String} groupName
- * @return {void} TODO ...
- */
- expandGroup: function (groupName) {
- // TODO implement
- },
-
- /**
- * @methodOf
- * @name PanelMenu#collapseGroup
- *
- * TODO ...
- *
- * @param {String} groupName
- * @return {void} TODO ...
- */
- collapseGroup: function (groupName) {
- // TODO implement
- },
-
-
- /***************************** Private Methods ****************************************************************/
-
-
- __panelMenu : function () {
- return $(rf.getDomElement(this.id));
- },
-
- __childGroups : function () {
- return this.__panelMenu().children(".rf-pm-top-gr")
- },
-
- /**
- * @private
- * */
- __addUserEventHandler : function (name) {
- var handler = this.options["on" + name];
- if (handler) {
- rf.Event.bindById(this.id, name, handler);
- }
- },
-
- destroy: function () {
- rf.Event.unbindById(this.id, "."+this.namespace);
- $super.destroy.call(this);
- }
- });
-
- // define super class link
- var $super = rf.ui.PanelMenu.$super;
-
-})(jQuery, RichFaces);
Deleted: branches/RF-8742-1/ui/output/ui/src/main/resources/META-INF/resources/org.richfaces/PanelMenuGroup.js
===================================================================
--- branches/RF-8742-1/ui/output/ui/src/main/resources/META-INF/resources/org.richfaces/PanelMenuGroup.js 2010-12-09 15:06:40 UTC (rev 20482)
+++ branches/RF-8742-1/ui/output/ui/src/main/resources/META-INF/resources/org.richfaces/PanelMenuGroup.js 2010-12-09 17:26:24 UTC (rev 20483)
@@ -1,365 +0,0 @@
-/*
- * JBoss, Home of Professional Open Source
- * Copyright ${year}, Red Hat, Inc. and individual contributors
- * by the @authors tag. See the copyright.txt in the distribution for a
- * full listing of individual contributors.
- *
- * This is free software; you can redistribute it and/or modify it
- * under the terms of the GNU Lesser General Public License as
- * published by the Free Software Foundation; either version 2.1 of
- * the License, or (at your option) any later version.
- *
- * This software is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
- * Lesser General Public License for more details.
- *
- * You should have received a copy of the GNU Lesser General Public
- * License along with this software; if not, write to the Free
- * Software Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA
- * 02110-1301 USA, or see the FSF site: http://www.fsf.org.
- */
-
-
-(function ($, rf) {
-
- rf.ui = rf.ui || {};
-
- var __DEFAULT_OPTIONS = {
- expanded : false,
- expandSingle : true,
- bubbleSelection : true,
- stylePrefix : "rf-pm-gr",
-
- // TODO we should use selectionType = {none, selectable, unselectable}
- selectable : false,
- unselectable : false // unselectable can be only selectable item => if selectable == false than unselectable = false
- };
-
- var EXPAND_ITEM = {
-
- /**
- *
- * @return {void}
- * */
- exec : function (group, expand) {
- var mode = group.mode;
- if (mode == "server") {
- return this.execServer(group);
- } else if (mode == "ajax") {
- return this.execAjax(group);
- } else if (mode == "client" || mode == "none") {
- return this.execClient(group, expand);
- } else {
- rf.log.error("EXPAND_ITEM.exec : unknown mode (" + mode + ")");
- }
- },
-
- /**
- * @protected
- *
- * @return {Boolean} false
- * */
- execServer : function (group) {
- group.__changeState();
- rf.submitForm(this.__getParentForm(group));
-
- return false;
- },
-
- /**
- * @protected
- *
- * @return {Boolean} false
- * */
- execAjax : function (group) {
- var oldState = group.__changeState();
- rf.ajax(group.id, null, $.extend({}, group.options["ajax"], {}));
- group.__restoreState(oldState);
-
- return true;
- },
-
- /**
- * @protected
- *
- * @param {PanelMenuGroup} group
- * @param {Boolean} expand
- * @return {undefined}
- * - false - if process has been terminated
- * - true - in other cases
- * */
- execClient : function (group, expand) {
- if (expand) {
- group.expand();
- } else {
- group.collapse();
- }
-
- return group.__fireSwitch();
- },
-
- /**
- * @private
- * */
- __getParentForm : function (item) {
- return $($(rf.getDomElement(item.id)).parents("form")[0]);
- }
- };
-
- rf.ui.PanelMenuGroup = rf.ui.PanelMenuItem.extendClass({
- // class name
- name:"PanelMenuGroup",
-
- /**
- * @class PanelMenuGroup
- * @name PanelMenuGroup
- *
- * @constructor
- * @param {String} componentId - component id
- * @param {Hash} options - params
- * */
- init : function (componentId, options) {
- $super.constructor.call(this, componentId);
- this.options = $.extend(this.options, __DEFAULT_OPTIONS, options || {});
-
- if (!this.options.disabled) {
- var menuGroup = this;
-
- if (!this.options.selectable) {
- this.__header().bind("click", function () {
- return menuGroup.switchExpantion();
- });
- }
-
- if (this.options.selectable || this.options.bubbleSelection) {
- this.__content().bind("select", function (event) {
- if (menuGroup.options.selectable && menuGroup.__isMyEvent(event)) {
- menuGroup.expand();
- }
-
- if (menuGroup.options.bubbleSelection && !menuGroup.__isMyEvent(event)) {
- menuGroup.__select();
- if (!menuGroup.expanded()) {
- menuGroup.expand();
- }
- }
- });
-
- this.__content().bind("unselect", function (event) {
- if (menuGroup.options.selectable && menuGroup.__isMyEvent(event)) {
- menuGroup.collapse();
- }
-
- if (menuGroup.options.bubbleSelection && !menuGroup.__isMyEvent(event)) {
- menuGroup.__unselect();
- }
- });
- }
-
- if (menuGroup.options.expandSingle) {
- menuGroup.__group().bind("expand", function (event) {
- if (menuGroup.__isMyEvent(event)) {
- return;
- }
-
- menuGroup.__childGroups().each (function (index, group) {
- var rfGroup = rf.$(group);
- if (!rfGroup.__isMyEvent(event)) {
- rfGroup.collapse();
- }
- });
-
- event.stopPropagation();
- });
- }
-
- this.__addUserEventHandler("collapse");
- this.__addUserEventHandler("expand");
- }
- },
-
- /***************************** Public Methods ****************************************************************/
- expanded : function () {
- // TODO check invariant in dev mode
- // return this.__content().hasClass("rf-pm-exp")
- return this.__getExpandValue();
- },
-
- expand : function () {
- this.__expand();
-
- return this.__fireExpand();
- },
-
- __expand : function () {
- this.__content().removeClass("rf-pm-colps").addClass("rf-pm-exp");
- var header = this.__header();
- header.find(".rf-pm-ico-colps").hide();
- header.find(".rf-pm-ico-exp").show();
-
- this.__setExpandValue(true);
- },
-
- collapsed : function () {
- // TODO check invariant in dev mode
- // return this.__content().hasClass("rf-pm-colps")
- return !this.__getExpandValue();
- },
-
- collapse : function () {
- this.__collapse();
-
- this.__childGroups().each (function(index, group) {
- rf.$(group.id).__collapse();
- });
-
- this.__fireCollapse();
- },
-
- __collapse : function () {
- this.__content().addClass("rf-pm-colps").removeClass("rf-pm-exp");
- var header = this.__header();
- header.find(".rf-pm-ico-exp").hide();
- header.find(".rf-pm-ico-colps").show();
-
- this.__setExpandValue(false);
- },
-
- /**
- * @methodOf
- * @name PanelMenuGroup#switch
- *
- * TODO ...
- *
- * @param {boolean} expand
- * @return {void} TODO ...
- */
- switchExpantion : function () { // TODO rename
- var continueProcess = this.__fireBeforeSwitch();
- if (!continueProcess) {
- return false;
- }
-
- EXPAND_ITEM.exec(this, !this.expanded());
- },
-
- /**
- * please, remove this method when client side ajax events will be added
- *
- * */
- onCompleteHandler : function () {
- EXPAND_ITEM.execClient(this, this.expanded());
- },
-
- __switch : function (expand) {
- if (expand) {
- this.expand();
- } else {
- this.collapse();
- }
- },
-
- /***************************** Private Methods ****************************************************************/
- __childGroups : function () {
- return this.__content().children(".rf-pm-gr")
- },
-
- __group : function () {
- return $(rf.getDomElement(this.id))
- },
-
- __header : function () {
- return $(rf.getDomElement(this.id + ":hdr"))
- },
-
- __content : function () {
- return $(rf.getDomElement(this.id + ":cnt"))
- },
-
- __expandValueInput : function () {
- return document.getElementById(this.id + ":expanded");
- },
-
- __getExpandValue : function () {
- return this.__expandValueInput().value == "true";
- },
-
- /**
- * @methodOf
- * @name PanelMenuGroup#__setExpandValue
- *
- * @param {boolean} value - is group expanded?
- * @return {boolean} preview value
- */
- __setExpandValue : function (value) {
- var input = this.__expandValueInput();
- var oldValue = input.value;
-
- input.value = value;
-
- return oldValue;
- },
-
- __changeState : function () {
- var state = {};
- state["expanded"] = this.__setExpandValue(!this.__getExpandValue());
- if (this.options.selectable) {
- state["itemName"] = this.__rfPanelMenu().selectedItem(this.itemName); // TODO bad function name for function which change component state
- }
-
- return state;
- },
-
- __restoreState : function (state) {
- if (!state) {
- return;
- }
-
- if (state["expanded"]) {
- this.__setExpandValue(state["expanded"]);
- }
-
- if (state["itemName"]) {
- this.__rfPanelMenu().selectedItem(state["itemName"]);
- }
- },
-
- __fireSwitch : function () {
- return new rf.Event.fireById(this.id, "switch", {
- id: this.id
- });
- },
-
- __isMyEvent: function (event) {
- return this.id == event.target.id;
- },
-
- __fireBeforeSwitch : function () {
- return rf.Event.fireById(this.id, "beforeswitch", {
- id: this.id
- });
- },
-
- __fireCollapse : function () {
- return new rf.Event.fireById(this.id, "collapse", {
- id: this.id
- });
- },
-
- __fireExpand : function () {
- return new rf.Event.fireById(this.id, "expand", {
- id: this.id
- });
- },
-
- destroy: function () {
- rf.Event.unbindById(this.id, "."+this.namespace);
-
- $super.destroy.call(this);
- }
- });
-
- // define super class link
- var $super = rf.ui.PanelMenuGroup.$super;
-})(jQuery, RichFaces);
Deleted: branches/RF-8742-1/ui/output/ui/src/main/resources/META-INF/resources/org.richfaces/PanelMenuItem.js
===================================================================
--- branches/RF-8742-1/ui/output/ui/src/main/resources/META-INF/resources/org.richfaces/PanelMenuItem.js 2010-12-09 15:06:40 UTC (rev 20482)
+++ branches/RF-8742-1/ui/output/ui/src/main/resources/META-INF/resources/org.richfaces/PanelMenuItem.js 2010-12-09 17:26:24 UTC (rev 20483)
@@ -1,321 +0,0 @@
-/*
- * JBoss, Home of Professional Open Source
- * Copyright ${year}, Red Hat, Inc. and individual contributors
- * by the @authors tag. See the copyright.txt in the distribution for a
- * full listing of individual contributors.
- *
- * This is free software; you can redistribute it and/or modify it
- * under the terms of the GNU Lesser General Public License as
- * published by the Free Software Foundation; either version 2.1 of
- * the License, or (at your option) any later version.
- *
- * This software is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
- * Lesser General Public License for more details.
- *
- * You should have received a copy of the GNU Lesser General Public
- * License along with this software; if not, write to the Free
- * Software Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA
- * 02110-1301 USA, or see the FSF site: http://www.fsf.org.
- */
-
-
-(function ($, rf) {
-
- rf.ui = rf.ui || {};
-
- var __DEFAULT_OPTIONS = {
- disabled : false,
- selectable: true,
- mode: "client",
- unselectable: false,
- highlight: true,
- stylePrefix: "rf-pm-itm",
- itemStep: 20
- };
-
- var SELECT_ITEM = {
-
- /**
- *
- * @return {void}
- * */
- exec : function (item) {
- var mode = item.mode;
- if (mode == "server") {
- return this.execServer(item);
- } else if (mode == "ajax") {
- return this.execAjax(item);
- } else if (mode == "client" || mode == "none") {
- return this.execClient(item);
- } else {
- rf.log.error("SELECT_ITEM.exec : unknown mode (" + mode + ")");
- }
- },
-
- /**
- * @protected
- *
- * @return {Boolean} false
- * */
- execServer : function (item) {
- item.__changeState();
- rf.submitForm(this.__getParentForm(item));
-
- return false;
- },
-
- /**
- * @protected
- *
- * @return {Boolean} false
- * */
- execAjax : function (item) {
- var oldItem = item.__changeState();
- rf.ajax(item.__panelMenu().id, null, $.extend({}, item.options["ajax"], {}));
- item.__restoreState(oldItem);
-
- return true;
- },
-
- /**
- * @protected
- *
- * @return {undefined}
- * - false - if process has been terminated
- * - true - in other cases
- * */
- execClient : function (item) {
- var panelMenu = item.__rfPanelMenu();
- if (panelMenu.selectedItem()) {
- panelMenu.getItems()[panelMenu.selectedItem()].unselect();
- }
- panelMenu.selectedItem(item.itemName);
-
- item.__select();
-
- return item.__fireSelect();
- },
-
- /**
- * @private
- * */
- __getParentForm : function (item) {
- return $($(rf.getDomElement(item.id)).parents("form")[0]);
- }
- };
-
- rf.ui.PanelMenuItem = rf.BaseComponent.extendClass({
- // class name
- name:"PanelMenuItem",
-
- /**
- * @class PanelMenuItem
- * @name PanelMenuItem
- *
- * @constructor
- * @param {String} componentId - component id
- * @param {Hash} options - params
- * */
- init : function (componentId, options) {
- $super.constructor.call(this, componentId);
- this.attachToDom();
-
- this.options = $.extend(this.options, __DEFAULT_OPTIONS, options || {});
-
- this.mode = this.options.mode
- this.itemName = this.options.name
- this.__rfPanelMenu().getItems()[this.itemName] = this;
-
- // todo move it
- this.selectionClass = this.options.stylePrefix + "-sel";
- this.hoverClass = this.options.stylePrefix + "-hov";
-
- if (!this.options.disabled) {
- var item = this;
- if (this.options.highlight) {
- this.__item().bind("mouseenter", function() {
- item.highlight(true);
- });
- this.__item().bind("mouseleave", function() {
- item.highlight(false);
- });
- }
-
- if (this.options.selectable) {
- this.__header().bind("click", function() {
- if (item.__rfPanelMenu().selectedItem() == item.id) {
- if (item.options.unselectable) {
- return item.unselect();
- }
-
- // we shouldn't select one item several times
- } else {
- return item.select();
- }
- });
- }
- }
-
- item = this;
- $(this.__panelMenu()).ready(function () {
- item.__renderNestingLevel();
- });
-
- this.__addUserEventHandler("select");
- },
-
- /***************************** Public Methods ****************************************************************/
- highlight : function (highlight) {
- if (highlight && !this.selected()) {
- this.__header().addClass(this.hoverClass);
- } else {
- this.__header().removeClass(this.hoverClass);
- }
- },
-
- selected : function () {
- return this.__header().hasClass(this.selectionClass);
- },
-
- /**
- * @methodOf
- * @name PanelMenuItem#select
- *
- * TODO ...
- *
- * @return {void} TODO ...
- */
- select: function () {
- var continueProcess = this.__fireBeforeSelect();
- if (!continueProcess) {
- return false;
- }
-
- return SELECT_ITEM.exec(this)
- },
-
- /**
- * please, remove this method when client side ajax events will be added
- *
- * */
- onCompleteHandler : function () {
- SELECT_ITEM.execClient(this);
- },
-
- unselect: function () {
- var panelMenu = this.__rfPanelMenu();
- if (panelMenu.selectedItem() == this.itemName) {
- panelMenu.selectedItem(null);
- } else {
- rf.warn("You try unselect item (name=" + this.itemName + ") that isn't seleted")
- }
-
- this.__unselect();
-
- return this.__fireUnselect();
- },
-
- /***************************** Private Methods ****************************************************************/
- __rfParentItem : function () {
- var res = this.__item().parents(".rf-pm-gr")[0];
- if (!res) {
- res = this.__item().parents(".rf-pm-top-gr")[0];
- }
-
- if (!res) {
- res = this.__panelMenu();
- }
-
- return res ? rf.$(res) : null;
- },
-
- __getNestingLevel : function () {
- if (!this.nestingLevel) {
- var parentItem = this.__rfParentItem();
- if (parentItem && parentItem.__getNestingLevel) {
- this.nestingLevel = parentItem.__getNestingLevel() + 1;
- } else {
- this.nestingLevel = 0;
- }
- }
-
- return this.nestingLevel;
- },
-
- __renderNestingLevel : function () {
- this.__item().find("td").first().css("padding-left", this.options.itemStep * this.__getNestingLevel());
- },
-
- __panelMenu : function () {
- return this.__item().parents(".rf-pm")[0];
- },
-
- __rfPanelMenu : function () {
- return rf.$(this.__item().parents(".rf-pm")[0]);
- },
-
- __changeState : function () {
- return this.__rfPanelMenu().selectedItem(this.itemName);
- },
-
- __restoreState : function (state) {
- if (state) {
- this.__rfPanelMenu().selectedItem(state);
- }
- },
-
- __item : function () {
- return $(rf.getDomElement(this.id));
- },
-
- __header : function () {
- return this.__item();
- },
-
- __select: function () {
- this.__header().addClass(this.selectionClass);
- },
-
- __unselect: function () {
- this.__header().removeClass(this.selectionClass);
- },
-
- __fireBeforeSelect : function () {
- return new rf.Event.fireById(this.id, "beforeselect", {
- id: this.id
- });
- },
-
- __fireSelect : function () {
- return new rf.Event.fireById(this.id, "select", {
- id: this.id
- });
- },
-
- __fireUnselect : function () {
- return new rf.Event.fireById(this.id, "unselect", {
- id: this.id
- });
- },
-
- /**
- * @private
- * */
- __addUserEventHandler : function (name) {
- var handler = this.options["on" + name];
- if (handler) {
- rf.Event.bindById(this.id, name, handler);
- }
- },
-
- destroy: function () {
- delete this.__rfPanelMenu().getItems()[this.itemName];
- $super.destroy.call(this);
- }
- });
-
- // define super class link
- var $super = rf.ui.PanelMenuItem.$super;
-})(jQuery, RichFaces);
Deleted: branches/RF-8742-1/ui/output/ui/src/main/resources/META-INF/resources/org.richfaces/Tab.js
===================================================================
--- branches/RF-8742-1/ui/output/ui/src/main/resources/META-INF/resources/org.richfaces/Tab.js 2010-12-09 15:06:40 UTC (rev 20482)
+++ branches/RF-8742-1/ui/output/ui/src/main/resources/META-INF/resources/org.richfaces/Tab.js 2010-12-09 17:26:24 UTC (rev 20483)
@@ -1,139 +0,0 @@
-/*
- * JBoss, Home of Professional Open Source
- * Copyright ${year}, Red Hat, Inc. and individual contributors
- * by the @authors tag. See the copyright.txt in the distribution for a
- * full listing of individual contributors.
- *
- * This is free software; you can redistribute it and/or modify it
- * under the terms of the GNU Lesser General Public License as
- * published by the Free Software Foundation; either version 2.1 of
- * the License, or (at your option) any later version.
- *
- * This software is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
- * Lesser General Public License for more details.
- *
- * You should have received a copy of the GNU Lesser General Public
- * License along with this software; if not, write to the Free
- * Software Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA
- * 02110-1301 USA, or see the FSF site: http://www.fsf.org.
- */
-
-(function ($, rf) {
-
- rf.ui = rf.ui || {};
-
- rf.ui.Tab = rf.ui.TogglePanelItem.extendClass({
- // class name
- name:"Tab",
-
- /**
- * @class AccordionItem
- * @name AccordionItem
- *
- * @constructor
- * @param {String} componentId - component id
- * @param {Hash} options - params
- * */
- init : function (componentId, options) {
- $super.constructor.call(this, componentId, options);
- this.index = options["index"];
- this.getTogglePanel().getItems()[this.index] = this;
-
- //TODO - optimize this
- rf.Event.bindById(this.id + ":header:active", "click", this.__onHeaderClick, this);
- rf.Event.bindById(this.id + ":header:inactive", "click", this.__onHeaderClick, this)
- },
-
- /***************************** Public Methods ****************************************************************/
-
- __onHeaderClick : function (comp) {
- this.getTogglePanel().switchToItem(this.getName());
- },
-
- /**
- * @param state {string} = inactive | active | disabled
- * in that case looking header by css class appropriate to this state
- *
- * @return {jQuery Object}
- * */
- __header : function (state) {
- var res = $(rf.getDomElement(this.id + ":header"));
- if (state) {
- return $(rf.getDomElement(this.id + ":header:" + state));
- }
-
- return res;
- },
-
- /**
- * @return {jQuery Object}
- * */
- __content : function () {
- if (!this.__content_) {
- this.__content_ = $(rf.getDomElement(this.id + ":content"));
- }
- return this.__content_;
- },
-
- /**
- * @private
- *
- * used in TogglePanel
- * */
- __enter : function () {
-
- this.__content().show();
- this.__header("inactive").hide();
- this.__header("active").show();
-
- return this.__fireEnter();
- },
-
- getHeight : function (recalculate) {
- if (recalculate || !this.__height) {
- this.__height = $(rf.getDomElement(this.id)).outerHeight(true)
- }
-
- return this.__height;
- },
-
- /**
- * @private
- *
- * used in TogglePanel
- * */
- __leave : function () {
- var continueProcess = this.__fireLeave();
- if (!continueProcess) {
- return false;
- }
-
- this.__content().hide();
- this.__header("active").hide();
- this.__header("inactive").show();
-
- return true;
- },
-
- /***************************** Private Methods ********************************************************/
-
-
- destroy: function () {
- var parent = this.getTogglePanel();
- delete parent.getItems()[this.index];
-
- rf.Event.unbindById(this.id);
-
- //TODO - optimize
- rf.Event.unbindById(this.id + ":header:active");
- rf.Event.unbindById(this.id + ":header:inactive");
-
- $super.destroy.call(this);
- }
- });
-
- // define super class link
- var $super = rf.ui.Tab.$super;
-})(jQuery, RichFaces);
Deleted: branches/RF-8742-1/ui/output/ui/src/main/resources/META-INF/resources/org.richfaces/TabPanel.js
===================================================================
--- branches/RF-8742-1/ui/output/ui/src/main/resources/META-INF/resources/org.richfaces/TabPanel.js 2010-12-09 15:06:40 UTC (rev 20482)
+++ branches/RF-8742-1/ui/output/ui/src/main/resources/META-INF/resources/org.richfaces/TabPanel.js 2010-12-09 17:26:24 UTC (rev 20483)
@@ -1,46 +0,0 @@
-/*
- * JBoss, Home of Professional Open Source
- * Copyright ${year}, Red Hat, Inc. and individual contributors
- * by the @authors tag. See the copyright.txt in the distribution for a
- * full listing of individual contributors.
- *
- * This is free software; you can redistribute it and/or modify it
- * under the terms of the GNU Lesser General Public License as
- * published by the Free Software Foundation; either version 2.1 of
- * the License, or (at your option) any later version.
- *
- * This software is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
- * Lesser General Public License for more details.
- *
- * You should have received a copy of the GNU Lesser General Public
- * License along with this software; if not, write to the Free
- * Software Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA
- * 02110-1301 USA, or see the FSF site: http://www.fsf.org.
- */
-
-(function ($, rf) {
-
- rf.ui = rf.ui || {};
-
- rf.ui.TabPanel = rf.ui.TogglePanel.extendClass({
- // class name
- name:"TabPanel",
-
- /**
- * @class TabPanel
- * @name TabPanel
- *
- * @constructor
- * @param {String} componentId - component id
- * @param {Hash} options - params
- * */
- init : function (componentId, options) {
- rf.ui.TogglePanel.call(this, componentId, options);
- this.items = [];
-
- this.isKeepHeight = options["isKeepHeight"] || false
- }
- });
-})(jQuery, RichFaces);
Deleted: branches/RF-8742-1/ui/output/ui/src/main/resources/META-INF/resources/org.richfaces/TogglePanel.js
===================================================================
--- branches/RF-8742-1/ui/output/ui/src/main/resources/META-INF/resources/org.richfaces/TogglePanel.js 2010-12-09 15:06:40 UTC (rev 20482)
+++ branches/RF-8742-1/ui/output/ui/src/main/resources/META-INF/resources/org.richfaces/TogglePanel.js 2010-12-09 17:26:24 UTC (rev 20483)
@@ -1,433 +0,0 @@
-/*
- * JBoss, Home of Professional Open Source
- * Copyright ${year}, Red Hat, Inc. and individual contributors
- * by the @authors tag. See the copyright.txt in the distribution for a
- * full listing of individual contributors.
- *
- * This is free software; you can redistribute it and/or modify it
- * under the terms of the GNU Lesser General Public License as
- * published by the Free Software Foundation; either version 2.1 of
- * the License, or (at your option) any later version.
- *
- * This software is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
- * Lesser General Public License for more details.
- *
- * You should have received a copy of the GNU Lesser General Public
- * License along with this software; if not, write to the Free
- * Software Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA
- * 02110-1301 USA, or see the FSF site: http://www.fsf.org.
- */
-
-(function ($, rf) {
-
- rf.ui = rf.ui || {};
-
- /* SIMPLE INNER CLASS for handle switch operation*/
- function SwitchItems(comp) {
- this.comp = comp;
- }
-
- SwitchItems.prototype = {
-
- /**
- * @param {TogglePanelItem} oldPanel
- * @param {TogglePanelItem} newPanel
- *
- * @return {void}
- * */
- exec : function (oldPanel, newPanel) {
- if (newPanel.switchMode == "server") {
- return this.execServer(oldPanel, newPanel);
- } else if (newPanel.switchMode == "ajax") {
- return this.execAjax(oldPanel, newPanel);
- } else if (newPanel.switchMode == "client") {
- return this.execClient(oldPanel, newPanel);
- } else {
- rf.log.error("SwitchItems.exec : unknown switchMode (" + this.comp.switchMode + ")");
- }
- },
-
- /**
- * @protected
- * @param {TogglePanelItem} oldPanel
- * @param {TogglePanelItem} newPanel
- *
- * @return {Boolean} false
- * */
- execServer : function (oldPanel, newPanel) {
- if (oldPanel) {
- var continueProcess = oldPanel.__leave();
- if (!continueProcess) {
- return false;
- }
- }
-
- this.__setActiveItem(newPanel.getName());
-
- rf.submitForm(this.__getParentForm());
-
- return false;
- },
-
- /**
- * @protected
- * @param {TogglePanelItem} oldPanel
- * @param {TogglePanelItem} newPanel
- *
- * @return {Boolean} false
- * */
- execAjax : function (oldPanel, newPanel) {
- var options = $.extend({}, this.comp.options["ajax"], {}/*this.getParameters(newPanel)*/);
-
- this.__setActiveItem(newPanel.getName());
- rf.ajax(this.comp.id, null, options);
-
- if (oldPanel) {
- this.__setActiveItem(oldPanel.getName());
- }
-
- return false;
- },
-
- /**
- * @protected
- * @param {TogglePanelItem} oldPanel
- * @param {TogglePanelItem} newPanel
- *
- * @return {undefined}
- * - false - if process has been terminated
- * - true - in other cases
- * */
- execClient : function (oldPanel, newPanel) {
- if (oldPanel) {
- var continueProcess = oldPanel.__leave();
- if (!continueProcess) {
- return false;
- }
- }
-
- this.__setActiveItem(newPanel.getName());
-
- newPanel.__enter();
- this.comp.__fireItemChange(oldPanel, newPanel);
-
- return true;
- },
-
- /**
- * @private
- * */
- __getParentForm : function () {
- return $(rf.getDomElement(this.comp.id)).parents('form:first');
- },
-
- /**
- * @private
- * */
- __setActiveItem : function (name) {
- rf.getDomElement(this.__getValueInputId()).value = name;
- this.comp.activeItem = name;
- },
-
- /**
- * @private
- * */
- __getValueInputId: function () {
- return this.comp.id + "-value"
- }
- };
-
- /**
- * @class TogglePanel
- * @name TogglePanel
- *
- * @constructor
- * @param {String} componentId - component id
- * @param {Hash} options - params
- * */
- rf.ui.TogglePanel = rf.BaseComponent.extendClass({
-
- // class name
- name:"TogglePanel",
-
- init : function (componentId, options) {
- $super.constructor.call(this, componentId);
- this.attachToDom();
-
- this.options = $.extend(this.options, options || {});
- this.activeItem = this.options.activeItem;
- this.items = this.options.items;
-
- this.__addUserEventHandler("itemchange");
- this.__addUserEventHandler("beforeitemchange");
- },
-
- /***************************** Public Methods ****************************************************************/
-
- /**
- * @methodOf
- *
- * @name TogglePanel#getSelectItem
- *
- * @return {String} name of current selected panel item
- */
- getSelectItem: function () {
- return this.activeItem;
- },
-
- /**
- * @methodOf
- * @name TogglePanel#switchToItem
- *
- * @param {String} name - panel item name to switch
- * we can use meta names @first, @prev, @next and @last
- * @return {Boolean} - false if something wrong and true if all is ok
- */
- switchToItem: function (name) {
- var newPanel = this.getNextItem(name);
- if (newPanel == null) {
- rf.log.warn("TogglePanel.switchToItems(" + name + "): item with name '" + name + "' not found");
- return false;
- }
-
- var oldPanel = this.__getItemByName(this.getSelectItem());
-
- var continueProcess = this.__fireBeforeItemChange(oldPanel, newPanel);
- if (!continueProcess) {
- rf.log.warn("TogglePanel.switchToItems(" + name + "): switch has been canceled by beforeItemChange event");
- return false
- }
-
- return new SwitchItems(this).exec(oldPanel, newPanel);
- },
-
- /**
- * @methodOf
- * @name TogglePanel#getNextItem
- *
- * @param {String} name of TogglePanelItem or meta name (@first | @prev | @next | @last)
- * @return {TogglePanelItem} null if item not found
- */
- getNextItem : function (name) {
- if (name) {
- var newItemIndex = this.__ITEMS_META_NAMES[name];
- if (newItemIndex) {
- return this.__getItem(newItemIndex(this));
- } else {
- return this.__getItemByName(name);
- }
- } else {
- return this.__getItemByName(this.nextItem());
- }
- },
-
- /**
- * please, remove this method when client side ajax events will be added
- *
- * */
- onCompleteHandler : function (newItemName) {
- var oldItem = this.__getItemByName(this.activeItem);
- var newItem = this.__getItemByName(newItemName);
-
- // Don't do like this and remove it ASAP
- new SwitchItems(this).execClient(oldItem, newItem);
- },
-
- /**
- * @methodOf
- * @name TogglePanel#getItems
- *
- * @return {TogglePanelItem[]} all defined panel items
- */
- getItems : function () {
- return this.items;
- },
-
- /**
- * @methodOf
- * @name TogglePanel#getItemsNames
- *
- * @return {String[]} names of all defined items
- */
- getItemsNames: function () {
- var res = [];
- for (var item in this.items) {
- res.push(this.items[item].getName());
- }
-
- return res;
- },
-
- /**
- * @methodOf
- * @name TogglePanel#nextItem
- *
- * @param {String} [itemName = activeItem]
- * @return {String} name of next panel item
- */
- nextItem: function (itemName) {
- var itemIndex = this.__getItemIndex(itemName || this.activeItem);
- if (itemIndex == -1) {
- return null;
- }
-
- return this.__getItemName(itemIndex + 1);
- },
-
- /**
- * @methodOf
- * @name TogglePanel#firstItem
- *
- * @return {String} name of first panel item
- */
- firstItem: function () {
- return this.__getItemName(0);
- },
-
- /**
- * @methodOf
- * @name TogglePanel#lastItem
- *
- * @return {String} name of last panel item
- */
- lastItem: function () {
- return this.__getItemName(this.items.length - 1);
- },
-
- /**
- * @methodOf
- * @name TogglePanel#prevItem
- *
- * @param {String} itemName
- * @return {String} name of prev panel item
- * null if it is first item
- */
- prevItem: function (itemName) {
- var itemIndex = this.__getItemIndex(itemName || this.activeItem);
- if (!this.options.cycledSwitching && itemIndex < 1) {
- return null;
- }
-
- return this.__getItemName(itemIndex - 1);
- },
-
- /////////////////////////////////////////////////////////////////////////////////
- //// Private
- /////////////////////////////////////////////////////////////////////////////////
-
- /********************* Methods *************************/
-
- __ITEMS_META_NAMES : (function () {
- function goFrom (comp, ind, step) {
- var res = ind;
- while ((!comp.items[res] || comp.items[res].disabled) && res < comp.items.length && res > 0) {
- res += step;
- }
- return res;
- }
-
-
- return {
- "@first" : function (comp) {
- return goFrom(comp, 0, 1);
- },
-
- "@prev" : function (comp) {
- return goFrom(comp, parseInt(comp.__getItemIndex(comp.activeItem)) - 1 , -1);
- },
-
- "@next" : function (comp) {
- return goFrom(comp, parseInt(comp.__getItemIndex(comp.activeItem)) + 1 , 1);
- },
-
- "@last" : function (comp) {
- return goFrom(comp, comp.items.length - 1, -1);
- }
- }
- })(),
-
- /**
- * @private
- * */
- __getItemIndex : function (itemName) {
- for (var i in this.items) {
- if (!this.items[i].disabled && this.items[i].getName() === itemName) {
- return parseInt(i);
- }
- }
-
- rf.log.info("TogglePanel.getItemIndex: item with name '" + itemName + "' not found");
- return -1;
- },
-
- /**
- * @private
- * */
- __addUserEventHandler : function (name) {
- var handler = this.options["on" + name];
- if (handler) {
- rf.Event.bindById(this.id, name, handler);
- }
- },
-
- /**
- * @private
- * @param {Number} index - array index
- *
- * @return {TogglePanelItem}
- * null - if item not found
- * */
- __getItem : function (index) {
- if (this.options.cycledSwitching) {
- var size = this.items.length;
- return this.items[(size + index) % size]
- } else if (index >= 0 && index < this.items.length) {
- return this.items[index]
- } else {
- return null;
- }
- },
-
- __getItemByName : function (name) {
- return this.__getItem(this.__getItemIndex(name));
- },
-
- __getItemName : function (index) {
- var item = this.__getItem(index);
- if (item == null) {
- return null;
- }
-
- return item.getName();
- },
-
- /**
- * Fire Concealable Event
- * */
-
- __fireItemChange : function (oldItem, newItem) {
- return new rf.Event.fireById(this.id, "itemchange", {
- id: this.id,
- oldItem : oldItem,
- newItem : newItem
- });
- },
-
- __fireBeforeItemChange : function (oldItem, newItem) {
- return rf.Event.fireById(this.id, "beforeitemchange", {
- id: this.id,
- oldItem : oldItem,
- newItem : newItem
- });
- },
-
- destroy: function () {
- $super.destroy.call(this);
- }
- });
-
- // define super class link
- var $super = rf.ui.TogglePanel.$super;
-})(jQuery, RichFaces);
Deleted: branches/RF-8742-1/ui/output/ui/src/main/resources/META-INF/resources/org.richfaces/TogglePanelItem.js
===================================================================
--- branches/RF-8742-1/ui/output/ui/src/main/resources/META-INF/resources/org.richfaces/TogglePanelItem.js 2010-12-09 15:06:40 UTC (rev 20482)
+++ branches/RF-8742-1/ui/output/ui/src/main/resources/META-INF/resources/org.richfaces/TogglePanelItem.js 2010-12-09 17:26:24 UTC (rev 20483)
@@ -1,120 +0,0 @@
-/*
- * JBoss, Home of Professional Open Source
- * Copyright ${year}, Red Hat, Inc. and individual contributors
- * by the @authors tag. See the copyright.txt in the distribution for a
- * full listing of individual contributors.
- *
- * This is free software; you can redistribute it and/or modify it
- * under the terms of the GNU Lesser General Public License as
- * published by the Free Software Foundation; either version 2.1 of
- * the License, or (at your option) any later version.
- *
- * This software is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
- * Lesser General Public License for more details.
- *
- * You should have received a copy of the GNU Lesser General Public
- * License along with this software; if not, write to the Free
- * Software Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA
- * 02110-1301 USA, or see the FSF site: http://www.fsf.org.
- */
-
-(function ($, rf) {
-
- rf.ui = rf.ui || {};
-
- rf.ui.TogglePanelItem = rf.BaseComponent.extendClass({
-
- // class name
- name:"TogglePanelItem",
-
- init : function (componentId, options) {
- // call constructor of parent class
- $super.constructor.call(this, componentId);
- this.attachToDom();
-
- this.options = $.extend(this.options, options || {});
- this.name = this.options.name;
- this.togglePanelId = this.options.togglePanelId;
- this.switchMode = this.options.switchMode;
- this.disabled = this.options.disabled || false;
- },
-
- /***************************** Public Methods *****************************************************************/
- /**
- * @methodOf TogglePanelItem
- * @name TogglePanelItem#getName
- *
- * @return {String} panel item name
- */
- getName: function () {
- return this.options.name;
- },
-
- /**
- * @methodOf
- * @name TogglePanelItem#getTogglePanel
- *
- * @return {TogglePanel} parent TogglePanel
- * */
- getTogglePanel : function () {
- return rf.$(this.togglePanelId);
- },
-
- /**
- * @methodOf
- * @name TogglePanelItem#isSelected
- *
- * @return {Boolean} true if this panel item is selected in the parent toggle panel
- * */
- isSelected : function () {
- return this.getName() == this.getTogglePanel().getSelectItem();
- },
-
-
- /***************************** Private Methods ****************************************************************/
-
- /**
- * @private
- *
- * used in TogglePanel
- * */
- __enter : function () {
- rf.getDomElement(this.id).style.display = "block";
-
- return this.__fireEnter();
- },
-
- /**
- * @private
- *
- * used in TogglePanel
- * */
- __leave : function () {
- var continueProcess = this.__fireLeave();
- if (!continueProcess) {
- return false;
- }
-
- rf.getDomElement(this.id).style.display = "none";
- return true;
- },
-
- __fireLeave : function () {
- return rf.Event.fireById(this.id, "__leave");
- },
-
- __fireEnter : function () {
- return rf.Event.fireById(this.id, "__enter");
- },
-
- // class stuff
- destroy: function () {
- $super.destroy.call(this);
- }
- });
-
- // define super class link
- var $super = rf.ui.TogglePanelItem.$super;
-})(jQuery, RichFaces);
Deleted: branches/RF-8742-1/ui/output/ui/src/main/resources/META-INF/resources/org.richfaces/Tooltip.js
===================================================================
--- branches/RF-8742-1/ui/output/ui/src/main/resources/META-INF/resources/org.richfaces/Tooltip.js 2010-12-09 15:06:40 UTC (rev 20482)
+++ branches/RF-8742-1/ui/output/ui/src/main/resources/META-INF/resources/org.richfaces/Tooltip.js 2010-12-09 17:26:24 UTC (rev 20483)
@@ -1,295 +0,0 @@
-/*
- * JBoss, Home of Professional Open Source
- * Copyright ${year}, Red Hat, Inc. and individual contributors
- * by the @authors tag. See the copyright.txt in the distribution for a
- * full listing of individual contributors.
- *
- * This is free software; you can redistribute it and/or modify it
- * under the terms of the GNU Lesser General Public License as
- * published by the Free Software Foundation; either version 2.1 of
- * the License, or (at your option) any later version.
- *
- * This software is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
- * Lesser General Public License for more details.
- *
- * You should have received a copy of the GNU Lesser General Public
- * License along with this software; if not, write to the Free
- * Software Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA
- * 02110-1301 USA, or see the FSF site: http://www.fsf.org.
- */
-
-
-(function ($, rf) {
-
- rf.ui = rf.ui || {};
-
- rf.ui.TooltipDirection = {
- topRight : "topRight",
- topLeft : "topLeft",
- bottomRight : "bottomRight",
- bottomLeft : "bottomLeft",
- auto : "auto",
-
- DEFAULT: "bottomRight"
- };
- var TooltipDirection = rf.ui.TooltipDirection;
-
- rf.ui.TooltipMode = {
- client : "client",
- ajax : "ajax",
-
- DEFAULT: "client"
- };
- var TooltipMode = rf.ui.TooltipMode;
-
- var DEFAULT_OPTIONS = {
- direction : TooltipDirection.DEFAULT,
- attached : true,
- offset : [],
- mode : TooltipMode.DEFAULT,
- disabled : false,
- hideDelay : 0,
- hideEvent : "mouseleave",
- showDelay : 0,
- showEvent : "mouseenter",
- followMouse : true
- };
-
- var SHOW_ACTION = {
-
- /**
- *
- * @return {void}
- * */
- exec : function (tooltip, event) {
- var mode = tooltip.mode;
- if (mode == TooltipMode.ajax) {
- return this.execAjax(tooltip, event);
- } else if (mode == TooltipMode.client) {
- return this.execClient(tooltip, event);
- } else {
- rf.log.error("SHOW_ACTION.exec : unknown mode (" + mode + ")");
- }
- },
-
- /**
- * @protected
- *
- * @return {Boolean} false
- * */
- execAjax : function (tooltip, event) {
- tooltip.__loading().show();
- tooltip.__content().hide();
- tooltip.__show(event);
-
- rf.ajax(tooltip.id, null, $.extend({}, tooltip.options["ajax"], {}));
-
- return true;
- },
-
- /**
- * @protected
- *
- * @return {undefined}
- * - false - if process has been terminated
- * - true - in other cases
- * */
- execClient : function (tooltip, event) {
- tooltip.__show(event);
-
- return tooltip.__fireShow();
- }
- };
-
- rf.ui.Tooltip = rf.BaseComponent.extendClass({
- // class name
- name:"Tooltip",
-
- /**
- * @class Tooltip
- * @name Tooltip
- *
- * @constructor
- * @param {String} componentId - component id
- * @param {Hash} options - params
- * */
- init : function (componentId, options) {
- $super.constructor.call(this, componentId);
- this.options = $.extend(this.options, DEFAULT_OPTIONS, options || {});
- this.attachToDom();
-
- this.mode = this.options.mode;
- this.target = this.options.target;
-
- this.__addUserEventHandler("hide");
- this.__addUserEventHandler("show");
- this.__addUserEventHandler("beforehide");
- this.__addUserEventHandler("beforeshow");
-
- this.popup = new RichFaces.ui.Popup(this.id, {
- attachTo: this.target,
- attachToBody: false,
- positionType: "TOOLTIP",
- positionOffset: [200,200]
- });
-
- var tooltip = this;
- function mouseMoveHandler(event) {
- tooltip.popup.show(event);
- }
-
- $(document.getElementById(this.target)).bind(this.options.showEvent, function (event) {
- tooltip.show(event);
-
- if (tooltip.options.followMouse) {
- $(document.getElementById(tooltip.target)).bind("mousemove", mouseMoveHandler);
- }
- });
-
- $(document.getElementById(tooltip.target)).bind(this.options.hideEvent, function (event) {
- tooltip.hide();
-
- if (tooltip.options.followMouse) {
- $(document.getElementById(tooltip.target)).unbind("mousemove", mouseMoveHandler);
- }
- });
-
- },
-
- /***************************** Public Methods ****************************************************************/
- /**
- * @methodOf
- * @name PanelMenuItem#hide
- *
- * TODO ...
- *
- * @return {void} TODO ...
- */
- hide: function () {
- var continueProcess = this.__fireBeforeHide();
- if (!continueProcess) {
- return false;
- }
-
- this.__hide();
-
- return this.__fireHide()
- },
-
- /**
- * @private
- * @return {void} TODO ...
- */
- __hide: function () {
- var tooltip = this;
- this.__delay(this.options.hideDelay, function () {
- tooltip.popup.hide();
- });
- },
-
- /**
- * @methodOf
- * @name PanelMenuItem#show
- *
- * TODO ...
- *
- * @return {void} TODO ...
- */
- show: function (event) {
- var continueProcess = this.__fireBeforeShow();
- if (!continueProcess) {
- return false;
- }
-
- SHOW_ACTION.exec(this, event);
- },
-
- onCompleteHandler : function () {
- this.__content().show();
- this.__loading().hide();
-
- return this.__fireShow();
- },
-
- /**
- * @private
- * @return {void} TODO ...
- */
- __show: function (event) {
- var tooltip = this;
- this.__delay(this.options.showDelay, function () {
- tooltip.popup.show(event);
- });
- },
-
- /***************************** Private Methods ****************************************************************/
- __delay : function (delay, action) {
- if (delay > 0) {
- var hidingTimerHandle = window.setTimeout(function() {
- action();
-
- if (hidingTimerHandle) {
- window.clearTimeout(hidingTimerHandle);
- hidingTimerHandle = undefined;
- }
- }, delay);
- } else {
- action();
- }
- },
-
- __detectAncestorNode: function(leaf, element) {
- // Return true if "element" is "leaf" or one of its parents
- var node = leaf;
- while (node != null && node != element) {
- node = node.parentNode;
- }
- return (node != null);
- },
-
- __loading : function () {
- return $(document.getElementById(this.id + ":loading"));
- },
-
- __content : function () {
- return $(document.getElementById(this.id + "@content"));
- },
-
- __fireHide : function () {
- return rf.Event.fireById(this.id, "hide", { id: this.id });
- },
-
- __fireShow : function () {
- return rf.Event.fireById(this.id, "show", { id: this.id });
- },
-
- __fireBeforeHide : function () {
- return rf.Event.fireById(this.id, "beforehide", { id: this.id });
- },
-
- __fireBeforeShow : function () {
- return rf.Event.fireById(this.id, "beforeshow", { id: this.id });
- },
-
-
-
- /**
- * @private
- * */
- __addUserEventHandler : function (name) {
- var handler = this.options["on" + name];
- if (handler) {
- rf.Event.bindById(this.id, name, handler);
- }
- },
-
- destroy: function () {
- $super.destroy.call(this);
- }
- });
-
- // define super class link
- var $super = rf.ui.Tooltip.$super;
-})(jQuery, RichFaces);
Copied: branches/RF-8742-1/ui/output/ui/src/main/resources/META-INF/resources/org.richfaces/accordion.js (from rev 20482, trunk/ui/output/ui/src/main/resources/META-INF/resources/org.richfaces/accordion.js)
===================================================================
--- branches/RF-8742-1/ui/output/ui/src/main/resources/META-INF/resources/org.richfaces/accordion.js (rev 0)
+++ branches/RF-8742-1/ui/output/ui/src/main/resources/META-INF/resources/org.richfaces/accordion.js 2010-12-09 17:26:24 UTC (rev 20483)
@@ -0,0 +1,75 @@
+/*
+ * JBoss, Home of Professional Open Source
+ * Copyright ${year}, Red Hat, Inc. and individual contributors
+ * by the @authors tag. See the copyright.txt in the distribution for a
+ * full listing of individual contributors.
+ *
+ * This is free software; you can redistribute it and/or modify it
+ * under the terms of the GNU Lesser General Public License as
+ * published by the Free Software Foundation; either version 2.1 of
+ * the License, or (at your option) any later version.
+ *
+ * This software is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
+ * Lesser General Public License for more details.
+ *
+ * You should have received a copy of the GNU Lesser General Public
+ * License along with this software; if not, write to the Free
+ * Software Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA
+ * 02110-1301 USA, or see the FSF site: http://www.fsf.org.
+ */
+
+(function ($, rf) {
+
+ rf.ui = rf.ui || {};
+
+ rf.ui.Accordion = rf.ui.TogglePanel.extendClass({
+ // class name
+ name:"Accordion",
+
+ /**
+ * @class Accordion
+ * @name Accordion
+ *
+ * @constructor
+ * @param {String} componentId - component id
+ * @param {Hash} options - params
+ * */
+ init : function (componentId, options) {
+ $super.constructor.call(this, componentId, options);
+ this.items = [];
+
+ this.isKeepHeight = options["isKeepHeight"] || false
+ },
+
+ /***************************** Public Methods ****************************************************************/
+
+ getHeight : function (recalculate) {
+ if (recalculate || !this.__height) {
+ this.__height = $(rf.getDomElement(this.id)).outerHeight(true)
+ }
+
+ return this.__height;
+ },
+
+ getInnerHeight : function (recalculate) {
+ if (recalculate || !this.__innerHeight) {
+ this.__innerHeight = $(rf.getDomElement(this.id)).innerHeight(true)
+ }
+
+ return this.__innerHeight;
+ },
+
+ /***************************** Private Methods ********************************************************/
+
+
+ destroy: function () {
+ rf.Event.unbindById(this.id, "." + this.namespace);
+ $super.destroy.call(this);
+ }
+ });
+
+ // define super class link
+ var $super = rf.ui.Accordion.$super;
+})(jQuery, RichFaces);
Copied: branches/RF-8742-1/ui/output/ui/src/main/resources/META-INF/resources/org.richfaces/accordionItem.js (from rev 20482, trunk/ui/output/ui/src/main/resources/META-INF/resources/org.richfaces/accordionItem.js)
===================================================================
--- branches/RF-8742-1/ui/output/ui/src/main/resources/META-INF/resources/org.richfaces/accordionItem.js (rev 0)
+++ branches/RF-8742-1/ui/output/ui/src/main/resources/META-INF/resources/org.richfaces/accordionItem.js 2010-12-09 17:26:24 UTC (rev 20483)
@@ -0,0 +1,158 @@
+/*
+ * JBoss, Home of Professional Open Source
+ * Copyright ${year}, Red Hat, Inc. and individual contributors
+ * by the @authors tag. See the copyright.txt in the distribution for a
+ * full listing of individual contributors.
+ *
+ * This is free software; you can redistribute it and/or modify it
+ * under the terms of the GNU Lesser General Public License as
+ * published by the Free Software Foundation; either version 2.1 of
+ * the License, or (at your option) any later version.
+ *
+ * This software is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
+ * Lesser General Public License for more details.
+ *
+ * You should have received a copy of the GNU Lesser General Public
+ * License along with this software; if not, write to the Free
+ * Software Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA
+ * 02110-1301 USA, or see the FSF site: http://www.fsf.org.
+ */
+
+(function ($, rf) {
+
+ rf.ui = rf.ui || {};
+
+ rf.ui.AccordionItem = rf.ui.TogglePanelItem.extendClass({
+ // class name
+ name:"AccordionItem",
+
+ /**
+ * @class AccordionItem
+ * @name AccordionItem
+ *
+ * @constructor
+ * @param {String} componentId - component id
+ * @param {Hash} options - params
+ * */
+ init : function (componentId, options) {
+ $super.constructor.call(this, componentId, options);
+ this.index = options["index"];
+ this.getTogglePanel().getItems()[this.index] = this;
+
+ if (!this.disabled) {
+ rf.Event.bindById(this.id + ":header", "click", this.__onHeaderClick, this);
+ }
+
+ if (this.isSelected()) {
+ var item = this;
+ $(document).ready(function () {
+ item.__fitToHeight(item.getTogglePanel());
+ });
+ }
+ },
+
+ /***************************** Public Methods ****************************************************************/
+
+ __onHeaderClick : function (comp) {
+ this.getTogglePanel().switchToItem(this.getName());
+ },
+
+ /**
+ * @param state {string} = inactive | active | disabled
+ * in that case looking header by css class appropriate to this state
+ *
+ * @return {jQuery Object}
+ * */
+ __header : function (state) {
+ var res = $(rf.getDomElement(this.id + ":header"));
+ if (state) {
+ return res.find(".rf-ac-itm-hdr-" + state);
+ }
+
+ return res;
+ },
+
+ /**
+ * @return {jQuery Object}
+ * */
+ __content : function () {
+ if (!this.__content_) {
+ this.__content_ = $(rf.getDomElement(this.id + ":content"));
+ }
+ return this.__content_;
+ },
+
+ /**
+ * @private
+ *
+ * used in TogglePanel
+ * */
+ __enter : function () {
+ var parentPanel = this.getTogglePanel();
+ if (parentPanel.isKeepHeight) {
+ this.__content().hide(); // TODO ?
+ this.__fitToHeight(parentPanel);
+ }
+
+ this.__content().show();
+ this.__header("inact").hide();
+ this.__header("act").show();
+
+ return this.__fireEnter();
+ },
+
+ __fitToHeight : function (parentPanel) {
+ var h = parentPanel.getInnerHeight();
+
+ var items = parentPanel.getItems();
+ for (var i in items) {
+ h -= items[i].__header().outerHeight();
+ }
+
+ this.__content().height(h - 20); // 20 it is padding top and bottom
+ },
+
+ getHeight : function (recalculate) {
+ if (recalculate || !this.__height) {
+ this.__height = $(rf.getDomElement(this.id)).outerHeight(true)
+ }
+
+ return this.__height;
+ },
+
+ /**
+ * @private
+ *
+ * used in TogglePanel
+ * */
+ __leave : function () {
+ var continueProcess = this.__fireLeave();
+ if (!continueProcess) {
+ return false;
+ }
+
+ this.__content().hide();
+ this.__header("act").hide();
+ this.__header("inact").show();
+
+ return true;
+ },
+
+ /***************************** Private Methods ********************************************************/
+
+
+ destroy: function () {
+ var parent = this.getTogglePanel();
+ delete parent.getItems()[this.index];
+
+ rf.Event.unbindById(this.id, "."+this.namespace);
+
+ $super.destroy.call(this);
+ }
+ });
+
+ // define super class link
+ var $super = rf.ui.AccordionItem.$super;
+})(jQuery, RichFaces);
Copied: branches/RF-8742-1/ui/output/ui/src/main/resources/META-INF/resources/org.richfaces/collapsiblePanel.js (from rev 20482, trunk/ui/output/ui/src/main/resources/META-INF/resources/org.richfaces/collapsiblePanel.js)
===================================================================
--- branches/RF-8742-1/ui/output/ui/src/main/resources/META-INF/resources/org.richfaces/collapsiblePanel.js (rev 0)
+++ branches/RF-8742-1/ui/output/ui/src/main/resources/META-INF/resources/org.richfaces/collapsiblePanel.js 2010-12-09 17:26:24 UTC (rev 20483)
@@ -0,0 +1,82 @@
+/*
+ * JBoss, Home of Professional Open Source
+ * Copyright ${year}, Red Hat, Inc. and individual contributors
+ * by the @authors tag. See the copyright.txt in the distribution for a
+ * full listing of individual contributors.
+ *
+ * This is free software; you can redistribute it and/or modify it
+ * under the terms of the GNU Lesser General Public License as
+ * published by the Free Software Foundation; either version 2.1 of
+ * the License, or (at your option) any later version.
+ *
+ * This software is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
+ * Lesser General Public License for more details.
+ *
+ * You should have received a copy of the GNU Lesser General Public
+ * License along with this software; if not, write to the Free
+ * Software Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA
+ * 02110-1301 USA, or see the FSF site: http://www.fsf.org.
+ */
+
+(function ($, rf) {
+
+ rf.ui = rf.ui || {};
+
+ rf.ui.CollapsiblePanel = rf.ui.TogglePanel.extendClass({
+
+ name:"CollapsiblePanel",
+
+ /**
+ * @class CollapsiblePanel
+ * @name CollapsiblePanel
+ *
+ * @constructor
+ * @param {String} componentId - component id
+ * @param {Hash} options - params
+ * */
+ init : function (componentId, options) {
+ rf.ui.TogglePanel.call(this, componentId, options);
+ this.switchMode = options.switchMode;
+
+ this.__addUserEventHandler("beforeswitch");
+ this.__addUserEventHandler("switch");
+
+ this.items = [
+ new RichFaces.ui.CollapsiblePanelItem(
+ this.id + ":content", {"index":0, "togglePanelId":this.id, "switchMode":this.switchMode, "name":"true"}),
+
+ new RichFaces.ui.CollapsiblePanelItem(
+ this.id + ":empty", {"index":1, "togglePanelId":this.id, "switchMode":this.switchMode, "name":"false"})
+ ];
+ this.options.cycledSwitching = true;
+
+ rf.Event.bindById(this.id + ":header", "click", this.__onHeaderClick, this)
+ },
+
+ switchPanel : function (to) {
+ this.switchToItem(to || "@next");
+ },
+
+ /***************************** Private Methods ********************************************************/
+
+ __onHeaderClick : function () {
+ this.switchToItem("@next");
+ },
+
+ __fireItemChange : function (oldItem, newItem) {
+ return new rf.Event.fireById(this.id, "switch", {
+ id: this.id,
+ isExpanded : newItem.getName()
+ });
+ },
+
+ __fireBeforeItemChange : function (oldItem, newItem) {
+ return rf.Event.fireById(this.id, "beforeswitch", {
+ id: this.id,
+ isExpanded : newItem.getName()
+ });
+ }
+ });
+})(jQuery, RichFaces);
Copied: branches/RF-8742-1/ui/output/ui/src/main/resources/META-INF/resources/org.richfaces/collapsiblePanelItem.js (from rev 20482, trunk/ui/output/ui/src/main/resources/META-INF/resources/org.richfaces/collapsiblePanelItem.js)
===================================================================
--- branches/RF-8742-1/ui/output/ui/src/main/resources/META-INF/resources/org.richfaces/collapsiblePanelItem.js (rev 0)
+++ branches/RF-8742-1/ui/output/ui/src/main/resources/META-INF/resources/org.richfaces/collapsiblePanelItem.js 2010-12-09 17:26:24 UTC (rev 20483)
@@ -0,0 +1,60 @@
+/*
+ * JBoss, Home of Professional Open Source
+ * Copyright ${year}, Red Hat, Inc. and individual contributors
+ * by the @authors tag. See the copyright.txt in the distribution for a
+ * full listing of individual contributors.
+ *
+ * This is free software; you can redistribute it and/or modify it
+ * under the terms of the GNU Lesser General Public License as
+ * published by the Free Software Foundation; either version 2.1 of
+ * the License, or (at your option) any later version.
+ *
+ * This software is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
+ * Lesser General Public License for more details.
+ *
+ * You should have received a copy of the GNU Lesser General Public
+ * License along with this software; if not, write to the Free
+ * Software Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA
+ * 02110-1301 USA, or see the FSF site: http://www.fsf.org.
+ */
+
+(function ($, rf) {
+
+ rf.ui = rf.ui || {};
+
+ rf.ui.CollapsiblePanelItem = rf.ui.TogglePanelItem.extendClass({
+
+ init : function (componentId, options) {
+ rf.ui.TogglePanelItem.call(this, componentId, options);
+ },
+
+ __enter : function () {
+ rf.getDomElement(this.id).style.display = "block";
+ this.__header(this.__state()).show();
+
+ return true;
+ },
+
+ __leave : function () {
+ rf.getDomElement(this.id).style.display = "none";
+ this.__header(this.__state()).hide();
+
+ return true;
+ },
+
+ __state : function () {
+ return this.getName() === "true" ? "exp" : "colps";
+ },
+
+ __header : function (state) {
+ var res = $(rf.getDomElement(this.togglePanelId + ":header"));
+ if (state) {
+ return res.find(".rf-cp-hdr-" + state);
+ }
+
+ return res;
+ }
+ });
+})(jQuery, RichFaces);
Modified: branches/RF-8742-1/ui/output/ui/src/main/resources/META-INF/resources/org.richfaces/dropdownmenu.ecss
===================================================================
--- branches/RF-8742-1/ui/output/ui/src/main/resources/META-INF/resources/org.richfaces/dropdownmenu.ecss 2010-12-09 15:06:40 UTC (rev 20482)
+++ branches/RF-8742-1/ui/output/ui/src/main/resources/META-INF/resources/org.richfaces/dropdownmenu.ecss 2010-12-09 17:26:24 UTC (rev 20483)
@@ -1,5 +1,5 @@
-.rf-ddm-lbl, .rf-ddm-lbl-dis {
- font-family:Arial, Verdana, sans-serif;
+.rf-ddm-lbl, .rf-ddm-lbl-dis {
+ font-family: '#{richSkin.headerFamilyFont}';
font-size:11px;
position:relative;
}
@@ -25,8 +25,9 @@
border:1px solid; /*#bfbfc0*/ /*panelBorderColor*/
border-color: '#{richSkin.panelBorderColor}';
background-color: '#{richSkin.additionalBackgroundColor}'; /*#e7f2fb;/ /*additionalBackgroundColor*/
- min-width:250px;
+ min-width:250px;
position:absolute;
+ z-index:10;
}
.rf-ddm-sublst {
position:absolute;
Modified: branches/RF-8742-1/ui/output/ui/src/main/resources/META-INF/resources/org.richfaces/menu.js
===================================================================
--- branches/RF-8742-1/ui/output/ui/src/main/resources/META-INF/resources/org.richfaces/menu.js 2010-12-09 15:06:40 UTC (rev 20482)
+++ branches/RF-8742-1/ui/output/ui/src/main/resources/META-INF/resources/org.richfaces/menu.js 2010-12-09 17:26:24 UTC (rev 20483)
@@ -6,7 +6,7 @@
attachToBody: false,
positionOffset: [0, 0],
showDelay: 50,
- hideDelay: 800,
+ hideDelay: 300,
verticalOffset: 0,
horisantalOffset: 0,
showEvent: 'mouseover',
@@ -81,8 +81,8 @@
},
processItem: function(item) {
- if (item && item.attr('id') && !this.__isDisabled(item) && this.__isGroup(item)) {
- this.invokeEvent("itemclick", rf.getDomElement(this.id), null);
+ if (item && item.attr('id') && !this.__isDisabled(item) && !this.__isGroup(item)) {
+ this.invokeEvent("itemclick", rf.getDomElement(this.id), null);
this.hidePopup();
}
},
Copied: branches/RF-8742-1/ui/output/ui/src/main/resources/META-INF/resources/org.richfaces/panelMenu.js (from rev 20482, trunk/ui/output/ui/src/main/resources/META-INF/resources/org.richfaces/panelMenu.js)
===================================================================
--- branches/RF-8742-1/ui/output/ui/src/main/resources/META-INF/resources/org.richfaces/panelMenu.js (rev 0)
+++ branches/RF-8742-1/ui/output/ui/src/main/resources/META-INF/resources/org.richfaces/panelMenu.js 2010-12-09 17:26:24 UTC (rev 20483)
@@ -0,0 +1,211 @@
+/*
+ * JBoss, Home of Professional Open Source
+ * Copyright ${year}, Red Hat, Inc. and individual contributors
+ * by the @authors tag. See the copyright.txt in the distribution for a
+ * full listing of individual contributors.
+ *
+ * This is free software; you can redistribute it and/or modify it
+ * under the terms of the GNU Lesser General Public License as
+ * published by the Free Software Foundation; either version 2.1 of
+ * the License, or (at your option) any later version.
+ *
+ * This software is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
+ * Lesser General Public License for more details.
+ *
+ * You should have received a copy of the GNU Lesser General Public
+ * License along with this software; if not, write to the Free
+ * Software Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA
+ * 02110-1301 USA, or see the FSF site: http://www.fsf.org.
+ */
+
+
+(function ($, rf) {
+
+ rf.ui = rf.ui || {};
+
+ var __DEFAULT_OPTIONS = {
+ expandSingle : true
+ };
+
+ rf.ui.PanelMenu = rf.BaseComponent.extendClass({
+ // class name
+ name:"PanelMenu",
+
+ /**
+ * @class PanelMenu
+ * @name PanelMenu
+ *
+ * @constructor
+ * @param {String} componentId - component id
+ * @param {Hash} options - params
+ * */
+ init : function (componentId, options) {
+ $super.constructor.call(this, componentId);
+ this.items = [];
+ this.attachToDom();
+
+ this.options = $.extend(this.options, __DEFAULT_OPTIONS, options || {});
+ this.activeItem = this.__getValueInput().value;
+ this.nestingLevel = 0;
+
+ var menuGroup = this;
+ if (menuGroup.options.expandSingle) {
+ menuGroup.__panelMenu().bind("expand", function (event) {
+ menuGroup.__childGroups().each (function (index, group) {
+ if (event.target.id != group.id) {
+ rf.$(group.id).collapse();
+ }
+ });
+
+ event.stopPropagation();
+ });
+ }
+
+ if (menuGroup.activeItem) {
+ this.__panelMenu().ready(function () {
+ var item = menuGroup.items[menuGroup.activeItem];
+ item.__select();
+ item.__fireSelect();
+ })
+ }
+
+ this.__addUserEventHandler("collapse");
+ this.__addUserEventHandler("expand");
+ },
+
+ getItems: function () {
+ return this.items;
+ },
+
+ getItem: function (name) {
+ return this.items[name];
+ },
+
+ /***************************** Public Methods ****************************************************************/
+ /**
+ * @methodOf
+ * @name PanelMenu#selectItem
+ *
+ * TODO ...
+ *
+ * @param {String} name
+ * @return {void} TODO ...
+ */
+ selectItem: function (name) {
+ // TODO implement
+ },
+
+ /**
+ * @methodOf
+ * @name PanelMenu#selectedItem
+ *
+ * TODO ...
+ *
+ * @return {String} TODO ...
+ */
+ selectedItem: function (id) {
+ if (id != undefined) {
+ var valueInput = this.__getValueInput();
+ var prevActiveItem = valueInput.value;
+
+ this.activeItem = id;
+ valueInput.value = id;
+
+ return prevActiveItem;
+ } else {
+ return this.activeItem;
+ }
+ },
+
+ __getValueInput : function() {
+ return document.getElementById(this.id + "-value");
+ },
+
+ selectItem: function (itemName) {
+ // TODO
+ },
+
+ /**
+ * @methodOf
+ * @name PanelMenu#expandAll
+ *
+ * TODO ...
+ *
+ * @return {void} TODO ...
+ */
+ expandAll: function () {
+ // TODO implement
+ },
+
+ /**
+ * @methodOf
+ * @name PanelMenu#collapseAll
+ *
+ * TODO ...
+ *
+ * @return {void} TODO ...
+ */
+ collapseAll: function () {
+ // TODO implement
+ },
+
+ /**
+ * @methodOf
+ * @name PanelMenu#expandGroup
+ *
+ * TODO ...
+ *
+ * @param {String} groupName
+ * @return {void} TODO ...
+ */
+ expandGroup: function (groupName) {
+ // TODO implement
+ },
+
+ /**
+ * @methodOf
+ * @name PanelMenu#collapseGroup
+ *
+ * TODO ...
+ *
+ * @param {String} groupName
+ * @return {void} TODO ...
+ */
+ collapseGroup: function (groupName) {
+ // TODO implement
+ },
+
+
+ /***************************** Private Methods ****************************************************************/
+
+
+ __panelMenu : function () {
+ return $(rf.getDomElement(this.id));
+ },
+
+ __childGroups : function () {
+ return this.__panelMenu().children(".rf-pm-top-gr")
+ },
+
+ /**
+ * @private
+ * */
+ __addUserEventHandler : function (name) {
+ var handler = this.options["on" + name];
+ if (handler) {
+ rf.Event.bindById(this.id, name, handler);
+ }
+ },
+
+ destroy: function () {
+ rf.Event.unbindById(this.id, "."+this.namespace);
+ $super.destroy.call(this);
+ }
+ });
+
+ // define super class link
+ var $super = rf.ui.PanelMenu.$super;
+
+})(jQuery, RichFaces);
Copied: branches/RF-8742-1/ui/output/ui/src/main/resources/META-INF/resources/org.richfaces/panelMenuGroup.js (from rev 20482, trunk/ui/output/ui/src/main/resources/META-INF/resources/org.richfaces/panelMenuGroup.js)
===================================================================
--- branches/RF-8742-1/ui/output/ui/src/main/resources/META-INF/resources/org.richfaces/panelMenuGroup.js (rev 0)
+++ branches/RF-8742-1/ui/output/ui/src/main/resources/META-INF/resources/org.richfaces/panelMenuGroup.js 2010-12-09 17:26:24 UTC (rev 20483)
@@ -0,0 +1,365 @@
+/*
+ * JBoss, Home of Professional Open Source
+ * Copyright ${year}, Red Hat, Inc. and individual contributors
+ * by the @authors tag. See the copyright.txt in the distribution for a
+ * full listing of individual contributors.
+ *
+ * This is free software; you can redistribute it and/or modify it
+ * under the terms of the GNU Lesser General Public License as
+ * published by the Free Software Foundation; either version 2.1 of
+ * the License, or (at your option) any later version.
+ *
+ * This software is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
+ * Lesser General Public License for more details.
+ *
+ * You should have received a copy of the GNU Lesser General Public
+ * License along with this software; if not, write to the Free
+ * Software Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA
+ * 02110-1301 USA, or see the FSF site: http://www.fsf.org.
+ */
+
+
+(function ($, rf) {
+
+ rf.ui = rf.ui || {};
+
+ var __DEFAULT_OPTIONS = {
+ expanded : false,
+ expandSingle : true,
+ bubbleSelection : true,
+ stylePrefix : "rf-pm-gr",
+
+ // TODO we should use selectionType = {none, selectable, unselectable}
+ selectable : false,
+ unselectable : false // unselectable can be only selectable item => if selectable == false than unselectable = false
+ };
+
+ var EXPAND_ITEM = {
+
+ /**
+ *
+ * @return {void}
+ * */
+ exec : function (group, expand) {
+ var mode = group.mode;
+ if (mode == "server") {
+ return this.execServer(group);
+ } else if (mode == "ajax") {
+ return this.execAjax(group);
+ } else if (mode == "client" || mode == "none") {
+ return this.execClient(group, expand);
+ } else {
+ rf.log.error("EXPAND_ITEM.exec : unknown mode (" + mode + ")");
+ }
+ },
+
+ /**
+ * @protected
+ *
+ * @return {Boolean} false
+ * */
+ execServer : function (group) {
+ group.__changeState();
+ rf.submitForm(this.__getParentForm(group));
+
+ return false;
+ },
+
+ /**
+ * @protected
+ *
+ * @return {Boolean} false
+ * */
+ execAjax : function (group) {
+ var oldState = group.__changeState();
+ rf.ajax(group.id, null, $.extend({}, group.options["ajax"], {}));
+ group.__restoreState(oldState);
+
+ return true;
+ },
+
+ /**
+ * @protected
+ *
+ * @param {PanelMenuGroup} group
+ * @param {Boolean} expand
+ * @return {undefined}
+ * - false - if process has been terminated
+ * - true - in other cases
+ * */
+ execClient : function (group, expand) {
+ if (expand) {
+ group.expand();
+ } else {
+ group.collapse();
+ }
+
+ return group.__fireSwitch();
+ },
+
+ /**
+ * @private
+ * */
+ __getParentForm : function (item) {
+ return $($(rf.getDomElement(item.id)).parents("form")[0]);
+ }
+ };
+
+ rf.ui.PanelMenuGroup = rf.ui.PanelMenuItem.extendClass({
+ // class name
+ name:"PanelMenuGroup",
+
+ /**
+ * @class PanelMenuGroup
+ * @name PanelMenuGroup
+ *
+ * @constructor
+ * @param {String} componentId - component id
+ * @param {Hash} options - params
+ * */
+ init : function (componentId, options) {
+ $super.constructor.call(this, componentId);
+ this.options = $.extend(this.options, __DEFAULT_OPTIONS, options || {});
+
+ if (!this.options.disabled) {
+ var menuGroup = this;
+
+ if (!this.options.selectable) {
+ this.__header().bind("click", function () {
+ return menuGroup.switchExpantion();
+ });
+ }
+
+ if (this.options.selectable || this.options.bubbleSelection) {
+ this.__content().bind("select", function (event) {
+ if (menuGroup.options.selectable && menuGroup.__isMyEvent(event)) {
+ menuGroup.expand();
+ }
+
+ if (menuGroup.options.bubbleSelection && !menuGroup.__isMyEvent(event)) {
+ menuGroup.__select();
+ if (!menuGroup.expanded()) {
+ menuGroup.expand();
+ }
+ }
+ });
+
+ this.__content().bind("unselect", function (event) {
+ if (menuGroup.options.selectable && menuGroup.__isMyEvent(event)) {
+ menuGroup.collapse();
+ }
+
+ if (menuGroup.options.bubbleSelection && !menuGroup.__isMyEvent(event)) {
+ menuGroup.__unselect();
+ }
+ });
+ }
+
+ if (menuGroup.options.expandSingle) {
+ menuGroup.__group().bind("expand", function (event) {
+ if (menuGroup.__isMyEvent(event)) {
+ return;
+ }
+
+ menuGroup.__childGroups().each (function (index, group) {
+ var rfGroup = rf.$(group);
+ if (!rfGroup.__isMyEvent(event)) {
+ rfGroup.collapse();
+ }
+ });
+
+ event.stopPropagation();
+ });
+ }
+
+ this.__addUserEventHandler("collapse");
+ this.__addUserEventHandler("expand");
+ }
+ },
+
+ /***************************** Public Methods ****************************************************************/
+ expanded : function () {
+ // TODO check invariant in dev mode
+ // return this.__content().hasClass("rf-pm-exp")
+ return this.__getExpandValue();
+ },
+
+ expand : function () {
+ this.__expand();
+
+ return this.__fireExpand();
+ },
+
+ __expand : function () {
+ this.__content().removeClass("rf-pm-colps").addClass("rf-pm-exp");
+ var header = this.__header();
+ header.find(".rf-pm-ico-colps").hide();
+ header.find(".rf-pm-ico-exp").show();
+
+ this.__setExpandValue(true);
+ },
+
+ collapsed : function () {
+ // TODO check invariant in dev mode
+ // return this.__content().hasClass("rf-pm-colps")
+ return !this.__getExpandValue();
+ },
+
+ collapse : function () {
+ this.__collapse();
+
+ this.__childGroups().each (function(index, group) {
+ rf.$(group.id).__collapse();
+ });
+
+ this.__fireCollapse();
+ },
+
+ __collapse : function () {
+ this.__content().addClass("rf-pm-colps").removeClass("rf-pm-exp");
+ var header = this.__header();
+ header.find(".rf-pm-ico-exp").hide();
+ header.find(".rf-pm-ico-colps").show();
+
+ this.__setExpandValue(false);
+ },
+
+ /**
+ * @methodOf
+ * @name PanelMenuGroup#switch
+ *
+ * TODO ...
+ *
+ * @param {boolean} expand
+ * @return {void} TODO ...
+ */
+ switchExpantion : function () { // TODO rename
+ var continueProcess = this.__fireBeforeSwitch();
+ if (!continueProcess) {
+ return false;
+ }
+
+ EXPAND_ITEM.exec(this, !this.expanded());
+ },
+
+ /**
+ * please, remove this method when client side ajax events will be added
+ *
+ * */
+ onCompleteHandler : function () {
+ EXPAND_ITEM.execClient(this, this.expanded());
+ },
+
+ __switch : function (expand) {
+ if (expand) {
+ this.expand();
+ } else {
+ this.collapse();
+ }
+ },
+
+ /***************************** Private Methods ****************************************************************/
+ __childGroups : function () {
+ return this.__content().children(".rf-pm-gr")
+ },
+
+ __group : function () {
+ return $(rf.getDomElement(this.id))
+ },
+
+ __header : function () {
+ return $(rf.getDomElement(this.id + ":hdr"))
+ },
+
+ __content : function () {
+ return $(rf.getDomElement(this.id + ":cnt"))
+ },
+
+ __expandValueInput : function () {
+ return document.getElementById(this.id + ":expanded");
+ },
+
+ __getExpandValue : function () {
+ return this.__expandValueInput().value == "true";
+ },
+
+ /**
+ * @methodOf
+ * @name PanelMenuGroup#__setExpandValue
+ *
+ * @param {boolean} value - is group expanded?
+ * @return {boolean} preview value
+ */
+ __setExpandValue : function (value) {
+ var input = this.__expandValueInput();
+ var oldValue = input.value;
+
+ input.value = value;
+
+ return oldValue;
+ },
+
+ __changeState : function () {
+ var state = {};
+ state["expanded"] = this.__setExpandValue(!this.__getExpandValue());
+ if (this.options.selectable) {
+ state["itemName"] = this.__rfPanelMenu().selectedItem(this.itemName); // TODO bad function name for function which change component state
+ }
+
+ return state;
+ },
+
+ __restoreState : function (state) {
+ if (!state) {
+ return;
+ }
+
+ if (state["expanded"]) {
+ this.__setExpandValue(state["expanded"]);
+ }
+
+ if (state["itemName"]) {
+ this.__rfPanelMenu().selectedItem(state["itemName"]);
+ }
+ },
+
+ __fireSwitch : function () {
+ return new rf.Event.fireById(this.id, "switch", {
+ id: this.id
+ });
+ },
+
+ __isMyEvent: function (event) {
+ return this.id == event.target.id;
+ },
+
+ __fireBeforeSwitch : function () {
+ return rf.Event.fireById(this.id, "beforeswitch", {
+ id: this.id
+ });
+ },
+
+ __fireCollapse : function () {
+ return new rf.Event.fireById(this.id, "collapse", {
+ id: this.id
+ });
+ },
+
+ __fireExpand : function () {
+ return new rf.Event.fireById(this.id, "expand", {
+ id: this.id
+ });
+ },
+
+ destroy: function () {
+ rf.Event.unbindById(this.id, "."+this.namespace);
+
+ $super.destroy.call(this);
+ }
+ });
+
+ // define super class link
+ var $super = rf.ui.PanelMenuGroup.$super;
+})(jQuery, RichFaces);
Copied: branches/RF-8742-1/ui/output/ui/src/main/resources/META-INF/resources/org.richfaces/panelMenuItem.js (from rev 20482, trunk/ui/output/ui/src/main/resources/META-INF/resources/org.richfaces/panelMenuItem.js)
===================================================================
--- branches/RF-8742-1/ui/output/ui/src/main/resources/META-INF/resources/org.richfaces/panelMenuItem.js (rev 0)
+++ branches/RF-8742-1/ui/output/ui/src/main/resources/META-INF/resources/org.richfaces/panelMenuItem.js 2010-12-09 17:26:24 UTC (rev 20483)
@@ -0,0 +1,321 @@
+/*
+ * JBoss, Home of Professional Open Source
+ * Copyright ${year}, Red Hat, Inc. and individual contributors
+ * by the @authors tag. See the copyright.txt in the distribution for a
+ * full listing of individual contributors.
+ *
+ * This is free software; you can redistribute it and/or modify it
+ * under the terms of the GNU Lesser General Public License as
+ * published by the Free Software Foundation; either version 2.1 of
+ * the License, or (at your option) any later version.
+ *
+ * This software is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
+ * Lesser General Public License for more details.
+ *
+ * You should have received a copy of the GNU Lesser General Public
+ * License along with this software; if not, write to the Free
+ * Software Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA
+ * 02110-1301 USA, or see the FSF site: http://www.fsf.org.
+ */
+
+
+(function ($, rf) {
+
+ rf.ui = rf.ui || {};
+
+ var __DEFAULT_OPTIONS = {
+ disabled : false,
+ selectable: true,
+ mode: "client",
+ unselectable: false,
+ highlight: true,
+ stylePrefix: "rf-pm-itm",
+ itemStep: 20
+ };
+
+ var SELECT_ITEM = {
+
+ /**
+ *
+ * @return {void}
+ * */
+ exec : function (item) {
+ var mode = item.mode;
+ if (mode == "server") {
+ return this.execServer(item);
+ } else if (mode == "ajax") {
+ return this.execAjax(item);
+ } else if (mode == "client" || mode == "none") {
+ return this.execClient(item);
+ } else {
+ rf.log.error("SELECT_ITEM.exec : unknown mode (" + mode + ")");
+ }
+ },
+
+ /**
+ * @protected
+ *
+ * @return {Boolean} false
+ * */
+ execServer : function (item) {
+ item.__changeState();
+ rf.submitForm(this.__getParentForm(item));
+
+ return false;
+ },
+
+ /**
+ * @protected
+ *
+ * @return {Boolean} false
+ * */
+ execAjax : function (item) {
+ var oldItem = item.__changeState();
+ rf.ajax(item.__panelMenu().id, null, $.extend({}, item.options["ajax"], {}));
+ item.__restoreState(oldItem);
+
+ return true;
+ },
+
+ /**
+ * @protected
+ *
+ * @return {undefined}
+ * - false - if process has been terminated
+ * - true - in other cases
+ * */
+ execClient : function (item) {
+ var panelMenu = item.__rfPanelMenu();
+ if (panelMenu.selectedItem()) {
+ panelMenu.getItems()[panelMenu.selectedItem()].unselect();
+ }
+ panelMenu.selectedItem(item.itemName);
+
+ item.__select();
+
+ return item.__fireSelect();
+ },
+
+ /**
+ * @private
+ * */
+ __getParentForm : function (item) {
+ return $($(rf.getDomElement(item.id)).parents("form")[0]);
+ }
+ };
+
+ rf.ui.PanelMenuItem = rf.BaseComponent.extendClass({
+ // class name
+ name:"PanelMenuItem",
+
+ /**
+ * @class PanelMenuItem
+ * @name PanelMenuItem
+ *
+ * @constructor
+ * @param {String} componentId - component id
+ * @param {Hash} options - params
+ * */
+ init : function (componentId, options) {
+ $super.constructor.call(this, componentId);
+ this.attachToDom();
+
+ this.options = $.extend(this.options, __DEFAULT_OPTIONS, options || {});
+
+ this.mode = this.options.mode
+ this.itemName = this.options.name
+ this.__rfPanelMenu().getItems()[this.itemName] = this;
+
+ // todo move it
+ this.selectionClass = this.options.stylePrefix + "-sel";
+ this.hoverClass = this.options.stylePrefix + "-hov";
+
+ if (!this.options.disabled) {
+ var item = this;
+ if (this.options.highlight) {
+ this.__item().bind("mouseenter", function() {
+ item.highlight(true);
+ });
+ this.__item().bind("mouseleave", function() {
+ item.highlight(false);
+ });
+ }
+
+ if (this.options.selectable) {
+ this.__header().bind("click", function() {
+ if (item.__rfPanelMenu().selectedItem() == item.id) {
+ if (item.options.unselectable) {
+ return item.unselect();
+ }
+
+ // we shouldn't select one item several times
+ } else {
+ return item.select();
+ }
+ });
+ }
+ }
+
+ item = this;
+ $(this.__panelMenu()).ready(function () {
+ item.__renderNestingLevel();
+ });
+
+ this.__addUserEventHandler("select");
+ },
+
+ /***************************** Public Methods ****************************************************************/
+ highlight : function (highlight) {
+ if (highlight && !this.selected()) {
+ this.__header().addClass(this.hoverClass);
+ } else {
+ this.__header().removeClass(this.hoverClass);
+ }
+ },
+
+ selected : function () {
+ return this.__header().hasClass(this.selectionClass);
+ },
+
+ /**
+ * @methodOf
+ * @name PanelMenuItem#select
+ *
+ * TODO ...
+ *
+ * @return {void} TODO ...
+ */
+ select: function () {
+ var continueProcess = this.__fireBeforeSelect();
+ if (!continueProcess) {
+ return false;
+ }
+
+ return SELECT_ITEM.exec(this)
+ },
+
+ /**
+ * please, remove this method when client side ajax events will be added
+ *
+ * */
+ onCompleteHandler : function () {
+ SELECT_ITEM.execClient(this);
+ },
+
+ unselect: function () {
+ var panelMenu = this.__rfPanelMenu();
+ if (panelMenu.selectedItem() == this.itemName) {
+ panelMenu.selectedItem(null);
+ } else {
+ rf.warn("You try unselect item (name=" + this.itemName + ") that isn't seleted")
+ }
+
+ this.__unselect();
+
+ return this.__fireUnselect();
+ },
+
+ /***************************** Private Methods ****************************************************************/
+ __rfParentItem : function () {
+ var res = this.__item().parents(".rf-pm-gr")[0];
+ if (!res) {
+ res = this.__item().parents(".rf-pm-top-gr")[0];
+ }
+
+ if (!res) {
+ res = this.__panelMenu();
+ }
+
+ return res ? rf.$(res) : null;
+ },
+
+ __getNestingLevel : function () {
+ if (!this.nestingLevel) {
+ var parentItem = this.__rfParentItem();
+ if (parentItem && parentItem.__getNestingLevel) {
+ this.nestingLevel = parentItem.__getNestingLevel() + 1;
+ } else {
+ this.nestingLevel = 0;
+ }
+ }
+
+ return this.nestingLevel;
+ },
+
+ __renderNestingLevel : function () {
+ this.__item().find("td").first().css("padding-left", this.options.itemStep * this.__getNestingLevel());
+ },
+
+ __panelMenu : function () {
+ return this.__item().parents(".rf-pm")[0];
+ },
+
+ __rfPanelMenu : function () {
+ return rf.$(this.__item().parents(".rf-pm")[0]);
+ },
+
+ __changeState : function () {
+ return this.__rfPanelMenu().selectedItem(this.itemName);
+ },
+
+ __restoreState : function (state) {
+ if (state) {
+ this.__rfPanelMenu().selectedItem(state);
+ }
+ },
+
+ __item : function () {
+ return $(rf.getDomElement(this.id));
+ },
+
+ __header : function () {
+ return this.__item();
+ },
+
+ __select: function () {
+ this.__header().addClass(this.selectionClass);
+ },
+
+ __unselect: function () {
+ this.__header().removeClass(this.selectionClass);
+ },
+
+ __fireBeforeSelect : function () {
+ return new rf.Event.fireById(this.id, "beforeselect", {
+ id: this.id
+ });
+ },
+
+ __fireSelect : function () {
+ return new rf.Event.fireById(this.id, "select", {
+ id: this.id
+ });
+ },
+
+ __fireUnselect : function () {
+ return new rf.Event.fireById(this.id, "unselect", {
+ id: this.id
+ });
+ },
+
+ /**
+ * @private
+ * */
+ __addUserEventHandler : function (name) {
+ var handler = this.options["on" + name];
+ if (handler) {
+ rf.Event.bindById(this.id, name, handler);
+ }
+ },
+
+ destroy: function () {
+ delete this.__rfPanelMenu().getItems()[this.itemName];
+ $super.destroy.call(this);
+ }
+ });
+
+ // define super class link
+ var $super = rf.ui.PanelMenuItem.$super;
+})(jQuery, RichFaces);
Modified: branches/RF-8742-1/ui/output/ui/src/main/resources/META-INF/resources/org.richfaces/popupPanel.js
===================================================================
--- branches/RF-8742-1/ui/output/ui/src/main/resources/META-INF/resources/org.richfaces/popupPanel.js 2010-12-09 15:06:40 UTC (rev 20482)
+++ branches/RF-8742-1/ui/output/ui/src/main/resources/META-INF/resources/org.richfaces/popupPanel.js 2010-12-09 17:26:24 UTC (rev 20483)
@@ -56,7 +56,6 @@
this.attachToDom(this.markerId);
this.options = $.extend(this.options, defaultOptions, options || {});
- this.id = $(richfaces.getDomElement(id)); // Should be component Id string // NOT AN OBJECT
this.minWidth = this.getMinimumSize(this.options.minWidth);
this.minHeight = this.getMinimumSize(this.options.minHeight);
this.maxWidth = this.options.maxWidth;
@@ -174,8 +173,6 @@
this.markerId = null;
this.options = null;
- this.id = null;
-
this.div = null;
this.cdiv = null;
this.contentDiv = null;
@@ -312,7 +309,7 @@
}
$(richfaces.getDomElement(eContentElt)).css('height', options.height + (/px/.test(options.height) ? '' : 'px'));
this.shadowDiv.css('height', options.height + (/px/.test(options.height) ? '' : 'px'));
- var headerHeight = $(richfaces.getDomElement(this.div +"_header"))[0] ? $(richfaces.getDomElement(this.div +"_header"))[0].clientHeight : 0;
+ var headerHeight = $(richfaces.getDomElement(this.markerId +"_header"))[0] ? $(richfaces.getDomElement(this.markerId +"_header"))[0].clientHeight : 0;
this.scrollerDiv.css('height', options.height - headerHeight + (/px/.test(options.height) ? '' : 'px'));
@@ -412,7 +409,7 @@
!root.disabled && root.type!="hidden") {
callback.call(this, root);
} else {
- if (root != this.id) {
+ if (root != this.div) {
var child = root.firstChild;
while (child) {
if (!child.style || child.style.display != 'none') {
@@ -487,7 +484,7 @@
this.currentMinHeight = undefined;
this.currentMinWidth = undefined;
- this.id.hide();
+ this.div.hide();
if (this.parent) {
if (this.domReattached) {
Modified: branches/RF-8742-1/ui/output/ui/src/main/resources/META-INF/resources/org.richfaces/progressBar.js
===================================================================
--- branches/RF-8742-1/ui/output/ui/src/main/resources/META-INF/resources/org.richfaces/progressBar.js 2010-12-09 15:06:40 UTC (rev 20482)
+++ branches/RF-8742-1/ui/output/ui/src/main/resources/META-INF/resources/org.richfaces/progressBar.js 2010-12-09 17:26:24 UTC (rev 20483)
@@ -46,7 +46,7 @@
name: "ProgressBar",
__isInitialState: function() {
- return parseFloat(this.value) <= parseFloat(this.getMinValue());
+ return parseFloat(this.value) < parseFloat(this.getMinValue());
},
__isProgressState: function() {
@@ -54,7 +54,7 @@
},
__isFinishState: function() {
- return parseFloat(this.value) > parseFloat(this.getMaxValue());
+ return parseFloat(this.value) >= parseFloat(this.getMaxValue());
},
__beforeUpdate: function(event) {
@@ -120,7 +120,7 @@
__setValue: function(val, initialStateSetup) {
this.value = parseFloat(this.__getPropertyOrObject(val, "value"));
- if (this.__isFinishState()) {
+ if (this.__isFinishState() || this.__isInitialState()) {
this.disable();
}
},
Copied: branches/RF-8742-1/ui/output/ui/src/main/resources/META-INF/resources/org.richfaces/tab.js (from rev 20482, trunk/ui/output/ui/src/main/resources/META-INF/resources/org.richfaces/tab.js)
===================================================================
--- branches/RF-8742-1/ui/output/ui/src/main/resources/META-INF/resources/org.richfaces/tab.js (rev 0)
+++ branches/RF-8742-1/ui/output/ui/src/main/resources/META-INF/resources/org.richfaces/tab.js 2010-12-09 17:26:24 UTC (rev 20483)
@@ -0,0 +1,139 @@
+/*
+ * JBoss, Home of Professional Open Source
+ * Copyright ${year}, Red Hat, Inc. and individual contributors
+ * by the @authors tag. See the copyright.txt in the distribution for a
+ * full listing of individual contributors.
+ *
+ * This is free software; you can redistribute it and/or modify it
+ * under the terms of the GNU Lesser General Public License as
+ * published by the Free Software Foundation; either version 2.1 of
+ * the License, or (at your option) any later version.
+ *
+ * This software is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
+ * Lesser General Public License for more details.
+ *
+ * You should have received a copy of the GNU Lesser General Public
+ * License along with this software; if not, write to the Free
+ * Software Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA
+ * 02110-1301 USA, or see the FSF site: http://www.fsf.org.
+ */
+
+(function ($, rf) {
+
+ rf.ui = rf.ui || {};
+
+ rf.ui.Tab = rf.ui.TogglePanelItem.extendClass({
+ // class name
+ name:"Tab",
+
+ /**
+ * @class AccordionItem
+ * @name AccordionItem
+ *
+ * @constructor
+ * @param {String} componentId - component id
+ * @param {Hash} options - params
+ * */
+ init : function (componentId, options) {
+ $super.constructor.call(this, componentId, options);
+ this.index = options["index"];
+ this.getTogglePanel().getItems()[this.index] = this;
+
+ //TODO - optimize this
+ rf.Event.bindById(this.id + ":header:active", "click", this.__onHeaderClick, this);
+ rf.Event.bindById(this.id + ":header:inactive", "click", this.__onHeaderClick, this)
+ },
+
+ /***************************** Public Methods ****************************************************************/
+
+ __onHeaderClick : function (comp) {
+ this.getTogglePanel().switchToItem(this.getName());
+ },
+
+ /**
+ * @param state {string} = inactive | active | disabled
+ * in that case looking header by css class appropriate to this state
+ *
+ * @return {jQuery Object}
+ * */
+ __header : function (state) {
+ var res = $(rf.getDomElement(this.id + ":header"));
+ if (state) {
+ return $(rf.getDomElement(this.id + ":header:" + state));
+ }
+
+ return res;
+ },
+
+ /**
+ * @return {jQuery Object}
+ * */
+ __content : function () {
+ if (!this.__content_) {
+ this.__content_ = $(rf.getDomElement(this.id + ":content"));
+ }
+ return this.__content_;
+ },
+
+ /**
+ * @private
+ *
+ * used in TogglePanel
+ * */
+ __enter : function () {
+
+ this.__content().show();
+ this.__header("inactive").hide();
+ this.__header("active").show();
+
+ return this.__fireEnter();
+ },
+
+ getHeight : function (recalculate) {
+ if (recalculate || !this.__height) {
+ this.__height = $(rf.getDomElement(this.id)).outerHeight(true)
+ }
+
+ return this.__height;
+ },
+
+ /**
+ * @private
+ *
+ * used in TogglePanel
+ * */
+ __leave : function () {
+ var continueProcess = this.__fireLeave();
+ if (!continueProcess) {
+ return false;
+ }
+
+ this.__content().hide();
+ this.__header("active").hide();
+ this.__header("inactive").show();
+
+ return true;
+ },
+
+ /***************************** Private Methods ********************************************************/
+
+
+ destroy: function () {
+ var parent = this.getTogglePanel();
+ delete parent.getItems()[this.index];
+
+ rf.Event.unbindById(this.id);
+
+ //TODO - optimize
+ rf.Event.unbindById(this.id + ":header:active");
+ rf.Event.unbindById(this.id + ":header:inactive");
+
+ $super.destroy.call(this);
+ }
+ });
+
+ // define super class link
+ var $super = rf.ui.Tab.$super;
+})(jQuery, RichFaces);
Copied: branches/RF-8742-1/ui/output/ui/src/main/resources/META-INF/resources/org.richfaces/tabPanel.js (from rev 20482, trunk/ui/output/ui/src/main/resources/META-INF/resources/org.richfaces/tabPanel.js)
===================================================================
--- branches/RF-8742-1/ui/output/ui/src/main/resources/META-INF/resources/org.richfaces/tabPanel.js (rev 0)
+++ branches/RF-8742-1/ui/output/ui/src/main/resources/META-INF/resources/org.richfaces/tabPanel.js 2010-12-09 17:26:24 UTC (rev 20483)
@@ -0,0 +1,46 @@
+/*
+ * JBoss, Home of Professional Open Source
+ * Copyright ${year}, Red Hat, Inc. and individual contributors
+ * by the @authors tag. See the copyright.txt in the distribution for a
+ * full listing of individual contributors.
+ *
+ * This is free software; you can redistribute it and/or modify it
+ * under the terms of the GNU Lesser General Public License as
+ * published by the Free Software Foundation; either version 2.1 of
+ * the License, or (at your option) any later version.
+ *
+ * This software is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
+ * Lesser General Public License for more details.
+ *
+ * You should have received a copy of the GNU Lesser General Public
+ * License along with this software; if not, write to the Free
+ * Software Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA
+ * 02110-1301 USA, or see the FSF site: http://www.fsf.org.
+ */
+
+(function ($, rf) {
+
+ rf.ui = rf.ui || {};
+
+ rf.ui.TabPanel = rf.ui.TogglePanel.extendClass({
+ // class name
+ name:"TabPanel",
+
+ /**
+ * @class TabPanel
+ * @name TabPanel
+ *
+ * @constructor
+ * @param {String} componentId - component id
+ * @param {Hash} options - params
+ * */
+ init : function (componentId, options) {
+ rf.ui.TogglePanel.call(this, componentId, options);
+ this.items = [];
+
+ this.isKeepHeight = options["isKeepHeight"] || false
+ }
+ });
+})(jQuery, RichFaces);
Copied: branches/RF-8742-1/ui/output/ui/src/main/resources/META-INF/resources/org.richfaces/togglePanel.js (from rev 20482, trunk/ui/output/ui/src/main/resources/META-INF/resources/org.richfaces/togglePanel.js)
===================================================================
--- branches/RF-8742-1/ui/output/ui/src/main/resources/META-INF/resources/org.richfaces/togglePanel.js (rev 0)
+++ branches/RF-8742-1/ui/output/ui/src/main/resources/META-INF/resources/org.richfaces/togglePanel.js 2010-12-09 17:26:24 UTC (rev 20483)
@@ -0,0 +1,433 @@
+/*
+ * JBoss, Home of Professional Open Source
+ * Copyright ${year}, Red Hat, Inc. and individual contributors
+ * by the @authors tag. See the copyright.txt in the distribution for a
+ * full listing of individual contributors.
+ *
+ * This is free software; you can redistribute it and/or modify it
+ * under the terms of the GNU Lesser General Public License as
+ * published by the Free Software Foundation; either version 2.1 of
+ * the License, or (at your option) any later version.
+ *
+ * This software is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
+ * Lesser General Public License for more details.
+ *
+ * You should have received a copy of the GNU Lesser General Public
+ * License along with this software; if not, write to the Free
+ * Software Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA
+ * 02110-1301 USA, or see the FSF site: http://www.fsf.org.
+ */
+
+(function ($, rf) {
+
+ rf.ui = rf.ui || {};
+
+ /* SIMPLE INNER CLASS for handle switch operation*/
+ function SwitchItems(comp) {
+ this.comp = comp;
+ }
+
+ SwitchItems.prototype = {
+
+ /**
+ * @param {TogglePanelItem} oldPanel
+ * @param {TogglePanelItem} newPanel
+ *
+ * @return {void}
+ * */
+ exec : function (oldPanel, newPanel) {
+ if (newPanel.switchMode == "server") {
+ return this.execServer(oldPanel, newPanel);
+ } else if (newPanel.switchMode == "ajax") {
+ return this.execAjax(oldPanel, newPanel);
+ } else if (newPanel.switchMode == "client") {
+ return this.execClient(oldPanel, newPanel);
+ } else {
+ rf.log.error("SwitchItems.exec : unknown switchMode (" + this.comp.switchMode + ")");
+ }
+ },
+
+ /**
+ * @protected
+ * @param {TogglePanelItem} oldPanel
+ * @param {TogglePanelItem} newPanel
+ *
+ * @return {Boolean} false
+ * */
+ execServer : function (oldPanel, newPanel) {
+ if (oldPanel) {
+ var continueProcess = oldPanel.__leave();
+ if (!continueProcess) {
+ return false;
+ }
+ }
+
+ this.__setActiveItem(newPanel.getName());
+
+ rf.submitForm(this.__getParentForm());
+
+ return false;
+ },
+
+ /**
+ * @protected
+ * @param {TogglePanelItem} oldPanel
+ * @param {TogglePanelItem} newPanel
+ *
+ * @return {Boolean} false
+ * */
+ execAjax : function (oldPanel, newPanel) {
+ var options = $.extend({}, this.comp.options["ajax"], {}/*this.getParameters(newPanel)*/);
+
+ this.__setActiveItem(newPanel.getName());
+ rf.ajax(this.comp.id, null, options);
+
+ if (oldPanel) {
+ this.__setActiveItem(oldPanel.getName());
+ }
+
+ return false;
+ },
+
+ /**
+ * @protected
+ * @param {TogglePanelItem} oldPanel
+ * @param {TogglePanelItem} newPanel
+ *
+ * @return {undefined}
+ * - false - if process has been terminated
+ * - true - in other cases
+ * */
+ execClient : function (oldPanel, newPanel) {
+ if (oldPanel) {
+ var continueProcess = oldPanel.__leave();
+ if (!continueProcess) {
+ return false;
+ }
+ }
+
+ this.__setActiveItem(newPanel.getName());
+
+ newPanel.__enter();
+ this.comp.__fireItemChange(oldPanel, newPanel);
+
+ return true;
+ },
+
+ /**
+ * @private
+ * */
+ __getParentForm : function () {
+ return $(rf.getDomElement(this.comp.id)).parents('form:first');
+ },
+
+ /**
+ * @private
+ * */
+ __setActiveItem : function (name) {
+ rf.getDomElement(this.__getValueInputId()).value = name;
+ this.comp.activeItem = name;
+ },
+
+ /**
+ * @private
+ * */
+ __getValueInputId: function () {
+ return this.comp.id + "-value"
+ }
+ };
+
+ /**
+ * @class TogglePanel
+ * @name TogglePanel
+ *
+ * @constructor
+ * @param {String} componentId - component id
+ * @param {Hash} options - params
+ * */
+ rf.ui.TogglePanel = rf.BaseComponent.extendClass({
+
+ // class name
+ name:"TogglePanel",
+
+ init : function (componentId, options) {
+ $super.constructor.call(this, componentId);
+ this.attachToDom();
+
+ this.options = $.extend(this.options, options || {});
+ this.activeItem = this.options.activeItem;
+ this.items = this.options.items;
+
+ this.__addUserEventHandler("itemchange");
+ this.__addUserEventHandler("beforeitemchange");
+ },
+
+ /***************************** Public Methods ****************************************************************/
+
+ /**
+ * @methodOf
+ *
+ * @name TogglePanel#getSelectItem
+ *
+ * @return {String} name of current selected panel item
+ */
+ getSelectItem: function () {
+ return this.activeItem;
+ },
+
+ /**
+ * @methodOf
+ * @name TogglePanel#switchToItem
+ *
+ * @param {String} name - panel item name to switch
+ * we can use meta names @first, @prev, @next and @last
+ * @return {Boolean} - false if something wrong and true if all is ok
+ */
+ switchToItem: function (name) {
+ var newPanel = this.getNextItem(name);
+ if (newPanel == null) {
+ rf.log.warn("TogglePanel.switchToItems(" + name + "): item with name '" + name + "' not found");
+ return false;
+ }
+
+ var oldPanel = this.__getItemByName(this.getSelectItem());
+
+ var continueProcess = this.__fireBeforeItemChange(oldPanel, newPanel);
+ if (!continueProcess) {
+ rf.log.warn("TogglePanel.switchToItems(" + name + "): switch has been canceled by beforeItemChange event");
+ return false
+ }
+
+ return new SwitchItems(this).exec(oldPanel, newPanel);
+ },
+
+ /**
+ * @methodOf
+ * @name TogglePanel#getNextItem
+ *
+ * @param {String} name of TogglePanelItem or meta name (@first | @prev | @next | @last)
+ * @return {TogglePanelItem} null if item not found
+ */
+ getNextItem : function (name) {
+ if (name) {
+ var newItemIndex = this.__ITEMS_META_NAMES[name];
+ if (newItemIndex) {
+ return this.__getItem(newItemIndex(this));
+ } else {
+ return this.__getItemByName(name);
+ }
+ } else {
+ return this.__getItemByName(this.nextItem());
+ }
+ },
+
+ /**
+ * please, remove this method when client side ajax events will be added
+ *
+ * */
+ onCompleteHandler : function (newItemName) {
+ var oldItem = this.__getItemByName(this.activeItem);
+ var newItem = this.__getItemByName(newItemName);
+
+ // Don't do like this and remove it ASAP
+ new SwitchItems(this).execClient(oldItem, newItem);
+ },
+
+ /**
+ * @methodOf
+ * @name TogglePanel#getItems
+ *
+ * @return {TogglePanelItem[]} all defined panel items
+ */
+ getItems : function () {
+ return this.items;
+ },
+
+ /**
+ * @methodOf
+ * @name TogglePanel#getItemsNames
+ *
+ * @return {String[]} names of all defined items
+ */
+ getItemsNames: function () {
+ var res = [];
+ for (var item in this.items) {
+ res.push(this.items[item].getName());
+ }
+
+ return res;
+ },
+
+ /**
+ * @methodOf
+ * @name TogglePanel#nextItem
+ *
+ * @param {String} [itemName = activeItem]
+ * @return {String} name of next panel item
+ */
+ nextItem: function (itemName) {
+ var itemIndex = this.__getItemIndex(itemName || this.activeItem);
+ if (itemIndex == -1) {
+ return null;
+ }
+
+ return this.__getItemName(itemIndex + 1);
+ },
+
+ /**
+ * @methodOf
+ * @name TogglePanel#firstItem
+ *
+ * @return {String} name of first panel item
+ */
+ firstItem: function () {
+ return this.__getItemName(0);
+ },
+
+ /**
+ * @methodOf
+ * @name TogglePanel#lastItem
+ *
+ * @return {String} name of last panel item
+ */
+ lastItem: function () {
+ return this.__getItemName(this.items.length - 1);
+ },
+
+ /**
+ * @methodOf
+ * @name TogglePanel#prevItem
+ *
+ * @param {String} itemName
+ * @return {String} name of prev panel item
+ * null if it is first item
+ */
+ prevItem: function (itemName) {
+ var itemIndex = this.__getItemIndex(itemName || this.activeItem);
+ if (!this.options.cycledSwitching && itemIndex < 1) {
+ return null;
+ }
+
+ return this.__getItemName(itemIndex - 1);
+ },
+
+ /////////////////////////////////////////////////////////////////////////////////
+ //// Private
+ /////////////////////////////////////////////////////////////////////////////////
+
+ /********************* Methods *************************/
+
+ __ITEMS_META_NAMES : (function () {
+ function goFrom (comp, ind, step) {
+ var res = ind;
+ while ((!comp.items[res] || comp.items[res].disabled) && res < comp.items.length && res > 0) {
+ res += step;
+ }
+ return res;
+ }
+
+
+ return {
+ "@first" : function (comp) {
+ return goFrom(comp, 0, 1);
+ },
+
+ "@prev" : function (comp) {
+ return goFrom(comp, parseInt(comp.__getItemIndex(comp.activeItem)) - 1 , -1);
+ },
+
+ "@next" : function (comp) {
+ return goFrom(comp, parseInt(comp.__getItemIndex(comp.activeItem)) + 1 , 1);
+ },
+
+ "@last" : function (comp) {
+ return goFrom(comp, comp.items.length - 1, -1);
+ }
+ }
+ })(),
+
+ /**
+ * @private
+ * */
+ __getItemIndex : function (itemName) {
+ for (var i in this.items) {
+ if (!this.items[i].disabled && this.items[i].getName() === itemName) {
+ return parseInt(i);
+ }
+ }
+
+ rf.log.info("TogglePanel.getItemIndex: item with name '" + itemName + "' not found");
+ return -1;
+ },
+
+ /**
+ * @private
+ * */
+ __addUserEventHandler : function (name) {
+ var handler = this.options["on" + name];
+ if (handler) {
+ rf.Event.bindById(this.id, name, handler);
+ }
+ },
+
+ /**
+ * @private
+ * @param {Number} index - array index
+ *
+ * @return {TogglePanelItem}
+ * null - if item not found
+ * */
+ __getItem : function (index) {
+ if (this.options.cycledSwitching) {
+ var size = this.items.length;
+ return this.items[(size + index) % size]
+ } else if (index >= 0 && index < this.items.length) {
+ return this.items[index]
+ } else {
+ return null;
+ }
+ },
+
+ __getItemByName : function (name) {
+ return this.__getItem(this.__getItemIndex(name));
+ },
+
+ __getItemName : function (index) {
+ var item = this.__getItem(index);
+ if (item == null) {
+ return null;
+ }
+
+ return item.getName();
+ },
+
+ /**
+ * Fire Concealable Event
+ * */
+
+ __fireItemChange : function (oldItem, newItem) {
+ return new rf.Event.fireById(this.id, "itemchange", {
+ id: this.id,
+ oldItem : oldItem,
+ newItem : newItem
+ });
+ },
+
+ __fireBeforeItemChange : function (oldItem, newItem) {
+ return rf.Event.fireById(this.id, "beforeitemchange", {
+ id: this.id,
+ oldItem : oldItem,
+ newItem : newItem
+ });
+ },
+
+ destroy: function () {
+ $super.destroy.call(this);
+ }
+ });
+
+ // define super class link
+ var $super = rf.ui.TogglePanel.$super;
+})(jQuery, RichFaces);
Copied: branches/RF-8742-1/ui/output/ui/src/main/resources/META-INF/resources/org.richfaces/togglePanelItem.js (from rev 20482, trunk/ui/output/ui/src/main/resources/META-INF/resources/org.richfaces/togglePanelItem.js)
===================================================================
--- branches/RF-8742-1/ui/output/ui/src/main/resources/META-INF/resources/org.richfaces/togglePanelItem.js (rev 0)
+++ branches/RF-8742-1/ui/output/ui/src/main/resources/META-INF/resources/org.richfaces/togglePanelItem.js 2010-12-09 17:26:24 UTC (rev 20483)
@@ -0,0 +1,120 @@
+/*
+ * JBoss, Home of Professional Open Source
+ * Copyright ${year}, Red Hat, Inc. and individual contributors
+ * by the @authors tag. See the copyright.txt in the distribution for a
+ * full listing of individual contributors.
+ *
+ * This is free software; you can redistribute it and/or modify it
+ * under the terms of the GNU Lesser General Public License as
+ * published by the Free Software Foundation; either version 2.1 of
+ * the License, or (at your option) any later version.
+ *
+ * This software is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
+ * Lesser General Public License for more details.
+ *
+ * You should have received a copy of the GNU Lesser General Public
+ * License along with this software; if not, write to the Free
+ * Software Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA
+ * 02110-1301 USA, or see the FSF site: http://www.fsf.org.
+ */
+
+(function ($, rf) {
+
+ rf.ui = rf.ui || {};
+
+ rf.ui.TogglePanelItem = rf.BaseComponent.extendClass({
+
+ // class name
+ name:"TogglePanelItem",
+
+ init : function (componentId, options) {
+ // call constructor of parent class
+ $super.constructor.call(this, componentId);
+ this.attachToDom();
+
+ this.options = $.extend(this.options, options || {});
+ this.name = this.options.name;
+ this.togglePanelId = this.options.togglePanelId;
+ this.switchMode = this.options.switchMode;
+ this.disabled = this.options.disabled || false;
+ },
+
+ /***************************** Public Methods *****************************************************************/
+ /**
+ * @methodOf TogglePanelItem
+ * @name TogglePanelItem#getName
+ *
+ * @return {String} panel item name
+ */
+ getName: function () {
+ return this.options.name;
+ },
+
+ /**
+ * @methodOf
+ * @name TogglePanelItem#getTogglePanel
+ *
+ * @return {TogglePanel} parent TogglePanel
+ * */
+ getTogglePanel : function () {
+ return rf.$(this.togglePanelId);
+ },
+
+ /**
+ * @methodOf
+ * @name TogglePanelItem#isSelected
+ *
+ * @return {Boolean} true if this panel item is selected in the parent toggle panel
+ * */
+ isSelected : function () {
+ return this.getName() == this.getTogglePanel().getSelectItem();
+ },
+
+
+ /***************************** Private Methods ****************************************************************/
+
+ /**
+ * @private
+ *
+ * used in TogglePanel
+ * */
+ __enter : function () {
+ rf.getDomElement(this.id).style.display = "block";
+
+ return this.__fireEnter();
+ },
+
+ /**
+ * @private
+ *
+ * used in TogglePanel
+ * */
+ __leave : function () {
+ var continueProcess = this.__fireLeave();
+ if (!continueProcess) {
+ return false;
+ }
+
+ rf.getDomElement(this.id).style.display = "none";
+ return true;
+ },
+
+ __fireLeave : function () {
+ return rf.Event.fireById(this.id, "__leave");
+ },
+
+ __fireEnter : function () {
+ return rf.Event.fireById(this.id, "__enter");
+ },
+
+ // class stuff
+ destroy: function () {
+ $super.destroy.call(this);
+ }
+ });
+
+ // define super class link
+ var $super = rf.ui.TogglePanelItem.$super;
+})(jQuery, RichFaces);
Copied: branches/RF-8742-1/ui/output/ui/src/main/resources/META-INF/resources/org.richfaces/tooltip.js (from rev 20482, trunk/ui/output/ui/src/main/resources/META-INF/resources/org.richfaces/tooltip.js)
===================================================================
--- branches/RF-8742-1/ui/output/ui/src/main/resources/META-INF/resources/org.richfaces/tooltip.js (rev 0)
+++ branches/RF-8742-1/ui/output/ui/src/main/resources/META-INF/resources/org.richfaces/tooltip.js 2010-12-09 17:26:24 UTC (rev 20483)
@@ -0,0 +1,295 @@
+/*
+ * JBoss, Home of Professional Open Source
+ * Copyright ${year}, Red Hat, Inc. and individual contributors
+ * by the @authors tag. See the copyright.txt in the distribution for a
+ * full listing of individual contributors.
+ *
+ * This is free software; you can redistribute it and/or modify it
+ * under the terms of the GNU Lesser General Public License as
+ * published by the Free Software Foundation; either version 2.1 of
+ * the License, or (at your option) any later version.
+ *
+ * This software is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
+ * Lesser General Public License for more details.
+ *
+ * You should have received a copy of the GNU Lesser General Public
+ * License along with this software; if not, write to the Free
+ * Software Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA
+ * 02110-1301 USA, or see the FSF site: http://www.fsf.org.
+ */
+
+
+(function ($, rf) {
+
+ rf.ui = rf.ui || {};
+
+ rf.ui.TooltipDirection = {
+ topRight : "topRight",
+ topLeft : "topLeft",
+ bottomRight : "bottomRight",
+ bottomLeft : "bottomLeft",
+ auto : "auto",
+
+ DEFAULT: "bottomRight"
+ };
+ var TooltipDirection = rf.ui.TooltipDirection;
+
+ rf.ui.TooltipMode = {
+ client : "client",
+ ajax : "ajax",
+
+ DEFAULT: "client"
+ };
+ var TooltipMode = rf.ui.TooltipMode;
+
+ var DEFAULT_OPTIONS = {
+ direction : TooltipDirection.DEFAULT,
+ attached : true,
+ offset : [],
+ mode : TooltipMode.DEFAULT,
+ disabled : false,
+ hideDelay : 0,
+ hideEvent : "mouseleave",
+ showDelay : 0,
+ showEvent : "mouseenter",
+ followMouse : true
+ };
+
+ var SHOW_ACTION = {
+
+ /**
+ *
+ * @return {void}
+ * */
+ exec : function (tooltip, event) {
+ var mode = tooltip.mode;
+ if (mode == TooltipMode.ajax) {
+ return this.execAjax(tooltip, event);
+ } else if (mode == TooltipMode.client) {
+ return this.execClient(tooltip, event);
+ } else {
+ rf.log.error("SHOW_ACTION.exec : unknown mode (" + mode + ")");
+ }
+ },
+
+ /**
+ * @protected
+ *
+ * @return {Boolean} false
+ * */
+ execAjax : function (tooltip, event) {
+ tooltip.__loading().show();
+ tooltip.__content().hide();
+ tooltip.__show(event);
+
+ rf.ajax(tooltip.id, null, $.extend({}, tooltip.options["ajax"], {}));
+
+ return true;
+ },
+
+ /**
+ * @protected
+ *
+ * @return {undefined}
+ * - false - if process has been terminated
+ * - true - in other cases
+ * */
+ execClient : function (tooltip, event) {
+ tooltip.__show(event);
+
+ return tooltip.__fireShow();
+ }
+ };
+
+ rf.ui.Tooltip = rf.BaseComponent.extendClass({
+ // class name
+ name:"Tooltip",
+
+ /**
+ * @class Tooltip
+ * @name Tooltip
+ *
+ * @constructor
+ * @param {String} componentId - component id
+ * @param {Hash} options - params
+ * */
+ init : function (componentId, options) {
+ $super.constructor.call(this, componentId);
+ this.options = $.extend(this.options, DEFAULT_OPTIONS, options || {});
+ this.attachToDom();
+
+ this.mode = this.options.mode;
+ this.target = this.options.target;
+
+ this.__addUserEventHandler("hide");
+ this.__addUserEventHandler("show");
+ this.__addUserEventHandler("beforehide");
+ this.__addUserEventHandler("beforeshow");
+
+ this.popup = new RichFaces.ui.Popup(this.id, {
+ attachTo: this.target,
+ attachToBody: false,
+ positionType: "TOOLTIP",
+ positionOffset: [200,200]
+ });
+
+ var tooltip = this;
+ function mouseMoveHandler(event) {
+ tooltip.popup.show(event);
+ }
+
+ $(document.getElementById(this.target)).bind(this.options.showEvent, function (event) {
+ tooltip.show(event);
+
+ if (tooltip.options.followMouse) {
+ $(document.getElementById(tooltip.target)).bind("mousemove", mouseMoveHandler);
+ }
+ });
+
+ $(document.getElementById(tooltip.target)).bind(this.options.hideEvent, function (event) {
+ tooltip.hide();
+
+ if (tooltip.options.followMouse) {
+ $(document.getElementById(tooltip.target)).unbind("mousemove", mouseMoveHandler);
+ }
+ });
+
+ },
+
+ /***************************** Public Methods ****************************************************************/
+ /**
+ * @methodOf
+ * @name PanelMenuItem#hide
+ *
+ * TODO ...
+ *
+ * @return {void} TODO ...
+ */
+ hide: function () {
+ var continueProcess = this.__fireBeforeHide();
+ if (!continueProcess) {
+ return false;
+ }
+
+ this.__hide();
+
+ return this.__fireHide()
+ },
+
+ /**
+ * @private
+ * @return {void} TODO ...
+ */
+ __hide: function () {
+ var tooltip = this;
+ this.__delay(this.options.hideDelay, function () {
+ tooltip.popup.hide();
+ });
+ },
+
+ /**
+ * @methodOf
+ * @name PanelMenuItem#show
+ *
+ * TODO ...
+ *
+ * @return {void} TODO ...
+ */
+ show: function (event) {
+ var continueProcess = this.__fireBeforeShow();
+ if (!continueProcess) {
+ return false;
+ }
+
+ SHOW_ACTION.exec(this, event);
+ },
+
+ onCompleteHandler : function () {
+ this.__content().show();
+ this.__loading().hide();
+
+ return this.__fireShow();
+ },
+
+ /**
+ * @private
+ * @return {void} TODO ...
+ */
+ __show: function (event) {
+ var tooltip = this;
+ this.__delay(this.options.showDelay, function () {
+ tooltip.popup.show(event);
+ });
+ },
+
+ /***************************** Private Methods ****************************************************************/
+ __delay : function (delay, action) {
+ if (delay > 0) {
+ var hidingTimerHandle = window.setTimeout(function() {
+ action();
+
+ if (hidingTimerHandle) {
+ window.clearTimeout(hidingTimerHandle);
+ hidingTimerHandle = undefined;
+ }
+ }, delay);
+ } else {
+ action();
+ }
+ },
+
+ __detectAncestorNode: function(leaf, element) {
+ // Return true if "element" is "leaf" or one of its parents
+ var node = leaf;
+ while (node != null && node != element) {
+ node = node.parentNode;
+ }
+ return (node != null);
+ },
+
+ __loading : function () {
+ return $(document.getElementById(this.id + ":loading"));
+ },
+
+ __content : function () {
+ return $(document.getElementById(this.id + "@content"));
+ },
+
+ __fireHide : function () {
+ return rf.Event.fireById(this.id, "hide", { id: this.id });
+ },
+
+ __fireShow : function () {
+ return rf.Event.fireById(this.id, "show", { id: this.id });
+ },
+
+ __fireBeforeHide : function () {
+ return rf.Event.fireById(this.id, "beforehide", { id: this.id });
+ },
+
+ __fireBeforeShow : function () {
+ return rf.Event.fireById(this.id, "beforeshow", { id: this.id });
+ },
+
+
+
+ /**
+ * @private
+ * */
+ __addUserEventHandler : function (name) {
+ var handler = this.options["on" + name];
+ if (handler) {
+ rf.Event.bindById(this.id, name, handler);
+ }
+ },
+
+ destroy: function () {
+ $super.destroy.call(this);
+ }
+ });
+
+ // define super class link
+ var $super = rf.ui.Tooltip.$super;
+})(jQuery, RichFaces);
Modified: branches/RF-8742-1/ui/output/ui/src/main/templates/popupPanel.template.xml
===================================================================
--- branches/RF-8742-1/ui/output/ui/src/main/templates/popupPanel.template.xml 2010-12-09 15:06:40 UTC (rev 20482)
+++ branches/RF-8742-1/ui/output/ui/src/main/templates/popupPanel.template.xml 2010-12-09 17:26:24 UTC (rev 20483)
@@ -14,6 +14,8 @@
</cc:interface>
<cc:implementation>
+ <cdk:object name="zindex" value="#{component.attributes['zindex']}" />
+
<cdk:call expression="checkOptions(facesContext, component)" />
<div id="#{clientId}" style="visibility: hidden;">
<c:if test="#{component.attributes['modal']}">
@@ -30,7 +32,7 @@
</c:if>
<div id="#{clientId}_shadow" style="position: #{component.attributes['followByScroll'] ? 'fixed' : 'absolute'};" class="rf-pp-shdw"/>
- <div id="#{clientId}_container" style="position: #{component.attributes['followByScroll'] ? 'fixed' : 'absolute'};" cdk:passThroughWithExclusions="id style class styleClass" class="rf-pp-cntr #{component.attributes['styleClass']}">
+ <div id="#{clientId}_container" style="position: #{component.attributes['followByScroll'] ? 'fixed' : 'absolute'}; #{not empty zindex ? 'z-index:'+zindex+';':''}" cdk:passThroughWithExclusions="id style class styleClass" class="rf-pp-cntr #{component.attributes['styleClass']}">
<c:if test="#{component.getFacet('header')!=null and component.getFacet('header').rendered}">
<div id="#{clientId}_header" class="rf-pp-hdr #{component.attributes['headerClass']}" >
Copied: branches/RF-8742-1/ui/output/ui/src/test/java/org/richfaces/component/DropDownMenuBean.java (from rev 20482, trunk/ui/output/ui/src/test/java/org/richfaces/component/DropDownMenuBean.java)
===================================================================
--- branches/RF-8742-1/ui/output/ui/src/test/java/org/richfaces/component/DropDownMenuBean.java (rev 0)
+++ branches/RF-8742-1/ui/output/ui/src/test/java/org/richfaces/component/DropDownMenuBean.java 2010-12-09 17:26:24 UTC (rev 20483)
@@ -0,0 +1,22 @@
+package org.richfaces.component;
+
+import javax.faces.bean.ManagedBean;
+import javax.faces.bean.SessionScoped;
+
+@ManagedBean
+@SessionScoped
+public class DropDownMenuBean {
+ private static String _current = "none";
+
+ public void doAction() {
+ _current = "action";
+ }
+
+ public static String getCurrent() {
+ return _current;
+ }
+
+ public static void setCurrent(String current) {
+ _current = current;
+ }
+}
Copied: branches/RF-8742-1/ui/output/ui/src/test/java/org/richfaces/component/UIDropDownMenuTest.java (from rev 20482, trunk/ui/output/ui/src/test/java/org/richfaces/component/UIDropDownMenuTest.java)
===================================================================
--- branches/RF-8742-1/ui/output/ui/src/test/java/org/richfaces/component/UIDropDownMenuTest.java (rev 0)
+++ branches/RF-8742-1/ui/output/ui/src/test/java/org/richfaces/component/UIDropDownMenuTest.java 2010-12-09 17:26:24 UTC (rev 20483)
@@ -0,0 +1,41 @@
+/*
+ * JBoss, Home of Professional Open Source
+ * Copyright ${year}, Red Hat, Inc. and individual contributors
+ * by the @authors tag. See the copyright.txt in the distribution for a
+ * full listing of individual contributors.
+ *
+ * This is free software; you can redistribute it and/or modify it
+ * under the terms of the GNU Lesser General Public License as
+ * published by the Free Software Foundation; either version 2.1 of
+ * the License, or (at your option) any later version.
+ *
+ * This software is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
+ * Lesser General Public License for more details.
+ *
+ * You should have received a copy of the GNU Lesser General Public
+ * License along with this software; if not, write to the Free
+ * Software Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA
+ * 02110-1301 USA, or see the FSF site: http://www.fsf.org.
+ */
+
+package org.richfaces.component;
+
+import org.junit.Assert;
+import org.junit.Before;
+import org.junit.Test;
+
+public class UIDropDownMenuTest {
+ private UIDropDownMenu dropDownMenu;
+
+ @Before
+ public void setUp () {
+ dropDownMenu = new UIDropDownMenu();
+ }
+
+ @Test
+ public void testSomething() {
+ Assert.assertNotNull(dropDownMenu);
+ }
+}
Copied: branches/RF-8742-1/ui/output/ui/src/test/java/org/richfaces/component/UIMenuGroupTest.java (from rev 20482, trunk/ui/output/ui/src/test/java/org/richfaces/component/UIMenuGroupTest.java)
===================================================================
--- branches/RF-8742-1/ui/output/ui/src/test/java/org/richfaces/component/UIMenuGroupTest.java (rev 0)
+++ branches/RF-8742-1/ui/output/ui/src/test/java/org/richfaces/component/UIMenuGroupTest.java 2010-12-09 17:26:24 UTC (rev 20483)
@@ -0,0 +1,40 @@
+/*
+ * JBoss, Home of Professional Open Source
+ * Copyright ${year}, Red Hat, Inc. and individual contributors
+ * by the @authors tag. See the copyright.txt in the distribution for a
+ * full listing of individual contributors.
+ *
+ * This is free software; you can redistribute it and/or modify it
+ * under the terms of the GNU Lesser General Public License as
+ * published by the Free Software Foundation; either version 2.1 of
+ * the License, or (at your option) any later version.
+ *
+ * This software is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
+ * Lesser General Public License for more details.
+ *
+ * You should have received a copy of the GNU Lesser General Public
+ * License along with this software; if not, write to the Free
+ * Software Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA
+ * 02110-1301 USA, or see the FSF site: http://www.fsf.org.
+ */
+package org.richfaces.component;
+
+import org.junit.Assert;
+import org.junit.Before;
+import org.junit.Test;
+
+public class UIMenuGroupTest {
+ private UIMenuGroup menuGroup;
+
+ @Before
+ public void setUp () {
+ menuGroup = new UIMenuGroup();
+ }
+
+ @Test
+ public void testSomething() {
+ Assert.assertNotNull(menuGroup);
+ }
+}
Copied: branches/RF-8742-1/ui/output/ui/src/test/java/org/richfaces/component/UIMenuItemTest.java (from rev 20482, trunk/ui/output/ui/src/test/java/org/richfaces/component/UIMenuItemTest.java)
===================================================================
--- branches/RF-8742-1/ui/output/ui/src/test/java/org/richfaces/component/UIMenuItemTest.java (rev 0)
+++ branches/RF-8742-1/ui/output/ui/src/test/java/org/richfaces/component/UIMenuItemTest.java 2010-12-09 17:26:24 UTC (rev 20483)
@@ -0,0 +1,40 @@
+/*
+ * JBoss, Home of Professional Open Source
+ * Copyright ${year}, Red Hat, Inc. and individual contributors
+ * by the @authors tag. See the copyright.txt in the distribution for a
+ * full listing of individual contributors.
+ *
+ * This is free software; you can redistribute it and/or modify it
+ * under the terms of the GNU Lesser General Public License as
+ * published by the Free Software Foundation; either version 2.1 of
+ * the License, or (at your option) any later version.
+ *
+ * This software is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
+ * Lesser General Public License for more details.
+ *
+ * You should have received a copy of the GNU Lesser General Public
+ * License along with this software; if not, write to the Free
+ * Software Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA
+ * 02110-1301 USA, or see the FSF site: http://www.fsf.org.
+ */
+package org.richfaces.component;
+
+import org.junit.Assert;
+import org.junit.Before;
+import org.junit.Test;
+
+public class UIMenuItemTest {
+ private UIMenuItem menuItem;
+
+ @Before
+ public void setUp () {
+ menuItem = new UIMenuItem();
+ }
+
+ @Test
+ public void testSomething() {
+ Assert.assertNotNull(menuItem);
+ }
+}
Copied: branches/RF-8742-1/ui/output/ui/src/test/java/org/richfaces/component/UIMenuSeparatorTest.java (from rev 20482, trunk/ui/output/ui/src/test/java/org/richfaces/component/UIMenuSeparatorTest.java)
===================================================================
--- branches/RF-8742-1/ui/output/ui/src/test/java/org/richfaces/component/UIMenuSeparatorTest.java (rev 0)
+++ branches/RF-8742-1/ui/output/ui/src/test/java/org/richfaces/component/UIMenuSeparatorTest.java 2010-12-09 17:26:24 UTC (rev 20483)
@@ -0,0 +1,40 @@
+/*
+ * JBoss, Home of Professional Open Source
+ * Copyright ${year}, Red Hat, Inc. and individual contributors
+ * by the @authors tag. See the copyright.txt in the distribution for a
+ * full listing of individual contributors.
+ *
+ * This is free software; you can redistribute it and/or modify it
+ * under the terms of the GNU Lesser General Public License as
+ * published by the Free Software Foundation; either version 2.1 of
+ * the License, or (at your option) any later version.
+ *
+ * This software is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
+ * Lesser General Public License for more details.
+ *
+ * You should have received a copy of the GNU Lesser General Public
+ * License along with this software; if not, write to the Free
+ * Software Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA
+ * 02110-1301 USA, or see the FSF site: http://www.fsf.org.
+ */
+package org.richfaces.component;
+
+import org.junit.Assert;
+import org.junit.Before;
+import org.junit.Test;
+
+public class UIMenuSeparatorTest {
+ private UIMenuSeparator menuSeparator;
+
+ @Before
+ public void setUp () {
+ menuSeparator = new UIMenuSeparator();
+ }
+
+ @Test
+ public void testSomething() {
+ Assert.assertNotNull(menuSeparator);
+ }
+}
Copied: branches/RF-8742-1/ui/output/ui/src/test/java/org/richfaces/renderkit/html/DrowDownMenuRendererTest.java (from rev 20482, trunk/ui/output/ui/src/test/java/org/richfaces/renderkit/html/DrowDownMenuRendererTest.java)
===================================================================
--- branches/RF-8742-1/ui/output/ui/src/test/java/org/richfaces/renderkit/html/DrowDownMenuRendererTest.java (rev 0)
+++ branches/RF-8742-1/ui/output/ui/src/test/java/org/richfaces/renderkit/html/DrowDownMenuRendererTest.java 2010-12-09 17:26:24 UTC (rev 20483)
@@ -0,0 +1,85 @@
+/*
+ * JBoss, Home of Professional Open Source
+ * Copyright ${year}, Red Hat, Inc. and individual contributors
+ * by the @authors tag. See the copyright.txt in the distribution for a
+ * full listing of individual contributors.
+ *
+ * This is free software; you can redistribute it and/or modify it
+ * under the terms of the GNU Lesser General Public License as
+ * published by the Free Software Foundation; either version 2.1 of
+ * the License, or (at your option) any later version.
+ *
+ * This software is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
+ * Lesser General Public License for more details.
+ *
+ * You should have received a copy of the GNU Lesser General Public
+ * License along with this software; if not, write to the Free
+ * Software Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA
+ * 02110-1301 USA, or see the FSF site: http://www.fsf.org.
+ */
+package org.richfaces.renderkit.html;
+
+import static org.junit.Assert.assertEquals;
+import static org.junit.Assert.assertNotNull;
+
+import java.io.File;
+import java.io.IOException;
+import java.net.URISyntaxException;
+
+import org.jboss.test.faces.htmlunit.HtmlUnitEnvironment;
+import org.junit.Test;
+import org.richfaces.component.DropDownMenuBean;
+import org.xml.sax.SAXException;
+
+import com.gargoylesoftware.htmlunit.html.HtmlDivision;
+import com.gargoylesoftware.htmlunit.html.HtmlPage;
+
+public class DrowDownMenuRendererTest extends RendererTestBase {
+
+ @Override
+ public void setUp() throws URISyntaxException {
+ environment = new HtmlUnitEnvironment();
+ environment.withWebRoot(new File(this.getClass().getResource(".").toURI()));
+ environment.withResource("/WEB-INF/faces-config.xml", "org/richfaces/component/faces-config.xml");
+ environment.start();
+ }
+
+ @Test
+ public void testDoEncodeServerMode() throws IOException, SAXException {
+ doTest("dropDownMenu_serverMode", "form:ddmenu");
+ }
+
+ @Test
+ public void testDoEncodeAjaxMode() throws IOException, SAXException {
+ doTest("dropDownMenu_ajaxMode", "form:ddmenu");
+ }
+
+ @Test
+ public void testServerClick() throws IOException, SAXException {
+ HtmlPage page = environment.getPage("/dropDownMenu_serverMode.jsf");
+ HtmlDivision item = (HtmlDivision) page.getElementById("form:saveAll");
+ assertNotNull(item);
+ DropDownMenuBean.setCurrent("none");
+ item.click();
+
+ item = (HtmlDivision) page.getElementById("form:saveAll");
+ assertNotNull(item);
+ assertEquals("action", DropDownMenuBean.getCurrent());
+ }
+
+ @Test
+ public void testAjaxClick() throws IOException, SAXException {
+ HtmlPage page = environment.getPage("/dropDownMenu_ajaxMode.jsf");
+
+ HtmlDivision item = (HtmlDivision) page.getElementById("form:saveAll");
+ assertNotNull(item);
+ DropDownMenuBean.setCurrent("none");
+ item.click();
+
+ item = (HtmlDivision) page.getElementById("form:saveAll");
+ assertNotNull(item);
+ assertEquals("action", DropDownMenuBean.getCurrent());
+ }
+}
Copied: branches/RF-8742-1/ui/output/ui/src/test/java/org/richfaces/renderkit/html/MenuItemRendererTest.java (from rev 20482, trunk/ui/output/ui/src/test/java/org/richfaces/renderkit/html/MenuItemRendererTest.java)
===================================================================
--- branches/RF-8742-1/ui/output/ui/src/test/java/org/richfaces/renderkit/html/MenuItemRendererTest.java (rev 0)
+++ branches/RF-8742-1/ui/output/ui/src/test/java/org/richfaces/renderkit/html/MenuItemRendererTest.java 2010-12-09 17:26:24 UTC (rev 20483)
@@ -0,0 +1,103 @@
+/*
+ * JBoss, Home of Professional Open Source
+ * Copyright ${year}, Red Hat, Inc. and individual contributors
+ * by the @authors tag. See the copyright.txt in the distribution for a
+ * full listing of individual contributors.
+ *
+ * This is free software; you can redistribute it and/or modify it
+ * under the terms of the GNU Lesser General Public License as
+ * published by the Free Software Foundation; either version 2.1 of
+ * the License, or (at your option) any later version.
+ *
+ * This software is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
+ * Lesser General Public License for more details.
+ *
+ * You should have received a copy of the GNU Lesser General Public
+ * License along with this software; if not, write to the Free
+ * Software Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA
+ * 02110-1301 USA, or see the FSF site: http://www.fsf.org.
+ */
+package org.richfaces.renderkit.html;
+
+import static org.junit.Assert.assertEquals;
+import static org.junit.Assert.assertNotNull;
+
+import java.io.File;
+import java.io.IOException;
+import java.net.URISyntaxException;
+
+import org.jboss.test.faces.htmlunit.HtmlUnitEnvironment;
+import org.junit.Test;
+import org.richfaces.component.DropDownMenuBean;
+import org.xml.sax.SAXException;
+
+import com.gargoylesoftware.htmlunit.html.HtmlDivision;
+import com.gargoylesoftware.htmlunit.html.HtmlPage;
+
+public class MenuItemRendererTest extends RendererTestBase {
+
+ @Override
+ public void setUp() throws URISyntaxException {
+ environment = new HtmlUnitEnvironment();
+ environment.withWebRoot(new File(this.getClass().getResource(".").toURI()));
+ environment.withResource("/WEB-INF/faces-config.xml", "org/richfaces/component/faces-config.xml");
+ environment.start();
+ }
+
+ @Test
+ public void testDoEncodeServerMode() throws IOException, SAXException {
+ doTest("menuItem_serverMode", "form:menuItem");
+ }
+
+ @Test
+ public void testServerClick() throws IOException, SAXException {
+ HtmlPage page = environment.getPage("/menuItem_serverMode.jsf");
+
+ HtmlDivision item = (HtmlDivision) page.getElementById("form:menuItem");
+ assertNotNull(item);
+ DropDownMenuBean.setCurrent("none");
+ item.click();
+
+ item = (HtmlDivision) page.getElementById("form:menuItem");
+ assertNotNull(item);
+ assertEquals("action", DropDownMenuBean.getCurrent());
+ }
+
+ @Test
+ public void testDoEncodeAjaxMode() throws IOException, SAXException {
+ doTest("menuItem_ajaxMode", "form:menuItem");
+ }
+
+ @Test
+ public void testAjaxClick() throws IOException, SAXException {
+ HtmlPage page = environment.getPage("/menuItem_ajaxMode.jsf");
+ HtmlDivision item = (HtmlDivision) page.getElementById("form:menuItem");
+ assertNotNull(item);
+ DropDownMenuBean.setCurrent("none");
+ item.click();
+
+ item = (HtmlDivision) page.getElementById("form:menuItem");
+ assertNotNull(item);
+ assertEquals("action", DropDownMenuBean.getCurrent());
+ }
+
+ @Test
+ public void testDoEncodeClientMode() throws IOException, SAXException {
+ doTest("menuItem_clientMode", "form:menuItem");
+ }
+
+ @Test
+ public void testClientClick() throws IOException, SAXException {
+ HtmlPage page = environment.getPage("/menuItem_clientMode.jsf");
+ HtmlDivision item = (HtmlDivision) page.getElementById("form:menuItem");
+ assertNotNull(item);
+ DropDownMenuBean.setCurrent("none");
+ item.click();
+
+ item = (HtmlDivision) page.getElementById("form:menuItem");
+ assertNotNull(item);
+ assertEquals("none", DropDownMenuBean.getCurrent());
+ }
+}
Copied: branches/RF-8742-1/ui/output/ui/src/test/resources/org/richfaces/component (from rev 20482, trunk/ui/output/ui/src/test/resources/org/richfaces/component)
Deleted: branches/RF-8742-1/ui/output/ui/src/test/resources/org/richfaces/component/faces-config.xml
===================================================================
--- trunk/ui/output/ui/src/test/resources/org/richfaces/component/faces-config.xml 2010-12-09 15:06:40 UTC (rev 20482)
+++ branches/RF-8742-1/ui/output/ui/src/test/resources/org/richfaces/component/faces-config.xml 2010-12-09 17:26:24 UTC (rev 20483)
@@ -1,14 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-
-<faces-config xmlns="http://java.sun.com/xml/ns/javaee"
- xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
- xsi:schemaLocation="http://java.sun.com/xml/ns/javaee http://java.sun.com/xml/ns/javaee/web-facesconfig_2_0.xsd"
- version="2.0">
-
- <managed-bean>
- <managed-bean-name>ddmBean</managed-bean-name>
- <managed-bean-class>org.richfaces.component.DropDownMenuBean</managed-bean-class>
- <managed-bean-scope>session</managed-bean-scope>
- </managed-bean>
-
-</faces-config>
\ No newline at end of file
Copied: branches/RF-8742-1/ui/output/ui/src/test/resources/org/richfaces/component/faces-config.xml (from rev 20482, trunk/ui/output/ui/src/test/resources/org/richfaces/component/faces-config.xml)
===================================================================
--- branches/RF-8742-1/ui/output/ui/src/test/resources/org/richfaces/component/faces-config.xml (rev 0)
+++ branches/RF-8742-1/ui/output/ui/src/test/resources/org/richfaces/component/faces-config.xml 2010-12-09 17:26:24 UTC (rev 20483)
@@ -0,0 +1,14 @@
+<?xml version="1.0" encoding="UTF-8"?>
+
+<faces-config xmlns="http://java.sun.com/xml/ns/javaee"
+ xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
+ xsi:schemaLocation="http://java.sun.com/xml/ns/javaee http://java.sun.com/xml/ns/javaee/web-facesconfig_2_0.xsd"
+ version="2.0">
+
+ <managed-bean>
+ <managed-bean-name>ddmBean</managed-bean-name>
+ <managed-bean-class>org.richfaces.component.DropDownMenuBean</managed-bean-class>
+ <managed-bean-scope>session</managed-bean-scope>
+ </managed-bean>
+
+</faces-config>
\ No newline at end of file
Copied: branches/RF-8742-1/ui/output/ui/src/test/resources/org/richfaces/renderkit/html/dropDownMenu_ajaxMode.xhtml (from rev 20482, trunk/ui/output/ui/src/test/resources/org/richfaces/renderkit/html/dropDownMenu_ajaxMode.xhtml)
===================================================================
--- branches/RF-8742-1/ui/output/ui/src/test/resources/org/richfaces/renderkit/html/dropDownMenu_ajaxMode.xhtml (rev 0)
+++ branches/RF-8742-1/ui/output/ui/src/test/resources/org/richfaces/renderkit/html/dropDownMenu_ajaxMode.xhtml 2010-12-09 17:26:24 UTC (rev 20483)
@@ -0,0 +1,62 @@
+<?xml version='1.0' encoding='UTF-8'?>
+<!--
+ JBoss, Home of Professional Open Source
+ Copyright ${year}, Red Hat, Inc. and individual contributors
+ by the @authors tag. See the copyright.txt in the distribution for a
+ full listing of individual contributors.
+
+ This is free software; you can redistribute it and/or modify it
+ under the terms of the GNU Lesser General Public License as
+ published by the Free Software Foundation; either version 2.1 of
+ the License, or (at your option) any later version.
+
+ This software is distributed in the hope that it will be useful,
+ but WITHOUT ANY WARRANTY; without even the implied warranty of
+ MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
+ Lesser General Public License for more details.
+
+ You should have received a copy of the GNU Lesser General Public
+ License along with this software; if not, write to the Free
+ Software Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA
+ 02110-1301 USA, or see the FSF site: http://www.fsf.org.
+-->
+
+
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
+<html xmlns="http://www.w3.org/1999/xhtml"
+ xmlns:fn="http://java.sun.com/jsp/jstl/functions"
+ xmlns:h="http://java.sun.com/jsf/html"
+ xmlns:f="http://java.sun.com/jsf/core"
+ xmlns:ui="http://java.sun.com/jsf/facelets"
+ xmlns:pn="http://richfaces.org/output"
+ xmlns:rich="http://richfaces.org/rich">
+
+ <h:head>
+ <title>Richfaces MenuItem Test</title>
+ </h:head>
+
+<h:body>
+ <h:form id="form">
+ <pn:dropDownMenu id="ddmenu" mode="ajax">
+ <f:facet name="label">
+ <h:panelGroup>
+ <h:graphicImage value="/images/ddmenu/copy.gif" styleClass="pic"/>
+ <h:outputText value="File"/>
+ </h:panelGroup>
+ </f:facet>
+ <pn:menuItem label="Open" id="open"/>
+ <pn:menuGroup label="Save As..." id="group">
+ <pn:menuItem label="Save" id="save">
+ <f:facet name="icon">
+ <h:graphicImage value="/images/ddmenu/save.gif" />
+ </f:facet>
+ </pn:menuItem>
+ <pn:menuSeparator id="menuSeparator1" />
+ <pn:menuItem id="saveAll" label="SaveAll" action="#{ddmBean.doAction}"/>
+ </pn:menuGroup>
+ </pn:dropDownMenu>
+ </h:form>
+</h:body>
+</html>
+
+
Copied: branches/RF-8742-1/ui/output/ui/src/test/resources/org/richfaces/renderkit/html/dropDownMenu_ajaxMode.xmlunit.xml (from rev 20482, trunk/ui/output/ui/src/test/resources/org/richfaces/renderkit/html/dropDownMenu_ajaxMode.xmlunit.xml)
===================================================================
--- branches/RF-8742-1/ui/output/ui/src/test/resources/org/richfaces/renderkit/html/dropDownMenu_ajaxMode.xmlunit.xml (rev 0)
+++ branches/RF-8742-1/ui/output/ui/src/test/resources/org/richfaces/renderkit/html/dropDownMenu_ajaxMode.xmlunit.xml 2010-12-09 17:26:24 UTC (rev 20483)
@@ -0,0 +1,60 @@
+ <div class="rf-ddm-lbl rf-ddm-lbl-unsel " id="form:ddmenu">
+ <div class="rf-ddm-lbl-dec">
+ <img src="/images/ddmenu/copy.gif" class="pic"/>
+ File
+ </div>
+ <div class="rf-ddm-pos">
+ <div class="rf-ddm-lst" id="form:ddmenu_list" style="display:none;min-width:250px;">
+ <div class="rf-ddm-lst-bg">
+ <div class="rf-ddm-itm rf-ddm-itm-unsel " id="form:open" onclick="RichFaces.ajax("form:open",event,{"incId":"1"} );return false;" onmouseout="this.className='rf-ddm-itm rf-ddm-itm-unsel '" onmouseover="this.className='rf-ddm-itm rf-ddm-itm-sel '">
+ <span class="rf-ddm-itm-ic ">
+ <div class="rf-ddm-emptyIcon">
+ </div>
+ </span>
+ <span class="rf-ddm-itm-lbl ">
+ Open
+ </span>
+ </div>
+ <div class="rf-ddm-itm rf-ddm-itm-unsel " id="form:group" onmouseout="this.className='rf-ddm-itm rf-ddm-itm-unsel'" onmouseover="this.className='rf-ddm-itm rf-ddm-itm-sel '">
+ <span class="rf-ddm-itm-ic ">
+ <div class="rf-ddm-emptyIcon">
+ </div>
+ </span>
+ <span class="rf-ddm-itm-lbl ">
+ Save As...
+ </span>
+ <div class="rf-ddm-nd">
+ <div class="rf-ddm-lst rf-ddm-sublst" id="form:group_list" style="display:none;min-width:250px;">
+ <div class="rf-ddm-lst-bg">
+ <div class="rf-ddm-itm rf-ddm-itm-unsel " id="form:save" onclick="RichFaces.ajax("form:save",event,{"incId":"1"} );return false;" onmouseout="this.className='rf-ddm-itm rf-ddm-itm-unsel '" onmouseover="this.className='rf-ddm-itm rf-ddm-itm-sel '">
+ <span class="rf-ddm-itm-ic ">
+ <img src="/images/ddmenu/save.gif"/>
+ </span>
+ <span class="rf-ddm-itm-lbl ">
+ Save
+ </span>
+ </div>
+ <div class="rf-ddm-sep">
+ </div>
+ <div class="rf-ddm-itm rf-ddm-itm-unsel " id="form:saveAll" onclick="RichFaces.ajax("form:saveAll",event,{"incId":"1"} );return false;" onmouseout="this.className='rf-ddm-itm rf-ddm-itm-unsel '" onmouseover="this.className='rf-ddm-itm rf-ddm-itm-sel '">
+ <span class="rf-ddm-itm-ic ">
+ <div class="rf-ddm-emptyIcon">
+ </div>
+ </span>
+ <span class="rf-ddm-itm-lbl ">
+ SaveAll
+ </span>
+ </div>
+ </div>
+ </div>
+ </div>
+ </div>
+ </div>
+ </div>
+ </div>
+ <script type="text/javascript">
+//<![CDATA[
+new RichFaces.ui.Menu("form:ddmenu",{"mode":"ajax"} ).initiateGroups([{"id":"form:group","horizontalOffset":"0","verticalOffset":"0","direction":"auto"} ] );
+//]]>
+ </script>
+ </div>
\ No newline at end of file
Copied: branches/RF-8742-1/ui/output/ui/src/test/resources/org/richfaces/renderkit/html/dropDownMenu_serverMode.xhtml (from rev 20482, trunk/ui/output/ui/src/test/resources/org/richfaces/renderkit/html/dropDownMenu_serverMode.xhtml)
===================================================================
--- branches/RF-8742-1/ui/output/ui/src/test/resources/org/richfaces/renderkit/html/dropDownMenu_serverMode.xhtml (rev 0)
+++ branches/RF-8742-1/ui/output/ui/src/test/resources/org/richfaces/renderkit/html/dropDownMenu_serverMode.xhtml 2010-12-09 17:26:24 UTC (rev 20483)
@@ -0,0 +1,62 @@
+<?xml version='1.0' encoding='UTF-8'?>
+<!--
+ JBoss, Home of Professional Open Source
+ Copyright ${year}, Red Hat, Inc. and individual contributors
+ by the @authors tag. See the copyright.txt in the distribution for a
+ full listing of individual contributors.
+
+ This is free software; you can redistribute it and/or modify it
+ under the terms of the GNU Lesser General Public License as
+ published by the Free Software Foundation; either version 2.1 of
+ the License, or (at your option) any later version.
+
+ This software is distributed in the hope that it will be useful,
+ but WITHOUT ANY WARRANTY; without even the implied warranty of
+ MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
+ Lesser General Public License for more details.
+
+ You should have received a copy of the GNU Lesser General Public
+ License along with this software; if not, write to the Free
+ Software Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA
+ 02110-1301 USA, or see the FSF site: http://www.fsf.org.
+-->
+
+
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
+<html xmlns="http://www.w3.org/1999/xhtml"
+ xmlns:fn="http://java.sun.com/jsp/jstl/functions"
+ xmlns:h="http://java.sun.com/jsf/html"
+ xmlns:f="http://java.sun.com/jsf/core"
+ xmlns:ui="http://java.sun.com/jsf/facelets"
+ xmlns:pn="http://richfaces.org/output"
+ xmlns:rich="http://richfaces.org/rich">
+
+ <h:head>
+ <title>Richfaces MenuItem Test</title>
+ </h:head>
+
+<h:body>
+ <h:form id="form">
+ <pn:dropDownMenu id="ddmenu">
+ <f:facet name="label">
+ <h:panelGroup>
+ <h:graphicImage value="/images/ddmenu/copy.gif" styleClass="pic"/>
+ <h:outputText value="File"/>
+ </h:panelGroup>
+ </f:facet>
+ <pn:menuItem label="Open" id="open"/>
+ <pn:menuGroup label="Save As..." id="group">
+ <pn:menuItem label="Save" id="save">
+ <f:facet name="icon">
+ <h:graphicImage value="/images/ddmenu/save.gif" />
+ </f:facet>
+ </pn:menuItem>
+ <pn:menuSeparator id="menuSeparator1" />
+ <pn:menuItem id="saveAll" label="SaveAll" action="#{ddmBean.doAction}"/>
+ </pn:menuGroup>
+ </pn:dropDownMenu>
+ </h:form>
+</h:body>
+</html>
+
+
Copied: branches/RF-8742-1/ui/output/ui/src/test/resources/org/richfaces/renderkit/html/dropDownMenu_serverMode.xmlunit.xml (from rev 20482, trunk/ui/output/ui/src/test/resources/org/richfaces/renderkit/html/dropDownMenu_serverMode.xmlunit.xml)
===================================================================
--- branches/RF-8742-1/ui/output/ui/src/test/resources/org/richfaces/renderkit/html/dropDownMenu_serverMode.xmlunit.xml (rev 0)
+++ branches/RF-8742-1/ui/output/ui/src/test/resources/org/richfaces/renderkit/html/dropDownMenu_serverMode.xmlunit.xml 2010-12-09 17:26:24 UTC (rev 20483)
@@ -0,0 +1,60 @@
+ <div class="rf-ddm-lbl rf-ddm-lbl-unsel " id="form:ddmenu">
+ <div class="rf-ddm-lbl-dec">
+ <img src="/images/ddmenu/copy.gif" class="pic"/>
+ File
+ </div>
+ <div class="rf-ddm-pos">
+ <div class="rf-ddm-lst" id="form:ddmenu_list" style="display:none;min-width:250px;">
+ <div class="rf-ddm-lst-bg">
+ <div class="rf-ddm-itm rf-ddm-itm-unsel " id="form:open" onclick="RichFaces.submitForm("form",{"form:open":"form:open"} )" onmouseout="this.className='rf-ddm-itm rf-ddm-itm-unsel '" onmouseover="this.className='rf-ddm-itm rf-ddm-itm-sel '">
+ <span class="rf-ddm-itm-ic ">
+ <div class="rf-ddm-emptyIcon">
+ </div>
+ </span>
+ <span class="rf-ddm-itm-lbl ">
+ Open
+ </span>
+ </div>
+ <div class="rf-ddm-itm rf-ddm-itm-unsel " id="form:group" onmouseout="this.className='rf-ddm-itm rf-ddm-itm-unsel'" onmouseover="this.className='rf-ddm-itm rf-ddm-itm-sel '">
+ <span class="rf-ddm-itm-ic ">
+ <div class="rf-ddm-emptyIcon">
+ </div>
+ </span>
+ <span class="rf-ddm-itm-lbl ">
+ Save As...
+ </span>
+ <div class="rf-ddm-nd">
+ <div class="rf-ddm-lst rf-ddm-sublst" id="form:group_list" style="display:none;min-width:250px;">
+ <div class="rf-ddm-lst-bg">
+ <div class="rf-ddm-itm rf-ddm-itm-unsel " id="form:save" onclick="RichFaces.submitForm("form",{"form:save":"form:save"} )" onmouseout="this.className='rf-ddm-itm rf-ddm-itm-unsel '" onmouseover="this.className='rf-ddm-itm rf-ddm-itm-sel '">
+ <span class="rf-ddm-itm-ic ">
+ <img src="/images/ddmenu/save.gif"/>
+ </span>
+ <span class="rf-ddm-itm-lbl ">
+ Save
+ </span>
+ </div>
+ <div class="rf-ddm-sep">
+ </div>
+ <div class="rf-ddm-itm rf-ddm-itm-unsel " id="form:saveAll" onclick="RichFaces.submitForm("form",{"form:saveAll":"form:saveAll"} )" onmouseout="this.className='rf-ddm-itm rf-ddm-itm-unsel '" onmouseover="this.className='rf-ddm-itm rf-ddm-itm-sel '">
+ <span class="rf-ddm-itm-ic ">
+ <div class="rf-ddm-emptyIcon">
+ </div>
+ </span>
+ <span class="rf-ddm-itm-lbl ">
+ SaveAll
+ </span>
+ </div>
+ </div>
+ </div>
+ </div>
+ </div>
+ </div>
+ </div>
+ </div>
+ <script type="text/javascript">
+//<![CDATA[
+new RichFaces.ui.Menu("form:ddmenu").initiateGroups([{"id":"form:group","horizontalOffset":"0","verticalOffset":"0","direction":"auto"} ] );
+//]]>
+ </script>
+ </div>
\ No newline at end of file
Copied: branches/RF-8742-1/ui/output/ui/src/test/resources/org/richfaces/renderkit/html/menuItem_ajaxMode.xhtml (from rev 20482, trunk/ui/output/ui/src/test/resources/org/richfaces/renderkit/html/menuItem_ajaxMode.xhtml)
===================================================================
--- branches/RF-8742-1/ui/output/ui/src/test/resources/org/richfaces/renderkit/html/menuItem_ajaxMode.xhtml (rev 0)
+++ branches/RF-8742-1/ui/output/ui/src/test/resources/org/richfaces/renderkit/html/menuItem_ajaxMode.xhtml 2010-12-09 17:26:24 UTC (rev 20483)
@@ -0,0 +1,45 @@
+<?xml version='1.0' encoding='UTF-8'?>
+<!--
+ JBoss, Home of Professional Open Source
+ Copyright ${year}, Red Hat, Inc. and individual contributors
+ by the @authors tag. See the copyright.txt in the distribution for a
+ full listing of individual contributors.
+
+ This is free software; you can redistribute it and/or modify it
+ under the terms of the GNU Lesser General Public License as
+ published by the Free Software Foundation; either version 2.1 of
+ the License, or (at your option) any later version.
+
+ This software is distributed in the hope that it will be useful,
+ but WITHOUT ANY WARRANTY; without even the implied warranty of
+ MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
+ Lesser General Public License for more details.
+
+ You should have received a copy of the GNU Lesser General Public
+ License along with this software; if not, write to the Free
+ Software Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA
+ 02110-1301 USA, or see the FSF site: http://www.fsf.org.
+-->
+
+
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
+<html xmlns="http://www.w3.org/1999/xhtml"
+ xmlns:fn="http://java.sun.com/jsp/jstl/functions"
+ xmlns:h="http://java.sun.com/jsf/html"
+ xmlns:f="http://java.sun.com/jsf/core"
+ xmlns:ui="http://java.sun.com/jsf/facelets"
+ xmlns:pn="http://richfaces.org/output"
+ xmlns:rich="http://richfaces.org/rich">
+
+ <h:head>
+ <title>Richfaces MenuItem Test</title>
+ </h:head>
+
+<h:body>
+ <h:form id="form">
+ <pn:menuItem id="menuItem" label="Test" action="#{ddmBean.doAction}" mode="ajax"/>
+ </h:form>
+</h:body>
+</html>
+
+
Copied: branches/RF-8742-1/ui/output/ui/src/test/resources/org/richfaces/renderkit/html/menuItem_ajaxMode.xmlunit.xml (from rev 20482, trunk/ui/output/ui/src/test/resources/org/richfaces/renderkit/html/menuItem_ajaxMode.xmlunit.xml)
===================================================================
--- branches/RF-8742-1/ui/output/ui/src/test/resources/org/richfaces/renderkit/html/menuItem_ajaxMode.xmlunit.xml (rev 0)
+++ branches/RF-8742-1/ui/output/ui/src/test/resources/org/richfaces/renderkit/html/menuItem_ajaxMode.xmlunit.xml 2010-12-09 17:26:24 UTC (rev 20483)
@@ -0,0 +1,12 @@
+ <div class="rf-ddm-itm rf-ddm-itm-unsel " id="form:menuItem"
+ onclick="RichFaces.ajax("form:menuItem",event,{"incId":"1"} );return false;"
+ onmouseout="this.className='rf-ddm-itm rf-ddm-itm-unsel '"
+ onmouseover="this.className='rf-ddm-itm rf-ddm-itm-sel '">
+ <span class="rf-ddm-itm-ic ">
+ <div class="rf-ddm-emptyIcon">
+ </div>
+ </span>
+ <span class="rf-ddm-itm-lbl ">
+ Test
+ </span>
+ </div>
\ No newline at end of file
Copied: branches/RF-8742-1/ui/output/ui/src/test/resources/org/richfaces/renderkit/html/menuItem_clientMode.xhtml (from rev 20482, trunk/ui/output/ui/src/test/resources/org/richfaces/renderkit/html/menuItem_clientMode.xhtml)
===================================================================
--- branches/RF-8742-1/ui/output/ui/src/test/resources/org/richfaces/renderkit/html/menuItem_clientMode.xhtml (rev 0)
+++ branches/RF-8742-1/ui/output/ui/src/test/resources/org/richfaces/renderkit/html/menuItem_clientMode.xhtml 2010-12-09 17:26:24 UTC (rev 20483)
@@ -0,0 +1,45 @@
+<?xml version='1.0' encoding='UTF-8'?>
+<!--
+ JBoss, Home of Professional Open Source
+ Copyright ${year}, Red Hat, Inc. and individual contributors
+ by the @authors tag. See the copyright.txt in the distribution for a
+ full listing of individual contributors.
+
+ This is free software; you can redistribute it and/or modify it
+ under the terms of the GNU Lesser General Public License as
+ published by the Free Software Foundation; either version 2.1 of
+ the License, or (at your option) any later version.
+
+ This software is distributed in the hope that it will be useful,
+ but WITHOUT ANY WARRANTY; without even the implied warranty of
+ MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
+ Lesser General Public License for more details.
+
+ You should have received a copy of the GNU Lesser General Public
+ License along with this software; if not, write to the Free
+ Software Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA
+ 02110-1301 USA, or see the FSF site: http://www.fsf.org.
+-->
+
+
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
+<html xmlns="http://www.w3.org/1999/xhtml"
+ xmlns:fn="http://java.sun.com/jsp/jstl/functions"
+ xmlns:h="http://java.sun.com/jsf/html"
+ xmlns:f="http://java.sun.com/jsf/core"
+ xmlns:ui="http://java.sun.com/jsf/facelets"
+ xmlns:pn="http://richfaces.org/output"
+ xmlns:rich="http://richfaces.org/rich">
+
+ <h:head>
+ <title>Richfaces MenuItem Test</title>
+ </h:head>
+
+<h:body>
+ <h:form id="form">
+ <pn:menuItem id="menuItem" label="Test" action="#{ddmBean.doAction}" mode="client"/>
+ </h:form>
+</h:body>
+</html>
+
+
Copied: branches/RF-8742-1/ui/output/ui/src/test/resources/org/richfaces/renderkit/html/menuItem_clientMode.xmlunit.xml (from rev 20482, trunk/ui/output/ui/src/test/resources/org/richfaces/renderkit/html/menuItem_clientMode.xmlunit.xml)
===================================================================
--- branches/RF-8742-1/ui/output/ui/src/test/resources/org/richfaces/renderkit/html/menuItem_clientMode.xmlunit.xml (rev 0)
+++ branches/RF-8742-1/ui/output/ui/src/test/resources/org/richfaces/renderkit/html/menuItem_clientMode.xmlunit.xml 2010-12-09 17:26:24 UTC (rev 20483)
@@ -0,0 +1,11 @@
+ <div class="rf-ddm-itm rf-ddm-itm-unsel " id="form:menuItem"
+ onmouseout="this.className='rf-ddm-itm rf-ddm-itm-unsel '"
+ onmouseover="this.className='rf-ddm-itm rf-ddm-itm-sel '">
+ <span class="rf-ddm-itm-ic ">
+ <div class="rf-ddm-emptyIcon">
+ </div>
+ </span>
+ <span class="rf-ddm-itm-lbl ">
+ Test
+ </span>
+ </div>
\ No newline at end of file
Copied: branches/RF-8742-1/ui/output/ui/src/test/resources/org/richfaces/renderkit/html/menuItem_serverMode.xhtml (from rev 20482, trunk/ui/output/ui/src/test/resources/org/richfaces/renderkit/html/menuItem_serverMode.xhtml)
===================================================================
--- branches/RF-8742-1/ui/output/ui/src/test/resources/org/richfaces/renderkit/html/menuItem_serverMode.xhtml (rev 0)
+++ branches/RF-8742-1/ui/output/ui/src/test/resources/org/richfaces/renderkit/html/menuItem_serverMode.xhtml 2010-12-09 17:26:24 UTC (rev 20483)
@@ -0,0 +1,45 @@
+<?xml version='1.0' encoding='UTF-8'?>
+<!--
+ JBoss, Home of Professional Open Source
+ Copyright ${year}, Red Hat, Inc. and individual contributors
+ by the @authors tag. See the copyright.txt in the distribution for a
+ full listing of individual contributors.
+
+ This is free software; you can redistribute it and/or modify it
+ under the terms of the GNU Lesser General Public License as
+ published by the Free Software Foundation; either version 2.1 of
+ the License, or (at your option) any later version.
+
+ This software is distributed in the hope that it will be useful,
+ but WITHOUT ANY WARRANTY; without even the implied warranty of
+ MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
+ Lesser General Public License for more details.
+
+ You should have received a copy of the GNU Lesser General Public
+ License along with this software; if not, write to the Free
+ Software Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA
+ 02110-1301 USA, or see the FSF site: http://www.fsf.org.
+-->
+
+
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
+<html xmlns="http://www.w3.org/1999/xhtml"
+ xmlns:fn="http://java.sun.com/jsp/jstl/functions"
+ xmlns:h="http://java.sun.com/jsf/html"
+ xmlns:f="http://java.sun.com/jsf/core"
+ xmlns:ui="http://java.sun.com/jsf/facelets"
+ xmlns:pn="http://richfaces.org/output"
+ xmlns:rich="http://richfaces.org/rich">
+
+ <h:head>
+ <title>Richfaces MenuItem Test</title>
+ </h:head>
+
+<h:body>
+ <h:form id="form">
+ <pn:menuItem id="menuItem" label="Test" action="#{ddmBean.doAction}" mode="server"/>
+ </h:form>
+</h:body>
+</html>
+
+
Copied: branches/RF-8742-1/ui/output/ui/src/test/resources/org/richfaces/renderkit/html/menuItem_serverMode.xmlunit.xml (from rev 20482, trunk/ui/output/ui/src/test/resources/org/richfaces/renderkit/html/menuItem_serverMode.xmlunit.xml)
===================================================================
--- branches/RF-8742-1/ui/output/ui/src/test/resources/org/richfaces/renderkit/html/menuItem_serverMode.xmlunit.xml (rev 0)
+++ branches/RF-8742-1/ui/output/ui/src/test/resources/org/richfaces/renderkit/html/menuItem_serverMode.xmlunit.xml 2010-12-09 17:26:24 UTC (rev 20483)
@@ -0,0 +1,12 @@
+ <div class="rf-ddm-itm rf-ddm-itm-unsel " id="form:menuItem"
+ onclick="RichFaces.submitForm("form",{"form:menuItem":"form:menuItem"} )"
+ onmouseout="this.className='rf-ddm-itm rf-ddm-itm-unsel '"
+ onmouseover="this.className='rf-ddm-itm rf-ddm-itm-sel '">
+ <span class="rf-ddm-itm-ic ">
+ <div class="rf-ddm-emptyIcon">
+ </div>
+ </span>
+ <span class="rf-ddm-itm-lbl ">
+ Test
+ </span>
+ </div>
\ No newline at end of file
Modified: branches/RF-8742-1/ui/parent/pom.xml
===================================================================
--- branches/RF-8742-1/ui/parent/pom.xml 2010-12-09 15:06:40 UTC (rev 20482)
+++ branches/RF-8742-1/ui/parent/pom.xml 2010-12-09 17:26:24 UTC (rev 20483)
@@ -89,12 +89,6 @@
<groupId>org.richfaces.core</groupId>
<artifactId>richfaces-core-api</artifactId>
</dependency>
- <dependency>
- <!-- todo remove this dependency or move to test scope -->
- <groupId>org.richfaces.core</groupId>
- <artifactId>richfaces-core-impl</artifactId>
- <scope>test</scope>
- </dependency>
<dependency>
<groupId>org.richfaces.cdk</groupId>
@@ -128,6 +122,11 @@
<!-- tests -->
<dependency>
+ <groupId>org.richfaces.core</groupId>
+ <artifactId>richfaces-core-impl</artifactId>
+ <scope>test</scope>
+ </dependency>
+ <dependency>
<groupId>org.jboss.test-jsf</groupId>
<artifactId>jsf-test-stage</artifactId>
<scope>test</scope>
14 years, 1 month
JBoss Rich Faces SVN: r20482 - in trunk: ui/input/ui/src/main/java/org/richfaces/renderkit and 1 other directories.
by richfaces-svn-commits@lists.jboss.org
Author: pyaschenko
Date: 2010-12-09 10:06:40 -0500 (Thu, 09 Dec 2010)
New Revision: 20482
Modified:
trunk/examples/input-demo/src/main/webapp/examples/autocomplete.xhtml
trunk/ui/input/ui/src/main/java/org/richfaces/renderkit/AutocompleteRendererBase.java
trunk/ui/input/ui/src/main/resources/META-INF/resources/org.richfaces/Autocomplete.js
trunk/ui/input/ui/src/main/resources/META-INF/resources/org.richfaces/AutocompleteBase.js
Log:
http://jira.jboss.com/jira/browse/RF-9835
Modified: trunk/examples/input-demo/src/main/webapp/examples/autocomplete.xhtml
===================================================================
--- trunk/examples/input-demo/src/main/webapp/examples/autocomplete.xhtml 2010-12-09 15:00:26 UTC (rev 20481)
+++ trunk/examples/input-demo/src/main/webapp/examples/autocomplete.xhtml 2010-12-09 15:06:40 UTC (rev 20482)
@@ -4,6 +4,7 @@
xmlns:f="http://java.sun.com/jsf/core"
xmlns:ui="http://java.sun.com/jsf/facelets"
xmlns:input="http://richfaces.org/input"
+ xmlns:rich="http://richfaces.org/iteration"
xmlns:a4j="http://richfaces.org/a4j">
<f:view contentType="text/html" />
@@ -43,6 +44,20 @@
#{country.name} #{country.iso} #{country.domain}
<a4j:ajax event="change" render="output"/>
</input:autocomplete>
+ <br /><h:outputText value="RF-9835:" /><br />
+ <input:autocomplete id="myAutocomplete1" mode="client" autocompleteMethod="#{autoCompleteBean.autocomplete}" var="country" fetchValue="#{country.name}" showButton="true"
+ value = "#{autoCompleteBean.value}" layout="table">
+ <rich:column>
+ <h:outputText value="#{country.name}" />
+ </rich:column>
+ <rich:column>
+ <h:outputText value="#{country.iso}" />
+ </rich:column>
+ <rich:column>
+ <h:outputText value="#{country.domain}" />
+ </rich:column>
+ <a4j:ajax event="change" render="output"/>
+ </input:autocomplete>
<br/><br/>
Your selection: <h:outputText id="output" value="#{autoCompleteBean.value}"/>
<script type="text/javascript">
Modified: trunk/ui/input/ui/src/main/java/org/richfaces/renderkit/AutocompleteRendererBase.java
===================================================================
--- trunk/ui/input/ui/src/main/java/org/richfaces/renderkit/AutocompleteRendererBase.java 2010-12-09 15:00:26 UTC (rev 20481)
+++ trunk/ui/input/ui/src/main/java/org/richfaces/renderkit/AutocompleteRendererBase.java 2010-12-09 15:06:40 UTC (rev 20482)
@@ -46,14 +46,12 @@
import org.ajax4jsf.context.AjaxContext;
import org.ajax4jsf.javascript.JSReference;
+import org.ajax4jsf.javascript.ScriptUtils;
import org.richfaces.component.AbstractAutocomplete;
import org.richfaces.component.AutocompleteLayout;
import org.richfaces.component.MetaComponentResolver;
import org.richfaces.component.util.InputUtils;
-import com.google.common.base.Predicates;
-import com.google.common.collect.Iterators;
-
/**
* @author Nick Belaevski
*/
@@ -196,6 +194,7 @@
if (mode != null && mode.equals("client")) {
List<Object> fetchValues = new ArrayList<Object>();
this.encodeItems(facesContext, component, fetchValues);
+ this.encodeFetchValues(facesContext, component, fetchValues);
} else {
strategy.encodeItemsContainerBegin(facesContext, component);
// TODO: is it needed
@@ -203,6 +202,18 @@
strategy.encodeItemsContainerEnd(facesContext, component);
}
}
+
+ private void encodeFetchValues(FacesContext facesContext, UIComponent component, List<Object> fetchValues) throws IOException{
+ if (!fetchValues.isEmpty()) {
+ ResponseWriter writer = facesContext.getResponseWriter();
+ writer.startElement(HtmlConstants.SCRIPT_ELEM, component);
+ writer.writeAttribute(HtmlConstants.TYPE_ATTR, "text/javascript", null);
+ StringBuilder sb = new StringBuilder("\njQuery(RichFaces.getDomElement('");
+ sb.append(component.getClientId(facesContext)).append("Items')).data({componentData:").append(ScriptUtils.toScript(fetchValues)).append("});\n");
+ writer.write(sb.toString());
+ writer.endElement(HtmlConstants.SCRIPT_ELEM);
+ }
+ }
public void encodeItem(FacesContext facesContext, AbstractAutocomplete comboBox, Object item,
AutocompleteEncodeStrategy strategy) throws IOException {
@@ -282,7 +293,7 @@
encodeItems(context, component, fetchValues);
partialWriter.endUpdate();
- if (!fetchValues.isEmpty() && Iterators.find(fetchValues.iterator(), Predicates.notNull()) != null) {
+ if (!fetchValues.isEmpty()) {
Map<String, Object> dataMap = AjaxContext.getCurrentInstance(context).getResponseComponentDataMap();
dataMap.put(component.getClientId(context), fetchValues);
}
Modified: trunk/ui/input/ui/src/main/resources/META-INF/resources/org.richfaces/Autocomplete.js
===================================================================
--- trunk/ui/input/ui/src/main/resources/META-INF/resources/org.richfaces/Autocomplete.js 2010-12-09 15:00:26 UTC (rev 20481)
+++ trunk/ui/input/ui/src/main/resources/META-INF/resources/org.richfaces/Autocomplete.js 2010-12-09 15:06:40 UTC (rev 20482)
@@ -137,8 +137,6 @@
};
var REGEXP_TRIM = /^[\n\s]*(.*)[\n\s]*$/;
- var REGEXP_TOKEN_LEFT;
- var REGEXP_TOKEN_RIGHT;
var getData = function (nodeList) {
var data = [];
@@ -152,8 +150,8 @@
this.useTokens = (typeof this.options.tokens == "string" && this.options.tokens.length>0);
if (this.useTokens) {
var escapedTokens = this.options.tokens.split('').join("\\");
- REGEXP_TOKEN_LEFT = new RegExp('[^'+escapedTokens+']+$','i');
- REGEXP_TOKEN_RIGHT = new RegExp('['+escapedTokens+']','i');
+ this.REGEXP_TOKEN_LEFT = new RegExp('[^'+escapedTokens+']+$','i');
+ this.REGEXP_TOKEN_RIGHT = new RegExp('['+escapedTokens+']','i');
this.hasSpaceToken = this.options.tokens.indexOf(' ')!=-1;
};
};
@@ -178,9 +176,12 @@
};
var updateItemsList = function (value, fetchValues) {
- this.items = $(rf.getDomElement(this.id+ID.ITEMS)).find("."+this.options.itemClass);
+ var itemsContainer = $(rf.getDomElement(this.id+ID.ITEMS));
+ this.items = itemsContainer.find("."+this.options.itemClass);
+ var data = itemsContainer.data();
+ itemsContainer.removeData();
if (this.items.length>0) {
- this.cache = new rf.utils.Cache((this.options.ajaxMode ? value : ""), this.items, fetchValues || getData, !this.options.ajaxMode);
+ this.cache = new rf.utils.Cache((this.options.ajaxMode ? value : ""), this.items, fetchValues || data.componentData || getData, !this.options.ajaxMode);
}
};
@@ -353,12 +354,12 @@
var cursorPosition = rf.Selection.getStart(field);
var beforeCursorStr = value.substring(0, cursorPosition);
var afterCursorStr = value.substring(cursorPosition);
- var r = REGEXP_TOKEN_LEFT.exec(beforeCursorStr);
+ var r = this.REGEXP_TOKEN_LEFT.exec(beforeCursorStr);
var result = "";
if (r) {
result = r[0];
}
- r = afterCursorStr.search(REGEXP_TOKEN_RIGHT);
+ r = afterCursorStr.search(this.REGEXP_TOKEN_RIGHT);
if (r==-1) r = afterCursorStr.length;
result += afterCursorStr.substring(0, r);
@@ -376,9 +377,9 @@
var beforeCursorStr = inputValue.substring(0, cursorPosition);
var afterCursorStr = inputValue.substring(cursorPosition);
- var pos = beforeCursorStr.search(REGEXP_TOKEN_LEFT);
+ var pos = beforeCursorStr.search(this.REGEXP_TOKEN_LEFT);
var startPos = pos!=-1 ? pos : beforeCursorStr.length;
- pos = afterCursorStr.search(REGEXP_TOKEN_RIGHT);
+ pos = afterCursorStr.search(this.REGEXP_TOKEN_RIGHT);
var endPos = pos!=-1 ? pos : afterCursorStr.length;
var beginNewValue = inputValue.substring(0, startPos) + value;
Modified: trunk/ui/input/ui/src/main/resources/META-INF/resources/org.richfaces/AutocompleteBase.js
===================================================================
--- trunk/ui/input/ui/src/main/resources/META-INF/resources/org.richfaces/AutocompleteBase.js 2010-12-09 15:00:26 UTC (rev 20481)
+++ trunk/ui/input/ui/src/main/resources/META-INF/resources/org.richfaces/AutocompleteBase.js 2010-12-09 15:06:40 UTC (rev 20482)
@@ -198,7 +198,7 @@
this.parentElement = element.parentNode;
$(element).detach().appendTo("body");
}
- $(rf.getDomElement(this.selectId)).setPosition({id: this.fieldId}, {type:"DROPDOWN", offset:[0,20]}).show();
+ $(rf.getDomElement(this.selectId)).setPosition({id: this.fieldId}, {type:"DROPDOWN"}).show();
this.isVisible = true;
this.__onShow(event);
}
14 years, 1 month
JBoss Rich Faces SVN: r20481 - in trunk/core/impl/src/main: resources/META-INF and 1 other directory.
by richfaces-svn-commits@lists.jboss.org
Author: nbelaevski
Date: 2010-12-09 10:00:26 -0500 (Thu, 09 Dec 2010)
New Revision: 20481
Added:
trunk/core/impl/src/main/java/org/richfaces/application/SkinningExternalContextFactory.java
Modified:
trunk/core/impl/src/main/resources/META-INF/components.faces-config.xml
Log:
Added workaround for http://java.net/jira/browse/JAVASERVERFACES-1646
Added: trunk/core/impl/src/main/java/org/richfaces/application/SkinningExternalContextFactory.java
===================================================================
--- trunk/core/impl/src/main/java/org/richfaces/application/SkinningExternalContextFactory.java (rev 0)
+++ trunk/core/impl/src/main/java/org/richfaces/application/SkinningExternalContextFactory.java 2010-12-09 15:00:26 UTC (rev 20481)
@@ -0,0 +1,88 @@
+/*
+ * JBoss, Home of Professional Open Source
+ * Copyright 2010, Red Hat, Inc. and individual contributors
+ * by the @authors tag. See the copyright.txt in the distribution for a
+ * full listing of individual contributors.
+ *
+ * This is free software; you can redistribute it and/or modify it
+ * under the terms of the GNU Lesser General Public License as
+ * published by the Free Software Foundation; either version 2.1 of
+ * the License, or (at your option) any later version.
+ *
+ * This software is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
+ * Lesser General Public License for more details.
+ *
+ * You should have received a copy of the GNU Lesser General Public
+ * License along with this software; if not, write to the Free
+ * Software Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA
+ * 02110-1301 USA, or see the FSF site: http://www.fsf.org.
+ */
+package org.richfaces.application;
+
+import javax.faces.FacesException;
+import javax.faces.FacesWrapper;
+import javax.faces.context.ExternalContext;
+import javax.faces.context.ExternalContextFactory;
+import javax.faces.context.ExternalContextWrapper;
+
+/**
+ * @author Nick Belaevski
+ *
+ */
+public class SkinningExternalContextFactory extends ExternalContextFactory implements FacesWrapper<ExternalContextFactory> {
+
+ private ExternalContextFactory factory;
+
+ private static final class ExternalContextWrapperImpl extends ExternalContextWrapper {
+
+ private ExternalContext externalContext;
+
+ public ExternalContextWrapperImpl(ExternalContext externalContext) {
+ super();
+ this.externalContext = externalContext;
+ }
+
+ @Override
+ public String getMimeType(String file) {
+ String mimeType;
+
+ if (file != null && file.endsWith(".ecss")) {
+ mimeType = "text/plain";
+ } else {
+ mimeType = super.getMimeType(file);
+ }
+
+ return mimeType;
+ }
+
+ @Override
+ public ExternalContext getWrapped() {
+ return externalContext;
+ }
+
+ }
+
+ public SkinningExternalContextFactory(ExternalContextFactory factory) {
+ super();
+ this.factory = factory;
+ }
+
+ @Override
+ public ExternalContextFactory getWrapped() {
+ return factory;
+ }
+
+ @Override
+ public ExternalContext getExternalContext(Object context, Object request, Object response) throws FacesException {
+ ExternalContext externalContext = factory.getExternalContext(context, request, response);
+
+ return wrap(externalContext);
+ }
+
+ private ExternalContext wrap(ExternalContext externalContext) {
+ return new ExternalContextWrapperImpl(externalContext);
+ }
+
+}
Modified: trunk/core/impl/src/main/resources/META-INF/components.faces-config.xml
===================================================================
--- trunk/core/impl/src/main/resources/META-INF/components.faces-config.xml 2010-12-09 14:50:01 UTC (rev 20480)
+++ trunk/core/impl/src/main/resources/META-INF/components.faces-config.xml 2010-12-09 15:00:26 UTC (rev 20481)
@@ -4,6 +4,7 @@
version="2.0">
<factory>
+ <external-context-factory>org.richfaces.application.SkinningExternalContextFactory</external-context-factory>
<partial-view-context-factory>org.richfaces.context.PartialViewContextFactoryImpl</partial-view-context-factory>
</factory>
14 years, 1 month
JBoss Rich Faces SVN: r20480 - in trunk: core/impl/src/main/java/org/ajax4jsf/context and 4 other directories.
by richfaces-svn-commits@lists.jboss.org
Author: Alex.Kolonitsky
Date: 2010-12-09 09:50:01 -0500 (Thu, 09 Dec 2010)
New Revision: 20480
Modified:
trunk/core/api/src/main/java/org/ajax4jsf/context/AjaxContext.java
trunk/core/impl/src/main/java/org/ajax4jsf/context/AjaxContextImpl.java
trunk/ui/common/ui/src/main/java/org/richfaces/renderkit/AjaxChildrenRenderer.java
trunk/ui/common/ui/src/main/java/org/richfaces/renderkit/util/AjaxRendererUtils.java
trunk/ui/output/ui/src/main/java/org/richfaces/component/AbstractPanelMenu.java
trunk/ui/output/ui/src/main/java/org/richfaces/component/AbstractPanelMenuItem.java
trunk/ui/output/ui/src/main/java/org/richfaces/component/AbstractTogglePanel.java
trunk/ui/output/ui/src/main/java/org/richfaces/component/AbstractTooltip.java
trunk/ui/output/ui/src/main/java/org/richfaces/component/UIPanelMenu.java
trunk/ui/output/ui/src/main/java/org/richfaces/component/UIPanelMenuItem.java
trunk/ui/output/ui/src/main/java/org/richfaces/component/UITogglePanel.java
trunk/ui/output/ui/src/main/java/org/richfaces/component/UITooltip.java
trunk/ui/output/ui/src/main/resources/META-INF/pn.faces-config.xml
trunk/ui/output/ui/src/main/resources/META-INF/pn.taglib.xml
Log:
RF-9773 rich:tabPanel - replace attribute limitToList with disableImplicitRender
Modified: trunk/core/api/src/main/java/org/ajax4jsf/context/AjaxContext.java
===================================================================
--- trunk/core/api/src/main/java/org/ajax4jsf/context/AjaxContext.java 2010-12-09 14:40:27 UTC (rev 20479)
+++ trunk/core/api/src/main/java/org/ajax4jsf/context/AjaxContext.java 2010-12-09 14:50:01 UTC (rev 20480)
@@ -47,7 +47,7 @@
private static final String DEFAULT_CONTEXT_CLASS = "org.ajax4jsf.context.AjaxContextImpl";
private static Map<ClassLoader, Class<? extends AjaxContext>> ajaxContextClasses =
new HashMap<ClassLoader, Class<? extends AjaxContext>>();
- private boolean limitToList;
+ private boolean disableImplicitRender;
protected AjaxContext() { }
@@ -125,12 +125,12 @@
public abstract void setSubmittedRegionClientId(String submittedClientId);
- public boolean isLimitToList() {
- return limitToList;
+ public boolean isDisableImplicitRender() {
+ return disableImplicitRender;
}
- public void setLimitToList(boolean limitToList) {
- this.limitToList = limitToList;
+ public void setDisableImplicitRender(boolean disableImplicitRender) {
+ this.disableImplicitRender = disableImplicitRender;
}
/**
Modified: trunk/core/impl/src/main/java/org/ajax4jsf/context/AjaxContextImpl.java
===================================================================
--- trunk/core/impl/src/main/java/org/ajax4jsf/context/AjaxContextImpl.java 2010-12-09 14:40:27 UTC (rev 20479)
+++ trunk/core/impl/src/main/java/org/ajax4jsf/context/AjaxContextImpl.java 2010-12-09 14:50:01 UTC (rev 20480)
@@ -302,8 +302,8 @@
}
// Is that component limit to list ?
- if (Boolean.TRUE.equals(component.getAttributes().get("limitToList"))) {
- setLimitToList(true);
+ if (Boolean.TRUE.equals(component.getAttributes().get("disableImplicitRender"))) {
+ setDisableImplicitRender(true);
}
}
Modified: trunk/ui/common/ui/src/main/java/org/richfaces/renderkit/AjaxChildrenRenderer.java
===================================================================
--- trunk/ui/common/ui/src/main/java/org/richfaces/renderkit/AjaxChildrenRenderer.java 2010-12-09 14:40:27 UTC (rev 20479)
+++ trunk/ui/common/ui/src/main/java/org/richfaces/renderkit/AjaxChildrenRenderer.java 2010-12-09 14:50:01 UTC (rev 20480)
@@ -72,7 +72,7 @@
// Do not check children if we have no id to render under naming
// container.
- if (AjaxContext.getCurrentInstance(context).isLimitToList() && noIdUnderPath(path, ids)) {
+ if (AjaxContext.getCurrentInstance(context).isDisableImplicitRender() && noIdUnderPath(path, ids)) {
return;
}
}
@@ -113,7 +113,7 @@
if (component.isRendered()) { // skip not-rendered components.
boolean found = false;
- boolean limitToList = AjaxContext.getCurrentInstance(context).isLimitToList();
+ boolean disableImplicitRender = AjaxContext.getCurrentInstance(context).isDisableImplicitRender();
String elementId = component.getId();
String absoluteId = currentPath + elementId;
@@ -133,12 +133,12 @@
}
//
- if (!found && limitToList && (component instanceof NamingContainer)
+ if (!found && disableImplicitRender && (component instanceof NamingContainer)
&& noIdUnderPath(absoluteId + NamingContainer.SEPARATOR_CHAR, ids)) {
return;
}
- if (!found && !limitToList && (component instanceof AjaxOutput)) {
+ if (!found && !disableImplicitRender && (component instanceof AjaxOutput)) {
if (((AjaxOutput) component).isAjaxRendered()) {
// renderChild(context, element);
Modified: trunk/ui/common/ui/src/main/java/org/richfaces/renderkit/util/AjaxRendererUtils.java
===================================================================
--- trunk/ui/common/ui/src/main/java/org/richfaces/renderkit/util/AjaxRendererUtils.java 2010-12-09 14:40:27 UTC (rev 20479)
+++ trunk/ui/common/ui/src/main/java/org/richfaces/renderkit/util/AjaxRendererUtils.java 2010-12-09 14:50:01 UTC (rev 20480)
@@ -359,7 +359,7 @@
// options.put("parameters", parameters);
// }
// // parameter to render only current list of areas.
-//// if (isAjaxLimitToList(uiComponent)) {
+//// if (isAjaxDisableImplicitRender(uiComponent)) {
//// Set<? extends Object> ajaxAreas = getAjaxAreas(uiComponent);
//// Set<String> areasIds = new HashSet<String>();
//// if (null != ajaxAreas) {
@@ -507,7 +507,7 @@
// Set ajaxAreas = getAjaxAreas(uiComponent);
// onClick.append(',');
// // parameter to render only current list of areas.
- // if (isAjaxLimitToList(uiComponent) && ajaxAreas != null &&
+ // if (isAjaxDisableImplicitRender(uiComponent) && ajaxAreas != null &&
// ajaxAreas.size() > 0)
// {
// onClick.append('[');
Modified: trunk/ui/output/ui/src/main/java/org/richfaces/component/AbstractPanelMenu.java
===================================================================
--- trunk/ui/output/ui/src/main/java/org/richfaces/component/AbstractPanelMenu.java 2010-12-09 14:40:27 UTC (rev 20479)
+++ trunk/ui/output/ui/src/main/java/org/richfaces/component/AbstractPanelMenu.java 2010-12-09 14:50:01 UTC (rev 20480)
@@ -192,7 +192,7 @@
public abstract boolean isBypassUpdates();
- public abstract boolean isLimitToList();
+ public abstract boolean isDisableImplicitRender();
public abstract Object getData();
Modified: trunk/ui/output/ui/src/main/java/org/richfaces/component/AbstractPanelMenuItem.java
===================================================================
--- trunk/ui/output/ui/src/main/java/org/richfaces/component/AbstractPanelMenuItem.java 2010-12-09 14:40:27 UTC (rev 20479)
+++ trunk/ui/output/ui/src/main/java/org/richfaces/component/AbstractPanelMenuItem.java 2010-12-09 14:50:01 UTC (rev 20480)
@@ -114,7 +114,7 @@
public abstract boolean isBypassUpdates();
- public abstract boolean isLimitToList();
+ public abstract boolean isDisableImplicitRender();
public abstract Object getData();
Modified: trunk/ui/output/ui/src/main/java/org/richfaces/component/AbstractTogglePanel.java
===================================================================
--- trunk/ui/output/ui/src/main/java/org/richfaces/component/AbstractTogglePanel.java 2010-12-09 14:40:27 UTC (rev 20479)
+++ trunk/ui/output/ui/src/main/java/org/richfaces/component/AbstractTogglePanel.java 2010-12-09 14:50:01 UTC (rev 20480)
@@ -564,7 +564,7 @@
public abstract boolean isBypassUpdates();
- public abstract boolean isLimitToList();
+ public abstract boolean isDisableImplicitRender();
public abstract boolean isCycledSwitching();
Modified: trunk/ui/output/ui/src/main/java/org/richfaces/component/AbstractTooltip.java
===================================================================
--- trunk/ui/output/ui/src/main/java/org/richfaces/component/AbstractTooltip.java 2010-12-09 14:40:27 UTC (rev 20479)
+++ trunk/ui/output/ui/src/main/java/org/richfaces/component/AbstractTooltip.java 2010-12-09 14:50:01 UTC (rev 20480)
@@ -88,7 +88,7 @@
public abstract boolean isBypassUpdates();
- public abstract boolean isLimitToList();
+ public abstract boolean isDisableImplicitRender();
public abstract Object getData();
Modified: trunk/ui/output/ui/src/main/java/org/richfaces/component/UIPanelMenu.java
===================================================================
--- trunk/ui/output/ui/src/main/java/org/richfaces/component/UIPanelMenu.java 2010-12-09 14:40:27 UTC (rev 20479)
+++ trunk/ui/output/ui/src/main/java/org/richfaces/component/UIPanelMenu.java 2010-12-09 14:50:01 UTC (rev 20480)
@@ -42,7 +42,7 @@
activeItem,
itemChangeListener,
bypassUpdates,
- limitToList,
+ disableImplicitRender,
data,
status,
execute,
@@ -121,12 +121,12 @@
getStateHelper().put(PropertyKeys.bypassUpdates, bypassUpdates);
}
- public boolean isLimitToList() {
- return Boolean.valueOf(String.valueOf(getStateHelper().eval(PropertyKeys.limitToList)));
+ public boolean isDisableImplicitRender() {
+ return Boolean.valueOf(String.valueOf(getStateHelper().eval(PropertyKeys.disableImplicitRender)));
}
- public void setLimitToList(boolean limitToList) {
- getStateHelper().put(PropertyKeys.limitToList, limitToList);
+ public void setDisableImplicitRender(boolean disableImplicitRender) {
+ getStateHelper().put(PropertyKeys.disableImplicitRender, disableImplicitRender);
}
public Object getData() {
Modified: trunk/ui/output/ui/src/main/java/org/richfaces/component/UIPanelMenuItem.java
===================================================================
--- trunk/ui/output/ui/src/main/java/org/richfaces/component/UIPanelMenuItem.java 2010-12-09 14:40:27 UTC (rev 20479)
+++ trunk/ui/output/ui/src/main/java/org/richfaces/component/UIPanelMenuItem.java 2010-12-09 14:50:01 UTC (rev 20480)
@@ -37,7 +37,7 @@
name,
disabled,
bypassUpdates,
- limitToList,
+ disableImplicitRender,
data,
status,
execute,
@@ -84,12 +84,12 @@
getStateHelper().put(PropertyKeys.bypassUpdates, bypassUpdates);
}
- public boolean isLimitToList() {
- return Boolean.valueOf(String.valueOf(getStateHelper().eval(PropertyKeys.limitToList)));
+ public boolean isDisableImplicitRender() {
+ return Boolean.valueOf(String.valueOf(getStateHelper().eval(PropertyKeys.disableImplicitRender)));
}
- public void setLimitToList(boolean limitToList) {
- getStateHelper().put(PropertyKeys.limitToList, limitToList);
+ public void setDisableImplicitRender(boolean disableImplicitRender) {
+ getStateHelper().put(PropertyKeys.disableImplicitRender, disableImplicitRender);
}
public Object getData() {
Modified: trunk/ui/output/ui/src/main/java/org/richfaces/component/UITogglePanel.java
===================================================================
--- trunk/ui/output/ui/src/main/java/org/richfaces/component/UITogglePanel.java 2010-12-09 14:40:27 UTC (rev 20479)
+++ trunk/ui/output/ui/src/main/java/org/richfaces/component/UITogglePanel.java 2010-12-09 14:50:01 UTC (rev 20480)
@@ -33,7 +33,7 @@
public enum PropertyKeys {
switchType,
bypassUpdates,
- limitToList,
+ disableImplicitRender,
cycledSwitching,
data,
status,
@@ -59,12 +59,12 @@
getStateHelper().put(PropertyKeys.bypassUpdates, bypassUpdates);
}
- public boolean isLimitToList() {
- return Boolean.valueOf(String.valueOf(getStateHelper().eval(PropertyKeys.limitToList)));
+ public boolean isDisableImplicitRender() {
+ return Boolean.valueOf(String.valueOf(getStateHelper().eval(PropertyKeys.disableImplicitRender)));
}
- public void setLimitToList(boolean limitToList) {
- getStateHelper().put(PropertyKeys.limitToList, limitToList);
+ public void setDisableImplicitRender(boolean disableImplicitRender) {
+ getStateHelper().put(PropertyKeys.disableImplicitRender, disableImplicitRender);
}
public boolean isCycledSwitching() {
Modified: trunk/ui/output/ui/src/main/java/org/richfaces/component/UITooltip.java
===================================================================
--- trunk/ui/output/ui/src/main/java/org/richfaces/component/UITooltip.java 2010-12-09 14:40:27 UTC (rev 20479)
+++ trunk/ui/output/ui/src/main/java/org/richfaces/component/UITooltip.java 2010-12-09 14:50:01 UTC (rev 20480)
@@ -49,7 +49,7 @@
showEvent,
verticalOffset,
bypassUpdates,
- limitToList,
+ disableImplicitRender,
data,
status,
execute,
@@ -176,12 +176,12 @@
getStateHelper().put(PropertyKeys.bypassUpdates, bypassUpdates);
}
- public boolean isLimitToList() {
- return Boolean.valueOf(String.valueOf(getStateHelper().eval(PropertyKeys.limitToList)));
+ public boolean isDisableImplicitRender() {
+ return Boolean.valueOf(String.valueOf(getStateHelper().eval(PropertyKeys.disableImplicitRender)));
}
- public void setLimitToList(boolean limitToList) {
- getStateHelper().put(PropertyKeys.limitToList, limitToList);
+ public void setDisableImplicitRender(boolean disableImplicitRender) {
+ getStateHelper().put(PropertyKeys.disableImplicitRender, disableImplicitRender);
}
public Object getData() {
Modified: trunk/ui/output/ui/src/main/resources/META-INF/pn.faces-config.xml
===================================================================
--- trunk/ui/output/ui/src/main/resources/META-INF/pn.faces-config.xml 2010-12-09 14:40:27 UTC (rev 20479)
+++ trunk/ui/output/ui/src/main/resources/META-INF/pn.faces-config.xml 2010-12-09 14:50:01 UTC (rev 20480)
@@ -889,7 +889,7 @@
</property>
<property>
<description></description>
- <property-name>limitToList</property-name>
+ <property-name>disableImplicitRender</property-name>
<property-class>boolean</property-class>
</property>
<property>
@@ -940,7 +940,7 @@
</property>
<property>
<description></description>
- <property-name>limitToList</property-name>
+ <property-name>disableImplicitRender</property-name>
<property-class>boolean</property-class>
</property>
<property>
@@ -1000,7 +1000,7 @@
</property>
<property>
<description></description>
- <property-name>limitToList</property-name>
+ <property-name>disableImplicitRender</property-name>
<property-class>boolean</property-class>
</property>
<property>
@@ -1245,7 +1245,7 @@
</property>
<property>
<description></description>
- <property-name>limitToList</property-name>
+ <property-name>disableImplicitRender</property-name>
<property-class>boolean</property-class>
</property>
<property>
@@ -1615,7 +1615,7 @@
</property>
<property>
<description></description>
- <property-name>limitToList</property-name>
+ <property-name>disableImplicitRender</property-name>
<property-class>boolean</property-class>
</property>
<property>
@@ -1763,7 +1763,7 @@
</property>
<property>
<description></description>
- <property-name>limitToList</property-name>
+ <property-name>disableImplicitRender</property-name>
<property-class>boolean</property-class>
</property>
<property>
Modified: trunk/ui/output/ui/src/main/resources/META-INF/pn.taglib.xml
===================================================================
--- trunk/ui/output/ui/src/main/resources/META-INF/pn.taglib.xml 2010-12-09 14:40:27 UTC (rev 20479)
+++ trunk/ui/output/ui/src/main/resources/META-INF/pn.taglib.xml 2010-12-09 14:50:01 UTC (rev 20480)
@@ -1040,7 +1040,7 @@
</attribute>
<attribute>
<description></description>
- <name>limitToList</name>
+ <name>disableImplicitRender</name>
<type>boolean</type>
</attribute>
<attribute>
@@ -1290,7 +1290,7 @@
</attribute>
<attribute>
<description></description>
- <name>limitToList</name>
+ <name>disableImplicitRender</name>
<type>boolean</type>
</attribute>
<attribute>
@@ -1440,7 +1440,7 @@
</attribute>
<attribute>
<description></description>
- <name>limitToList</name>
+ <name>disableImplicitRender</name>
<type>boolean</type>
</attribute>
<attribute>
@@ -1770,7 +1770,7 @@
</attribute>
<attribute>
<description></description>
- <name>limitToList</name>
+ <name>disableImplicitRender</name>
<type>boolean</type>
</attribute>
<attribute>
@@ -1895,7 +1895,7 @@
</attribute>
<attribute>
<description></description>
- <name>limitToList</name>
+ <name>disableImplicitRender</name>
<type>boolean</type>
</attribute>
<attribute>
@@ -2106,7 +2106,7 @@
</attribute>
<attribute>
<description></description>
- <name>limitToList</name>
+ <name>disableImplicitRender</name>
<type>boolean</type>
</attribute>
<attribute>
@@ -2397,7 +2397,7 @@
</attribute>
<attribute>
<description></description>
- <name>limitToList</name>
+ <name>disableImplicitRender</name>
<type>boolean</type>
</attribute>
<attribute>
14 years, 1 month
JBoss Rich Faces SVN: r20479 - trunk/ui/iteration/ui/src/main/java/org/richfaces/component.
by richfaces-svn-commits@lists.jboss.org
Author: nbelaevski
Date: 2010-12-09 09:40:27 -0500 (Thu, 09 Dec 2010)
New Revision: 20479
Modified:
trunk/ui/iteration/ui/src/main/java/org/richfaces/component/DataTableDataIterator.java
trunk/ui/iteration/ui/src/main/java/org/richfaces/component/DataTableFixedChildrenIterator.java
Log:
https://issues.jboss.org/browse/RF-9778
Modified: trunk/ui/iteration/ui/src/main/java/org/richfaces/component/DataTableDataIterator.java
===================================================================
--- trunk/ui/iteration/ui/src/main/java/org/richfaces/component/DataTableDataIterator.java 2010-12-09 14:07:18 UTC (rev 20478)
+++ trunk/ui/iteration/ui/src/main/java/org/richfaces/component/DataTableDataIterator.java 2010-12-09 14:40:27 UTC (rev 20479)
@@ -24,6 +24,7 @@
import java.util.Iterator;
+import javax.faces.component.UIColumn;
import javax.faces.component.UIComponent;
@@ -43,7 +44,7 @@
UIComponent nextColumn = null;
while (nextColumn == null && childrenIterator.hasNext()) {
UIComponent child = childrenIterator.next();
- if ((child instanceof AbstractColumn) || (child instanceof Column)) {
+ if ((child instanceof UIColumn) || (child instanceof Column)) {
nextColumn = child;
}
}
Modified: trunk/ui/iteration/ui/src/main/java/org/richfaces/component/DataTableFixedChildrenIterator.java
===================================================================
--- trunk/ui/iteration/ui/src/main/java/org/richfaces/component/DataTableFixedChildrenIterator.java 2010-12-09 14:07:18 UTC (rev 20478)
+++ trunk/ui/iteration/ui/src/main/java/org/richfaces/component/DataTableFixedChildrenIterator.java 2010-12-09 14:40:27 UTC (rev 20479)
@@ -24,6 +24,7 @@
import java.util.Iterator;
+import javax.faces.component.UIColumn;
import javax.faces.component.UIComponent;
@@ -47,7 +48,7 @@
Iterator<UIComponent> childrenIterator = getChildrenIterator();
while (next == null && childrenIterator.hasNext()) {
UIComponent child = childrenIterator.next();
- if ((child instanceof AbstractColumn) && child.isRendered()) {
+ if ((child instanceof UIColumn) && child.isRendered()) {
currentColumnIterator = getChildFacetIterator(child);
next = nextItem();
}
14 years, 1 month
JBoss Rich Faces SVN: r20478 - in trunk: core/impl/src/test/resources/javascript and 12 other directories.
by richfaces-svn-commits@lists.jboss.org
Author: nbelaevski
Date: 2010-12-09 09:07:18 -0500 (Thu, 09 Dec 2010)
New Revision: 20478
Added:
trunk/ui/common/ui/src/main/java/org/richfaces/renderkit/AjaxFunction.java
trunk/ui/common/ui/src/main/java/org/richfaces/renderkit/AjaxOptions.java
Removed:
trunk/ui/common/ui/src/main/java/org/richfaces/renderkit/AjaxEventOptions.java
Modified:
trunk/core/impl/src/main/resources/META-INF/resources/richfaces.js
trunk/core/impl/src/test/resources/javascript/4_0_0.html
trunk/examples/richfaces-showcase/src/main/webapp/richfaces/calendar/samples/clientStylingDisablement-sample.xhtml
trunk/examples/richfaces-showcase/src/main/webapp/richfaces/dataTable/samples/simpleTable-sample.xhtml
trunk/examples/richfaces-showcase/src/main/webapp/richfaces/dataTable/simpleTable.xhtml
trunk/examples/richfaces-showcase/src/main/webapp/richfaces/subTableToggleControl/samples/subTableToggleControl-sample.xhtml
trunk/examples/richfaces-showcase/src/main/webapp/richfaces/subTableToggleControl/subTableToggleControl.xhtml
trunk/ui/common/ui/src/main/java/org/richfaces/renderkit/util/AjaxRendererUtils.java
trunk/ui/common/ui/src/main/java/org/richfaces/renderkit/util/HandlersChain.java
trunk/ui/core/ui/src/main/java/org/ajax4jsf/renderkit/AjaxBehaviorRenderer.java
trunk/ui/core/ui/src/main/java/org/richfaces/renderkit/AjaxFunctionRendererBase.java
trunk/ui/iteration/ui/src/main/java/org/richfaces/renderkit/DataScrollerBaseRenderer.java
trunk/ui/iteration/ui/src/main/java/org/richfaces/renderkit/DataTableRenderer.java
trunk/ui/iteration/ui/src/main/java/org/richfaces/renderkit/ExtendedDataTableRenderer.java
trunk/ui/iteration/ui/src/main/java/org/richfaces/renderkit/TreeRendererBase.java
trunk/ui/iteration/ui/src/main/resources/META-INF/resources/org.richfaces/extendedDataTable.js
trunk/ui/output/ui/src/main/java/org/richfaces/renderkit/html/ProgressBarBaseRenderer.java
trunk/ui/output/ui/src/main/java/org/richfaces/renderkit/html/TogglePanelRenderer.java
Log:
https://issues.jboss.org/browse/RF-9809
Removed legacy cofigs from core/ui
Updated showcase for new subtable/toggler tag names
Fixed small mistake in showcase code
Modified: trunk/core/impl/src/main/resources/META-INF/resources/richfaces.js
===================================================================
--- trunk/core/impl/src/main/resources/META-INF/resources/richfaces.js 2010-12-09 14:05:21 UTC (rev 20477)
+++ trunk/core/impl/src/main/resources/META-INF/resources/richfaces.js 2010-12-09 14:07:18 UTC (rev 20478)
@@ -478,7 +478,12 @@
}());
richfaces.ajax = function(source, event, options) {
- var sourceId = (typeof source == 'object' && source.id) ? source.id : source;
+ var sourceId;
+ if (options.sourceId) {
+ sourceId = options.sourceId;
+ } else {
+ sourceId = (typeof source == 'object' && source.id) ? source.id : source;
+ }
options = options || {};
Modified: trunk/core/impl/src/test/resources/javascript/4_0_0.html
===================================================================
--- trunk/core/impl/src/test/resources/javascript/4_0_0.html 2010-12-09 14:05:21 UTC (rev 20477)
+++ trunk/core/impl/src/test/resources/javascript/4_0_0.html 2010-12-09 14:07:18 UTC (rev 20478)
@@ -115,6 +115,21 @@
RichFaces.ajax(ajaxSource, ajaxEvent, ajaxOptions);
});
+ test("RichFaces.ajax behavior test for sourceId option", function() {
+ expect(2);
+
+ var ajaxSource = "source";
+ var ajaxEvent = "event";
+ var ajaxOptions = {parameters: {'param': 'value'}, sourceId: 'someId'};
+ jsf.ajax = {
+ request : function(source, event, options) {
+ equals(source, ajaxSource);
+ equals(options['org.richfaces.ajax.component'], 'someId');
+ }
+ }
+ RichFaces.ajax(ajaxSource, ajaxEvent, ajaxOptions);
+ });
+
test("RichFaces.ajax component test", function() {
expect(7);
var ajaxSource = "source";
Modified: trunk/examples/richfaces-showcase/src/main/webapp/richfaces/calendar/samples/clientStylingDisablement-sample.xhtml
===================================================================
--- trunk/examples/richfaces-showcase/src/main/webapp/richfaces/calendar/samples/clientStylingDisablement-sample.xhtml 2010-12-09 14:05:21 UTC (rev 20477)
+++ trunk/examples/richfaces-showcase/src/main/webapp/richfaces/calendar/samples/clientStylingDisablement-sample.xhtml 2010-12-09 14:07:18 UTC (rev 20478)
@@ -20,7 +20,7 @@
function disablementFunction(day){
if (day.isWeekend) return false;
if (curDt==undefined){
- curDt = day.date.getDate;
+ curDt = day.date.getDate();
}
if (curDt.getTime() - day.date.getTime() < 0) return true; else return false;
}
Modified: trunk/examples/richfaces-showcase/src/main/webapp/richfaces/dataTable/samples/simpleTable-sample.xhtml
===================================================================
--- trunk/examples/richfaces-showcase/src/main/webapp/richfaces/dataTable/samples/simpleTable-sample.xhtml 2010-12-09 14:05:21 UTC (rev 20477)
+++ trunk/examples/richfaces-showcase/src/main/webapp/richfaces/dataTable/samples/simpleTable-sample.xhtml 2010-12-09 14:07:18 UTC (rev 20478)
@@ -33,7 +33,7 @@
<h:outputText value="#{record.city}" />
</rich:column>
- <rich:subTable var="expense" value="#{record.items}">
+ <rich:collapsibleSubTable var="expense" value="#{record.items}">
<rich:column>
<h:outputText value="#{expense.day}"></h:outputText>
<f:facet name="footer">
@@ -80,7 +80,7 @@
</f:facet>
</rich:column>
- </rich:subTable>
+ </rich:collapsibleSubTable>
<f:facet name="footer">
Modified: trunk/examples/richfaces-showcase/src/main/webapp/richfaces/dataTable/simpleTable.xhtml
===================================================================
--- trunk/examples/richfaces-showcase/src/main/webapp/richfaces/dataTable/simpleTable.xhtml 2010-12-09 14:05:21 UTC (rev 20477)
+++ trunk/examples/richfaces-showcase/src/main/webapp/richfaces/dataTable/simpleTable.xhtml 2010-12-09 14:07:18 UTC (rev 20478)
@@ -6,7 +6,7 @@
<ui:composition>
<p>This sample shows simple master-detail table implemented using<b>
- tbl:dataTable</b> and<b> tbl:subtable</b> components</p>
+ tbl:dataTable</b> and<b> tbl:collapsibleSubTable</b> components</p>
<ui:include src="#{demoNavigator.sampleIncludeURI}" />
<ui:include src="/templates/includes/source-view.xhtml">
<ui:param name="src" value="#{demoNavigator.sampleIncludeURI}" />
Modified: trunk/examples/richfaces-showcase/src/main/webapp/richfaces/subTableToggleControl/samples/subTableToggleControl-sample.xhtml
===================================================================
--- trunk/examples/richfaces-showcase/src/main/webapp/richfaces/subTableToggleControl/samples/subTableToggleControl-sample.xhtml 2010-12-09 14:05:21 UTC (rev 20477)
+++ trunk/examples/richfaces-showcase/src/main/webapp/richfaces/subTableToggleControl/samples/subTableToggleControl-sample.xhtml 2010-12-09 14:07:18 UTC (rev 20478)
@@ -33,10 +33,10 @@
</rich:columnGroup>
</f:facet>
<rich:column colspan="6">
- <rich:subTableToggleControl for="sbtbl" />
+ <rich:collapsibleSubTableToggler for="sbtbl" />
<h:outputText value="#{list.vendor}" />
</rich:column>
- <rich:subTable value="#{list.vendorItems}" var="item" id="sbtbl"
+ <rich:collapsibleSubTable value="#{list.vendorItems}" var="item" id="sbtbl"
expandMode="client">
<rich:column>
<h:outputText value="#{item.model}" />
@@ -59,7 +59,7 @@
<f:facet name="footer">
<h:outputText value="Total of #{list.vendor} Cars: #{list.count}" />
</f:facet>
- </rich:subTable>
+ </rich:collapsibleSubTable>
</rich:dataTable>
</h:form>
</ui:composition>
\ No newline at end of file
Modified: trunk/examples/richfaces-showcase/src/main/webapp/richfaces/subTableToggleControl/subTableToggleControl.xhtml
===================================================================
--- trunk/examples/richfaces-showcase/src/main/webapp/richfaces/subTableToggleControl/subTableToggleControl.xhtml 2010-12-09 14:05:21 UTC (rev 20477)
+++ trunk/examples/richfaces-showcase/src/main/webapp/richfaces/subTableToggleControl/subTableToggleControl.xhtml 2010-12-09 14:07:18 UTC (rev 20478)
@@ -6,9 +6,9 @@
<ui:composition>
<p>This sample shows simple master-detail table implemented using<b>
- rich:dataTable</b> and<b> rich:subtable</b> components</p>
+ rich:dataTable</b> and<b> rich:collapsibleSubtable</b> components</p>
<p>There is one feature which is completely new for 4.x - subtables
- now could be collapsed/expanded by using new component <b>rich:subTableToggleControl</b></p>
+ now could be collapsed/expanded by using new component <b>rich:collapsibleSubTableToggler</b></p>
<p>Switching customization:</p>
<ul>
<li>subTable's could be collapsed/expanded in different modes
Deleted: trunk/ui/common/ui/src/main/java/org/richfaces/renderkit/AjaxEventOptions.java
===================================================================
--- trunk/ui/common/ui/src/main/java/org/richfaces/renderkit/AjaxEventOptions.java 2010-12-09 14:05:21 UTC (rev 20477)
+++ trunk/ui/common/ui/src/main/java/org/richfaces/renderkit/AjaxEventOptions.java 2010-12-09 14:07:18 UTC (rev 20478)
@@ -1,120 +0,0 @@
-/**
- * License Agreement.
- *
- * Rich Faces - Natural Ajax for Java Server Faces (JSF)
- *
- * Copyright (C) 2007 Exadel, Inc.
- *
- * This library is free software; you can redistribute it and/or
- * modify it under the terms of the GNU Lesser General Public
- * License version 2.1 as published by the Free Software Foundation.
- *
- * This library is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
- * Lesser General Public License for more details.
- *
- * You should have received a copy of the GNU Lesser General Public
- * License along with this library; if not, write to the Free Software
- * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA
- */
-
-package org.richfaces.renderkit;
-
-import java.io.IOException;
-import java.util.HashMap;
-import java.util.LinkedHashMap;
-import java.util.Map;
-
-import org.ajax4jsf.javascript.ScriptStringBase;
-import org.ajax4jsf.javascript.ScriptUtils;
-
-/**
- * @author Nick Belaevski
- * @since 4.0
- */
-public class AjaxEventOptions extends ScriptStringBase {
-
- public static final String PARAMETERS = "parameters";
-
- public static final String CLIENT_PARAMETERS = "clientParameters";
-
- private Map<String, Object> options = new HashMap<String, Object>();
-
- public void appendScript(Appendable target) throws IOException {
- ScriptUtils.appendScript(target, options);
- }
-
- public boolean isEmpty() {
- return options.isEmpty();
- }
-
- public Object get(String optionName) {
- return options.get(optionName);
- }
-
- public void set(String optionName, Object optionValue) {
- options.put(optionName, optionValue);
- }
-
- public void remove(String optionName) {
- options.remove(optionName);
- }
-
- public boolean hasParameters() {
- @SuppressWarnings("unchecked") Map<String, Object> parameters = (Map<String, Object>) options.get(PARAMETERS);
-
- return (parameters != null) && !parameters.isEmpty();
- }
-
- // TODO: optimize rendered data
- public Map<String, Object> getParameters() {
- @SuppressWarnings("unchecked") Map<String, Object> parameters = (Map<String, Object>) options.get(PARAMETERS);
-
- if (parameters == null) {
- parameters = new LinkedHashMap<String, Object>();
- options.put(PARAMETERS, parameters);
- }
-
- return parameters;
- }
-
- public Object getParameter(String parameterName) {
- Object result = null;
- @SuppressWarnings("unchecked") Map<String, Object> parameters = (Map<String, Object>) options.get(PARAMETERS);
-
- if (parameters != null) {
- result = parameters.get(parameterName);
- }
-
- return result;
- }
-
- public void setParameter(String parameterName, Object parameterValue) {
- getParameters().put(parameterName, parameterValue);
- }
-
- public void removeParameter(String parameterName) {
- @SuppressWarnings("unchecked") Map<String, Object> parameters = (Map<String, Object>) options.get(PARAMETERS);
-
- if (parameters != null) {
- parameters.remove(parameterName);
- }
- }
-
- public Object getClientParameters() {
- return options.get(CLIENT_PARAMETERS);
- }
-
- public void setClientParameters(Object value) {
- options.put(CLIENT_PARAMETERS, value);
- }
-
- public Object getAjaxComponent() {
- return getParameter(AjaxConstants.AJAX_COMPONENT_ID_PARAMETER);
- }
-
- public void setAjaxComponent(Object ajaxComponent) {
- getParameters().put(AjaxConstants.AJAX_COMPONENT_ID_PARAMETER, ajaxComponent);
- }
-}
Added: trunk/ui/common/ui/src/main/java/org/richfaces/renderkit/AjaxFunction.java
===================================================================
--- trunk/ui/common/ui/src/main/java/org/richfaces/renderkit/AjaxFunction.java (rev 0)
+++ trunk/ui/common/ui/src/main/java/org/richfaces/renderkit/AjaxFunction.java 2010-12-09 14:07:18 UTC (rev 20478)
@@ -0,0 +1,91 @@
+/*
+ * JBoss, Home of Professional Open Source
+ * Copyright 2010, Red Hat, Inc. and individual contributors
+ * by the @authors tag. See the copyright.txt in the distribution for a
+ * full listing of individual contributors.
+ *
+ * This is free software; you can redistribute it and/or modify it
+ * under the terms of the GNU Lesser General Public License as
+ * published by the Free Software Foundation; either version 2.1 of
+ * the License, or (at your option) any later version.
+ *
+ * This software is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
+ * Lesser General Public License for more details.
+ *
+ * You should have received a copy of the GNU Lesser General Public
+ * License along with this software; if not, write to the Free
+ * Software Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA
+ * 02110-1301 USA, or see the FSF site: http://www.fsf.org.
+ */
+package org.richfaces.renderkit;
+
+import java.io.IOException;
+
+import org.ajax4jsf.javascript.JSReference;
+import org.ajax4jsf.javascript.ScriptStringBase;
+import org.ajax4jsf.javascript.ScriptUtils;
+
+/**
+ * @author Nick Belaevski
+ *
+ */
+public class AjaxFunction extends ScriptStringBase {
+
+ public static final String FUNCTION_NAME = "RichFaces.ajax";
+
+ private Object source;
+
+ private Object event = JSReference.EVENT;
+
+ private AjaxOptions options;
+
+ public AjaxFunction(Object source, AjaxOptions options) {
+ super();
+ this.source = source;
+ this.options = options;
+ }
+
+ public Object getSource() {
+ return source;
+ }
+
+ public void setSource(Object source) {
+ this.source = source;
+ }
+
+ public Object getEvent() {
+ return event;
+ }
+
+ public void setEvent(Object event) {
+ this.event = event;
+ }
+
+ public AjaxOptions getOptions() {
+ return options;
+ }
+
+ public void setOptions(AjaxOptions eventOptions) {
+ this.options = eventOptions;
+ }
+
+ public void appendScript(Appendable target) throws IOException {
+ target.append(FUNCTION_NAME);
+ target.append('(');
+
+ ScriptUtils.appendScript(target, source);
+ target.append(',');
+ ScriptUtils.appendScript(target, event);
+
+ if (!options.isEmpty()) {
+ target.append(',');
+ ScriptUtils.appendScript(target, options);
+ }
+
+ target.append(")");
+ }
+
+
+}
Copied: trunk/ui/common/ui/src/main/java/org/richfaces/renderkit/AjaxOptions.java (from rev 20403, trunk/ui/common/ui/src/main/java/org/richfaces/renderkit/AjaxEventOptions.java)
===================================================================
--- trunk/ui/common/ui/src/main/java/org/richfaces/renderkit/AjaxOptions.java (rev 0)
+++ trunk/ui/common/ui/src/main/java/org/richfaces/renderkit/AjaxOptions.java 2010-12-09 14:07:18 UTC (rev 20478)
@@ -0,0 +1,128 @@
+/**
+ * License Agreement.
+ *
+ * Rich Faces - Natural Ajax for Java Server Faces (JSF)
+ *
+ * Copyright (C) 2007 Exadel, Inc.
+ *
+ * This library is free software; you can redistribute it and/or
+ * modify it under the terms of the GNU Lesser General Public
+ * License version 2.1 as published by the Free Software Foundation.
+ *
+ * This library is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
+ * Lesser General Public License for more details.
+ *
+ * You should have received a copy of the GNU Lesser General Public
+ * License along with this library; if not, write to the Free Software
+ * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA
+ */
+
+package org.richfaces.renderkit;
+
+import java.io.IOException;
+import java.util.HashMap;
+import java.util.LinkedHashMap;
+import java.util.Map;
+
+import org.ajax4jsf.javascript.ScriptStringBase;
+import org.ajax4jsf.javascript.ScriptUtils;
+
+/**
+ * @author Nick Belaevski
+ * @since 4.0
+ */
+public class AjaxOptions extends ScriptStringBase {
+
+ public static final String PARAMETERS = "parameters";
+
+ public static final String CLIENT_PARAMETERS = "clientParameters";
+
+ private Map<String, Object> options = new HashMap<String, Object>();
+
+ public void appendScript(Appendable target) throws IOException {
+ ScriptUtils.appendScript(target, options);
+ }
+
+ public boolean isEmpty() {
+ return options.isEmpty();
+ }
+
+ public Object get(String optionName) {
+ return options.get(optionName);
+ }
+
+ public void set(String optionName, Object optionValue) {
+ options.put(optionName, optionValue);
+ }
+
+ public void remove(String optionName) {
+ options.remove(optionName);
+ }
+
+ public boolean hasParameters() {
+ @SuppressWarnings("unchecked") Map<String, Object> parameters = (Map<String, Object>) options.get(PARAMETERS);
+
+ return (parameters != null) && !parameters.isEmpty();
+ }
+
+ // TODO: optimize rendered data
+ public Map<String, Object> getParameters() {
+ @SuppressWarnings("unchecked") Map<String, Object> parameters = (Map<String, Object>) options.get(PARAMETERS);
+
+ if (parameters == null) {
+ parameters = new LinkedHashMap<String, Object>();
+ options.put(PARAMETERS, parameters);
+ }
+
+ return parameters;
+ }
+
+ public Object getParameter(String parameterName) {
+ Object result = null;
+ @SuppressWarnings("unchecked") Map<String, Object> parameters = (Map<String, Object>) options.get(PARAMETERS);
+
+ if (parameters != null) {
+ result = parameters.get(parameterName);
+ }
+
+ return result;
+ }
+
+ public void setParameter(String parameterName, Object parameterValue) {
+ getParameters().put(parameterName, parameterValue);
+ }
+
+ public void addParameters(Map<String, Object> params) {
+ if (params == null || params.isEmpty()) {
+ return;
+ }
+
+ getParameters().putAll(params);
+ }
+
+ public void removeParameter(String parameterName) {
+ @SuppressWarnings("unchecked") Map<String, Object> parameters = (Map<String, Object>) options.get(PARAMETERS);
+
+ if (parameters != null) {
+ parameters.remove(parameterName);
+ }
+ }
+
+ public Object getClientParameters() {
+ return options.get(CLIENT_PARAMETERS);
+ }
+
+ public void setClientParameters(Object value) {
+ options.put(CLIENT_PARAMETERS, value);
+ }
+
+ public Object getAjaxComponent() {
+ return getParameter(AjaxConstants.AJAX_COMPONENT_ID_PARAMETER);
+ }
+
+ public void setAjaxComponent(Object ajaxComponent) {
+ getParameters().put(AjaxConstants.AJAX_COMPONENT_ID_PARAMETER, ajaxComponent);
+ }
+}
Modified: trunk/ui/common/ui/src/main/java/org/richfaces/renderkit/util/AjaxRendererUtils.java
===================================================================
--- trunk/ui/common/ui/src/main/java/org/richfaces/renderkit/util/AjaxRendererUtils.java 2010-12-09 14:05:21 UTC (rev 20477)
+++ trunk/ui/common/ui/src/main/java/org/richfaces/renderkit/util/AjaxRendererUtils.java 2010-12-09 14:07:18 UTC (rev 20478)
@@ -24,16 +24,20 @@
import java.util.Map;
import javax.faces.component.UIComponent;
+import javax.faces.component.behavior.ClientBehaviorContext;
import javax.faces.context.FacesContext;
import org.ajax4jsf.component.AjaxClientBehavior;
import org.ajax4jsf.component.AjaxComponent;
import org.ajax4jsf.context.AjaxContext;
-import org.ajax4jsf.javascript.JSFunction;
import org.ajax4jsf.javascript.JSFunctionDefinition;
import org.ajax4jsf.javascript.JSReference;
-import org.richfaces.renderkit.AjaxEventOptions;
+import org.richfaces.renderkit.AjaxConstants;
+import org.richfaces.renderkit.AjaxFunction;
+import org.richfaces.renderkit.AjaxOptions;
import org.richfaces.renderkit.HtmlConstants;
+
+import com.google.common.base.Strings;
/**
* @author shura
* <p/>
@@ -45,10 +49,6 @@
public static final String AJAX_AREAS_RENDERED = "org.ajax4jsf.areas.rendered";
public static final String AJAX_DELAY_ATTR = "requestDelay";
- /**
- * Name Javasript function for submit AJAX request
- */
- public static final String AJAX_FUNCTION_NAME = "RichFaces.ajax";
public static final String AJAX_QUEUE_ATTR = "eventsQueue";
public static final String AJAX_SINGLE_ATTR = "ajaxSingle";
@@ -79,7 +79,7 @@
private AjaxRendererUtils() {
}
- private static enum BehaviorEventOptionsData {
+ private static enum BehaviorOptionsData {
begin {
@Override
public String getAttributeValue(AjaxClientBehavior behavior) {
@@ -199,50 +199,58 @@
return onEvent;
}
- public static AjaxEventOptions buildEventOptions(FacesContext facesContext, UIComponent component) {
- return buildEventOptions(facesContext, component, null);
+ //TODO make this function private
+ public static AjaxOptions buildEventOptions(FacesContext facesContext, UIComponent component) {
+ AjaxOptions ajaxOptions = new AjaxOptions();
+ appendComponentOptions(facesContext, component, ajaxOptions);
+
+ Map<String, Object> parametersMap = RENDERER_UTILS.createParametersMap(facesContext, component);
+ ajaxOptions.addParameters(parametersMap);
+
+ return ajaxOptions;
}
- public static AjaxEventOptions buildEventOptions(FacesContext facesContext, UIComponent component,
+ private static AjaxOptions buildAjaxOptions(ClientBehaviorContext behaviorContext,
AjaxClientBehavior ajaxBehavior) {
- AjaxEventOptions ajaxEventOptions = new AjaxEventOptions();
+ FacesContext facesContext = behaviorContext.getFacesContext();
+ UIComponent component = behaviorContext.getComponent();
+
+ AjaxOptions ajaxOptions = new AjaxOptions();
+
Map<String, Object> parametersMap = RENDERER_UTILS.createParametersMap(facesContext, component);
- String ajaxStatusName = getAjaxStatus(component);
-
- if (ajaxBehavior != null) {
- ajaxStatusName = (ajaxBehavior.getStatus() != null) ? ajaxBehavior.getStatus() : ajaxStatusName;
- appenAjaxBehaviorOptions(ajaxBehavior, ajaxEventOptions);
- } else {
- appendComponentOptions(facesContext, component, ajaxEventOptions);
+ ajaxOptions.addParameters(parametersMap);
+
+ String ajaxStatusName = ajaxBehavior.getStatus();
+ if (Strings.isNullOrEmpty(ajaxStatusName)) {
+ ajaxStatusName = getAjaxStatus(component);
}
-
- if ((ajaxStatusName != null) && (ajaxStatusName.length() != 0)) {
- ajaxEventOptions.set(STATUS_ATTR_NAME, ajaxStatusName);
+ if (!Strings.isNullOrEmpty(ajaxStatusName)) {
+ ajaxOptions.set(STATUS_ATTR_NAME, ajaxStatusName);
}
- if (!parametersMap.isEmpty()) {
- ajaxEventOptions.getParameters().putAll(parametersMap);
- }
+ appenAjaxBehaviorOptions(behaviorContext, ajaxBehavior, ajaxOptions);
- return ajaxEventOptions;
+ return ajaxOptions;
}
private static boolean isNotEmpty(String value) {
return (value != null) && (value.length() != 0);
}
- private static void appenAjaxBehaviorOptions(AjaxClientBehavior behavior, AjaxEventOptions ajaxEventOptions) {
- for (BehaviorEventOptionsData optionsData : BehaviorEventOptionsData.values()) {
- String eventHandlerValue = optionsData.getAttributeValue(behavior);
+ private static void appenAjaxBehaviorOptions(ClientBehaviorContext behaviorContext, AjaxClientBehavior behavior, AjaxOptions ajaxOptions) {
+ ajaxOptions.setParameter(AjaxConstants.BEHAVIOR_EVENT_PARAMETER, behaviorContext.getEventName());
+
+ for (BehaviorOptionsData optionsData : BehaviorOptionsData.values()) {
+ String optionValue = optionsData.getAttributeValue(behavior);
- if (isNotEmpty(eventHandlerValue)) {
- ajaxEventOptions.set(optionsData.toString(), eventHandlerValue);
+ if (isNotEmpty(optionValue)) {
+ ajaxOptions.set(optionsData.toString(), optionValue);
}
}
}
private static void appendComponentOptions(FacesContext facesContext, UIComponent component,
- AjaxEventOptions ajaxEventOptions) {
+ AjaxOptions ajaxOptions) {
String behaviorName = "begin";
HandlersChain handlersChain = new HandlersChain(facesContext, component);
String inlineHandler = getAjaxOnBegin(component);
@@ -253,15 +261,20 @@
String handlerScript = handlersChain.toScript();
if (isNotEmpty(handlerScript)) {
- ajaxEventOptions.set(behaviorName, handlerScript);
+ ajaxOptions.set(behaviorName, handlerScript);
}
String queueId = getQueueId(component);
if (isNotEmpty(queueId)) {
- ajaxEventOptions.set(QUEUE_ID_ATTRIBUTE, queueId);
+ ajaxOptions.set(QUEUE_ID_ATTRIBUTE, queueId);
}
- ajaxEventOptions.set("incId", "1");
+ ajaxOptions.set("incId", "1");
+
+ String status = getAjaxStatus(component);
+ if (!Strings.isNullOrEmpty(status)) {
+ ajaxOptions.set(STATUS_ATTR_NAME, status);
+ }
}
// public static AjaxEventOptions buildEventOptions(FacesContext facesContext,
@@ -456,16 +469,29 @@
* @param functionName
* @return
*/
- public static JSFunction buildAjaxFunction(FacesContext facesContext, UIComponent uiComponent,
- String functionName) {
- JSFunction ajaxFunction = new JSFunction(functionName);
+ public static AjaxFunction buildAjaxFunction(FacesContext facesContext, UIComponent component) {
+ return new AjaxFunction(component.getClientId(facesContext), buildEventOptions(facesContext, component));
+ }
- ajaxFunction.addParameter(uiComponent.getClientId(facesContext));
- ajaxFunction.addParameter(JSReference.EVENT);
+ public static AjaxFunction buildAjaxFunction(ClientBehaviorContext behaviorContext, AjaxClientBehavior behavior) {
+ Object source;
+
+ AjaxOptions options = buildAjaxOptions(behaviorContext, behavior);
- return ajaxFunction;
+ if (behaviorContext.getSourceId() != null) {
+ source = behaviorContext.getSourceId();
+ } else {
+ source = JSReference.THIS;
+
+ FacesContext facesContext = behaviorContext.getFacesContext();
+ UIComponent component = behaviorContext.getComponent();
+
+ options.set("sourceId", component.getClientId(facesContext));
+ }
+
+ return new AjaxFunction(source, options);
}
-
+
/**
* Append common parameters ( array of affected areas, status area id, on
* complete function ) to JavaScript event string.
Modified: trunk/ui/common/ui/src/main/java/org/richfaces/renderkit/util/HandlersChain.java
===================================================================
--- trunk/ui/common/ui/src/main/java/org/richfaces/renderkit/util/HandlersChain.java 2010-12-09 14:05:21 UTC (rev 20477)
+++ trunk/ui/common/ui/src/main/java/org/richfaces/renderkit/util/HandlersChain.java 2010-12-09 14:07:18 UTC (rev 20478)
@@ -21,9 +21,7 @@
package org.richfaces.renderkit.util;
-import static org.richfaces.renderkit.util.AjaxRendererUtils.AJAX_FUNCTION_NAME;
import static org.richfaces.renderkit.util.AjaxRendererUtils.buildAjaxFunction;
-import static org.richfaces.renderkit.util.AjaxRendererUtils.buildEventOptions;
import java.util.ArrayList;
import java.util.Collection;
@@ -41,7 +39,7 @@
import org.ajax4jsf.javascript.JSFunction;
import org.ajax4jsf.javascript.JSReference;
-import org.richfaces.renderkit.AjaxEventOptions;
+import org.ajax4jsf.javascript.ScriptString;
/**
* @author Nick Belaevski
@@ -169,13 +167,7 @@
if (!this.hasSubmittingBehavior()) {
hasSubmittingBehavior = true;
- JSFunction ajaxFunction = buildAjaxFunction(facesContext, component, AJAX_FUNCTION_NAME);
- AjaxEventOptions eventOptions = buildEventOptions(facesContext, component);
-
- if (!eventOptions.isEmpty()) {
- ajaxFunction.addParameter(eventOptions);
- }
-
+ ScriptString ajaxFunction = buildAjaxFunction(facesContext, component);
this.addInlineHandlerAsValue(ajaxFunction.toScript());
}
}
Modified: trunk/ui/core/ui/src/main/java/org/ajax4jsf/renderkit/AjaxBehaviorRenderer.java
===================================================================
--- trunk/ui/core/ui/src/main/java/org/ajax4jsf/renderkit/AjaxBehaviorRenderer.java 2010-12-09 14:05:21 UTC (rev 20477)
+++ trunk/ui/core/ui/src/main/java/org/ajax4jsf/renderkit/AjaxBehaviorRenderer.java 2010-12-09 14:07:18 UTC (rev 20478)
@@ -22,8 +22,6 @@
package org.ajax4jsf.renderkit;
-import static org.richfaces.renderkit.AjaxConstants.BEHAVIOR_EVENT_PARAMETER;
-
import javax.faces.application.ResourceDependency;
import javax.faces.component.ActionSource;
import javax.faces.component.EditableValueHolder;
@@ -37,10 +35,7 @@
import javax.faces.render.FacesBehaviorRenderer;
import javax.faces.render.RenderKitFactory;
-import org.ajax4jsf.component.AjaxClientBehavior;
import org.ajax4jsf.component.behavior.AjaxBehavior;
-import org.ajax4jsf.javascript.JSFunction;
-import org.richfaces.renderkit.AjaxEventOptions;
import org.richfaces.renderkit.util.AjaxRendererUtils;
import org.richfaces.renderkit.util.RendererUtils;
@@ -126,21 +121,7 @@
}
public String buildAjaxCommand(ClientBehaviorContext bContext, AjaxBehavior behavior) {
- UIComponent parent = bContext.getComponent();
- FacesContext context = bContext.getFacesContext();
- JSFunction ajaxFunction = AjaxRendererUtils.buildAjaxFunction(context, parent,
- AjaxRendererUtils.AJAX_FUNCTION_NAME);
- AjaxEventOptions options = buildOptions(context, bContext, behavior);
- ajaxFunction.addParameter(options);
- return ajaxFunction.toString();
+ return AjaxRendererUtils.buildAjaxFunction(bContext, behavior).toString();
}
- public AjaxEventOptions buildOptions(FacesContext context, ClientBehaviorContext bContext,
- AjaxClientBehavior behavior) {
- UIComponent parent = bContext.getComponent();
- String eventName = bContext.getEventName();
- AjaxEventOptions options = AjaxRendererUtils.buildEventOptions(context, parent, behavior);
- options.setParameter(BEHAVIOR_EVENT_PARAMETER, eventName);
- return options;
- }
}
Modified: trunk/ui/core/ui/src/main/java/org/richfaces/renderkit/AjaxFunctionRendererBase.java
===================================================================
--- trunk/ui/core/ui/src/main/java/org/richfaces/renderkit/AjaxFunctionRendererBase.java 2010-12-09 14:05:21 UTC (rev 20477)
+++ trunk/ui/core/ui/src/main/java/org/richfaces/renderkit/AjaxFunctionRendererBase.java 2010-12-09 14:07:18 UTC (rev 20478)
@@ -31,7 +31,6 @@
import javax.faces.component.UIParameter;
import javax.faces.context.FacesContext;
-import org.ajax4jsf.javascript.JSFunction;
import org.ajax4jsf.javascript.JSFunctionDefinition;
import org.ajax4jsf.javascript.JSReference;
import org.ajax4jsf.javascript.ScriptUtils;
@@ -54,17 +53,13 @@
// func.setName(component.getName());
// Create AJAX Submit function.
- JSFunction ajaxFunction = AjaxRendererUtils.buildAjaxFunction(context, component,
- AjaxRendererUtils.AJAX_FUNCTION_NAME);
- AjaxEventOptions options = AjaxRendererUtils.buildEventOptions(context, component);
+ AjaxFunction ajaxFunction = AjaxRendererUtils.buildAjaxFunction(context, component);
+ ajaxFunction.setEvent(null);
+ AjaxOptions options = ajaxFunction.getOptions();
if (options.hasParameters()) {
Map<String, Object> parameters = options.getParameters();
-// if (null == parameters) {
-// parameters = new HashMap<String, Object>();
-// options.put("parameters", parameters);
-// }
// Fill parameters.
for (Iterator<UIComponent> it = component.getChildren().iterator(); it.hasNext(); ) {
UIComponent child = it.next();
@@ -88,12 +83,7 @@
}
}
- if (!options.isEmpty()) {
- ajaxFunction.addParameter(options);
- }
-
// TODO - added in 4.0 - ?
- func.addParameter(JSReference.EVENT);
func.addToBody(ajaxFunction.toScript());
func.appendScriptToStringBuilder(script);
Modified: trunk/ui/iteration/ui/src/main/java/org/richfaces/renderkit/DataScrollerBaseRenderer.java
===================================================================
--- trunk/ui/iteration/ui/src/main/java/org/richfaces/renderkit/DataScrollerBaseRenderer.java 2010-12-09 14:05:21 UTC (rev 20477)
+++ trunk/ui/iteration/ui/src/main/java/org/richfaces/renderkit/DataScrollerBaseRenderer.java 2010-12-09 14:07:18 UTC (rev 20478)
@@ -312,18 +312,12 @@
JSFunctionDefinition definition = new JSFunctionDefinition(JSReference.EVENT, new JSReference("element"),
new JSReference("data"));
- JSFunction function = AjaxRendererUtils.buildAjaxFunction(facesContext, component,
- AjaxRendererUtils.AJAX_FUNCTION_NAME);
- AjaxEventOptions options = AjaxRendererUtils.buildEventOptions(facesContext, component);
+ AjaxFunction function = AjaxRendererUtils.buildAjaxFunction(facesContext, component);
- Map<String, Object> parameters = options.getParameters();
+ Map<String, Object> parameters = function.getOptions().getParameters();
parameters.put(component.getClientId(facesContext) + ":page", new JSLiteral("data.page"));
- function.addParameter(options);
-
- StringBuilder sb = new StringBuilder();
- function.appendScriptToStringBuilder(sb);
- definition.addToBody(sb);
+ definition.addToBody(function.toScript());
return definition;
}
Modified: trunk/ui/iteration/ui/src/main/java/org/richfaces/renderkit/DataTableRenderer.java
===================================================================
--- trunk/ui/iteration/ui/src/main/java/org/richfaces/renderkit/DataTableRenderer.java 2010-12-09 14:05:21 UTC (rev 20477)
+++ trunk/ui/iteration/ui/src/main/java/org/richfaces/renderkit/DataTableRenderer.java 2010-12-09 14:07:18 UTC (rev 20478)
@@ -295,10 +295,10 @@
JSFunction function = new JSFunction("new RichFaces.ui.DataTable");
function.addParameter(dataTable.getClientId(facesContext));
- AjaxEventOptions ajaxEventOptions = AjaxRendererUtils.buildEventOptions(facesContext, dataTable);
+ AjaxOptions ajaxOptions = AjaxRendererUtils.buildEventOptions(facesContext, dataTable);
Map<String, Object> options = new HashMap<String, Object>();
- options.put("ajaxEventOptions", ajaxEventOptions.getParameters());
+ options.put("ajaxEventOptions", ajaxOptions.getParameters());
function.addParameter(options);
writer.writeText(function.toScript(), null);
Modified: trunk/ui/iteration/ui/src/main/java/org/richfaces/renderkit/ExtendedDataTableRenderer.java
===================================================================
--- trunk/ui/iteration/ui/src/main/java/org/richfaces/renderkit/ExtendedDataTableRenderer.java 2010-12-09 14:05:21 UTC (rev 20477)
+++ trunk/ui/iteration/ui/src/main/java/org/richfaces/renderkit/ExtendedDataTableRenderer.java 2010-12-09 14:07:18 UTC (rev 20478)
@@ -23,9 +23,7 @@
import static org.richfaces.renderkit.RenderKitUtils.addToScriptHash;
import static org.richfaces.renderkit.RenderKitUtils.renderAttribute;
-import static org.richfaces.renderkit.util.AjaxRendererUtils.AJAX_FUNCTION_NAME;
import static org.richfaces.renderkit.util.AjaxRendererUtils.buildAjaxFunction;
-import static org.richfaces.renderkit.util.AjaxRendererUtils.buildEventOptions;
import java.io.IOException;
import java.util.ArrayList;
@@ -76,6 +74,8 @@
})
public class ExtendedDataTableRenderer extends SelectionRenderer implements MetaComponentRenderer {
+ private static final JSReference CLIENT_PARAMS = new JSReference("clientParams");
+
private static enum PartName {
frozen, normal;
@@ -664,14 +664,11 @@
writer.writeAttribute(HtmlConstants.TYPE_ATTR, HtmlConstants.INPUT_TYPE_HIDDEN, null);
writer.endElement(HtmlConstants.INPUT_ELEM);
encodeSelectionInput(writer, context, component);
- JSFunction ajaxFunction = buildAjaxFunction(context, component, AJAX_FUNCTION_NAME);
- AjaxEventOptions eventOptions = buildEventOptions(context, component);
- Map<String, Object> parameters = eventOptions.getParameters();
- eventOptions.set(AjaxEventOptions.PARAMETERS, new JSReference("parameters"));
- ajaxFunction.addParameter(eventOptions);
+ AjaxFunction ajaxFunction = buildAjaxFunction(context, component);
+ ajaxFunction.getOptions().setClientParameters(CLIENT_PARAMS);
+
Map<String, Object> attributes = component.getAttributes();
Map<String, Object> options = new HashMap<String, Object>();
- addToScriptHash(options, "parameters", parameters);
addToScriptHash(options, "selectionMode", attributes.get("selectionMode"),
SelectionMode.multiple);
addToScriptHash(options, "onbeforeselectionchange", RenderKitUtils.getAttributeAndBehaviorsValue(context,
@@ -680,7 +677,7 @@
component, EVENT_ATTRIBUTES.get("onselectionchange")), null, ScriptHashVariableWrapper.eventHandler);
StringBuilder builder = new StringBuilder("new RichFaces.ExtendedDataTable('");
builder.append(component.getClientId(context)).append("', ").append(getRowCount(component))
- .append(", function(event, parameters) {").append(ajaxFunction.toScript()).append(";}");
+ .append(", function(event, clientParams) {").append(ajaxFunction.toScript()).append(";}");
if (!options.isEmpty()) {
builder.append(",").append(ScriptUtils.toScript(options));
}
Modified: trunk/ui/iteration/ui/src/main/java/org/richfaces/renderkit/TreeRendererBase.java
===================================================================
--- trunk/ui/iteration/ui/src/main/java/org/richfaces/renderkit/TreeRendererBase.java 2010-12-09 14:05:21 UTC (rev 20477)
+++ trunk/ui/iteration/ui/src/main/java/org/richfaces/renderkit/TreeRendererBase.java 2010-12-09 14:07:18 UTC (rev 20478)
@@ -22,8 +22,6 @@
package org.richfaces.renderkit;
import static org.richfaces.component.AbstractTree.SELECTION_META_COMPONENT_ID;
-import static org.richfaces.renderkit.util.AjaxRendererUtils.AJAX_FUNCTION_NAME;
-import static org.richfaces.renderkit.util.AjaxRendererUtils.buildEventOptions;
import java.io.IOException;
import java.util.Collection;
@@ -48,6 +46,7 @@
import org.richfaces.event.TreeSelectionChangeEvent;
import org.richfaces.log.Logger;
import org.richfaces.log.RichfacesLogger;
+import org.richfaces.renderkit.util.AjaxRendererUtils;
import com.google.common.base.Strings;
import com.google.common.collect.Sets;
@@ -100,20 +99,14 @@
return null;
}
- JSFunction ajaxFunction = new JSFunction(AJAX_FUNCTION_NAME);
+ AjaxFunction ajaxFunction = AjaxRendererUtils.buildAjaxFunction(context, component);
+ ajaxFunction.setSource(SOURCE_JS_REF);
- ajaxFunction.addParameter(SOURCE_JS_REF);
- ajaxFunction.addParameter(JSReference.EVENT);
+ AjaxOptions options = ajaxFunction.getOptions();
- AjaxEventOptions eventOptions = buildEventOptions(context, component);
+ options.set("complete", COMPLETE_JS_REF);
+ options.setClientParameters(PARAMS_JS_REF);
- eventOptions.set("complete", COMPLETE_JS_REF);
-
- eventOptions.setClientParameters(PARAMS_JS_REF);
-
- if (!eventOptions.isEmpty()) {
- ajaxFunction.addParameter(eventOptions);
- }
return ajaxFunction.toScript();
}
Modified: trunk/ui/iteration/ui/src/main/resources/META-INF/resources/org.richfaces/extendedDataTable.js
===================================================================
--- trunk/ui/iteration/ui/src/main/resources/META-INF/resources/org.richfaces/extendedDataTable.js 2010-12-09 14:05:21 UTC (rev 20477)
+++ trunk/ui/iteration/ui/src/main/resources/META-INF/resources/org.richfaces/extendedDataTable.js 2010-12-09 14:07:18 UTC (rev 20478)
@@ -160,11 +160,6 @@
var timeoutId = null;
var sendAjax = function(event, map) {
- for (key in options.parameters) {
- if(!map[key]) {
- map[key] = options.parameters[key];
- }
- }
ajaxFunction(event, map);
};
Modified: trunk/ui/output/ui/src/main/java/org/richfaces/renderkit/html/ProgressBarBaseRenderer.java
===================================================================
--- trunk/ui/output/ui/src/main/java/org/richfaces/renderkit/html/ProgressBarBaseRenderer.java 2010-12-09 14:05:21 UTC (rev 20477)
+++ trunk/ui/output/ui/src/main/java/org/richfaces/renderkit/html/ProgressBarBaseRenderer.java 2010-12-09 14:07:18 UTC (rev 20478)
@@ -38,13 +38,13 @@
import javax.faces.context.PartialViewContext;
import org.ajax4jsf.context.AjaxContext;
-import org.ajax4jsf.javascript.JSFunction;
import org.ajax4jsf.javascript.JSReference;
import org.richfaces.component.AbstractProgressBar;
import org.richfaces.component.MetaComponentResolver;
import org.richfaces.component.NumberUtils;
import org.richfaces.component.SwitchType;
-import org.richfaces.renderkit.AjaxEventOptions;
+import org.richfaces.renderkit.AjaxFunction;
+import org.richfaces.renderkit.AjaxOptions;
import org.richfaces.renderkit.MetaComponentRenderer;
import org.richfaces.renderkit.RendererBase;
import org.richfaces.renderkit.util.AjaxRendererUtils;
@@ -140,12 +140,14 @@
return null;
}
- JSFunction ajaxFunction = AjaxRendererUtils.buildAjaxFunction(facesContext, component, AjaxRendererUtils.AJAX_FUNCTION_NAME);
- AjaxEventOptions eventOptions = AjaxRendererUtils.buildEventOptions(facesContext, component);
- eventOptions.set("beforedomupdate", BEFORE_UPDATE_HANDLER);
- eventOptions.set("complete", AFTER_UPDATE_HANDLER);
- eventOptions.setClientParameters(PARAMS);
- ajaxFunction.addParameter(eventOptions);
+ AjaxFunction ajaxFunction = AjaxRendererUtils.buildAjaxFunction(facesContext, component);
+
+ AjaxOptions options = ajaxFunction.getOptions();
+
+ options.set("beforedomupdate", BEFORE_UPDATE_HANDLER);
+ options.set("complete", AFTER_UPDATE_HANDLER);
+ options.setClientParameters(PARAMS);
+
return ajaxFunction.toScript();
}
Modified: trunk/ui/output/ui/src/main/java/org/richfaces/renderkit/html/TogglePanelRenderer.java
===================================================================
--- trunk/ui/output/ui/src/main/java/org/richfaces/renderkit/html/TogglePanelRenderer.java 2010-12-09 14:05:21 UTC (rev 20477)
+++ trunk/ui/output/ui/src/main/java/org/richfaces/renderkit/html/TogglePanelRenderer.java 2010-12-09 14:07:18 UTC (rev 20478)
@@ -41,7 +41,7 @@
import org.richfaces.component.AbstractTogglePanel;
import org.richfaces.component.AbstractTogglePanelItem;
import org.richfaces.component.util.HtmlUtil;
-import org.richfaces.renderkit.AjaxEventOptions;
+import org.richfaces.renderkit.AjaxOptions;
import org.richfaces.renderkit.HtmlConstants;
import org.richfaces.renderkit.util.AjaxRendererUtils;
import org.richfaces.renderkit.util.FormUtil;
@@ -168,7 +168,7 @@
}
}
- public static AjaxEventOptions getAjaxOptions(FacesContext context, UIComponent panel) {
+ public static AjaxOptions getAjaxOptions(FacesContext context, UIComponent panel) {
return AjaxRendererUtils.buildEventOptions(context, panel);
}
14 years, 1 month
JBoss Rich Faces SVN: r20477 - in trunk/ui/core/ui/src/main: templates/org/ajax4jsf/renderkit/html and 1 other directory.
by richfaces-svn-commits@lists.jboss.org
Author: nbelaevski
Date: 2010-12-09 09:05:21 -0500 (Thu, 09 Dec 2010)
New Revision: 20477
Removed:
trunk/ui/core/ui/src/main/old_configs/
trunk/ui/core/ui/src/main/templates/org/ajax4jsf/renderkit/html/log.jspx
Log:
Removed legacy cofigs from core/ui
Deleted: trunk/ui/core/ui/src/main/templates/org/ajax4jsf/renderkit/html/log.jspx
===================================================================
--- trunk/ui/core/ui/src/main/templates/org/ajax4jsf/renderkit/html/log.jspx 2010-12-09 14:04:09 UTC (rev 20476)
+++ trunk/ui/core/ui/src/main/templates/org/ajax4jsf/renderkit/html/log.jspx 2010-12-09 14:05:21 UTC (rev 20477)
@@ -1,33 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-<f:root
- xmlns:f="http://jsf.exadel.com/template"
- xmlns:c=" http://java.sun.com/jsf/core"
- xmlns:ui=" http://jsf.exadel.com/ui"
- xmlns:vcp=" http://jsf.exadel.com/vcp"
- xmlns:u=" http://jsf.exadel.com/vcp"
- xmlns:x=" http://jsf.exadel.com/vcp"
- class="org.ajax4jsf.renderkit.html.LogRenderer"
- baseclass="org.ajax4jsf.renderkit.AjaxComponentRendererBase"
- component="org.ajax4jsf.component.UIAjaxLog"
- xmlns:jsp="http://java.sun.com/JSP/Page" version="2.0" >
- <jsp:directive.page import="javax.faces.context.FacesContext,javax.faces.component.UIComponent"/>
- <f:clientid var="clientId"/>
- <jsp:scriptlet> if(component.isPopup()){</jsp:scriptlet>
- <script
- id="#{clientId}"
- type="text/javascript"
- >
- LOG.registerPopup('#{component.hotkey}','#{component.name}',#{component.width},#{component.height},LOG.#{component.level});
- </script>
- <jsp:scriptlet>} else {</jsp:scriptlet>
- <div id="logConsole"
- x:style='width:#{component.width};height:#{component.height};overflow:auto;#{component.attributes["style"]}'
- x:passThruWithExclusions="value,name,id,style"
- >
- <button onclick="LOG.clear()">Clear</button><br />
- <script type="text/javascript">
- LOG.LEVEL = LOG.#{component.level};
- </script>
- </div>
- <jsp:scriptlet> } </jsp:scriptlet>
-</f:root>
14 years, 1 month
JBoss Rich Faces SVN: r20476 - in trunk/ui/input/ui/src/main/java/org/richfaces: renderkit and 1 other directories.
by richfaces-svn-commits@lists.jboss.org
Author: amarkhel
Date: 2010-12-09 09:04:09 -0500 (Thu, 09 Dec 2010)
New Revision: 20476
Modified:
trunk/ui/input/ui/src/main/java/org/richfaces/component/AbstractCalendar.java
trunk/ui/input/ui/src/main/java/org/richfaces/renderkit/CalendarRendererBase.java
trunk/ui/input/ui/src/main/java/org/richfaces/utils/CalendarHelper.java
Log:
https://jira.jboss.org/browse/RF-9837 Calendar: attribute defaultTime doesn't work
defaultTime attribute and time pattern is corrected
Modified: trunk/ui/input/ui/src/main/java/org/richfaces/component/AbstractCalendar.java
===================================================================
--- trunk/ui/input/ui/src/main/java/org/richfaces/component/AbstractCalendar.java 2010-12-09 13:51:23 UTC (rev 20475)
+++ trunk/ui/input/ui/src/main/java/org/richfaces/component/AbstractCalendar.java 2010-12-09 14:04:09 UTC (rev 20476)
@@ -78,13 +78,11 @@
public static final String COMPONENT_FAMILY = "org.richfaces.Calendar";
- public static final String SUB_TIME_PATTERN = "\\s*[hHkKma]+[\\W&&\\S]+[hHkKma]+\\s*";
+ public static final String SUB_TIME_PATTERN = "\\s*[hHkKma]+[\\W&&\\S]+[hHkKma]+[\\W&&\\S]*[s]*\\s*";
- public static final String TIME_PATTERN = "HH:mm";
+ public static final String TIME_PATTERN = "HH:mm:ss";
public static final String DEFAULT_DATE_PATTERN = "MMM d, yyyy";
-
- public static final String DEFAULT_DATE_VALUE = "12:00:00";
Logger log = RichfacesLogger.COMPONENTS.getLogger();
@@ -95,9 +93,8 @@
public enum Modes {
CLIENT,
AJAX
- }
+ }
-
@Attribute(defaultValue = "MMM d, yyyy")
public abstract String getDatePattern();
@@ -218,7 +215,7 @@
@Attribute
public abstract String getButtonIconDisabled();
- @Attribute(defaultValue = "AbstractCalendar.DEFAULT_DATE_VALUE")
+ @Attribute(defaultValue = "getDefaultValueOfDefaultTime(null,null)")
public abstract Object getDefaultTime();
@Attribute(defaultValue = "getDefaultPreloadBegin(getCurrentDateOrDefault())")
@@ -332,6 +329,8 @@
public void setLocale(Object locale) {
getStateHelper().put(PropertyKeys.locale, locale);
}
+
+
public void updateCurrentDate(FacesContext facesContext, Object currentDate) {
if (facesContext == null) {
@@ -386,6 +385,18 @@
return (CurrentDateChangeListener[]) getFacesListeners(CurrentDateChangeListener.class);
}
+ public static Object getDefaultValueOfDefaultTime(FacesContext facesContext, AbstractCalendar calendarComponent) {
+ if (calendarComponent == null) {
+ return null;
+ }
+
+ Calendar calendar = CalendarHelper.getCalendar(facesContext, calendarComponent);
+ calendar.set(Calendar.HOUR_OF_DAY, 12);
+ calendar.set(Calendar.MINUTE, 0);
+ calendar.set(Calendar.SECOND, 0);
+ return calendar.getTime();
+ }
+
protected Date getDefaultPreloadBegin(Date date) {
FacesContext facesContext = FacesContext.getCurrentInstance();
Calendar calendar = Calendar.getInstance(getTimeZone(),
Modified: trunk/ui/input/ui/src/main/java/org/richfaces/renderkit/CalendarRendererBase.java
===================================================================
--- trunk/ui/input/ui/src/main/java/org/richfaces/renderkit/CalendarRendererBase.java 2010-12-09 13:51:23 UTC (rev 20475)
+++ trunk/ui/input/ui/src/main/java/org/richfaces/renderkit/CalendarRendererBase.java 2010-12-09 14:04:09 UTC (rev 20476)
@@ -407,7 +407,7 @@
int minutes = calendar.get(Calendar.MINUTE);
int seconds = calendar.get(Calendar.SECOND);
- if (hours != 12 || minutes != 0) {
+ if (hours != 12 || minutes != 0 || seconds != 0) {
result.put(HOURS_VALUE, hours);
result.put(MINUTES_VALUE, minutes);
result.put(SECONDS_VALUE, seconds);
Modified: trunk/ui/input/ui/src/main/java/org/richfaces/utils/CalendarHelper.java
===================================================================
--- trunk/ui/input/ui/src/main/java/org/richfaces/utils/CalendarHelper.java 2010-12-09 13:51:23 UTC (rev 20475)
+++ trunk/ui/input/ui/src/main/java/org/richfaces/utils/CalendarHelper.java 2010-12-09 14:04:09 UTC (rev 20476)
@@ -75,19 +75,8 @@
}
return value;
- }
+ }
- public static Object getDefaultValueOfDefaultTime(FacesContext facesContext, AbstractCalendar calendarComponent) {
- if (calendarComponent == null) {
- return null;
- }
-
- Calendar calendar = getCalendar(facesContext, calendarComponent);
- calendar.set(Calendar.HOUR_OF_DAY, 12);
- calendar.set(Calendar.MINUTE, 0);
- return calendar.getTime();
- }
-
public static Date getFormattedDefaultTime(AbstractCalendar calendar) {
if (calendar == null || calendar.getDefaultTime() == null) {
return null;
@@ -106,12 +95,11 @@
String defaultTimeString = defaultTime.toString();
String datePattern = calendar.getDatePattern();
- String timePattern = AbstractCalendar.TIME_PATTERN;
- Pattern pattern = Pattern.compile(timePattern);
+ Pattern pattern = Pattern.compile(AbstractCalendar.SUB_TIME_PATTERN);
Matcher matcher = pattern.matcher(datePattern);
-
- String subTimePattern = AbstractCalendar.SUB_TIME_PATTERN;
- if (matcher.find()) {
+ String subTimePattern = AbstractCalendar.TIME_PATTERN;
+
+ if(matcher.find()) {
subTimePattern = matcher.group().trim();
}
14 years, 1 month
JBoss Rich Faces SVN: r20475 - in trunk: examples/output-demo/src/main/webapp/examples and 1 other directories.
by richfaces-svn-commits@lists.jboss.org
Author: Alex.Kolonitsky
Date: 2010-12-09 08:51:23 -0500 (Thu, 09 Dec 2010)
New Revision: 20475
Added:
trunk/examples/output-demo/src/main/java/org/richfaces/CollapsiblePanel.java
Modified:
trunk/examples/output-demo/src/main/webapp/examples/collapsiblePanel.xhtml
trunk/ui/output/ui/src/main/resources/META-INF/pn.taglib.xml
Log:
RF-9959 Collapsible panel: toggleListener should accept methods with event parameter
Added: trunk/examples/output-demo/src/main/java/org/richfaces/CollapsiblePanel.java
===================================================================
--- trunk/examples/output-demo/src/main/java/org/richfaces/CollapsiblePanel.java (rev 0)
+++ trunk/examples/output-demo/src/main/java/org/richfaces/CollapsiblePanel.java 2010-12-09 13:51:23 UTC (rev 20475)
@@ -0,0 +1,44 @@
+/**
+ * License Agreement.
+ *
+ * Rich Faces - Natural Ajax for Java Server Faces (JSF)
+ *
+ * Copyright (C) 2007 Exadel, Inc.
+ *
+ * This library is free software; you can redistribute it and/or
+ * modify it under the terms of the GNU Lesser General Public
+ * License version 2.1 as published by the Free Software Foundation.
+ *
+ * This library is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
+ * Lesser General Public License for more details.
+ *
+ * You should have received a copy of the GNU Lesser General Public
+ * License along with this library; if not, write to the Free Software
+ * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA
+ */
+
+package org.richfaces;
+
+import org.richfaces.event.PanelToggleEvent;
+
+import javax.faces.bean.ManagedBean;
+import javax.faces.bean.SessionScoped;
+
+/**
+ * @author akolonitsky
+ * @since Dec 9, 2010
+ */
+@ManagedBean
+@SessionScoped
+public class CollapsiblePanel {
+
+ public CollapsiblePanel() {
+ }
+
+ public void action() {
+ System.out.println("CollapsiblePanel.action");
+ }
+
+}
Modified: trunk/examples/output-demo/src/main/webapp/examples/collapsiblePanel.xhtml
===================================================================
--- trunk/examples/output-demo/src/main/webapp/examples/collapsiblePanel.xhtml 2010-12-09 11:23:01 UTC (rev 20474)
+++ trunk/examples/output-demo/src/main/webapp/examples/collapsiblePanel.xhtml 2010-12-09 13:51:23 UTC (rev 20475)
@@ -27,7 +27,7 @@
</pn:collapsiblePanel>
- <pn:collapsiblePanel id="panel2" expanded="false" switchType="ajax">
+ <pn:collapsiblePanel id="panel2" expanded="false" switchType="ajax" toggleListener="#{collapsiblePanel.action}" >
<f:facet name="headerExpanded" >
header exanded
</f:facet>
Modified: trunk/ui/output/ui/src/main/resources/META-INF/pn.taglib.xml
===================================================================
--- trunk/ui/output/ui/src/main/resources/META-INF/pn.taglib.xml 2010-12-09 11:23:01 UTC (rev 20474)
+++ trunk/ui/output/ui/src/main/resources/META-INF/pn.taglib.xml 2010-12-09 13:51:23 UTC (rev 20475)
@@ -1940,7 +1940,7 @@
</attribute>
<attribute>
<description></description>
- <name>panelToggleListener</name>
+ <name>toggleListener</name>
<type>javax.el.MethodExpression</type>
</attribute>
<attribute>
14 years, 1 month