List of usage examples for org.eclipse.jface.viewers AbstractTableViewer add
public void add(Object element)
From source file:org.eclipse.equinox.internal.p2.ui.viewers.ProvElementContentProvider.java
License:Open Source License
public Object[] getElements(final Object input) { // Simple deferred fetch handling for table viewers if (fetchInBackground && input instanceof IDeferredWorkbenchAdapter && viewer instanceof AbstractTableViewer) { final Display display = viewer.getControl().getDisplay(); final Object pending = new PendingUpdateAdapter(); if (fetchJob != null) fetchJob.cancel();/*w w w . jav a 2 s. com*/ fetchJob = new Job(ProvUIMessages.ProvElementContentProvider_FetchJobTitle) { protected IStatus run(final IProgressMonitor monitor) { IDeferredWorkbenchAdapter parent = (IDeferredWorkbenchAdapter) input; final ArrayList<Object> children = new ArrayList<Object>(); parent.fetchDeferredChildren(parent, new IElementCollector() { public void add(Object element, IProgressMonitor mon) { if (mon.isCanceled()) return; children.add(element); } public void add(Object[] elements, IProgressMonitor mon) { if (mon.isCanceled()) return; children.addAll(Arrays.asList(elements)); } public void done() { // nothing special to do } }, monitor); if (!monitor.isCanceled()) { display.asyncExec(new Runnable() { public void run() { AbstractTableViewer tableViewer = (AbstractTableViewer) viewer; if (monitor.isCanceled() || tableViewer == null || tableViewer.getControl().isDisposed()) return; tableViewer.getControl().setRedraw(false); tableViewer.remove(pending); tableViewer.add(children.toArray()); finishedFetchingElements(input); tableViewer.getControl().setRedraw(true); } }); } return Status.OK_STATUS; } public boolean belongsTo(Object family) { return family == fetchFamily; } }; fetchJob.schedule(); return new Object[] { pending }; } Object[] elements = getChildren(input); finishedFetchingElements(input); return elements; }
From source file:org.key_project.util.eclipse.swt.SWTUtil.java
License:Open Source License
/** * Invokes {@link AbstractTableViewer#add(Object)} thread save. * @param viewer The {@link AbstractTableViewer} to invoke method on. * @param element The new element to add. *//* w ww. j a v a 2 s . c o m*/ public static void add(final AbstractTableViewer viewer, final Object element) { if (viewer != null && !viewer.getControl().isDisposed()) { viewer.getControl().getDisplay().syncExec(new Runnable() { @Override public void run() { viewer.add(element); } }); } }
From source file:org.key_project.util.eclipse.swt.SWTUtil.java
License:Open Source License
/** * Invokes {@link AbstractTableViewer#add(Object)} thread save. * @param viewer The {@link AbstractTableViewer} to invoke method on. * @param elements The new elements to add. *///from www . j ava2 s. co m public static void add(final AbstractTableViewer viewer, final Object[] elements) { if (viewer != null && !viewer.getControl().isDisposed()) { viewer.getControl().getDisplay().syncExec(new Runnable() { @Override public void run() { viewer.add(elements); } }); } }
From source file:org.key_project.util.eclipse.swt.SWTUtil.java
License:Open Source License
/** * Invokes {@link AbstractTableViewer#add(Object)} thread save. * @param viewer The {@link AbstractTableViewer} to invoke method on. * @param elements The new elements to add. *//*w ww . ja v a 2 s . c o m*/ public static void addAsync(final AbstractTableViewer viewer, final Object[] elements) { if (viewer != null && !viewer.getControl().isDisposed()) { viewer.getControl().getDisplay().asyncExec(new Runnable() { @Override public void run() { viewer.add(elements); } }); } }