You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@myfaces.apache.org by lo...@apache.org on 2009/11/12 19:23:56 UTC

svn commit: r835483 [1/2] - in /myfaces/tobago/trunk: core/src/main/java/org/apache/myfaces/tobago/ajax/api/ core/src/main/java/org/apache/myfaces/tobago/component/ core/src/main/java/org/apache/myfaces/tobago/config/ core/src/main/java/org/apache/myfa...

Author: lofwyr
Date: Thu Nov 12 18:23:51 2009
New Revision: 835483

URL: http://svn.apache.org/viewvc?rev=835483&view=rev
Log:
TOBAGO-606: Layout Manager: cleanup
 - simplify class hierarchy of renderers
 - use Measure instead of int
 - rename "rendererName" to "rendererType" where it is the rendererType

Removed:
    myfaces/tobago/trunk/core/src/main/java/org/apache/myfaces/tobago/renderkit/AbstractLayoutRenderer.java
    myfaces/tobago/trunk/core/src/main/java/org/apache/myfaces/tobago/renderkit/LayoutableRenderer.java
    myfaces/tobago/trunk/core/src/main/java/org/apache/myfaces/tobago/renderkit/LayoutableRendererBase.java
    myfaces/tobago/trunk/theme/scarborough/src/main/java/org/apache/myfaces/tobago/renderkit/html/scarborough/standard/tag/DefaultLayoutRenderer.java
    myfaces/tobago/trunk/theme/scarborough/src/main/java/org/apache/myfaces/tobago/renderkit/wml/
Modified:
    myfaces/tobago/trunk/core/src/main/java/org/apache/myfaces/tobago/ajax/api/AjaxUtils.java
    myfaces/tobago/trunk/core/src/main/java/org/apache/myfaces/tobago/component/AbstractUICell.java
    myfaces/tobago/trunk/core/src/main/java/org/apache/myfaces/tobago/component/AbstractUIData.java
    myfaces/tobago/trunk/core/src/main/java/org/apache/myfaces/tobago/config/ThemeConfig.java
    myfaces/tobago/trunk/core/src/main/java/org/apache/myfaces/tobago/context/ResourceManager.java
    myfaces/tobago/trunk/core/src/main/java/org/apache/myfaces/tobago/context/ResourceManagerImpl.java
    myfaces/tobago/trunk/core/src/main/java/org/apache/myfaces/tobago/layout/LayoutContext.java
    myfaces/tobago/trunk/core/src/main/java/org/apache/myfaces/tobago/renderkit/AbstractLayoutableRendererBaseWrapper.java
    myfaces/tobago/trunk/core/src/main/java/org/apache/myfaces/tobago/renderkit/AbstractRendererBaseWrapper.java
    myfaces/tobago/trunk/core/src/main/java/org/apache/myfaces/tobago/renderkit/BoxRendererBase.java
    myfaces/tobago/trunk/core/src/main/java/org/apache/myfaces/tobago/renderkit/CommandRendererBase.java
    myfaces/tobago/trunk/core/src/main/java/org/apache/myfaces/tobago/renderkit/InputRendererBase.java
    myfaces/tobago/trunk/core/src/main/java/org/apache/myfaces/tobago/renderkit/LayoutComponentRendererBase.java
    myfaces/tobago/trunk/core/src/main/java/org/apache/myfaces/tobago/renderkit/PageRendererBase.java
    myfaces/tobago/trunk/core/src/main/java/org/apache/myfaces/tobago/renderkit/RendererBase.java
    myfaces/tobago/trunk/core/src/main/java/org/apache/myfaces/tobago/renderkit/RendererBaseWrapper.java
    myfaces/tobago/trunk/core/src/main/java/org/apache/myfaces/tobago/renderkit/SelectManyRendererBase.java
    myfaces/tobago/trunk/core/src/main/java/org/apache/myfaces/tobago/taglib/component/CellTagDeclaration.java
    myfaces/tobago/trunk/core/src/main/java/org/apache/myfaces/tobago/taglib/component/InTagDeclaration.java
    myfaces/tobago/trunk/core/src/main/java/org/apache/myfaces/tobago/taglib/decl/HasSpacing.java
    myfaces/tobago/trunk/core/src/main/java/org/apache/myfaces/tobago/taglib/decl/IsGridLayoutComponent.java
    myfaces/tobago/trunk/core/src/main/java/org/apache/myfaces/tobago/taglib/decl/IsGridLayoutComponentWithDeprecatedDimension.java
    myfaces/tobago/trunk/core/src/main/java/org/apache/myfaces/tobago/util/ComponentUtils.java
    myfaces/tobago/trunk/core/src/main/java/org/apache/myfaces/tobago/util/EncodeAjaxCallback.java
    myfaces/tobago/trunk/core/src/main/java/org/apache/myfaces/tobago/webapp/TobagoResponseWriterImpl.java
    myfaces/tobago/trunk/example/demo/src/main/java/org/apache/myfaces/tobago/example/demo/clientConfig/ThemeConfigViewController.java
    myfaces/tobago/trunk/example/test/src/main/webapp/tc/reload/tip.xhtml
    myfaces/tobago/trunk/extension/deprecation/src/main/java/org/apache/myfaces/tobago/component/ComponentUtil.java
    myfaces/tobago/trunk/extension/deprecation/src/main/java/org/apache/myfaces/tobago/renderkit/html/util/HtmlRendererUtil.java
    myfaces/tobago/trunk/extension/math/src/main/java/org/apache/myfaces/tobago/component/UIEquationGridLayout.java
    myfaces/tobago/trunk/sandbox/src/main/java/org/apache/myfaces/tobago/renderkit/fo/standard/standard/tag/FoRendererBase.java
    myfaces/tobago/trunk/sandbox/src/main/java/org/apache/myfaces/tobago/renderkit/fo/standard/standard/tag/MessagesRenderer.java
    myfaces/tobago/trunk/sandbox/src/main/java/org/apache/myfaces/tobago/renderkit/fo/standard/standard/tag/OutRenderer.java
    myfaces/tobago/trunk/sandbox/src/main/java/org/apache/myfaces/tobago/renderkit/html/sandbox/standard/tag/InputNumberSliderRenderer.java
    myfaces/tobago/trunk/sandbox/src/main/java/org/apache/myfaces/tobago/renderkit/wml/standard/standard/tag/ButtonRenderer.java
    myfaces/tobago/trunk/sandbox/src/main/java/org/apache/myfaces/tobago/renderkit/wml/standard/standard/tag/InRenderer.java
    myfaces/tobago/trunk/sandbox/src/main/java/org/apache/myfaces/tobago/renderkit/wml/standard/standard/tag/PanelRenderer.java
    myfaces/tobago/trunk/sandbox/src/main/java/org/apache/myfaces/tobago/renderkit/wml/standard/standard/tag/SelectBooleanCheckboxRenderer.java
    myfaces/tobago/trunk/sandbox/src/main/java/org/apache/myfaces/tobago/renderkit/wml/standard/standard/tag/SelectOneChoiceRenderer.java
    myfaces/tobago/trunk/sandbox/src/main/java/org/apache/myfaces/tobago/taglib/sandbox/RichTextEditorTagDeclaration.java
    myfaces/tobago/trunk/src/docbook/tobago-tutorial.xml
    myfaces/tobago/trunk/theme/scarborough/src/main/java/org/apache/myfaces/tobago/renderkit/html/scarborough/standard/tag/ActionRenderer.java
    myfaces/tobago/trunk/theme/scarborough/src/main/java/org/apache/myfaces/tobago/renderkit/html/scarborough/standard/tag/BoxRenderer.java
    myfaces/tobago/trunk/theme/scarborough/src/main/java/org/apache/myfaces/tobago/renderkit/html/scarborough/standard/tag/ButtonRenderer.java
    myfaces/tobago/trunk/theme/scarborough/src/main/java/org/apache/myfaces/tobago/renderkit/html/scarborough/standard/tag/CalendarRenderer.java
    myfaces/tobago/trunk/theme/scarborough/src/main/java/org/apache/myfaces/tobago/renderkit/html/scarborough/standard/tag/CellRenderer.java
    myfaces/tobago/trunk/theme/scarborough/src/main/java/org/apache/myfaces/tobago/renderkit/html/scarborough/standard/tag/ColumnRenderer.java
    myfaces/tobago/trunk/theme/scarborough/src/main/java/org/apache/myfaces/tobago/renderkit/html/scarborough/standard/tag/ColumnSelectorRenderer.java
    myfaces/tobago/trunk/theme/scarborough/src/main/java/org/apache/myfaces/tobago/renderkit/html/scarborough/standard/tag/DatePickerRenderer.java
    myfaces/tobago/trunk/theme/scarborough/src/main/java/org/apache/myfaces/tobago/renderkit/html/scarborough/standard/tag/GridLayoutRenderer.java
    myfaces/tobago/trunk/theme/scarborough/src/main/java/org/apache/myfaces/tobago/renderkit/html/scarborough/standard/tag/ImageRenderer.java
    myfaces/tobago/trunk/theme/scarborough/src/main/java/org/apache/myfaces/tobago/renderkit/html/scarborough/standard/tag/LabelRenderer.java
    myfaces/tobago/trunk/theme/scarborough/src/main/java/org/apache/myfaces/tobago/renderkit/html/scarborough/standard/tag/MenuBarRenderer.java
    myfaces/tobago/trunk/theme/scarborough/src/main/java/org/apache/myfaces/tobago/renderkit/html/scarborough/standard/tag/MessagesRenderer.java
    myfaces/tobago/trunk/theme/scarborough/src/main/java/org/apache/myfaces/tobago/renderkit/html/scarborough/standard/tag/ObjectRenderer.java
    myfaces/tobago/trunk/theme/scarborough/src/main/java/org/apache/myfaces/tobago/renderkit/html/scarborough/standard/tag/OutRenderer.java
    myfaces/tobago/trunk/theme/scarborough/src/main/java/org/apache/myfaces/tobago/renderkit/html/scarborough/standard/tag/PanelRenderer.java
    myfaces/tobago/trunk/theme/scarborough/src/main/java/org/apache/myfaces/tobago/renderkit/html/scarborough/standard/tag/PopupRenderer.java
    myfaces/tobago/trunk/theme/scarborough/src/main/java/org/apache/myfaces/tobago/renderkit/html/scarborough/standard/tag/ProgressRenderer.java
    myfaces/tobago/trunk/theme/scarborough/src/main/java/org/apache/myfaces/tobago/renderkit/html/scarborough/standard/tag/SelectBooleanCheckboxRenderer.java
    myfaces/tobago/trunk/theme/scarborough/src/main/java/org/apache/myfaces/tobago/renderkit/html/scarborough/standard/tag/SelectItemsRenderer.java
    myfaces/tobago/trunk/theme/scarborough/src/main/java/org/apache/myfaces/tobago/renderkit/html/scarborough/standard/tag/SelectReferenceRenderer.java
    myfaces/tobago/trunk/theme/scarborough/src/main/java/org/apache/myfaces/tobago/renderkit/html/scarborough/standard/tag/SheetRenderer.java
    myfaces/tobago/trunk/theme/scarborough/src/main/java/org/apache/myfaces/tobago/renderkit/html/scarborough/standard/tag/SubviewRenderer.java
    myfaces/tobago/trunk/theme/scarborough/src/main/java/org/apache/myfaces/tobago/renderkit/html/scarborough/standard/tag/TabGroupRenderer.java
    myfaces/tobago/trunk/theme/scarborough/src/main/java/org/apache/myfaces/tobago/renderkit/html/scarborough/standard/tag/TabRenderer.java
    myfaces/tobago/trunk/theme/scarborough/src/main/java/org/apache/myfaces/tobago/renderkit/html/scarborough/standard/tag/ToolBarRendererBase.java
    myfaces/tobago/trunk/theme/scarborough/src/main/java/org/apache/myfaces/tobago/renderkit/html/scarborough/standard/tag/TreeDataRenderer.java
    myfaces/tobago/trunk/theme/scarborough/src/main/java/org/apache/myfaces/tobago/renderkit/html/scarborough/standard/tag/TreeRenderer.java
    myfaces/tobago/trunk/theme/scarborough/src/main/java/org/apache/myfaces/tobago/renderkit/html/scarborough/standard/tag/VerbatimRenderer.java
    myfaces/tobago/trunk/theme/scarborough/src/main/resources/org/apache/myfaces/tobago/renderkit/html/scarborough/standard/property/tobago-theme-config.properties
    myfaces/tobago/trunk/theme/standard/src/main/java/org/apache/myfaces/tobago/renderkit/html/standard/standard/tag/SeparatorRenderer.java
    myfaces/tobago/trunk/theme/standard/src/main/java/org/apache/myfaces/tobago/renderkit/html/standard/standard/tag/WizardRenderer.java
    myfaces/tobago/trunk/theme/standard/src/main/java/org/apache/myfaces/tobago/renderkit/html/util/HtmlRendererUtils.java
    myfaces/tobago/trunk/theme/standard/src/main/java/org/apache/myfaces/tobago/renderkit/util/RenderUtil.java
    myfaces/tobago/trunk/tobago-tool/tobago-tool-apt/src/main/java/org/apache/myfaces/tobago/apt/generate/ComponentInfo.java
    myfaces/tobago/trunk/tobago-tool/tobago-tool-apt/src/main/java/org/apache/myfaces/tobago/apt/generate/RendererInfo.java
    myfaces/tobago/trunk/tobago-tool/tobago-tool-apt/src/main/java/org/apache/myfaces/tobago/apt/generate/TagInfo.java
    myfaces/tobago/trunk/tobago-tool/tobago-tool-apt/src/main/resources/org/apache/myfaces/tobago/apt/renderer.stg
    myfaces/tobago/trunk/tobago-tool/tobago-tool-apt/src/main/resources/org/apache/myfaces/tobago/apt/tag1.1.stg
    myfaces/tobago/trunk/tobago-tool/tobago-tool-apt/src/main/resources/org/apache/myfaces/tobago/apt/tag1.2.stg

