JBoss Rich Faces SVN: r17267 - root/core/trunk/impl/src/main/java/org/richfaces/context.
by richfaces-svn-commits@lists.jboss.org
Author: nbelaevski
Date: 2010-05-26 11:30:26 -0400 (Wed, 26 May 2010)
New Revision: 17267
Modified:
root/core/trunk/impl/src/main/java/org/richfaces/context/SkinningResourcesPhaseListener.java
Log:
https://jira.jboss.org/browse/RF-8682
Modified: root/core/trunk/impl/src/main/java/org/richfaces/context/SkinningResourcesPhaseListener.java
===================================================================
--- root/core/trunk/impl/src/main/java/org/richfaces/context/SkinningResourcesPhaseListener.java 2010-05-26 15:24:35 UTC (rev 17266)
+++ root/core/trunk/impl/src/main/java/org/richfaces/context/SkinningResourcesPhaseListener.java 2010-05-26 15:30:26 UTC (rev 17267)
@@ -21,7 +21,7 @@
*/
package org.richfaces.context;
-import java.util.Map;
+import java.util.List;
import javax.el.ELContext;
import javax.faces.application.Application;
@@ -44,7 +44,7 @@
private static final long serialVersionUID = 7430448731396547419L;
- private static final String RESOURCES_PROCESSED_MARKER = SkinningResourcesPhaseListener.class.getName();
+ private static final String SKINNING_RESOURCE_MARKER = SkinningResourcesPhaseListener.class.getName();
private static final String CLASSES_ECSS = "_classes.ecss";
@@ -57,6 +57,8 @@
private static final String BOTH_SKINNING;
private static final String CLASSES_SKINNING;
+
+ private static final String HEAD = "head";
static {
String skinningName = "skinning";
@@ -133,16 +135,21 @@
UIViewRoot viewRoot = context.getViewRoot();
assert viewRoot != null;
-
- Map<String, Object> viewMap = viewRoot.getViewMap();
-
- //TODO nick - is this check sufficient?
- if (!Boolean.TRUE.equals(viewMap.get(RESOURCES_PROCESSED_MARKER))) {
- viewMap.put(RESOURCES_PROCESSED_MARKER, Boolean.TRUE);
-
+
+ boolean skinnigResourceFound = false;
+ List<UIComponent> resources = viewRoot.getComponentResources(context, HEAD);
+ for (UIComponent resource : resources) {
+ if (resource.getAttributes().get(SKINNING_RESOURCE_MARKER) != null) {
+ skinnigResourceFound = true;
+ break;
+ }
+ }
+
+ if (!skinnigResourceFound) {
UIComponent basic = createComponentResource(context);
basic.setValueExpression("name", new SkinningResourceNameExpression());
basic.setValueExpression("rendered", new SkinningResourceRenderedExpression());
+ basic.getAttributes().put(SKINNING_RESOURCE_MARKER, Boolean.TRUE);
viewRoot.addComponentResource(context, basic);
}
14 years, 1 month
JBoss Rich Faces SVN: r17266 - root/ui-sandbox/tables/trunk/impl/src/main/java/org/richfaces/model.
by richfaces-svn-commits@lists.jboss.org
Author: abelevich
Date: 2010-05-26 11:24:35 -0400 (Wed, 26 May 2010)
New Revision: 17266
Modified:
root/ui-sandbox/tables/trunk/impl/src/main/java/org/richfaces/model/ArrangeableModel.java
Log:
remova 'overide' annotations
Modified: root/ui-sandbox/tables/trunk/impl/src/main/java/org/richfaces/model/ArrangeableModel.java
===================================================================
--- root/ui-sandbox/tables/trunk/impl/src/main/java/org/richfaces/model/ArrangeableModel.java 2010-05-26 15:23:57 UTC (rev 17265)
+++ root/ui-sandbox/tables/trunk/impl/src/main/java/org/richfaces/model/ArrangeableModel.java 2010-05-26 15:24:35 UTC (rev 17266)
@@ -67,17 +67,14 @@
this.filterVar = filterVar;
}
- @Override
public void addDataModelListener(DataModelListener listener) {
originalModel.addDataModelListener(listener);
}
- @Override
public void removeDataModelListener(DataModelListener listener) {
originalModel.removeDataModelListener(listener);
}
- @Override
public DataModelListener[] getDataModelListeners() {
return originalModel.getDataModelListeners();
}
@@ -87,7 +84,6 @@
*
* @see org.ajax4jsf.model.ExtendedDataModel#getRowKey()
*/
- @Override
public Object getRowKey() {
return originalModel.getRowKey();
}
@@ -97,7 +93,6 @@
*
* @see org.ajax4jsf.model.ExtendedDataModel#setRowKey(java.lang.Object)
*/
- @Override
public void setRowKey(Object key) {
originalModel.setRowKey(key);
}
@@ -108,7 +103,6 @@
* @see org.ajax4jsf.model.ExtendedDataModel#walk(javax.faces.context.FacesContext, org.ajax4jsf.model.DataVisitor,
* org.ajax4jsf.model.Range, java.lang.Object)
*/
- @Override
public void walk(FacesContext context, DataVisitor visitor, Range range, Object argument) {
final SequenceRange seqRange = (SequenceRange) range;
int rows = seqRange.getRows();
@@ -130,7 +124,6 @@
*
* @see javax.faces.model.DataModel#getRowCount()
*/
- @Override
public int getRowCount() {
if (rowKeys == null) {
return -1;
@@ -144,7 +137,6 @@
*
* @see javax.faces.model.DataModel#getRowData()
*/
- @Override
public Object getRowData() {
return originalModel.getRowData();
}
@@ -154,7 +146,6 @@
*
* @see javax.faces.model.DataModel#getRowIndex()
*/
- @Override
public int getRowIndex() {
return rowKeys.indexOf(originalModel.getRowKey());
}
@@ -164,7 +155,6 @@
*
* @see javax.faces.model.DataModel#getWrappedData()
*/
- @Override
public Object getWrappedData() {
return originalModel.getWrappedData();
}
@@ -174,7 +164,6 @@
*
* @see javax.faces.model.DataModel#isRowAvailable()
*/
- @Override
public boolean isRowAvailable() {
return originalModel.isRowAvailable();
}
@@ -184,7 +173,6 @@
*
* @see javax.faces.model.DataModel#setRowIndex(int)
*/
- @Override
public void setRowIndex(int rowIndex) {
Object originalKey = null;
if (rowIndex >= 0 && rowIndex < rowKeys.size()) {
@@ -198,7 +186,6 @@
*
* @see javax.faces.model.DataModel#setWrappedData(java.lang.Object)
*/
- @Override
public void setWrappedData(Object data) {
originalModel.setWrappedData(data);
}
@@ -276,7 +263,6 @@
}
}
- @SuppressWarnings("unchecked")
private boolean accept(FacesContext context, Object rowKey) {
originalModel.setRowKey(rowKey);
Object object = originalModel.getRowData();
@@ -298,7 +284,6 @@
return true;
}
- @SuppressWarnings("unchecked")
private int compare(FacesContext context, Object rowKey1, Object rowKey2) {
originalModel.setRowKey(rowKey1);
Object object1 = originalModel.getRowData();
@@ -330,7 +315,6 @@
return result;
}
- @SuppressWarnings("unchecked")
private int compareSortByValues(FacesContext context, Object value1, Object value2) {
int result = 0;
if (value1 instanceof String && value2 instanceof String) {
14 years, 1 month
JBoss Rich Faces SVN: r17265 - in root/ui-sandbox/tables/trunk/api/src/main/java/org/richfaces: event and 1 other directory.
by richfaces-svn-commits@lists.jboss.org
Author: abelevich
Date: 2010-05-26 11:23:57 -0400 (Wed, 26 May 2010)
New Revision: 17265
Modified:
root/ui-sandbox/tables/trunk/api/src/main/java/org/richfaces/component/Expandable.java
root/ui-sandbox/tables/trunk/api/src/main/java/org/richfaces/event/PagingEvent.java
root/ui-sandbox/tables/trunk/api/src/main/java/org/richfaces/event/SortingEvent.java
root/ui-sandbox/tables/trunk/api/src/main/java/org/richfaces/event/ToggleEvent.java
Log:
remove annotations
Modified: root/ui-sandbox/tables/trunk/api/src/main/java/org/richfaces/component/Expandable.java
===================================================================
--- root/ui-sandbox/tables/trunk/api/src/main/java/org/richfaces/component/Expandable.java 2010-05-26 15:14:20 UTC (rev 17264)
+++ root/ui-sandbox/tables/trunk/api/src/main/java/org/richfaces/component/Expandable.java 2010-05-26 15:23:57 UTC (rev 17265)
@@ -23,8 +23,6 @@
package org.richfaces.component;
-import javax.el.MethodExpression;
-
import org.richfaces.event.ToggleListener;
public interface Expandable {
@@ -38,9 +36,4 @@
public void removeToggleListener(ToggleListener listener);
public ToggleListener[] getToggleListeners();
-
- public void setToggleListener(MethodExpression toggleExpression);
-
- public MethodExpression getToggleListener();
-
}
Modified: root/ui-sandbox/tables/trunk/api/src/main/java/org/richfaces/event/PagingEvent.java
===================================================================
--- root/ui-sandbox/tables/trunk/api/src/main/java/org/richfaces/event/PagingEvent.java 2010-05-26 15:14:20 UTC (rev 17264)
+++ root/ui-sandbox/tables/trunk/api/src/main/java/org/richfaces/event/PagingEvent.java 2010-05-26 15:23:57 UTC (rev 17265)
@@ -34,12 +34,10 @@
super(component);
}
- @Override
public boolean isAppropriateListener(FacesListener listener) {
return listener instanceof PagingListener;
}
- @Override
public void processListener(FacesListener listener) {
((PagingListener) listener).processPaging(this);
}
Modified: root/ui-sandbox/tables/trunk/api/src/main/java/org/richfaces/event/SortingEvent.java
===================================================================
--- root/ui-sandbox/tables/trunk/api/src/main/java/org/richfaces/event/SortingEvent.java 2010-05-26 15:14:20 UTC (rev 17264)
+++ root/ui-sandbox/tables/trunk/api/src/main/java/org/richfaces/event/SortingEvent.java 2010-05-26 15:23:57 UTC (rev 17265)
@@ -42,12 +42,10 @@
this.setColumnId(columnId);
}
- @Override
public boolean isAppropriateListener(FacesListener listener) {
return (listener instanceof SortingListener);
}
- @Override
public void processListener(FacesListener listener) {
((SortingListener)listener).processSorting(this);
}
Modified: root/ui-sandbox/tables/trunk/api/src/main/java/org/richfaces/event/ToggleEvent.java
===================================================================
--- root/ui-sandbox/tables/trunk/api/src/main/java/org/richfaces/event/ToggleEvent.java 2010-05-26 15:14:20 UTC (rev 17264)
+++ root/ui-sandbox/tables/trunk/api/src/main/java/org/richfaces/event/ToggleEvent.java 2010-05-26 15:23:57 UTC (rev 17265)
@@ -45,12 +45,10 @@
return this.expanded;
}
- @Override
public boolean isAppropriateListener(FacesListener listener) {
return (listener instanceof ToggleListener);
}
- @Override
public void processListener(FacesListener listener) {
((ToggleListener) listener).processToggle(this);
}
14 years, 1 month
JBoss Rich Faces SVN: r17264 - in root/ui-sandbox/tables/trunk/ui/src/main: java/org/richfaces/renderkit and 2 other directories.
by richfaces-svn-commits@lists.jboss.org
Author: abelevich
Date: 2010-05-26 11:14:20 -0400 (Wed, 26 May 2010)
New Revision: 17264
Added:
root/ui-sandbox/tables/trunk/ui/src/main/resources/META-INF/resources/datatable.ecss
Removed:
root/ui-sandbox/tables/trunk/ui/src/main/resources/META-INF/resources/table.css
Modified:
root/ui-sandbox/tables/trunk/ui/src/main/java/org/richfaces/component/DataTableFixedChildrenIterator.java
root/ui-sandbox/tables/trunk/ui/src/main/java/org/richfaces/component/SubtableFixedChildrenIterator.java
root/ui-sandbox/tables/trunk/ui/src/main/java/org/richfaces/component/UIColumnGroup.java
root/ui-sandbox/tables/trunk/ui/src/main/java/org/richfaces/component/UIDataTable.java
root/ui-sandbox/tables/trunk/ui/src/main/java/org/richfaces/component/UIDataTableBase.java
root/ui-sandbox/tables/trunk/ui/src/main/java/org/richfaces/component/UIExtendedDataTable.java
root/ui-sandbox/tables/trunk/ui/src/main/java/org/richfaces/component/UISubTable.java
root/ui-sandbox/tables/trunk/ui/src/main/java/org/richfaces/component/UIToggleControl.java
root/ui-sandbox/tables/trunk/ui/src/main/java/org/richfaces/renderkit/AbstractRowsRenderer.java
root/ui-sandbox/tables/trunk/ui/src/main/java/org/richfaces/renderkit/AbstractTableRenderer.java
root/ui-sandbox/tables/trunk/ui/src/main/java/org/richfaces/renderkit/ColumnGroupRenderer.java
root/ui-sandbox/tables/trunk/ui/src/main/java/org/richfaces/renderkit/DataTableRenderer.java
root/ui-sandbox/tables/trunk/ui/src/main/java/org/richfaces/renderkit/ExtendedDataTableRenderer.java
root/ui-sandbox/tables/trunk/ui/src/main/java/org/richfaces/renderkit/SubTableRenderer.java
root/ui-sandbox/tables/trunk/ui/src/main/java/org/richfaces/taglib/DataTableHandler.java
root/ui-sandbox/tables/trunk/ui/src/main/java/org/richfaces/taglib/SubTableHandler.java
Log:
skinning, prepare classes for the toggle/sorting/filtering events processing, remove @override annotations, checkstyle fixes
Modified: root/ui-sandbox/tables/trunk/ui/src/main/java/org/richfaces/component/DataTableFixedChildrenIterator.java
===================================================================
--- root/ui-sandbox/tables/trunk/ui/src/main/java/org/richfaces/component/DataTableFixedChildrenIterator.java 2010-05-26 15:13:39 UTC (rev 17263)
+++ root/ui-sandbox/tables/trunk/ui/src/main/java/org/richfaces/component/DataTableFixedChildrenIterator.java 2010-05-26 15:14:20 UTC (rev 17264)
@@ -35,7 +35,6 @@
super(dataTable);
}
- @Override
protected UIComponent nextItem() {
UIComponent next = null;
Modified: root/ui-sandbox/tables/trunk/ui/src/main/java/org/richfaces/component/SubtableFixedChildrenIterator.java
===================================================================
--- root/ui-sandbox/tables/trunk/ui/src/main/java/org/richfaces/component/SubtableFixedChildrenIterator.java 2010-05-26 15:13:39 UTC (rev 17263)
+++ root/ui-sandbox/tables/trunk/ui/src/main/java/org/richfaces/component/SubtableFixedChildrenIterator.java 2010-05-26 15:14:20 UTC (rev 17264)
@@ -34,7 +34,6 @@
super(dataTable);
}
- @Override
protected UIComponent getNextFacet() {
return null;
}
Modified: root/ui-sandbox/tables/trunk/ui/src/main/java/org/richfaces/component/UIColumnGroup.java
===================================================================
--- root/ui-sandbox/tables/trunk/ui/src/main/java/org/richfaces/component/UIColumnGroup.java 2010-05-26 15:13:39 UTC (rev 17263)
+++ root/ui-sandbox/tables/trunk/ui/src/main/java/org/richfaces/component/UIColumnGroup.java 2010-05-26 15:14:20 UTC (rev 17264)
@@ -31,12 +31,6 @@
import org.ajax4jsf.model.DataVisitor;
import org.richfaces.renderkit.RowHolderBase;
-/**
- * JSF component class
- *
- */
-
-
public abstract class UIColumnGroup extends UIPanel implements Row, Column {
Modified: root/ui-sandbox/tables/trunk/ui/src/main/java/org/richfaces/component/UIDataTable.java
===================================================================
--- root/ui-sandbox/tables/trunk/ui/src/main/java/org/richfaces/component/UIDataTable.java 2010-05-26 15:13:39 UTC (rev 17263)
+++ root/ui-sandbox/tables/trunk/ui/src/main/java/org/richfaces/component/UIDataTable.java 2010-05-26 15:14:20 UTC (rev 17264)
@@ -22,68 +22,16 @@
package org.richfaces.component;
-import javax.el.MethodExpression;
import javax.faces.component.UIComponent;
-import javax.faces.context.FacesContext;
-import javax.faces.event.AbortProcessingException;
-import javax.faces.event.FacesEvent;
-import javax.faces.event.PhaseId;
-import org.richfaces.event.SortingEvent;
-
/**
* @author Anton Belevich
*
*/
-
public class UIDataTable extends UIDataTableBase {
-
- enum PropertyKeys {
- sortingExpression
- }
- public void setSortingListener(MethodExpression sortingExpression) {
- //TODO nick - use addToggleListener() & MethodExpression wrapper in tag
- getStateHelper().put(PropertyKeys.sortingExpression, sortingExpression);
- }
-
- public MethodExpression getSortingListener() {
- return (MethodExpression) getStateHelper().eval(PropertyKeys.sortingExpression);
- }
-
public UIComponent getCaption() {
return getFacet("caption");
}
-
- @Override
- public void broadcast(FacesEvent event) throws AbortProcessingException {
- super.broadcast(event);
- if(event instanceof SortingEvent) {
- SortingEvent sortingEvent = (SortingEvent)event;
-
- FacesContext context = getFacesContext();
-
- MethodExpression expression = getSortingListener();
- if (expression != null) {
- expression.invoke(context.getELContext(), new Object[] { sortingEvent });
- }
-
- }
- }
-
- @Override
- public void queueEvent(FacesEvent event) {
- if(event instanceof SortingEvent) {
- //TODO immediate ???
- event.setPhaseId(PhaseId.INVOKE_APPLICATION);
- }
- super.queueEvent(event);
-
- }
-
- public String[] getHiddenInputId() {
- return new String[]{getClientId() + ":sort"};
- }
-
}
Modified: root/ui-sandbox/tables/trunk/ui/src/main/java/org/richfaces/component/UIDataTableBase.java
===================================================================
--- root/ui-sandbox/tables/trunk/ui/src/main/java/org/richfaces/component/UIDataTableBase.java 2010-05-26 15:13:39 UTC (rev 17263)
+++ root/ui-sandbox/tables/trunk/ui/src/main/java/org/richfaces/component/UIDataTableBase.java 2010-05-26 15:14:20 UTC (rev 17264)
@@ -37,11 +37,17 @@
import javax.faces.component.visit.VisitContext;
import javax.faces.component.visit.VisitResult;
import javax.faces.context.FacesContext;
+import javax.faces.event.FacesEvent;
+import javax.faces.event.PhaseId;
import javax.faces.event.PreRenderComponentEvent;
import org.ajax4jsf.model.ExtendedDataModel;
import org.richfaces.context.ExtendedVisitContext;
import org.richfaces.context.ExtendedVisitContextMode;
+import org.richfaces.event.FilteringEvent;
+import org.richfaces.event.FilteringListener;
+import org.richfaces.event.SortingEvent;
+import org.richfaces.event.SortingListener;
import org.richfaces.log.RichfacesLogger;
import org.richfaces.model.Arrangeable;
import org.richfaces.model.ArrangeableModel;
@@ -77,12 +83,10 @@
return new DataTableColumnsIterator(this);
}
- @Override
protected Iterator<UIComponent> fixedChildren() {
return new DataTableFixedChildrenIterator(this);
}
- @Override
protected Iterator<UIComponent> dataChildren() {
return new DataTableDataIterator(this);
}
@@ -120,12 +124,10 @@
return result;
}
- @Override
public boolean getRendersChildren() {
return true;
}
- @Override
protected ExtendedDataModel<?> createExtendedDataModel() {
ExtendedDataModel<?> dataModel = super.createExtendedDataModel();
Arrangeable arrangeable = null;
@@ -232,7 +234,6 @@
renderer.encodeMetaComponent(context, this, metaComponentId);
}
- @Override
protected boolean visitFixedChildren(VisitContext visitContext, VisitCallback callback) {
if (visitContext instanceof ExtendedVisitContext) {
ExtendedVisitContext extendedVisitContext = (ExtendedVisitContext) visitContext;
@@ -266,7 +267,6 @@
return super.visitFixedChildren(visitContext, callback);
}
- @Override
protected boolean visitDataChildren(VisitContext visitContext, final VisitCallback callback, boolean visitRows) {
if (visitContext instanceof ExtendedVisitContext && visitRows) {
ExtendedVisitContext extendedVisitContext = (ExtendedVisitContext) visitContext;
@@ -287,4 +287,41 @@
return super.visitDataChildren(visitContext, callback, visitRows);
}
+
+ public void addSortingListener(SortingListener listener) {
+ addFacesListener(listener);
+ }
+
+ public void removeSortingListener(SortingListener listener) {
+ removeFacesListener(listener);
+ }
+
+
+ public void addFilteringListener(FilteringListener listener) {
+ addFacesListener(listener);
+ }
+
+ public void removeFilteringListener(FilteringListener listener) {
+ removeFacesListener(listener);
+ }
+
+ public FilteringListener[] getFilteringListeners() {
+ return (FilteringListener[])getFacesListeners(FilteringListener.class);
+ }
+
+ public SortingListener[] getSortingListeners() {
+ return (SortingListener[])getFacesListeners(SortingListener.class);
+ }
+
+ public void queueEvent(FacesEvent event) {
+ if(event instanceof SortingEvent) {
+ event.setPhaseId(PhaseId.UPDATE_MODEL_VALUES);
+ }
+
+ if(event instanceof FilteringEvent) {
+ event.setPhaseId(PhaseId.UPDATE_MODEL_VALUES);
+ }
+ super.queueEvent(event);
+ }
+
}
Modified: root/ui-sandbox/tables/trunk/ui/src/main/java/org/richfaces/component/UIExtendedDataTable.java
===================================================================
--- root/ui-sandbox/tables/trunk/ui/src/main/java/org/richfaces/component/UIExtendedDataTable.java 2010-05-26 15:13:39 UTC (rev 17263)
+++ root/ui-sandbox/tables/trunk/ui/src/main/java/org/richfaces/component/UIExtendedDataTable.java 2010-05-26 15:14:20 UTC (rev 17264)
@@ -41,7 +41,7 @@
/**
- * @author Anton Belevich
+ * @author Konstantin Mishin
*
*/
public class UIExtendedDataTable extends UIDataTableBase implements MetaComponentResolver, MetaComponentEncoder {
@@ -49,6 +49,7 @@
public static final String SCROLL = "scroll";
public static final String SUBMITTED_CLIENT_FIRST = "submittedClientFirst";
+
public static final String OLD_CLIENT_FIRST = "oldClientFirst";
private static final Logger RENDERKIT_LOG = RichfacesLogger.RENDERKIT.getLogger();
@@ -89,7 +90,6 @@
super.encodeMetaComponent(context, metaComponentId);
}
- @Override
protected boolean visitDataChildren(VisitContext visitContext, final VisitCallback callback, boolean visitRows) {
if (visitContext instanceof ExtendedVisitContext && visitRows) {
ExtendedVisitContext extendedVisitContext = (ExtendedVisitContext) visitContext;
@@ -160,7 +160,6 @@
updateState();
}
- @Override
public void setFirst(int first) {
super.setFirst(first);
setClientFirst(0);
@@ -176,8 +175,6 @@
updateState();
}
- @SuppressWarnings("deprecation")
- @Override
public void setValueBinding(String name, javax.faces.el.ValueBinding binding) {
super.setValueBinding(name, binding);
@@ -187,7 +184,6 @@
}
}
- @Override
public void setValueExpression(String name, ValueExpression binding) {
super.setValueExpression(name, binding);
Modified: root/ui-sandbox/tables/trunk/ui/src/main/java/org/richfaces/component/UISubTable.java
===================================================================
--- root/ui-sandbox/tables/trunk/ui/src/main/java/org/richfaces/component/UISubTable.java 2010-05-26 15:13:39 UTC (rev 17263)
+++ root/ui-sandbox/tables/trunk/ui/src/main/java/org/richfaces/component/UISubTable.java 2010-05-26 15:14:20 UTC (rev 17264)
@@ -23,7 +23,6 @@
package org.richfaces.component;
import javax.el.ELContext;
-import javax.el.MethodExpression;
import javax.el.ValueExpression;
import javax.faces.application.ResourceDependency;
import javax.faces.context.FacesContext;
@@ -46,34 +45,26 @@
enum PropertyKeys {
expandMode, expanded, toggleExpression
}
-
-
- @Override
+
+
public void broadcast(FacesEvent event) throws AbortProcessingException {
super.broadcast(event);
if (event instanceof ToggleEvent) {
ToggleEvent toggleEvent = (ToggleEvent) event;
boolean newValue = toggleEvent.isExpanded();
+ getStateHelper().put(PropertyKeys.expanded, newValue);
FacesContext facesContext = getFacesContext();
ELContext elContext = facesContext.getELContext();
-
- MethodExpression methodExpression = getToggleListener();
- if (methodExpression != null) {
- methodExpression.invoke(elContext, new Object[]{newValue});
- }
-
- getStateHelper().put(PropertyKeys.expanded, newValue);
-
+
ValueExpression valueExpression = getValueExpression(PropertyKeys.expanded.toString());
if (valueExpression != null && !valueExpression.isReadOnly(elContext)) {
valueExpression.setValue(elContext, newValue);
}
-
-
facesContext.getPartialViewContext().getRenderIds().add(getClientId(facesContext));
}
}
+
public boolean isExpanded() {
return (Boolean) getStateHelper().eval(PropertyKeys.expanded, true);
}
@@ -99,19 +90,10 @@
throw new IllegalArgumentException("subtable is not sortable element");
}
- public void setToggleListener(MethodExpression toggleExpression) {
- //TODO nick - use addToggleListener() & MethodExpression wrapper in tag
- getStateHelper().put(PropertyKeys.toggleExpression, toggleExpression);
- }
-
- public MethodExpression getToggleListener() {
- return (MethodExpression) getStateHelper().eval(PropertyKeys.toggleExpression);
- }
-
public void addToggleListener(ToggleListener listener) {
addFacesListener(listener);
}
-
+
public void removeToggleListener(ToggleListener listener) {
removeFacesListener(listener);
}
@@ -128,7 +110,6 @@
getStateHelper().put(PropertyKeys.expandMode, expandMode);
}
- @Override
public void setIterationState(Object stateObject) {
Object[] state = (Object[]) stateObject;
if (state != null) {
@@ -140,7 +121,6 @@
}
}
- @Override
public Object getIterationState() {
Object [] state = new Object[2];
state[0] = super.getIterationState();
Modified: root/ui-sandbox/tables/trunk/ui/src/main/java/org/richfaces/component/UIToggleControl.java
===================================================================
--- root/ui-sandbox/tables/trunk/ui/src/main/java/org/richfaces/component/UIToggleControl.java 2010-05-26 15:13:39 UTC (rev 17263)
+++ root/ui-sandbox/tables/trunk/ui/src/main/java/org/richfaces/component/UIToggleControl.java 2010-05-26 15:14:20 UTC (rev 17264)
@@ -33,8 +33,6 @@
expandControl, collapseControl, forId, switchType, event
}
-
- @Override
public String getFamily() {
return COMPONENT_FAMILY;
}
Modified: root/ui-sandbox/tables/trunk/ui/src/main/java/org/richfaces/renderkit/AbstractRowsRenderer.java
===================================================================
--- root/ui-sandbox/tables/trunk/ui/src/main/java/org/richfaces/renderkit/AbstractRowsRenderer.java 2010-05-26 15:13:39 UTC (rev 17263)
+++ root/ui-sandbox/tables/trunk/ui/src/main/java/org/richfaces/renderkit/AbstractRowsRenderer.java 2010-05-26 15:14:20 UTC (rev 17264)
@@ -63,7 +63,6 @@
rowHolder.getRow().walk(facesContext, this, rowHolder);
}
- @Override
protected void doEncodeChildren(ResponseWriter writer, FacesContext facesContext, UIComponent component) throws IOException {
RowHolderBase rowHolder = createRowHolder(facesContext, component);
encodeBeforeRows(writer, facesContext, rowHolder);
Modified: root/ui-sandbox/tables/trunk/ui/src/main/java/org/richfaces/renderkit/AbstractTableRenderer.java
===================================================================
--- root/ui-sandbox/tables/trunk/ui/src/main/java/org/richfaces/renderkit/AbstractTableRenderer.java 2010-05-26 15:13:39 UTC (rev 17263)
+++ root/ui-sandbox/tables/trunk/ui/src/main/java/org/richfaces/renderkit/AbstractTableRenderer.java 2010-05-26 15:14:20 UTC (rev 17264)
@@ -43,7 +43,6 @@
@ResourceDependency(name = "jquery.js"), @ResourceDependency(name = "richfaces.js"), @ResourceDependency(name = "richfaces-event.js")})
public abstract class AbstractTableRenderer extends AbstractTableBaseRenderer implements MetaComponentRenderer {
- @Override
protected void doDecode(FacesContext context, UIComponent component) {
decodeSortingFiltering(context, component);
}
@@ -108,14 +107,12 @@
saveRowStyles(context,id, firstClass, rowClass, cellClass);
}
- @Override
protected void doEncodeBegin(ResponseWriter writer, FacesContext context, UIComponent component) throws IOException {
UIDataTableBase dataTable = (UIDataTableBase) component;
encodeTableStart(writer, context, dataTable);
encodeTableFacets(writer, context, dataTable);
}
- @Override
protected void doEncodeChildren(ResponseWriter writer, FacesContext context, UIComponent component) throws IOException {
if(component instanceof UIDataTableBase) {
@@ -131,7 +128,7 @@
writer.writeAttribute("colspan", columns, null);
String styleClass = (String)dataTable.getAttributes().get("noDataStyleClass");
- styleClass = styleClass != null ? "rich-nodata-cell " + styleClass : "rich-nodata-cell";
+ styleClass = styleClass != null ? getNoDataClass() + " " + styleClass : getNoDataClass();
writer.writeAttribute(HTML.CLASS_ATTRIBUTE, styleClass, null);
@@ -177,8 +174,7 @@
}
public abstract void encodeClientScript(ResponseWriter writer, FacesContext context, UIDataTableBase component) throws IOException;
-
-
+
public void encodeTableBodyStart(ResponseWriter writer, FacesContext context, UIDataTableBase dataTable)
throws IOException {
writer.startElement(HTML.TBODY_ELEMENT, dataTable);
@@ -512,6 +508,8 @@
public abstract String getColumnFooterFirstSkinClass();
public abstract String getCellSkinClass();
+
+ public abstract String getNoDataClass();
protected abstract void setupTableStartElement(FacesContext context, UIComponent component);
Modified: root/ui-sandbox/tables/trunk/ui/src/main/java/org/richfaces/renderkit/ColumnGroupRenderer.java
===================================================================
--- root/ui-sandbox/tables/trunk/ui/src/main/java/org/richfaces/renderkit/ColumnGroupRenderer.java 2010-05-26 15:13:39 UTC (rev 17263)
+++ root/ui-sandbox/tables/trunk/ui/src/main/java/org/richfaces/renderkit/ColumnGroupRenderer.java 2010-05-26 15:14:20 UTC (rev 17264)
@@ -40,7 +40,6 @@
*/
public class ColumnGroupRenderer extends AbstractTableBaseRenderer {
- @Override
public void encodeRow(ResponseWriter writer, FacesContext facesContext, RowHolderBase holder) throws IOException {
RowHolder rowHolder = (RowHolder) holder;
@@ -54,7 +53,6 @@
}
}
- @Override
public RowHolderBase createRowHolder(FacesContext context, UIComponent component) {
UIComponent parent = component.getParent();
while(parent != null && !(parent instanceof UIDataTableBase)) {
Modified: root/ui-sandbox/tables/trunk/ui/src/main/java/org/richfaces/renderkit/DataTableRenderer.java
===================================================================
--- root/ui-sandbox/tables/trunk/ui/src/main/java/org/richfaces/renderkit/DataTableRenderer.java 2010-05-26 15:13:39 UTC (rev 17263)
+++ root/ui-sandbox/tables/trunk/ui/src/main/java/org/richfaces/renderkit/DataTableRenderer.java 2010-05-26 15:14:20 UTC (rev 17264)
@@ -49,7 +49,7 @@
@ResourceDependencies( { @ResourceDependency(library = "javax.faces", name = "jsf.js"),
@ResourceDependency(name = "jquery.js"), @ResourceDependency(name = "richfaces.js"),
@ResourceDependency(name= "richfaces-event.js"),@ResourceDependency(name = "richfaces-base-component.js"),
- @ResourceDependency(name = "datatable.js"), @ResourceDependency(name = "table.css") })
+ @ResourceDependency(name = "datatable.js"), @ResourceDependency(name = "datatable.ecss") })
public class DataTableRenderer extends AbstractTableRenderer {
public void encodeTableStructure(ResponseWriter writer, FacesContext context, UIDataTableBase dataTable)
@@ -78,12 +78,10 @@
}
}
- @Override
public RowHolder createRowHolder(FacesContext context, UIComponent component) {
return new RowHolder(context, (UIDataTable)component);
}
- @Override
public void encodeBeforeRows(ResponseWriter writer, FacesContext facesContext, RowHolderBase holder) throws IOException {
RowHolder rowHolder = (RowHolder)holder;
Row row = rowHolder.getRow();
@@ -94,7 +92,6 @@
}
}
- @Override
public void encodeAfterRows(ResponseWriter writer, FacesContext facesContext, RowHolderBase holder) throws IOException {
RowHolder rowHolder = (RowHolder)holder;
if(rowHolder.isTbody()) {
@@ -150,7 +147,6 @@
return false;
}
- @Override
protected void doEncodeEnd(ResponseWriter writer, FacesContext context, UIComponent component) throws IOException {
if (!shouldProceed(component)) {
return;
@@ -164,7 +160,6 @@
return (component instanceof UIDataTableBase);
}
- @Override
protected Class<? extends UIComponent> getComponentClass() {
return UIDataTable.class;
}
@@ -200,8 +195,6 @@
writer.endElement(HTML.CAPTION_ELEMENT);
}
-
- @Override
public HeaderEncodeStrategy getHeaderEncodeStrategy(UIComponent column, String tableFacetName) {
return ((column instanceof org.richfaces.component.UIColumn && "header".equals(tableFacetName)) ?
@@ -248,7 +241,6 @@
}
}
- @Override
public boolean containsThead() {
return true;
}
@@ -261,7 +253,6 @@
return false;
}
- @Override
public void encodeClientScript(ResponseWriter writer, FacesContext facesContext, UIDataTableBase dataTableBase) throws IOException {
UIDataTable dataTable = (UIDataTable)dataTableBase;
@@ -282,78 +273,76 @@
}
public String getTableSkinClass() {
- return "rich-table";
+ return "rf-dt";
}
public String getCaptionSkinClass() {
- return "rich-table-caption";
+ return "rf-dt-cap";
}
- @Override
- public String getFirstRowSkinClass() {
- return "rich-table-first-row";
- }
-
- @Override
public String getRowSkinClass() {
- return "rich-table-row";
+ return "rf-dt-r";
}
+ public String getFirstRowSkinClass() {
+ return "rf-dt-f-r";
+ }
+
public String getCellSkinClass() {
- return "rich-table-cell";
+ return "rf-dt-c";
}
public String getHeaderSkinClass() {
- return "rich-table-header";
+ return "rf-dt-h";
}
- @Override
public String getHeaderFirstSkinClass() {
- return "rich-table-header-first";
+ return "rf-dt-h-f";
}
public String getHeaderCellSkinClass() {
- return "rich-table-header-cell";
+ return "rf-dt-h-c";
}
public String getColumnHeaderSkinClass() {
- return "rich-table-subheader";
+ return "rf-dt-sh";
}
- @Override
public String getColumnHeaderFirstSkinClass() {
- return "rich-table-subheader-first";
+ return "rf-dt-sh-f";
}
public String getColumnHeaderCellSkinClass() {
- return "rich-table-subheader-cell";
+ return "rf-dt-sh-c";
}
public String getColumnFooterSkinClass() {
- return "rich-table-subfooter";
+ return "rf-dt-sf";
}
- @Override
public String getColumnFooterFirstSkinClass() {
- return "rich-table-subfooter-first";
+ return "rf-dt-sf-f";
}
public String getColumnFooterCellSkinClass() {
- return "rich-table-subfooter-cell";
+ return "rf-dt-sf-c";
}
public String getFooterSkinClass() {
- return "rich-table-footer";
+ return "rf-dt-f";
}
- @Override
public String getFooterFirstSkinClass() {
- return "rich-table-footer-first";
+ return "rf-dt-f-f";
}
public String getFooterCellSkinClass() {
- return "rich-table-footer-cell";
+ return "rf-dt-f-c";
}
+
+ public String getNoDataClass() {
+ return "rf-dt-nd-c";
+ }
protected void setupTableStartElement(FacesContext context, UIComponent component) {
put(context, component.getClientId(context), CELL_ELEMENT_KEY, HTML.TH_ELEM);
Modified: root/ui-sandbox/tables/trunk/ui/src/main/java/org/richfaces/renderkit/ExtendedDataTableRenderer.java
===================================================================
--- root/ui-sandbox/tables/trunk/ui/src/main/java/org/richfaces/renderkit/ExtendedDataTableRenderer.java 2010-05-26 15:13:39 UTC (rev 17263)
+++ root/ui-sandbox/tables/trunk/ui/src/main/java/org/richfaces/renderkit/ExtendedDataTableRenderer.java 2010-05-26 15:14:20 UTC (rev 17264)
@@ -166,12 +166,10 @@
private enum EncoderVariance {
full {
- @Override
public void encodeStartUpdate(FacesContext context, String targetId) throws IOException {
//do nothing
}
- @Override
public void encodeEndUpdate(FacesContext context) throws IOException {
//do nothing
}
@@ -184,14 +182,12 @@
((OnOffResponseWriter) writer).setSwitchedOn(writerState);
}
- @Override
public void encodeStartUpdate(FacesContext context, String targetId) throws IOException {
switchResponseWriter(context, true);
context.getPartialViewContext().getPartialResponseWriter().startUpdate(targetId);
}
- @Override
public void encodeEndUpdate(FacesContext context) throws IOException {
context.getPartialViewContext().getPartialResponseWriter().endUpdate();
@@ -571,7 +567,6 @@
}
}
- @Override
protected void doEncodeBegin(ResponseWriter writer, FacesContext context, UIComponent component)
throws IOException {
Map<String, Object> attributes = component.getAttributes();
@@ -581,12 +576,10 @@
getUtils().writeAttribute(writer, HTML.STYLE_ATTRIBUTE, attributes.get("style"));
}
- @Override
public RendererState createRowHolder(FacesContext context, UIComponent component) {
return new RendererState(context, (UIDataTableBase) component);
}
- @Override
protected void doEncodeChildren(ResponseWriter writer, FacesContext context, UIComponent component)
throws IOException {
@@ -603,7 +596,6 @@
table.restoreOrigValue(context);
}
- @Override
protected void doEncodeEnd(ResponseWriter writer, FacesContext context, UIComponent component) throws IOException {
writer.startElement(HTML.DIV_ELEM, component);
writer.writeAttribute(HTML.ID_ATTRIBUTE, component.getClientId(context) + ":d", null);
@@ -691,7 +683,6 @@
writer.endElement("style");
}
- @Override
public void encodeRow(ResponseWriter writer, FacesContext facesContext, RowHolderBase rowHolder) throws IOException {
RendererState state = (RendererState) rowHolder;
UIDataTableBase table = state.getRow();
@@ -719,8 +710,6 @@
writer.endElement(HTML.TR_ELEMENT);
}
-
- @Override
protected void doDecode(FacesContext context, UIComponent component) {
super.doDecode(context, component);
Map<String, String> map = context.getExternalContext().getRequestParameterMap();
Modified: root/ui-sandbox/tables/trunk/ui/src/main/java/org/richfaces/renderkit/SubTableRenderer.java
===================================================================
--- root/ui-sandbox/tables/trunk/ui/src/main/java/org/richfaces/renderkit/SubTableRenderer.java 2010-05-26 15:13:39 UTC (rev 17263)
+++ root/ui-sandbox/tables/trunk/ui/src/main/java/org/richfaces/renderkit/SubTableRenderer.java 2010-05-26 15:14:20 UTC (rev 17264)
@@ -49,8 +49,7 @@
private static final String STATE = ":state";
-
- @Override
+
protected void doDecode(FacesContext facesContext, UIComponent component) {
UISubTable subTable = (UISubTable)component;
@@ -74,7 +73,6 @@
}
- @Override
public void encodeTableFacets(ResponseWriter writer, FacesContext context, UIDataTableBase dataTable) throws IOException {
UISubTable subTable = (UISubTable)dataTable;
@@ -91,14 +89,12 @@
saveRowStyles(context, subTable.getClientId(context), firstClass, rowClass, cellClass);
}
- @Override
public void encodeTableStart(ResponseWriter writer, FacesContext context, UIDataTableBase dataTable) throws IOException {
setupTableStartElement(context, dataTable);
UISubTable subTable = (UISubTable)dataTable;
encodeTableBodyStart(writer, context, subTable);
}
- @Override
public void encodeTableBodyStart(ResponseWriter writer, FacesContext context, UIDataTableBase dataTable)
throws IOException {
@@ -111,12 +107,10 @@
encodeStyle(writer, context, dataTable, predefinedStyles);
}
- @Override
public RowHolderBase createRowHolder(FacesContext context, UIComponent component) {
return new RowHolder(context, (UISubTable)component);
}
- @Override
public void encodeRow(ResponseWriter writer, FacesContext context, RowHolderBase holder) throws IOException {
RowHolder rowHolder = (RowHolder)holder;
Row row = rowHolder.getRow();
@@ -129,7 +123,6 @@
encodeRowEnd(writer);
}
- @Override
protected void doEncodeEnd(ResponseWriter writer, FacesContext facesContext, UIComponent component) throws IOException {
UISubTable subTable = (UISubTable)component;
@@ -161,19 +154,16 @@
writer.endElement(HTML.INPUT_ELEM);
}
- @Override
public boolean containsThead() {
return false;
}
- @Override
public HeaderEncodeStrategy getHeaderEncodeStrategy(UIComponent column, String tableFacetName) {
// TODO: implement column header facet
return null;
}
- @Override
public void encodeClientScript(ResponseWriter writer, FacesContext facesContext, UIDataTableBase component) throws IOException {
UISubTable subTable = (UISubTable)component;
String id = subTable.getClientId(facesContext);
@@ -196,90 +186,87 @@
writer.writeText(jsFunction.toScript(), null);
writer.endElement(HTML.SCRIPT_ELEM);
}
+
+ public String getTableSkinClass() {
+ return "rf-st";
+ }
- @Override
public String getRowSkinClass() {
- return "rich-subtable-row";
+ return "rf-st-r";
}
- @Override
public String getFirstRowSkinClass() {
- return "rich-subtable-first-row";
+ return "rf-st-f-r";
}
public String getHeaderRowSkinClass() {
- return "rich-subtable-header-row";
+ return "rf-st-h-r";
}
public String getHeaderFirstRowSkinClass() {
- return "rich-subtable-header-first";
+ return "rf-st-h-f-r";
}
public String getCellSkinClass() {
- return "rich-subtable-cell";
+ return "rf-st-c";
}
public String getHeaderCellSkinClass() {
- return "rich-subtable-header-cell";
+ return "rf-st-h-c";
}
public String getColumnHeaderCellSkinClass() {
- return "rich-subtable-subheader-cell";
+ return "rf-st-sh-c";
}
public String getColumnHeaderSkinClass() {
- return "rich-subtable-subheader";
+ return "rf-st-sh";
}
+ public String getFooterSkinClass() {
+ return "rf-st-f";
+ }
+
public String getFooterCellSkinClass() {
- return "rich-subtable-footer-cell";
+ return "rf-st-f-c";
}
- public String getFooterSkinClass() {
- return "rich-subtable-footer";
- }
-
public String getFooterFirstRowSkinClass() {
- return "rich-subtable-footer-first";
+ return "rf-st-f-f";
}
public String getColumnFooterCellSkinClass() {
- return "rich-subtable-subfooter-cell";
+ return "rf-st-sf-c";
}
public String getColumnFooterSkinClass() {
- return "rich-subtable-subfooter-cell";
+ return "rf-st-sf";
}
-
- public String getTableSkinClass() {
- return "rich-subtable";
- }
- @Override
public String getColumnFooterFirstSkinClass() {
- return "rich-subtable-subfooter-first";
+ return "rf-st-sf-f";
}
- @Override
public String getColumnHeaderFirstSkinClass() {
- return "rich-subtable-subheader-first";
+ return "rf-st-sh-f";
}
- @Override
public String getFooterFirstSkinClass() {
- return "rich-subtable-footer-first";
+ return "rf-st-f-f";
}
- @Override
public String getHeaderFirstSkinClass() {
- return "rich-subtable-header-first";
+ return "rf-st-h-f";
}
- @Override
public String getHeaderSkinClass() {
- return "rich-subtable-header";
+ return "rf-st-h";
}
+
+ public String getNoDataClass() {
+ return "rf-st-nd-c";
+ }
protected void setupTableStartElement(FacesContext context, UIComponent component) {
put(context, component.getClientId(context), CELL_ELEMENT_KEY, HTML.TD_ELEM);
Modified: root/ui-sandbox/tables/trunk/ui/src/main/java/org/richfaces/taglib/DataTableHandler.java
===================================================================
--- root/ui-sandbox/tables/trunk/ui/src/main/java/org/richfaces/taglib/DataTableHandler.java 2010-05-26 15:13:39 UTC (rev 17263)
+++ root/ui-sandbox/tables/trunk/ui/src/main/java/org/richfaces/taglib/DataTableHandler.java 2010-05-26 15:14:20 UTC (rev 17264)
@@ -23,7 +23,6 @@
package org.richfaces.taglib;
-import javax.el.MethodExpression;
import javax.faces.view.facelets.ComponentConfig;
import javax.faces.view.facelets.ComponentHandler;
import javax.faces.view.facelets.FaceletContext;
@@ -41,45 +40,63 @@
*/
public class DataTableHandler extends ComponentHandler {
- private static final DataTableHandlerMetaRule METARULE = new DataTableHandlerMetaRule();
+ private static final SortingFilteringRule METARULE = new SortingFilteringRule();
public DataTableHandler(ComponentConfig config) {
super(config);
}
- @Override
protected MetaRuleset createMetaRuleset(Class type) {
MetaRuleset m = super.createMetaRuleset(type);
m.addRule(METARULE);
return m;
}
- static class DataTableHandlerMetaRule extends MetaRule {
+ static class SortingFilteringRule extends MetaRule {
- @Override
public Metadata applyRule(String name, TagAttribute attribute, MetadataTarget meta) {
- if (meta.isTargetInstanceOf(UIDataTable.class) && "sortingListener".equals(name)) {
- return new DataTableMapper(attribute);
+ if(meta.isTargetInstanceOf(UIDataTable.class)) {
+
+ if("sortingListener".equals(name)) {
+ return new SortingListenerMapper(attribute);
+ }
+
+ if("filteringListener".equals(name)) {
+ return new FilteringListenerMapper(attribute);
+ }
}
+
return null;
}
-
}
- static class DataTableMapper extends Metadata {
+ static final class SortingListenerMapper extends Metadata {
private static final Class[] SIGNATURE = new Class[] { org.richfaces.event.SortingEvent.class };
private final TagAttribute attribute;
- public DataTableMapper(TagAttribute attribute) {
+ public SortingListenerMapper(TagAttribute attribute) {
this.attribute = attribute;
}
- @Override
public void applyMetadata(FaceletContext ctx, Object instance) {
- MethodExpression methodExpression = attribute.getMethodExpression(ctx, null, SIGNATURE);
- ((UIDataTable) instance).setSortingListener(methodExpression);
+ ((UIDataTable) instance).addSortingListener(new MethodExpressionSortingListener(this.attribute.getMethodExpression(ctx, null, SIGNATURE)));
}
}
+
+ static final class FilteringListenerMapper extends Metadata {
+
+ private static final Class[] SIGNATURE = new Class[] { org.richfaces.event.FilteringEvent.class };
+
+ private final TagAttribute attribute;
+
+ public FilteringListenerMapper(TagAttribute attribute) {
+ this.attribute = attribute;
+ }
+
+ public void applyMetadata(FaceletContext ctx, Object instance) {
+ ((UIDataTable) instance).addFilteringListener(new MethodExpressionFilteringListener(this.attribute.getMethodExpression(ctx, null, SIGNATURE)));
+ }
+ }
}
Modified: root/ui-sandbox/tables/trunk/ui/src/main/java/org/richfaces/taglib/SubTableHandler.java
===================================================================
--- root/ui-sandbox/tables/trunk/ui/src/main/java/org/richfaces/taglib/SubTableHandler.java 2010-05-26 15:13:39 UTC (rev 17263)
+++ root/ui-sandbox/tables/trunk/ui/src/main/java/org/richfaces/taglib/SubTableHandler.java 2010-05-26 15:14:20 UTC (rev 17264)
@@ -23,7 +23,6 @@
package org.richfaces.taglib;
-import javax.el.MethodExpression;
import javax.faces.view.facelets.ComponentConfig;
import javax.faces.view.facelets.ComponentHandler;
import javax.faces.view.facelets.FaceletContext;
@@ -43,11 +42,11 @@
private static final SubTableHandlerMetaRule METARULE = new SubTableHandlerMetaRule();
+
public SubTableHandler(ComponentConfig config) {
super(config);
}
- @Override
protected MetaRuleset createMetaRuleset(Class type) {
MetaRuleset m = super.createMetaRuleset(type);
m.addRule(METARULE);
@@ -56,7 +55,6 @@
static class SubTableHandlerMetaRule extends MetaRule {
- @Override
public Metadata applyRule(String name, TagAttribute attribute, MetadataTarget meta) {
if (meta.isTargetInstanceOf(UISubTable.class) && "toggleListener".equals(name)) {
return new SubTableMapper(attribute);
@@ -76,10 +74,8 @@
this.attribute = attribute;
}
- @Override
public void applyMetadata(FaceletContext ctx, Object instance) {
- MethodExpression methodExpression = attribute.getMethodExpression(ctx, null, SIGNATURE);
- ((UISubTable) instance).setToggleListener(methodExpression);
+ ((UISubTable) instance).addToggleListener((new MethodExpressionToggleListener(this.attribute.getMethodExpression(ctx, null, SIGNATURE))));
}
}
}
Added: root/ui-sandbox/tables/trunk/ui/src/main/resources/META-INF/resources/datatable.ecss
===================================================================
--- root/ui-sandbox/tables/trunk/ui/src/main/resources/META-INF/resources/datatable.ecss (rev 0)
+++ root/ui-sandbox/tables/trunk/ui/src/main/resources/META-INF/resources/datatable.ecss 2010-05-26 15:14:20 UTC (rev 17264)
@@ -0,0 +1,227 @@
+.rf-dt{
+ background-color:'#{richSkin.tableBackgroundColor}';
+ border-collapse:collapse;
+ border-left-width:'#{richSkin.tableBorderWidth}';
+ border-left-style:solid;
+ border-left-color:'#{richSkin.tableBorderColor}';
+ border-top-width:'#{richSkin.tableBorderWidth}';
+ border-top-style:solid;
+ border-top-color:'#{richSkin.tableBorderColor}';
+ empty-cells:show;
+}
+
+.rf-dt-cap{
+}
+
+.rf-dt-r{
+}
+
+.rf-dt-f-r{
+}
+
+.rf-dt-c{
+ border-bottom-width:'#{richSkin.tableBorderWidth}';
+ border-bottom-style:solid;
+ border-bottom-color:'#{richSkin.tableBorderColor}';
+ border-right-width:'#{richSkin.tableBorderWidth}';
+ border-right-style:solid;
+ border-right-color:'#{richSkin.tableBorderColor}';
+ color:'#{richSkin.generalTextColor}';
+ font-family:'#{richSkin.generalFamilyFont}';
+ font-size:'#{richSkin.generalSizeFont}';
+ padding:4px;
+}
+
+.rf-dt-nd-c{
+ border-bottom-width:'#{richSkin.tableBorderWidth}';
+ border-bottom-style:solid;
+ border-bottom-color:'#{richSkin.tableBorderColor}';
+ border-right-width:'#{richSkin.tableBorderWidth}';
+ border-right-style:solid;
+ border-right-color:'#{richSkin.tableBorderColor}';
+ color:'#{richSkin.generalTextColor}';
+ font-family:'#{richSkin.generalFamilyFont}';
+ font-size:'#{richSkin.generalSizeFont}';
+ padding:4px;
+}
+
+.rf-dt-h{
+}
+
+.rf-dt-h-f{
+}
+
+.rf-dt-h-c{
+ border-bottom-width:'#{richSkin.tableBorderWidth}';
+ border-bottom-style:solid;
+ border-bottom-color:'#{richSkin.tableBorderColor}';
+ border-right-width:'#{richSkin.tableBorderWidth}';
+ border-right-style:solid;
+ border-right-color:'#{richSkin.tableBorderColor}';
+ background-color : '#{richSkin.tableHeaderBackgroundColor}';
+ color:'#{richSkin.generalTextColor}';
+ font-family:'#{richSkin.generalFamilyFont}';
+ font-size:'#{richSkin.generalSizeFont}';
+ font-weight:bold;
+ padding:4px;
+ text-align:center;
+}
+
+.rf-dt-sh {
+}
+
+.rf-dt-sh-f {
+}
+
+.rf-dt-sh-c{
+ border-bottom-width:'#{richSkin.tableBorderWidth}';
+ border-bottom-style:solid;
+ border-bottom-color:'#{richSkin.tableBorderColor}';
+ border-right-width:'#{richSkin.tableBorderWidth}';
+ border-right-style:solid;
+ border-right-color:'#{richSkin.tableBorderColor}';
+ background-color:'#{richSkin.tableSubHeaderBackgroundColor}';
+ color:'#{richSkin.generalTextColor}';
+ font-family:'#{richSkin.generalFamilyFont}';
+ font-size:'#{richSkin.generalSizeFont}';
+ padding:4px;
+}
+
+.rf-dt-sf{
+}
+
+.rf-dt-sf-f{
+}
+
+.rf-dt-sf-c{
+ border-bottom-width:'#{richSkin.tableBorderWidth}';
+ border-bottom-style:solid;
+ border-bottom-color:'#{richSkin.tableBorderColor}';
+ border-right-width:'#{richSkin.tableBorderWidth}';
+ border-right-style:solid;
+ border-right-color:'#{richSkin.tableBorderColor}';
+ background-color:'#{richSkin.tableSubfooterBackgroundColor}';
+ color:'#{richSkin.generalTextColor}';
+ font-family:'#{richSkin.generalFamilyFont}';
+ font-size:'#{richSkin.generalSizeFont}';
+ padding:4px;
+}
+
+.rf-dt-th{
+ border-bottom-width:'#{richSkin.tableBorderWidth}';
+ border-bottom-style:solid;
+ border-bottom-color:'#{richSkin.tableBorderColor}';
+}
+
+.rf-dt-f {
+}
+
+.rf-dt-f-f{
+}
+
+.rf-dt-f-c{
+ border-bottom-width:'#{richSkin.tableBorderWidth}';
+ border-bottom-style:solid;
+ border-bottom-color:'#{richSkin.tableBorderColor}';
+ border-right-width:'#{richSkin.tableBorderWidth}';
+ border-right-style:solid;
+ border-right-color:'#{richSkin.tableBorderColor}';
+ color:'#{richSkin.generalTextColor}';
+ background-color:'#{richSkin.tableSubfooterBackgroundColor}';
+ font-family:'#{richSkin.generalFamilyFont}';
+ font-size:'#{richSkin.generalSizeFont}';
+ font-weight:bold;
+ padding:4px;
+ text-align:left;
+}
+
+.rf-st{
+}
+
+.rf-st-r{
+}
+
+.rf-st-f-r{
+}
+
+.rf-st-h-r{
+}
+
+.rf-st-h-f-r{
+}
+
+.rf-st-c{
+ border-bottom-width:'#{richSkin.tableBorderWidth}';
+ border-bottom-style:solid;
+ border-bottom-color:'#{richSkin.tableBorderColor}';
+ border-right-width:'#{richSkin.tableBorderWidth}';
+ border-right-style:solid;
+ border-right-color:'#{richSkin.tableBorderColor}';
+ color:'#{richSkin.generalTextColor}';
+ background-color:'#{richSkin.tableBackgroundColor}';
+ font-family:'#{richSkin.generalFamilyFont}';
+ font-size:'#{richSkin.generalSizeFont}';
+ padding:4px;
+}
+
+.rf-st-h-c{
+ border-bottom-width:'#{richSkin.tableBorderWidth}';
+ border-bottom-style:solid;
+ border-bottom-color:'#{richSkin.tableBorderColor}';
+ border-right-width:'#{richSkin.tableBorderWidth}';
+ border-right-style:solid;
+ border-right-color:'#{richSkin.tableBorderColor}';
+ color:'#{richSkin.generalTextColor}';
+ background-color:'#{richSkin.tableSubHeaderBackgroundColor}';
+ font-family:'#{richSkin.generalFamilyFont}';
+ font-size:'#{richSkin.generalSizeFont}';
+ font-weight:bold;
+ padding:4px;
+ text-align:left;
+}
+
+.rf-st-sh-c{
+}
+
+.rf-st-sh{
+}
+
+.rf-st-f {
+}
+
+.rf-st-f-c{
+ border-bottom-width:'#{richSkin.tableBorderWidth}';
+ border-bottom-style:solid;
+ border-bottom-color:'#{richSkin.tableBorderColor}';
+ border-right-width:'#{richSkin.tableBorderWidth}';
+ border-right-style:solid;
+ border-right-color:'#{richSkin.tableBorderColor}';
+ background-color:'#{richSkin.tableSubfooterBackgroundColor}';
+ color:'#{richSkin.generalTextColor}';
+ font-family:'#{richSkin.generalFamilyFont}';
+ font-size:'#{richSkin.generalSizeFont}';
+ font-weight:bold;
+ padding:4px;
+ text-align:left;
+}
+
+.rf-st-sf-c{
+}
+
+.rf-st-sf{
+}
+
+.rf-st-sf-f{
+}
+
+.rf-st-sh-f{
+}
+
+.rf-st-f-f{
+}
+
+.rf-st-h-f{
+}
+
+.rf-st-h{
+}
Deleted: root/ui-sandbox/tables/trunk/ui/src/main/resources/META-INF/resources/table.css
===================================================================
--- root/ui-sandbox/tables/trunk/ui/src/main/resources/META-INF/resources/table.css 2010-05-26 15:13:39 UTC (rev 17263)
+++ root/ui-sandbox/tables/trunk/ui/src/main/resources/META-INF/resources/table.css 2010-05-26 15:14:20 UTC (rev 17264)
@@ -1,378 +0,0 @@
-.rich-table{
- background-color:#FFFFFF;
- border-collapse:collapse;
- border-left:1px solid #C0C0C0;
- border-top:1px solid #C0C0C0;
- empty-cells:show;
-}
-
-.rich-table-row{
-}
-
-.rich-table-first-row{
-}
-
-.rich-table-cell{
- border-bottom:1px solid #C0C0C0;
- border-right:1px solid #C0C0C0;
- color:#000000;
- font-family:Arial,Verdana,sans-serif;
- font-size:11px;
- padding:4px;
-}
-
-.rich-nodata-cell{
- border-bottom:1px solid #C0C0C0;
- border-right:1px solid #C0C0C0;
- color:#000000;
- font-family:Arial,Verdana,sans-serif;
- font-size:11px;
- padding:4px;
-}
-
-.rich-subtable-row{
-}
-
-.rich-subtable-first-row{
-}
-
-.rich-subtable-cell{
- border-bottom:1px solid #C0C0C0;
- border-right:1px solid #C0C0C0;
- color:#000000;
- background-color: #F0F0F0;
- font-family:Arial,Verdana,sans-serif;
- font-size:11px;
- padding:4px;
-}
-
-.rich-table-header{
-}
-
-.rich-table-header-first {
-}
-
-.rich-table-header-cell{
- border-bottom:1px solid #C0C0C0;
- border-right:1px solid #C0C0C0;
- color:#000000;
- font-family:Arial,Verdana,sans-serif;
- font-size:11px;
- font-weight:bold;
- padding:4px;
- text-align:center;
-}
-
-.rich-table-subheader{
-}
-
-.rich-table-subheader-first {
-}
-
-.rich-table-subheader-cell{
- border-bottom:1px solid #C0C0C0;
- border-right:1px solid #C0C0C0;
- color:#00000;
- font-family:Arial,Verdana,sans-serif;
- font-size:11px;
- padding:4px;
-}
-
-.rich-table-subfooter {
-}
-
-.rich-table-subfooter-first {
-}
-
-.rich-table-subfooter-cell{
- border-bottom:1px solid #C0C0C0;
- border-right:1px solid #C0C0C0;
- color:#00000;
- font-family:Arial,Verdana,sans-serif;
- font-size:11px;
- padding:4px;
-}
-
-.rich-table-thead{
- border-bottom:1px solid #C0C0C0;
-}
-
-.rich-table-footer{
-}
-
-.rich-table-footer-first{
-}
-
-.rich-table-footer-cell{
- border-bottom:1px solid #C0C0C0;
- border-right:1px solid #C0C0C0;
- color:#000000;
- font-family:Arial,Verdana,sans-serif;
- font-size:11px;
- font-weight:bold;
- padding:4px;
- text-align:left;
-}
-
-/*--------------------------------------------*/
-.rich-subtable-footer {
- background-color: #7878B4;
-}
-
-.rich-subtable-footer-cell{
- border-bottom:1px solid #C0C0C0;
- border-right:1px solid #C0C0C0;
- color:#000000;
- font-family:Arial,Verdana,sans-serif;
- font-size:11px;
- font-weight:bold;
- padding:4px;
- text-align:left;
-}
-
-.rich-subtable-header-row {
- background-color: grey;
-}
-
-.rich-subtable-header-cell {
- border-bottom:1px solid #C0C0C0;
- border-right:1px solid #C0C0C0;
- color:#000000;
- font-family:Arial,Verdana,sans-serif;
- font-size:11px;
- font-weight:bold;
- padding:4px;
- text-align:left;
-}
-
-
-<?xml version="1.0" encoding="UTF-8"?>
-<f:template xmlns:f='http:/jsf.exadel.com/template'
- xmlns:u='http:/jsf.exadel.com/template/util'
- xmlns="http://www.w3.org/1999/xhtml" >
-<u:selector name=".rich-table" >
- <u:style name="border-top" value="solid"> <!--tableBorderColor-->
- <f:verbatim skin="tableBorderWidth" />
- <f:verbatim skin="tableBorderColor" />
- </u:style>
- <u:style name="border-left" value="solid"> <!--tableBorderColor-->
- <f:verbatim skin="tableBorderWidth" />
- <f:verbatim skin="tableBorderColor" />
- </u:style>
- <u:style name="background-color" skin="tableBackgroundColor" /> <!--tableBackgroundColor-->
- <!-- <u:style name="border-collapse" value="inherit" /> fix RF-535 -->
- <u:style name="empty-cells" value="show" />
- <u:style name="border-collapse" value="collapse" />
-</u:selector>
-
-<u:selector name=".rich-table-cell" >
- <u:style name="border-right" value="solid"> <!--tableBorderColor-->
- <f:verbatim skin="tableBorderWidth" />
- <f:verbatim skin="tableBorderColor" />
- </u:style>
- <u:style name="border-bottom" value="solid"> <!--tableBorderColor-->
- <f:verbatim skin="tableBorderWidth" />
- <f:verbatim skin="tableBorderColor" />
- </u:style>
- <u:style name="padding" value="4px 4px 4px 4px"/>
- <u:style name="font-size" skin="generalSizeFont"/> <!--generalSizeFont-->
- <u:style name="color" skin="generalTextColor"/> <!--generalTextColor-->
- <u:style name="font-family" skin="generalFamilyFont"/> <!--generalFamilyFont-->
-</u:selector>
-
-<u:selector name=".rich-subtable-cell" >
- <u:style name="border-right" value="solid"> <!--tableBorderColor-->
- <f:verbatim skin="tableBorderWidth" />
- <f:verbatim skin="tableBorderColor" />
- </u:style>
- <u:style name="border-bottom" value="solid"> <!--tableBorderColor-->
- <f:verbatim skin="tableBorderWidth" />
- <f:verbatim skin="tableBorderColor" />
- </u:style>
- <u:style name="padding" value="4px 4px 4px 4px"/>
- <u:style name="font-size" skin="generalSizeFont"/> <!--generalSizeFont-->
- <u:style name="color" skin="generalTextColor"/> <!--generalTextColor-->
- <u:style name="font-family" skin="generalFamilyFont"/> <!--generalFamilyFont-->
-</u:selector>
-
-<u:selector name=".rich-table-header" >
- <u:style name="background-color" skin="headerBackgroundColor"/> <!--headerBackgroundColor-->
- <u:style name="background-image" > <!--from headerGradientColor to headerBackgroundColor-->
- <f:resource f:key="org.richfaces.renderkit.html.GradientA"/>
- </u:style>
- <u:style name="background-position" value="top left"/>
- <u:style name="background-repeat" value="repeat-x"/>
-</u:selector>
-
-<u:selector name=".rich-table-header-continue" >
- <u:style name="background-color" skin="headerBackgroundColor"/> <!--headerBackgroundColor-->
-</u:selector>
-
-<u:selector name=".rich-table-headercell" >
- <u:style name="border-right" value="solid"> <!--tableBorderColor-->
- <f:verbatim skin="tableBorderWidth" />
- <f:verbatim skin="tableBorderColor" />
- </u:style>
- <u:style name="border-bottom" value="solid"> <!--tableBorderColor-->
- <f:verbatim skin="tableBorderWidth" />
- <f:verbatim skin="tableBorderColor" />
- </u:style>
- <u:style name="padding" value="4px 4px 4px 4px"/>
- <u:style name="color" skin="headerTextColor"/> <!--headerTextColor-->
- <u:style name="text-align" value="center"/>
- <u:style name="font-weight" skin="headerWeightFont"/>
- <u:style name="font-size" skin="generalSizeFont"/> <!--generalSizeFont-->
- <u:style name="font-family" skin="generalFamilyFont"/> <!--generalFamilyFont-->
-</u:selector>
-
-<u:selector name=".rich-table-subheader" >
- <u:style name="background-color" skin="additionalBackgroundColor"/> <!--additionalBackgroundColor-->
-</u:selector>
-
-<u:selector name=".rich-table-thead" >
- <u:style name="border-bottom" value="solid"> <!--tableBorderColor-->
- <f:verbatim skin="tableBorderWidth" />
- <f:verbatim skin="tableBorderColor" />
- </u:style>
-</u:selector>
-
-<u:selector name=".rich-table-subheadercell" >
- <u:style name="border-right" value="solid"> <!--tableBorderColor-->
- <f:verbatim skin="tableBorderWidth" />
- <f:verbatim skin="tableBorderColor" />
- </u:style>
- <u:style name="padding" value="4px 4px 4px 4px"/>
- <u:style name="text-align" value="center"/>
- <u:style name="font-size" skin="generalSizeFont"/> <!--generalSizeFont-->
- <u:style name="color" skin="generalTextColor"/> <!--generalTextColor-->
- <u:style name="font-family" skin="generalFamilyFont"/> <!--generalFamilyFont-->
- <u:style name="white-space" value="nowrap"/>
-</u:selector>
-
-<f:verbatim>
- .rich-table-sortable-header {
- background-position: right center;
- background-repeat: no-repeat;
- white-space : nowrap;
- }
-
- .rich-table-cursor-pointer {
- cursor: pointer;
- }
-
- .rich-inplace-edit, .rich-inplace-view {
- cursor: default;
- }
-
- .rich-sort-icon {
- vertical-align: middle;
- }
-</f:verbatim>
-
-<u:selector name=".rich-table-footer" >
- <u:style name="background-color" skin="tableFooterBackgroundColor"/> <!--tableFooterBackgroundColor-->
-</u:selector>
-
-
-<u:selector name=".rich-table-footer-continue" >
- <u:style name="background-color" skin="tableFooterBackgroundColor"/> <!--tableFooterBackgroundColor-->
-</u:selector>
-
-<u:selector name=".rich-table-footercell" >
- <u:style name="border-right" value="solid"> <!--tableBorderColor-->
- <f:verbatim skin="tableBorderWidth" />
- <f:verbatim skin="tableBorderColor" />
- </u:style>
- <u:style name="border-bottom" value="solid"> <!--tableBorderColor-->
- <f:verbatim skin="tableBorderWidth" />
- <f:verbatim skin="tableBorderColor" />
- </u:style>
- <u:style name="padding" value="4px 4px 4px 4px"/>
- <u:style name="color" skin="generalTextColor"/> <!--headerTextColor-->
- <u:style name="text-align" value="left"/>
- <u:style name="font-weight" skin="headerWeightFont"/>
- <u:style name="font-size" skin="generalSizeFont"/> <!--generalSizeFont-->
- <u:style name="font-family" skin="generalFamilyFont"/> <!--generalFamilyFont-->
-</u:selector>
-
-<u:selector name=".rich-table-subfooter" >
- <u:style name="background-color" skin="tableSubfooterBackgroundColor"/> <!--tableSubfooterBackgroundColor-->
-</u:selector>
-
-<u:selector name=".rich-table-subfootercell" >
- <u:style name="border-right" value="solid"> <!--tableBorderColor-->
- <f:verbatim skin="tableBorderWidth" />
- <f:verbatim skin="tableBorderColor" />
- </u:style>
- <u:style name="border-bottom" value="solid"> <!--tableBorderColor-->
- <f:verbatim skin="tableBorderWidth" />
- <f:verbatim skin="tableBorderColor" />
- </u:style>
- <u:style name="padding" value="4px 4px 4px 4px"/>
- <u:style name="text-align" value="left"/>
- <u:style name="font-size" skin="generalSizeFont"/> <!--generalSizeFont-->
- <u:style name="color" skin="generalTextColor"/> <!--generalTextColor-->
- <u:style name="font-family" skin="generalFamilyFont"/> <!--generalFamilyFont-->
-</u:selector>
-
-<u:selector name=".rich-table-firstrow .rich-table-cell" >
-<!-- <u:style name="border-top" value="2px solid">
- <f:verbatim skin="tableBorderColor" />
- </u:style> -->
-</u:selector>
-
-<u:selector name=".rich-subtable-firstrow .rich-subtable-cell" >
- <!-- <u:style name="border" value="2px solid #c0c0c0"/>-->
-</u:selector>
-
-<u:selector name=".rich-subtable-header" >
- <u:style name="background-color" skin="additionalBackgroundColor"/> <!--additionalBackgroundColor-->
-</u:selector>
-
-<u:selector name=".rich-subtable-headercell" >
- <u:style name="border-right" value="solid"> <!--tableBorderColor-->
- <f:verbatim skin="tableBorderWidth" />
- <f:verbatim skin="tableBorderColor" />
- </u:style>
- <u:style name="border-bottom" value="solid"> <!--tableBorderColor-->
- <f:verbatim skin="tableBorderWidth" />
- <f:verbatim skin="tableBorderColor" />
- </u:style>
- <u:style name="padding" value="4px 4px 4px 4px"/>
- <u:style name="text-align" value="center"/>
- <u:style name="font-size" skin="generalSizeFont"/> <!--generalSizeFont-->
- <u:style name="color" skin="generalTextColor"/> <!--generalTextColor-->
- <u:style name="font-family" skin="generalFamilyFont"/> <!--generalFamilyFont-->
-</u:selector>
-
-
-<u:selector name=".rich-subtable-footer" >
- <u:style name="background-color" skin="tableSubfooterBackgroundColor"/> <!--tableSubfooterBackgroundColor-->
-</u:selector>
-
-<u:selector name=".rich-subtable-footercell" >
- <u:style name="border-right" value="solid"> <!--tableBorderColor-->
- <f:verbatim skin="tableBorderWidth" />
- <f:verbatim skin="tableBorderColor" />
- </u:style>
- <u:style name="border-bottom" value="solid"> <!--tableBorderColor-->
- <f:verbatim skin="tableBorderWidth" />
- <f:verbatim skin="tableBorderColor" />
- </u:style>
- <u:style name="padding" value="4px 4px 4px 4px"/>
- <u:style name="text-align" value="left"/>
-</u:selector>
-
-<u:selector name=".rich-sort-asc">
- <u:style name="background-image">
- <f:resource f:key="org.richfaces.renderkit.html.iconimages.DataTableIconSortAsc"/>
- </u:style>
-</u:selector>
-<u:selector name=".rich-sort-desc">
- <u:style name="background-image">
- <f:resource f:key="org.richfaces.renderkit.html.iconimages.DataTableIconSortDesc"/>
- </u:style>
-</u:selector>
-
-
-</f:template>
14 years, 1 month
JBoss Rich Faces SVN: r17263 - root.
by richfaces-svn-commits@lists.jboss.org
Author: nbelaevski
Date: 2010-05-26 11:13:39 -0400 (Wed, 26 May 2010)
New Revision: 17263
Modified:
root/pom.xml
Log:
richfaces-parent version restored back to 4
Modified: root/pom.xml
===================================================================
--- root/pom.xml 2010-05-26 15:11:53 UTC (rev 17262)
+++ root/pom.xml 2010-05-26 15:13:39 UTC (rev 17263)
@@ -30,7 +30,7 @@
<modules>
<!-- These trunk settings, and this pom.xml will be removed -->
<!-- Added bom, parent, for temp integration -->
- <module>build/parent/tags/richfaces-parent-1</module>
+ <module>build/parent/tags/richfaces-parent-4</module>
<module>build/bom/trunk</module>
<!--<module>build/resources/trunk/checkstyle</module>-->
<module>commons/${commons.svn.dir}</module>
14 years, 1 month
JBoss Rich Faces SVN: r17262 - in root/examples/richfaces-showcase/trunk/src/main: java/org/richfaces/demo/tables and 12 other directories.
by richfaces-svn-commits@lists.jboss.org
Author: ilya_shaikovsky
Date: 2010-05-26 11:11:53 -0400 (Wed, 26 May 2010)
New Revision: 17262
Added:
root/examples/richfaces-showcase/trunk/src/main/java/org/richfaces/demo/tables/CarsFilteringBean.java
root/examples/richfaces-showcase/trunk/src/main/java/org/richfaces/demo/tables/ReportBean.java
root/examples/richfaces-showcase/trunk/src/main/java/org/richfaces/demo/tables/model/
root/examples/richfaces-showcase/trunk/src/main/java/org/richfaces/demo/tables/model/capitals/
root/examples/richfaces-showcase/trunk/src/main/java/org/richfaces/demo/tables/model/capitals/Capital.java
root/examples/richfaces-showcase/trunk/src/main/java/org/richfaces/demo/tables/model/capitals/CapitalsParser.java
root/examples/richfaces-showcase/trunk/src/main/java/org/richfaces/demo/tables/model/cars/
root/examples/richfaces-showcase/trunk/src/main/java/org/richfaces/demo/tables/model/cars/InventoryItem.java
root/examples/richfaces-showcase/trunk/src/main/java/org/richfaces/demo/tables/model/cars/InventoryVendorItem.java
root/examples/richfaces-showcase/trunk/src/main/java/org/richfaces/demo/tables/model/cars/InventoryVendorList.java
root/examples/richfaces-showcase/trunk/src/main/java/org/richfaces/demo/tables/model/expenses/
root/examples/richfaces-showcase/trunk/src/main/java/org/richfaces/demo/tables/model/expenses/ExpenseReport.java
root/examples/richfaces-showcase/trunk/src/main/java/org/richfaces/demo/tables/model/expenses/ExpenseReportRecord.java
root/examples/richfaces-showcase/trunk/src/main/java/org/richfaces/demo/tables/model/expenses/ExpenseReportRecordItem.java
root/examples/richfaces-showcase/trunk/src/main/java/org/richfaces/demo/tables/report/
root/examples/richfaces-showcase/trunk/src/main/resources/META-INF/
root/examples/richfaces-showcase/trunk/src/main/resources/META-INF/a4j.taglib.xml
root/examples/richfaces-showcase/trunk/src/main/webapp/richfaces/tableToggleControl/
root/examples/richfaces-showcase/trunk/src/main/webapp/richfaces/tableToggleControl/tableToggleControl.xhtml
Removed:
root/examples/richfaces-showcase/trunk/src/main/java/org/richfaces/demo/tables/data/capitals/
root/examples/richfaces-showcase/trunk/src/main/java/org/richfaces/demo/tables/data/carstore/
root/examples/richfaces-showcase/trunk/src/main/java/org/richfaces/demo/tables/filter/
Modified:
root/examples/richfaces-showcase/trunk/src/main/java/org/richfaces/demo/common/UserBean.java
root/examples/richfaces-showcase/trunk/src/main/java/org/richfaces/demo/tables/CapitalsBean.java
root/examples/richfaces-showcase/trunk/src/main/java/org/richfaces/demo/tables/CarsBean.java
root/examples/richfaces-showcase/trunk/src/main/resources/org/richfaces/demo/data/common/navigation.xml
root/examples/richfaces-showcase/trunk/src/main/webapp/richfaces/commandLink/commandLink.xhtml
root/examples/richfaces-showcase/trunk/src/main/webapp/richfaces/dataTable/simpleTable.xhtml
root/examples/richfaces-showcase/trunk/src/main/webapp/richfaces/dataTable/tableFilteringAPI.xhtml
Log:
https://jira.jboss.org/browse/RF-8694
https://jira.jboss.org/browse/RF-8298
Modified: root/examples/richfaces-showcase/trunk/src/main/java/org/richfaces/demo/common/UserBean.java
===================================================================
--- root/examples/richfaces-showcase/trunk/src/main/java/org/richfaces/demo/common/UserBean.java 2010-05-26 14:58:45 UTC (rev 17261)
+++ root/examples/richfaces-showcase/trunk/src/main/java/org/richfaces/demo/common/UserBean.java 2010-05-26 15:11:53 UTC (rev 17262)
@@ -1,10 +1,11 @@
package org.richfaces.demo.common;
import javax.faces.bean.ManagedBean;
+import javax.faces.bean.SessionScoped;
import javax.faces.bean.ViewScoped;
@ManagedBean(name = "userBean")
-@ViewScoped
+@SessionScoped
public class UserBean {
private String name = "";
private String email = "";
Modified: root/examples/richfaces-showcase/trunk/src/main/java/org/richfaces/demo/tables/CapitalsBean.java
===================================================================
--- root/examples/richfaces-showcase/trunk/src/main/java/org/richfaces/demo/tables/CapitalsBean.java 2010-05-26 14:58:45 UTC (rev 17261)
+++ root/examples/richfaces-showcase/trunk/src/main/java/org/richfaces/demo/tables/CapitalsBean.java 2010-05-26 15:11:53 UTC (rev 17262)
@@ -6,7 +6,7 @@
import javax.faces.bean.ManagedProperty;
import javax.faces.bean.SessionScoped;
-import org.richfaces.demo.tables.data.capitals.Capital;
+import org.richfaces.demo.tables.model.capitals.Capital;
@ManagedBean
@SessionScoped
Modified: root/examples/richfaces-showcase/trunk/src/main/java/org/richfaces/demo/tables/CarsBean.java
===================================================================
--- root/examples/richfaces-showcase/trunk/src/main/java/org/richfaces/demo/tables/CarsBean.java 2010-05-26 14:58:45 UTC (rev 17261)
+++ root/examples/richfaces-showcase/trunk/src/main/java/org/richfaces/demo/tables/CarsBean.java 2010-05-26 15:11:53 UTC (rev 17262)
@@ -14,17 +14,16 @@
import javax.faces.bean.ManagedBean;
import javax.faces.bean.ManagedProperty;
-import javax.faces.bean.ViewScoped;
+import javax.faces.bean.SessionScoped;
import javax.faces.model.SelectItem;
import org.richfaces.demo.common.data.RandomHelper;
-import org.richfaces.demo.tables.data.carstore.InventoryItem;
-import org.richfaces.demo.tables.data.carstore.InventoryVendorItem;
-import org.richfaces.demo.tables.data.carstore.InventoryVendorList;
-import org.richfaces.demo.tables.filter.CarsFilteringBean;
+import org.richfaces.demo.tables.model.cars.InventoryItem;
+import org.richfaces.demo.tables.model.cars.InventoryVendorItem;
+import org.richfaces.demo.tables.model.cars.InventoryVendorList;
@ManagedBean(name = "carsBean")
-@ViewScoped
+@SessionScoped
public class CarsBean implements Serializable{
/**
*
Copied: root/examples/richfaces-showcase/trunk/src/main/java/org/richfaces/demo/tables/CarsFilteringBean.java (from rev 17257, root/examples/richfaces-showcase/trunk/src/main/java/org/richfaces/demo/tables/filter/CarsFilteringBean.java)
===================================================================
--- root/examples/richfaces-showcase/trunk/src/main/java/org/richfaces/demo/tables/CarsFilteringBean.java (rev 0)
+++ root/examples/richfaces-showcase/trunk/src/main/java/org/richfaces/demo/tables/CarsFilteringBean.java 2010-05-26 15:11:53 UTC (rev 17262)
@@ -0,0 +1,65 @@
+package org.richfaces.demo.tables;
+
+import java.io.Serializable;
+
+import javax.faces.bean.ManagedBean;
+import javax.faces.bean.SessionScoped;
+
+import org.richfaces.demo.tables.model.cars.InventoryItem;
+import org.richfaces.model.Filter;
+
+@ManagedBean
+@SessionScoped
+public class CarsFilteringBean implements Serializable {
+ /**
+ *
+ */
+ private static final long serialVersionUID = -5680001353441022183L;
+ private String vinFilter;
+ private String vendorFilter;
+ private Long mileageFilter;
+
+ public Filter<?> getMileageFilterImpl() {
+ return new Filter<InventoryItem>() {
+ public boolean accept(InventoryItem item) {
+ Long mileage = getMileageFilter();
+ if (mileage == null || mileage.compareTo(item.getMileage().longValue()) >= 0) {
+ return true;
+ }
+ return false;
+ }
+ };
+ }
+
+ public boolean acceptVendor(InventoryItem item) {
+ String vendor = getVendorFilter();
+ if (vendor == null || vendor.length() == 0 || vendor.equals(item.getVendor())) {
+ return true;
+ }
+ return false;
+ }
+
+ public Long getMileageFilter() {
+ return mileageFilter;
+ }
+
+ public void setMileageFilter(Long mileageFilter) {
+ this.mileageFilter = mileageFilter;
+ }
+
+ public String getVendorFilter() {
+ return vendorFilter;
+ }
+
+ public void setVendorFilter(String vendorFilter) {
+ this.vendorFilter = vendorFilter;
+ }
+
+ public String getVinFilter() {
+ return vinFilter;
+ }
+
+ public void setVinFilter(String vinFilter) {
+ this.vinFilter = vinFilter;
+ }
+}
Added: root/examples/richfaces-showcase/trunk/src/main/java/org/richfaces/demo/tables/ReportBean.java
===================================================================
--- root/examples/richfaces-showcase/trunk/src/main/java/org/richfaces/demo/tables/ReportBean.java (rev 0)
+++ root/examples/richfaces-showcase/trunk/src/main/java/org/richfaces/demo/tables/ReportBean.java 2010-05-26 15:11:53 UTC (rev 17262)
@@ -0,0 +1,22 @@
+package org.richfaces.demo.tables;
+
+import javax.faces.bean.ManagedBean;
+import javax.faces.bean.RequestScoped;
+
+import org.richfaces.demo.tables.model.expenses.ExpenseReport;
+
+@ManagedBean
+@RequestScoped
+public class ReportBean {
+ ExpenseReport expReport;
+
+ public ExpenseReport getExpReport() {
+ if (expReport == null)
+ expReport = new ExpenseReport();
+ return expReport;
+ }
+
+ public void setExpReport(ExpenseReport expReport) {
+ this.expReport = expReport;
+ }
+}
Copied: root/examples/richfaces-showcase/trunk/src/main/java/org/richfaces/demo/tables/model/capitals/Capital.java (from rev 17257, root/examples/richfaces-showcase/trunk/src/main/java/org/richfaces/demo/tables/data/capitals/Capital.java)
===================================================================
--- root/examples/richfaces-showcase/trunk/src/main/java/org/richfaces/demo/tables/model/capitals/Capital.java (rev 0)
+++ root/examples/richfaces-showcase/trunk/src/main/java/org/richfaces/demo/tables/model/capitals/Capital.java 2010-05-26 15:11:53 UTC (rev 17262)
@@ -0,0 +1,56 @@
+package org.richfaces.demo.tables.model.capitals;
+
+import java.io.Serializable;
+
+import javax.xml.bind.annotation.XmlElement;
+
+public class Capital implements Serializable {
+ /**
+ *
+ */
+ private static final long serialVersionUID = -1042449580199397136L;
+
+ private static final String FILE_EXT = ".gif";
+
+ private String name;
+ private String state;
+ private String timeZone;
+
+ public Capital() {
+ }
+
+ @XmlElement
+ public String getName() {
+ return name;
+ }
+
+ public void setName(String name) {
+ this.name = name;
+ }
+
+ @XmlElement
+ public String getState() {
+ return state;
+ }
+
+ public void setState(String state) {
+ this.state = state;
+ }
+
+ private String stateNameToFileName() {
+ return state.replaceAll("\\s", "").toLowerCase();
+ }
+
+ public String getStateFlag() {
+ return "/images/capitals/" + stateNameToFileName() + FILE_EXT;
+ }
+
+ @XmlElement
+ public String getTimeZone() {
+ return timeZone;
+ }
+
+ public void setTimeZone(String timeZone) {
+ this.timeZone = timeZone;
+ }
+}
Copied: root/examples/richfaces-showcase/trunk/src/main/java/org/richfaces/demo/tables/model/capitals/CapitalsParser.java (from rev 17257, root/examples/richfaces-showcase/trunk/src/main/java/org/richfaces/demo/tables/data/capitals/CapitalsParser.java)
===================================================================
--- root/examples/richfaces-showcase/trunk/src/main/java/org/richfaces/demo/tables/model/capitals/CapitalsParser.java (rev 0)
+++ root/examples/richfaces-showcase/trunk/src/main/java/org/richfaces/demo/tables/model/capitals/CapitalsParser.java 2010-05-26 15:11:53 UTC (rev 17262)
@@ -0,0 +1,53 @@
+package org.richfaces.demo.tables.model.capitals;
+
+import java.net.URL;
+import java.util.List;
+
+import javax.faces.FacesException;
+import javax.faces.bean.ApplicationScoped;
+import javax.faces.bean.ManagedBean;
+import javax.xml.bind.JAXBContext;
+import javax.xml.bind.JAXBException;
+import javax.xml.bind.annotation.XmlElement;
+import javax.xml.bind.annotation.XmlRootElement;
+
+
+@ManagedBean
+@ApplicationScoped
+public class CapitalsParser {
+
+ private List<Capital> capitalsList;
+
+ @XmlRootElement(name = "capitals")
+ private static final class CapitalsHolder {
+
+ private List<Capital> capitals;
+
+ @XmlElement(name = "capital")
+ public List<Capital> getCapitals() {
+ return capitals;
+ }
+
+ @SuppressWarnings("unused")
+ public void setCapitals(List<Capital> capitals) {
+ this.capitals = capitals;
+ }
+ }
+
+ public synchronized List<Capital> getCapitalsList() {
+ if (capitalsList == null) {
+ ClassLoader ccl = Thread.currentThread().getContextClassLoader();
+ URL resource = ccl.getResource("org/richfaces/demo/data/capitals/capitals.xml");
+ JAXBContext context;
+ try {
+ context = JAXBContext.newInstance(CapitalsHolder.class);
+ CapitalsHolder capitalsHolder = (CapitalsHolder) context.createUnmarshaller().unmarshal(resource);
+ capitalsList = capitalsHolder.getCapitals();
+ } catch (JAXBException e) {
+ throw new FacesException(e.getMessage(), e);
+ }
+ }
+
+ return capitalsList;
+ }
+}
Copied: root/examples/richfaces-showcase/trunk/src/main/java/org/richfaces/demo/tables/model/cars/InventoryItem.java (from rev 17257, root/examples/richfaces-showcase/trunk/src/main/java/org/richfaces/demo/tables/data/carstore/InventoryItem.java)
===================================================================
--- root/examples/richfaces-showcase/trunk/src/main/java/org/richfaces/demo/tables/model/cars/InventoryItem.java (rev 0)
+++ root/examples/richfaces-showcase/trunk/src/main/java/org/richfaces/demo/tables/model/cars/InventoryItem.java 2010-05-26 15:11:53 UTC (rev 17262)
@@ -0,0 +1,13 @@
+package org.richfaces.demo.tables.model.cars;
+
+public class InventoryItem extends InventoryVendorItem {
+ private String vendor;
+
+ public String getVendor() {
+ return vendor;
+ }
+
+ public void setVendor(String vendor) {
+ this.vendor = vendor;
+ }
+}
Copied: root/examples/richfaces-showcase/trunk/src/main/java/org/richfaces/demo/tables/model/cars/InventoryVendorItem.java (from rev 17257, root/examples/richfaces-showcase/trunk/src/main/java/org/richfaces/demo/tables/data/carstore/InventoryVendorItem.java)
===================================================================
--- root/examples/richfaces-showcase/trunk/src/main/java/org/richfaces/demo/tables/model/cars/InventoryVendorItem.java (rev 0)
+++ root/examples/richfaces-showcase/trunk/src/main/java/org/richfaces/demo/tables/model/cars/InventoryVendorItem.java 2010-05-26 15:11:53 UTC (rev 17262)
@@ -0,0 +1,132 @@
+package org.richfaces.demo.tables.model.cars;
+
+import java.math.BigDecimal;
+
+public class InventoryVendorItem {
+ BigDecimal activity;
+ BigDecimal changePrice;
+ BigDecimal changeSearches;
+ int daysLive;
+ BigDecimal exposure;
+ BigDecimal inquiries;
+ BigDecimal mileage;
+ BigDecimal mileageMarket;
+ String model;
+ Integer price;
+ BigDecimal priceMarket;
+ BigDecimal printed;
+ String stock;
+ String vin;
+
+ public String getModel() {
+ return model;
+ }
+
+ public void setModel(String model) {
+ this.model = model;
+ }
+
+ public String getStock() {
+ return stock;
+ }
+
+ public void setStock(String stock) {
+ this.stock = stock;
+ }
+
+ public String getVin() {
+ return vin;
+ }
+
+ public void setVin(String vin) {
+ this.vin = vin;
+ }
+
+ public BigDecimal getMileage() {
+ return mileage;
+ }
+
+ public void setMileage(BigDecimal mileage) {
+ this.mileage = mileage;
+ }
+
+ public BigDecimal getMileageMarket() {
+ return mileageMarket;
+ }
+
+ public void setMileageMarket(BigDecimal mileageMarket) {
+ this.mileageMarket = mileageMarket;
+ }
+
+ public Integer getPrice() {
+ return price;
+ }
+
+ public void setPrice(Integer price) {
+ this.price = price;
+ }
+
+ public BigDecimal getPriceMarket() {
+ return priceMarket;
+ }
+
+ public void setPriceMarket(BigDecimal priceMarket) {
+ this.priceMarket = priceMarket;
+ }
+
+ public int getDaysLive() {
+ return daysLive;
+ }
+
+ public void setDaysLive(int daysLive) {
+ this.daysLive = daysLive;
+ }
+
+ public BigDecimal getChangeSearches() {
+ return changeSearches;
+ }
+
+ public void setChangeSearches(BigDecimal changeSearches) {
+ this.changeSearches = changeSearches;
+ }
+
+ public BigDecimal getChangePrice() {
+ return changePrice;
+ }
+
+ public void setChangePrice(BigDecimal changePrice) {
+ this.changePrice = changePrice;
+ }
+
+ public BigDecimal getExposure() {
+ return exposure;
+ }
+
+ public void setExposure(BigDecimal exposure) {
+ this.exposure = exposure;
+ }
+
+ public BigDecimal getActivity() {
+ return activity;
+ }
+
+ public void setActivity(BigDecimal activity) {
+ this.activity = activity;
+ }
+
+ public BigDecimal getPrinted() {
+ return printed;
+ }
+
+ public void setPrinted(BigDecimal printed) {
+ this.printed = printed;
+ }
+
+ public BigDecimal getInquiries() {
+ return inquiries;
+ }
+
+ public void setInquiries(BigDecimal inquiries) {
+ this.inquiries = inquiries;
+ }
+}
Copied: root/examples/richfaces-showcase/trunk/src/main/java/org/richfaces/demo/tables/model/cars/InventoryVendorList.java (from rev 17257, root/examples/richfaces-showcase/trunk/src/main/java/org/richfaces/demo/tables/data/carstore/InventoryVendorList.java)
===================================================================
--- root/examples/richfaces-showcase/trunk/src/main/java/org/richfaces/demo/tables/model/cars/InventoryVendorList.java (rev 0)
+++ root/examples/richfaces-showcase/trunk/src/main/java/org/richfaces/demo/tables/model/cars/InventoryVendorList.java 2010-05-26 15:11:53 UTC (rev 17262)
@@ -0,0 +1,37 @@
+package org.richfaces.demo.tables.model.cars;
+
+import java.util.ArrayList;
+import java.util.List;
+
+public class InventoryVendorList {
+ private String vendor;
+ private List<InventoryVendorItem> vendorItems;
+
+ public InventoryVendorList() {
+ vendorItems = new ArrayList<InventoryVendorItem>();
+ }
+
+ public long getCount() {
+ if (vendorItems != null) {
+ return vendorItems.size();
+ } else {
+ return 0;
+ }
+ }
+
+ public String getVendor() {
+ return vendor;
+ }
+
+ public void setVendor(String vendor) {
+ this.vendor = vendor;
+ }
+
+ public List<InventoryVendorItem> getVendorItems() {
+ return vendorItems;
+ }
+
+ public void setVendorItems(List<InventoryVendorItem> vendorItems) {
+ this.vendorItems = vendorItems;
+ }
+}
Added: root/examples/richfaces-showcase/trunk/src/main/java/org/richfaces/demo/tables/model/expenses/ExpenseReport.java
===================================================================
--- root/examples/richfaces-showcase/trunk/src/main/java/org/richfaces/demo/tables/model/expenses/ExpenseReport.java (rev 0)
+++ root/examples/richfaces-showcase/trunk/src/main/java/org/richfaces/demo/tables/model/expenses/ExpenseReport.java 2010-05-26 15:11:53 UTC (rev 17262)
@@ -0,0 +1,77 @@
+package org.richfaces.demo.tables.model.expenses;
+
+import java.util.ArrayList;
+import java.util.Iterator;
+import java.util.List;
+
+public class ExpenseReport {
+ private List records = null;
+
+ public List getRecords() {
+ if (records == null) {
+ initRecords();
+ }
+ return records;
+ }
+
+ public void setRecords(List records) {
+ this.records = records;
+ }
+
+ public double getTotalMeals() {
+ double ret = 0.0;
+ Iterator it = getRecords().iterator();
+ while (it.hasNext()) {
+ ExpenseReportRecord record = (ExpenseReportRecord) it.next();
+ ret += record.getTotalMeals();
+ }
+ return ret;
+ }
+
+ public double getTotalHotels() {
+ double ret = 0.0;
+ Iterator it = getRecords().iterator();
+ while (it.hasNext()) {
+ ExpenseReportRecord record = (ExpenseReportRecord) it.next();
+ ret += record.getTotalHotels();
+ }
+ return ret;
+ }
+
+ public double getTotalTransport() {
+ double ret = 0.0;
+ Iterator it = getRecords().iterator();
+ while (it.hasNext()) {
+ ExpenseReportRecord record = (ExpenseReportRecord) it.next();
+ ret += record.getTotalTransport();
+ }
+ return ret;
+ }
+
+ public double getGrandTotal() {
+ return getTotalMeals() + getTotalHotels() + getTotalTransport();
+ }
+
+ public int getRecordsCount() {
+ return getRecords().size();
+ }
+
+ private void initRecords() {
+ records = new ArrayList();
+ ExpenseReportRecord rec;
+ rec = new ExpenseReportRecord();
+ rec.setCity("San Jose");
+ rec.getItems().add(new ExpenseReportRecordItem("25-Aug-97", 37.74, 112.0, 45.0, "San Jose"));
+ rec.getItems().add(new ExpenseReportRecordItem("26-Aug-97", 27.28, 112.0, 45.0, "San Jose"));
+ records.add(rec);
+ rec = new ExpenseReportRecord();
+ rec.setCity("Seattle");
+ rec.getItems().add(new ExpenseReportRecordItem("27-Aug-97", 96.25, 109.0, 36.00, "Seattle"));
+ rec.getItems().add(new ExpenseReportRecordItem("28-Aug-97", 35.0, 109.0, 36.0, "Seattle"));
+ records.add(rec);
+ rec = new ExpenseReportRecord();
+ rec.setCity("new");
+ records.add(rec);
+ }
+
+}
Added: root/examples/richfaces-showcase/trunk/src/main/java/org/richfaces/demo/tables/model/expenses/ExpenseReportRecord.java
===================================================================
--- root/examples/richfaces-showcase/trunk/src/main/java/org/richfaces/demo/tables/model/expenses/ExpenseReportRecord.java (rev 0)
+++ root/examples/richfaces-showcase/trunk/src/main/java/org/richfaces/demo/tables/model/expenses/ExpenseReportRecord.java 2010-05-26 15:11:53 UTC (rev 17262)
@@ -0,0 +1,64 @@
+package org.richfaces.demo.tables.model.expenses;
+
+import java.util.ArrayList;
+import java.util.Iterator;
+import java.util.List;
+
+public class ExpenseReportRecord {
+ private String city;
+ private List items = new ArrayList();
+
+ public String getCity() {
+ return city;
+ }
+
+ public void setCity(String city) {
+ this.city = city;
+ }
+
+ public List getItems() {
+ return this.items;
+ }
+
+ public void setItems(List items) {
+ this.items = items;
+ }
+
+ public double getTotalMeals() {
+ double ret = 0.0;
+ Iterator it = items.iterator();
+ while (it.hasNext()) {
+ ExpenseReportRecordItem item = (ExpenseReportRecordItem) it.next();
+ ret += item.getMeals();
+ }
+ return ret;
+ }
+
+ public double getTotalHotels() {
+ double ret = 0.0;
+ Iterator it = items.iterator();
+ while (it.hasNext()) {
+ ExpenseReportRecordItem item = (ExpenseReportRecordItem) it.next();
+ ret += item.getHotels();
+ }
+ return ret;
+ }
+
+ public double getTotalTransport() {
+ double ret = 0.0;
+ Iterator it = items.iterator();
+ while (it.hasNext()) {
+ ExpenseReportRecordItem item = (ExpenseReportRecordItem) it.next();
+ ret += item.getTransport();
+ }
+ return ret;
+ }
+
+ public double getTotal() {
+ return getTotalMeals() + getTotalHotels() + getTotalTransport();
+ }
+
+ public int getItemsCount() {
+ return getItems().size();
+ }
+}
Added: root/examples/richfaces-showcase/trunk/src/main/java/org/richfaces/demo/tables/model/expenses/ExpenseReportRecordItem.java
===================================================================
--- root/examples/richfaces-showcase/trunk/src/main/java/org/richfaces/demo/tables/model/expenses/ExpenseReportRecordItem.java (rev 0)
+++ root/examples/richfaces-showcase/trunk/src/main/java/org/richfaces/demo/tables/model/expenses/ExpenseReportRecordItem.java 2010-05-26 15:11:53 UTC (rev 17262)
@@ -0,0 +1,63 @@
+package org.richfaces.demo.tables.model.expenses;
+
+public class ExpenseReportRecordItem {
+
+ private String city;
+
+ public String getCity() {
+ return city;
+ }
+
+ public void setCity(String city) {
+ this.city = city;
+ }
+
+ private String day;
+ private double meals;
+ private double hotels;
+ private double transport;
+
+ public ExpenseReportRecordItem(String day, double meals, double hotels, double transport, String city) {
+ this.city = city;
+ this.day = day;
+ this.meals = meals;
+ this.hotels = hotels;
+ this.transport = transport;
+ }
+
+ public String getDay() {
+ return day;
+ }
+
+ public void setDay(String day) {
+ this.day = day;
+ }
+
+ public double getHotels() {
+ return hotels;
+ }
+
+ public void setHotels(double hotels) {
+ this.hotels = hotels;
+ }
+
+ public double getMeals() {
+ return meals;
+ }
+
+ public void setMeals(double meals) {
+ this.meals = meals;
+ }
+
+ public double getTransport() {
+ return transport;
+ }
+
+ public void setTransport(double transport) {
+ this.transport = transport;
+ }
+
+ public double getTotal() {
+ return meals + hotels + transport;
+ }
+}
Added: root/examples/richfaces-showcase/trunk/src/main/resources/META-INF/a4j.taglib.xml
===================================================================
--- root/examples/richfaces-showcase/trunk/src/main/resources/META-INF/a4j.taglib.xml (rev 0)
+++ root/examples/richfaces-showcase/trunk/src/main/resources/META-INF/a4j.taglib.xml 2010-05-26 15:11:53 UTC (rev 17262)
@@ -0,0 +1,927 @@
+<?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="a4j">
+ <namespace>http://richfaces.org/a4j</namespace>
+ <tag>
+ <tag-name>commandLink</tag-name>
+ <component>
+ <component-type>org.richfaces.CommandLink</component-type>
+ <renderer-type>org.richfaces.CommandLinkRenderer</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>
+ <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>
+ <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>
+ <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>The component identifier for this component. This value must be unique within the closest parent component that is a naming container.</description>
+ <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>
+ <name>immediate</name>
+ <type>boolean</type>
+ </attribute>
+ <attribute>
+ <name>limitRender</name>
+ <type>boolean</type>
+ </attribute>
+ <attribute>
+ <name>onclick</name>
+ <type>java.lang.String</type>
+ </attribute>
+ <attribute>
+ <name>ondblclick</name>
+ <type>java.lang.String</type>
+ </attribute>
+ <attribute>
+ <name>onkeydown</name>
+ <type>java.lang.String</type>
+ </attribute>
+ <attribute>
+ <name>onkeypress</name>
+ <type>java.lang.String</type>
+ </attribute>
+ <attribute>
+ <name>onkeyup</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>
+ <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>
+ <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>
+ <description>The current value of this component.</description>
+ <name>value</name>
+ <type>java.lang.Object</type>
+ </attribute>
+ </tag>
+ <tag>
+ <tag-name>repeat</tag-name>
+ <component>
+ <component-type>org.richfaces.Repeat</component-type>
+ <renderer-type>org.richfaces.RepeatRenderer</renderer-type>
+ </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>
+ <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>
+ <name>rendered</name>
+ <type>boolean</type>
+ </attribute>
+ </tag>
+ <tag>
+ <tag-name>mediaOutput</tag-name>
+ <component>
+ <component-type>org.richfaces.MediaOutput</component-type>
+ <renderer-type>org.richfaces.MediaOutputRenderer</renderer-type>
+ <handler-class>org.richfaces.view.facelets.html.MediaOutputHandler</handler-class>
+ </component>
+ <attribute>
+ <name>accesskey</name>
+ <type>java.lang.String</type>
+ </attribute>
+ <attribute>
+ <name>align</name>
+ <type>java.lang.String</type>
+ </attribute>
+ <attribute>
+ <name>archive</name>
+ <type>java.lang.String</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>border</name>
+ <type>java.lang.String</type>
+ </attribute>
+ <attribute>
+ <name>cacheable</name>
+ <type>boolean</type>
+ </attribute>
+ <attribute>
+ <name>charset</name>
+ <type>java.lang.String</type>
+ </attribute>
+ <attribute>
+ <name>classid</name>
+ <type>java.lang.String</type>
+ </attribute>
+ <attribute>
+ <name>codebase</name>
+ <type>java.lang.String</type>
+ </attribute>
+ <attribute>
+ <name>codetype</name>
+ <type>java.lang.String</type>
+ </attribute>
+ <attribute>
+ <description>Converter instance registered with this component.</description>
+ <name>converter</name>
+ <type>javax.faces.convert.Converter</type>
+ </attribute>
+ <attribute>
+ <name>coords</name>
+ <type>java.lang.String</type>
+ </attribute>
+ <attribute>
+ <description>Get EL binding to method in user bean to send resource. Method will called with two parameters - restored data object and servlet output stream. @return MethodBinding to createContent</description>
+ <name>createContent</name>
+ <type>javax.faces.el.MethodBinding</type>
+ </attribute>
+ <attribute>
+ <name>declare</name>
+ <type>java.lang.String</type>
+ </attribute>
+ <attribute>
+ <name>dir</name>
+ <type>java.lang.String</type>
+ </attribute>
+ <attribute>
+ <description>Get Element name for rendering ( imj , a , object, applet ). @return</description>
+ <name>element</name>
+ <type>java.lang.String</type>
+ </attribute>
+ <attribute>
+ <name>expires</name>
+ <type>java.util.Date</type>
+ </attribute>
+ <attribute>
+ <name>hreflang</name>
+ <type>java.lang.String</type>
+ </attribute>
+ <attribute>
+ <name>hspace</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>
+ <name>id</name>
+ <type>java.lang.String</type>
+ </attribute>
+ <attribute>
+ <name>ismap</name>
+ <type>boolean</type>
+ </attribute>
+ <attribute>
+ <name>lang</name>
+ <type>java.lang.String</type>
+ </attribute>
+ <attribute>
+ <name>lastModified</name>
+ <type>java.util.Date</type>
+ </attribute>
+ <attribute>
+ <name>mimeType</name>
+ <type>java.lang.String</type>
+ </attribute>
+ <attribute>
+ <name>onblur</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>onfocus</name>
+ <type>java.lang.String</type>
+ </attribute>
+ <attribute>
+ <name>onkeydown</name>
+ <type>java.lang.String</type>
+ </attribute>
+ <attribute>
+ <name>onkeypress</name>
+ <type>java.lang.String</type>
+ </attribute>
+ <attribute>
+ <name>onkeyup</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>rel</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>
+ <name>rendered</name>
+ <type>boolean</type>
+ </attribute>
+ <attribute>
+ <name>rev</name>
+ <type>java.lang.String</type>
+ </attribute>
+ <attribute>
+ <name>shape</name>
+ <type>java.lang.String</type>
+ </attribute>
+ <attribute>
+ <name>standby</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>tabindex</name>
+ <type>java.lang.String</type>
+ </attribute>
+ <attribute>
+ <name>target</name>
+ <type>java.lang.String</type>
+ </attribute>
+ <attribute>
+ <name>title</name>
+ <type>java.lang.String</type>
+ </attribute>
+ <attribute>
+ <name>type</name>
+ <type>java.lang.String</type>
+ </attribute>
+ <attribute>
+ <description>Get URI attribute for resource ( src for images, href for links etc ). @return</description>
+ <name>uriAttribute</name>
+ <type>java.lang.String</type>
+ </attribute>
+ <attribute>
+ <name>usemap</name>
+ <type>java.lang.String</type>
+ </attribute>
+ <attribute>
+ <description>The current value of this component.</description>
+ <name>value</name>
+ <type>java.lang.Object</type>
+ </attribute>
+ <attribute>
+ <name>vspace</name>
+ <type>java.lang.String</type>
+ </attribute>
+ </tag>
+ <tag>
+ <tag-name>attachQueue</tag-name>
+ <component>
+ <component-type>org.richfaces.AttachQueue</component-type>
+ <renderer-type>org.richfaces.AttachQueueRenderer</renderer-type>
+ <handler-class>org.richfaces.view.facelets.html.AttachQueueHandler</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>
+ <name>id</name>
+ <type>java.lang.String</type>
+ </attribute>
+ <attribute>
+ <name>ignoreDupResponses</name>
+ <type>boolean</type>
+ </attribute>
+ <attribute>
+ <name>onrequestdequeue</name>
+ <type>java.lang.String</type>
+ </attribute>
+ <attribute>
+ <name>onrequestqueue</name>
+ <type>java.lang.String</type>
+ </attribute>
+ <attribute>
+ <name>queueId</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>
+ <name>rendered</name>
+ <type>boolean</type>
+ </attribute>
+ <attribute>
+ <name>requestDelay</name>
+ <type>int</type>
+ </attribute>
+ <attribute>
+ <name>requestGroupingId</name>
+ <type>java.lang.String</type>
+ </attribute>
+ <attribute>
+ <name>timeout</name>
+ <type>int</type>
+ </attribute>
+ </tag>
+ <tag>
+ <tag-name>region</tag-name>
+ <component>
+ <component-type>org.richfaces.Region</component-type>
+ <renderer-type>org.richfaces.RegionRenderer</renderer-type>
+ </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>
+ <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>
+ <name>rendered</name>
+ <type>boolean</type>
+ </attribute>
+ </tag>
+ <tag>
+ <tag-name>status</tag-name>
+ <component>
+ <component-type>org.richfaces.Status</component-type>
+ <renderer-type>org.richfaces.StatusRenderer</renderer-type>
+ </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>
+ <name>converter</name>
+ <type>javax.faces.convert.Converter</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>
+ <name>id</name>
+ <type>java.lang.String</type>
+ </attribute>
+ <attribute>
+ <name>onerror</name>
+ <type>java.lang.String</type>
+ </attribute>
+ <attribute>
+ <name>onstart</name>
+ <type>java.lang.String</type>
+ </attribute>
+ <attribute>
+ <name>onstop</name>
+ <type>java.lang.String</type>
+ </attribute>
+ <attribute>
+ <name>onsuccess</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>
+ <name>rendered</name>
+ <type>boolean</type>
+ </attribute>
+ <attribute>
+ <description>The current value of this component.</description>
+ <name>value</name>
+ <type>java.lang.Object</type>
+ </attribute>
+ </tag>
+ <tag>
+ <tag-name>push</tag-name>
+ <component>
+ <component-type>org.richfaces.Push</component-type>
+ <renderer-type>org.richfaces.PushRenderer</renderer-type>
+ <handler-class>org.richfaces.view.facelets.html.AjaxPushHandler</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>
+ <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>
+ <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>
+ <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>
+ <name>enabled</name>
+ <type>boolean</type>
+ </attribute>
+ <attribute>
+ <name>eventProducer</name>
+ <type>javax.el.MethodExpression</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>
+ <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>
+ <name>immediate</name>
+ <type>boolean</type>
+ </attribute>
+ <attribute>
+ <description>@return time in mc for polling interval.</description>
+ <name>interval</name>
+ <type>int</type>
+ </attribute>
+ <attribute>
+ <name>onbeforedomupdate</name>
+ <type>java.lang.String</type>
+ </attribute>
+ <attribute>
+ <name>onbegin</name>
+ <type>java.lang.String</type>
+ </attribute>
+ <attribute>
+ <name>oncomplete</name>
+ <type>java.lang.String</type>
+ </attribute>
+ <attribute>
+ <name>ondataavailable</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>
+ <name>rendered</name>
+ <type>boolean</type>
+ </attribute>
+ <attribute>
+ <description>The current value of this component.</description>
+ <name>value</name>
+ <type>java.lang.Object</type>
+ </attribute>
+ </tag>
+ <tag>
+ <tag-name>commandButton</tag-name>
+ <component>
+ <component-type>org.richfaces.CommandButton</component-type>
+ <renderer-type>org.richfaces.CommandButtonRenderer</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>
+ <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>
+ <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>
+ <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>The component identifier for this component. This value must be unique within the closest parent component that is a naming container.</description>
+ <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>
+ <name>immediate</name>
+ <type>boolean</type>
+ </attribute>
+ <attribute>
+ <name>limitRender</name>
+ <type>boolean</type>
+ </attribute>
+ <attribute>
+ <name>onclick</name>
+ <type>java.lang.String</type>
+ </attribute>
+ <attribute>
+ <name>ondblclick</name>
+ <type>java.lang.String</type>
+ </attribute>
+ <attribute>
+ <name>onkeydown</name>
+ <type>java.lang.String</type>
+ </attribute>
+ <attribute>
+ <name>onkeypress</name>
+ <type>java.lang.String</type>
+ </attribute>
+ <attribute>
+ <name>onkeyup</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>
+ <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>
+ <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>
+ <description>The current value of this component.</description>
+ <name>value</name>
+ <type>java.lang.Object</type>
+ </attribute>
+ </tag>
+ <tag>
+ <tag-name>outputPanel</tag-name>
+ <component>
+ <component-type>org.richfaces.OutputPanel</component-type>
+ <renderer-type>org.richfaces.OutputPanelRenderer</renderer-type>
+ </component>
+ <attribute>
+ <name>ajaxRendered</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>dir</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>
+ <name>id</name>
+ <type>java.lang.String</type>
+ </attribute>
+ <attribute>
+ <name>keepTransient</name>
+ <type>boolean</type>
+ </attribute>
+ <attribute>
+ <name>lang</name>
+ <type>java.lang.String</type>
+ </attribute>
+ <attribute>
+ <name>layout</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>onkeydown</name>
+ <type>java.lang.String</type>
+ </attribute>
+ <attribute>
+ <name>onkeypress</name>
+ <type>java.lang.String</type>
+ </attribute>
+ <attribute>
+ <name>onkeyup</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>
+ <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>
+ <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>title</name>
+ <type>java.lang.String</type>
+ </attribute>
+ </tag>
+ <tag>
+ <tag-name>jsFunction</tag-name>
+ <component>
+ <component-type>org.richfaces.Function</component-type>
+ <renderer-type>org.richfaces.FunctionRenderer</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>
+ <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>
+ <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>
+ <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>
+ <name>execute</name>
+ <type>java.lang.Object</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>
+ <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>
+ <name>immediate</name>
+ <type>boolean</type>
+ </attribute>
+ <attribute>
+ <name>limitRender</name>
+ <type>boolean</type>
+ </attribute>
+ <attribute>
+ <name>name</name>
+ <type>java.lang.String</type>
+ </attribute>
+ <attribute>
+ <name>onbeforedomupdate</name>
+ <type>java.lang.String</type>
+ </attribute>
+ <attribute>
+ <name>onbegin</name>
+ <type>java.lang.String</type>
+ </attribute>
+ <attribute>
+ <name>oncomplete</name>
+ <type>java.lang.String</type>
+ </attribute>
+ <attribute>
+ <name>render</name>
+ <type>java.lang.Object</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>
+ <name>rendered</name>
+ <type>boolean</type>
+ </attribute>
+ <attribute>
+ <name>status</name>
+ <type>java.lang.String</type>
+ </attribute>
+ <attribute>
+ <description>The current value of this component.</description>
+ <name>value</name>
+ <type>java.lang.Object</type>
+ </attribute>
+ </tag>
+ <tag>
+ <tag-name>log</tag-name>
+ <component>
+ <component-type>org.richfaces.AjaxLog</component-type>
+ <renderer-type>org.richfaces.AjaxLogRenderer</renderer-type>
+ </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>
+ <name>id</name>
+ <type>java.lang.String</type>
+ </attribute>
+ <attribute>
+ <name>level</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>
+ <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>
+ </tag>
+ <tag>
+ <tag-name>queue</tag-name>
+ <component>
+ <component-type>org.richfaces.Queue</component-type>
+ <renderer-type>org.richfaces.QueueRenderer</renderer-type>
+ </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>
+ <name>id</name>
+ <type>java.lang.String</type>
+ </attribute>
+ <attribute>
+ <name>ignoreDupResponses</name>
+ <type>boolean</type>
+ </attribute>
+ <attribute>
+ <name>name</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>onerror</name>
+ <type>java.lang.String</type>
+ </attribute>
+ <attribute>
+ <name>onevent</name>
+ <type>java.lang.String</type>
+ </attribute>
+ <attribute>
+ <name>onrequestdequeue</name>
+ <type>java.lang.String</type>
+ </attribute>
+ <attribute>
+ <name>onrequestqueue</name>
+ <type>java.lang.String</type>
+ </attribute>
+ <attribute>
+ <name>onsubmit</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>
+ <name>rendered</name>
+ <type>boolean</type>
+ </attribute>
+ <attribute>
+ <name>requestDelay</name>
+ <type>int</type>
+ </attribute>
+ <attribute>
+ <name>status</name>
+ <type>java.lang.String</type>
+ </attribute>
+ <attribute>
+ <name>timeout</name>
+ <type>int</type>
+ </attribute>
+ </tag>
+ <tag>
+ <tag-name>ajax</tag-name>
+ <behavior>
+ <behavior-id>org.ajax4jsf.behavior.Ajax</behavior-id>
+ <handler-class>org.richfaces.view.facelets.html.AjaxHandler</handler-class>
+ </behavior>
+ </tag>
+</facelet-taglib>
Modified: root/examples/richfaces-showcase/trunk/src/main/resources/org/richfaces/demo/data/common/navigation.xml
===================================================================
--- root/examples/richfaces-showcase/trunk/src/main/resources/org/richfaces/demo/data/common/navigation.xml 2010-05-26 14:58:45 UTC (rev 17261)
+++ root/examples/richfaces-showcase/trunk/src/main/resources/org/richfaces/demo/data/common/navigation.xml 2010-05-26 15:11:53 UTC (rev 17262)
@@ -214,6 +214,16 @@
</sample>
</samples>
</demo>
+ <demo>
+ <id>tableToggleControl</id>
+ <name>rich:tableToggleControl</name>
+ <samples>
+ <sample>
+ <id>tableToggleControl</id>
+ <name>Table Basic Usage</name>
+ </sample>
+ </samples>
+ </demo>
</demos>
</group>
</root>
Modified: root/examples/richfaces-showcase/trunk/src/main/webapp/richfaces/commandLink/commandLink.xhtml
===================================================================
--- root/examples/richfaces-showcase/trunk/src/main/webapp/richfaces/commandLink/commandLink.xhtml 2010-05-26 14:58:45 UTC (rev 17261)
+++ root/examples/richfaces-showcase/trunk/src/main/webapp/richfaces/commandLink/commandLink.xhtml 2010-05-26 15:11:53 UTC (rev 17262)
@@ -26,7 +26,7 @@
</h:form>
<br />
<a4j:outputPanel id="out">
- <h:outputText value="Hello #{userBean.name} !" rendered="#{not empty userBean.name}" styleClass="outhello" />
+ <h:outputText value="Hello #{userBean.name} !" styleClass="outhello" />
</a4j:outputPanel>
</ui:composition>
</html>
\ No newline at end of file
Modified: root/examples/richfaces-showcase/trunk/src/main/webapp/richfaces/dataTable/simpleTable.xhtml
===================================================================
--- root/examples/richfaces-showcase/trunk/src/main/webapp/richfaces/dataTable/simpleTable.xhtml 2010-05-26 14:58:45 UTC (rev 17261)
+++ root/examples/richfaces-showcase/trunk/src/main/webapp/richfaces/dataTable/simpleTable.xhtml 2010-05-26 15:11:53 UTC (rev 17262)
@@ -8,74 +8,118 @@
xmlns:ds="http://richfaces.org/datascroller">
<ui:composition>
-<p>This sample shows simple master-detail table implemented using<b> rich:dataTable</b> and<b> rich:subtable</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:tableToggleControl</b></p>
-<p>subTable's could be collapsed/expanded in different modes defined via subTable expandMode attribute
-- "<i>client</i>", "<i>ajax</i>" and "<i>server</i>"</p>
-<p>Also the developer could get control on states of subTables using its <b>expanded</b> attribute.</p>
- <h:form>
- <tbl:dataTable value="#{carsBean.inventoryVendorLists}" var="list">
- <f:facet name="header">
- <tbl:columnGroup>
- <tbl:column colspan="6">
- <h:outputText value="Cars marketplace" />
- </tbl:column>
- <tbl:column breakBefore="true">
- <h:outputText value="Model" />
- </tbl:column>
- <tbl:column>
- <h:outputText value="Price" />
- </tbl:column>
- <tbl:column>
- <h:outputText value="Mileage" />
- </tbl:column>
- <tbl:column>
- <h:outputText value="VIN Code" />
- </tbl:column>
- <tbl:column>
- <h:outputText value="Items stock" />
- </tbl:column>
- <tbl:column>
- <h:outputText value="Days Live" />
- </tbl:column>
- </tbl:columnGroup>
- </f:facet>
- <tbl:column colspan="6">
- <h:outputText value="#{list.vendor}" />
- <tbl:toggleControl for="sbtbl">
- <f:facet name="expand">
- <a href="#">(show details)</a>
+ <p>This sample shows simple master-detail table implemented using<b>
+ tbl:dataTable</b> and<b> tbl:subtable</b> components</p>
+ <tbl:dataTable width="700" var="record"
+ value="#{reportBean.expReport.records}">
+ <f:facet name="header">
+ <tbl:columnGroup>
+ <tbl:column rowspan="2">
+ </tbl:column>
+ <tbl:column colspan="3">
+ <h:outputText value="Expenses" />
+ </tbl:column>
+ <tbl:column rowspan="2">
+ <h:outputText value="subtotals" />
+ </tbl:column>
+ <tbl:column breakBefore="true">
+ <h:outputText value="Meals" />
+ </tbl:column>
+ <tbl:column>
+ <h:outputText value="Hotels" />
+ </tbl:column>
+ <tbl:column>
+ <h:outputText value="Transport" />
+ </tbl:column>
+ </tbl:columnGroup>
+ </f:facet>
+
+ <tbl:column colspan="5">
+ <h:outputText value="#{record.city}" />
+ </tbl:column>
+
+ <tbl:subTable var="expense" value="#{record.items}">
+ <tbl:column>
+ <h:outputText value="#{expense.day}"></h:outputText>
+ <f:facet name="footer">
+ <div></div>
</f:facet>
- <f:facet name="collapse">
- <a href="#">(hide details)</a>
+ </tbl:column>
+ <tbl:column>
+ <f:facet name="header">
+ <h:outputText value="#{record.totalMeals}">
+ <f:convertNumber pattern="$####.00" />
+ </h:outputText>
</f:facet>
- </tbl:toggleControl>
- </tbl:column>
- <tbl:subTable value="#{list.vendorItems}" var="item" id="sbtbl" expandMode="client">
- <tbl:column>
- <h:outputText value="#{item.model}" />
+ <h:outputText value="#{expense.meals}">
+ <f:convertNumber pattern="$####.00" />
+ </h:outputText>
+ <f:facet name="footer">
+ <h:outputText value="#{record.totalMeals}">
+ <f:convertNumber pattern="$####.00" />
+ </h:outputText>
+ </f:facet>
</tbl:column>
<tbl:column>
- <h:outputText value="#{item.price}" />
+ <h:outputText value="#{expense.hotels}">
+ <f:convertNumber pattern="$####.00" />
+ </h:outputText>
+ <f:facet name="footer">
+ <h:outputText value="#{record.totalHotels}">
+ <f:convertNumber pattern="$####.00" />
+ </h:outputText>
+ </f:facet>
</tbl:column>
+
+ <tbl:column>
+ <h:outputText value="#{expense.transport}">
+ <f:convertNumber pattern="$####.00" />
+ </h:outputText>
+ <f:facet name="footer">
+ <h:outputText value="#{record.totalTransport}">
+ <f:convertNumber pattern="$####.00" />
+ </h:outputText>
+ </f:facet>
+ </tbl:column>
+ <tbl:column>
+
+ <f:facet name="footer">
+ <h:outputText value="#{record.total}">
+ <f:convertNumber pattern="$####.00" />
+ </h:outputText>
+ </f:facet>
+ </tbl:column>
+
+ </tbl:subTable>
+
+ <f:facet name="footer">
+
+ <tbl:columnGroup>
+ <tbl:column>Totals</tbl:column>
<tbl:column>
- <h:outputText value="#{item.mileage}" />
+ <h:outputText value="#{report.expReport.totalMeals}">
+ <f:convertNumber pattern="$####.00" />
+ </h:outputText>
</tbl:column>
<tbl:column>
- <h:outputText value="#{item.vin}" />
+ <h:outputText value="#{report.expReport.totalHotels}">
+ <f:convertNumber pattern="$####.00" />
+ </h:outputText>
</tbl:column>
<tbl:column>
- <h:outputText value="#{item.stock}" />
+ <h:outputText value="#{report.expReport.totalTransport}">
+ <f:convertNumber pattern="$####.00" />
+ </h:outputText>
</tbl:column>
<tbl:column>
- <h:outputText value="#{item.daysLive}" />
+ <h:outputText value="#{report.expReport.grandTotal}">
+ <f:convertNumber pattern="$####.00" />
+ </h:outputText>
</tbl:column>
- <f:facet name="footer">
- <h:outputText value="Total of #{list.vendor} Cars: #{list.count}" />
- </f:facet>
- </tbl:subTable>
- </tbl:dataTable>
- </h:form>
+ </tbl:columnGroup>
+ </f:facet>
+
+ </tbl:dataTable>
+
</ui:composition>
</html>
\ No newline at end of file
Modified: root/examples/richfaces-showcase/trunk/src/main/webapp/richfaces/dataTable/tableFilteringAPI.xhtml
===================================================================
--- root/examples/richfaces-showcase/trunk/src/main/webapp/richfaces/dataTable/tableFilteringAPI.xhtml 2010-05-26 14:58:45 UTC (rev 17261)
+++ root/examples/richfaces-showcase/trunk/src/main/webapp/richfaces/dataTable/tableFilteringAPI.xhtml 2010-05-26 15:11:53 UTC (rev 17262)
@@ -19,7 +19,7 @@
<ul>
<a4j:repeat value="#{carsBean.allVendors}" var="vendor">
<li><h:outputLink
- value="javascript:document.getElementById('form:table').component.filter('vendor', '#{vendor}')">#{vendor}</h:outputLink>
+ value="javascript:document.getElementById('form:table').richfaces.component.filter('vendor', '#{vendor}')">#{vendor}</h:outputLink>
</li>
</a4j:repeat>
</ul>
Added: root/examples/richfaces-showcase/trunk/src/main/webapp/richfaces/tableToggleControl/tableToggleControl.xhtml
===================================================================
--- root/examples/richfaces-showcase/trunk/src/main/webapp/richfaces/tableToggleControl/tableToggleControl.xhtml (rev 0)
+++ root/examples/richfaces-showcase/trunk/src/main/webapp/richfaces/tableToggleControl/tableToggleControl.xhtml 2010-05-26 15:11:53 UTC (rev 17262)
@@ -0,0 +1,84 @@
+<!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:tbl="http://richfaces.org/rich"
+ xmlns:ds="http://richfaces.org/datascroller">
+
+<ui:composition>
+<p>This sample shows simple master-detail table implemented using<b> rich:dataTable</b> and<b> rich:subtable</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:tableToggleControl</b></p>
+<p>Switching customization:</p>
+<ul>
+<li>subTable's could be collapsed/expanded in different modes defined via subTable expandMode attribute
+- "<i>client</i>", "<i>ajax</i>" and "<i>server</i>"</li>
+<li>The developer could get control on current states of subTables using its <b>expanded</b> attribute.</li>
+</ul>
+ <h:form>
+ <tbl:dataTable value="#{carsBean.inventoryVendorLists}" var="list">
+ <f:facet name="header">
+ <tbl:columnGroup>
+ <tbl:column colspan="6">
+ <h:outputText value="Cars marketplace" />
+ </tbl:column>
+ <tbl:column breakBefore="true">
+ <h:outputText value="Model" />
+ </tbl:column>
+ <tbl:column>
+ <h:outputText value="Price" />
+ </tbl:column>
+ <tbl:column>
+ <h:outputText value="Mileage" />
+ </tbl:column>
+ <tbl:column>
+ <h:outputText value="VIN Code" />
+ </tbl:column>
+ <tbl:column>
+ <h:outputText value="Items stock" />
+ </tbl:column>
+ <tbl:column>
+ <h:outputText value="Days Live" />
+ </tbl:column>
+ </tbl:columnGroup>
+ </f:facet>
+ <tbl:column colspan="6">
+ <h:outputText value="#{list.vendor}" />
+ <tbl:toggleControl for="sbtbl">
+ <f:facet name="expand">
+ <a href="#">(show details)</a>
+ </f:facet>
+ <f:facet name="collapse">
+ <a href="#">(hide details)</a>
+ </f:facet>
+ </tbl:toggleControl>
+ </tbl:column>
+ <tbl:subTable value="#{list.vendorItems}" var="item" id="sbtbl" expandMode="client">
+ <tbl:column>
+ <h:outputText value="#{item.model}" />
+ </tbl:column>
+ <tbl:column>
+ <h:outputText value="#{item.price}" />
+ </tbl:column>
+ <tbl:column>
+ <h:outputText value="#{item.mileage}" />
+ </tbl:column>
+ <tbl:column>
+ <h:outputText value="#{item.vin}" />
+ </tbl:column>
+ <tbl:column>
+ <h:outputText value="#{item.stock}" />
+ </tbl:column>
+ <tbl:column>
+ <h:outputText value="#{item.daysLive}" />
+ </tbl:column>
+ <f:facet name="footer">
+ <h:outputText value="Total of #{list.vendor} Cars: #{list.count}" />
+ </f:facet>
+ </tbl:subTable>
+ </tbl:dataTable>
+ </h:form>
+</ui:composition>
+</html>
\ No newline at end of file
14 years, 1 month
JBoss Rich Faces SVN: r17261 - in root/ui/dist/trunk: richfaces-components-api and 2 other directories.
by richfaces-svn-commits@lists.jboss.org
Author: jbalunas(a)redhat.com
Date: 2010-05-26 10:58:45 -0400 (Wed, 26 May 2010)
New Revision: 17261
Modified:
root/ui/dist/trunk/pom.xml
root/ui/dist/trunk/richfaces-components-api/pom.xml
root/ui/dist/trunk/richfaces-components-impl/pom.xml
root/ui/dist/trunk/richfaces-components-ui/pom.xml
Log:
Updated to latest richfaces-parent
Modified: root/ui/dist/trunk/pom.xml
===================================================================
--- root/ui/dist/trunk/pom.xml 2010-05-26 14:17:07 UTC (rev 17260)
+++ root/ui/dist/trunk/pom.xml 2010-05-26 14:58:45 UTC (rev 17261)
@@ -26,7 +26,7 @@
<parent>
<groupId>org.richfaces</groupId>
<artifactId>richfaces-parent</artifactId>
- <version>1</version>
+ <version>4</version>
</parent>
<groupId>org.richfaces.ui</groupId>
Modified: root/ui/dist/trunk/richfaces-components-api/pom.xml
===================================================================
--- root/ui/dist/trunk/richfaces-components-api/pom.xml 2010-05-26 14:17:07 UTC (rev 17260)
+++ root/ui/dist/trunk/richfaces-components-api/pom.xml 2010-05-26 14:58:45 UTC (rev 17261)
@@ -26,7 +26,7 @@
<parent>
<groupId>org.richfaces</groupId>
<artifactId>richfaces-parent</artifactId>
- <version>1</version>
+ <version>4</version>
</parent>
<groupId>org.richfaces.ui</groupId>
Modified: root/ui/dist/trunk/richfaces-components-impl/pom.xml
===================================================================
--- root/ui/dist/trunk/richfaces-components-impl/pom.xml 2010-05-26 14:17:07 UTC (rev 17260)
+++ root/ui/dist/trunk/richfaces-components-impl/pom.xml 2010-05-26 14:58:45 UTC (rev 17261)
@@ -26,7 +26,7 @@
<parent>
<groupId>org.richfaces</groupId>
<artifactId>richfaces-parent</artifactId>
- <version>1</version>
+ <version>4</version>
</parent>
<groupId>org.richfaces.ui</groupId>
Modified: root/ui/dist/trunk/richfaces-components-ui/pom.xml
===================================================================
--- root/ui/dist/trunk/richfaces-components-ui/pom.xml 2010-05-26 14:17:07 UTC (rev 17260)
+++ root/ui/dist/trunk/richfaces-components-ui/pom.xml 2010-05-26 14:58:45 UTC (rev 17261)
@@ -26,7 +26,7 @@
<parent>
<groupId>org.richfaces</groupId>
<artifactId>richfaces-parent</artifactId>
- <version>1</version>
+ <version>4</version>
</parent>
<groupId>org.richfaces.ui</groupId>
14 years, 1 month
JBoss Rich Faces SVN: r17260 - root/cdk/trunk/plugins/generator/src/main/java/org/richfaces/cdk/generate/taglib.
by richfaces-svn-commits@lists.jboss.org
Author: Alex.Kolonitsky
Date: 2010-05-26 10:17:07 -0400 (Wed, 26 May 2010)
New Revision: 17260
Modified:
root/cdk/trunk/plugins/generator/src/main/java/org/richfaces/cdk/generate/taglib/TaglibWriter.java
Log:
fix generation empty taglibs
Modified: root/cdk/trunk/plugins/generator/src/main/java/org/richfaces/cdk/generate/taglib/TaglibWriter.java
===================================================================
--- root/cdk/trunk/plugins/generator/src/main/java/org/richfaces/cdk/generate/taglib/TaglibWriter.java 2010-05-26 13:32:14 UTC (rev 17259)
+++ root/cdk/trunk/plugins/generator/src/main/java/org/richfaces/cdk/generate/taglib/TaglibWriter.java 2010-05-26 14:17:07 UTC (rev 17260)
@@ -55,7 +55,7 @@
library.accept(visitor,library);
Document document = visitor.getDocument();
- if (document.getRootElement().elements().isEmpty()) {
+ if (document.getRootElement().elements("tag").isEmpty()) {
return;
}
14 years, 1 month
JBoss Rich Faces SVN: r17259 - root/examples.
by richfaces-svn-commits@lists.jboss.org
Author: jbalunas(a)redhat.com
Date: 2010-05-26 09:32:14 -0400 (Wed, 26 May 2010)
New Revision: 17259
Modified:
root/examples/pom.xml
Log:
Fixed reference to profile based jsf impl
Modified: root/examples/pom.xml
===================================================================
--- root/examples/pom.xml 2010-05-26 12:41:22 UTC (rev 17258)
+++ root/examples/pom.xml 2010-05-26 13:32:14 UTC (rev 17259)
@@ -80,12 +80,12 @@
<dependencies>
<dependency>
- <groupId>com.sun.faces</groupId>
- <artifactId>jsf-api</artifactId>
+ <groupId>${jsf2.api.groupid}</groupId>
+ <artifactId>${jsf2.api.artifactid}</artifactId>
</dependency>
<dependency>
- <groupId>com.sun.faces</groupId>
- <artifactId>jsf-impl</artifactId>
+ <groupId>${jsf2.impl.groupid}</groupId>
+ <artifactId>${jsf2.impl.artifactid}</artifactId>
</dependency>
<dependency>
<groupId>javax.servlet</groupId>
14 years, 1 month
JBoss Rich Faces SVN: r17258 - in root: examples-sandbox/trunk and 1 other directories.
by richfaces-svn-commits@lists.jboss.org
Author: Alex.Kolonitsky
Date: 2010-05-26 08:41:22 -0400 (Wed, 26 May 2010)
New Revision: 17258
Modified:
root/examples-sandbox/trunk/pom.xml
root/examples/pom.xml
root/ui-sandbox/tables/trunk/ui/src/main/java/org/richfaces/renderkit/RowHolder.java
Log:
fix checkstyle
fix richfaces-parent version
Modified: root/examples/pom.xml
===================================================================
--- root/examples/pom.xml 2010-05-26 12:20:44 UTC (rev 17257)
+++ root/examples/pom.xml 2010-05-26 12:41:22 UTC (rev 17258)
@@ -26,7 +26,7 @@
<parent>
<groupId>org.richfaces</groupId>
<artifactId>richfaces-parent</artifactId>
- <version>1</version>
+ <version>4</version>
</parent>
<groupId>org.richfaces.examples</groupId>
Modified: root/examples-sandbox/trunk/pom.xml
===================================================================
--- root/examples-sandbox/trunk/pom.xml 2010-05-26 12:20:44 UTC (rev 17257)
+++ root/examples-sandbox/trunk/pom.xml 2010-05-26 12:41:22 UTC (rev 17258)
@@ -26,7 +26,7 @@
<parent>
<groupId>org.richfaces</groupId>
<artifactId>richfaces-parent</artifactId>
- <version>1</version>
+ <version>4</version>
</parent>
<groupId>org.richfaces</groupId>
Modified: root/ui-sandbox/tables/trunk/ui/src/main/java/org/richfaces/renderkit/RowHolder.java
===================================================================
--- root/ui-sandbox/tables/trunk/ui/src/main/java/org/richfaces/renderkit/RowHolder.java 2010-05-26 12:20:44 UTC (rev 17257)
+++ root/ui-sandbox/tables/trunk/ui/src/main/java/org/richfaces/renderkit/RowHolder.java 2010-05-26 12:41:22 UTC (rev 17258)
@@ -42,19 +42,10 @@
private boolean tbody;
-
public RowHolder(FacesContext context, Row row) {
this(context, row, 0, true);
}
-
- public boolean isTbody() {
- return tbody;
- }
- public void setTbody(boolean tbody) {
- this.tbody = tbody;
- }
-
public RowHolder(FacesContext context, Row row, int processCell, boolean isRowStart) {
super(context);
this.row = row;
@@ -62,6 +53,14 @@
this.baseClientId = row.getClientId(context);
}
+ public boolean isTbody() {
+ return tbody;
+ }
+
+ public void setTbody(boolean tbody) {
+ this.tbody = tbody;
+ }
+
public String getBaseClientId() {
return baseClientId;
}
@@ -82,7 +81,7 @@
this.processCell = 0;
}
- public int nextCell(){
+ public int nextCell() {
return processCell++;
}
14 years, 1 month