incubator-adffaces-commits mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From mat...@apache.org
Subject svn commit: r418880 [1/3] - in /incubator/adffaces/branches/matzew-mock-overhaul/adf-faces: adf-faces-api/src/main/java-templates/org/apache/myfaces/adf/component/ adf-faces-api/src/main/java/org/apache/myfaces/adf/component/ adf-faces-api/src/main/jav...
Date Tue, 04 Jul 2006 00:14:55 GMT
Author: matzew
Date: Mon Jul  3 17:14:52 2006
New Revision: 418880

URL: http://svn.apache.org/viewvc?rev=418880&view=rev
Log:
applied some (trunk) patches to mock branch

Added:
    incubator/adffaces/branches/matzew-mock-overhaul/adf-faces/adf-faces-api/src/main/java/org/apache/myfaces/adf/util/ClassLoaderUtils.java
      - copied unchanged from r418878, incubator/adffaces/trunk/adf-faces/adf-faces-api/src/main/java/org/apache/myfaces/adf/util/ClassLoaderUtils.java
Removed:
    incubator/adffaces/branches/matzew-mock-overhaul/adf-faces/adf-faces-impl/src/main/java/org/apache/myfaces/adfinternal/util/ClassLoaderUtils.java
Modified:
    incubator/adffaces/branches/matzew-mock-overhaul/adf-faces/adf-faces-api/src/main/java-templates/org/apache/myfaces/adf/component/UIXTableTemplate.java
    incubator/adffaces/branches/matzew-mock-overhaul/adf-faces/adf-faces-api/src/main/java-templates/org/apache/myfaces/adf/component/UIXTreeTableTemplate.java
    incubator/adffaces/branches/matzew-mock-overhaul/adf-faces/adf-faces-api/src/main/java/org/apache/myfaces/adf/component/ChildArrayList.java
    incubator/adffaces/branches/matzew-mock-overhaul/adf-faces/adf-faces-api/src/main/java/org/apache/myfaces/adf/component/TableUtils.java
    incubator/adffaces/branches/matzew-mock-overhaul/adf-faces/adf-faces-api/src/main/java/org/apache/myfaces/adf/model/BaseMenuModel.java
    incubator/adffaces/branches/matzew-mock-overhaul/adf-faces/adf-faces-api/src/main/java/org/apache/myfaces/adf/model/MenuModel.java
    incubator/adffaces/branches/matzew-mock-overhaul/adf-faces/adf-faces-api/src/test/java/org/apache/myfaces/adf/component/AddRemoveTest.java
    incubator/adffaces/branches/matzew-mock-overhaul/adf-faces/adf-faces-build/src/main/resources/META-INF/maven-faces-plugin/components/adf/Column.xml
    incubator/adffaces/branches/matzew-mock-overhaul/adf-faces/adf-faces-build/src/main/resources/META-INF/maven-faces-plugin/components/adf/NavigationLevel.xml
    incubator/adffaces/branches/matzew-mock-overhaul/adf-faces/adf-faces-build/src/main/resources/META-INF/maven-faces-plugin/components/adf/NavigationPath.xml
    incubator/adffaces/branches/matzew-mock-overhaul/adf-faces/adf-faces-build/src/main/resources/META-INF/maven-faces-plugin/components/adf/NavigationTree.xml
    incubator/adffaces/branches/matzew-mock-overhaul/adf-faces/adf-faces-build/src/main/resources/META-INF/maven-faces-plugin/components/adf/Page.xml
    incubator/adffaces/branches/matzew-mock-overhaul/adf-faces/adf-faces-build/src/main/resources/META-INF/maven-faces-plugin/components/adf/Process.xml
    incubator/adffaces/branches/matzew-mock-overhaul/adf-faces/adf-faces-build/src/main/resources/META-INF/maven-faces-plugin/components/adf/SelectRange.xml
    incubator/adffaces/branches/matzew-mock-overhaul/adf-faces/adf-faces-build/src/main/resources/META-INF/maven-faces-plugin/components/adf/Table.xml
    incubator/adffaces/branches/matzew-mock-overhaul/adf-faces/adf-faces-build/src/main/resources/META-INF/maven-faces-plugin/components/adf/Tree.xml
    incubator/adffaces/branches/matzew-mock-overhaul/adf-faces/adf-faces-build/src/main/resources/META-INF/maven-faces-plugin/components/adf/core/CoreDocument.xml
    incubator/adffaces/branches/matzew-mock-overhaul/adf-faces/adf-faces-build/src/main/resources/META-INF/maven-faces-plugin/components/adf/core/CoreMessage.xml
    incubator/adffaces/branches/matzew-mock-overhaul/adf-faces/adf-faces-build/src/main/resources/META-INF/maven-faces-plugin/components/adf/core/CorePage.xml
    incubator/adffaces/branches/matzew-mock-overhaul/adf-faces/adf-faces-build/src/main/resources/META-INF/maven-faces-plugin/components/adf/core/CorePanelBorder.xml
    incubator/adffaces/branches/matzew-mock-overhaul/adf-faces/adf-faces-build/src/main/resources/META-INF/maven-faces-plugin/components/adf/core/CorePanelForm.xml
    incubator/adffaces/branches/matzew-mock-overhaul/adf-faces/adf-faces-build/src/main/resources/META-INF/maven-faces-plugin/components/adf/core/CorePanelGroup.xml
    incubator/adffaces/branches/matzew-mock-overhaul/adf-faces/adf-faces-build/src/main/resources/META-INF/maven-faces-plugin/components/adf/core/CorePanelHorizontal.xml
    incubator/adffaces/branches/matzew-mock-overhaul/adf-faces/adf-faces-build/src/main/resources/META-INF/maven-faces-plugin/components/adf/core/CorePanelLabelAndMessage.xml
    incubator/adffaces/branches/matzew-mock-overhaul/adf-faces/adf-faces-build/src/main/resources/META-INF/maven-faces-plugin/components/adf/core/CorePanelPage.xml
    incubator/adffaces/branches/matzew-mock-overhaul/adf-faces/adf-faces-build/src/main/resources/META-INF/maven-faces-plugin/components/adf/core/CorePanelPageHeader.xml
    incubator/adffaces/branches/matzew-mock-overhaul/adf-faces/adf-faces-build/src/main/resources/META-INF/maven-faces-plugin/components/adf/core/CorePanelSideBar.xml
    incubator/adffaces/branches/matzew-mock-overhaul/adf-faces/adf-faces-build/src/main/resources/META-INF/maven-faces-plugin/components/adf/core/CoreSelectManyShuttle.xml
    incubator/adffaces/branches/matzew-mock-overhaul/adf-faces/adf-faces-build/src/main/resources/META-INF/maven-faces-plugin/components/adf/core/CoreSelectOrderShuttle.xml
    incubator/adffaces/branches/matzew-mock-overhaul/adf-faces/adf-faces-build/src/main/resources/META-INF/maven-faces-plugin/components/adf/core/CoreShowDetail.xml
    incubator/adffaces/branches/matzew-mock-overhaul/adf-faces/adf-faces-build/src/main/resources/META-INF/maven-faces-plugin/components/adf/core/CoreTreeTable.xml
    incubator/adffaces/branches/matzew-mock-overhaul/adf-faces/adf-faces-build/src/main/resources/META-INF/maven-faces-plugin/components/adf/core/includes/CommonFormControls.xml
    incubator/adffaces/branches/matzew-mock-overhaul/adf-faces/adf-faces-build/src/main/resources/META-INF/maven-faces-plugin/components/adf/core/includes/CommonTableAttrs.xml
    incubator/adffaces/branches/matzew-mock-overhaul/adf-faces/adf-faces-build/src/main/resources/META-INF/maven-faces-plugin/components/adf/html/HtmlFrameBorderLayout.xml
    incubator/adffaces/branches/matzew-mock-overhaul/adf-faces/adf-faces-demo/src/main/webapp/WEB-INF/adf-faces-config.xml
    incubator/adffaces/branches/matzew-mock-overhaul/adf-faces/adf-faces-demo/src/main/webapp/demos/panelPageSkinDemo.jspx
    incubator/adffaces/branches/matzew-mock-overhaul/adf-faces/adf-faces-demo/src/main/webapp/skins/purple/purpleSkin.css
    incubator/adffaces/branches/matzew-mock-overhaul/adf-faces/adf-faces-impl/src/main/java/org/apache/myfaces/adfinternal/agent/AdfFacesAgentImpl.java
    incubator/adffaces/branches/matzew-mock-overhaul/adf-faces/adf-faces-impl/src/main/java/org/apache/myfaces/adfinternal/application/Structure.java
    incubator/adffaces/branches/matzew-mock-overhaul/adf-faces/adf-faces-impl/src/main/java/org/apache/myfaces/adfinternal/context/AdfFacesContextFactoryImpl.java
    incubator/adffaces/branches/matzew-mock-overhaul/adf-faces/adf-faces-impl/src/main/java/org/apache/myfaces/adfinternal/context/AdfFacesContextImpl.java
    incubator/adffaces/branches/matzew-mock-overhaul/adf-faces/adf-faces-impl/src/main/java/org/apache/myfaces/adfinternal/context/ExternalContextDecorator.java
    incubator/adffaces/branches/matzew-mock-overhaul/adf-faces/adf-faces-impl/src/main/java/org/apache/myfaces/adfinternal/context/FacesContextFactoryImpl.java
    incubator/adffaces/branches/matzew-mock-overhaul/adf-faces/adf-faces-impl/src/main/java/org/apache/myfaces/adfinternal/image/PropertyInstantiator.java
    incubator/adffaces/branches/matzew-mock-overhaul/adf-faces/adf-faces-impl/src/main/java/org/apache/myfaces/adfinternal/renderkit/ClassRendererInstantiator.java
    incubator/adffaces/branches/matzew-mock-overhaul/adf-faces/adf-faces-impl/src/main/java/org/apache/myfaces/adfinternal/resource/CoreRenderKitResourceLoader.java
    incubator/adffaces/branches/matzew-mock-overhaul/adf-faces/adf-faces-impl/src/main/java/org/apache/myfaces/adfinternal/share/expl/Coercions.java
    incubator/adffaces/branches/matzew-mock-overhaul/adf-faces/adf-faces-impl/src/main/java/org/apache/myfaces/adfinternal/share/io/ClassResourceNameResolver.java
    incubator/adffaces/branches/matzew-mock-overhaul/adf-faces/adf-faces-impl/src/main/java/org/apache/myfaces/adfinternal/share/nls/LocaleContext.java
    incubator/adffaces/branches/matzew-mock-overhaul/adf-faces/adf-faces-impl/src/main/java/org/apache/myfaces/adfinternal/share/xml/ClassParserFactory.java
    incubator/adffaces/branches/matzew-mock-overhaul/adf-faces/adf-faces-impl/src/main/java/org/apache/myfaces/adfinternal/share/xml/beans/IntrospectionBeanDef.java
    incubator/adffaces/branches/matzew-mock-overhaul/adf-faces/adf-faces-impl/src/main/java/org/apache/myfaces/adfinternal/skin/SkinCSSDocumentHandler.java
    incubator/adffaces/branches/matzew-mock-overhaul/adf-faces/adf-faces-impl/src/main/java/org/apache/myfaces/adfinternal/skin/SkinCSSParser.java
    incubator/adffaces/branches/matzew-mock-overhaul/adf-faces/adf-faces-impl/src/main/java/org/apache/myfaces/adfinternal/skin/SkinStyleSheetNode.java
    incubator/adffaces/branches/matzew-mock-overhaul/adf-faces/adf-faces-impl/src/main/java/org/apache/myfaces/adfinternal/skin/SkinStyleSheetParserUtils.java
    incubator/adffaces/branches/matzew-mock-overhaul/adf-faces/adf-faces-impl/src/main/java/org/apache/myfaces/adfinternal/skin/StyleSheetNameResolver.java
    incubator/adffaces/branches/matzew-mock-overhaul/adf-faces/adf-faces-impl/src/main/java/org/apache/myfaces/adfinternal/style/util/CSSGenerationUtils.java
    incubator/adffaces/branches/matzew-mock-overhaul/adf-faces/adf-faces-impl/src/main/java/org/apache/myfaces/adfinternal/style/xml/parse/StyleSheetDocument.java
    incubator/adffaces/branches/matzew-mock-overhaul/adf-faces/adf-faces-impl/src/main/java/org/apache/myfaces/adfinternal/style/xml/parse/StyleSheetNode.java
    incubator/adffaces/branches/matzew-mock-overhaul/adf-faces/adf-faces-impl/src/main/java/org/apache/myfaces/adfinternal/ui/ClassRendererInstantiator.java
    incubator/adffaces/branches/matzew-mock-overhaul/adf-faces/adf-faces-impl/src/main/java/org/apache/myfaces/adfinternal/ui/data/bind/ConvertBoundValue.java
    incubator/adffaces/branches/matzew-mock-overhaul/adf-faces/adf-faces-impl/src/main/java/org/apache/myfaces/adfinternal/ui/laf/base/BaseLafUtils.java
    incubator/adffaces/branches/matzew-mock-overhaul/adf-faces/adf-faces-impl/src/main/java/org/apache/myfaces/adfinternal/ui/laf/xml/parse/ClassRendererParser.java
    incubator/adffaces/branches/matzew-mock-overhaul/adf-faces/adf-faces-impl/src/main/java/org/apache/myfaces/adfinternal/ui/laf/xml/parse/InstanceIconParser.java
    incubator/adffaces/branches/matzew-mock-overhaul/adf-faces/adf-faces-impl/src/main/java/org/apache/myfaces/adfinternal/util/JavaIntrospector.java
    incubator/adffaces/branches/matzew-mock-overhaul/adf-faces/adf-faces-impl/src/main/java/org/apache/myfaces/adfinternal/webapp/AdfFacesFilterImpl.java
    incubator/adffaces/branches/matzew-mock-overhaul/adf-faces/adf-faces-impl/src/main/java/org/apache/myfaces/adfinternal/webapp/ConfigParser.java