Modified: myfaces/tobago/trunk/core/src/main/java/org/apache/myfaces/tobago/ajax/api/AjaxUtils.java
URL: http://svn.apache.org/viewvc/myfaces/tobago/trunk/core/src/main/java/org/apache/myfaces/tobago/ajax/api/AjaxUtils.java?rev=835483&r1=835482&r2=835483&view=diff
==============================================================================
--- myfaces/tobago/trunk/core/src/main/java/org/apache/myfaces/tobago/ajax/api/AjaxUtils.java (original)
+++ myfaces/tobago/trunk/core/src/main/java/org/apache/myfaces/tobago/ajax/api/AjaxUtils.java Thu Nov 12 18:23:51 2009
@@ -21,6 +21,7 @@
 import org.apache.commons.lang.StringUtils;
 import org.apache.commons.logging.Log;
 import org.apache.commons.logging.LogFactory;
+import org.apache.myfaces.tobago.renderkit.RendererBase;
 import org.apache.myfaces.tobago.util.ComponentUtils;
 
 import javax.faces.component.UIComponent;
@@ -62,7 +63,7 @@
     if (!component.isRendered()) {
       return;
     }
-    Object renderer = ComponentUtils.getRenderer(facesContext, component);
+    RendererBase renderer = ComponentUtils.getRenderer(facesContext, component);
     if (renderer != null && renderer instanceof AjaxRenderer) {
       ((AjaxRenderer) renderer).encodeAjax(facesContext, component);
     }

Modified: myfaces/tobago/trunk/core/src/main/java/org/apache/myfaces/tobago/component/AbstractUICell.java
URL: http://svn.apache.org/viewvc/myfaces/tobago/trunk/core/src/main/java/org/apache/myfaces/tobago/component/AbstractUICell.java?rev=835483&r1=835482&r2=835483&view=diff
==============================================================================
--- myfaces/tobago/trunk/core/src/main/java/org/apache/myfaces/tobago/component/AbstractUICell.java (original)
+++ myfaces/tobago/trunk/core/src/main/java/org/apache/myfaces/tobago/component/AbstractUICell.java Thu Nov 12 18:23:51 2009
@@ -18,7 +18,7 @@
  */
 
 /**
- * @deprecated The Cell is deprecated since Tobago 1.1
+ * @deprecated The Cell is deprecated since Tobago 1.5.0
  */
 @Deprecated
 public abstract class AbstractUICell extends AbstractUIPanel {

Modified: myfaces/tobago/trunk/core/src/main/java/org/apache/myfaces/tobago/component/AbstractUIData.java
URL: http://svn.apache.org/viewvc/myfaces/tobago/trunk/core/src/main/java/org/apache/myfaces/tobago/component/AbstractUIData.java?rev=835483&r1=835482&r2=835483&view=diff
==============================================================================
--- myfaces/tobago/trunk/core/src/main/java/org/apache/myfaces/tobago/component/AbstractUIData.java (original)
+++ myfaces/tobago/trunk/core/src/main/java/org/apache/myfaces/tobago/component/AbstractUIData.java Thu Nov 12 18:23:51 2009
@@ -64,13 +64,13 @@
 
   /**
    * @see Facets
-   * @deprecated Please use Facets instead. Will be removed after Tobago 1.1 */
+   * @deprecated Please use Facets instead. Will be removed after Tobago 1.5.0 */
   @Deprecated
   public static final String FACET_SORTER = "sorter";
   public static final String SORTER_ID = "sorter";
   /**
    * @see Attributes
-   * @deprecated Please use Attributes instead. Will be removed after Tobago 1.1 */
+   * @deprecated Please use Attributes instead. Will be removed after Tobago 1.5.0 */
   @Deprecated
   public static final String ATTR_SCROLL_POSITION = "attrScrollPosition";
 

Modified: myfaces/tobago/trunk/core/src/main/java/org/apache/myfaces/tobago/config/ThemeConfig.java
URL: http://svn.apache.org/viewvc/myfaces/tobago/trunk/core/src/main/java/org/apache/myfaces/tobago/config/ThemeConfig.java?rev=835483&r1=835482&r2=835483&view=diff
==============================================================================
--- myfaces/tobago/trunk/core/src/main/java/org/apache/myfaces/tobago/config/ThemeConfig.java (original)
+++ myfaces/tobago/trunk/core/src/main/java/org/apache/myfaces/tobago/config/ThemeConfig.java Thu Nov 12 18:23:51 2009
@@ -17,20 +17,16 @@
  * limitations under the License.
  */
 
-import org.apache.commons.lang.ClassUtils;
 import org.apache.commons.logging.Log;
 import org.apache.commons.logging.LogFactory;
-import org.apache.myfaces.tobago.component.RendererTypes;
 import org.apache.myfaces.tobago.context.ClientProperties;
 import org.apache.myfaces.tobago.context.ResourceManager;
 import org.apache.myfaces.tobago.context.ResourceManagerFactory;
 import org.apache.myfaces.tobago.layout.Measure;
 import org.apache.myfaces.tobago.layout.PixelMeasure;
-import org.apache.myfaces.tobago.renderkit.RendererBase;
-import org.apache.myfaces.tobago.util.ComponentUtils;
+import org.apache.myfaces.tobago.util.Deprecation;
 
 import javax.faces.component.UIComponent;
-import javax.faces.component.UIInput;
 import javax.faces.component.UIViewRoot;
 import javax.faces.context.FacesContext;
 import java.util.Locale;
@@ -42,33 +38,22 @@
 
   public static final String THEME_CONFIG_CACHE = "org.apache.myfaces.tobago.config.ThemeConfig.CACHE";
 
+  /**
+   * @deprecated since 1.5.0, please use ThemeConfig.getMeasure()
+   */
+  @Deprecated
   public static int getValue(FacesContext facesContext, UIComponent component, String name) {
-
-    try {
-      return getValue0(facesContext, component, name);
-    } catch (Exception e) {
-      LOG.error("Can't take '" + name + "' for " + component + " from configuration: " + e.getMessage(), e);
-    }
-    return 0;
+    Deprecation.LOG.warn("please use ThemeConfig.getMeasure()");
+    return getMeasure(facesContext, component.getRendererType(), name).getPixel();
   }
 
-  public static boolean hasValue(FacesContext facesContext, UIComponent component,
-      String name) {
-    try {
-      getValue0(facesContext, component, name);
-      return true;
-    } catch (NullPointerException e) {
-      return false;
-    }
-  }
-
-  public static Measure getMeasure(FacesContext facesContext, UIComponent component, String name) {
-    try {
-      return new PixelMeasure(getValue0(facesContext, component, name));
-    } catch (Exception e) {
-      // XXX: not a good style to use exception for this normal behaviour, use Integer als result type of getValue0()
-      return null;
-    }
+  /**
+   * @deprecated since 1.5.0, please use ThemeConfig.getMeasure()
+   */
+  @Deprecated
+  public static boolean hasValue(FacesContext facesContext, UIComponent component, String name) {
+    Deprecation.LOG.warn("please use ThemeConfig.getMeasure()");
+    return getMeasure(facesContext, component.getRendererType(), name) != null;
   }
 
   public static Measure getMeasure(FacesContext facesContext, String rendererType, String name) {
@@ -92,83 +77,6 @@
     return null;
   }
 
-  private static int getValue0(FacesContext facesContext, UIComponent component, String name) {
-    CacheKey key = new CacheKey(facesContext.getViewRoot(), component, name);
-    Map<CacheKey, Integer> cache
-        = (Map<CacheKey, Integer>) facesContext.getExternalContext().getApplicationMap().get(THEME_CONFIG_CACHE);
-
-    Integer value = cache.get(key);
-    if (value == null) {
-      value = createValue(facesContext, component, name);
-      cache.put(key, value);
-    }
-    if (value != null) {
-      return value;
-    } else {
-      // todo: remove condition, is only temporary to ignore wml errors.
-      if (!ClientProperties.getInstance(facesContext.getViewRoot()).getContentType().equals("wml")) {
-        throw new NullPointerException("No value configured");
-      }
-      // todo: remove, is only temporary to ignore wml errors.
-      return 0;
-    }
-  }
-
-  private static Integer createValue(FacesContext facesContext, UIComponent component, String name) {
-    String family;
-    String rendererType;
-    if (component != null) {
-      family = component.getFamily();
-      rendererType = component.getRendererType();
-    } else {
-      family = UIInput.COMPONENT_FAMILY;
-      rendererType = RendererTypes.IN;
-    }
-    Object renderer = ComponentUtils.getRenderer(facesContext, family, rendererType);
-
-    Class clazz = renderer.getClass();
-    if (LOG.isDebugEnabled()) {
-      LOG.debug("search for '" + name + "' in '" + clazz.getName() + "'");
-    }
-    ResourceManager resourceManager = ResourceManagerFactory.getResourceManager(facesContext);
-    UIViewRoot viewRoot = facesContext.getViewRoot();
-    while (clazz != null) {
-      String tag = getTagName(clazz);
-      if (LOG.isDebugEnabled()) {
-        LOG.debug("try " + tag);
-      }
-
-      String property = resourceManager.getThemeProperty(viewRoot, "tobago-theme-config", tag + "." + name);
-
-      if (property != null && property.length() > 0) {
-        if (LOG.isDebugEnabled()) {
-          LOG.debug("found " + property);
-        }
-        return new Integer(property);
-      }
-      clazz = clazz.getSuperclass();
-    }
-    if (LOG.isDebugEnabled()) {
-      LOG.debug("Theme property '" + name + "' not found for renderer: " + renderer.getClass()
-          + " with clientProperties='" + ClientProperties.getInstance(viewRoot).getId() + "'"
-          + " and locale='" + viewRoot.getLocale() + "'");
-    }
-    return null;
-  }
-
-  private static String getTagName(Class clazz) {
-    String className = ClassUtils.getShortClassName(clazz);
-    if (className.equals(ClassUtils.getShortClassName(RendererBase.class))) {
-      return "Tobago";
-    } else if (className.endsWith("Renderer")) {
-      return className.substring(0, className.lastIndexOf("Renderer"));
-    } else if (className.endsWith("RendererBase")) {
-      return className.substring(0, className.lastIndexOf("RendererBase")) + "Base";
-    }
-    return null;
-  }
-
-
   private static class CacheKey {
     private String clientProperties;
     private Locale locale;
@@ -239,7 +147,7 @@
       return "CacheKey(" + clientProperties
           + "," + locale
           + "," + rendererType
-          + "," + name +          ')';
+          + "," + name + ')';
     }
   }
 

Modified: myfaces/tobago/trunk/core/src/main/java/org/apache/myfaces/tobago/context/ResourceManager.java
URL: http://svn.apache.org/viewvc/myfaces/tobago/trunk/core/src/main/java/org/apache/myfaces/tobago/context/ResourceManager.java?rev=835483&r1=835482&r2=835483&view=diff
==============================================================================
--- myfaces/tobago/trunk/core/src/main/java/org/apache/myfaces/tobago/context/ResourceManager.java (original)
+++ myfaces/tobago/trunk/core/src/main/java/org/apache/myfaces/tobago/context/ResourceManager.java Thu Nov 12 18:23:51 2009
@@ -26,7 +26,7 @@
 
   String getProperty(UIViewRoot viewRoot, String bundle, String propertyKey);
 
-  Renderer getRenderer(UIViewRoot viewRoot, String name);
+  Renderer getRenderer(UIViewRoot viewRoot, String rendererType);
 
   String[] getScripts(UIViewRoot viewRoot, String name);
 

Modified: myfaces/tobago/trunk/core/src/main/java/org/apache/myfaces/tobago/context/ResourceManagerImpl.java
URL: http://svn.apache.org/viewvc/myfaces/tobago/trunk/core/src/main/java/org/apache/myfaces/tobago/context/ResourceManagerImpl.java?rev=835483&r1=835482&r2=835483&view=diff
==============================================================================
--- myfaces/tobago/trunk/core/src/main/java/org/apache/myfaces/tobago/context/ResourceManagerImpl.java (original)
+++ myfaces/tobago/trunk/core/src/main/java/org/apache/myfaces/tobago/context/ResourceManagerImpl.java Thu Nov 12 18:23:51 2009
@@ -324,32 +324,33 @@
     return searchtext.toString();
   }
 
