Как добавить дочерний узел в выбранный узел TreeViewer в RCP 3.x

[Работа] У меня есть предопределенный просмотрщик дерева, где я могу динамически добавлять узлы в дерево, которое добавляется в конце.

Если я выберу узел и добавлю новый узел, этот новый узел должен быть добавлен в качестве дочернего к выбранному узлу. Кто-нибудь может мне помочь с этим?

Фрагмент моего рабочего кода

add.addSelectionListener(new SelectionAdapter() { 
        @Override
        public void widgetSelected(SelectionEvent e) {

            Shell dShell = PlatformUI.getWorkbench().getActiveWorkbenchWindow().getShell();
            ShowDialog1 dialog = new ShowDialog1(dShell);
            dialog.create();
            if (dialog.open() == Window.OK) {
                first = dialog.getFirstName();
                treeViewer.setInput(getRootNode(first));

            }
        }
    });

getRootNode()

public static ProjectTree mc = new ProjectTree("root");
private static ProjectTree getRootNode(String first) {
    ProjectTree node1 = new ProjectTree(first);
    mc.addChild(node1, "");
    return mc;
}

Класс ProjectTree

public class ProjectTree {
private String name;
private ArrayList<ProjectTree> children = new ArrayList<ProjectTree>();
private ProjectTree parent;
private String filepath;

public ProjectTree(String n) {
    name = n;
}

public ProjectTree addChild(ProjectTree child, String filepath) {
    children.add(child);
    child.parent = this;
    child.filepath = filepath;
    child.name = child.name;
    System.out.println("Children : " + children);
    return this;
}
}

0 ответов

Другие вопросы по тегам