Modified: incubator/adffaces/branches/matzew-mock-overhaul/adf-faces/adf-faces-api/src/main/java-templates/org/apache/myfaces/adf/component/UIXTableTemplate.java
URL: http://svn.apache.org/viewvc/incubator/adffaces/branches/matzew-mock-overhaul/adf-faces/adf-faces-api/src/main/java-templates/org/apache/myfaces/adf/component/UIXTableTemplate.java?rev=418880&r1=418879&r2=418880&view=diff
==============================================================================
--- incubator/adffaces/branches/matzew-mock-overhaul/adf-faces/adf-faces-api/src/main/java-templates/org/apache/myfaces/adf/component/UIXTableTemplate.java (original)
+++ incubator/adffaces/branches/matzew-mock-overhaul/adf-faces/adf-faces-api/src/main/java-templates/org/apache/myfaces/adf/component/UIXTableTemplate.java Mon Jul  3 17:14:52 2006
@@ -1,357 +1,357 @@
-/*
- * Copyright  2003-2006 The Apache Software Foundation.
- * 
- * Licensed under the Apache License, Version 2.0 (the "License");
- * you may not use this file except in compliance with the License.
- * You may obtain a copy of the License at
- * 
- *      http://www.apache.org/licenses/LICENSE-2.0
- * 
- * Unless required by applicable law or agreed to in writing, software
- * distributed under the License is distributed on an "AS IS" BASIS,
- * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
- * See the License for the specific language governing permissions and
- * limitations under the License.
- */
-package org.apache.myfaces.adf.component;
-
-import java.util.ArrayList;
-import java.util.Iterator;
-import java.util.List;
-
-import javax.faces.component.UIComponent;
-import javax.faces.context.FacesContext;
-import javax.faces.el.MethodBinding;
-import javax.faces.event.AbortProcessingException;
-import javax.faces.event.FacesEvent;
-import javax.faces.event.PhaseId;
-
-import org.apache.myfaces.adf.event.RowDisclosureEvent;
-import org.apache.myfaces.adf.event.RangeChangeEvent;
-import org.apache.myfaces.adf.event.SelectionEvent;
-import org.apache.myfaces.adf.event.SortEvent;
-import org.apache.myfaces.adf.model.CollectionModel;
-import org.apache.myfaces.adf.model.RowKeySet;
-import org.apache.myfaces.adf.model.RowKeySetImpl;
-
-/**
- * Base class for the Table component. The behaviour supported by this base class
- * include record navigation, sorting, selection and detail-disclosure.
- * <p>
- * @version $Name:  $ ($Revision: adfrt/faces/adf-faces-api/src/main/java-templates/oracle/adf/view/faces/component/UIXTableTemplate.java#0 $) $Date: 10-nov-2005.19:07:51 $
- * @author The Oracle ADF Faces Team
- */
-abstract public class UIXTableTemplate extends UIXIteratorTemplate
-  implements CollectionComponent
-{
-
-  public void setSortCriteria(List criteria)
-  {
-    _sortCriteria = criteria;
-    super.setSortCriteria(criteria);
-  }
-
-  /**
-   * Sets the phaseID of UI events depending on the "immediate" property.
-   */
-  public void queueEvent(FacesEvent event)
-  {
-    TableUtils.__handleQueueEvent(this, event);
-    super.queueEvent(event);
-  }
-
-  /**
-   * Delivers an event to the appropriate listeners.
-   * @param event
-   * @throws javax.faces.event.AbortProcessingException
-   */
-  public void broadcast(FacesEvent event)
-    throws AbortProcessingException
-  {
-    // the order of processing is
-    // 1. do any default action handling
-    // 2. invoke any actionListener method binding
-    // 3. call all the registered ActionListener instances.
-
-    // Deliver to the default RangeChangeListener
-    if (event instanceof RangeChangeEvent)
-    {
-      RangeChangeEvent rEvent = (RangeChangeEvent) event;
-      int first = rEvent.getNewStart();
-      setFirst(first);
-      //pu: Implicitly record a Change for 'first' attribute
-      addAttributeChange("first", new Integer(first));
-      
-      if ((first == 0) && (rEvent.getNewEnd() == getRowCount()))
-      {
-        setShowAll(true);
-        //pu: Implicitly record a Change for 'showAll' attribute
-        addAttributeChange("showAll", Boolean.TRUE);
-      }
-      else if (isShowAll())
-      {
-        setShowAll(false);
-        //pu: Implicitly record a Change for 'showAll' attribute
-        addAttributeChange("showAll", Boolean.FALSE);
-      }
-
-      __broadcast(event, getRangeChangeListener());
-    }
-    else if (event instanceof RowDisclosureEvent)
-    {
-      RowDisclosureEvent eEvent = (RowDisclosureEvent) event;
-      RowKeySet set = getDisclosedRowKeys();
-      set.addAll(eEvent.getAddedSet());
-      set.removeAll(eEvent.getRemovedSet());
-      __broadcast(event, getRowDisclosureListener());
-    }
-    else if (event instanceof SortEvent)
-    {
-      SortEvent sEvent = (SortEvent) event;
-      setSortCriteria(sEvent.getSortCriteria());
-      __broadcast(event, getSortListener());
-    }
-    else if (event instanceof SelectionEvent)
-    {
-      //pu: Implicitly record a Change for 'selectionState' attribute
-      addAttributeChange("selectedRowKeys",
-                         getSelectedRowKeys());
-      __broadcast(event, getSelectionListener());
-    }
-
-    super.broadcast(event);
-  }
-
-
-/**/  abstract public void setDisclosedRowKeys(RowKeySet state);
-/**/  abstract public RowKeySet getDisclosedRowKeys();
-/**/  public abstract RowKeySet getSelectedRowKeys();
-/**/  public abstract void setSelectedRowKeys(RowKeySet model);
-/**/  abstract public void setFirst(int first);
-/**/  abstract public void setShowAll(boolean showAll);
-/**/  abstract public boolean isShowAll();
-/**/  abstract public UIComponent getDetailStamp();
-/**/  public abstract MethodBinding getRangeChangeListener();
-/**/  public abstract MethodBinding getSortListener();
-/**/  public abstract MethodBinding getRowDisclosureListener();
-/**/  public abstract MethodBinding getSelectionListener();
-/**/  public abstract boolean isImmediate();
-
-  public Object saveState(FacesContext context)
-  {
-    Object o = super.saveState(context);
-    if ((o == null) &&
-        ((_sortCriteria == null) || _sortCriteria.isEmpty()))
-      return null;
-
-    return new Object[]{o, _sortCriteria};
-  }
-
-  public void restoreState(FacesContext context, Object state)
-  {
-    Object[] array = (Object[]) state;
-    super.restoreState(context, array[0]);
-
-
-    // Get the sort criteria - but *don't* call setSortCriteria()
-    // here;  doing so would require getting the collection model,
-    // and that may invoke client code that isn't quite in a state
-    // to be invoked, in part because component "binding"s have not been
-    // evaluated yet.
-    List criteria = (List) array[1];
-    _sortCriteria = criteria;
-  }
-
-  
-  /**
-   * Gets the data for the first selected row.
-   * This is useful when using EL to get at column data for the selected
-   * row when using a tableSelectOne.
-   * @return null if there is nothing selected in the table.
-   */
-  public Object getSelectedRowData() 
-  {
-    RowKeySet state = getSelectedRowKeys();
-    Iterator keys = state.iterator();
-    if (keys.hasNext()) 
-    {
-      Object key = keys.next();
-      CollectionModel model = getCollectionModel();
-      Object old = model.getRowKey();
-      try
-      {
-        model.setRowKey(key);
-        return model.getRowData();
-      }
-      finally
-      {
-        model.setRowKey(old);
-      }
-    }
-    return null;
-  }
-
-  protected final void processFacetsAndChildren(
-    FacesContext context,
-    PhaseId phaseId)
-  {
-    // process all the facets of this table just once
-    // (except for the "detailStamp" facet which must be processed once
-    // per row):
-    TableUtils.__processFacets(context, this, this, phaseId,
-      UIXTable.DETAIL_STAMP_FACET);
-
-    // process all the facets of this table's column children:
-    TableUtils.__processColumnFacets(context, this, this, phaseId);
-
-    // process all the children and the detailStamp as many times as necessary
-    _processStamps(context, phaseId);
-  }
-
-  /**
-   * Gets the stamps. This returns the children of this component plus
-   * the detail stamp (if any).
-   * @todo cache the result.
-   */
-  protected final List getStamps()
-  {
-    List children = super.getStamps();
-    UIComponent detail = getDetailStamp();
-    if (detail != null)
-    {
-      List stamps = new ArrayList(children.size() + 1);
-      stamps.addAll(children);
-      stamps.add(detail);
-      return stamps;
-    }
-    return children;
-  }
-
-  /**
-   * Saves the state for the given stamp.
-   * This method avoids changing the state of facets on columns.
-   */
-  protected final Object saveStampState(FacesContext context, UIComponent stamp)
-  {
-    if (stamp instanceof UIXColumn)
-    {
-      // if it is a column, we don't want the facets processed.
-      // Only the children:
-      return StampState.saveChildStampState(context, stamp, this);
-    }
-    else
-      return super.saveStampState(context, stamp);
-  }
-
-  /**
-   * Restores the state for the given stamp.
-   * This method avoids changing the state of facets on columns.
-   */
-  protected final void restoreStampState(FacesContext context, UIComponent stamp,
-                                         Object stampState)
-  {
-    if (stamp instanceof UIXColumn)
-    {
-      // if it is a column, we don't want the facets processed.
-      // Only the children:
-      StampState.restoreChildStampState(context, stamp, this, stampState);
-    }
-    else
-      super.restoreStampState(context, stamp, stampState);
-  }
-
-  protected final CollectionModel createCollectionModel(
-    CollectionModel current,
-    Object value)
-  {
-    CollectionModel model = super.createCollectionModel(current, value); 
-
-    getSelectedRowKeys().setCollectionModel(model);
-    getDisclosedRowKeys().setCollectionModel(model);
-
-    // If we were perviously sorted, restore the sort order:
-    if (_sortCriteria != null)
-    {
-      model.setSortCriteria(_sortCriteria);
-    }
-
-    return model;
-  }
-
-  /**
-   * Gets the internal state of this component.
-   */
-  Object __getMyStampState()
-  {
-    Object[] state = new Object[6];
-    state[0] = _sortCriteria;
-    state[1] = super.__getMyStampState();
-    state[2] = new Integer(getFirst());
-    state[3] = Boolean.valueOf(isShowAll());
-    state[4] = getSelectedRowKeys();
-    state[5] = getDisclosedRowKeys();
-    return state;
-  }
-  
-  /**
-   * Sets the internal state of this component.
-   * @param stampState the internal state is obtained from this object.
-   */
-  void __setMyStampState(Object stampState)
-  {
-    Object[] state = (Object[]) stampState;
-    _sortCriteria = (List) state[0];
-    super.__setMyStampState(state[1]);
-    setFirst(((Integer) state[2]).intValue());
-    setShowAll(Boolean.TRUE == state[3]);
-    setSelectedRowKeys((RowKeySet) state[4]);
-    setDisclosedRowKeys((RowKeySet) state[5]);
-  }
-
-  private void _processStamps(
-    FacesContext context,
-    PhaseId phaseId)
-  {
-    // Process all the children
-    CollectionModel tableData = getCollectionModel();
-    if (tableData.getRowCount() != 0)
-    {
-      int startIndex = getFirst();
-      int endIndex = isShowAll() ? getRowCount()-1 : TableUtils.getLast(this);
-
-      UIComponent detail = getDetailStamp();
-      RowKeySet disclosureState =
-        (detail == null) ? null : getDisclosedRowKeys();
-
-      for (int i = startIndex; i <= endIndex; i++)
-      {
-        setRowIndex(i);
-        TableUtils.__processStampedChildren(context, this, phaseId);
-
-        if ((disclosureState != null) && disclosureState.isContained())
-        {
-          assert getRowIndex() == i;
-          processComponent(context, detail, phaseId);
-        }
-      }
-
-      setRowIndex(-1);
-    }
-  }
-
-
-  void __init()
-  {
-    super.__init();
-    if (getSelectedRowKeys() == null)
-      setSelectedRowKeys(new RowKeySetImpl());
-    if (getDisclosedRowKeys() == null)
-      setDisclosedRowKeys(new RowKeySetImpl());
-    // if "first" is valueBound, we can't deal with it changing 
-    // during the lifecycle. So stash it as a local value.
-    // see bug 4537121:
-    setFirst(getFirst());
-  }
-
-  transient private List _sortCriteria = null;
+/*
+ * Copyright  2003-2006 The Apache Software Foundation.
+ * 
+ * Licensed under the Apache License, Version 2.0 (the "License");
+ * you may not use this file except in compliance with the License.
+ * You may obtain a copy of the License at
+ * 
+ *      http://www.apache.org/licenses/LICENSE-2.0
+ * 
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ */
+package org.apache.myfaces.adf.component;
+
+import java.util.ArrayList;
+import java.util.Iterator;
+import java.util.List;
+
+import javax.faces.component.UIComponent;
+import javax.faces.context.FacesContext;
+import javax.faces.el.MethodBinding;
+import javax.faces.event.AbortProcessingException;
+import javax.faces.event.FacesEvent;
+import javax.faces.event.PhaseId;
+
+import org.apache.myfaces.adf.event.RowDisclosureEvent;
+import org.apache.myfaces.adf.event.RangeChangeEvent;
+import org.apache.myfaces.adf.event.SelectionEvent;
+import org.apache.myfaces.adf.event.SortEvent;
+import org.apache.myfaces.adf.model.CollectionModel;
+import org.apache.myfaces.adf.model.RowKeySet;
+import org.apache.myfaces.adf.model.RowKeySetImpl;
+
+/**
+ * Base class for the Table component. The behaviour supported by this base class
+ * include record navigation, sorting, selection and detail-disclosure.
+ * <p>
+ * @version $Name:  $ ($Revision: adfrt/faces/adf-faces-api/src/main/java-templates/oracle/adf/view/faces/component/UIXTableTemplate.java#0 $) $Date: 10-nov-2005.19:07:51 $
+ * @author The Oracle ADF Faces Team
+ */
+abstract public class UIXTableTemplate extends UIXIteratorTemplate
+  implements CollectionComponent
+{
+
+  public void setSortCriteria(List criteria)
+  {
+    _sortCriteria = criteria;
+    super.setSortCriteria(criteria);
+  }
+
+  /**
+   * Sets the phaseID of UI events depending on the "immediate" property.
+   */
+  public void queueEvent(FacesEvent event)
+  {
+    TableUtils.__handleQueueEvent(this, event);
+    super.queueEvent(event);
+  }
+
+  /**
+   * Delivers an event to the appropriate listeners.
+   * @param event
+   * @throws javax.faces.event.AbortProcessingException
+   */
+  public void broadcast(FacesEvent event)
+    throws AbortProcessingException
+  {
+    // the order of processing is
+    // 1. do any default action handling
+    // 2. invoke any actionListener method binding
+    // 3. call all the registered ActionListener instances.
+
+    // Deliver to the default RangeChangeListener
+    if (event instanceof RangeChangeEvent)
+    {
+      RangeChangeEvent rEvent = (RangeChangeEvent) event;
+      int first = rEvent.getNewStart();
+      setFirst(first);
+      //pu: Implicitly record a Change for 'first' attribute
+      addAttributeChange("first", new Integer(first));
+      
+      if ((first == 0) && (rEvent.getNewEnd() == getRowCount()))
+      {
+        setShowAll(true);
+        //pu: Implicitly record a Change for 'showAll' attribute
+        addAttributeChange("showAll", Boolean.TRUE);
+      }
+      else if (isShowAll())
+      {
+        setShowAll(false);
+        //pu: Implicitly record a Change for 'showAll' attribute
+        addAttributeChange("showAll", Boolean.FALSE);
+      }
+
+      __broadcast(event, getRangeChangeListener());
+    }
+    else if (event instanceof RowDisclosureEvent)
+    {
+      RowDisclosureEvent eEvent = (RowDisclosureEvent) event;
+      RowKeySet set = getDisclosedRowKeys();
+      set.addAll(eEvent.getAddedSet());
+      set.removeAll(eEvent.getRemovedSet());
+      __broadcast(event, getRowDisclosureListener());
+    }
+    else if (event instanceof SortEvent)
+    {
+      SortEvent sEvent = (SortEvent) event;
+      setSortCriteria(sEvent.getSortCriteria());
+      __broadcast(event, getSortListener());
+    }
+    else if (event instanceof SelectionEvent)
+    {
+      //pu: Implicitly record a Change for 'selectionState' attribute
+      addAttributeChange("selectedRowKeys",
+                         getSelectedRowKeys());
+      __broadcast(event, getSelectionListener());
+    }
+
+    super.broadcast(event);
+  }
+
+
+/**/  abstract public void setDisclosedRowKeys(RowKeySet state);
+/**/  abstract public RowKeySet getDisclosedRowKeys();
+/**/  public abstract RowKeySet getSelectedRowKeys();
+/**/  public abstract void setSelectedRowKeys(RowKeySet model);
+/**/  abstract public void setFirst(int first);
+/**/  abstract public void setShowAll(boolean showAll);
+/**/  abstract public boolean isShowAll();
+/**/  abstract public UIComponent getDetailStamp();
+/**/  public abstract MethodBinding getRangeChangeListener();
+/**/  public abstract MethodBinding getSortListener();
+/**/  public abstract MethodBinding getRowDisclosureListener();
+/**/  public abstract MethodBinding getSelectionListener();
+/**/  public abstract boolean isImmediate();
+
+  public Object saveState(FacesContext context)
+  {
+    Object o = super.saveState(context);
+    if ((o == null) &&
+        ((_sortCriteria == null) || _sortCriteria.isEmpty()))
+      return null;
+
+    return new Object[]{o, _sortCriteria};
+  }
+
+  public void restoreState(FacesContext context, Object state)
+  {
+    Object[] array = (Object[]) state;
+    super.restoreState(context, array[0]);
+
+
+    // Get the sort criteria - but *don't* call setSortCriteria()
+    // here;  doing so would require getting the collection model,
+    // and that may invoke client code that isn't quite in a state
+    // to be invoked, in part because component "binding"s have not been
+    // evaluated yet.
+    List criteria = (List) array[1];
+    _sortCriteria = criteria;
+  }
+
+  
+  /**
+   * Gets the data for the first selected row.
+   * This is useful when using EL to get at column data for the selected
+   * row when using a tableSelectOne.
+   * @return null if there is nothing selected in the table.
+   */
+  public Object getSelectedRowData() 
+  {
+    RowKeySet state = getSelectedRowKeys();
+    Iterator keys = state.iterator();
+    if (keys.hasNext()) 
+    {
+      Object key = keys.next();
+      CollectionModel model = getCollectionModel();
+      Object old = model.getRowKey();
+      try
+      {
+        model.setRowKey(key);
+        return model.getRowData();
+      }
+      finally
+      {
+        model.setRowKey(old);
+      }
+    }
+    return null;
+  }
+
+  protected final void processFacetsAndChildren(
+    FacesContext context,
+    PhaseId phaseId)
+  {
+    // process all the facets of this table just once
+    // (except for the "detailStamp" facet which must be processed once
+    // per row):
+    TableUtils.__processFacets(context, this, this, phaseId,
+      UIXTable.DETAIL_STAMP_FACET);
+
+    // process all the facets of this table's column children:
+    TableUtils.__processColumnFacets(context, this, this, phaseId);
+
+    // process all the children and the detailStamp as many times as necessary
+    _processStamps(context, phaseId);
+  }
+
+  /**
+   * Gets the stamps. This returns the children of this component plus
+   * the detail stamp (if any).
+   * @todo cache the result.
+   */
+  protected final List getStamps()
+  {
+    List children = super.getStamps();
+    UIComponent detail = getDetailStamp();
+    if (detail != null)
+    {
+      List stamps = new ArrayList(children.size() + 1);
+      stamps.addAll(children);
+      stamps.add(detail);
+      return stamps;
+    }
+    return children;
+  }
+
+  /**
+   * Saves the state for the given stamp.
+   * This method avoids changing the state of facets on columns.
+   */
+  protected final Object saveStampState(FacesContext context, UIComponent stamp)
+  {
+    if (stamp instanceof UIXColumn)
+    {
+      // if it is a column, we don't want the facets processed.
+      // Only the children:
+      return StampState.saveChildStampState(context, stamp, this);
+    }
+    else
+      return super.saveStampState(context, stamp);
+  }
+
+  /**
+   * Restores the state for the given stamp.
+   * This method avoids changing the state of facets on columns.
+   */
+  protected final void restoreStampState(FacesContext context, UIComponent stamp,
+                                         Object stampState)
+  {
+    if (stamp instanceof UIXColumn)
+    {
+      // if it is a column, we don't want the facets processed.
+      // Only the children:
+      StampState.restoreChildStampState(context, stamp, this, stampState);
+    }
+    else
+      super.restoreStampState(context, stamp, stampState);
+  }
+
+  protected final CollectionModel createCollectionModel(
+    CollectionModel current,
+    Object value)
+  {
+    CollectionModel model = super.createCollectionModel(current, value); 
+
+    getSelectedRowKeys().setCollectionModel(model);
+    getDisclosedRowKeys().setCollectionModel(model);
+
+    // If we were perviously sorted, restore the sort order:
+    if (_sortCriteria != null)
+    {
+      model.setSortCriteria(_sortCriteria);
+    }
+
+    return model;
+  }
+
+  /**
+   * Gets the internal state of this component.
+   */
+  Object __getMyStampState()
+  {
+    Object[] state = new Object[6];
+    state[0] = _sortCriteria;
+    state[1] = super.__getMyStampState();
+    state[2] = new Integer(getFirst());
+    state[3] = Boolean.valueOf(isShowAll());
+    state[4] = getSelectedRowKeys();
+    state[5] = getDisclosedRowKeys();
+    return state;
+  }
+  
+  /**
+   * Sets the internal state of this component.
+   * @param stampState the internal state is obtained from this object.
+   */
+  void __setMyStampState(Object stampState)
+  {
+    Object[] state = (Object[]) stampState;
+    _sortCriteria = (List) state[0];
+    super.__setMyStampState(state[1]);
+    setFirst(((Integer) state[2]).intValue());
+    setShowAll(Boolean.TRUE == state[3]);
+    setSelectedRowKeys((RowKeySet) state[4]);
+    setDisclosedRowKeys((RowKeySet) state[5]);
+  }
+
+  private void _processStamps(
+    FacesContext context,
+    PhaseId phaseId)
+  {
+    // Process all the children
+    CollectionModel tableData = getCollectionModel();
+    if (tableData.getRowCount() != 0)
+    {
+      int startIndex = getFirst();
+      int endIndex = isShowAll() ? getRowCount()-1 : TableUtils.getLast(this);
+
+      UIComponent detail = getDetailStamp();
+      RowKeySet disclosureState =
+        (detail == null) ? null : getDisclosedRowKeys();
+
+      for (int i = startIndex; i <= endIndex; i++)
+      {
+        setRowIndex(i);
+        TableUtils.__processStampedChildren(context, this, phaseId);
+
+        if ((disclosureState != null) && disclosureState.isContained())
+        {
+          assert getRowIndex() == i;
+          processComponent(context, detail, phaseId);
+        }
+      }
+
+      setRowIndex(-1);
+    }
+  }
+
+
+  void __init()
+  {
+    super.__init();
+    if (getSelectedRowKeys() == null)
+      setSelectedRowKeys(new RowKeySetImpl());
+    if (getDisclosedRowKeys() == null)
+      setDisclosedRowKeys(new RowKeySetImpl());
+    // if "first" is valueBound, we can't deal with it changing 
+    // during the lifecycle. So stash it as a local value.
+    // see bug 4537121:
+    setFirst(getFirst());
+  }
+
+  transient private List _sortCriteria = null;
 }

Modified: incubator/adffaces/branches/matzew-mock-overhaul/adf-faces/adf-faces-api/src/main/java-templates/org/apache/myfaces/adf/component/UIXTreeTableTemplate.java
URL: http://svn.apache.org/viewvc/incubator/adffaces/branches/matzew-mock-overhaul/adf-faces/adf-faces-api/src/main/java-templates/org/apache/myfaces/adf/component/UIXTreeTableTemplate.java?rev=418880&r1=418879&r2=418880&view=diff
==============================================================================
--- incubator/adffaces/branches/matzew-mock-overhaul/adf-faces/adf-faces-api/src/main/java-templates/org/apache/myfaces/adf/component/UIXTreeTableTemplate.java (original)
+++ incubator/adffaces/branches/matzew-mock-overhaul/adf-faces/adf-faces-api/src/main/java-templates/org/apache/myfaces/adf/component/UIXTreeTableTemplate.java Mon Jul  3 17:14:52 2006
@@ -257,6 +257,10 @@
     UIComponent nodeStamp = getNodeStamp();
     // process any facets of the nodeStamp column:
     TableUtils.__processFacets(context, this, nodeStamp, phaseId, null);
+
+    // process all the facets of this table's column children:
+    TableUtils.__processColumnFacets(context, this, this, phaseId);
+
     // recursively process any grandchild columns of the nodeStamp column:
     TableUtils.__processColumnFacets(context, this, nodeStamp, phaseId);
 

Modified: incubator/adffaces/branches/matzew-mock-overhaul/adf-faces/adf-faces-api/src/main/java/org/apache/myfaces/adf/component/ChildArrayList.java
URL: http://svn.apache.org/viewvc/incubator/adffaces/branches/matzew-mock-overhaul/adf-faces/adf-faces-api/src/main/java/org/apache/myfaces/adf/component/ChildArrayList.java?rev=418880&r1=418879&r2=418880&view=diff
==============================================================================
--- incubator/adffaces/branches/matzew-mock-overhaul/adf-faces/adf-faces-api/src/main/java/org/apache/myfaces/adf/component/ChildArrayList.java (original)
+++ incubator/adffaces/branches/matzew-mock-overhaul/adf-faces/adf-faces-api/src/main/java/org/apache/myfaces/adf/component/ChildArrayList.java Mon Jul  3 17:14:52 2006
@@ -45,9 +45,16 @@
       throw new IndexOutOfBoundsException("index:"+index+" size:"+size());
 
     UIComponent child = (UIComponent) element;
-    if (child.getParent() != null)
+
+    UIComponent oldParent = child.getParent();
+    if (oldParent != null)
     {
-      index = __removeFromParent(child, index);
+      int adjustedIndex = __removeFromParent(child, index);
+      // Only adjust the index when the child is re-added to the same parent
+      if (oldParent == _parent)
+      {
+        index = adjustedIndex; 
+      }
     }
 
     child.setParent(_parent);

Modified: incubator/adffaces/branches/matzew-mock-overhaul/adf-faces/adf-faces-api/src/main/java/org/apache/myfaces/adf/component/TableUtils.java
URL: http://svn.apache.org/viewvc/incubator/adffaces/branches/matzew-mock-overhaul/adf-faces/adf-faces-api/src/main/java/org/apache/myfaces/adf/component/TableUtils.java?rev=418880&r1=418879&r2=418880&view=diff
==============================================================================
--- incubator/adffaces/branches/matzew-mock-overhaul/adf-faces/adf-faces-api/src/main/java/org/apache/myfaces/adf/component/TableUtils.java (original)
+++ incubator/adffaces/branches/matzew-mock-overhaul/adf-faces/adf-faces-api/src/main/java/org/apache/myfaces/adf/component/TableUtils.java Mon Jul  3 17:14:52 2006
@@ -13,309 +13,309 @@
 * See the License for the specific language governing permissions and
 * limitations under the License.
 */
-package org.apache.myfaces.adf.component;
-import java.util.List;
-import java.util.Map;
-
-import javax.faces.component.UIComponent;
-import javax.faces.context.FacesContext;
-import javax.faces.event.FacesEvent;
-import javax.faces.event.PhaseId;
-
-import org.apache.myfaces.adf.event.DisclosureEvent;
-import org.apache.myfaces.adf.event.RowDisclosureEvent;
-import org.apache.myfaces.adf.event.FocusEvent;
-import org.apache.myfaces.adf.event.RangeChangeEvent;
-import org.apache.myfaces.adf.event.SelectionEvent;
-import org.apache.myfaces.adf.event.SortEvent;
-import org.apache.myfaces.adf.model.ModelUtils;
-import org.apache.myfaces.adf.model.RowKeySet;
-import org.apache.myfaces.adf.model.TreeModel;
-
-/**
- * utility methods for dealing with tables.
- * @author The Oracle ADF Faces Team
- */
-public final class TableUtils 
-{
-
-  /**
-   * Gets the index of the last visible row that should be
-   * displayed by the given table. This is usually 
-   * {@link CollectionComponent#getFirst} added to
-   * {@link CollectionComponent#getRows} minus 1, but it changes if 
-   * {@link CollectionComponent#getRowCount} returns
-   * insufficient rows.
-   * @return if this table is empty, this returns 
-   * {@link CollectionComponent#getFirst()} - 1
-   */
-  public static int getLast(CollectionComponent table)
-  {
-    return getLast(table, table.getFirst());
-  }
-
-  /**
-   * Gets the index of the last visible row that should be
-   * displayed by the given table. This is usually 
-   * rangeStart added to
-   * {@link CollectionComponent#getRows} minus 1, but it changes if 
-   * {@link CollectionComponent#getRowCount} returns
-   * insufficient rows.
-   * @return if this table is empty, this returns 
-   * rangeStart - 1
-   */
-  public static int getLast(CollectionComponent table, int rangeStart)
-  {
-    final int rangeEnd;
-    int blockSize = table.getRows();
-    // if the blockSize is zero, that means show everthing.
-    if (blockSize <= 0)
-    {
-      rangeEnd = Integer.MAX_VALUE;
-    }
-    else
-    {
-      rangeEnd = rangeStart + blockSize;
-    }
-    return ModelUtils.findLastIndex(table, rangeStart, rangeEnd) - 1;
-  }
-
-  /**
-   * Sets up an EL variable on the requestScope.
-   * @param name The name of the EL variable
-   * @param value The value of the EL variable
-   * @return any old value that was bound to the EL variable, or null
-   * if there was no old value.
-   */
-  public static Object setupELVariable(FacesContext context, String name, Object value)
-  {
-    Map requestMap = context.getExternalContext().getRequestMap();
-    if (value == null)
-      return requestMap.remove(name);
-    else
-      return requestMap.put(name, value);
-  }
-
-  /**
-   * Perform a safe expand all.
-   * Checks to make sure that a complete expand-all operation won't result in
-   * too many nodes being displayed to the user. If too many nodes will end
-   * up being displayed, this method only expands the immediate children before
-   * terminating. Otherwise, a complete expand-all operation is performed.
-   * @param maxSize the maximum number of nodes to display. A complete expand-all
-   * operation will not take place if more than this number of nodes 
-   * will end up being displayed.
-   * @param model this tree model must have its path pointing to a particular 
-   * node which must be a container.
-   */
-  static void __doSafeExpandAll(TreeModel model, RowKeySet state, int maxSize)
-  {
-    int size = _getSizeOfTree(model, maxSize);
-    if ((size < 0) || (size > maxSize))
-    {
-      // not safe to do expand all.
-      // first expand the current node:
-      state.add();
-      
-      // now only expand immediate children:
-      model.enterContainer();
-      int i=0;
-      while(true)
-      {
-        model.setRowIndex(i++);
-        if (!model.isRowAvailable())
-          break;
-        state.add();
-      }
-      model.exitContainer();
-    }
-    else // safe to do expand all:
-      state.addAll();
-  }
-
-  /**
-   * Computes the number of nodes in a subtree.
-   * @param model the path must point to a node.
-   * @param maxSize the maximum number of nodes that will be searched.
-   * this method returns once this limit is reached.
-   * @return -1 if the number of nodes is unknown.
-   * If the limit is hit, then returns the number of nodes that are known
-   * to exist at the time the limit was hit. This number may be larger than
-   * maxSize.
-   */
-  static int _getSizeOfTree(TreeModel model, int maxSize)
-  {
-    if (model.isRowAvailable() && model.isContainer())
-    {
-      model.enterContainer();
-      try
-      {
-        int size = model.getRowCount();
-        for(int i=0, sz=size; i<sz; i++)
-        {
-          if (size > maxSize)
-            return size;
-          model.setRowIndex(i);
-          int kidSize = _getSizeOfTree(model, maxSize - size);
-          if (kidSize < 0)
-            return -1;
-          size += kidSize;
-        }
-        return size;        
-      }
-      finally
-      {
-        model.exitContainer();
-      }
-    }
-    return 0;
-  }
-
-  /**
-   * This method sets the phaseID of the event
-   * according to the "immediate" property of this
-   * component.
-   * If "immediate" is set to true, this calls
-   * {@link FacesContext#renderResponse}
-   */
-  static void __handleQueueEvent(UIComponent comp, FacesEvent event)
-  {
-    if (_isImmediateEvent(comp, event))
-    {
-      String immediateAttr = UIXTree.IMMEDIATE_KEY.getName();
-      Object isImmediate = comp.getAttributes().get(immediateAttr);
-      if (Boolean.TRUE.equals(isImmediate))
-      {
-        event.setPhaseId(PhaseId.ANY_PHASE);
-        FacesContext context = FacesContext.getCurrentInstance();
-        context.renderResponse();
-      }
-      else
-      {
-        // the event should not execute before model updates are done. 
-        // otherwise, the updates will be done to the wrong rows.
-  
-        // we can't do this at the end of the UPDATE_MODEL phase because
-        // if there are errors during that phase, then we want to immediately render
-        // the response, and not deliver this ui event:
-        event.setPhaseId(PhaseId.INVOKE_APPLICATION);
-      }
-    }
-  }
-
-  /**
-   * Process all the facets of a component; these are
-   * generally not processed once per row.
-   * @param skipFacet the name of any facet that should not be processed 
-   * at this time.
-   */
-  static void __processFacets(
-    FacesContext context,
-    final UIXCollection table,
-    UIComponent  component,
-    final PhaseId phaseId,
-    String skipFacet)
-  {
-    Map facets = component.getFacets();
-    final UIComponent skip = (skipFacet != null)
-      ? (UIComponent) facets.get(skipFacet)
-      : null;
-                                           
-    new ChildLoop()
-    {
-      protected void process(FacesContext context, UIComponent facet)
-      {
-        if (facet != skip)
-          table.processComponent(context, facet, phaseId);
-      }
-    }.runAlways(context, facets.values());
-  }
-
-  /**
-   * Process all the facets of any children that are columns; these are
-   * generally not processed once per row.
-   */
-  static void __processColumnFacets(
-    FacesContext context,
-    final UIXCollection table,
-    UIComponent  column,
-    final PhaseId phaseId)
-  {
-    new ChildLoop()
-    {
-      protected void process(FacesContext context, UIComponent child)
-      {
-        if (child instanceof UIXColumn)
-        {
-          // process any facets of the child column:
-          __processFacets(context, table, child, phaseId, null);
-          // recursively process the facets of any grandchild columns:
-          __processColumnFacets(context, table, child, phaseId);
-        }
-      }
-    }.runAlways(context, column);
-  }
-
-  /**
-   * Process all the children of the given table
-   */
-  static void __processStampedChildren(
-    FacesContext context,
-    final UIXCollection table,
-    final PhaseId phaseId)
-  {
-    new ChildLoop()
-    {
-      protected void process(FacesContext context, UIComponent child)
-      {
-        table.processComponent(context, child, phaseId);
-      }
-    }.runAlways(context, table);
-  }
-  
-  /**
-   * Process all the children of the given table
-   */
-  static void __processChildren(
-    FacesContext context,
-    final UIXCollection comp,
-    final PhaseId phaseId)
-  {
-
-    // process the children
-    int childCount = comp.getChildCount();
-    if (childCount != 0)
-    {
-      List children = comp.getChildren();
-
-      for (int i = 0; i < childCount; i++)
-      {
-        UIComponent child = (UIComponent)children.get(i);
-        comp.processComponent(context, child, phaseId);
-      }
-    }          
-  }  
-
-  /**
-   * Checks to see if the given event could possible be affected by the 
-   * "immediate" property of the given component.
-   */
-  private static boolean _isImmediateEvent(UIComponent comp, FacesEvent event)
-  {
-    if (event.getComponent() == comp)
-    {
-      return 
-          (event instanceof RangeChangeEvent) ||
-          (event instanceof DisclosureEvent) ||
-          (event instanceof RowDisclosureEvent) ||
-          (event instanceof SelectionEvent) ||
-          (event instanceof SortEvent) ||
-          (event instanceof FocusEvent);
-    }
-    return false;
-  }
-
-  private TableUtils()
-  {
-  }
+package org.apache.myfaces.adf.component;
+import java.util.List;
+import java.util.Map;
+
+import javax.faces.component.UIComponent;
+import javax.faces.context.FacesContext;
+import javax.faces.event.FacesEvent;
+import javax.faces.event.PhaseId;
+
+import org.apache.myfaces.adf.event.DisclosureEvent;
+import org.apache.myfaces.adf.event.RowDisclosureEvent;
+import org.apache.myfaces.adf.event.FocusEvent;
+import org.apache.myfaces.adf.event.RangeChangeEvent;
+import org.apache.myfaces.adf.event.SelectionEvent;
+import org.apache.myfaces.adf.event.SortEvent;
+import org.apache.myfaces.adf.model.ModelUtils;
+import org.apache.myfaces.adf.model.RowKeySet;
+import org.apache.myfaces.adf.model.TreeModel;
+
+/**
+ * utility methods for dealing with tables.
+ * @author The Oracle ADF Faces Team
+ */
+public final class TableUtils 
+{
+
+  /**
+   * Gets the index of the last visible row that should be
+   * displayed by the given table. This is usually 
+   * {@link CollectionComponent#getFirst} added to
+   * {@link CollectionComponent#getRows} minus 1, but it changes if 
+   * {@link CollectionComponent#getRowCount} returns
+   * insufficient rows.
+   * @return if this table is empty, this returns 
+   * {@link CollectionComponent#getFirst()} - 1
+   */
+  public static int getLast(CollectionComponent table)
+  {
+    return getLast(table, table.getFirst());
+  }
+
+  /**
+   * Gets the index of the last visible row that should be
+   * displayed by the given table. This is usually 
+   * rangeStart added to
+   * {@link CollectionComponent#getRows} minus 1, but it changes if 
+   * {@link CollectionComponent#getRowCount} returns
+   * insufficient rows.
+   * @return if this table is empty, this returns 
+   * rangeStart - 1
+   */
+  public static int getLast(CollectionComponent table, int rangeStart)
+  {
+    final int rangeEnd;
+    int blockSize = table.getRows();
+    // if the blockSize is zero, that means show everthing.
+    if (blockSize <= 0)
+    {
+      rangeEnd = Integer.MAX_VALUE;
+    }
+    else
+    {
+      rangeEnd = rangeStart + blockSize;
+    }
+    return ModelUtils.findLastIndex(table, rangeStart, rangeEnd) - 1;
+  }
+
+  /**
+   * Sets up an EL variable on the requestScope.
+   * @param name The name of the EL variable
+   * @param value The value of the EL variable
+   * @return any old value that was bound to the EL variable, or null
+   * if there was no old value.
+   */
+  public static Object setupELVariable(FacesContext context, String name, Object value)
+  {
+    Map requestMap = context.getExternalContext().getRequestMap();
+    if (value == null)
+      return requestMap.remove(name);
+    else
+      return requestMap.put(name, value);
+  }
+
+  /**
+   * Perform a safe expand all.
+   * Checks to make sure that a complete expand-all operation won't result in
+   * too many nodes being displayed to the user. If too many nodes will end
+   * up being displayed, this method only expands the immediate children before
+   * terminating. Otherwise, a complete expand-all operation is performed.
+   * @param maxSize the maximum number of nodes to display. A complete expand-all
+   * operation will not take place if more than this number of nodes 
+   * will end up being displayed.
+   * @param model this tree model must have its path pointing to a particular 
+   * node which must be a container.
+   */
+  static void __doSafeExpandAll(TreeModel model, RowKeySet state, int maxSize)
+  {
+    int size = _getSizeOfTree(model, maxSize);
+    if ((size < 0) || (size > maxSize))
+    {
+      // not safe to do expand all.
+      // first expand the current node:
+      state.add();
+      
+      // now only expand immediate children:
+      model.enterContainer();
+      int i=0;
+      while(true)
+      {
+        model.setRowIndex(i++);
+        if (!model.isRowAvailable())
+          break;
+        state.add();
+      }
+      model.exitContainer();
+    }
+    else // safe to do expand all:
+      state.addAll();
+  }
+
+  /**
+   * Computes the number of nodes in a subtree.
+   * @param model the path must point to a node.
+   * @param maxSize the maximum number of nodes that will be searched.
+   * this method returns once this limit is reached.
+   * @return -1 if the number of nodes is unknown.
+   * If the limit is hit, then returns the number of nodes that are known
+   * to exist at the time the limit was hit. This number may be larger than
+   * maxSize.
+   */
+  static int _getSizeOfTree(TreeModel model, int maxSize)
+  {
+    if (model.isRowAvailable() && model.isContainer())
+    {
+      model.enterContainer();
+      try
+      {
+        int size = model.getRowCount();
+        for(int i=0, sz=size; i<sz; i++)
+        {
+          if (size > maxSize)
+            return size;
+          model.setRowIndex(i);
+          int kidSize = _getSizeOfTree(model, maxSize - size);
+          if (kidSize < 0)
+            return -1;
+          size += kidSize;
+        }
+        return size;        
+      }
+      finally
+      {
+        model.exitContainer();
+      }
+    }
+    return 0;
+  }
+
+  /**
+   * This method sets the phaseID of the event
+   * according to the "immediate" property of this
+   * component.
+   * If "immediate" is set to true, this calls
+   * {@link FacesContext#renderResponse}
+   */
+  static void __handleQueueEvent(UIComponent comp, FacesEvent event)
+  {
+    if (_isImmediateEvent(comp, event))
+    {
+      String immediateAttr = UIXTree.IMMEDIATE_KEY.getName();
+      Object isImmediate = comp.getAttributes().get(immediateAttr);
+      if (Boolean.TRUE.equals(isImmediate))
+      {
+        event.setPhaseId(PhaseId.ANY_PHASE);
+        FacesContext context = FacesContext.getCurrentInstance();
+        context.renderResponse();
+      }
+      else
+      {
+        // the event should not execute before model updates are done. 
+        // otherwise, the updates will be done to the wrong rows.
+  
+        // we can't do this at the end of the UPDATE_MODEL phase because
+        // if there are errors during that phase, then we want to immediately render
+        // the response, and not deliver this ui event:
+        event.setPhaseId(PhaseId.INVOKE_APPLICATION);
+      }
+    }
+  }
+
+  /**
+   * Process all the facets of a component; these are
+   * generally not processed once per row.
+   * @param skipFacet the name of any facet that should not be processed 
+   * at this time.
+   */
+  static void __processFacets(
+    FacesContext context,
+    final UIXCollection table,
+    UIComponent  component,
+    final PhaseId phaseId,
+    String skipFacet)
+  {
+    Map facets = component.getFacets();
+    final UIComponent skip = (skipFacet != null)
+      ? (UIComponent) facets.get(skipFacet)
+      : null;
+                                           
+    new ChildLoop()
+    {
+      protected void process(FacesContext context, UIComponent facet)
+      {
+        if (facet != skip)
+          table.processComponent(context, facet, phaseId);
+      }
+    }.runAlways(context, facets.values());
+  }
+
+  /**
+   * Process all the facets of any children that are columns; these are
+   * generally not processed once per row.
+   */
+  static void __processColumnFacets(
+    FacesContext context,
+    final UIXCollection table,
+    UIComponent  column,
+    final PhaseId phaseId)
+  {
+    new ChildLoop()
+    {
+      protected void process(FacesContext context, UIComponent child)
+      {
+        if (child instanceof UIXColumn)
+        {
+          // process any facets of the child column:
+          __processFacets(context, table, child, phaseId, null);
+          // recursively process the facets of any grandchild columns:
+          __processColumnFacets(context, table, child, phaseId);
+        }
+      }
+    }.runAlways(context, column);
+  }
+
+  /**
+   * Process all the children of the given table
+   */
+  static void __processStampedChildren(
+    FacesContext context,
+    final UIXCollection table,
+    final PhaseId phaseId)
+  {
+    new ChildLoop()
+    {
+      protected void process(FacesContext context, UIComponent child)
+      {
+        table.processComponent(context, child, phaseId);
+      }
+    }.runAlways(context, table);
+  }
+  
+  /**
+   * Process all the children of the given table
+   */
+  static void __processChildren(
+    FacesContext context,
+    final UIXCollection comp,
+    final PhaseId phaseId)
+  {
+
+    // process the children
+    int childCount = comp.getChildCount();
+    if (childCount != 0)
+    {
+      List children = comp.getChildren();
+
+      for (int i = 0; i < childCount; i++)
+      {
+        UIComponent child = (UIComponent)children.get(i);
+        comp.processComponent(context, child, phaseId);
+      }
+    }          
+  }  
+
+  /**
+   * Checks to see if the given event could possible be affected by the 
+   * "immediate" property of the given component.
+   */
+  private static boolean _isImmediateEvent(UIComponent comp, FacesEvent event)
+  {
+    if (event.getComponent() == comp)
+    {
+      return 
+          (event instanceof RangeChangeEvent) ||
+          (event instanceof DisclosureEvent) ||
+          (event instanceof RowDisclosureEvent) ||
+          (event instanceof SelectionEvent) ||
+          (event instanceof SortEvent) ||
+          (event instanceof FocusEvent);
+    }
+    return false;
+  }
+
+  private TableUtils()
+  {
+  }
 }

Modified: incubator/adffaces/branches/matzew-mock-overhaul/adf-faces/adf-faces-api/src/main/java/org/apache/myfaces/adf/model/BaseMenuModel.java
URL: http://svn.apache.org/viewvc/incubator/adffaces/branches/matzew-mock-overhaul/adf-faces/adf-faces-api/src/main/java/org/apache/myfaces/adf/model/BaseMenuModel.java?rev=418880&r1=418879&r2=418880&view=diff
==============================================================================
--- incubator/adffaces/branches/matzew-mock-overhaul/adf-faces/adf-faces-api/src/main/java/org/apache/myfaces/adf/model/BaseMenuModel.java (original)
+++ incubator/adffaces/branches/matzew-mock-overhaul/adf-faces/adf-faces-api/src/main/java/org/apache/myfaces/adf/model/BaseMenuModel.java Mon Jul  3 17:14:52 2006
@@ -13,105 +13,105 @@
 * See the License for the specific language governing permissions and
 * limitations under the License.
 */
-package org.apache.myfaces.adf.model;
-
-
-/**
- * A base class which takes a TreeModel. Developers can extend this class and
- * just override the getFocusPath() method.
- *
- * @author The Oracle ADF Faces Team
- */
-public abstract class BaseMenuModel extends MenuModel
-{
-
-  /**
-   *
-   * @param modelObject the treeModel to use, this object will be passed to
-   * {@link ModelUtils#toTreeModel}.
-   */
-  public BaseMenuModel(Object modelObject)
-  {
-    _treeModel = ModelUtils.toTreeModel(modelObject);
-  }
-
-  /**
-   * no-arg constructor needed for managed-bean support.
-   * {@link #setWrappedData} must be called soon after constructing this
-   * instance.
-   */
-  protected BaseMenuModel()
-  {
-  }
-
-  public Object getContainerRowKey(Object childKey)
-  {
-    return _treeModel.getContainerRowKey(childKey);
-  }
-
-  public void enterContainer()
-  {
-    _treeModel.enterContainer();
-  }
-
-  public void exitContainer()
-  {
-    _treeModel.exitContainer();
-  }
-
-  public int getRowCount()
-  {
-    return _treeModel.getRowCount();
-  }
-
-  public Object getRowData()
-  {
-    return _treeModel.getRowData();
-  }
-
-  public int getRowIndex()
-  {
-    return _treeModel.getRowIndex();
-  }
-
-  public Object getRowKey()
-  {
-    return _treeModel.getRowKey();
-  }
-
-  public Object getWrappedData()
-  {
-    // since we don't know how to adapt an ordinary POJO into a
-    // treeModel, the wrappedData itself is a treeModel. so just return it:
-    return _treeModel;
-  }
-
-  public boolean isContainer()
-  {
-    return _treeModel.isContainer();
-  }
-
-  public boolean isRowAvailable()
-  {
-    return _treeModel.isRowAvailable();
-  }
-
-  public void setRowIndex(int index)
-  {
-    _treeModel.setRowIndex(index);
-  }
-
-  public void setRowKey(Object key)
-  {
-    _treeModel.setRowKey(key);
-  }
-
-  public void setWrappedData(Object data)
-  {
-    // since we don't know how to adapt an ordinary POJO into a
-    // treeModel, the ModelUtils call is currently no-op:
-    _treeModel = ModelUtils.toTreeModel(data);
-  }
-
-  private TreeModel _treeModel = null;
-}
+package org.apache.myfaces.adf.model;
+
+
+/**
+ * A base class which takes a TreeModel. Developers can extend this class and
+ * just override the getFocusRowKey() method.
+ *
+ * @author The Oracle ADF Faces Team
+ */
+public abstract class BaseMenuModel extends MenuModel
+{
+
+  /**
+   *
+   * @param modelObject the treeModel to use, this object will be passed to
+   * {@link ModelUtils#toTreeModel}.
+   */
+  public BaseMenuModel(Object modelObject)
+  {
+    _treeModel = ModelUtils.toTreeModel(modelObject);
+  }
+
+  /**
+   * no-arg constructor needed for managed-bean support.
+   * {@link #setWrappedData} must be called soon after constructing this
+   * instance.
+   */
+  protected BaseMenuModel()
+  {
+  }
+
+  public Object getContainerRowKey(Object childKey)
+  {
+    return _treeModel.getContainerRowKey(childKey);
+  }
+
+  public void enterContainer()
+  {
+    _treeModel.enterContainer();
+  }
+
+  public void exitContainer()
+  {
+    _treeModel.exitContainer();
+  }
+
+  public int getRowCount()
+  {
+    return _treeModel.getRowCount();
+  }
+
+  public Object getRowData()
+  {
+    return _treeModel.getRowData();
+  }
+
+  public int getRowIndex()
+  {
+    return _treeModel.getRowIndex();
+  }
+
+  public Object getRowKey()
+  {
+    return _treeModel.getRowKey();
+  }
+
+  public Object getWrappedData()
+  {
+    // since we don't know how to adapt an ordinary POJO into a
+    // treeModel, the wrappedData itself is a treeModel. so just return it:
+    return _treeModel;
+  }
+
+  public boolean isContainer()
+  {
+    return _treeModel.isContainer();
+  }
+
+  public boolean isRowAvailable()
+  {
+    return _treeModel.isRowAvailable();
+  }
+
+  public void setRowIndex(int index)
+  {
+    _treeModel.setRowIndex(index);
+  }
+
+  public void setRowKey(Object key)
+  {
+    _treeModel.setRowKey(key);
+  }
+
+  public void setWrappedData(Object data)
+  {
+    // since we don't know how to adapt an ordinary POJO into a
+    // treeModel, the ModelUtils call is currently no-op:
+    _treeModel = ModelUtils.toTreeModel(data);
+  }
+
+  private TreeModel _treeModel = null;
+}

Modified: incubator/adffaces/branches/matzew-mock-overhaul/adf-faces/adf-faces-api/src/main/java/org/apache/myfaces/adf/model/MenuModel.java
URL: http://svn.apache.org/viewvc/incubator/adffaces/branches/matzew-mock-overhaul/adf-faces/adf-faces-api/src/main/java/org/apache/myfaces/adf/model/MenuModel.java?rev=418880&r1=418879&r2=418880&view=diff
==============================================================================
--- incubator/adffaces/branches/matzew-mock-overhaul/adf-faces/adf-faces-api/src/main/java/org/apache/myfaces/adf/model/MenuModel.java (original)
+++ incubator/adffaces/branches/matzew-mock-overhaul/adf-faces/adf-faces-api/src/main/java/org/apache/myfaces/adf/model/MenuModel.java Mon Jul  3 17:14:52 2006
@@ -13,38 +13,38 @@
 * See the License for the specific language governing permissions and
 * limitations under the License.
 */
-package org.apache.myfaces.adf.model;
-
-/**
- * A MenuModel objects represents the menu structure of a page or application.
- * The menu model should know how to go from the current viewId to a focus rowKey.
- * <p>
- * MenuModel extends TreeModel and adds a single method,
- * getFocusRowKey(), which returns the rowKey of the focus page for the current view id.
- * <p>
- * Work on modeling menus continues and it is very possible that this class
- * will change in a future release.
- *
- * @author The Oracle ADF Faces Team
- */
-public abstract class MenuModel extends TreeModel
-{
-  /**
-   * Gets the focus rowKey for the current viewId.
-   * If there is no item
-   * in focus, getFocusRowKey should return null.
-   * </p>
-   * <p>The value returned from calling {@link #getRowKey} should remain the
-   * same before and after calling getFocusRowKey().
-   * Meaning initialPath and currPath should
-   * always be equal in the following example
-   * <pre><code>
-   *   Object initialPath = model.getRowKey();
-   *   Object focusPath   = model.getFocusRowKey();
-   *   Object currPath    = model.getRowKey();
-   * </code></pre>
-   * </p>
-   * @return the focus rowKey for the current viewId
-   */
-  public abstract Object getFocusRowKey();
+package org.apache.myfaces.adf.model;
+
+/**
+ * A MenuModel objects represents the menu structure of a page or application.
+ * The menu model should know how to go from the current viewId to a focus rowKey.
+ * <p>
+ * MenuModel extends TreeModel and adds a single method,
+ * getFocusRowKey(), which returns the rowKey of the focus page for the current view id.
+ * <p>
+ * Work on modeling menus continues and it is very possible that this class
+ * will change in a future release.
+ *
+ * @author The Oracle ADF Faces Team
+ */
+public abstract class MenuModel extends TreeModel
+{
+  /**
+   * Gets the focus rowKey for the current viewId.
+   * If there is no item
+   * in focus, getFocusRowKey should return null.
+   * </p>
+   * <p>The value returned from calling {@link #getRowKey} should remain the
+   * same before and after calling getFocusRowKey().
+   * Meaning initialPath and currPath should
+   * always be equal in the following example
+   * <pre><code>
+   *   Object initialPath = model.getRowKey();
+   *   Object focusPath   = model.getFocusRowKey();
+   *   Object currPath    = model.getRowKey();
+   * </code></pre>
+   * </p>
+   * @return the focus rowKey for the current viewId
+   */
+  public abstract Object getFocusRowKey();
 }

Modified: incubator/adffaces/branches/matzew-mock-overhaul/adf-faces/adf-faces-api/src/test/java/org/apache/myfaces/adf/component/AddRemoveTest.java
URL: http://svn.apache.org/viewvc/incubator/adffaces/branches/matzew-mock-overhaul/adf-faces/adf-faces-api/src/test/java/org/apache/myfaces/adf/component/AddRemoveTest.java?rev=418880&r1=418879&r2=418880&view=diff
==============================================================================
--- incubator/adffaces/branches/matzew-mock-overhaul/adf-faces/adf-faces-api/src/test/java/org/apache/myfaces/adf/component/AddRemoveTest.java (original)
+++ incubator/adffaces/branches/matzew-mock-overhaul/adf-faces/adf-faces-api/src/test/java/org/apache/myfaces/adf/component/AddRemoveTest.java Mon Jul  3 17:14:52 2006
@@ -73,6 +73,10 @@
     assertEquals(0, a.getChildren().size());
     assertEquals(2, e.getChildren().size());
     assertEquals(e, c.getParent());
+
+    //Make sure the children are in the right order under "e" 
+    assertEquals(e.getChildren().get(0), d);
+    assertEquals(e.getChildren().get(1), c);
   }
 
   public void testAddFacet()

Modified: incubator/adffaces/branches/matzew-mock-overhaul/adf-faces/adf-faces-build/src/main/resources/META-INF/maven-faces-plugin/components/adf/Column.xml
URL: http://svn.apache.org/viewvc/incubator/adffaces/branches/matzew-mock-overhaul/adf-faces/adf-faces-build/src/main/resources/META-INF/maven-faces-plugin/components/adf/Column.xml?rev=418880&r1=418879&r2=418880&view=diff
==============================================================================
--- incubator/adffaces/branches/matzew-mock-overhaul/adf-faces/adf-faces-build/src/main/resources/META-INF/maven-faces-plugin/components/adf/Column.xml (original)
+++ incubator/adffaces/branches/matzew-mock-overhaul/adf-faces/adf-faces-build/src/main/resources/META-INF/maven-faces-plugin/components/adf/Column.xml Mon Jul  3 17:14:52 2006
@@ -29,7 +29,6 @@
     <component-class>org.apache.myfaces.adf.component.UIXColumn</component-class>
     <facet>
       <description><![CDATA[the node to use to render this column's header.]]></description>
-      <display-name>header</display-name>
       <facet-name>header</facet-name>
       <facet-extension>
         <mfp:long-description>the node to use to render this column's header.</mfp:long-description>
@@ -48,7 +47,6 @@
     </facet>
     <facet>
       <description><![CDATA[the node to render as this column's footer.]]></description>
-      <display-name>footer</display-name>
       <facet-name>footer</facet-name>
     </facet>
     <property>

Modified: incubator/adffaces/branches/matzew-mock-overhaul/adf-faces/adf-faces-build/src/main/resources/META-INF/maven-faces-plugin/components/adf/NavigationLevel.xml
URL: http://svn.apache.org/viewvc/incubator/adffaces/branches/matzew-mock-overhaul/adf-faces/adf-faces-build/src/main/resources/META-INF/maven-faces-plugin/components/adf/NavigationLevel.xml?rev=418880&r1=418879&r2=418880&view=diff
==============================================================================
--- incubator/adffaces/branches/matzew-mock-overhaul/adf-faces/adf-faces-build/src/main/resources/META-INF/maven-faces-plugin/components/adf/NavigationLevel.xml (original)
+++ incubator/adffaces/branches/matzew-mock-overhaul/adf-faces/adf-faces-build/src/main/resources/META-INF/maven-faces-plugin/components/adf/NavigationLevel.xml Mon Jul  3 17:14:52 2006
@@ -32,7 +32,6 @@
       <description><![CDATA[the component to use to stamp each element in the
               navigation. A CommandNavigationItem is expected.]]>
       </description>
-      <display-name>nodeStamp</display-name>
       <facet-name>nodeStamp</facet-name>
       <facet-extension>
         <mfp:facet-metadata>

Modified: incubator/adffaces/branches/matzew-mock-overhaul/adf-faces/adf-faces-build/src/main/resources/META-INF/maven-faces-plugin/components/adf/NavigationPath.xml
URL: http://svn.apache.org/viewvc/incubator/adffaces/branches/matzew-mock-overhaul/adf-faces/adf-faces-build/src/main/resources/META-INF/maven-faces-plugin/components/adf/NavigationPath.xml?rev=418880&r1=418879&r2=418880&view=diff
==============================================================================
--- incubator/adffaces/branches/matzew-mock-overhaul/adf-faces/adf-faces-build/src/main/resources/META-INF/maven-faces-plugin/components/adf/NavigationPath.xml (original)
+++ incubator/adffaces/branches/matzew-mock-overhaul/adf-faces/adf-faces-build/src/main/resources/META-INF/maven-faces-plugin/components/adf/NavigationPath.xml Mon Jul  3 17:14:52 2006
@@ -34,7 +34,6 @@
       <description><![CDATA[the component to use to stamp each element in the
               navigation. A CommandNavigationItem is expected.]]>
       </description>
-      <display-name>nodeStamp</display-name>
       <facet-name>nodeStamp</facet-name>
       <facet-extension>
         <mfp:facet-metadata>

Modified: incubator/adffaces/branches/matzew-mock-overhaul/adf-faces/adf-faces-build/src/main/resources/META-INF/maven-faces-plugin/components/adf/NavigationTree.xml
URL: http://svn.apache.org/viewvc/incubator/adffaces/branches/matzew-mock-overhaul/adf-faces/adf-faces-build/src/main/resources/META-INF/maven-faces-plugin/components/adf/NavigationTree.xml?rev=418880&r1=418879&r2=418880&view=diff
==============================================================================
--- incubator/adffaces/branches/matzew-mock-overhaul/adf-faces/adf-faces-build/src/main/resources/META-INF/maven-faces-plugin/components/adf/NavigationTree.xml (original)
+++ incubator/adffaces/branches/matzew-mock-overhaul/adf-faces/adf-faces-build/src/main/resources/META-INF/maven-faces-plugin/components/adf/NavigationTree.xml Mon Jul  3 17:14:52 2006
@@ -38,7 +38,6 @@
               components with no behavior and most components that implement the
               EditableValueHolder or ActionSource interfaces.]]>
       </description>
-      <display-name>nodeStamp</display-name>
       <facet-name>nodeStamp</facet-name>
       <facet-extension>
         <mfp:facet-metadata>

Modified: incubator/adffaces/branches/matzew-mock-overhaul/adf-faces/adf-faces-build/src/main/resources/META-INF/maven-faces-plugin/components/adf/Page.xml
URL: http://svn.apache.org/viewvc/incubator/adffaces/branches/matzew-mock-overhaul/adf-faces/adf-faces-build/src/main/resources/META-INF/maven-faces-plugin/components/adf/Page.xml?rev=418880&r1=418879&r2=418880&view=diff
==============================================================================
--- incubator/adffaces/branches/matzew-mock-overhaul/adf-faces/adf-faces-build/src/main/resources/META-INF/maven-faces-plugin/components/adf/Page.xml (original)
+++ incubator/adffaces/branches/matzew-mock-overhaul/adf-faces/adf-faces-build/src/main/resources/META-INF/maven-faces-plugin/components/adf/Page.xml Mon Jul  3 17:14:52 2006
@@ -35,7 +35,6 @@
       <description><![CDATA[the component to use to stamp each element in the
               menu. A CommandNavigationItem is expected.]]>
       </description>
-      <display-name>nodeStamp</display-name>
       <facet-name>nodeStamp</facet-name>
       <facet-extension>
         <mfp:facet-metadata>

Modified: incubator/adffaces/branches/matzew-mock-overhaul/adf-faces/adf-faces-build/src/main/resources/META-INF/maven-faces-plugin/components/adf/Process.xml
URL: http://svn.apache.org/viewvc/incubator/adffaces/branches/matzew-mock-overhaul/adf-faces/adf-faces-build/src/main/resources/META-INF/maven-faces-plugin/components/adf/Process.xml?rev=418880&r1=418879&r2=418880&view=diff
==============================================================================
--- incubator/adffaces/branches/matzew-mock-overhaul/adf-faces/adf-faces-build/src/main/resources/META-INF/maven-faces-plugin/components/adf/Process.xml (original)
+++ incubator/adffaces/branches/matzew-mock-overhaul/adf-faces/adf-faces-build/src/main/resources/META-INF/maven-faces-plugin/components/adf/Process.xml Mon Jul  3 17:14:52 2006
@@ -31,7 +31,6 @@
       <description><![CDATA[the component to use to stamp each element in the
               process. A CommandNavigationItem is expected.]]>
       </description>
-      <display-name>nodeStamp</display-name>
       <facet-name>nodeStamp</facet-name>
       <facet-extension>
         <mfp:facet-metadata>

Modified: incubator/adffaces/branches/matzew-mock-overhaul/adf-faces/adf-faces-build/src/main/resources/META-INF/maven-faces-plugin/components/adf/SelectRange.xml
URL: http://svn.apache.org/viewvc/incubator/adffaces/branches/matzew-mock-overhaul/adf-faces/adf-faces-build/src/main/resources/META-INF/maven-faces-plugin/components/adf/SelectRange.xml?rev=418880&r1=418879&r2=418880&view=diff
==============================================================================
--- incubator/adffaces/branches/matzew-mock-overhaul/adf-faces/adf-faces-build/src/main/resources/META-INF/maven-faces-plugin/components/adf/SelectRange.xml (original)
+++ incubator/adffaces/branches/matzew-mock-overhaul/adf-faces/adf-faces-build/src/main/resources/META-INF/maven-faces-plugin/components/adf/SelectRange.xml Mon Jul  3 17:14:52 2006
@@ -32,7 +32,6 @@
     <component-class>org.apache.myfaces.adf.component.UIXSelectRange</component-class>
     <facet>
       <description><![CDATA[use to customize the label of each range selection.]]></description>
-      <display-name>rangeLabel</display-name>
       <facet-name>rangeLabel</facet-name>
       <facet-extension>
         <mfp:facet-metadata>

Modified: incubator/adffaces/branches/matzew-mock-overhaul/adf-faces/adf-faces-build/src/main/resources/META-INF/maven-faces-plugin/components/adf/Table.xml
URL: http://svn.apache.org/viewvc/incubator/adffaces/branches/matzew-mock-overhaul/adf-faces/adf-faces-build/src/main/resources/META-INF/maven-faces-plugin/components/adf/Table.xml?rev=418880&r1=418879&r2=418880&view=diff
==============================================================================
--- incubator/adffaces/branches/matzew-mock-overhaul/adf-faces/adf-faces-build/src/main/resources/META-INF/maven-faces-plugin/components/adf/Table.xml (original)
+++ incubator/adffaces/branches/matzew-mock-overhaul/adf-faces/adf-faces-build/src/main/resources/META-INF/maven-faces-plugin/components/adf/Table.xml Mon Jul  3 17:14:52 2006
@@ -37,7 +37,6 @@
       <description><![CDATA[the component to stamp below every row which is disclosed. Adding a
 detail facet will automatically cause the detail column to be displayed.]]>
       </description>
-      <display-name>detailStamp</display-name>
       <facet-name>detailStamp</facet-name>
       <facet-extension>
         <mfp:unsupported-agents>pda</mfp:unsupported-agents>

Modified: incubator/adffaces/branches/matzew-mock-overhaul/adf-faces/adf-faces-build/src/main/resources/META-INF/maven-faces-plugin/components/adf/Tree.xml
URL: http://svn.apache.org/viewvc/incubator/adffaces/branches/matzew-mock-overhaul/adf-faces/adf-faces-build/src/main/resources/META-INF/maven-faces-plugin/components/adf/Tree.xml?rev=418880&r1=418879&r2=418880&view=diff
==============================================================================
--- incubator/adffaces/branches/matzew-mock-overhaul/adf-faces/adf-faces-build/src/main/resources/META-INF/maven-faces-plugin/components/adf/Tree.xml (original)
+++ incubator/adffaces/branches/matzew-mock-overhaul/adf-faces/adf-faces-build/src/main/resources/META-INF/maven-faces-plugin/components/adf/Tree.xml Mon Jul  3 17:14:52 2006
@@ -40,7 +40,6 @@
               components with no behavior and most components that implement the
               EditableValueHolder or ActionSource interfaces.  In a treeTable, this must be a column.]]>
       </description>
-      <display-name>nodeStamp</display-name>
       <facet-name>nodeStamp</facet-name>
     </facet>
     <property>

Modified: incubator/adffaces/branches/matzew-mock-overhaul/adf-faces/adf-faces-build/src/main/resources/META-INF/maven-faces-plugin/components/adf/core/CoreDocument.xml
URL: http://svn.apache.org/viewvc/incubator/adffaces/branches/matzew-mock-overhaul/adf-faces/adf-faces-build/src/main/resources/META-INF/maven-faces-plugin/components/adf/core/CoreDocument.xml?rev=418880&r1=418879&r2=418880&view=diff
==============================================================================
--- incubator/adffaces/branches/matzew-mock-overhaul/adf-faces/adf-faces-build/src/main/resources/META-INF/maven-faces-plugin/components/adf/core/CoreDocument.xml (original)
+++ incubator/adffaces/branches/matzew-mock-overhaul/adf-faces/adf-faces-build/src/main/resources/META-INF/maven-faces-plugin/components/adf/core/CoreDocument.xml Mon Jul  3 17:14:52 2006
@@ -30,7 +30,6 @@
     <component-class>org.apache.myfaces.adf.component.core.CoreDocument</component-class>
     <facet>
       <description><![CDATA[Content to be rendered as meta data inside the "head" section.]]></description>
-      <display-name>metaContainer</display-name>
       <facet-name>metaContainer</facet-name>
     </facet>
     <property>

Modified: incubator/adffaces/branches/matzew-mock-overhaul/adf-faces/adf-faces-build/src/main/resources/META-INF/maven-faces-plugin/components/adf/core/CoreMessage.xml
URL: http://svn.apache.org/viewvc/incubator/adffaces/branches/matzew-mock-overhaul/adf-faces/adf-faces-build/src/main/resources/META-INF/maven-faces-plugin/components/adf/core/CoreMessage.xml?rev=418880&r1=418879&r2=418880&view=diff
==============================================================================
--- incubator/adffaces/branches/matzew-mock-overhaul/adf-faces/adf-faces-build/src/main/resources/META-INF/maven-faces-plugin/components/adf/core/CoreMessage.xml (original)
+++ incubator/adffaces/branches/matzew-mock-overhaul/adf-faces/adf-faces-build/src/main/resources/META-INF/maven-faces-plugin/components/adf/core/CoreMessage.xml Mon Jul  3 17:14:52 2006
@@ -34,7 +34,6 @@
     <xi:include href="includes/CoreJSEvents.xml" xpointer="/faces-config/component/*"/>
     <facet>
       <description>This facet should contain field level help.</description>
-      <display-name>help</display-name>
       <facet-name>help</facet-name>
       <facet-extension>
         <mfp:facet-metadata>

Modified: incubator/adffaces/branches/matzew-mock-overhaul/adf-faces/adf-faces-build/src/main/resources/META-INF/maven-faces-plugin/components/adf/core/CorePage.xml
URL: http://svn.apache.org/viewvc/incubator/adffaces/branches/matzew-mock-overhaul/adf-faces/adf-faces-build/src/main/resources/META-INF/maven-faces-plugin/components/adf/core/CorePage.xml?rev=418880&r1=418879&r2=418880&view=diff
==============================================================================
--- incubator/adffaces/branches/matzew-mock-overhaul/adf-faces/adf-faces-build/src/main/resources/META-INF/maven-faces-plugin/components/adf/core/CorePage.xml (original)
+++ incubator/adffaces/branches/matzew-mock-overhaul/adf-faces/adf-faces-build/src/main/resources/META-INF/maven-faces-plugin/components/adf/core/CorePage.xml Mon Jul  3 17:14:52 2006
@@ -29,7 +29,6 @@
     <component-class>org.apache.myfaces.adf.component.core.nav.CorePage</component-class>
     <facet>
       <description><![CDATA[This location typically contains a menuChoice.]]></description>
-      <display-name>menuSwitch</display-name>
       <facet-name>menuSwitch</facet-name>
       <facet-extension>
         <mfp:facet-metadata>
@@ -41,7 +40,6 @@
     </facet>
     <facet>
       <description><![CDATA[The context switcher of a page.]]></description>
-      <display-name>contextSwitcher</display-name>
       <facet-name>contextSwitcher</facet-name>
       <facet-extension>
         <mfp:facet-metadata>
@@ -52,7 +50,6 @@
     </facet>
     <facet>
       <description><![CDATA[The node to display messages. Usually contains a messages component.]]></description>
-      <display-name>messages</display-name>
       <facet-name>messages</facet-name>
       <facet-extension>
         <mfp:facet-metadata>
@@ -65,7 +62,6 @@
                 contains a medium size objectImage of the logo of the organization 
                 owning the page.]]>
       </description>
