Den 15.06.2011 16:05, skrev Chris Bartlett:
Yep, in here it seems..
http://svn.apache.org/repos/asf/pivot/trunk/wtk-terra/src/org/apache/pivot/wtk/skin/terra/TerraTreeViewSkin.java

See mouseUp, moiuseDown & mouseClick.

Cool, so my working solution is like this:

private class DoubleClickEditsAdapter extends ComponentMouseButtonListener.Adapter { public boolean mouseClick(Component component, Mouse.Button button, int x, int y, int count) {
        if (count == 2 && button == Mouse.Button.LEFT) {
            Sequence.Tree.Path path = getNodeAt(y);
            if (path != null) {
TreeNode node = (TreeNode) Sequence.Tree.get(getTreeData(), path);
                if (node instanceof TreeBranch) {
                    TerraTreeViewSkin skin = (TerraTreeViewSkin) getSkin();
int baseNodeX = path.getLength() * (skin.getIndent() + skin.getSpacing());
                    if (x > baseNodeX)
                        editNode(node);
                } else {
                    editNode(node);
                }
            }
        }
        return true;
    }
}


I allow double clicking anywhere on a TreeNode to edit it, but only to the right of the branch controls on a TreeBranch. Will refactor it to create a utility method though :)

-- Edvin

Reply via email to