You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@myfaces.apache.org by sc...@apache.org on 2005/09/07 17:51:17 UTC
svn commit: r279360 - in /myfaces: examples/trunk/simple/
tomahawk/trunk/src/java/org/apache/myfaces/custom/tree2/
Author: schof
Date: Wed Sep 7 08:51:08 2005
New Revision: 279360
URL: http://svn.apache.org/viewcvs?rev=279360&view=rev
Log:
Fixes MYFACES-531
Added:
myfaces/examples/trunk/simple/tree2NoNav.jsp
Modified:
myfaces/examples/trunk/simple/home.jsp
myfaces/examples/trunk/simple/tree2.jsp
myfaces/examples/trunk/simple/tree2ExpandAll.jsp
myfaces/examples/trunk/simple/tree2NiceWrap.jsp
myfaces/tomahawk/trunk/src/java/org/apache/myfaces/custom/tree2/HtmlTreeRenderer.java
Modified: myfaces/examples/trunk/simple/home.jsp
URL: http://svn.apache.org/viewcvs/myfaces/examples/trunk/simple/home.jsp?rev=279360&r1=279359&r2=279360&view=diff
==============================================================================
Binary files - no diff available.
Modified: myfaces/examples/trunk/simple/tree2.jsp
URL: http://svn.apache.org/viewcvs/myfaces/examples/trunk/simple/tree2.jsp?rev=279360&r1=279359&r2=279360&view=diff
==============================================================================
Binary files - no diff available.
Modified: myfaces/examples/trunk/simple/tree2ExpandAll.jsp
URL: http://svn.apache.org/viewcvs/myfaces/examples/trunk/simple/tree2ExpandAll.jsp?rev=279360&r1=279359&r2=279360&view=diff
==============================================================================
--- myfaces/examples/trunk/simple/tree2ExpandAll.jsp (original)
+++ myfaces/examples/trunk/simple/tree2ExpandAll.jsp Wed Sep 7 08:51:08 2005
@@ -38,29 +38,23 @@
<t:tree2 id="serverTree" value="#{treeBacker.expandedTreeData}" var="node" varNodeToggler="t" clientSideToggle="false" binding="#{treeBacker.tree}">
<f:facet name="person">
<h:panelGroup>
- <h:commandLink immediate="true" action="#{t.toggleExpanded}">
- <t:graphicImage value="/images/yellow-folder-open.png" rendered="#{t.nodeExpanded}" border="0"/>
- <t:graphicImage value="/images/yellow-folder-closed.png" rendered="#{!t.nodeExpanded}" border="0"/>
- </h:commandLink>
+ <t:graphicImage value="/images/yellow-folder-open.png" rendered="#{t.nodeExpanded}" border="0"/>
+ <t:graphicImage value="/images/yellow-folder-closed.png" rendered="#{!t.nodeExpanded}" border="0"/>
<h:outputText value="#{node.description}" styleClass="nodeFolder"/>
</h:panelGroup>
</f:facet>
<f:facet name="foo-folder">
<h:panelGroup>
- <h:commandLink immediate="true" action="#{t.toggleExpanded}">
- <t:graphicImage value="/images/yellow-folder-open.png" rendered="#{t.nodeExpanded}" border="0"/>
- <t:graphicImage value="/images/yellow-folder-closed.png" rendered="#{!t.nodeExpanded}" border="0"/>
- </h:commandLink>
+ <t:graphicImage value="/images/yellow-folder-open.png" rendered="#{t.nodeExpanded}" border="0"/>
+ <t:graphicImage value="/images/yellow-folder-closed.png" rendered="#{!t.nodeExpanded}" border="0"/>
<h:outputText value="#{node.description}" styleClass="nodeFolder"/>
<h:outputText value=" (#{node.childCount})" styleClass="childCount" rendered="#{!empty node.children}"/>
</h:panelGroup>
</f:facet>
<f:facet name="bar-folder">
<h:panelGroup>
- <h:commandLink immediate="true" action="#{t.toggleExpanded}">
- <t:graphicImage value="/images/blue-folder-open.gif" rendered="#{t.nodeExpanded}" border="0"/>
- <t:graphicImage value="/images/blue-folder-closed.png" rendered="#{!t.nodeExpanded}" border="0"/>
- </h:commandLink>
+ <t:graphicImage value="/images/blue-folder-open.gif" rendered="#{t.nodeExpanded}" border="0"/>
+ <t:graphicImage value="/images/blue-folder-closed.png" rendered="#{!t.nodeExpanded}" border="0"/>
<h:outputText value="#{node.description}" styleClass="nodeFolder"/>
<h:outputText value=" (#{node.childCount})" styleClass="childCount" rendered="#{!empty node.children}"/>
</h:panelGroup>
Modified: myfaces/examples/trunk/simple/tree2NiceWrap.jsp
URL: http://svn.apache.org/viewcvs/myfaces/examples/trunk/simple/tree2NiceWrap.jsp?rev=279360&r1=279359&r2=279360&view=diff
==============================================================================
--- myfaces/examples/trunk/simple/tree2NiceWrap.jsp (original)
+++ myfaces/examples/trunk/simple/tree2NiceWrap.jsp Wed Sep 7 08:51:08 2005
@@ -36,19 +36,15 @@
<t:tree2 id="wrapTree" value="#{treeBacker.treeData}" var="node" varNodeToggler="t" clientSideToggle="false">
<f:facet name="person">
<h:panelGrid id="a" columns="2" cellpadding="0" cellspacing="0">
- <h:commandLink immediate="true" action="#{t.toggleExpanded}">
- <t:graphicImage value="/images/yellow-folder-open.png" rendered="#{t.nodeExpanded}" border="0"/>
- <t:graphicImage value="/images/yellow-folder-closed.png" rendered="#{!t.nodeExpanded}" border="0"/>
- </h:commandLink>
+ <t:graphicImage value="/images/yellow-folder-open.png" rendered="#{t.nodeExpanded}" border="0"/>
+ <t:graphicImage value="/images/yellow-folder-closed.png" rendered="#{!t.nodeExpanded}" border="0"/>
<h:outputText value="#{node.description}" styleClass="nodeFolder"/>
</h:panelGrid>
</f:facet>
<f:facet name="foo-folder">
<h:panelGrid id="b" columns="2" cellpadding="2" cellspacing="0">
- <h:commandLink immediate="true" action="#{t.toggleExpanded}">
- <t:graphicImage value="/images/yellow-folder-open.png" rendered="#{t.nodeExpanded}" border="0"/>
- <t:graphicImage value="/images/yellow-folder-closed.png" rendered="#{!t.nodeExpanded}" border="0"/>
- </h:commandLink>
+ <t:graphicImage value="/images/yellow-folder-open.png" rendered="#{t.nodeExpanded}" border="0"/>
+ <t:graphicImage value="/images/yellow-folder-closed.png" rendered="#{!t.nodeExpanded}" border="0"/>
<h:panelGroup>
<h:outputText value="#{node.description}" styleClass="nodeFolder"/>
<h:outputText value=" (#{node.childCount})" styleClass="childCount" rendered="#{!empty node.children}"/>
@@ -57,10 +53,8 @@
</f:facet>
<f:facet name="bar-folder">
<h:panelGrid id="c" columns="2" cellpadding="2" cellspacing="0">
- <h:commandLink immediate="true" action="#{t.toggleExpanded}">
- <t:graphicImage value="/images/blue-folder-open.gif" rendered="#{t.nodeExpanded}" border="0"/>
- <t:graphicImage value="/images/blue-folder-closed.png" rendered="#{!t.nodeExpanded}" border="0"/>
- </h:commandLink>
+ <t:graphicImage value="/images/blue-folder-open.gif" rendered="#{t.nodeExpanded}" border="0"/>
+ <t:graphicImage value="/images/blue-folder-closed.png" rendered="#{!t.nodeExpanded}" border="0"/>
<h:panelGroup>
<h:outputText value="#{node.description}" styleClass="nodeFolder"/>
<h:outputText value=" (#{node.childCount})" styleClass="childCount" rendered="#{!empty node.children}"/>
Added: myfaces/examples/trunk/simple/tree2NoNav.jsp
URL: http://svn.apache.org/viewcvs/myfaces/examples/trunk/simple/tree2NoNav.jsp?rev=279360&view=auto
==============================================================================
--- myfaces/examples/trunk/simple/tree2NoNav.jsp (added)
+++ myfaces/examples/trunk/simple/tree2NoNav.jsp Wed Sep 7 08:51:08 2005
@@ -0,0 +1,81 @@
+<%@ taglib uri="http://java.sun.com/jsf/html" prefix="h"%>
+<%@ taglib uri="http://java.sun.com/jsf/core" prefix="f"%>
+<%@ taglib uri="http://myfaces.apache.org/tomahawk" prefix="t"%>
+
+<!--
+/*
+ * Copyright 2005 The Apache Software Foundation.
+ *
+ * Licensed under the Apache License, Version 2.0 (the "License");
+ * you may not use this file except in compliance with the License.
+ * You may obtain a copy of the License at
+ *
+ * http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ */
+//-->
+<html>
+
+<%@include file="inc/head.inc" %>
+
+<body>
+
+<f:view>
+
+ <t:tree2 id="serverTree" value="#{treeBacker.treeData}" var="node" varNodeToggler="t" clientSideToggle="false" showNav="false">
+ <f:facet name="person">
+ <h:panelGroup>
+ <h:commandLink immediate="true" action="#{t.toggleExpanded}" rendered="#{!node.leaf}">
+ <t:graphicImage value="/images/yellow-folder-open.png" rendered="#{t.nodeExpanded}" border="0"/>
+ <t:graphicImage value="/images/yellow-folder-closed.png" rendered="#{!t.nodeExpanded}" border="0"/>
+ </h:commandLink>
+ <t:graphicImage value="/images/yellow-folder-closed.png" rendered="#{!t.nodeExpanded && node.leaf}" border="0"/>
+ <h:outputText value="#{node.description}" styleClass="nodeFolder"/>
+ </h:panelGroup>
+ </f:facet>
+ <f:facet name="foo-folder">
+ <h:panelGroup>
+ <h:commandLink immediate="true" action="#{t.toggleExpanded}" rendered="#{!node.leaf}">
+ <t:graphicImage value="/images/yellow-folder-open.png" rendered="#{t.nodeExpanded}" border="0"/>
+ <t:graphicImage value="/images/yellow-folder-closed.png" rendered="#{!t.nodeExpanded}" border="0"/>
+ </h:commandLink>
+ <t:graphicImage value="/images/yellow-folder-closed.png" rendered="#{!t.nodeExpanded && node.leaf}" border="0"/>
+ <h:outputText value="#{node.description}" styleClass="nodeFolder"/>
+ <h:outputText value=" (#{node.childCount})" styleClass="childCount" rendered="#{!empty node.children}"/>
+ </h:panelGroup>
+ </f:facet>
+ <f:facet name="bar-folder">
+ <h:panelGroup>
+ <h:commandLink immediate="true" action="#{t.toggleExpanded}" rendered="#{!node.leaf}">
+ <t:graphicImage value="/images/blue-folder-open.gif" rendered="#{t.nodeExpanded}" border="0"/>
+ <t:graphicImage value="/images/blue-folder-closed.png" rendered="#{!t.nodeExpanded}" border="0"/>
+ </h:commandLink>
+ <t:graphicImage value="/images/blue-folder-closed.png" rendered="#{!t.nodeExpanded && node.leaf}" border="0"/>
+ <h:outputText value="#{node.description}" styleClass="nodeFolder"/>
+ <h:outputText value=" (#{node.childCount})" styleClass="childCount" rendered="#{!empty node.children}"/>
+ </h:panelGroup>
+ </f:facet>
+ <f:facet name="document">
+ <h:panelGroup>
+ <h:commandLink immediate="true" styleClass="#{t.nodeSelected ? 'documentSelected':'document'}" actionListener="#{t.setNodeSelected}">
+ <t:graphicImage value="/images/document.png" border="0"/>
+ <h:outputText value="#{node.description}"/>
+ <f:param name="docNum" value="#{node.identifier}"/>
+ </h:commandLink>
+ </h:panelGroup>
+ </f:facet>
+ </t:tree2>
+
+</f:view>
+
+<%@include file="inc/page_footer.jsp" %>
+
+</body>
+
+</html>
+
Modified: myfaces/tomahawk/trunk/src/java/org/apache/myfaces/custom/tree2/HtmlTreeRenderer.java
URL: http://svn.apache.org/viewcvs/myfaces/tomahawk/trunk/src/java/org/apache/myfaces/custom/tree2/HtmlTreeRenderer.java?rev=279360&r1=279359&r2=279360&view=diff
==============================================================================
--- myfaces/tomahawk/trunk/src/java/org/apache/myfaces/custom/tree2/HtmlTreeRenderer.java (original)
+++ myfaces/tomahawk/trunk/src/java/org/apache/myfaces/custom/tree2/HtmlTreeRenderer.java Wed Sep 7 08:51:08 2005
@@ -76,11 +76,11 @@
}
private void restoreStateFromCookies(FacesContext context, UIComponent component) {
- String nodeId = null;
+ String nodeId = null;
HtmlTree tree = (HtmlTree)component;
String originalNodeId = tree.getNodeId();
-
- Map cookieMap = context.getExternalContext().getRequestCookieMap();
+
+ Map cookieMap = context.getExternalContext().getRequestCookieMap();
Cookie treeCookie = (Cookie)cookieMap.get(component.getId());
if (treeCookie == null || treeCookie.getValue() == null)
{
@@ -151,11 +151,11 @@
public void encodeBegin(FacesContext context, UIComponent component) throws IOException
{
- HtmlTree tree = (HtmlTree)component;
- // try to restore the tree state from cookies if no session scoped TreeState is supplied and preserveToggle is true in client mode
- if (!tree.getDataModel().getTreeState().isTransient() && getBoolean(component, JSFAttr.CLIENT_SIDE_TOGGLE, true) && getBoolean(component, JSFAttr.PRESERVE_TOGGLE, true))
- restoreStateFromCookies(context, component);
-
+ HtmlTree tree = (HtmlTree)component;
+ // try to restore the tree state from cookies if no session scoped TreeState is supplied and preserveToggle is true in client mode
+ if (!tree.getDataModel().getTreeState().isTransient() && getBoolean(component, JSFAttr.CLIENT_SIDE_TOGGLE, true) && getBoolean(component, JSFAttr.PRESERVE_TOGGLE, true))
+ restoreStateFromCookies(context, component);
+
// write javascript functions
encodeJavascript(context, component);
}
@@ -454,7 +454,18 @@
altSrc = "nav-plus-line-last.gif";
break;
+ // unacceptable bitmask combinations
+
+ case (EXPANDED + LINES):
+ case (EXPANDED + LINES + LAST):
+ case (EXPANDED):
+ case (EXPANDED + LAST):
+
+ throw new IllegalStateException("Encountered a node ["+ nodeId + "] + with an illogical state. " +
+ "Node is expanded but it is also considered a leaf (a leaf cannot be considered expanded.");
+
default:
+ // catch all for any other combinations
throw new IllegalArgumentException("Invalid bit mask of " + bitMask);
}