-      <display-name>branding</display-name>
       <facet-name>branding</facet-name>
       <facet-extension>
         <mfp:facet-metadata>
@@ -78,7 +74,6 @@
       <description><![CDATA[The application, module, or product branding region of the page.
                 This section typically contains a objectImage of the application logo.]]>
       </description>
-      <display-name>brandingApp</display-name>
       <facet-name>brandingApp</facet-name>
       <facet-extension>
         <mfp:facet-metadata>
@@ -96,7 +91,6 @@
                 then navigates into a tabbed application pertaining to that 
                 specific context.]]>
       </description>
-      <display-name>brandingAppContextual</display-name>
       <facet-name>brandingAppContextual</facet-name>
       <facet-extension>
         <mfp:unsupported-agents>pda phone voice</mfp:unsupported-agents>
@@ -104,7 +98,6 @@
     </facet>
     <facet>
       <description><![CDATA[The search region of the page.]]></description>
-      <display-name>search</display-name>
       <facet-name>search</facet-name>
       <facet-extension>
         <mfp:facet-metadata>
@@ -120,7 +113,6 @@
                 links that will bring the user back to each of the parent
                 pages of a tree of pages that he has navigated down into.]]>
       </description>
-      <display-name>location</display-name>
       <facet-name>location</facet-name>
       <facet-extension>
         <mfp:facet-metadata>
