Don't use that tree, use the one at http://tacos.sourceforge.net.
On 12/5/05, Istvan Zakar <[EMAIL PROTECTED]> wrote: > > Hi again! I've forgotten to paste the code, maybe someone can help me > solve the problem, thanks. > > Home.html: > <html jwcid="@Shell" title="Using The Tapestry Tree Control"> > <body jwcid="@Body"> > <h1>First Tree</h1> > > <span class="tree" jwcid="treeView"> > <span jwcid="treeDataView"> > <span jwcid="treeNodeView"/> > </span> > </span> > <span jwcid="info"/> > > </body> > </html> > > Home.page: > <?xml version="1.0"?> > <!DOCTYPE page-specification PUBLIC > "-//Apache Software Foundation//Tapestry Specification 4.0//EN" > "http://jakarta.apache.org/tapestry/dtd/Tapestry_4_0.dtd"> > > <page-specification class="com.ttdev.newtree3v4.FirstTreePage"> > > <component id="treeView" type="contrib:TreeView"> > <binding name="treeModel" value="treeModel"/> > <binding name="treeStateListener" value="treeStateListener"/> > </component> > > <component id="treeDataView" type="contrib:TreeDataView"> > <binding name="treeView" value="components.treeView"/> > <binding name="value" value="value"/> > </component> > > <component id="treeNodeView" type="contrib:TreeNodeView"> > <binding name="treeDataView" value="components.treeDataView"/> > <binding name="makeNodeDirect" value="true"/> > <binding name="nodeRenderFactory" value="renderFactory"/> > <binding name="showNodeImages" value="false"/> > </component> > > <component id="info" type="Insert"> > <binding name="value" value="lastNodeSelectedMsg"/> > </component> > > </page-specification> > > FirstTreePage.java: > public class FirstTreePage extends BasePage implements ITreeStateListener > { > private ITreeDataModel treeDataModel; > > private ITreeModel treeModel; > > private Object value; > > public FirstTreePage() { > treeModel=null; > } > public INodeRenderFactory getRenderFactory() > { > //System.out.println("getRenderFactory"); > return new SimpleNodeRenderFactory(); > } > > public void attach(IEngine value,IRequestCycle cycle) { > super.attach(value,cycle); > } > > public void detach() { > super.detach(); > treeDataModel = null; > value = null; > } > > public ITreeStateListener getTreeStateListener() { > System.out.println("getTreeStateListener"); > return this; > } > > /* > * @see > org.apache.tapestry.contrib.tree.model.ITreeStateListener#treeStateChanged > (org.apache.tapestry.contrib.tree.model.TreeStateEvent) > */ > public void treeStateChanged(TreeStateEvent objEvent) { > System.out.println("TreeStateChanged"); > // Get the StringTreeNode object that was selected > TreeView treeView = (TreeView)getComponent("treeView"); > if(treeView != null){ > ITreeDataModel thisTreeDataModel = > treeView.getTreeModel().getTreeDataModel(); > Object selectedNode = > thisTreeDataModel.getObject(objEvent.getNodeUID()); > if(selectedNode instanceof StringTreeNode){ > > lastNodeSelectedValue = > ((StringTreeNode)selectedNode).getValue(); > > } > } else { // This shouldn't happen > lastNodeSelectedValue = objEvent.getNodeUID().toString(); > } > } > > String lastNodeSelectedValue; > public String getLastNodeSelectedMsg() > { > if(lastNodeSelectedValue==null){ > return null; > } > return lastNodeSelectedValue + " was the last node selected."; > } > /** > * Get the TreeModel that contains the nodes to be rendered > * > * @return ITreeModel > */ > public ITreeModel getTreeModel() { > System.out.println("GetTreeModell"); > if (treeModel == null) { > > > // Create and "connect" all the nodes > TreeNode node1 = new StringTreeNode("Root Node",1); > TreeNode node2 = new StringTreeNode("Child One",2); > TreeNode node2a = new StringTreeNode("Grandchild One",3); > node2.insert(node2a); > node1.insert(node2); > TreeNode node3 = new StringTreeNode("Child Two",4); > TreeNode node3a = new StringTreeNode("GrandChild Two",5); > node3.insert(node3a); > TreeNode node3a1 = new StringTreeNode("Great Grandchild > One",6); > node3a.insert(node3a1); > node1.insert(node3); > > // Wrap the root node in a SimpleTreeDataModel > treeDataModel = new SimpleTreeDataModel(node1); > // Wrap the SimpleTreeDataModel in a SimpleTreeModel > treeModel = new SimpleTreeModel(treeDataModel); > } > return treeModel; > } > } > > > > 2005/12/5, Istvan Zakar <[EMAIL PROTECTED]>: > > Hello! > > > > I hope i'm sending this message to the right place. I've tried to > > figure out how to use contrib:tree in tapestry 4. I've managed to > > display a tree, and I can expand the root node, but when I try to > > expand the following node the whole tree collapses. > > > > Please help me :) > > > > Best Regards, > > Istvan > > > > --------------------------------------------------------------------- > To unsubscribe, e-mail: [EMAIL PROTECTED] > For additional commands, e-mail: [EMAIL PROTECTED] > >
