You are viewing a plain text version of this content. The canonical link for it is here.
Posted to users@tapestry.apache.org by Jesse Kuhnert <jk...@gmail.com> on 2005/08/11 14:38:55 UTC

Re: [Tacos-devel] Re: Recursive rendering of tree model

Actually, the tacos4 module, which is tacos completely ported over to
tapestry 4 does use div tags to mark each node AND parent node in the
tree...

The tree also happens to support ajax requests right out of the box ;)
It should be officially released by the end of this week, along with a
lot of other enhancements to the library.

jesse
On 8/11/05, Norbert Sándor <de...@erinors.com> wrote:
> I have created a Tapestry4 compatible Tree component which uses real
> recursive rendering using Block and RenderBlock components. You should try
> using these components to implement template-based recursion.
> 
> BR,
> Norbi
> 
> ----- Original Message -----
> From: "Paul Cantrell" <ca...@pobox.com>
> To: "Tapestry users" <ta...@jakarta.apache.org>
> Sent: Thursday, August 11, 2005 12:50 AM
> Subject: Re: Recursive rendering of tree model
> 
> 
> Actually, on second inspection, that's not quite it.
> 
> The Tacos components uses CSS to indent the data:
> 
>      <div style="margin-left: 0px">
>          Parent
>      </div>
>      <div style="margin-left: 16px">
>          Child
>      </div>
> 
> But for my purposes (because of javascript manipulation of the DOM),
> it's very important that the tags actually *be nested* recursively:
> 
>      <div class="tree-node">
>          Parent
>          <div class="tree-node">
>              Child
>          </div>
>      </div>
> 
> So I guess it's not what I'm after. Slick component, though!
> 
> Cheers,
> 
> Paul
> 
> 
> On Aug 10, 2005, at 4:56 PM, Viktor Szathmary wrote:
> 
> > Check out the Tacos Tree component  (http://tacos.sf.net/). The source
> > has a TreeIterator that you can use independently to flatten out
> > hierarchical iterations so you can use a regular Foreach (while
> > tracking depth)...
> >
> > check the source for:
> >
> > http://cvs.sourceforge.net/viewcvs.py/tacos/tacos/src/net/sf/tacos/
> > tree/TreeIterator.java?rev=1.2&view=auto
> >
> >   viktor
> >
> >
> > On 8/10/05, Paul Cantrell <ca...@pobox.com> wrote:
> >
> >> Suppose I have some data like this:
> >>
> >>      public interface TaxonomyTree
> >>          {
> >>          public String getAnimalName();
> >>          public Set<TaxonomyTree> getChildren();
> >>          }
> >>
> >> ...and suppose I want to render it in a page with a recursively
> >> nested structure, so that my HTML tag structure matches the tree
> >> structure of the data:
> >>
> >>      <div>
> >>          Birds
> >>          <div> Hummingbird </div>
> >>          <div> Warbler </div>
> >>          <div> Raptor
> >>              <div> Eagle </div>
> >>              <div> Vulture </div>
> >>          </div>
> >>      </div>
> >>      <div>
> >>          Mammals
> >>          <div> Platypus </div>
> >>      ...etc...
> >>
> >> Of course, *if* I know that the tree is n levels deep, I can render
> >> it with n nested @For components (though it's pretty ugly!). But if I
> >> don't know the depth of the tree, I need true recursion.
> >>
> >> Is there a way to do this without writing a custom component for my
> >> specific data? Is anybody aware of a generic component that will do
> >> the job? I'm hoping for something like this:
> >>
> >>      <span jwcid="animalTree@RecursiveFor"  source="ognl:treeRootNodes">
> >>          <div>
> >>              <span jwcid="@Insert"
> >> value="ognl:components.animalTree.value.animalName" />
> >>              <span jwcid="@RecursiveChildren" loop="animalTree"
> >>                  value="ognl:components.animalTree.value.children" />
> >>          </div>
> >>      </span>
> >>
> >> If nobody's aware of such a thing, I might try my hand at writing it.
> >> But I'd rather spare myself the effort if there's already a good
> >> solution out there....
> >>
> >> Cheers,
> >>
> >> Paul
> >>
> >> _________________________________________________________________
> >>
> >> "Les grandes personnes ne comprennent jamais rien toutes seules,
> >>   et c'est fatigant, pour les enfants, de toujours et toujours
> >>   leur donner des explications."     -- Antoine de Saint-Exupéry
> >>
> >>
> >> ---------------------------------------------------------------------
> >> To unsubscribe, e-mail: tapestry-user-unsubscribe@jakarta.apache.org
> >> For additional commands, e-mail: tapestry-user- help@jakarta.apache.org
> >>
> >>
> >>
> >
> > ---------------------------------------------------------------------
> > To unsubscribe, e-mail: tapestry-user-unsubscribe@jakarta.apache.org
> > For additional commands, e-mail: tapestry-user-help@jakarta.apache.org
> >
> >
> >
> 
> _________________________________________________________________
> 
> "The pursuit of truth and beauty is a sphere of activity in which
> we are permitted to remain children all our lives."
> -- Albert Einstein
> 
> 
> 
> ---------------------------------------------------------------------
> To unsubscribe, e-mail: tapestry-user-unsubscribe@jakarta.apache.org
> For additional commands, e-mail: tapestry-user-help@jakarta.apache.org
> 
> 
> 
> 
> 
> 
> 
> -------------------------------------------------------
> SF.Net email is Sponsored by the Better Software Conference & EXPO
> September 19-22, 2005 * San Francisco, CA * Development Lifecycle Practices
> Agile & Plan-Driven Development * Managing Projects & Teams * Testing & QA
> Security * Process Improvement & Measurement * http://www.sqe.com/bsce5sf
> _______________________________________________
> Tacos-devel mailing list
> Tacos-devel@lists.sourceforge.net
> https://lists.sourceforge.net/lists/listinfo/tacos-devel
>

---------------------------------------------------------------------
To unsubscribe, e-mail: tapestry-user-unsubscribe@jakarta.apache.org
For additional commands, e-mail: tapestry-user-help@jakarta.apache.org