package org.jboss.tools.bpel.reddeer.widget; import java.util.ArrayList; import java.util.List; import org.jboss.reddeer.swt.api.Tree; import org.jboss.reddeer.swt.api.TreeItem; import org.jboss.reddeer.swt.impl.tree.DefaultTree; import org.jboss.reddeer.swt.impl.tree.DefaultTreeItem; /** * * @author apodhrad * */ public class QuickPickTree { public static final String LABEL_QUICK_PICK = "Quick Pick:"; private Tree tree; public QuickPickTree() { tree = new DefaultTree(); } public void pick(String operation) { List<TreeItem> operations = findItems(tree.getAllItems(), operation); if (operations.isEmpty()) { throw new RuntimeException("Cannot find operation with name '" + operation + "'"); } operations.get(0).select(); operations.get(0).doubleClick(); } public void pick(String[] path) { new DefaultTreeItem(path).select(); } private List<TreeItem> findItems(List<TreeItem> treeItems, String label) { List<TreeItem> result = new ArrayList<TreeItem>(); for (TreeItem treeItem : treeItems) { if (label.equals(treeItem.getText())) { result.add(treeItem); } } return result; } }