[richfaces-svn-commits] JBoss Rich Faces SVN: r2180 - in trunk: ui/panelbar/src/main/java/org/richfaces/component and 4 other directories.
richfaces-svn-commits at lists.jboss.org
richfaces-svn-commits at lists.jboss.org
Thu Aug 9 12:01:11 EDT 2007
Author: nbelaevski
Date: 2007-08-09 12:01:11 -0400 (Thu, 09 Aug 2007)
New Revision: 2180
Modified:
trunk/cdk/
trunk/ui/panelbar/src/main/java/org/richfaces/component/UIPanelBarItem.java
trunk/ui/panelbar/src/main/templates/panelBarItem.jspx
trunk/ui/tabPanel/src/main/java/org/richfaces/component/UITab.java
trunk/ui/toolBar/src/main/java/org/richfaces/component/UIToolBarGroup.java
trunk/ui/toolBar/src/main/java/org/richfaces/renderkit/html/ToolBarGroupRenderer.java
Log:
http://jira.jboss.com/jira/browse/RF-570 fixed
Property changes on: trunk/cdk
___________________________________________________________________
Name: svn:ignore
+ target
Modified: trunk/ui/panelbar/src/main/java/org/richfaces/component/UIPanelBarItem.java
===================================================================
--- trunk/ui/panelbar/src/main/java/org/richfaces/component/UIPanelBarItem.java 2007-08-09 15:57:14 UTC (rev 2179)
+++ trunk/ui/panelbar/src/main/java/org/richfaces/component/UIPanelBarItem.java 2007-08-09 16:01:11 UTC (rev 2180)
@@ -21,6 +21,8 @@
package org.richfaces.component;
+import javax.faces.FacesException;
+import javax.faces.component.UIComponent;
import javax.faces.component.UIComponentBase;
public abstract class UIPanelBarItem
@@ -37,8 +39,16 @@
public abstract void setName(Object name);
public UIPanelBar getPanel(){
- //XXX by nick - andrew - panelBarItem is an immediate panelBar child, no need to traverse up a lot
- return (UIPanelBar) getParent();
+ UIComponent component = getParent();
+ while (component != null && !(component instanceof UIPanelBar)) {
+ component = component.getParent();
+ }
+
+ if (component == null) {
+ throw new FacesException("The component: " + this.getClientId(getFacesContext()) + " is not nested within " + UIPanelBar.class.getSimpleName());
+ } else {
+ return (UIPanelBar) component;
+ }
}
public boolean getRendersChildren() {
Modified: trunk/ui/panelbar/src/main/templates/panelBarItem.jspx
===================================================================
--- trunk/ui/panelbar/src/main/templates/panelBarItem.jspx 2007-08-09 15:57:14 UTC (rev 2179)
+++ trunk/ui/panelbar/src/main/templates/panelBarItem.jspx 2007-08-09 16:01:11 UTC (rev 2180)
@@ -10,9 +10,12 @@
component="org.richfaces.component.UIPanelBarItem">
<f:clientid var="clientId" />
- <div id="#{clientId}" class="dr-pnlbar rich-panelbar dr-pnlbar-ext #{component.panel.attributes['styleClass']}" style="#{component.panel.attributes['style']}">
- <div class="dr-pnlbar-h rich-panelbar-header #{component.panel.attributes['headerClass']} #{component.attributes['headerClass']}"
- style="#{component.panel.attributes['headerStyle']};#{component.attributes['headerStyle']}">
+
+ <c:object var="panel" value="#{component.panel}" type="javax.faces.component.UIComponent" />
+
+ <div id="#{clientId}" class="dr-pnlbar rich-panelbar dr-pnlbar-ext #{panel.attributes['styleClass']}" style="#{panel.attributes['style']}">
+ <div class="dr-pnlbar-h rich-panelbar-header #{panel.attributes['headerClass']} #{component.attributes['headerClass']}"
+ style="#{panel.attributes['headerStyle']};#{component.attributes['headerStyle']}">
<jsp:scriptlet><![CDATA[
if(component.getFacet("label")!=null && component.getFacet("label").isRendered()) {
]]></jsp:scriptlet>
@@ -25,8 +28,8 @@
}
]]></jsp:scriptlet>
</div>
- <div class="dr-pnlbar-h-act rich-panelbar-header-act #{component.panel.attributes['headerClass']} #{component.attributes['headerClass']} #{component.panel.attributes['headerClassActive']} #{component.attributes['headerClassActive']}"
- style="#{component.panel.attributes['headerStyle']};#{component.attributes['headerStyle']};#{component.panel.attributes['headerStyleActive']};#{component.attributes['headerStyleActive']};display: none;">
+ <div class="dr-pnlbar-h-act rich-panelbar-header-act #{panel.attributes['headerClass']} #{component.attributes['headerClass']} #{panel.attributes['headerClassActive']} #{component.attributes['headerClassActive']}"
+ style="#{panel.attributes['headerStyle']};#{component.attributes['headerStyle']};#{panel.attributes['headerStyleActive']};#{component.attributes['headerStyleActive']};display: none;">
<jsp:scriptlet><![CDATA[
if(component.getFacet("label")!=null && component.getFacet("label").isRendered()) {
@@ -42,8 +45,8 @@
</div>
<div style="display: none; width: 100%;">
- <table cellpadding="0" width="100%" style="height: 100%;"><tbody><tr><td class="dr-pnlbar-c rich-panelbar-content #{component.panel.attributes['contentClass']} #{component.attributes['contentClass']}"
- style="#{component.panel.attributes['contentStyle']};#{component.attributes['contentStyle']}">
+ <table cellpadding="0" width="100%" style="height: 100%;"><tbody><tr><td class="dr-pnlbar-c rich-panelbar-content #{panel.attributes['contentClass']} #{component.attributes['contentClass']}"
+ style="#{panel.attributes['contentStyle']};#{component.attributes['contentStyle']}">
<vcp:body>
<f:call name="renderChildren" />
</vcp:body>
Modified: trunk/ui/tabPanel/src/main/java/org/richfaces/component/UITab.java
===================================================================
--- trunk/ui/tabPanel/src/main/java/org/richfaces/component/UITab.java 2007-08-09 15:57:14 UTC (rev 2179)
+++ trunk/ui/tabPanel/src/main/java/org/richfaces/component/UITab.java 2007-08-09 16:01:11 UTC (rev 2180)
@@ -75,16 +75,16 @@
* @return {@link UITabPanel}
*/
public UITabPanel getPane() throws FacesException {
- UIComponent parent = this.getParent();
- if (parent instanceof UITabPanel) {
- return (UITabPanel) parent;
- }
+ UIComponent component = this.getParent();
+ while (component != null && !(component instanceof UITabPanel)) {
+ component = component.getParent();
+ }
- if (parent == null) {
- return null;
- }
-
- throw new FacesException("UITab " + this.getClientId(getFacesContext()) + "component not inside in tab panel");
+ if (component == null) {
+ throw new FacesException("The component: " + this.getClientId(getFacesContext()) + " is not nested within " + UITabPanel.class.getSimpleName());
+ } else {
+ return (UITabPanel) component;
+ }
}
/* (non-Javadoc)
Modified: trunk/ui/toolBar/src/main/java/org/richfaces/component/UIToolBarGroup.java
===================================================================
--- trunk/ui/toolBar/src/main/java/org/richfaces/component/UIToolBarGroup.java 2007-08-09 15:57:14 UTC (rev 2179)
+++ trunk/ui/toolBar/src/main/java/org/richfaces/component/UIToolBarGroup.java 2007-08-09 16:01:11 UTC (rev 2180)
@@ -21,6 +21,7 @@
package org.richfaces.component;
+import javax.faces.FacesException;
import javax.faces.component.UIComponent;
import javax.faces.component.UIComponentBase;
@@ -38,16 +39,15 @@
public abstract void setLocation(String location);
public UIToolBar getToolBar() {
- UIComponent parent = getParent();
- if (parent == null) {
- return null;
- }
-
- if (parent instanceof UIToolBar) {
- return (UIToolBar) parent;
- }
-
- //TODO nick - nick - message text
- throw new ClassCastException("Parent should be " + UIToolBar.class.getName());
+ UIComponent component = this.getParent();
+ while (component != null && !(component instanceof UIToolBar)) {
+ component = component.getParent();
+ }
+
+ if (component == null) {
+ throw new FacesException("The component: " + this.getClientId(getFacesContext()) + " is not nested within " + UIToolBar.class.getSimpleName());
+ } else {
+ return (UIToolBar) component;
+ }
}
}
Modified: trunk/ui/toolBar/src/main/java/org/richfaces/renderkit/html/ToolBarGroupRenderer.java
===================================================================
--- trunk/ui/toolBar/src/main/java/org/richfaces/renderkit/html/ToolBarGroupRenderer.java 2007-08-09 15:57:14 UTC (rev 2179)
+++ trunk/ui/toolBar/src/main/java/org/richfaces/renderkit/html/ToolBarGroupRenderer.java 2007-08-09 16:01:11 UTC (rev 2180)
@@ -54,9 +54,9 @@
String style = (String) toolBarGroup.getAttributes().get("style");
String styleClass = (String) toolBarGroup.getAttributes().get("styleClass");
if (null == styleClass) styleClass = "";
- String contentClass = (String) toolBarGroup.getParent().getAttributes().get("contentClass");
+ String contentClass = (String) toolBarGroup.getToolBar().getAttributes().get("contentClass");
if (null == contentClass) contentClass = "";
- String contentStyle = (String) toolBarGroup.getParent().getAttributes().get("contentStyle");
+ String contentStyle = (String) toolBarGroup.getToolBar().getAttributes().get("contentStyle");
if (component.getChildCount() > 0) {
for (Iterator it = component.getChildren().iterator(); it.hasNext();) {
More information about the richfaces-svn-commits
mailing list