On Thu, Feb 28, 2008 at 10:54 AM, Newgro <[EMAIL PROTECTED]> wrote:

>  firstly sorry if i brought you to the wrong way - i use a treetable, not a
>  tree. My effects on code below is that the nodes are diplayed only in one
>  row. The second row is not visible.

OK, I have never used TreeTable, and I cannot test it right now, but
it should not affect the MultiLineLabel where it appears.  Perhaps
it's that the \n is the last character, try adding something after it.
 Other than that, no idea.

Thomas


>  My html:
>  <wicket:panel>
>   <form wicket:id="treeform">
>     <div class="tree" wicket:id="treeTable"></div>
>   </form>
>  </wicket:panel>
>
>  My data code
>  public String getName() {
>   StringBuilder sb= new StringBuilder();
>   sb.append("EZ: ").append(getPrice(getRoomRate().getPrice())).append(" €");
>   sb.append(" DZ: ").append(getPrice(getRoomRate().getPrice2())).append("
>  €\n"); <-- here the newline!!
>   sb.append("  (").append(getDate(getRoomRate().getFromDate()));
>   sb.append(" - ");
>   sb.append(getDate(getRoomRate().getToDate())).append(")");
>   return sb.toString();
>  }
>
>
>  Here is my code:
>
>     TreeTable tree = new TreeTable("treeTable", treeModel, columns) {
>
>       /**
>        * Represents a content of a cell in TreeColumn (column containing the
>  actual tree).
>        * This has been copied to switch the label to a multiline instance.
>        * @author Matej Knopp
>        * @author r.dieckmann
>        */
>       class MyTreeFragment extends Fragment {
>
>         /**
>          * Constructor.
>          * @param id the wicket:id of component
>          * @param node current
>          * @param level
>          * @param renderNodeCallback
>          *            The call back for rendering nodes
>          */
>         @SuppressWarnings("deprecation")
>         public MyTreeFragment(String id, final TreeNode node, int level,
>  final IRenderNodeCallback renderNodeCallback) {
>           super(id, "fragment");
>
>           add(newIndentation(this, "indent", node, level));
>           add(newJunctionLink(this, "link", "image", node));
>
>           MarkupContainer nodeLink = newNodeLink(this, "nodeLink", node);
>           nodeLink.add(newNodeIcon(nodeLink, "icon", node));
>           nodeLink.add(new MultiLineLabel("label", new
>  AbstractReadOnlyModel() {
>             /**
>              * @see
>  org.apache.wicket.model.AbstractReadOnlyModel#getObject()
>              */
>             public Object getObject() {
>               return renderNodeCallback.renderNode(node);
>             }
>           }));
>           add(nodeLink);
>         }
>       }
>
>       /**
>        * @see
>  
> org.apache.wicket.extensions.markup.html.tree.table.TreeTable#newTreePanel(org.apache.wicket.MarkupContainer,
>  java.lang.String, javax.swing.tree.TreeNode, int,
>  
> org.apache.wicket.extensions.markup.html.tree.table.TreeTable.IRenderNodeCallback)
>        */
>       @Override
>       protected Component newTreePanel(MarkupContainer pParent, String pId,
>  TreeNode pNode, int pLevel, IRenderNodeCallback pRenderNodeCallback) {
>         return new MyTreeFragment(pId, pNode, pLevel, pRenderNodeCallback);
>       }
>
>       /**
>        * @see
>  
> org.apache.wicket.extensions.markup.html.tree.DefaultAbstractTree#newNodeLink(org.apache.wicket.MarkupContainer,
>  java.lang.String, javax.swing.tree.TreeNode)
>        */
>       protected MarkupContainer newNodeLink(MarkupContainer pParent, String
>  pId, final TreeNode pNode) {
>         MarkupContainer m = newLink(pParent, pId, new ILinkCallback() {
>
>           /**
>            * @see
>  
> org.apache.wicket.extensions.markup.html.tree.DefaultAbstractTree.ILinkCallback#onClick(org.apache.wicket.ajax.AjaxRequestTarget)
>            */
>           public void onClick(AjaxRequestTarget target) {
>             if (!getTreeState().isNodeSelected(pNode)) {
>               getTreeState().selectNode(pNode, true);
>               onNodeLinkClicked(target, pNode);
>               updateTree(target);
>             }
>           }
>         });
>         DefaultMutableTreeNode t = (DefaultMutableTreeNode) pNode;
>         if (t.getUserObject() instanceof TreeModelCategoryBean) {
>           TreeModelCategoryBean c = (TreeModelCategoryBean)
>  t.getUserObject();
>           ICategoryTO categoryTO = c.getCategory();
>           m.setEnabled(categoryTO != null && categoryTO.isAvailable());
>         }
>         return m;
>       }
>
>       /**
>        * @see
>  
> org.apache.wicket.extensions.markup.html.tree.DefaultAbstractTree#onNodeLinkClicked(org.apache.wicket.ajax.AjaxRequestTarget,
>  javax.swing.tree.TreeNode)
>        */
>       protected void onNodeLinkClicked(AjaxRequestTarget pTarget, TreeNode
>  pNode) {
>         super.onNodeLinkClicked(pTarget, pNode);
>         DefaultMutableTreeNode dnode = (DefaultMutableTreeNode) pNode;
>         ITreeModelBean current = (ITreeModelBean) dnode.getUserObject();
>         if (current instanceof TreeModelCategoryBean) {
>           refreshNodes(pTarget, pNode);
>         } else if (current instanceof TreeModelPackageBean) {
>           refreshNodes(pTarget, dnode.getParent());
>         }
>       }
>
>       private void refreshNodes(AjaxRequestTarget pTarget, TreeNode
>  pCategoryNode) {
>         DefaultMutableTreeNode dnode = (DefaultMutableTreeNode)
>  pCategoryNode;
>         ITreeModelBean current = (ITreeModelBean) dnode.getUserObject();
>         if (current instanceof TreeModelCategoryBean) {
>           TreeModelCategoryBean c = (TreeModelCategoryBean) current;
>           getTreeState().expandNode(pCategoryNode);
>           TreeNode firstChild = dnode.getFirstChild();
>           selectAllRoomRates(this, pCategoryNode);
>           if (getTreeState().isNodeSelected(firstChild)) {
>             try {
>               onNodeChanged(pTarget, c.getCategory());
>             } catch (Exception e) {
>               ServiceOfferingCategoryPanel.this.handleException(e, pTarget);
>             }
>           }
>         }
>       }
>     };
>
>  Cheers
>  Per
>  --
>  View this message in context: 
> http://www.nabble.com/Can-i-add-multiple-lines-to-a-node-link-in-tree--tp15617892p15733117.html
>
>
> Sent from the Wicket - User mailing list archive at Nabble.com.
>
>
>  ---------------------------------------------------------------------
>  To unsubscribe, e-mail: [EMAIL PROTECTED]
>  For additional commands, e-mail: [EMAIL PROTECTED]
>
>

Reply via email to