/** * Gets the expanded elements that are visible to the user. An expanded * element is only visible if the parent is expanded. * * @return the visible expanded elements * @since 2.0 */ public Object[] getVisibleExpandedElements() { ArrayList v = new ArrayList(); internalCollectVisibleExpanded(v, getControl()); return v.toArray(); }
/** * Gets the expanded elements that are visible to the user. An expanded * element is only visible if the parent is expanded. * * @return the visible expanded elements * @since 2.0 */ public Object[] getVisibleExpandedElements() { ArrayList v = new ArrayList(); internalCollectVisibleExpanded(v, getControl()); return v.toArray(); }
/** * Gets the expanded elements that are visible to the user. An expanded * element is only visible if the parent is expanded. * * @return the visible expanded elements * @since 1.0 */ public Object[] getVisibleExpandedElements() { ArrayList v = new ArrayList(); internalCollectVisibleExpanded(v, getControl()); return v.toArray(); }
private Tree getTree() { return ((Tree)((AbstractTreeViewer)getViewer()).getControl()); }
protected List getSelectionFromWidget() { Widget[] items = getSelection(getControl()); ArrayList list = new ArrayList(items.length); for (int i = 0; i < items.length; i++) { Widget item = items[i]; Object e = item.getData(); if (e != null) { list.add(e); } } return list; }
@Override protected List getSelectionFromWidget() { Widget[] items = getSelection(getControl()); ArrayList list = new ArrayList(items.length); for (Widget item : items) { Object e = item.getData(); if (e != null) { list.add(e); } } return list; }
@Override protected List getSelectionFromWidget() { Widget[] items = getSelection(getControl()); ArrayList list = new ArrayList(items.length); for (int i = 0; i < items.length; i++) { Widget item = items[i]; Object e = item.getData(); if (e != null) { list.add(e); } } return list; }
@Override public IStatus runInUIThread(IProgressMonitor updateMonitor) { // Cancel the job if the tree viewer got closed if (treeViewer.getControl().isDisposed() || updateMonitor.isCanceled()) { return Status.CANCEL_STATUS; } treeViewer.add(parent, children); return Status.OK_STATUS; } };
@Override protected Widget doFindInputItem(Object element) { // compare with root Object root = getRoot(); if (root == null) { return null; } if (equals(root, element)) { return getControl(); } return null; }
@Override protected Widget doFindInputItem(Object element) { // compare with root Object root = getRoot(); if (root == null) { return null; } if (equals(root, element)) { return getControl(); } return null; }
protected Widget doFindInputItem(Object element) { // compare with root Object root = getRoot(); if (root == null) { return null; } if (equals(root, element)) { return getControl(); } return null; }
@Override public IStatus runInUIThread(IProgressMonitor monitor) { if (!placeholder.isRemoved()) { Control control = treeViewer.getControl(); if (control.isDisposed()) { return Status.CANCEL_STATUS; } treeViewer.remove(placeholder); placeholder.setRemoved(true); } return Status.OK_STATUS; } };
/** * Updates the viewer in response to the current frame changing. * * @param frame the new value for the current frame */ protected void frameChanged(TreeFrame frame) { viewer.getControl().setRedraw(false); viewer.setInput(frame.getInput()); viewer.setExpandedElements(frame.getExpandedElements()); viewer.setSelection(frame.getSelection(), true); viewer.getControl().setRedraw(true); }
@Override protected void labelProviderChanged() { // we have to walk the (visible) tree and update every item Control tree = getControl(); tree.setRedraw(false); // don't pick up structure changes, but do force label updates internalRefresh(tree, getRoot(), false, true); tree.setRedraw(true); }
@Override protected void labelProviderChanged() { // we have to walk the (visible) tree and update every item Control tree = getControl(); tree.setRedraw(false); // don't pick up structure changes, but do force label updates internalRefresh(tree, getRoot(), false, true); tree.setRedraw(true); }
protected void labelProviderChanged() { // we have to walk the (visible) tree and update every item Control tree = getControl(); tree.setRedraw(false); // don't pick up structure changes, but do force label updates internalRefresh(tree, getRoot(), false, true); tree.setRedraw(true); }
@Override protected void internalRefresh(Object element, boolean updateLabels) { // If element is null, do a full refresh. if (element == null) { internalRefresh(getControl(), getRoot(), true, updateLabels); return; } Widget[] items = findItems(element); if (items.length != 0) { for (Widget item : items) { // pick up structure changes too internalRefresh(item, element, true, updateLabels); } } }
protected void internalRefresh(Object element, boolean updateLabels) { // If element is null, do a full refresh. if (element == null) { internalRefresh(getControl(), getRoot(), true, updateLabels); return; } Widget[] items = findItems(element); if (items.length != 0) { for (int i = 0; i < items.length; i++) { // pick up structure changes too internalRefresh(items[i], element, true, updateLabels); } } }
public void run() { Control tree = getControl(); tree.setRedraw(false); try { removeAll(tree); tree.setData(getRoot()); internalInitializeTree(tree); } finally { tree.setRedraw(true); } } });
@Override protected void inputChanged(Object input, Object oldInput) { preservingSelection(() -> { Control tree = getControl(); tree.setRedraw(false); try { removeAll(tree); tree.setData(getRoot()); internalInitializeTree(tree); } finally { tree.setRedraw(true); } }); }