/** * Returns whether the viewer is disposed. Collection change listeners in * subclasses should verify that the viewer is not disposed before sending * any updates to the {@link ViewerUpdater viewer updater}. * * @return whether the viewer is disposed. */ protected final boolean isViewerDisposed() { Viewer viewer = (Viewer) viewerObservable.getValue(); return viewer == null || viewer.getControl() == null || viewer.getControl().isDisposed(); }
protected void init(Viewer viewer) { Control control = viewer.getControl(); if (control instanceof Tree) { fTree = (Tree) control; fTree.getDisplay().asyncExec(new Runnable() { public void run() { fTree.addTreeListener(JavaThreadEventHandler.this); } }); } }
/** * @param decorated * @param viewer */ public ViewerObservableValueDecorator(IObservableValue decorated, Viewer viewer) { super(decorated, true); this.viewer = viewer; viewer.getControl().addListener(SWT.Dispose, this); }
protected boolean isViewerDisposed() { Viewer viewer = (Viewer) viewerObservable.getValue(); return viewer == null || viewer.getControl() == null || viewer.getControl().isDisposed(); }
public void run() { if (viewer == null || viewer.getControl().isDisposed() || !(viewer instanceof AbstractTreeViewer)) return; viewer.getControl().setRedraw(false); ((AbstractTreeViewer)viewer).collapseToLevel(viewer.getInput(), AbstractTreeViewer.ALL_LEVELS); viewer.getControl().setRedraw(true); } };
protected void refresh() { if (viewer != null && !viewer.getControl().isDisposed()) { viewer.refresh(); } }
@Override public void diffsChanged(final IDiffChangeEvent event, final IProgressMonitor monitor) { syncExec(new Runnable() { @Override public void run() { handleChange(event); } }, getViewer().getControl()); }
@Override public IViewerObservableList observe(Viewer viewer) { return (IViewerObservableList) observe(DisplayRealm.getRealm(viewer .getControl().getDisplay()), viewer); } }
@Override public IViewerObservableSet observe(Viewer viewer) { return (IViewerObservableSet) observe(DisplayRealm.getRealm(viewer .getControl().getDisplay()), viewer); } }
@Override public IViewerObservableSet observe(Viewer viewer) { return (IViewerObservableSet) observe(DisplayRealm.getRealm(viewer .getControl().getDisplay()), viewer); } }
public void inputChanged ( final Viewer viewer, final Object oldInput, final Object newInput ) { unsubscribe (); this.viewer = viewer; if ( viewer != null ) { this.display = viewer.getControl ().getDisplay (); } if ( newInput != null ) { subcribe ( newInput ); } }
@Override protected Object determineTarget(DropTargetEvent event) { if (event.item == null) return super.determineTarget(event); Point coordinates= getViewer().getControl().toControl(new Point(event.x, event.y)); Rectangle bounds= getBounds((Item) event.item); if (coordinates.x < bounds.x - ITEM_MARGIN_LEFT || coordinates.x >= bounds.x + bounds.width + ITEM_MARGIN_RIGTH) { event.item= null; // too far away return null; } return super.determineTarget(event); }
@Override public IObservableSet observe(Object source) { if (source instanceof Viewer) { return observe(DisplayRealm.getRealm(((Viewer) source) .getControl().getDisplay()), source); } return super.observe(source); }
@Override public void run() { if (fView.getViewer().getControl().isDisposed()) { return; } fView.setFilterSelection(isChecked()); } }
@Override public void setFocus() { boolean success = false; if (!fTreeHasFocus && fDetailPane != null){ success = fDetailPane.setFocus(); } // Unless the detail pane successfully set focus to a control, set focus to the variables tree if (!success && getViewer() != null){ getViewer().getControl().setFocus(); } }
protected void initializeChangesViewer() { TeamUIPlugin.getStandardDisplay().asyncExec(() -> { Control control = ChangesSection.this.getChangesViewer().getControl(); if (!getContainer().isDisposed() && !control.isDisposed()) { getContainer().showPage(control); } }); }
@Override public void run(IAction action) { Viewer viewer = ((AbstractDebugView) getView()).getViewer(); ((Tree) viewer.getControl()).selectAll(); // ensure that the selection change callback is fired viewer.setSelection(viewer.getSelection()); }
private void syncExec(final Runnable runnable) { final Control ctrl = getConfiguration().getPage().getViewer().getControl(); if (ctrl != null && !ctrl.isDisposed()) { ctrl.getDisplay().syncExec(new Runnable() { public void run() { if (!ctrl.isDisposed()) { runnable.run(); } } }); } }
private void initialize(ISynchronizePageConfiguration configuration) { configuration.getSite().getSelectionProvider().addSelectionChangedListener(this); configuration.getPage().getViewer().getControl().addDisposeListener(new DisposeListener() { public void widgetDisposed(DisposeEvent e) { getConfiguration().getSite().getSelectionProvider().removeSelectionChangedListener(ModelParticipantAction.this); } }); }
@Override public void setInput(Object input) { super.setInput(input); if (getViewer() == null || !Utilities.okToUse(getViewer().getControl())) return; ViewerDescriptor[] vd = null; if (getInput() instanceof ICompareInput) { vd = CompareUIPlugin.getDefault().findStructureViewerDescriptor( getViewer(), (ICompareInput) getInput(), getCompareConfiguration()); } toolBar.setVisible(vd != null && vd.length > 1); }