Thanks, I know now where I went wrong.

Best regards,
Stefan

On Wed, 2008-06-04 at 06:16 -0700, Alexis wrote:
> Here's a basic treeview component i use (The backing models contain TreeNode
> objects)
> I made it abstract so the implementors just provide the fragment or panels
> that represent nodes.
> 
> TreeView.java : 
> 
> public abstract class TreeView extends Panel {
>     
>     public TreeView(String markupId, final IModel rootNodeModel) {
>         super(markupId, rootNodeModel);
>         add(new TreeNodeView("node", rootNodeModel));
>     }
>     
>     protected abstract Component newComponentForTreeNodeDescription(ListItem
> markupContainer, String markupId, TreeNode treeNode); 
>     
>     protected abstract Component newComponentForTreeNodeChildren(ListItem
> markupContainer, String markupId, TreeNode treeNode);
>     
>     private class TreeNodeView extends ListView {
>         
>         public TreeNodeView(String markupId, final IModel treeNodeModel) {
>             super(markupId, new LoadableDetachableModel() {
>                 protected Object load() {
>                     TreeNode node = (TreeNode)treeNodeModel.getObject();
>                     List children = node.getChildren();
>                     return children;
>                 };
>             });
>         }
>         
>         @Override
>         protected void populateItem(ListItem item) {
>             TreeNode currentChild = (TreeNode)item.getModelObject();
>             item.setOutputMarkupId(true);
>             item.add(newComponentForTreeNodeDescription(item, "node_desc",
> currentChild));
>             item.add(newComponentForTreeNodeChildren(item, "children",
> currentChild));
>         }
>         
>     }
>     
> }
> 
> TreeView.html :
> 
> <wicket:panel>
>       <li wicket:id="node">
>               
>               <ul wicket:id="children">
>               </ul>
>       </li>
>       <wicket:child/>
> </wicket:panel>
> 
> 
> 
> 
> 
> Stefan Selariu-2 wrote:
> > 
> > Hi guys!
> > 
> > I need to make generate something like this dynamically:
> > 
> > <div wicket:id="level1"> <!-- node component -->
> >   <div> <!-- caption -->
> >     
> >   </div>
> >   <div style="margin-left: 24px;"> <!-- children -->
> >     <div wicket:id="level2-1"> <!-- node component -->
> >       <div> <!-- caption -->
> >          # select 
> >       </div>
> >       <div style="margin-left: 24px;"> <!-- children -->
> >         <div wicket:id="level3"> <!-- node component -->
> >           <div> <!-- caption -->
> >             
> >           </div>
> >           <div style="margin-left: 24px;"> <!-- children -->
> >           </div>
> >         </div>
> >       </div>
> >     </div>
> >     <div wicket:id="level2-2"> <!-- node component -->
> >       <div> <!-- caption -->
> >         
> >       </div>
> >       <div style="margin-left: 24px;"> <!-- children -->
> >       </div>
> >     </div>
> >   </div>
> > </div>
> > 
> > This is a tree for which every node has a caption and children.
> > Can I create a wicket component for the tree node that supports my
> > example?
> > 
> > I need a component that behaves like the Loop but in a recursive way :)
> > 
> > Best regards,
> > Stefan
> > 
> > 
> > ---------------------------------------------------------------------
> > To unsubscribe, e-mail: [EMAIL PROTECTED]
> > For additional commands, e-mail: [EMAIL PROTECTED]
> > 
> > 
> > 
> 


---------------------------------------------------------------------
To unsubscribe, e-mail: [EMAIL PROTECTED]
For additional commands, e-mail: [EMAIL PROTECTED]

Reply via email to