@@ -135,7 +127,6 @@
                 the user to move to the next or previous step in a process.
                 ]]>
       </description>
-      <display-name>actions</display-name>
       <facet-name>actions</facet-name>
       <facet-extension>
         <mfp:facet-metadata>
@@ -147,7 +138,6 @@
       <description><![CDATA[The copyright region of the page.  If present, this area
                 typically contains a outputText with the copyright information.]]>
       </description>
-      <display-name>appCopyright</display-name>
       <facet-name>appCopyright</facet-name>
       <facet-extension>
         <mfp:facet-metadata>
@@ -162,7 +152,6 @@
                 typically contains a commandLink to the privacy policy for the
                 application.]]>
       </description>
-      <display-name>appPrivacy</display-name>
       <facet-name>appPrivacy</facet-name>
       <facet-extension>
         <mfp:facet-metadata>
@@ -173,7 +162,6 @@
     </facet>
     <facet>
       <description><![CDATA[Area to put a commandLink to more information about the application.]]></description>
-      <display-name>appAbout</display-name>
       <facet-name>appAbout</facet-name>
       <facet-extension>
         <mfp:facet-metadata>
@@ -187,7 +175,6 @@
                 presenting additional information for the user. It often
                 contains a panelBox.]]>
       </description>
-      <display-name>infoSupplemental</display-name>
       <facet-name>infoSupplemental</facet-name>
       <facet-extension>
         <mfp:facet-metadata>
@@ -199,7 +186,6 @@
     <facet>
       <description><![CDATA[The return information region. Typically this will contain a "return to [X]" link.]]>
       </description>
-      <display-name>infoReturn</display-name>
       <facet-name>infoReturn</facet-name>
       <facet-extension>
         <mfp:facet-metadata>
@@ -212,7 +198,6 @@
       <description><![CDATA[The user information region.  This region provides a location for
                 presenting user login and connection information.]]>
       </description>
-      <display-name>infoUser</display-name>
       <facet-name>infoUser</facet-name>
       <facet-extension>
         <mfp:facet-metadata>
@@ -225,7 +210,6 @@
       <description><![CDATA[The footnote information region.  This region provides a location for
                 page-level information that is ancillary to the user's task.]]>
       </description>
-      <display-name>infoFootnote</display-name>
       <facet-name>infoFootnote</facet-name>
       <facet-extension>
         <mfp:facet-metadata>
@@ -241,7 +225,6 @@
                 A key notation is a legend used to define icons, elements, or
                 terms used within the page content.]]>
       </description>
-      <display-name>infoStatus</display-name>
       <facet-name>infoStatus</facet-name>
       <facet-extension>
         <mfp:facet-metadata>



Mime
View raw message