-  public Renderer getRenderer(UIViewRoot viewRoot, String name) {
+  public Renderer getRenderer(UIViewRoot viewRoot, String rendererType) {
     Renderer renderer = null;
 
-    if (name != null) {
+    if (rendererType != null) {
       CacheKey key = getCacheKey(viewRoot);
 
-      RendererCacheKey rendererKey = new RendererCacheKey(key, name);
+      RendererCacheKey rendererKey = new RendererCacheKey(key, rendererType);
       renderer = rendererCache.get(rendererKey);
       if (renderer != null) {
         return renderer;
       }
+      String simpleClassName = null;
       try {
-        name = getRendererClassName(name);
-        List<Class> classes = getPaths(key.getClientProperties(), key.getLocale(), "", TAG, name, "",
+        simpleClassName = getRendererClassName(rendererType);
+        List<Class> classes = getPaths(key.getClientProperties(), key.getLocale(), "", TAG, simpleClassName, "",
             false, true, true, null, false, false);
         if (classes != null && !classes.isEmpty()) {
           Class clazz = classes.get(0);
           renderer = (Renderer) clazz.newInstance();
           rendererCache.put(rendererKey, renderer);
         } else {
-          LOG.error("Don't find any RendererClass for " + name + ". Please check you configuration.");
+          LOG.error("Don't find any RendererClass for " + simpleClassName + ". Please check you configuration.");
         }
       } catch (InstantiationException e) {
-        LOG.error("name = '" + name + "' clientProperties = '" + key.getClientPropertyId() + "'", e);
+        LOG.error("name = '" + simpleClassName + "' clientProperties = '" + key.getClientPropertyId() + "'", e);
       } catch (IllegalAccessException e) {
-        LOG.error("name = '" + name + "' clientProperties = '" + key.getClientPropertyId() + "'", e);
+        LOG.error("name = '" + simpleClassName + "' clientProperties = '" + key.getClientPropertyId() + "'", e);
       }
     }
     return renderer;

Modified: myfaces/tobago/trunk/core/src/main/java/org/apache/myfaces/tobago/layout/LayoutContext.java
URL: http://svn.apache.org/viewvc/myfaces/tobago/trunk/core/src/main/java/org/apache/myfaces/tobago/layout/LayoutContext.java?rev=835483&r1=835482&r2=835483&view=diff
==============================================================================
--- myfaces/tobago/trunk/core/src/main/java/org/apache/myfaces/tobago/layout/LayoutContext.java (original)
+++ myfaces/tobago/trunk/core/src/main/java/org/apache/myfaces/tobago/layout/LayoutContext.java Thu Nov 12 18:23:51 2009
@@ -67,20 +67,22 @@
     layoutManager.postProcessing(Orientation.VERTICAL);
 
     StringBuffer buffer = new StringBuffer("\n");
-    debug(buffer, container, 0);
+    debug(buffer, (UIComponent) container, 0);
     LOG.info(buffer);
   }
 
-  private void debug(StringBuffer buffer, LayoutObject component, int depth) {
+  private void debug(StringBuffer buffer, UIComponent component, int depth) {
     for (int i = 0; i < depth; i++) {
       buffer.append("  ");
     }
     buffer.append(component.getClass().getSimpleName());
-    buffer.append("(");
-    buffer.append(component.getWidth());
-    buffer.append(", ");
-    buffer.append(component.getHeight());
-    buffer.append(")");
+    if (component instanceof LayoutObject) {
+      buffer.append("(");
+      buffer.append(((LayoutObject)component).getWidth());
+      buffer.append(", ");
+      buffer.append(((LayoutObject)component).getHeight());
+      buffer.append(")");
+    }
     if (component instanceof LayoutContainer) {
       LayoutManager layoutManager = ((LayoutContainer) component).getLayoutManager();
       if (layoutManager instanceof AbstractUIGridLayout) {
@@ -89,10 +91,8 @@
       }
     }
     buffer.append("\n");
-    for (Object o : ((UIComponent) component).getChildren()) {
-      if (o instanceof LayoutObject) {
-        debug(buffer, (LayoutObject) o, depth + 2);
-      }
+    for (UIComponent child : component.getChildren()) {
+      debug(buffer, child, depth + 2);
     }
   }
 }

Modified: myfaces/tobago/trunk/core/src/main/java/org/apache/myfaces/tobago/renderkit/AbstractLayoutableRendererBaseWrapper.java
URL: http://svn.apache.org/viewvc/myfaces/tobago/trunk/core/src/main/java/org/apache/myfaces/tobago/renderkit/AbstractLayoutableRendererBaseWrapper.java?rev=835483&r1=835482&r2=835483&view=diff
==============================================================================
--- myfaces/tobago/trunk/core/src/main/java/org/apache/myfaces/tobago/renderkit/AbstractLayoutableRendererBaseWrapper.java (original)
+++ myfaces/tobago/trunk/core/src/main/java/org/apache/myfaces/tobago/renderkit/AbstractLayoutableRendererBaseWrapper.java Thu Nov 12 18:23:51 2009
@@ -24,11 +24,7 @@
 import javax.faces.context.FacesContext;
 
 public abstract class AbstractLayoutableRendererBaseWrapper extends AbstractRendererBaseWrapper
-    implements LayoutableRenderer, LayoutComponentRenderer {
-
-  protected final LayoutableRenderer getLayoutableRenderer(FacesContext facesContext) {
-    return (LayoutableRenderer) getRenderer(facesContext);
-  }
+    implements LayoutComponentRenderer {
 
   public Measure getWidth(FacesContext facesContext, UIComponent component) {
     return ((LayoutComponentRenderer) getRenderer(facesContext)).getWidth(facesContext, component);

Modified: myfaces/tobago/trunk/core/src/main/java/org/apache/myfaces/tobago/renderkit/AbstractRendererBaseWrapper.java
URL: http://svn.apache.org/viewvc/myfaces/tobago/trunk/core/src/main/java/org/apache/myfaces/tobago/renderkit/AbstractRendererBaseWrapper.java?rev=835483&r1=835482&r2=835483&view=diff
==============================================================================
--- myfaces/tobago/trunk/core/src/main/java/org/apache/myfaces/tobago/renderkit/AbstractRendererBaseWrapper.java (original)
+++ myfaces/tobago/trunk/core/src/main/java/org/apache/myfaces/tobago/renderkit/AbstractRendererBaseWrapper.java Thu Nov 12 18:23:51 2009
@@ -58,10 +58,6 @@
     getRenderer(facesContext).decode(facesContext, component);
   }
 
-  public final String getRendererName(String rendererType) {
-    return getRenderer(FacesContext.getCurrentInstance()).getRendererName(rendererType);
-  }
-
   @Deprecated
   public final int getConfiguredValue(FacesContext facesContext, UIComponent component, String key) {
     return ThemeConfig.getValue(facesContext, component, key);
@@ -106,12 +102,12 @@
 
   protected final RendererBase getRenderer(FacesContext facesContext) {
     RendererBase renderer = (RendererBase) ResourceManagerFactory.
-        getResourceManager(facesContext).getRenderer(facesContext.getViewRoot(), getRendererName());
+        getResourceManager(facesContext).getRenderer(facesContext.getViewRoot(), getRendererType());
     if (renderer == null) {
-      LOG.error("No Render found for "+ getRendererName() + " xxx " + this.getClass().getName());
+      LOG.error("No Render found for "+ getRendererType() + " xxx " + this.getClass().getName());
     }
     return renderer;
   }
 
-  protected abstract String getRendererName();
+  protected abstract String getRendererType();
 }

Modified: myfaces/tobago/trunk/core/src/main/java/org/apache/myfaces/tobago/renderkit/BoxRendererBase.java
URL: http://svn.apache.org/viewvc/myfaces/tobago/trunk/core/src/main/java/org/apache/myfaces/tobago/renderkit/BoxRendererBase.java?rev=835483&r1=835482&r2=835483&view=diff
==============================================================================
--- myfaces/tobago/trunk/core/src/main/java/org/apache/myfaces/tobago/renderkit/BoxRendererBase.java (original)
+++ myfaces/tobago/trunk/core/src/main/java/org/apache/myfaces/tobago/renderkit/BoxRendererBase.java Thu Nov 12 18:23:51 2009
@@ -26,7 +26,7 @@
 import org.apache.commons.logging.Log;
 import org.apache.commons.logging.LogFactory;
 
-public abstract class BoxRendererBase extends LayoutableRendererBase {
+public abstract class BoxRendererBase extends LayoutComponentRendererBase {
 
   private static final Log LOG = LogFactory.getLog(BoxRendererBase.class);
 

Modified: myfaces/tobago/trunk/core/src/main/java/org/apache/myfaces/tobago/renderkit/CommandRendererBase.java
URL: http://svn.apache.org/viewvc/myfaces/tobago/trunk/core/src/main/java/org/apache/myfaces/tobago/renderkit/CommandRendererBase.java?rev=835483&r1=835482&r2=835483&view=diff
==============================================================================
--- myfaces/tobago/trunk/core/src/main/java/org/apache/myfaces/tobago/renderkit/CommandRendererBase.java (original)
+++ myfaces/tobago/trunk/core/src/main/java/org/apache/myfaces/tobago/renderkit/CommandRendererBase.java Thu Nov 12 18:23:51 2009
@@ -26,7 +26,7 @@
 import javax.faces.context.FacesContext;
 import javax.faces.event.ActionEvent;
 
-public abstract class CommandRendererBase extends LayoutableRendererBase {
+public abstract class CommandRendererBase extends LayoutComponentRendererBase {
 
   private static final Log LOG = LogFactory.getLog(CommandRendererBase.class);
 

Modified: myfaces/tobago/trunk/core/src/main/java/org/apache/myfaces/tobago/renderkit/InputRendererBase.java
URL: http://svn.apache.org/viewvc/myfaces/tobago/trunk/core/src/main/java/org/apache/myfaces/tobago/renderkit/InputRendererBase.java?rev=835483&r1=835482&r2=835483&view=diff
==============================================================================
--- myfaces/tobago/trunk/core/src/main/java/org/apache/myfaces/tobago/renderkit/InputRendererBase.java (original)
+++ myfaces/tobago/trunk/core/src/main/java/org/apache/myfaces/tobago/renderkit/InputRendererBase.java Thu Nov 12 18:23:51 2009
@@ -19,7 +19,6 @@
 
 import org.apache.commons.logging.Log;
 import org.apache.commons.logging.LogFactory;
-import org.apache.myfaces.tobago.config.ThemeConfig;
 import org.apache.myfaces.tobago.util.ComponentUtils;
 
 import javax.faces.component.UIComponent;
@@ -27,7 +26,7 @@
 import javax.faces.context.FacesContext;
 import java.util.Map;
 
-public class InputRendererBase extends LayoutableRendererBase {
+public class InputRendererBase extends LayoutComponentRendererBase {
 
   private static final Log LOG = LogFactory.getLog(InputRendererBase.class);
 
@@ -59,10 +58,4 @@
       uiInput.setSubmittedValue(newValue);
     }
   }
-
-  public int getLabelWidth(FacesContext facesContext, UIComponent component) {
-    return ThemeConfig.getValue(facesContext, component, "labelWidth");
-  }
-
 }
-

Modified: myfaces/tobago/trunk/core/src/main/java/org/apache/myfaces/tobago/renderkit/LayoutComponentRendererBase.java
URL: http://svn.apache.org/viewvc/myfaces/tobago/trunk/core/src/main/java/org/apache/myfaces/tobago/renderkit/LayoutComponentRendererBase.java?rev=835483&r1=835482&r2=835483&view=diff
==============================================================================
--- myfaces/tobago/trunk/core/src/main/java/org/apache/myfaces/tobago/renderkit/LayoutComponentRendererBase.java (original)
+++ myfaces/tobago/trunk/core/src/main/java/org/apache/myfaces/tobago/renderkit/LayoutComponentRendererBase.java Thu Nov 12 18:23:51 2009
@@ -25,36 +25,36 @@
 import javax.faces.context.FacesContext;
 
 public abstract class LayoutComponentRendererBase extends RendererBase implements LayoutComponentRenderer {
-
+  
   public Measure getWidth(FacesContext facesContext, UIComponent component) {
-    return ThemeConfig.getMeasure(facesContext, component, Attributes.WIDTH);
+    return ThemeConfig.getMeasure(facesContext, component.getRendererType(), Attributes.WIDTH);
   }
 
   public Measure getHeight(FacesContext facesContext, UIComponent component) {
-    return ThemeConfig.getMeasure(facesContext, component, Attributes.HEIGHT);
+    return ThemeConfig.getMeasure(facesContext, component.getRendererType(), Attributes.HEIGHT);
   }
 
   public Measure getMinimumWidth(FacesContext facesContext, UIComponent component) {
-    return ThemeConfig.getMeasure(facesContext, component, Attributes.MINIMUM_WIDTH);
+    return ThemeConfig.getMeasure(facesContext, component.getRendererType(), Attributes.MINIMUM_WIDTH);
   }
 
   public Measure getMinimumHeight(FacesContext facesContext, UIComponent component) {
-    return ThemeConfig.getMeasure(facesContext, component, Attributes.MINIMUM_HEIGHT);
+    return ThemeConfig.getMeasure(facesContext, component.getRendererType(), Attributes.MINIMUM_HEIGHT);
   }
 
   public Measure getPreferredWidth(FacesContext facesContext, UIComponent component) {
-    return ThemeConfig.getMeasure(facesContext, component, Attributes.PREFERRED_WIDTH);
+    return ThemeConfig.getMeasure(facesContext, component.getRendererType(), Attributes.PREFERRED_WIDTH);
   }
 
   public Measure getPreferredHeight(FacesContext facesContext, UIComponent component) {
-    return ThemeConfig.getMeasure(facesContext, component, Attributes.PREFERRED_HEIGHT);
+    return ThemeConfig.getMeasure(facesContext, component.getRendererType(), Attributes.PREFERRED_HEIGHT);
   }
 
   public Measure getMaximumWidth(FacesContext facesContext, UIComponent component) {
-    return ThemeConfig.getMeasure(facesContext, component, Attributes.MAXIMUM_WIDTH);
+    return ThemeConfig.getMeasure(facesContext, component.getRendererType(), Attributes.MAXIMUM_WIDTH);
   }
 
   public Measure getMaximumHeight(FacesContext facesContext, UIComponent component) {
-    return ThemeConfig.getMeasure(facesContext, component, Attributes.MAXIMUM_HEIGHT);
+    return ThemeConfig.getMeasure(facesContext, component.getRendererType(), Attributes.MAXIMUM_HEIGHT);
   }
 }

Modified: myfaces/tobago/trunk/core/src/main/java/org/apache/myfaces/tobago/renderkit/PageRendererBase.java
URL: http://svn.apache.org/viewvc/myfaces/tobago/trunk/core/src/main/java/org/apache/myfaces/tobago/renderkit/PageRendererBase.java?rev=835483&r1=835482&r2=835483&view=diff
==============================================================================
--- myfaces/tobago/trunk/core/src/main/java/org/apache/myfaces/tobago/renderkit/PageRendererBase.java (original)
+++ myfaces/tobago/trunk/core/src/main/java/org/apache/myfaces/tobago/renderkit/PageRendererBase.java Thu Nov 12 18:23:51 2009
@@ -20,14 +20,15 @@
 import org.apache.commons.lang.StringUtils;
 import org.apache.commons.logging.Log;
 import org.apache.commons.logging.LogFactory;
-import static org.apache.myfaces.tobago.TobagoConstants.SUBCOMPONENT_SEP;
 import org.apache.myfaces.tobago.component.AbstractUIPage;
 import org.apache.myfaces.tobago.layout.Box;
 
 import javax.faces.component.UIComponent;
 import javax.faces.context.FacesContext;
 
-public class PageRendererBase extends LayoutableRendererBase {
+import static org.apache.myfaces.tobago.TobagoConstants.SUBCOMPONENT_SEP;
+
+public class PageRendererBase extends LayoutComponentRendererBase {
 
   private static final Log LOG = LogFactory.getLog(PageRendererBase.class);
 

Modified: myfaces/tobago/trunk/core/src/main/java/org/apache/myfaces/tobago/renderkit/RendererBase.java
URL: http://svn.apache.org/viewvc/myfaces/tobago/trunk/core/src/main/java/org/apache/myfaces/tobago/renderkit/RendererBase.java?rev=835483&r1=835482&r2=835483&view=diff
==============================================================================
--- myfaces/tobago/trunk/core/src/main/java/org/apache/myfaces/tobago/renderkit/RendererBase.java (original)
+++ myfaces/tobago/trunk/core/src/main/java/org/apache/myfaces/tobago/renderkit/RendererBase.java Thu Nov 12 18:23:51 2009
@@ -20,6 +20,7 @@
 import org.apache.commons.logging.Log;
 import org.apache.commons.logging.LogFactory;
 import org.apache.myfaces.tobago.config.ThemeConfig;
+import org.apache.myfaces.tobago.renderkit.html.StyleClasses;
 
 import javax.faces.FacesException;
 import javax.faces.component.UIComponent;
@@ -33,14 +34,11 @@
 import java.io.IOException;
 import java.util.Locale;
 
-/**
- * Date: Apr 21, 2007
- * Time: 8:04:25 PM
- */
 public class RendererBase extends Renderer {
 
-  private static final Log LOG = LogFactory.getLog(LayoutableRendererBase.class);
+  private static final Log LOG = LogFactory.getLog(RendererBase.class);
 
+  @Override
   public void decode(FacesContext facesContext, UIComponent component) {
     // nothing to do
 
@@ -52,7 +50,14 @@
   }
 
   public void prepareRender(FacesContext facesContext, UIComponent component) throws IOException {
-    
+    final String rendererType = component.getRendererType();
+    if (rendererType != null) {
+      String rendererName = getRendererName(rendererType);
+      StyleClasses classes = StyleClasses.ensureStyleClasses(component);
+      classes.updateClassAttributeAndMarkup(component, rendererName);
+    } else {
+      LOG.error("No renderType for " + component); 
+    }
   }
 
   public boolean getPrepareRendersChildren() {
@@ -60,34 +65,22 @@
   }
 
   public void prepareRendersChildren(FacesContext context, UIComponent component) {
-    
   }
 
-  public String getRendererName(String rendererType) {
-    String name;
-    if (LOG.isDebugEnabled()) {
-      LOG.debug("rendererType = '" + rendererType + "'");
-    }
-    /* if ("javax.faces.Text".equals(rendererType)) { // TODO: find a better way
-    name = OUT;
-  } else {*/
-    name = rendererType;
-    /*}
-    if (name.startsWith("javax.faces.")) { // FIXME: this is a hotfix from jsf1.0beta to jsf1.0fr
-      LOG.warn("patching renderer from " + name);
-      name = name.substring("javax.faces.".length());
-      LOG.warn("patching renderer to   " + name);
-    }*/
-    name = name.substring(0, 1).toLowerCase(Locale.ENGLISH) + name.substring(1);
-    return name;
+  /**
+   * @deprecated todo: should be done in the StyleClasses class.
+   */
+  @Deprecated
+  protected String getRendererName(String rendererType) {
+    return rendererType.substring(0, 1).toLowerCase(Locale.ENGLISH) + rendererType.substring(1);
   }
 
   /**
-   * @deprecated since 1.1
+   * @deprecated since 1.5.0, please use ThemeConfig.getMeasure()
    */
   @Deprecated
   public int getConfiguredValue(FacesContext facesContext, UIComponent component, String key) {
-    return ThemeConfig.getValue(facesContext, component, key);
+    return ThemeConfig.getMeasure(facesContext, component.getRendererType(), key).getPixel();
   }
 
   protected Object getCurrentValueAsObject(UIInput input) {
@@ -179,7 +172,7 @@
   }
 
   public Object getConvertedValue(FacesContext context,
-      UIComponent component, Object submittedValue)
+                                  UIComponent component, Object submittedValue)
       throws ConverterException {
     if (!(submittedValue instanceof String)) {
       return submittedValue;
@@ -193,6 +186,6 @@
   }
 
   public void onComponentCreated(FacesContext context, UIComponent component) {
-    
+
   }
 }

Modified: myfaces/tobago/trunk/core/src/main/java/org/apache/myfaces/tobago/renderkit/RendererBaseWrapper.java
URL: http://svn.apache.org/viewvc/myfaces/tobago/trunk/core/src/main/java/org/apache/myfaces/tobago/renderkit/RendererBaseWrapper.java?rev=835483&r1=835482&r2=835483&view=diff
==============================================================================
--- myfaces/tobago/trunk/core/src/main/java/org/apache/myfaces/tobago/renderkit/RendererBaseWrapper.java (original)
+++ myfaces/tobago/trunk/core/src/main/java/org/apache/myfaces/tobago/renderkit/RendererBaseWrapper.java Thu Nov 12 18:23:51 2009
@@ -17,10 +17,10 @@
  * limitations under the License.
  */
 
-import javax.faces.render.Renderer;
-import javax.faces.context.FacesContext;
 import javax.faces.component.UIComponent;
+import javax.faces.context.FacesContext;
 import javax.faces.convert.ConverterException;
+import javax.faces.render.Renderer;
 import java.io.IOException;
 
 /*
@@ -28,7 +28,7 @@
  * Date: Mar 9, 2007
  * Time: 7:39:10 PM
  */
-public class RendererBaseWrapper extends LayoutableRendererBase {
+public class RendererBaseWrapper extends LayoutComponentRendererBase {
   private Renderer renderer;
 
   public RendererBaseWrapper(Renderer renderer) {

Modified: myfaces/tobago/trunk/core/src/main/java/org/apache/myfaces/tobago/renderkit/SelectManyRendererBase.java
URL: http://svn.apache.org/viewvc/myfaces/tobago/trunk/core/src/main/java/org/apache/myfaces/tobago/renderkit/SelectManyRendererBase.java?rev=835483&r1=835482&r2=835483&view=diff
==============================================================================
--- myfaces/tobago/trunk/core/src/main/java/org/apache/myfaces/tobago/renderkit/SelectManyRendererBase.java (original)
+++ myfaces/tobago/trunk/core/src/main/java/org/apache/myfaces/tobago/renderkit/SelectManyRendererBase.java Thu Nov 12 18:23:51 2009
@@ -33,7 +33,7 @@
 import java.util.Arrays;
 import java.util.List;
 
-public class SelectManyRendererBase extends LayoutableRendererBase {
+public class SelectManyRendererBase extends LayoutComponentRendererBase {
 
   private static final Log LOG = LogFactory.getLog(SelectManyRendererBase.class);
 

Modified: myfaces/tobago/trunk/core/src/main/java/org/apache/myfaces/tobago/taglib/component/CellTagDeclaration.java
URL: http://svn.apache.org/viewvc/myfaces/tobago/trunk/core/src/main/java/org/apache/myfaces/tobago/taglib/component/CellTagDeclaration.java?rev=835483&r1=835482&r2=835483&view=diff
==============================================================================
--- myfaces/tobago/trunk/core/src/main/java/org/apache/myfaces/tobago/taglib/component/CellTagDeclaration.java (original)
+++ myfaces/tobago/trunk/core/src/main/java/org/apache/myfaces/tobago/taglib/component/CellTagDeclaration.java Thu Nov 12 18:23:51 2009
@@ -28,7 +28,7 @@
 /**
  * Renders a panel-like layout element with the ability to span over more than
  * one layout cell. A cell may only contain one child.
- * @deprecated The Cell is deprecated since Tobago 1.1
+ * @deprecated The Cell is deprecated since Tobago 1.5.0
  */
 @Deprecated
 @Tag(name = "cell")

Modified: myfaces/tobago/trunk/core/src/main/java/org/apache/myfaces/tobago/taglib/component/InTagDeclaration.java
URL: http://svn.apache.org/viewvc/myfaces/tobago/trunk/core/src/main/java/org/apache/myfaces/tobago/taglib/component/InTagDeclaration.java?rev=835483&r1=835482&r2=835483&view=diff
==============================================================================
--- myfaces/tobago/trunk/core/src/main/java/org/apache/myfaces/tobago/taglib/component/InTagDeclaration.java (original)
+++ myfaces/tobago/trunk/core/src/main/java/org/apache/myfaces/tobago/taglib/component/InTagDeclaration.java Thu Nov 12 18:23:51 2009
@@ -54,8 +54,8 @@
             "This facet can contain a UICommand that is invoked in a case of a change event from the component")
         })
 public interface InTagDeclaration
-    extends HasIdBindingAndRendered,
-    HasConverter, IsReadonly, IsDisabled, IsInline, IsRequired, HasTip, IsPassword, HasSuggestMethod, InputTagDeclaration {
+    extends HasIdBindingAndRendered, HasConverter, IsReadonly, IsDisabled, IsInline, IsRequired, HasTip, IsPassword, 
+    HasSuggestMethod, InputTagDeclaration {
 
   /**
    * Indicate markup of this component.

Modified: myfaces/tobago/trunk/core/src/main/java/org/apache/myfaces/tobago/taglib/decl/HasSpacing.java
URL: http://svn.apache.org/viewvc/myfaces/tobago/trunk/core/src/main/java/org/apache/myfaces/tobago/taglib/decl/HasSpacing.java?rev=835483&r1=835482&r2=835483&view=diff
==============================================================================
--- myfaces/tobago/trunk/core/src/main/java/org/apache/myfaces/tobago/taglib/decl/HasSpacing.java (original)
+++ myfaces/tobago/trunk/core/src/main/java/org/apache/myfaces/tobago/taglib/decl/HasSpacing.java Thu Nov 12 18:23:51 2009
@@ -41,7 +41,8 @@
   @UIComponentTagAttribute(
       type = "org.apache.myfaces.tobago.layout.Measure",
       defaultCode = "getCellspacing() != null ? getCellspacing() : "
-          + "org.apache.myfaces.tobago.config.ThemeConfig.getMeasure(getFacesContext(), this, \"columnSpacing\")")
+          + "org.apache.myfaces.tobago.config.ThemeConfig.getMeasure(" 
+          + "getFacesContext(), getRendererType(), \"columnSpacing\")")
   void setColumnSpacing(String columnSpacing);
 
   /**
@@ -51,6 +52,7 @@
   @UIComponentTagAttribute(
       type = "org.apache.myfaces.tobago.layout.Measure",
       defaultCode = "getCellspacing() != null ? getCellspacing() : "
-          + "org.apache.myfaces.tobago.config.ThemeConfig.getMeasure(getFacesContext(), this, \"rowSpacing\")")
+          + "org.apache.myfaces.tobago.config.ThemeConfig.getMeasure(" 
+          + "getFacesContext(), getRendererType(), \"rowSpacing\")")
   void setRowSpacing(String rowSpacing);
 }

Modified: myfaces/tobago/trunk/core/src/main/java/org/apache/myfaces/tobago/taglib/decl/IsGridLayoutComponent.java
URL: http://svn.apache.org/viewvc/myfaces/tobago/trunk/core/src/main/java/org/apache/myfaces/tobago/taglib/decl/IsGridLayoutComponent.java?rev=835483&r1=835482&r2=835483&view=diff
==============================================================================
--- myfaces/tobago/trunk/core/src/main/java/org/apache/myfaces/tobago/taglib/decl/IsGridLayoutComponent.java (original)
+++ myfaces/tobago/trunk/core/src/main/java/org/apache/myfaces/tobago/taglib/decl/IsGridLayoutComponent.java Thu Nov 12 18:23:51 2009
@@ -150,7 +150,7 @@
   @UIComponentTagAttribute(
       type = "org.apache.myfaces.tobago.layout.Measure",
       defaultCode = "org.apache.myfaces.tobago.config.ThemeConfig.getMeasure("
-          + "getFacesContext(), this, \"leftOffset\")")
+          + "getFacesContext(), getRendererType(), \"leftOffset\")")
   void setLeftOffset(String leftOffset);
 
   /**
@@ -161,7 +161,7 @@
    */
   @UIComponentTagAttribute(type = "org.apache.myfaces.tobago.layout.Measure",
       defaultCode = "org.apache.myfaces.tobago.config.ThemeConfig.getMeasure("
-          + "getFacesContext(), this, \"rightOffset\")")
+          + "getFacesContext(), getRendererType(), \"rightOffset\")")
   void setRightOffset(String rightOffset);
 
   /**
@@ -172,7 +172,7 @@
    */
   @UIComponentTagAttribute(type = "org.apache.myfaces.tobago.layout.Measure",
       defaultCode = "org.apache.myfaces.tobago.config.ThemeConfig.getMeasure("
-          + "getFacesContext(), this, \"topOffset\")")
+          + "getFacesContext(), getRendererType(), \"topOffset\")")
   void setTopOffset(String topOffset);
 
   /**
@@ -183,7 +183,7 @@
    */
   @UIComponentTagAttribute(type = "org.apache.myfaces.tobago.layout.Measure",
       defaultCode = "org.apache.myfaces.tobago.config.ThemeConfig.getMeasure("
-          + "getFacesContext(), this, \"bottomOffset\")")
+          + "getFacesContext(), getRendererType(), \"bottomOffset\")")
   void setBottomOffset(String bottomOffset);
 
 }

Modified: myfaces/tobago/trunk/core/src/main/java/org/apache/myfaces/tobago/taglib/decl/IsGridLayoutComponentWithDeprecatedDimension.java
URL: http://svn.apache.org/viewvc/myfaces/tobago/trunk/core/src/main/java/org/apache/myfaces/tobago/taglib/decl/IsGridLayoutComponentWithDeprecatedDimension.java?rev=835483&r1=835482&r2=835483&view=diff
==============================================================================
--- myfaces/tobago/trunk/core/src/main/java/org/apache/myfaces/tobago/taglib/decl/IsGridLayoutComponentWithDeprecatedDimension.java (original)
+++ myfaces/tobago/trunk/core/src/main/java/org/apache/myfaces/tobago/taglib/decl/IsGridLayoutComponentWithDeprecatedDimension.java Thu Nov 12 18:23:51 2009
@@ -161,7 +161,7 @@
    */
   @UIComponentTagAttribute(type = "org.apache.myfaces.tobago.layout.Measure",
         defaultCode = "org.apache.myfaces.tobago.config.ThemeConfig.getMeasure("
-          + "getFacesContext(), this, \"leftOffset\")")
+          + "getFacesContext(), getRendererType(), \"leftOffset\")")
   void setLeftOffset(String leftOffset);
 
   /**
@@ -172,7 +172,7 @@
    */
   @UIComponentTagAttribute(type = "org.apache.myfaces.tobago.layout.Measure",
         defaultCode = "org.apache.myfaces.tobago.config.ThemeConfig.getMeasure("
-          + "getFacesContext(), this, \"rightOffset\")")
+          + "getFacesContext(), getRendererType(), \"rightOffset\")")
   void setRightOffset(String rightOffset);
 
   /**
@@ -183,7 +183,7 @@
    */
   @UIComponentTagAttribute(type = "org.apache.myfaces.tobago.layout.Measure",
         defaultCode = "org.apache.myfaces.tobago.config.ThemeConfig.getMeasure("
-          + "getFacesContext(), this, \"topOffset\")")
+          + "getFacesContext(), getRendererType(), \"topOffset\")")
   void setTopOffset(String topOffset);
 
   /**
@@ -194,7 +194,7 @@
    */
   @UIComponentTagAttribute(type = "org.apache.myfaces.tobago.layout.Measure",
         defaultCode = "org.apache.myfaces.tobago.config.ThemeConfig.getMeasure("
-          + "getFacesContext(), this, \"bottomOffset\")")
+          + "getFacesContext(), getRendererType(), \"bottomOffset\")")
   void setBottomOffset(String bottomOffset);
 
 }

Modified: myfaces/tobago/trunk/core/src/main/java/org/apache/myfaces/tobago/util/ComponentUtils.java
URL: http://svn.apache.org/viewvc/myfaces/tobago/trunk/core/src/main/java/org/apache/myfaces/tobago/util/ComponentUtils.java?rev=835483&r1=835482&r2=835483&view=diff
==============================================================================
--- myfaces/tobago/trunk/core/src/main/java/org/apache/myfaces/tobago/util/ComponentUtils.java (original)
+++ myfaces/tobago/trunk/core/src/main/java/org/apache/myfaces/tobago/util/ComponentUtils.java Thu Nov 12 18:23:51 2009
@@ -36,8 +36,6 @@
 import org.apache.myfaces.tobago.context.TransientStateHolder;
 import org.apache.myfaces.tobago.el.ConstantMethodBinding;
 import org.apache.myfaces.tobago.event.PopupActionListener;
-import org.apache.myfaces.tobago.renderkit.LayoutRenderer;
-import org.apache.myfaces.tobago.renderkit.LayoutableRenderer;
 import org.apache.myfaces.tobago.renderkit.RendererBase;
 import org.apache.myfaces.tobago.renderkit.html.StyleClasses;
 
@@ -438,12 +436,13 @@
   }
 
   // TODO This should not be neseccary, but UIComponentBase.getRenderer() is protected
-  public static LayoutableRenderer getRenderer(FacesContext facesContext, UIComponent component) {
+/*
+  public static LayoutComponentRendererBase getRenderer(FacesContext facesContext, UIComponent component) {
     return getRenderer(facesContext, component.getFamily(), component.getRendererType());
 
   }
 
-  public static LayoutRenderer getLayoutRenderer(FacesContext facesContext, String family, String rendererType) {
+  public static LayoutComponentRendererBase getRenderer(FacesContext facesContext, String family, String rendererType) {
     if (rendererType == null) {
       return null;
     }
@@ -462,43 +461,17 @@
         return null;
       }
     }
-    if (renderer instanceof LayoutRenderer) {
-      return (LayoutRenderer) renderer;
+    if (renderer instanceof LayoutComponentRendererBase) {
+      return (LayoutComponentRendererBase) renderer;
     }
     return null;
   }
-
-
-  public static LayoutableRenderer getRenderer(FacesContext facesContext, String family, String rendererType) {
-    if (rendererType == null) {
-      return null;
-    }
-
-    Map requestMap = facesContext.getExternalContext().getRequestMap();
-    StringBuilder key = new StringBuilder(RENDER_KEY_PREFIX);
-    key.append(rendererType);
-    RendererBase renderer = (RendererBase) requestMap.get(key.toString());
-
-    if (renderer == null) {
-      Renderer myRenderer = getRendererInternal(facesContext, family, rendererType);
-      if (myRenderer instanceof RendererBase) {
-        requestMap.put(key.toString(), myRenderer);
-        renderer = (RendererBase) myRenderer;
-      } else {
-        return null;
-      }
-    }
-    if (renderer instanceof LayoutableRenderer) {
-      return (LayoutableRenderer) renderer;
-    }
-    return null;
-  }
-
-  public static RendererBase getRendererBase(FacesContext facesContext, UIComponent component) {
-    return getRendererBase(facesContext, component.getFamily(), component.getRendererType());
+*/
+  public static RendererBase getRenderer(FacesContext facesContext, UIComponent component) {
+    return getRenderer(facesContext, component.getFamily(), component.getRendererType());
   }
 
-   public static RendererBase getRendererBase(FacesContext facesContext, String family, String rendererType) {
+  public static RendererBase getRenderer(FacesContext facesContext, String family, String rendererType) {
     if (rendererType == null) {
       return null;
     }

Modified: myfaces/tobago/trunk/core/src/main/java/org/apache/myfaces/tobago/util/EncodeAjaxCallback.java
URL: http://svn.apache.org/viewvc/myfaces/tobago/trunk/core/src/main/java/org/apache/myfaces/tobago/util/EncodeAjaxCallback.java?rev=835483&r1=835482&r2=835483&view=diff
==============================================================================
--- myfaces/tobago/trunk/core/src/main/java/org/apache/myfaces/tobago/util/EncodeAjaxCallback.java (original)
+++ myfaces/tobago/trunk/core/src/main/java/org/apache/myfaces/tobago/util/EncodeAjaxCallback.java Thu Nov 12 18:23:51 2009
@@ -41,7 +41,7 @@
 
   // TODO merge with RenderUtil.prepareRendererAll
   public static void prepareRendererAll(FacesContext facesContext, UIComponent component) throws IOException {
-    RendererBase renderer = ComponentUtils.getRendererBase(facesContext,  component);
+    RendererBase renderer = ComponentUtils.getRenderer(facesContext,  component);
     boolean prepareRendersChildren = false;
     if (renderer != null) {
       renderer.prepareRender(facesContext, component);

Modified: myfaces/tobago/trunk/core/src/main/java/org/apache/myfaces/tobago/webapp/TobagoResponseWriterImpl.java
URL: http://svn.apache.org/viewvc/myfaces/tobago/trunk/core/src/main/java/org/apache/myfaces/tobago/webapp/TobagoResponseWriterImpl.java?rev=835483&r1=835482&r2=835483&view=diff
==============================================================================
--- myfaces/tobago/trunk/core/src/main/java/org/apache/myfaces/tobago/webapp/TobagoResponseWriterImpl.java (original)
+++ myfaces/tobago/trunk/core/src/main/java/org/apache/myfaces/tobago/webapp/TobagoResponseWriterImpl.java Thu Nov 12 18:23:51 2009
@@ -421,21 +421,28 @@
       Measure width = layoutComponent.getWidth();
       if (width != null) {
         // TODO: Make configurable: this is needed if the box-sizing is border-box, not content-box (see CSS3)
-        width = width.subtractNotNegative(ThemeConfig.getMeasure(facesContext, component, "css.border-left-width"));
-        width = width.subtractNotNegative(ThemeConfig.getMeasure(facesContext, component, "css.padding-left"));
-        width = width.subtractNotNegative(ThemeConfig.getMeasure(facesContext, component, "css.padding-right"));
-        width = width.subtractNotNegative(ThemeConfig.getMeasure(facesContext, component, "css.border-right-width"));
+        width = width.subtractNotNegative(
+            ThemeConfig.getMeasure(facesContext, component.getRendererType(), "css.border-left-width"));
+        width = width.subtractNotNegative(
+            ThemeConfig.getMeasure(facesContext, component.getRendererType(), "css.padding-left"));
+        width = width.subtractNotNegative(
+            ThemeConfig.getMeasure(facesContext, component.getRendererType(), "css.padding-right"));
+        width = width.subtractNotNegative(
+            ThemeConfig.getMeasure(facesContext, component.getRendererType(), "css.border-right-width"));
         styles = ensureHtmlStyleMap(component, styles);
         styles.setWidth(width);
       }
       Measure height = layoutComponent.getHeight();
       if (height != null) {
         // TODO: Make configurable: this is needed if the box-sizing is border-box, not content-box (see CSS3)
-        height = height.subtractNotNegative(ThemeConfig.getMeasure(facesContext, component, "css.border-top-width"));
-        height = height.subtractNotNegative(ThemeConfig.getMeasure(facesContext, component, "css.padding-top"));
-        height = height.subtractNotNegative(ThemeConfig.getMeasure(facesContext, component, "css.padding-bottom"));
-        height
-            = height.subtractNotNegative(ThemeConfig.getMeasure(facesContext, component, "css.border-bottom-width"));
+        height = height.subtractNotNegative(
+            ThemeConfig.getMeasure(facesContext, component.getRendererType(), "css.border-top-width"));
+        height = height.subtractNotNegative(
+            ThemeConfig.getMeasure(facesContext, component.getRendererType(), "css.padding-top"));
+        height = height.subtractNotNegative(
+            ThemeConfig.getMeasure(facesContext, component.getRendererType(), "css.padding-bottom"));
+        height = height.subtractNotNegative(
+            ThemeConfig.getMeasure(facesContext, component.getRendererType(), "css.border-bottom-width"));
         styles = ensureHtmlStyleMap(component, styles);
         styles.setHeight(height);
       }

Modified: myfaces/tobago/trunk/example/demo/src/main/java/org/apache/myfaces/tobago/example/demo/clientConfig/ThemeConfigViewController.java
URL: http://svn.apache.org/viewvc/myfaces/tobago/trunk/example/demo/src/main/java/org/apache/myfaces/tobago/example/demo/clientConfig/ThemeConfigViewController.java?rev=835483&r1=835482&r2=835483&view=diff
==============================================================================
--- myfaces/tobago/trunk/example/demo/src/main/java/org/apache/myfaces/tobago/example/demo/clientConfig/ThemeConfigViewController.java (original)
+++ myfaces/tobago/trunk/example/demo/src/main/java/org/apache/myfaces/tobago/example/demo/clientConfig/ThemeConfigViewController.java Thu Nov 12 18:23:51 2009
@@ -29,6 +29,7 @@
 import org.apache.commons.logging.LogFactory;
 import org.apache.myfaces.tobago.component.RendererTypes;
 import org.apache.myfaces.tobago.config.ThemeConfig;
+import org.apache.myfaces.tobago.layout.Measure;
 
 import javax.faces.component.UIComponent;
 import javax.faces.component.UIInput;
@@ -171,8 +172,8 @@
     for (int i = 0; i < propertyNames.length; i++) {
       String propertyName = propertyNames[i];
       try {
-        int value = ThemeConfig.getValue(facesContext, component, propertyName);
-        found.add(new DefaultKeyValue(propertyName, Integer.toString(value)));
+        Measure measure = ThemeConfig.getMeasure(facesContext, component.getRendererType(), propertyName);
+        found.add(new DefaultKeyValue(propertyName, measure.toString()));
       } catch (Exception e) {
         if (LOG.isDebugEnabled()) {
           LOG.debug("No value found for \"" + propertyName

Modified: myfaces/tobago/trunk/example/test/src/main/webapp/tc/reload/tip.xhtml
URL: http://svn.apache.org/viewvc/myfaces/tobago/trunk/example/test/src/main/webapp/tc/reload/tip.xhtml?rev=835483&r1=835482&r2=835483&view=diff
==============================================================================
--- myfaces/tobago/trunk/example/test/src/main/webapp/tc/reload/tip.xhtml (original)
+++ myfaces/tobago/trunk/example/test/src/main/webapp/tc/reload/tip.xhtml Thu Nov 12 18:23:51 2009
@@ -21,7 +21,11 @@
          xmlns:tx="http://myfaces.apache.org/tobago/extension"
          xmlns:ui="http://java.sun.com/jsf/facelets"
          xmlns:f="http://java.sun.com/jsf/core">
+  <f:facet name="layout">
+    <tc:gridLayout rows="auto;*"/>
+  </f:facet>
   <tc:gridLayoutConstraint width="600px" height="600px"/>
+  <tc:separator label="Reload test for tips." />
   <tc:panel>
     <f:facet name="layout">
       <tc:gridLayout margin="10px" rows="auto;20px;auto;" columns="300px"/>

Modified: myfaces/tobago/trunk/extension/deprecation/src/main/java/org/apache/myfaces/tobago/component/ComponentUtil.java
URL: http://svn.apache.org/viewvc/myfaces/tobago/trunk/extension/deprecation/src/main/java/org/apache/myfaces/tobago/component/ComponentUtil.java?rev=835483&r1=835482&r2=835483&view=diff
==============================================================================
--- myfaces/tobago/trunk/extension/deprecation/src/main/java/org/apache/myfaces/tobago/component/ComponentUtil.java (original)
+++ myfaces/tobago/trunk/extension/deprecation/src/main/java/org/apache/myfaces/tobago/component/ComponentUtil.java Thu Nov 12 18:23:51 2009
@@ -19,7 +19,7 @@
 
 import org.apache.myfaces.tobago.context.TobagoFacesContext;
 import org.apache.myfaces.tobago.event.SheetStateChangeEvent;
-import org.apache.myfaces.tobago.renderkit.LayoutableRendererBase;
+import org.apache.myfaces.tobago.renderkit.LayoutComponentRendererBase;
 import org.apache.myfaces.tobago.renderkit.util.RenderUtil;
 import org.apache.myfaces.tobago.util.ComponentUtils;
 import org.apache.myfaces.tobago.util.DebugUtils;
@@ -180,12 +180,12 @@
     return ComponentUtils.isFacetOf(component, parent);
   }
 
-  public static LayoutableRendererBase getRenderer(FacesContext facesContext, UIComponent component) {
-    return (LayoutableRendererBase) ComponentUtils.getRenderer(facesContext, component);
+  public static LayoutComponentRendererBase getRenderer(FacesContext facesContext, UIComponent component) {
+    return (LayoutComponentRendererBase) ComponentUtils.getRenderer(facesContext, component);
   }
 
-  public static LayoutableRendererBase getRenderer(FacesContext facesContext, String family, String rendererType) {
-    return (LayoutableRendererBase) ComponentUtils.getRenderer(facesContext, family, rendererType);
+  public static LayoutComponentRendererBase getRenderer(FacesContext facesContext, String family, String rendererType) {
+    return (LayoutComponentRendererBase) ComponentUtils.getRenderer(facesContext, family, rendererType);
   }
 
   public static String currentValue(UIComponent component) {

Modified: myfaces/tobago/trunk/extension/deprecation/src/main/java/org/apache/myfaces/tobago/renderkit/html/util/HtmlRendererUtil.java
URL: http://svn.apache.org/viewvc/myfaces/tobago/trunk/extension/deprecation/src/main/java/org/apache/myfaces/tobago/renderkit/html/util/HtmlRendererUtil.java?rev=835483&r1=835482&r2=835483&view=diff
==============================================================================
--- myfaces/tobago/trunk/extension/deprecation/src/main/java/org/apache/myfaces/tobago/renderkit/html/util/HtmlRendererUtil.java (original)
+++ myfaces/tobago/trunk/extension/deprecation/src/main/java/org/apache/myfaces/tobago/renderkit/html/util/HtmlRendererUtil.java Thu Nov 12 18:23:51 2009
@@ -29,7 +29,6 @@
 import org.apache.myfaces.tobago.context.ResourceManagerUtil;
 import org.apache.myfaces.tobago.context.TobagoFacesContext;
 import org.apache.myfaces.tobago.renderkit.LabelWithAccessKey;
-import org.apache.myfaces.tobago.renderkit.LayoutableRenderer;
 import org.apache.myfaces.tobago.renderkit.css.Style;
 import org.apache.myfaces.tobago.renderkit.html.HtmlAttributes;
 import org.apache.myfaces.tobago.renderkit.html.HtmlConstants;
@@ -116,16 +115,7 @@
   }
 
   public static String getRendererName(FacesContext facesContext, UIComponent component) {
-    final String rendererType = component.getRendererType();
-    //final String family = component.getFamily();
-    if (rendererType != null//&& !"facelets".equals(family)
-        ) {
-      LayoutableRenderer layoutableRendererBase = ComponentUtils.getRenderer(facesContext, component);
-      if (layoutableRendererBase != null) {
-        return layoutableRendererBase.getRendererName(rendererType);
-      }
-    }
-    return null;
+    return HtmlRendererUtils.getRendererName(facesContext, component);
   }
 
   public static void writeLabelWithAccessKey(TobagoResponseWriter writer, LabelWithAccessKey label)

Modified: myfaces/tobago/trunk/extension/math/src/main/java/org/apache/myfaces/tobago/component/UIEquationGridLayout.java
URL: http://svn.apache.org/viewvc/myfaces/tobago/trunk/extension/math/src/main/java/org/apache/myfaces/tobago/component/UIEquationGridLayout.java?rev=835483&r1=835482&r2=835483&view=diff
==============================================================================
--- myfaces/tobago/trunk/extension/math/src/main/java/org/apache/myfaces/tobago/component/UIEquationGridLayout.java (original)
+++ myfaces/tobago/trunk/extension/math/src/main/java/org/apache/myfaces/tobago/component/UIEquationGridLayout.java Thu Nov 12 18:23:51 2009
@@ -19,6 +19,7 @@
 
 package org.apache.myfaces.tobago.component;
 
+import org.apache.myfaces.tobago.config.ThemeConfig;
 import org.apache.myfaces.tobago.layout.Measure;
 
 import javax.faces.context.FacesContext;
@@ -123,7 +124,9 @@
   		  throw new javax.faces.FacesException(e);
   	  }
     }
-    return getCellspacing() != null ? getCellspacing() : org.apache.myfaces.tobago.config.ThemeConfig.getMeasure(getFacesContext(), this, "columnSpacing");
+    return getCellspacing() != null 
+        ? getCellspacing() 
+        : ThemeConfig.getMeasure(getFacesContext(), getRendererType(), "columnSpacing");
   }
 
   public void setColumnSpacing(Measure columnSpacing) {
@@ -152,7 +155,9 @@
   		  throw new javax.faces.FacesException(e);
   	  }
     }
-    return getCellspacing() != null ? getCellspacing() : org.apache.myfaces.tobago.config.ThemeConfig.getMeasure(getFacesContext(), this, "rowSpacing");
+    return getCellspacing() != null 
+        ? getCellspacing() 
+        : ThemeConfig.getMeasure(getFacesContext(), getRendererType(), "rowSpacing");
   }
 
   public void setRowSpacing(Measure rowSpacing) {

Modified: myfaces/tobago/trunk/sandbox/src/main/java/org/apache/myfaces/tobago/renderkit/fo/standard/standard/tag/FoRendererBase.java
URL: http://svn.apache.org/viewvc/myfaces/tobago/trunk/sandbox/src/main/java/org/apache/myfaces/tobago/renderkit/fo/standard/standard/tag/FoRendererBase.java?rev=835483&r1=835482&r2=835483&view=diff
==============================================================================
--- myfaces/tobago/trunk/sandbox/src/main/java/org/apache/myfaces/tobago/renderkit/fo/standard/standard/tag/FoRendererBase.java (original)
+++ myfaces/tobago/trunk/sandbox/src/main/java/org/apache/myfaces/tobago/renderkit/fo/standard/standard/tag/FoRendererBase.java Thu Nov 12 18:23:51 2009
@@ -19,14 +19,14 @@
 
 import org.apache.commons.logging.Log;
 import org.apache.commons.logging.LogFactory;
-import org.apache.myfaces.tobago.renderkit.LayoutableRendererBase;
+import org.apache.myfaces.tobago.renderkit.LayoutComponentRendererBase;
 
 /*
  * Created: Dec 3, 2004 12:07:38 AM
  * User: bommel
  * $Id:FoRendererBase.java 472227 2006-11-07 21:05:00 +0100 (Tue, 07 Nov 2006) bommel $
  */
-public class FoRendererBase extends LayoutableRendererBase {
+public class FoRendererBase extends LayoutComponentRendererBase {
 
   private static final Log LOG = LogFactory.getLog(FoRendererBase.class);
 

Modified: myfaces/tobago/trunk/sandbox/src/main/java/org/apache/myfaces/tobago/renderkit/fo/standard/standard/tag/MessagesRenderer.java
URL: http://svn.apache.org/viewvc/myfaces/tobago/trunk/sandbox/src/main/java/org/apache/myfaces/tobago/renderkit/fo/standard/standard/tag/MessagesRenderer.java?rev=835483&r1=835482&r2=835483&view=diff
==============================================================================
--- myfaces/tobago/trunk/sandbox/src/main/java/org/apache/myfaces/tobago/renderkit/fo/standard/standard/tag/MessagesRenderer.java (original)
+++ myfaces/tobago/trunk/sandbox/src/main/java/org/apache/myfaces/tobago/renderkit/fo/standard/standard/tag/MessagesRenderer.java Thu Nov 12 18:23:51 2009
@@ -19,14 +19,14 @@
 
 import org.apache.commons.logging.Log;
 import org.apache.commons.logging.LogFactory;
-import org.apache.myfaces.tobago.renderkit.LayoutableRendererBase;
+import org.apache.myfaces.tobago.renderkit.LayoutComponentRendererBase;
 
 /*
  * Created: Dec 1, 2004 7:34:05 PM
  * User: bommel
  * $Id:MessagesRenderer.java 472227 2006-11-07 21:05:00 +0100 (Tue, 07 Nov 2006) bommel $
  */
-public class MessagesRenderer extends LayoutableRendererBase {
+public class MessagesRenderer extends LayoutComponentRendererBase {
   private static final Log LOG = LogFactory.getLog(MessagesRenderer.class);
   
   // todo

Modified: myfaces/tobago/trunk/sandbox/src/main/java/org/apache/myfaces/tobago/renderkit/fo/standard/standard/tag/OutRenderer.java
URL: http://svn.apache.org/viewvc/myfaces/tobago/trunk/sandbox/src/main/java/org/apache/myfaces/tobago/renderkit/fo/standard/standard/tag/OutRenderer.java?rev=835483&r1=835482&r2=835483&view=diff
==============================================================================
--- myfaces/tobago/trunk/sandbox/src/main/java/org/apache/myfaces/tobago/renderkit/fo/standard/standard/tag/OutRenderer.java (original)
+++ myfaces/tobago/trunk/sandbox/src/main/java/org/apache/myfaces/tobago/renderkit/fo/standard/standard/tag/OutRenderer.java Thu Nov 12 18:23:51 2009
@@ -17,7 +17,7 @@
  * limitations under the License.
  */
 
-import org.apache.myfaces.tobago.renderkit.LayoutableRendererBase;
+import org.apache.myfaces.tobago.renderkit.LayoutComponentRendererBase;
 import org.apache.myfaces.tobago.renderkit.util.RenderUtil;
 
 import javax.faces.component.UIComponent;
@@ -30,7 +30,7 @@
  * User: bommel
  * $Id:OutRenderer.java 472227 2006-11-07 21:05:00 +0100 (Tue, 07 Nov 2006) bommel $
  */
-public class OutRenderer extends LayoutableRendererBase {
+public class OutRenderer extends LayoutComponentRendererBase {
 
   public void encodeEnd(FacesContext facesContext,
       UIComponent component) throws IOException {

Modified: myfaces/tobago/trunk/sandbox/src/main/java/org/apache/myfaces/tobago/renderkit/html/sandbox/standard/tag/InputNumberSliderRenderer.java
URL: http://svn.apache.org/viewvc/myfaces/tobago/trunk/sandbox/src/main/java/org/apache/myfaces/tobago/renderkit/html/sandbox/standard/tag/InputNumberSliderRenderer.java?rev=835483&r1=835482&r2=835483&view=diff
==============================================================================
--- myfaces/tobago/trunk/sandbox/src/main/java/org/apache/myfaces/tobago/renderkit/html/sandbox/standard/tag/InputNumberSliderRenderer.java (original)
+++ myfaces/tobago/trunk/sandbox/src/main/java/org/apache/myfaces/tobago/renderkit/html/sandbox/standard/tag/InputNumberSliderRenderer.java Thu Nov 12 18:23:51 2009
@@ -24,7 +24,7 @@
 import org.apache.myfaces.tobago.context.ResourceManagerFactory;
 import org.apache.myfaces.tobago.context.TobagoFacesContext;
 import org.apache.myfaces.tobago.layout.PixelMeasure;
-import org.apache.myfaces.tobago.renderkit.LayoutableRendererBase;
+import org.apache.myfaces.tobago.renderkit.LayoutComponentRendererBase;
 import org.apache.myfaces.tobago.renderkit.css.Position;
 import org.apache.myfaces.tobago.renderkit.css.Style;
 import org.apache.myfaces.tobago.renderkit.html.HtmlAttributes;
@@ -41,7 +41,7 @@
 import java.io.IOException;
 import java.util.Map;
 
-public class InputNumberSliderRenderer extends LayoutableRendererBase {
+public class InputNumberSliderRenderer extends LayoutComponentRendererBase {
 
   private static final String SLIDER_WIDTH_PERCENT = "sliderWidthPercent";
 
@@ -67,16 +67,14 @@
 
     Style style = new Style(facesContext, slider);
     int width = -1;
-    int sliderWidthPerc = 33;
-    if (ThemeConfig.hasValue(facesContext, slider, SLIDER_WIDTH_PERCENT)) {
-      sliderWidthPerc = ThemeConfig.getValue(facesContext, slider, SLIDER_WIDTH_PERCENT);
+    int sliderWidthPerc 
+        = ThemeConfig.getMeasure(facesContext, slider.getRendererType(), SLIDER_WIDTH_PERCENT).getPixel();
       if (sliderWidthPerc <= 25) {
         sliderWidthPerc = 25;
       }
       if (sliderWidthPerc >= 75) {
         sliderWidthPerc = 75;
       }
-    }
     int sliderWidth = 100; // fixme
     int inputWidth = 50; // fixme;
     if (style.getWidth() != null && style.getWidth().getPixel() >= 0) {

Modified: myfaces/tobago/trunk/sandbox/src/main/java/org/apache/myfaces/tobago/renderkit/wml/standard/standard/tag/ButtonRenderer.java
URL: http://svn.apache.org/viewvc/myfaces/tobago/trunk/sandbox/src/main/java/org/apache/myfaces/tobago/renderkit/wml/standard/standard/tag/ButtonRenderer.java?rev=835483&r1=835482&r2=835483&view=diff
==============================================================================
--- myfaces/tobago/trunk/sandbox/src/main/java/org/apache/myfaces/tobago/renderkit/wml/standard/standard/tag/ButtonRenderer.java (original)
+++ myfaces/tobago/trunk/sandbox/src/main/java/org/apache/myfaces/tobago/renderkit/wml/standard/standard/tag/ButtonRenderer.java Thu Nov 12 18:23:51 2009
@@ -29,7 +29,7 @@
 import org.apache.myfaces.tobago.component.AbstractUIPage;
 import org.apache.myfaces.tobago.component.Attributes;
 import org.apache.myfaces.tobago.component.Facets;
-import org.apache.myfaces.tobago.renderkit.LayoutableRendererBase;
+import org.apache.myfaces.tobago.renderkit.LayoutComponentRendererBase;
 import org.apache.myfaces.tobago.renderkit.html.util.HtmlRendererUtils;
 import org.apache.myfaces.tobago.util.ComponentUtils;
 import org.apache.myfaces.tobago.webapp.TobagoResponseWriter;
@@ -40,7 +40,7 @@
 import javax.faces.context.FacesContext;
 import java.io.IOException;
 
-public class ButtonRenderer extends LayoutableRendererBase {
+public class ButtonRenderer extends LayoutComponentRendererBase {
 
   private static final Log LOG = LogFactory.getLog(ButtonRenderer.class);
 

Modified: myfaces/tobago/trunk/sandbox/src/main/java/org/apache/myfaces/tobago/renderkit/wml/standard/standard/tag/InRenderer.java
URL: http://svn.apache.org/viewvc/myfaces/tobago/trunk/sandbox/src/main/java/org/apache/myfaces/tobago/renderkit/wml/standard/standard/tag/InRenderer.java?rev=835483&r1=835482&r2=835483&view=diff
==============================================================================
--- myfaces/tobago/trunk/sandbox/src/main/java/org/apache/myfaces/tobago/renderkit/wml/standard/standard/tag/InRenderer.java (original)
+++ myfaces/tobago/trunk/sandbox/src/main/java/org/apache/myfaces/tobago/renderkit/wml/standard/standard/tag/InRenderer.java Thu Nov 12 18:23:51 2009
@@ -17,16 +17,11 @@
  * limitations under the License.
  */
 
-/*
- * Created 07.02.2003 16:00:00.
- * : $
- */
-
 import org.apache.commons.collections.keyvalue.DefaultKeyValue;
 import org.apache.myfaces.tobago.component.AbstractUIPage;
 import org.apache.myfaces.tobago.component.Attributes;
 import org.apache.myfaces.tobago.component.Facets;
-import org.apache.myfaces.tobago.renderkit.LayoutableRendererBase;
+import org.apache.myfaces.tobago.renderkit.LayoutComponentRendererBase;
 import org.apache.myfaces.tobago.renderkit.html.HtmlInputTypes;
 import org.apache.myfaces.tobago.renderkit.html.util.HtmlRendererUtils;
 import org.apache.myfaces.tobago.renderkit.util.RenderUtil;
@@ -37,7 +32,7 @@
 import javax.faces.context.FacesContext;
 import java.io.IOException;
 
-public class InRenderer extends LayoutableRendererBase {
+public class InRenderer extends LayoutComponentRendererBase {
 
   public void encodeEnd(FacesContext facesContext, UIComponent component)
       throws IOException {

Modified: myfaces/tobago/trunk/sandbox/src/main/java/org/apache/myfaces/tobago/renderkit/wml/standard/standard/tag/PanelRenderer.java
URL: http://svn.apache.org/viewvc/myfaces/tobago/trunk/sandbox/src/main/java/org/apache/myfaces/tobago/renderkit/wml/standard/standard/tag/PanelRenderer.java?rev=835483&r1=835482&r2=835483&view=diff
==============================================================================
--- myfaces/tobago/trunk/sandbox/src/main/java/org/apache/myfaces/tobago/renderkit/wml/standard/standard/tag/PanelRenderer.java (original)
+++ myfaces/tobago/trunk/sandbox/src/main/java/org/apache/myfaces/tobago/renderkit/wml/standard/standard/tag/PanelRenderer.java Thu Nov 12 18:23:51 2009
@@ -23,7 +23,7 @@
   */
 
 import org.apache.myfaces.tobago.component.UIPanel;
-import org.apache.myfaces.tobago.renderkit.LayoutableRendererBase;
+import org.apache.myfaces.tobago.renderkit.LayoutComponentRendererBase;
 import org.apache.myfaces.tobago.renderkit.util.RenderUtil;
 
 import javax.faces.component.UIComponent;
@@ -31,7 +31,7 @@
 import java.io.IOException;
 import java.util.Iterator;
 
-public class PanelRenderer extends LayoutableRendererBase {
+public class PanelRenderer extends LayoutComponentRendererBase {
 
   public boolean getRendersChildren() {
     return true;

Modified: myfaces/tobago/trunk/sandbox/src/main/java/org/apache/myfaces/tobago/renderkit/wml/standard/standard/tag/SelectBooleanCheckboxRenderer.java
URL: http://svn.apache.org/viewvc/myfaces/tobago/trunk/sandbox/src/main/java/org/apache/myfaces/tobago/renderkit/wml/standard/standard/tag/SelectBooleanCheckboxRenderer.java?rev=835483&r1=835482&r2=835483&view=diff
==============================================================================
--- myfaces/tobago/trunk/sandbox/src/main/java/org/apache/myfaces/tobago/renderkit/wml/standard/standard/tag/SelectBooleanCheckboxRenderer.java (original)
+++ myfaces/tobago/trunk/sandbox/src/main/java/org/apache/myfaces/tobago/renderkit/wml/standard/standard/tag/SelectBooleanCheckboxRenderer.java Thu Nov 12 18:23:51 2009
@@ -24,7 +24,7 @@
 
 import org.apache.myfaces.tobago.component.Attributes;
 import org.apache.myfaces.tobago.component.Facets;
-import org.apache.myfaces.tobago.renderkit.LayoutableRendererBase;
+import org.apache.myfaces.tobago.renderkit.LayoutComponentRendererBase;
 import org.apache.myfaces.tobago.renderkit.html.HtmlConstants;
 import org.apache.myfaces.tobago.renderkit.html.util.HtmlRendererUtils;
 import org.apache.myfaces.tobago.renderkit.util.RenderUtil;
@@ -35,7 +35,7 @@
 import javax.faces.context.FacesContext;
 import java.io.IOException;
 
-public class SelectBooleanCheckboxRenderer extends LayoutableRendererBase {
+public class SelectBooleanCheckboxRenderer extends LayoutComponentRendererBase {
 
   public void encodeEnd(FacesContext facesContext, UIComponent component)
       throws IOException {

Modified: myfaces/tobago/trunk/sandbox/src/main/java/org/apache/myfaces/tobago/renderkit/wml/standard/standard/tag/SelectOneChoiceRenderer.java
URL: http://svn.apache.org/viewvc/myfaces/tobago/trunk/sandbox/src/main/java/org/apache/myfaces/tobago/renderkit/wml/standard/standard/tag/SelectOneChoiceRenderer.java?rev=835483&r1=835482&r2=835483&view=diff
==============================================================================
--- myfaces/tobago/trunk/sandbox/src/main/java/org/apache/myfaces/tobago/renderkit/wml/standard/standard/tag/SelectOneChoiceRenderer.java (original)
+++ myfaces/tobago/trunk/sandbox/src/main/java/org/apache/myfaces/tobago/renderkit/wml/standard/standard/tag/SelectOneChoiceRenderer.java Thu Nov 12 18:23:51 2009
@@ -25,7 +25,7 @@
 import org.apache.commons.collections.keyvalue.DefaultKeyValue;
 import org.apache.myfaces.tobago.component.AbstractUIPage;
 import org.apache.myfaces.tobago.component.Facets;
-import org.apache.myfaces.tobago.renderkit.LayoutableRendererBase;
+import org.apache.myfaces.tobago.renderkit.LayoutComponentRendererBase;
 import org.apache.myfaces.tobago.renderkit.html.util.HtmlRendererUtils;
 import org.apache.myfaces.tobago.renderkit.util.RenderUtil;
 import org.apache.myfaces.tobago.util.ComponentUtils;
@@ -39,7 +39,7 @@
 import java.io.IOException;
 import java.util.List;
 
-public class SelectOneChoiceRenderer extends LayoutableRendererBase {
+public class SelectOneChoiceRenderer extends LayoutComponentRendererBase {
 
   public void encodeEnd(FacesContext facesContext, UIComponent component)
       throws IOException {

Modified: myfaces/tobago/trunk/sandbox/src/main/java/org/apache/myfaces/tobago/taglib/sandbox/RichTextEditorTagDeclaration.java
URL: http://svn.apache.org/viewvc/myfaces/tobago/trunk/sandbox/src/main/java/org/apache/myfaces/tobago/taglib/sandbox/RichTextEditorTagDeclaration.java?rev=835483&r1=835482&r2=835483&view=diff
==============================================================================
--- myfaces/tobago/trunk/sandbox/src/main/java/org/apache/myfaces/tobago/taglib/sandbox/RichTextEditorTagDeclaration.java (original)
+++ myfaces/tobago/trunk/sandbox/src/main/java/org/apache/myfaces/tobago/taglib/sandbox/RichTextEditorTagDeclaration.java Thu Nov 12 18:23:51 2009
@@ -33,7 +33,7 @@
  */
 // TODO: switched off @Tag(name="richTextEditor")
 public interface RichTextEditorTagDeclaration {
-//extends TextInputTagDeclaration,
+//extends InputTagDeclaration,
     /*HasIdBindingAndRendered, HasValue, HasLabelAndAccessKey {
   @TagAttribute
   @UIComponentTagAttribute(type = "java.lang.Boolean")

Modified: myfaces/tobago/trunk/src/docbook/tobago-tutorial.xml
URL: http://svn.apache.org/viewvc/myfaces/tobago/trunk/src/docbook/tobago-tutorial.xml?rev=835483&r1=835482&r2=835483&view=diff
==============================================================================
--- myfaces/tobago/trunk/src/docbook/tobago-tutorial.xml (original)
+++ myfaces/tobago/trunk/src/docbook/tobago-tutorial.xml Thu Nov 12 18:23:51 2009
@@ -264,7 +264,7 @@
     <para>Tobago also contains a deprecated tree control. The API of this tree
     control does not really fit to the other controls. But the sandbox already
     contains a version of the future tree control, which will be introduced
-    in Tobago 1.1.</para>
+    in Tobago 1.5.</para>
 
     <sect2>
       <title>Basic Controls</title>

Modified: myfaces/tobago/trunk/theme/scarborough/src/main/java/org/apache/myfaces/tobago/renderkit/html/scarborough/standard/tag/ActionRenderer.java
URL: http://svn.apache.org/viewvc/myfaces/tobago/trunk/theme/scarborough/src/main/java/org/apache/myfaces/tobago/renderkit/html/scarborough/standard/tag/ActionRenderer.java?rev=835483&r1=835482&r2=835483&view=diff
==============================================================================
--- myfaces/tobago/trunk/theme/scarborough/src/main/java/org/apache/myfaces/tobago/renderkit/html/scarborough/standard/tag/ActionRenderer.java (original)
+++ myfaces/tobago/trunk/theme/scarborough/src/main/java/org/apache/myfaces/tobago/renderkit/html/scarborough/standard/tag/ActionRenderer.java Thu Nov 12 18:23:51 2009
@@ -22,9 +22,9 @@
  * $Id$
  */
 
-import org.apache.myfaces.tobago.renderkit.LayoutableRendererBase;
+import org.apache.myfaces.tobago.renderkit.LayoutComponentRendererBase;
 
-public class ActionRenderer extends LayoutableRendererBase {
+public class ActionRenderer extends LayoutComponentRendererBase {
 
 
   public ActionRenderer() {

Modified: myfaces/tobago/trunk/theme/scarborough/src/main/java/org/apache/myfaces/tobago/renderkit/html/scarborough/standard/tag/BoxRenderer.java
URL: http://svn.apache.org/viewvc/myfaces/tobago/trunk/theme/scarborough/src/main/java/org/apache/myfaces/tobago/renderkit/html/scarborough/standard/tag/BoxRenderer.java?rev=835483&r1=835482&r2=835483&view=diff
==============================================================================
--- myfaces/tobago/trunk/theme/scarborough/src/main/java/org/apache/myfaces/tobago/renderkit/html/scarborough/standard/tag/BoxRenderer.java (original)
+++ myfaces/tobago/trunk/theme/scarborough/src/main/java/org/apache/myfaces/tobago/renderkit/html/scarborough/standard/tag/BoxRenderer.java Thu Nov 12 18:23:51 2009
@@ -48,7 +48,7 @@
     UIPanel toolbar = (UIPanel) box.getFacet(Facets.TOOL_BAR);
     Style style = new Style(facesContext, box);
     if (toolbar != null) {
-      Measure padding = ThemeConfig.getMeasure(facesContext, box, "paddingTopWhenToolbar");
+      Measure padding = ThemeConfig.getMeasure(facesContext, box.getRendererType(), "paddingTopWhenToolbar");
       style.setPaddingTop(padding);
       style.setPaddingBottom(PixelMeasure.ZERO);
     }

Modified: myfaces/tobago/trunk/theme/scarborough/src/main/java/org/apache/myfaces/tobago/renderkit/html/scarborough/standard/tag/ButtonRenderer.java
URL: http://svn.apache.org/viewvc/myfaces/tobago/trunk/theme/scarborough/src/main/java/org/apache/myfaces/tobago/renderkit/html/scarborough/standard/tag/ButtonRenderer.java?rev=835483&r1=835482&r2=835483&view=diff
==============================================================================
--- myfaces/tobago/trunk/theme/scarborough/src/main/java/org/apache/myfaces/tobago/renderkit/html/scarborough/standard/tag/ButtonRenderer.java (original)
+++ myfaces/tobago/trunk/theme/scarborough/src/main/java/org/apache/myfaces/tobago/renderkit/html/scarborough/standard/tag/ButtonRenderer.java Thu Nov 12 18:23:51 2009
@@ -26,6 +26,7 @@
 import org.apache.commons.logging.LogFactory;
 import org.apache.myfaces.tobago.component.Attributes;
 import org.apache.myfaces.tobago.component.UIButton;
+import org.apache.myfaces.tobago.config.ThemeConfig;
 import org.apache.myfaces.tobago.layout.Measure;
 import org.apache.myfaces.tobago.layout.PixelMeasure;
 import org.apache.myfaces.tobago.renderkit.CommandRendererBase;
@@ -129,21 +130,19 @@
   public Measure getPreferredWidth(FacesContext facesContext, UIComponent component) {
 
     UIButton button = (UIButton) component;
-    int width = 0;
+    Measure width = PixelMeasure.ZERO;
     boolean image = button.getImage() != null;
     if (image) {
-      width = getConfiguredValue(facesContext, button, "imageWidth");
+      width = ThemeConfig.getMeasure(facesContext, button.getRendererType(), "imageWidth");
     }
     LabelWithAccessKey label = new LabelWithAccessKey(button);
 
     if (label.getText() != null) {
-      width += RenderUtil.calculateStringWidth(facesContext, button, label.getText());
-    }
-    int padding = getConfiguredValue(facesContext, button, "paddingWidth");
-    width += 2 * padding;
-    if (image && label.getText() != null) {
-      width += padding;
+      width = width.add(RenderUtil.calculateStringWidth(facesContext, button, label.getText()));
     }
+    Measure padding = ThemeConfig.getMeasure(facesContext, button.getRendererType(), "paddingWidth");
+    // left padding, right padding and when an image and an text then a middle padding.
+    width = width.add(padding.multiply(image && label.getText() != null ? 3 : 2));
 
     return new PixelMeasure(width);
   }

Modified: myfaces/tobago/trunk/theme/scarborough/src/main/java/org/apache/myfaces/tobago/renderkit/html/scarborough/standard/tag/CalendarRenderer.java
URL: http://svn.apache.org/viewvc/myfaces/tobago/trunk/theme/scarborough/src/main/java/org/apache/myfaces/tobago/renderkit/html/scarborough/standard/tag/CalendarRenderer.java?rev=835483&r1=835482&r2=835483&view=diff
==============================================================================
--- myfaces/tobago/trunk/theme/scarborough/src/main/java/org/apache/myfaces/tobago/renderkit/html/scarborough/standard/tag/CalendarRenderer.java (original)
+++ myfaces/tobago/trunk/theme/scarborough/src/main/java/org/apache/myfaces/tobago/renderkit/html/scarborough/standard/tag/CalendarRenderer.java Thu Nov 12 18:23:51 2009
@@ -30,7 +30,7 @@
 import org.apache.myfaces.tobago.context.TobagoFacesContext;
 import org.apache.myfaces.tobago.model.CalendarModel;
 import org.apache.myfaces.tobago.model.DateModel;
-import org.apache.myfaces.tobago.renderkit.LayoutableRendererBase;
+import org.apache.myfaces.tobago.renderkit.LayoutComponentRendererBase;
 import org.apache.myfaces.tobago.renderkit.html.HtmlAttributes;
 import org.apache.myfaces.tobago.renderkit.html.HtmlConstants;
 import org.apache.myfaces.tobago.renderkit.html.util.HtmlRendererUtils;
@@ -47,7 +47,7 @@
 import java.util.GregorianCalendar;
 import java.util.Locale;
 
-public class CalendarRenderer extends LayoutableRendererBase {
+public class CalendarRenderer extends LayoutComponentRendererBase {
 
   private static final Log LOG = LogFactory.getLog(CalendarRenderer.class);