JBoss Rich Faces SVN: r20607 - in management/design-4x/message: images and 1 other directory.
by richfaces-svn-commits@lists.jboss.org
Author: Ochikvina
Date: 2010-12-16 07:34:22 -0500 (Thu, 16 Dec 2010)
New Revision: 20607
Added:
management/design-4x/message/images/
management/design-4x/message/images/error.gif
Log:
Added image for component.
Added: management/design-4x/message/images/error.gif
===================================================================
(Binary files differ)
Property changes on: management/design-4x/message/images/error.gif
___________________________________________________________________
Name: svn:mime-type
+ application/octet-stream
14 years
JBoss Rich Faces SVN: r20606 - in management/design-4x: message and 1 other directory.
by richfaces-svn-commits@lists.jboss.org
Author: Ochikvina
Date: 2010-12-16 07:22:29 -0500 (Thu, 16 Dec 2010)
New Revision: 20606
Added:
management/design-4x/message/
management/design-4x/message/message.html
Log:
Added message markup.
Added: management/design-4x/message/message.html
===================================================================
--- management/design-4x/message/message.html (rev 0)
+++ management/design-4x/message/message.html 2010-12-16 12:22:29 UTC (rev 20606)
@@ -0,0 +1,35 @@
+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
+<html>
+ <head>
+ <title>Message</title>
+ <style type="text/css">
+ body{
+ font:normal 12px Arial, Verdana, sans-serif;
+ }
+
+ /*--- RF Message styles ---*/
+ .rf-msg {
+ }
+ .rf-msg-mkr {
+ padding-right:2px;
+ }
+ .rf-msg-mkr img{
+ vertical-align:middle;
+ }
+ .rf-msg-lbl {
+ color:red;
+ vertical-align:middle;
+ }
+ </style>
+ </head>
+ <body>
+ <h1>Message</h1>
+
+ <span class="rf-msg">
+ <span class="rf-msg-mkr">
+ <img src="images/error.gif" alt="Message marker"/>
+ </span>
+ <span class="rf-msg-lbl">Name: Validation Error: Value is less than allowable minimum of '3'</span>
+ </span>
+ </body>
+</html>
14 years
JBoss Rich Faces SVN: r20605 - trunk/core/impl/src/main/resources/META-INF/resources.
by richfaces-svn-commits@lists.jboss.org
Author: pyaschenko
Date: 2010-12-16 06:26:15 -0500 (Thu, 16 Dec 2010)
New Revision: 20605
Modified:
trunk/core/impl/src/main/resources/META-INF/resources/richfaces.js
Log:
cleanup fix: call destroy method correctly
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-16 10:43:45 UTC (rev 20604)
+++ trunk/core/impl/src/main/resources/META-INF/resources/richfaces.js 2010-12-16 11:26:15 UTC (rev 20605)
@@ -33,7 +33,7 @@
}
}
return element;
- }
+ };
// get RichFaces component object by component id or DOM element or jQuery object
richfaces.$ = function (source) {
@@ -42,7 +42,7 @@
if (element) {
return (element[richfaces.RICH_CONTAINER] || {})["component"];
}
- }
+ };
richfaces.$$ = function(componentName, element)
{
@@ -53,25 +53,23 @@
else
element = element.parentNode;
}
- }
+ };
// find component and call his method
richfaces.invokeMethod = function(source, method) {
- var c = richfaces.$(source);
- if (c) {
- var f = c[method];
- if (typeof f == "function") {
- return f.apply(c, Array.prototype.slice.call(arguments, 2));
- }
+ var c = richfaces.$(source);
+ var f;
+ if (c && typeof (f=c[method]) == "function") {
+ return f.apply(c, Array.prototype.slice.call(arguments, 2));
}
- }
+ };
//dom cleaner
richfaces.cleanComponent = function (source) {
var component = richfaces.$(source);
if (component) {
- richfaces.invokeMethod(component, "destroy");
- richfaces.invokeMethod(component, "detach", source);
+ component.destroy();
+ component.detach(source);
}
};
@@ -88,7 +86,7 @@
richfaces.cleanComponent(e);
}
}
- }
+ };
//form.js
richfaces.submitForm = function(form, parameters, target) {
14 years
JBoss Rich Faces SVN: r20604 - in trunk/ui/iteration/ui/src/main/java/org/richfaces: renderkit and 1 other directory.
by richfaces-svn-commits@lists.jboss.org
Author: abelevich
Date: 2010-12-16 05:43:45 -0500 (Thu, 16 Dec 2010)
New Revision: 20604
Modified:
trunk/ui/iteration/ui/src/main/java/org/richfaces/component/UIDataTableBase.java
trunk/ui/iteration/ui/src/main/java/org/richfaces/renderkit/AbstractTableRenderer.java
Log:
RF-9980
Modified: trunk/ui/iteration/ui/src/main/java/org/richfaces/component/UIDataTableBase.java
===================================================================
--- trunk/ui/iteration/ui/src/main/java/org/richfaces/component/UIDataTableBase.java 2010-12-16 10:27:39 UTC (rev 20603)
+++ trunk/ui/iteration/ui/src/main/java/org/richfaces/component/UIDataTableBase.java 2010-12-16 10:43:45 UTC (rev 20604)
@@ -103,6 +103,9 @@
public UIComponent getNoData() {
return getFacet(NODATA_FACET_NAME);
}
+
+ @Attribute(defaultValue="Integer.MIN_VALUE")
+ public abstract int getColumns();
@Attribute
public abstract String getNoDataLabel();
Modified: trunk/ui/iteration/ui/src/main/java/org/richfaces/renderkit/AbstractTableRenderer.java
===================================================================
--- trunk/ui/iteration/ui/src/main/java/org/richfaces/renderkit/AbstractTableRenderer.java 2010-12-16 10:27:39 UTC (rev 20603)
+++ trunk/ui/iteration/ui/src/main/java/org/richfaces/renderkit/AbstractTableRenderer.java 2010-12-16 10:43:45 UTC (rev 20604)
@@ -109,11 +109,8 @@
}
protected int getColumnsCount(UIDataTableBase table) {
- // check for exact value in component
- Integer span = (Integer) table.getAttributes().get("columns");
- int count = (null != span && span.intValue() != Integer.MIN_VALUE) ? span.intValue()
- : getColumnsCount(table.columns());
- return count;
+ int columns = table.getColumns();
+ return (columns != Integer.MIN_VALUE) ? columns : getColumnsCount(table.columns());
}
public void encodeTableStructure(ResponseWriter writer, FacesContext context, UIDataTableBase dataTable) throws IOException {
14 years
JBoss Rich Faces SVN: r20603 - in trunk: core/api/src/test/java/org/richfaces/renderkit/util and 2 other directories.
by richfaces-svn-commits@lists.jboss.org
Author: amarkhel
Date: 2010-12-16 05:27:39 -0500 (Thu, 16 Dec 2010)
New Revision: 20603
Added:
trunk/core/api/src/test/java/org/richfaces/renderkit/util/HtmlDimensionsTest.java
Modified:
trunk/core/api/src/main/java/org/richfaces/renderkit/util/HtmlDimensions.java
trunk/ui/output/ui/src/main/java/org/richfaces/renderkit/html/ToolbarRendererBase.java
trunk/ui/output/ui/src/main/templates/toolbar.template.xml
Log:
RF-9976 Toolbar group: attributes itemStyle and itemClass ignored
- formatSize method was added into HtmlDimensions.
- Markup of Toolbar was changed in order to support particular width for column through style attribute.
Modified: trunk/core/api/src/main/java/org/richfaces/renderkit/util/HtmlDimensions.java
===================================================================
--- trunk/core/api/src/main/java/org/richfaces/renderkit/util/HtmlDimensions.java 2010-12-16 10:22:22 UTC (rev 20602)
+++ trunk/core/api/src/main/java/org/richfaces/renderkit/util/HtmlDimensions.java 2010-12-16 10:27:39 UTC (rev 20603)
@@ -87,4 +87,17 @@
return v;
}
+
+ public static String formatSize(String size) {
+ if (size != null) {
+ String incomingSize = size.trim();
+ if (!incomingSize.isEmpty()) {
+ char lastChar = incomingSize.charAt(incomingSize.length() - 1);
+ if (Character.isDigit(lastChar)) {
+ return incomingSize + "px";
+ }
+ }
+ }
+ return size;
+ }
}
Added: trunk/core/api/src/test/java/org/richfaces/renderkit/util/HtmlDimensionsTest.java
===================================================================
--- trunk/core/api/src/test/java/org/richfaces/renderkit/util/HtmlDimensionsTest.java (rev 0)
+++ trunk/core/api/src/test/java/org/richfaces/renderkit/util/HtmlDimensionsTest.java 2010-12-16 10:27:39 UTC (rev 20603)
@@ -0,0 +1,53 @@
+/*
+ * 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.util;
+
+import org.junit.Assert;
+import org.junit.Test;
+
+/**
+ * @author amarkhel
+ *
+ */
+public class HtmlDimensionsTest {
+
+ @Test
+ public void testFormatSize() {
+ Assert.assertEquals("100px", HtmlDimensions.formatSize("100"));
+ Assert.assertEquals("100px", HtmlDimensions.formatSize("100 "));
+ Assert.assertEquals("100px", HtmlDimensions.formatSize(" 100"));
+ Assert.assertEquals("100px", HtmlDimensions.formatSize(" 100 "));
+ Assert.assertEquals("t100px", HtmlDimensions.formatSize("t100"));
+ Assert.assertEquals("r100px", HtmlDimensions.formatSize("r100 "));
+ Assert.assertEquals("100px ", HtmlDimensions.formatSize("100px "));
+ Assert.assertEquals(" 100px", HtmlDimensions.formatSize(" 100px"));
+ Assert.assertEquals(" 100px ", HtmlDimensions.formatSize(" 100px "));
+ Assert.assertEquals("100px", HtmlDimensions.formatSize("100px"));
+ Assert.assertEquals("100 px", HtmlDimensions.formatSize("100 px"));
+ Assert.assertEquals("99%", HtmlDimensions.formatSize("99%"));
+ Assert.assertEquals("99 %", HtmlDimensions.formatSize("99 %"));
+ Assert.assertEquals("100em", HtmlDimensions.formatSize("100em"));
+ Assert.assertEquals("size", HtmlDimensions.formatSize("size"));
+ Assert.assertEquals("", HtmlDimensions.formatSize(""));
+ Assert.assertEquals(" ", HtmlDimensions.formatSize(" "));
+ }
+}
Modified: trunk/ui/output/ui/src/main/java/org/richfaces/renderkit/html/ToolbarRendererBase.java
===================================================================
--- trunk/ui/output/ui/src/main/java/org/richfaces/renderkit/html/ToolbarRendererBase.java 2010-12-16 10:22:22 UTC (rev 20602)
+++ trunk/ui/output/ui/src/main/java/org/richfaces/renderkit/html/ToolbarRendererBase.java 2010-12-16 10:27:39 UTC (rev 20603)
@@ -40,6 +40,7 @@
import org.richfaces.renderkit.HtmlConstants;
import org.richfaces.renderkit.RenderKitUtils;
import org.richfaces.renderkit.RendererBase;
+import org.richfaces.renderkit.util.HtmlDimensions;
@ResourceDependency(library = "org.richfaces", name = "toolbar.ecss")
@@ -88,18 +89,93 @@
public enum Locations {
RIGHT, LEFT
}
+
+ private void writeColElement(ResponseWriter writer, UIComponent component) throws IOException {
+ writer.startElement(HtmlConstants.COL_ELEMENT, component);
+ writer.writeAttribute(HtmlConstants.WIDTH_ATTRIBUTE, "1px", null);
+ writer.endElement(HtmlConstants.COL_ELEMENT);
+ }
+
+ private boolean isSeparatorFacetRendered(UIComponent component) {
+ UIComponent separatorFacet = component.getFacet("itemSeparator");
+ return (separatorFacet != null) ? separatorFacet.isRendered() : false;
+ }
+
+ private boolean isSeparatorAttributeRendered(UIComponent component) {
+ String itemSeparator = (String) component.getAttributes().get("itemSeparator");
+
+ if (itemSeparator != null && itemSeparator.trim().length() != 0
+ && !itemSeparator.equalsIgnoreCase(ItemSeparators.NONE.toString())) {
+ return true;
+ }
+ return false;
+ }
+
+
+ private int getColumnCount(List<UIComponent> components) {
+ int result = 0;
+ for (UIComponent component : components) {
+ if (component instanceof AbstractToolbarGroup) {
+ result += component.getChildren().size();
+ } else {
+ result++;
+ }
+ }
+
+ return result;
+ }
+
+ private int getCountSeparators(AbstractToolbar toolBar, List<UIComponent> components) {
+ int result = 0;
+ if (components != null && (isSeparatorFacetRendered(toolBar) || isSeparatorAttributeRendered(toolBar))) {
+ result += components.size() - 1;
+ }
+
+ for (UIComponent component : components) {
+ if (component instanceof AbstractToolbarGroup) {
+ result += getCountSeparators((AbstractToolbarGroup) component, component.getChildren());
+ }
+ }
+
+ return result;
+ }
+
+ private int getCountSeparators(AbstractToolbarGroup toolBarGroup, List<UIComponent> components) {
+ if (components != null && (isSeparatorFacetRendered(toolBarGroup) || isSeparatorAttributeRendered(toolBarGroup))) {
+ return components.size() - 1;
+ }
+ return 0;
+ }
+
+ protected void renderColElements(FacesContext context, UIComponent component) throws IOException {
+ ResponseWriter writer = context.getResponseWriter();
+ List<UIComponent> childrenToTheLeft = new LinkedList<UIComponent>();
+ List<UIComponent> childrenToTheRight = new LinkedList<UIComponent>();
+
+ getChildrenToLeftAndRight(context, component, childrenToTheLeft, childrenToTheRight);
+ int columnAmount = getCountSeparators((AbstractToolbar) component, childrenToTheLeft) +
+ getColumnCount(childrenToTheLeft);
+ for (int i = 0; i < columnAmount; i++) {
+ writeColElement(writer, component);
+ }
+
+ writer.startElement(HtmlConstants.COL_ELEMENT, component);
+ writer.writeAttribute(HtmlConstants.WIDTH_ATTRIBUTE, "*", null);
+ writer.endElement(HtmlConstants.COL_ELEMENT);
+
+ columnAmount = getCountSeparators((AbstractToolbar) component, childrenToTheRight) +
+ getColumnCount(childrenToTheRight);
+ for (int i = 0; i < columnAmount; i++) {
+ writeColElement(writer, component);
+ }
+ }
- @Override
- public void encodeChildren(FacesContext context, UIComponent component) throws IOException {
+ private void getChildrenToLeftAndRight(FacesContext context, UIComponent component,
+ final List<UIComponent> childrenToTheLeft, final List<UIComponent> childrenToTheRight) {
+
AbstractToolbar toolbar = (AbstractToolbar) component;
- String itemClass = (String) toolbar.getAttributes().get("itemClass");
- String itemStyle = (String) toolbar.getAttributes().get("itemStyle");
-
List<UIComponent> children = toolbar.getChildren();
-
if (children != null) {
- List<UIComponent> childrenToTheLeft = new LinkedList<UIComponent>();
- List<UIComponent> childrenToTheRight = new LinkedList<UIComponent>();
for (UIComponent child : children) {
if (child.isRendered()) {
if (child instanceof AbstractToolbarGroup) {
@@ -115,7 +191,23 @@
}
}
}
+ }
+ }
+
+ @Override
+ public void encodeChildren(FacesContext context, UIComponent component) throws IOException {
+ AbstractToolbar toolbar = (AbstractToolbar) component;
+ String itemClass = (String) toolbar.getAttributes().get("itemClass");
+ String itemStyle = (String) toolbar.getAttributes().get("itemStyle");
+ List<UIComponent> children = toolbar.getChildren();
+
+ if (children != null) {
+ List<UIComponent> childrenToTheLeft = new LinkedList<UIComponent>();
+ List<UIComponent> childrenToTheRight = new LinkedList<UIComponent>();
+
+ getChildrenToLeftAndRight(context, component, childrenToTheLeft, childrenToTheRight);
+
ResponseWriter writer = context.getResponseWriter();
for (Iterator<UIComponent> it = childrenToTheLeft.iterator(); it.hasNext();) {
@@ -135,16 +227,14 @@
if (!(child instanceof AbstractToolbarGroup)) {
writer.endElement(HtmlConstants.TD_ELEM);
}
-
-
-
+
if (it.hasNext()) {
insertSeparatorIfNeed(context, toolbar, writer);
}
}
writer.startElement(HtmlConstants.TD_ELEM, component);
- writer.writeAttribute(HtmlConstants.STYLE_ATTRIBUTE, "width:100%", null);
+ writer.write(" ");
writer.endElement(HtmlConstants.TD_ELEM);
for (Iterator<UIComponent> it = childrenToTheRight.iterator(); it.hasNext();) {
@@ -257,4 +347,20 @@
protected boolean isPropertyRendered(String property) {
return (null != property && !"".equals(property));
}
+
+ protected String getWidthToolbar(UIComponent component) {
+ if (component instanceof AbstractToolbar) {
+ return HtmlDimensions.formatSize(((AbstractToolbar)component).getWidth());
+ } else {
+ return "";
+ }
+ }
+
+ protected String getHeightToolbar(UIComponent component) {
+ if (component instanceof AbstractToolbar) {
+ return HtmlDimensions.formatSize(((AbstractToolbar)component).getHeight());
+ } else {
+ return "";
+ }
+ }
}
Modified: trunk/ui/output/ui/src/main/templates/toolbar.template.xml
===================================================================
--- trunk/ui/output/ui/src/main/templates/toolbar.template.xml 2010-12-16 10:22:22 UTC (rev 20602)
+++ trunk/ui/output/ui/src/main/templates/toolbar.template.xml 2010-12-16 10:27:39 UTC (rev 20603)
@@ -14,11 +14,14 @@
</cc:interface>
<cc:implementation>
- <table border="0" cellpadding="0" cellspacing="0" id="#{clientId}" width="#{component.attributes['width']}"
- height="#{component.attributes['height']}" class="rf-tb #{component.attributes['styleClass']}"
- style="#{component.attributes['style']}"
+ <table border="0" cellpadding="0" cellspacing="0" id="#{clientId}"
+ width="#{getWidthToolbar(component)}"
+ height="#{getHeightToolbar(component)}"
+ class="rf-tb #{component.attributes['styleClass']}"
+ style="#{ component.attributes['style']}"
cdk:passThroughWithExclusions="">
- <cdk:call expression="encodeEventsAttributes(facesContext, component)" />
+ <cdk:call expression="encodeEventsAttributes(facesContext, component)" />
+ <cdk:call expression="renderColElements(facesContext, component)" />
<tr class="rf-tb-cntr">
<cdk:body />
</tr>
14 years
JBoss Rich Faces SVN: r20602 - in trunk/ui/input/ui/src/main: templates and 1 other directory.
by richfaces-svn-commits@lists.jboss.org
Author: abelevich
Date: 2010-12-16 05:22:22 -0500 (Thu, 16 Dec 2010)
New Revision: 20602
Modified:
trunk/ui/input/ui/src/main/java/org/richfaces/renderkit/InplaceSelectRendererBase.java
trunk/ui/input/ui/src/main/templates/inplaceSelect.template.xml
Log:
RF-9846
Modified: trunk/ui/input/ui/src/main/java/org/richfaces/renderkit/InplaceSelectRendererBase.java
===================================================================
--- trunk/ui/input/ui/src/main/java/org/richfaces/renderkit/InplaceSelectRendererBase.java 2010-12-16 10:05:42 UTC (rev 20601)
+++ trunk/ui/input/ui/src/main/java/org/richfaces/renderkit/InplaceSelectRendererBase.java 2010-12-16 10:22:22 UTC (rev 20602)
@@ -86,6 +86,18 @@
return SelectHelper.getSelectInputLabel(facesContext, component);
}
+ public String getListWidth(UIComponent component) {
+ AbstractInplaceSelect select = (AbstractInplaceSelect)component;
+ String width = select.getListWidth();
+ return (width != null && width.trim().length() != 0) ? ("width: " + width) : "";
+ }
+
+ public String getListHeight(UIComponent component) {
+ AbstractInplaceSelect select = (AbstractInplaceSelect)component;
+ String height = select.getListHeight();
+ return (height != null && height.trim().length() != 0) ? ("height: " + height) : "";
+ }
+
public String getSelectLabel(FacesContext facesContext, UIComponent component) {
AbstractInplaceSelect select = (AbstractInplaceSelect) component;
String label = getSelectInputLabel(facesContext, select);
Modified: trunk/ui/input/ui/src/main/templates/inplaceSelect.template.xml
===================================================================
--- trunk/ui/input/ui/src/main/templates/inplaceSelect.template.xml 2010-12-16 10:05:42 UTC (rev 20601)
+++ trunk/ui/input/ui/src/main/templates/inplaceSelect.template.xml 2010-12-16 10:22:22 UTC (rev 20602)
@@ -80,14 +80,14 @@
</c:if>
<span id="#{clientId}List" style="display: none" class="#{getListCss(component)}">
<cdk:call expression="renderListHandlers(facesContext, component);"/>
- <span class="rf-is-lst-pos" style="width: #{component.attributes['listWidth']}">
+ <span class="rf-is-lst-pos" style="#{getListWidth(component)}">
<span class="rf-is-shdw">
<span class="rf-is-shdw-t"></span>
<span class="rf-is-shdw-l"></span>
<span class="rf-is-shdw-r"></span>
<span class="rf-is-shdw-b"></span>
<span class="rf-is-lst-dec">
- <span class="rf-is-lst-scrl" style="height: #{component.attributes['listHeight']}">
+ <span class="rf-is-lst-scrl" style="#{getListHeight(component)}">
<span id="#{clientId}Items">
<cdk:call expression="encodeItems(facesContext, component, clientSelectItems);"/>
</span>
14 years
JBoss Rich Faces SVN: r20601 - in modules/tests/metamer/trunk/application/src/main/webapp/components: richComponentControl and 1 other directory.
by richfaces-svn-commits@lists.jboss.org
Author: ppitonak(a)redhat.com
Date: 2010-12-16 05:05:42 -0500 (Thu, 16 Dec 2010)
New Revision: 20601
Modified:
modules/tests/metamer/trunk/application/src/main/webapp/components/a4jAjax/hCommandButton.xhtml
modules/tests/metamer/trunk/application/src/main/webapp/components/a4jAjax/hCommandButtonWrapped.xhtml
modules/tests/metamer/trunk/application/src/main/webapp/components/a4jAjax/hCommandLink.xhtml
modules/tests/metamer/trunk/application/src/main/webapp/components/a4jAjax/hGraphicImage.xhtml
modules/tests/metamer/trunk/application/src/main/webapp/components/a4jAjax/hInputSecret.xhtml
modules/tests/metamer/trunk/application/src/main/webapp/components/a4jAjax/hInputText.xhtml
modules/tests/metamer/trunk/application/src/main/webapp/components/a4jAjax/hInputTextWrapped.xhtml
modules/tests/metamer/trunk/application/src/main/webapp/components/a4jAjax/hInputTextarea.xhtml
modules/tests/metamer/trunk/application/src/main/webapp/components/a4jAjax/hSelectBooleanCheckbox.xhtml
modules/tests/metamer/trunk/application/src/main/webapp/components/a4jAjax/hSelectManyCheckbox.xhtml
modules/tests/metamer/trunk/application/src/main/webapp/components/a4jAjax/hSelectManyListbox.xhtml
modules/tests/metamer/trunk/application/src/main/webapp/components/a4jAjax/hSelectManyMenu.xhtml
modules/tests/metamer/trunk/application/src/main/webapp/components/a4jAjax/hSelectOneListbox.xhtml
modules/tests/metamer/trunk/application/src/main/webapp/components/a4jAjax/hSelectOneMenu.xhtml
modules/tests/metamer/trunk/application/src/main/webapp/components/a4jAjax/hSelectOneRadio.xhtml
modules/tests/metamer/trunk/application/src/main/webapp/components/richComponentControl/simple.xhtml
Log:
* attribute onevent removed from a4j:ajax
* ID removed from rich:componentControl
Modified: modules/tests/metamer/trunk/application/src/main/webapp/components/a4jAjax/hCommandButton.xhtml
===================================================================
--- modules/tests/metamer/trunk/application/src/main/webapp/components/a4jAjax/hCommandButton.xhtml 2010-12-16 07:03:54 UTC (rev 20600)
+++ modules/tests/metamer/trunk/application/src/main/webapp/components/a4jAjax/hCommandButton.xhtml 2010-12-16 10:05:42 UTC (rev 20601)
@@ -55,7 +55,6 @@
onbegin="#{a4jAjaxBean.attributes['onbegin'].value}"
oncomplete="#{a4jAjaxBean.attributes['oncomplete'].value}"
onerror="#{a4jAjaxBean.attributes['onerror'].value}"
- onevent="#{a4jAjaxBean.attributes['onevent'].value}"
queueId="#{a4jAjaxBean.attributes['queueId'].value}"
render="#{a4jAjaxBean.attributes['render'].value}"
status="#{a4jAjaxBean.attributes['status'].value}"
Modified: modules/tests/metamer/trunk/application/src/main/webapp/components/a4jAjax/hCommandButtonWrapped.xhtml
===================================================================
--- modules/tests/metamer/trunk/application/src/main/webapp/components/a4jAjax/hCommandButtonWrapped.xhtml 2010-12-16 07:03:54 UTC (rev 20600)
+++ modules/tests/metamer/trunk/application/src/main/webapp/components/a4jAjax/hCommandButtonWrapped.xhtml 2010-12-16 10:05:42 UTC (rev 20601)
@@ -54,7 +54,6 @@
onbegin="#{a4jAjaxBean.attributes['onbegin'].value}"
oncomplete="#{a4jAjaxBean.attributes['oncomplete'].value}"
onerror="#{a4jAjaxBean.attributes['onerror'].value}"
- onevent="#{a4jAjaxBean.attributes['onevent'].value}"
queueId="#{a4jAjaxBean.attributes['queueId'].value}"
render="#{a4jAjaxBean.attributes['render'].value}"
status="#{a4jAjaxBean.attributes['status'].value}"
Modified: modules/tests/metamer/trunk/application/src/main/webapp/components/a4jAjax/hCommandLink.xhtml
===================================================================
--- modules/tests/metamer/trunk/application/src/main/webapp/components/a4jAjax/hCommandLink.xhtml 2010-12-16 07:03:54 UTC (rev 20600)
+++ modules/tests/metamer/trunk/application/src/main/webapp/components/a4jAjax/hCommandLink.xhtml 2010-12-16 10:05:42 UTC (rev 20601)
@@ -55,7 +55,6 @@
onbegin="#{a4jAjaxBean.attributes['onbegin'].value}"
oncomplete="#{a4jAjaxBean.attributes['oncomplete'].value}"
onerror="#{a4jAjaxBean.attributes['onerror'].value}"
- onevent="#{a4jAjaxBean.attributes['onevent'].value}"
queueId="#{a4jAjaxBean.attributes['queueId'].value}"
render="#{a4jAjaxBean.attributes['render'].value}"
status="#{a4jAjaxBean.attributes['status'].value}"
Modified: modules/tests/metamer/trunk/application/src/main/webapp/components/a4jAjax/hGraphicImage.xhtml
===================================================================
--- modules/tests/metamer/trunk/application/src/main/webapp/components/a4jAjax/hGraphicImage.xhtml 2010-12-16 07:03:54 UTC (rev 20600)
+++ modules/tests/metamer/trunk/application/src/main/webapp/components/a4jAjax/hGraphicImage.xhtml 2010-12-16 10:05:42 UTC (rev 20601)
@@ -56,7 +56,6 @@
onbegin="#{a4jAjaxBean.attributes['onbegin'].value}"
oncomplete="#{a4jAjaxBean.attributes['oncomplete'].value}"
onerror="#{a4jAjaxBean.attributes['onerror'].value}"
- onevent="#{a4jAjaxBean.attributes['onevent'].value}"
queueId="#{a4jAjaxBean.attributes['queueId'].value}"
render="#{a4jAjaxBean.attributes['render'].value}"
status="#{a4jAjaxBean.attributes['status'].value}"
Modified: modules/tests/metamer/trunk/application/src/main/webapp/components/a4jAjax/hInputSecret.xhtml
===================================================================
--- modules/tests/metamer/trunk/application/src/main/webapp/components/a4jAjax/hInputSecret.xhtml 2010-12-16 07:03:54 UTC (rev 20600)
+++ modules/tests/metamer/trunk/application/src/main/webapp/components/a4jAjax/hInputSecret.xhtml 2010-12-16 10:05:42 UTC (rev 20601)
@@ -54,7 +54,6 @@
onbegin="#{a4jAjaxBean.attributes['onbegin'].value}"
oncomplete="#{a4jAjaxBean.attributes['oncomplete'].value}"
onerror="#{a4jAjaxBean.attributes['onerror'].value}"
- onevent="#{a4jAjaxBean.attributes['onevent'].value}"
queueId="#{a4jAjaxBean.attributes['queueId'].value}"
render="#{a4jAjaxBean.attributes['render'].value}"
status="#{a4jAjaxBean.attributes['status'].value}"
Modified: modules/tests/metamer/trunk/application/src/main/webapp/components/a4jAjax/hInputText.xhtml
===================================================================
--- modules/tests/metamer/trunk/application/src/main/webapp/components/a4jAjax/hInputText.xhtml 2010-12-16 07:03:54 UTC (rev 20600)
+++ modules/tests/metamer/trunk/application/src/main/webapp/components/a4jAjax/hInputText.xhtml 2010-12-16 10:05:42 UTC (rev 20601)
@@ -54,7 +54,6 @@
onbegin="#{a4jAjaxBean.attributes['onbegin'].value}"
oncomplete="#{a4jAjaxBean.attributes['oncomplete'].value}"
onerror="#{a4jAjaxBean.attributes['onerror'].value}"
- onevent="#{a4jAjaxBean.attributes['onevent'].value}"
queueId="#{a4jAjaxBean.attributes['queueId'].value}"
render="#{a4jAjaxBean.attributes['render'].value}"
status="#{a4jAjaxBean.attributes['status'].value}"
Modified: modules/tests/metamer/trunk/application/src/main/webapp/components/a4jAjax/hInputTextWrapped.xhtml
===================================================================
--- modules/tests/metamer/trunk/application/src/main/webapp/components/a4jAjax/hInputTextWrapped.xhtml 2010-12-16 07:03:54 UTC (rev 20600)
+++ modules/tests/metamer/trunk/application/src/main/webapp/components/a4jAjax/hInputTextWrapped.xhtml 2010-12-16 10:05:42 UTC (rev 20601)
@@ -54,7 +54,6 @@
onbegin="#{a4jAjaxBean.attributes['onbegin'].value}"
oncomplete="#{a4jAjaxBean.attributes['oncomplete'].value}"
onerror="#{a4jAjaxBean.attributes['onerror'].value}"
- onevent="#{a4jAjaxBean.attributes['onevent'].value}"
queueId="#{a4jAjaxBean.attributes['queueId'].value}"
render="#{a4jAjaxBean.attributes['render'].value}"
status="#{a4jAjaxBean.attributes['status'].value}"
Modified: modules/tests/metamer/trunk/application/src/main/webapp/components/a4jAjax/hInputTextarea.xhtml
===================================================================
--- modules/tests/metamer/trunk/application/src/main/webapp/components/a4jAjax/hInputTextarea.xhtml 2010-12-16 07:03:54 UTC (rev 20600)
+++ modules/tests/metamer/trunk/application/src/main/webapp/components/a4jAjax/hInputTextarea.xhtml 2010-12-16 10:05:42 UTC (rev 20601)
@@ -54,7 +54,6 @@
onbegin="#{a4jAjaxBean.attributes['onbegin'].value}"
oncomplete="#{a4jAjaxBean.attributes['oncomplete'].value}"
onerror="#{a4jAjaxBean.attributes['onerror'].value}"
- onevent="#{a4jAjaxBean.attributes['onevent'].value}"
queueId="#{a4jAjaxBean.attributes['queueId'].value}"
render="#{a4jAjaxBean.attributes['render'].value}"
status="#{a4jAjaxBean.attributes['status'].value}"
Modified: modules/tests/metamer/trunk/application/src/main/webapp/components/a4jAjax/hSelectBooleanCheckbox.xhtml
===================================================================
--- modules/tests/metamer/trunk/application/src/main/webapp/components/a4jAjax/hSelectBooleanCheckbox.xhtml 2010-12-16 07:03:54 UTC (rev 20600)
+++ modules/tests/metamer/trunk/application/src/main/webapp/components/a4jAjax/hSelectBooleanCheckbox.xhtml 2010-12-16 10:05:42 UTC (rev 20601)
@@ -53,7 +53,6 @@
onbegin="#{a4jAjaxBean.attributes['onbegin'].value}"
oncomplete="#{a4jAjaxBean.attributes['oncomplete'].value}"
onerror="#{a4jAjaxBean.attributes['onerror'].value}"
- onevent="#{a4jAjaxBean.attributes['onevent'].value}"
queueId="#{a4jAjaxBean.attributes['queueId'].value}"
render="#{a4jAjaxBean.attributes['render'].value}"
status="#{a4jAjaxBean.attributes['status'].value}"
Modified: modules/tests/metamer/trunk/application/src/main/webapp/components/a4jAjax/hSelectManyCheckbox.xhtml
===================================================================
--- modules/tests/metamer/trunk/application/src/main/webapp/components/a4jAjax/hSelectManyCheckbox.xhtml 2010-12-16 07:03:54 UTC (rev 20600)
+++ modules/tests/metamer/trunk/application/src/main/webapp/components/a4jAjax/hSelectManyCheckbox.xhtml 2010-12-16 10:05:42 UTC (rev 20601)
@@ -59,7 +59,6 @@
onbegin="#{a4jAjaxBean.attributes['onbegin'].value}"
oncomplete="#{a4jAjaxBean.attributes['oncomplete'].value}"
onerror="#{a4jAjaxBean.attributes['onerror'].value}"
- onevent="#{a4jAjaxBean.attributes['onevent'].value}"
queueId="#{a4jAjaxBean.attributes['queueId'].value}"
render="#{a4jAjaxBean.attributes['render'].value}"
status="#{a4jAjaxBean.attributes['status'].value}"
Modified: modules/tests/metamer/trunk/application/src/main/webapp/components/a4jAjax/hSelectManyListbox.xhtml
===================================================================
--- modules/tests/metamer/trunk/application/src/main/webapp/components/a4jAjax/hSelectManyListbox.xhtml 2010-12-16 07:03:54 UTC (rev 20600)
+++ modules/tests/metamer/trunk/application/src/main/webapp/components/a4jAjax/hSelectManyListbox.xhtml 2010-12-16 10:05:42 UTC (rev 20601)
@@ -60,7 +60,6 @@
onbegin="#{a4jAjaxBean.attributes['onbegin'].value}"
oncomplete="#{a4jAjaxBean.attributes['oncomplete'].value}"
onerror="#{a4jAjaxBean.attributes['onerror'].value}"
- onevent="#{a4jAjaxBean.attributes['onevent'].value}"
queueId="#{a4jAjaxBean.attributes['queueId'].value}"
render="#{a4jAjaxBean.attributes['render'].value}"
status="#{a4jAjaxBean.attributes['status'].value}"
Modified: modules/tests/metamer/trunk/application/src/main/webapp/components/a4jAjax/hSelectManyMenu.xhtml
===================================================================
--- modules/tests/metamer/trunk/application/src/main/webapp/components/a4jAjax/hSelectManyMenu.xhtml 2010-12-16 07:03:54 UTC (rev 20600)
+++ modules/tests/metamer/trunk/application/src/main/webapp/components/a4jAjax/hSelectManyMenu.xhtml 2010-12-16 10:05:42 UTC (rev 20601)
@@ -60,7 +60,6 @@
onbegin="#{a4jAjaxBean.attributes['onbegin'].value}"
oncomplete="#{a4jAjaxBean.attributes['oncomplete'].value}"
onerror="#{a4jAjaxBean.attributes['onerror'].value}"
- onevent="#{a4jAjaxBean.attributes['onevent'].value}"
queueId="#{a4jAjaxBean.attributes['queueId'].value}"
render="#{a4jAjaxBean.attributes['render'].value}"
status="#{a4jAjaxBean.attributes['status'].value}"
Modified: modules/tests/metamer/trunk/application/src/main/webapp/components/a4jAjax/hSelectOneListbox.xhtml
===================================================================
--- modules/tests/metamer/trunk/application/src/main/webapp/components/a4jAjax/hSelectOneListbox.xhtml 2010-12-16 07:03:54 UTC (rev 20600)
+++ modules/tests/metamer/trunk/application/src/main/webapp/components/a4jAjax/hSelectOneListbox.xhtml 2010-12-16 10:05:42 UTC (rev 20601)
@@ -59,7 +59,6 @@
onbegin="#{a4jAjaxBean.attributes['onbegin'].value}"
oncomplete="#{a4jAjaxBean.attributes['oncomplete'].value}"
onerror="#{a4jAjaxBean.attributes['onerror'].value}"
- onevent="#{a4jAjaxBean.attributes['onevent'].value}"
queueId="#{a4jAjaxBean.attributes['queueId'].value}"
render="#{a4jAjaxBean.attributes['render'].value}"
status="#{a4jAjaxBean.attributes['status'].value}"
Modified: modules/tests/metamer/trunk/application/src/main/webapp/components/a4jAjax/hSelectOneMenu.xhtml
===================================================================
--- modules/tests/metamer/trunk/application/src/main/webapp/components/a4jAjax/hSelectOneMenu.xhtml 2010-12-16 07:03:54 UTC (rev 20600)
+++ modules/tests/metamer/trunk/application/src/main/webapp/components/a4jAjax/hSelectOneMenu.xhtml 2010-12-16 10:05:42 UTC (rev 20601)
@@ -60,7 +60,6 @@
onbegin="#{a4jAjaxBean.attributes['onbegin'].value}"
oncomplete="#{a4jAjaxBean.attributes['oncomplete'].value}"
onerror="#{a4jAjaxBean.attributes['onerror'].value}"
- onevent="#{a4jAjaxBean.attributes['onevent'].value}"
queueId="#{a4jAjaxBean.attributes['queueId'].value}"
render="#{a4jAjaxBean.attributes['render'].value}"
status="#{a4jAjaxBean.attributes['status'].value}"
Modified: modules/tests/metamer/trunk/application/src/main/webapp/components/a4jAjax/hSelectOneRadio.xhtml
===================================================================
--- modules/tests/metamer/trunk/application/src/main/webapp/components/a4jAjax/hSelectOneRadio.xhtml 2010-12-16 07:03:54 UTC (rev 20600)
+++ modules/tests/metamer/trunk/application/src/main/webapp/components/a4jAjax/hSelectOneRadio.xhtml 2010-12-16 10:05:42 UTC (rev 20601)
@@ -59,7 +59,6 @@
onbegin="#{a4jAjaxBean.attributes['onbegin'].value}"
oncomplete="#{a4jAjaxBean.attributes['oncomplete'].value}"
onerror="#{a4jAjaxBean.attributes['onerror'].value}"
- onevent="#{a4jAjaxBean.attributes['onevent'].value}"
queueId="#{a4jAjaxBean.attributes['queueId'].value}"
render="#{a4jAjaxBean.attributes['render'].value}"
status="#{a4jAjaxBean.attributes['status'].value}"
Modified: modules/tests/metamer/trunk/application/src/main/webapp/components/richComponentControl/simple.xhtml
===================================================================
--- modules/tests/metamer/trunk/application/src/main/webapp/components/richComponentControl/simple.xhtml 2010-12-16 07:03:54 UTC (rev 20600)
+++ modules/tests/metamer/trunk/application/src/main/webapp/components/richComponentControl/simple.xhtml 2010-12-16 10:05:42 UTC (rev 20601)
@@ -66,11 +66,11 @@
<br/>
<h:commandButton id="button" value="button">
- <rich:componentControl id="richComponentControl"
- event="click"
+ <rich:componentControl event="click"
operation="#{richComponentControlBean.attributes['operation'].value}"
selector="#{richComponentControlBean.attributes['selector'].value}"
- target="#{richComponentControlBean.attributes['target'].value}" />
+ target="#{richComponentControlBean.attributes['target'].value}"
+ />
</h:commandButton>
</ui:define>
14 years
JBoss Rich Faces SVN: r20600 - modules/docs/trunk/Component_Reference/src/main/docbook/en-US.
by richfaces-svn-commits@lists.jboss.org
Author: SeanRogers
Date: 2010-12-16 02:03:54 -0500 (Thu, 16 Dec 2010)
New Revision: 20600
Modified:
modules/docs/trunk/Component_Reference/src/main/docbook/en-US/chap-Component_Reference-Output_and_messages.xml
Log:
Draft of message and messages
Modified: modules/docs/trunk/Component_Reference/src/main/docbook/en-US/chap-Component_Reference-Output_and_messages.xml
===================================================================
--- modules/docs/trunk/Component_Reference/src/main/docbook/en-US/chap-Component_Reference-Output_and_messages.xml 2010-12-16 00:49:47 UTC (rev 20599)
+++ modules/docs/trunk/Component_Reference/src/main/docbook/en-US/chap-Component_Reference-Output_and_messages.xml 2010-12-16 07:03:54 UTC (rev 20600)
@@ -15,38 +15,10 @@
</para>
<!-- <rich:message> -->
- <!--
<section id="sect-Component_Reference-Output_and_messages-richmessage">
<title><sgmltag><rich:message></sgmltag></title>
- <itemizedlist>
- <listitem>
- <para>
- <parameter>component-type</parameter>: <classname>org.richfaces.RichMessage</classname>
- </para>
- </listitem>
- <listitem>
- <para>
- <parameter>component-class</parameter>: <classname>org.richfaces.component.html.HtmlRichMessage</classname>
- </para>
- </listitem>
- <listitem>
- <para>
- <parameter>component-family</parameter>: <classname>org.richfaces.component.RichMessage</classname>
- </para>
- </listitem>
- <listitem>
- <para>
- <parameter>renderer-type</parameter>: <classname>org.richfaces.RichMessageRenderer</classname>
- </para>
- </listitem>
- <listitem>
- <para>
- <parameter>tag-class</parameter>: <classname>org.richfaces.taglib.RichMessageTag</classname>
- </para>
- </listitem>
- </itemizedlist>
<para>
- The <sgmltag><rich:message></sgmltag> component renders a single for message relating to another specific component. The message consists of two parts, both of which are optional: the marker icon and the textual label. The appearance of the message can be customized, and tool-tips can be used for further information about the message.
+ The <sgmltag><rich:message></sgmltag> component renders a single message relating to another specific component. The message consists of two parts, both of which are optional: the marker icon and the textual label. The appearance of the message can be customized, and tool-tips can be used for further information about the message.
</para>
<figure id="figu-Component_Reference-richmessage-richmessage_component">
<title>rich:message component</title>
@@ -61,97 +33,109 @@
</textobject>
</mediaobject>
</figure>
- <para>
- The <varname>passedLabel</varname> attribute contains a message to display when there are no errors; that is, when validation passes successfully. The <varname>showSummary</varname> attribute specifies whether to display only a summary of the full message. The full message can be displayed in a tool-tip when hovering the mouse over the summary.
- </para>
- <para>
- The <sgmltag><a4j:message></sgmltag> component is automatically rendered after an Ajax request, even without the use of an <sgmltag><a4j:outputPanel></sgmltag> component.
- </para>
- <para>
- Facets are used to define the marker icons for different message states:
- </para>
- <variablelist>
- <varlistentry>
- <term><literal>errorMarker</literal></term>
+
+ <section id="sect-Component_Reference-richmessage-Basic_usage">
+ <title>Basic usage</title>
+ <para>
+ The <sgmltag><rich:message></sgmltag> component needs the <varname>for</varname> attribute to point to the <varname>id</varname> identifier of the related component. The message is displayed depending on the state of the linked component's requests.
+ </para>
+ <para>
+ The <sgmltag><rich:message></sgmltag> component is automatically rendered after an Ajax request, even without the use of an <sgmltag><a4j:outputPanel></sgmltag> component.
+ </para>
+ </section>
+
+ <section id="sect-Component_Reference-richmessage-Appearance">
+ <title>Appearance</title>
+ <para>
+ The <varname>passedLabel</varname> attribute contains a message to display when there are no errors; that is, when validation passes successfully. The <varname>showSummary</varname> attribute specifies whether to display only a summary of the full message. The full message can be displayed in a tool-tip when hovering the mouse over the summary.
+ </para>
+ <para>
+ Facets are used to define the marker icons for different message states:
+ </para>
+ <variablelist>
+ <varlistentry>
+ <term><literal>errorMarker</literal></term>
+ <listitem>
+ <para>
+ Defines the icon for messages with the <literal>error</literal> severity class.
+ </para>
+ </listitem>
+ </varlistentry>
+ <varlistentry>
+ <term><literal>fatalMarker</literal></term>
+ <listitem>
+ <para>
+ Defines the icon for messages with the <literal>fatal</literal> severity class.
+ </para>
+ </listitem>
+ </varlistentry>
+ <varlistentry>
+ <term><literal>infoMarker</literal></term>
+ <listitem>
+ <para>
+ Defines the icon for messages with the <literal>info</literal> severity class.
+ </para>
+ </listitem>
+ </varlistentry>
+ <varlistentry>
+ <term><literal>passedMarker</literal></term>
+ <listitem>
+ <para>
+ Defines the icon for messages that are not of the <literal>error</literal>, <literal>fatal</literal>, <literal>info</literal>, or <literal>warn</literal> severity classes.
+ </para>
+ </listitem>
+ </varlistentry>
+ <varlistentry>
+ <term><literal>warnMarker</literal></term>
+ <listitem>
+ <para>
+ Defines the icon for messages with the <literal>warn</literal> severity class.
+ </para>
+ </listitem>
+ </varlistentry>
+ </variablelist>
+ <example id="exam-Component_Reference-richmessage-richmessage_example">
+ <title>rich:message example</title>
+ <programlisting language="XML" role="XML"><xi:include href="extras/exam-Component_Reference-richmessage-richmessage_example.xml_sample" parse="text" xmlns:xi="http://www.w3.org/2001/XInclude" />
+ </programlisting>
+ </example>
+ </section>
+
+ <section id="sect-Component_Reference-richmessage-Reference_data">
+ <title>Reference data</title>
+ <itemizedlist>
<listitem>
<para>
- Defines the icon for messages with the <literal>error</literal> severity class.
+ <parameter>component-type</parameter>: <classname>org.richfaces.component.RichMessage</classname>
</para>
</listitem>
- </varlistentry>
- <varlistentry>
- <term><literal>fatalMarker</literal></term>
<listitem>
<para>
- Defines the icon for messages with the <literal>fatal</literal> severity class.
+ <parameter>component-class</parameter>: <classname>org.richfaces.component.html.HtmlRichMessage</classname>
</para>
</listitem>
- </varlistentry>
- <varlistentry>
- <term><literal>infoMarker</literal></term>
<listitem>
<para>
- Defines the icon for messages with the <literal>info</literal> severity class.
+ <parameter>component-family</parameter>: <classname>org.richfaces.component.RichMessage</classname>
</para>
</listitem>
- </varlistentry>
- <varlistentry>
- <term><literal>passedMarker</literal></term>
<listitem>
<para>
- Defines the icon for messages that are not of the <literal>error</literal>, <literal>fatal</literal>, <literal>info</literal>, or <literal>warn</literal> severity classes.
+ <parameter>renderer-type</parameter>: <classname>org.richfaces.RichMessageRenderer</classname>
</para>
</listitem>
- </varlistentry>
- <varlistentry>
- <term><literal>warnMarker</literal></term>
<listitem>
<para>
- Defines the icon for messages with the <literal>warn</literal> severity class.
+ <parameter>tag-class</parameter>: <classname>org.richfaces.taglib.RichMessageTag</classname>
</para>
</listitem>
- </varlistentry>
- </variablelist>
- <example id="exam-Component_Reference-richmessage-richmessage_example">
- <title>rich:message example</title>
-
-<programlisting language="XML" role="XML"><xi:include href="extras/exam-Component_Reference-richmessage-richmessage_example.xml_sample" parse="text" xmlns:xi="http://www.w3.org/2001/XInclude" />
-</programlisting>
- </example>
+ </itemizedlist>
+ </section>
</section>
- -->
<!-- <rich:messages> -->
- <!--
<section id="sect-Component_Reference-Output_and_messages-richmessages">
<title><sgmltag><rich:messages></sgmltag></title>
- <itemizedlist>
- <listitem>
- <para>
- <parameter>component-type</parameter>: <classname>org.richfaces.component.RichMessages</classname>
- </para>
- </listitem>
- <listitem>
- <para>
- <parameter>component-class</parameter>: <classname>org.richfaces.component.html.HtmlRichMessages</classname>
- </para>
- </listitem>
- <listitem>
- <para>
- <parameter>component-family</parameter>: <classname>org.richfaces.component.RichMessages</classname>
- </para>
- </listitem>
- <listitem>
- <para>
- <parameter>renderer-type</parameter>: <classname>org.richfaces.RichMessagesRenderer</classname>
- </para>
- </listitem>
- <listitem>
- <para>
- <parameter>tag-class</parameter>: <classname>org.richfaces.taglib.RichMessagesTag</classname>
- </para>
- </listitem>
- </itemizedlist>
<para>
The <sgmltag><rich:messages></sgmltag> components works similarly to the <sgmltag><rich:message></sgmltag> component, but can display validation messages for a group of components instead of just a single component. Refer to <xref linkend="sect-Component_Reference-Output_and_messages-richmessage" /> for details on the <sgmltag><rich:message></sgmltag> component.
</para>
@@ -168,65 +152,105 @@
</textobject>
</mediaobject>
</figure>
- <para>
- The <sgmltag><rich:messages></sgmltag> component displays error messages for each validating component in the same container. The <varname>passedLabel</varname> attribute contains a message to display when there are no errors; that is, when validation for all components passes successfully. The <varname>layout</varname> attribute defines how the messages are presented: either using <literal>list</literal> for a list layout, or <literal>table</literal> for a tabular layout.
- </para>
- <para>
- The <sgmltag><a4j:message></sgmltag> component is automatically rendered after an Ajax request, even without the use of an <sgmltag><a4j:outputPanel></sgmltag> component.
- </para>
- <para>
- All messages use the same state icons, specified by using facets in the same way as for the <sgmltag><rich:message></sgmltag> component:
- </para>
- <variablelist>
- <varlistentry>
- <term><literal>errorMarker</literal></term>
+
+ <section id="sect-Component_Reference-richmessages-Basic_usage">
+ <title>Basic usage</title>
+ <para>
+ The <sgmltag><rich:messages></sgmltag> component doesn't require any extra attributes for basic usage. It displays all messages relating to requests from components in the same container element.
+ </para>
+ <para>
+ The <sgmltag><rich:message></sgmltag> component is automatically rendered after an Ajax request, even without the use of an <sgmltag><a4j:outputPanel></sgmltag> component.
+ </para>
+ </section>
+
+ <section id="sect-Component_Reference-richmessages-Appearance">
+ <title>Appearance</title>
+ <para>
+ The <sgmltag><rich:messages></sgmltag> component displays error messages for each validating component in the same container. The <varname>passedLabel</varname> attribute contains a message to display when there are no errors; that is, when validation for all components passes successfully. The <varname>layout</varname> attribute defines how the messages are presented: either using <literal>list</literal> for a list layout, or <literal>table</literal> for a tabular layout.
+ </para>
+ <para>
+ All messages use the same state icons, specified by using facets in the same way as for the <sgmltag><rich:message></sgmltag> component:
+ </para>
+ <variablelist>
+ <varlistentry>
+ <term><literal>errorMarker</literal></term>
+ <listitem>
+ <para>
+ Defines the icon for messages with the <literal>error</literal> severity class.
+ </para>
+ </listitem>
+ </varlistentry>
+ <varlistentry>
+ <term><literal>fatalMarker</literal></term>
+ <listitem>
+ <para>
+ Defines the icon for messages with the <literal>fatal</literal> severity class.
+ </para>
+ </listitem>
+ </varlistentry>
+ <varlistentry>
+ <term><literal>infoMarker</literal></term>
+ <listitem>
+ <para>
+ Defines the icon for messages with the <literal>info</literal> severity class.
+ </para>
+ </listitem>
+ </varlistentry>
+ <varlistentry>
+ <term><literal>passedMarker</literal></term>
+ <listitem>
+ <para>
+ Defines the icon for messages that are not of the <literal>error</literal>, <literal>fatal</literal>, <literal>info</literal>, or <literal>warn</literal> severity classes.
+ </para>
+ </listitem>
+ </varlistentry>
+ <varlistentry>
+ <term><literal>warnMarker</literal></term>
+ <listitem>
+ <para>
+ Defines the icon for messages with the <literal>warn</literal> severity class.
+ </para>
+ </listitem>
+ </varlistentry>
+ </variablelist>
+ <example id="exam-Component_Reference-richmessages-richmessages_example">
+ <title>rich:messages example</title>
+ <programlisting language="XML" role="XML"><xi:include href="extras/exam-Component_Reference-richmessages-richmessages_example.xml_sample" parse="text" xmlns:xi="http://www.w3.org/2001/XInclude" />
+ </programlisting>
+ </example>
+ </section>
+
+ <section id="sect-Component_Reference-richmessages-Reference_data">
+ <title>Reference data</title>
+ <itemizedlist>
<listitem>
<para>
- Defines the icon for messages with the <literal>error</literal> severity class.
+ <parameter>component-type</parameter>: <classname>org.richfaces.component.RichMessages</classname>
</para>
</listitem>
- </varlistentry>
- <varlistentry>
- <term><literal>fatalMarker</literal></term>
<listitem>
<para>
- Defines the icon for messages with the <literal>fatal</literal> severity class.
+ <parameter>component-class</parameter>: <classname>org.richfaces.component.html.HtmlRichMessages</classname>
</para>
</listitem>
- </varlistentry>
- <varlistentry>
- <term><literal>infoMarker</literal></term>
<listitem>
<para>
- Defines the icon for messages with the <literal>info</literal> severity class.
+ <parameter>component-family</parameter>: <classname>org.richfaces.component.RichMessages</classname>
</para>
</listitem>
- </varlistentry>
- <varlistentry>
- <term><literal>passedMarker</literal></term>
<listitem>
<para>
- Defines the icon for messages that are not of the <literal>error</literal>, <literal>fatal</literal>, <literal>info</literal>, or <literal>warn</literal> severity classes.
+ <parameter>renderer-type</parameter>: <classname>org.richfaces.RichMessagesRenderer</classname>
</para>
</listitem>
- </varlistentry>
- <varlistentry>
- <term><literal>warnMarker</literal></term>
<listitem>
<para>
- Defines the icon for messages with the <literal>warn</literal> severity class.
+ <parameter>tag-class</parameter>: <classname>org.richfaces.taglib.RichMessagesTag</classname>
</para>
</listitem>
- </varlistentry>
- </variablelist>
- <example id="exam-Component_Reference-richmessages-richmessages_example">
- <title>rich:messages example</title>
-
-<programlisting language="XML" role="XML"><xi:include href="extras/exam-Component_Reference-richmessages-richmessages_example.xml_sample" parse="text" xmlns:xi="http://www.w3.org/2001/XInclude" />
-</programlisting>
- </example>
+ </itemizedlist>
+ </section>
</section>
- -->
<!-- <rich:paint2D> -->
<!--
14 years
JBoss Rich Faces SVN: r20599 - in trunk/examples/richfaces-showcase: src/main/webapp/WEB-INF and 1 other directories.
by richfaces-svn-commits@lists.jboss.org
Author: nbelaevski
Date: 2010-12-15 19:49:47 -0500 (Wed, 15 Dec 2010)
New Revision: 20599
Modified:
trunk/examples/richfaces-showcase/pom.xml
trunk/examples/richfaces-showcase/src/main/webapp-gae/WEB-INF/appengine-web.xml
trunk/examples/richfaces-showcase/src/main/webapp-gae/WEB-INF/web.xml
trunk/examples/richfaces-showcase/src/main/webapp/WEB-INF/web.xml
Log:
Added maven-gae-plugin configuration
Updated resource mappings
Switched state saving to client
Modified: trunk/examples/richfaces-showcase/pom.xml
===================================================================
--- trunk/examples/richfaces-showcase/pom.xml 2010-12-15 23:05:47 UTC (rev 20598)
+++ trunk/examples/richfaces-showcase/pom.xml 2010-12-16 00:49:47 UTC (rev 20599)
@@ -18,6 +18,7 @@
<name>Richfaces Examples: Richfaces Showcase Application</name>
<properties>
+ <gae.version>1.4.0</gae.version>
</properties>
<dependencies>
@@ -97,6 +98,25 @@
</webResources>
</configuration>
</plugin>
+ <plugin>
+ <groupId>net.kindleit</groupId>
+ <artifactId>maven-gae-plugin</artifactId>
+ <version>0.7.3</version>
+ <dependencies>
+ <dependency>
+ <groupId>net.kindleit</groupId>
+ <artifactId>gae-runtime</artifactId>
+ <version>${gae.version}</version>
+ <type>pom</type>
+ <exclusions>
+ <exclusion>
+ <groupId>com.google.appengine.orm</groupId>
+ <artifactId>jdo2-api</artifactId>
+ </exclusion>
+ </exclusions>
+ </dependency>
+ </dependencies>
+ </plugin>
</plugins>
</build>
@@ -223,16 +243,16 @@
</includedContentTypes>
<fileNameMappings>
<property>
- <name>^\Qorg.richfaces.renderkit.html\E</name>
- <value>org.richfaces/images</value>
+ <name>^.*showcase.*/([^/]+\.css)$</name>
+ <value>org.richfaces.showcase.css/$1</value>
</property>
<property>
- <name>^\Qorg.richfaces.renderkit.html.images\E</name>
- <value>org.richfaces/images</value>
+ <name>^.+/([^/]+\.(png|gif|jpg))$</name>
+ <value>org.richfaces.images/$1</value>
</property>
<property>
- <name>^css/</name>
- <value>org.richfaces/css/</value>
+ <name>^.+/([^/]+\.css)$</name>
+ <value>org.richfaces.css/$1</value>
</property>
</fileNameMappings>
</configuration>
@@ -370,6 +390,30 @@
</dependency>
</dependencies>
</profile>
+ <profile>
+ <id>unpack-gae-sdk</id>
+ <activation>
+ <property>
+ <name>!gae.home</name>
+ </property>
+ </activation>
+ <build>
+ <plugins>
+ <plugin>
+ <groupId>net.kindleit</groupId>
+ <artifactId>maven-gae-plugin</artifactId>
+ <executions>
+ <execution>
+ <phase>package</phase>
+ <goals>
+ <goal>unpack</goal>
+ </goals>
+ </execution>
+ </executions>
+ </plugin>
+ </plugins>
+ </build>
+ </profile>
</profiles>
<scm>
Modified: trunk/examples/richfaces-showcase/src/main/webapp/WEB-INF/web.xml
===================================================================
--- trunk/examples/richfaces-showcase/src/main/webapp/WEB-INF/web.xml 2010-12-15 23:05:47 UTC (rev 20598)
+++ trunk/examples/richfaces-showcase/src/main/webapp/WEB-INF/web.xml 2010-12-16 00:49:47 UTC (rev 20599)
@@ -25,7 +25,7 @@
</context-param>
<context-param>
<param-name>javax.faces.STATE_SAVING_METHOD</param-name>
- <param-value>server</param-value>
+ <param-value>client</param-value>
</context-param>
<servlet>
<servlet-name>Faces Servlet</servlet-name>
Modified: trunk/examples/richfaces-showcase/src/main/webapp-gae/WEB-INF/appengine-web.xml
===================================================================
--- trunk/examples/richfaces-showcase/src/main/webapp-gae/WEB-INF/appengine-web.xml 2010-12-15 23:05:47 UTC (rev 20598)
+++ trunk/examples/richfaces-showcase/src/main/webapp-gae/WEB-INF/appengine-web.xml 2010-12-16 00:49:47 UTC (rev 20599)
@@ -1,7 +1,7 @@
<?xml version="1.0" encoding="utf-8"?>
<appengine-web-app xmlns="http://appengine.google.com/ns/1.0">
<application>richfaces-showcase</application>
- <version>11</version>
+ <version>21</version>
<sessions-enabled>true</sessions-enabled>
<system-properties>
Modified: trunk/examples/richfaces-showcase/src/main/webapp-gae/WEB-INF/web.xml
===================================================================
--- trunk/examples/richfaces-showcase/src/main/webapp-gae/WEB-INF/web.xml 2010-12-15 23:05:47 UTC (rev 20598)
+++ trunk/examples/richfaces-showcase/src/main/webapp-gae/WEB-INF/web.xml 2010-12-16 00:49:47 UTC (rev 20599)
@@ -42,7 +42,7 @@
</context-param>
<context-param>
<param-name>javax.faces.STATE_SAVING_METHOD</param-name>
- <param-value>server</param-value>
+ <param-value>client</param-value>
</context-param>
<context-param>
<param-name>org.richfaces.staticResourceLocation</param-name>
14 years
JBoss Rich Faces SVN: r20598 - in trunk/examples/richfaces-showcase/src/main: java/org/richfaces/demo/dragdrop and 4 other directories.
by richfaces-svn-commits@lists.jboss.org
Author: nbelaevski
Date: 2010-12-15 18:05:47 -0500 (Wed, 15 Dec 2010)
New Revision: 20598
Added:
trunk/examples/richfaces-showcase/src/main/java/org/richfaces/demo/dragdrop/
trunk/examples/richfaces-showcase/src/main/java/org/richfaces/demo/dragdrop/DragDropBean.java
trunk/examples/richfaces-showcase/src/main/java/org/richfaces/demo/dragdrop/DragDropEventBean.java
trunk/examples/richfaces-showcase/src/main/java/org/richfaces/demo/dragdrop/Framework.java
trunk/examples/richfaces-showcase/src/main/webapp/richfaces/dragDrop/
trunk/examples/richfaces-showcase/src/main/webapp/richfaces/dragDrop/dragDrop.xhtml
trunk/examples/richfaces-showcase/src/main/webapp/richfaces/dragDrop/samples/
trunk/examples/richfaces-showcase/src/main/webapp/richfaces/dragDrop/samples/dragDrop-sample.xhtml
Modified:
trunk/examples/richfaces-showcase/src/main/resources/org/richfaces/demo/data/common/navigation.xml
Log:
DnD showcase demo initial check-in
Added: trunk/examples/richfaces-showcase/src/main/java/org/richfaces/demo/dragdrop/DragDropBean.java
===================================================================
--- trunk/examples/richfaces-showcase/src/main/java/org/richfaces/demo/dragdrop/DragDropBean.java (rev 0)
+++ trunk/examples/richfaces-showcase/src/main/java/org/richfaces/demo/dragdrop/DragDropBean.java 2010-12-15 23:05:47 UTC (rev 20598)
@@ -0,0 +1,102 @@
+package org.richfaces.demo.dragdrop;
+
+import static org.richfaces.demo.dragdrop.Framework.Family.cf;
+import static org.richfaces.demo.dragdrop.Framework.Family.dotNet;
+import static org.richfaces.demo.dragdrop.Framework.Family.php;
+
+import java.io.Serializable;
+import java.util.Collection;
+import java.util.List;
+
+import javax.faces.bean.ManagedBean;
+import javax.faces.bean.ViewScoped;
+
+import org.richfaces.demo.dragdrop.Framework.Family;
+
+import com.google.common.base.Predicate;
+import com.google.common.collect.Collections2;
+import com.google.common.collect.Lists;
+
+@ManagedBean
+@ViewScoped
+public class DragDropBean implements Serializable {
+
+ private static final long serialVersionUID = 1416925735640720492L;
+
+ private static final FrameworkFamilyPredicate CF_PREDICATE = new FrameworkFamilyPredicate(cf);
+
+ private static final FrameworkFamilyPredicate DOT_NET_PREDICATE = new FrameworkFamilyPredicate(dotNet);
+
+ private static final FrameworkFamilyPredicate PHP_PREDICATE = new FrameworkFamilyPredicate(php);
+
+ private static final class FrameworkFamilyPredicate implements Predicate<Framework> {
+
+ private Framework.Family family;
+
+ public FrameworkFamilyPredicate(Family family) {
+ super();
+ this.family = family;
+ }
+
+ public boolean apply(Framework input) {
+ return family.equals(input.getFamily());
+ }
+
+ }
+
+ private List<Framework> source;
+
+ private List<Framework> target;
+
+ public DragDropBean() {
+ initList();
+ }
+
+ public Collection<Framework> getSource() {
+ return source;
+ }
+
+ public Collection<Framework> getTarget() {
+ return target;
+ }
+
+ public List<Framework> getTargetPHP() {
+ return Lists.newLinkedList(Collections2.filter(target, PHP_PREDICATE));
+ }
+
+ public List<Framework> getTargetDotNet() {
+ return Lists.newLinkedList(Collections2.filter(target, DOT_NET_PREDICATE));
+ }
+
+ public List<Framework> getTargetCF() {
+ return Lists.newLinkedList(Collections2.filter(target, CF_PREDICATE));
+ }
+
+ public void moveFramework(Framework framework) {
+ source.remove(framework);
+ target.add(framework);
+ }
+
+ public void reset() {
+ initList();
+ }
+
+ private void initList() {
+ source = Lists.newArrayList();
+ target = Lists.newArrayList();
+
+ source.add(new Framework("Flexible Ajax", php));
+ source.add(new Framework("ajaxCFC", cf));
+ source.add(new Framework("AJAXEngine", dotNet));
+ source.add(new Framework("AjaxAC", php));
+ source.add(new Framework("MonoRail", dotNet));
+ source.add(new Framework("wddxAjax", cf));
+ source.add(new Framework("AJAX AGENT", php));
+ source.add(new Framework("FastPage", dotNet));
+ source.add(new Framework("JSMX", cf));
+ source.add(new Framework("PAJAJ", php));
+ source.add(new Framework("Symfony", php));
+ source.add(new Framework("PowerWEB", dotNet));
+ }
+
+}
Added: trunk/examples/richfaces-showcase/src/main/java/org/richfaces/demo/dragdrop/DragDropEventBean.java
===================================================================
--- trunk/examples/richfaces-showcase/src/main/java/org/richfaces/demo/dragdrop/DragDropEventBean.java (rev 0)
+++ trunk/examples/richfaces-showcase/src/main/java/org/richfaces/demo/dragdrop/DragDropEventBean.java 2010-12-15 23:05:47 UTC (rev 20598)
@@ -0,0 +1,24 @@
+package org.richfaces.demo.dragdrop;
+
+import javax.faces.bean.ManagedBean;
+import javax.faces.bean.ManagedProperty;
+import javax.faces.bean.RequestScoped;
+
+import org.richfaces.event.DropEvent;
+import org.richfaces.event.DropListener;
+
+@ManagedBean
+@RequestScoped
+public class DragDropEventBean implements DropListener {
+
+ @ManagedProperty(value = "#{dragDropBean}")
+ private DragDropBean dragDropBean;
+
+ public void setDragDropBean(DragDropBean dragDropBean) {
+ this.dragDropBean = dragDropBean;
+ }
+
+ public void processDrop(DropEvent event) {
+ dragDropBean.moveFramework((Framework) event.getDragValue());
+ }
+}
\ No newline at end of file
Added: trunk/examples/richfaces-showcase/src/main/java/org/richfaces/demo/dragdrop/Framework.java
===================================================================
--- trunk/examples/richfaces-showcase/src/main/java/org/richfaces/demo/dragdrop/Framework.java (rev 0)
+++ trunk/examples/richfaces-showcase/src/main/java/org/richfaces/demo/dragdrop/Framework.java 2010-12-15 23:05:47 UTC (rev 20598)
@@ -0,0 +1,64 @@
+package org.richfaces.demo.dragdrop;
+
+import java.io.Serializable;
+
+public class Framework implements Serializable {
+
+ private static final long serialVersionUID = -2316100725668694225L;
+
+ public enum Family {
+ php, cf, dotNet
+ }
+
+ private String name;
+
+ private Family family;
+
+ public Framework(String name, Family family) {
+ this.name = name;
+ this.family = family;
+ }
+
+ public Family getFamily() {
+ return family;
+ }
+
+ public String getName() {
+ return name;
+ }
+
+ @Override
+ public int hashCode() {
+ final int prime = 31;
+ int result = 1;
+ result = prime * result + ((family == null) ? 0 : family.hashCode());
+ result = prime * result + ((name == null) ? 0 : name.hashCode());
+ return result;
+ }
+
+ @Override
+ public boolean equals(Object obj) {
+ if (this == obj) {
+ return true;
+ }
+ if (obj == null) {
+ return false;
+ }
+ if (getClass() != obj.getClass()) {
+ return false;
+ }
+ Framework other = (Framework) obj;
+ if (family != other.family) {
+ return false;
+ }
+ if (name == null) {
+ if (other.name != null) {
+ return false;
+ }
+ } else if (!name.equals(other.name)) {
+ return false;
+ }
+ return true;
+ }
+
+}
Modified: trunk/examples/richfaces-showcase/src/main/resources/org/richfaces/demo/data/common/navigation.xml
===================================================================
--- trunk/examples/richfaces-showcase/src/main/resources/org/richfaces/demo/data/common/navigation.xml 2010-12-15 23:03:53 UTC (rev 20597)
+++ trunk/examples/richfaces-showcase/src/main/resources/org/richfaces/demo/data/common/navigation.xml 2010-12-15 23:05:47 UTC (rev 20598)
@@ -593,4 +593,19 @@
</demo>
</demos>
</group>
+ <group>
+ <name>Drag'n'Drop</name>
+ <demos>
+ <demo>
+ <id>dragDrop</id>
+ <name>Drag'n'Drop</name>
+ <samples>
+ <sample>
+ <id>dragDrop</id>
+ <name>Drag'n'Drop usage example</name>
+ </sample>
+ </samples>
+ </demo>
+ </demos>
+ </group>
</root>
Added: trunk/examples/richfaces-showcase/src/main/webapp/richfaces/dragDrop/dragDrop.xhtml
===================================================================
--- trunk/examples/richfaces-showcase/src/main/webapp/richfaces/dragDrop/dragDrop.xhtml (rev 0)
+++ trunk/examples/richfaces-showcase/src/main/webapp/richfaces/dragDrop/dragDrop.xhtml 2010-12-15 23:05:47 UTC (rev 20598)
@@ -0,0 +1,16 @@
+<!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>
+ <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>
+</ui:composition>
+</html>
\ No newline at end of file
Added: trunk/examples/richfaces-showcase/src/main/webapp/richfaces/dragDrop/samples/dragDrop-sample.xhtml
===================================================================
--- trunk/examples/richfaces-showcase/src/main/webapp/richfaces/dragDrop/samples/dragDrop-sample.xhtml (rev 0)
+++ trunk/examples/richfaces-showcase/src/main/webapp/richfaces/dragDrop/samples/dragDrop-sample.xhtml 2010-12-15 23:05:47 UTC (rev 20598)
@@ -0,0 +1,106 @@
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
+<ui:composition 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">
+
+ <h:outputStylesheet>
+ .panelc {
+ width:25%;
+ vertical-align:top;
+ }
+
+ .dropTargetPanel {
+ width: 90%;
+ }
+
+ .footerClass {
+ text-align: center;
+ padding-top: 5px;
+ }
+ </h:outputStylesheet>
+
+ <h:form id="form">
+
+ <h:panelGrid columnClasses="panelc" columns="4" width="100%">
+
+ <rich:panel style="width:133px">
+ <f:facet name="header">
+ <h:outputText value="Source List" />
+ </f:facet>
+ <h:dataTable id="src" columns="1" value="#{dragDropBean.source}"
+ var="fm" footerClass="footerClass">
+
+ <h:column>
+ <a4j:outputPanel
+ style="width:100px;border:1px solid gray;padding:2px"
+ layout="block">
+ <rich:dragBehavior event="mouseover"
+ type="#{fm.family}" dragValue="#{fm}" />
+ <h:outputText value="#{fm.name}"></h:outputText>
+ </a4j:outputPanel>
+ </h:column>
+ <f:facet name="footer">
+ <a4j:commandButton action="#{dragDropBean.reset}" value="Start Over"
+ render="src,phptable,cftable,dnettable" />
+ </f:facet>
+ </h:dataTable>
+ </rich:panel>
+
+ <rich:panel styleClass="dropTargetPanel">
+ <f:facet name="header">
+ <h:outputText value="PHP Frameworks" />
+ </f:facet>
+ <rich:dropBehavior event="mouseover" acceptedTypes="php" dropValue="PHP"
+ listener="#{dragDropEventBean.processDrop}" render="phptable, src" />
+
+ <h:dataTable id="phptable" columns="1"
+ value="#{dragDropBean.targetPHP}" var="fm">
+ <h:column>
+ <h:outputText value="#{fm.name}"></h:outputText>
+ </h:column>
+ </h:dataTable>
+
+
+ </rich:panel>
+
+ <rich:panel styleClass="dropTargetPanel">
+ <f:facet name="header">
+ <h:outputText value=".NET Frameworks" />
+ </f:facet>
+ <rich:dropBehavior event="mouseover" acceptedTypes="dotNet" dropValue="DNET"
+ listener="#{dragDropEventBean.processDrop}" render="dnettable, src" />
+
+ <h:dataTable id="dnettable" columns="1"
+ value="#{dragDropBean.targetDotNet}" var="fm">
+ <h:column>
+ <h:outputText value="#{fm.name}"></h:outputText>
+ </h:column>
+ </h:dataTable>
+
+
+ </rich:panel>
+
+ <rich:panel styleClass="dropTargetPanel">
+ <f:facet name="header">
+ <h:outputText value="ColdFusion Frameworks" />
+ </f:facet>
+ <rich:dropBehavior event="mouseover" acceptedTypes="cf" dropValue="CF"
+ listener="#{dragDropEventBean.processDrop}" render="cftable, src" />
+
+ <h:dataTable id="cftable" columns="1" value="#{dragDropBean.targetCF}"
+ var="fm">
+ <h:column>
+ <h:outputText value="#{fm.name}"></h:outputText>
+ </h:column>
+ </h:dataTable>
+ </rich:panel>
+ </h:panelGrid>
+
+ </h:form>
+ <a4j:outputPanel ajaxRendered="true">
+ <h:messages></h:messages>
+ </a4j:outputPanel>
+</ui:composition>
\ No newline at end of file
14 years