Nice! I like that approach. At some point I think I will update the
simple example to show how that can be done.
sean
On Apr 1, 2005 11:41 AM, Rob Decker <[EMAIL PROTECTED]> wrote:
> To answer my own question:
>
> <f:facet name="document">
> <h:panelGroup>
> <h:commandLink immediate="true"
> styleClass="#{t.nodeSelected ? 'documentSelected' :
> 'document'}"
> actionListener="#{t.setNodeSelected}"
> rendered="#{!t.nodeSelected}">
> <h: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>
>
> --
> Rob
>
> @objectsource.org
>
> > I'm reading earlier posts on the selection listener and trying figure out
> > what
> > exactly
> > is happening with it. I'm looking at
> >
> > <f:facet name="document">
> > <h:panelGroup>
> > <h:commandLink immediate="true" styleClass="document"
> > actionListener="#{t.setNodeSelected}"
> > rendered="#{!t.nodeSelected}">
> > <h:graphicImage value="/images/document.png" border="0"/>
> > <h:outputText value="#{node.description}"/>
> > <f:param name="docNum" value="#{node.identifier}"/>
> > </h:commandLink>
> > <h:commandLink immediate="true" styleClass="documentSelected"
> > actionListener="#{t.setNodeSelected}"
> > rendered="#{t.nodeSelected}">
> > <h: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>
> >
> > This what I see is happening:
> >
> > When someone clicks the first command link, the 't' is just internally
> > setting
> > a
> > variable so t.nodeSelected returns true. When page re-rendered the second
> > link
> > is
> > displayed, which has a style that does something to indicate the node is
> > selected.
> >
> > I'd like to continue being a lazy programmer and not have to type the
> > content
> > of my
> > command link twice. Is there a way the above can be refactored so it only
> > needs
> > one
> > command link? For instance in jstl I'd do:
> >
> > <c:if test="${t.nodeSelected}">
> > <h:commandLink immediate="true" styleClass="documentSelected"
> > actionListener="#{t.setNodeSelected}"
> > rendered="#{t.nodeSelected}">
> > </c:if>
> > <c:if test="${!t.nodeSelected}">
> > <h:commandLink immediate="true" styleClass="document"
> > actionListener="#{t.setNodeSelected}"
> > rendered="#{!t.nodeSelected}">
> > </c:if>
> > <h:graphicImage value="/images/document.png" border="0"/>
> > <h:outputText value="#{node.description}"/>
> > <f:param name="docNum" value="#{node.identifier}"/>
> > </h:commandLink>
> >
> > I'm not clear on mixing jstl and jsf. Is this something works or is there a
> > "JSF" way
> > to do this?
>
> > And what is the current tree way in
>
> > "Of course you
> > can always configure it to behave exactly the same as the current tree
> > if that is your wish "
> >
> > of doing selection?
>
>