/** * Updates the currently selected revision and sends out an event if it changed. * * @param revision the newly selected revision or <code>null</code> for none */ private void setSelectedRevision(Revision revision) { if (revision != fSelection) { fSelection= revision; fireSelectionEvent(); } }
/** * Private protocol used by {@link RevisionPainter} to signal selection of a revision. * * @param revision the selected revision, or <code>null</code> for none */ void revisionSelected(Revision revision) { setSelectedRevision(revision); }
/** * Disposes of the painter's resources. */ private void handleDispose() { updateFocusLine(-1); if (fLineDiffer != null) { ((IAnnotationModel) fLineDiffer).removeAnnotationModelListener(fAnnotationListener); fLineDiffer= null; } fRevisionSelectionProvider.uninstall(); }
private void fireSelectionEvent() { fIgnoreEvents= true; try { ISelection selection= getSelection(); SelectionChangedEvent event= new SelectionChangedEvent(this, selection); for (ISelectionChangedListener listener : fListeners) { listener.selectionChanged(event); } } finally { fIgnoreEvents= false; } } }
/** * Handles the selection of a revision and informs listeners. * * @param revision the selected revision, <code>null</code> for none */ void handleRevisionSelected(Revision revision) { fSelectedRevision= revision; fRevisionSelectionProvider.revisionSelected(revision); if (isConnected()) updateOverviewAnnotations(); postRedraw(); }
/** * Ensures that the column is fully instantiated, i.e. has a control, and that the viewer is * visible. */ private void connectIfNeeded() { if (isConnected() || fParentRuler == null) return; fViewer= fParentRuler.getTextViewer(); if (fViewer == null) return; fWidget= fViewer.getTextWidget(); if (fWidget == null) return; fControl= fColumn.getControl(); if (fControl == null) return; fControl.addMouseTrackListener(fMouseHandler); fControl.addMouseMoveListener(fMouseHandler); fControl.addListener(SWT.MouseUp, fMouseHandler); fControl.addListener(SWT.MouseDown, fMouseHandler); fControl.addDisposeListener(new DisposeListener() { @Override public void widgetDisposed(DisposeEvent e) { handleDispose(); } }); fRevisionSelectionProvider.install(fViewer); }
/** * Disposes of the painter's resources. */ private void handleDispose() { updateFocusLine(-1); if (fLineDiffer != null) { ((IAnnotationModel) fLineDiffer).removeAnnotationModelListener(fAnnotationListener); fLineDiffer= null; } fRevisionSelectionProvider.uninstall(); }
private void fireSelectionEvent() { fIgnoreEvents= true; try { ISelection selection= getSelection(); SelectionChangedEvent event= new SelectionChangedEvent(this, selection); for (ISelectionChangedListener listener : fListeners) { listener.selectionChanged(event); } } finally { fIgnoreEvents= false; } } }
/** * Handles the selection of a revision and informs listeners. * * @param revision the selected revision, <code>null</code> for none */ void handleRevisionSelected(Revision revision) { fSelectedRevision= revision; fRevisionSelectionProvider.revisionSelected(revision); if (isConnected()) updateOverviewAnnotations(); postRedraw(); }
/** * Ensures that the column is fully instantiated, i.e. has a control, and that the viewer is * visible. */ private void connectIfNeeded() { if (isConnected() || fParentRuler == null) return; fViewer= fParentRuler.getTextViewer(); if (fViewer == null) return; fWidget= fViewer.getTextWidget(); if (fWidget == null) return; fControl= fColumn.getControl(); if (fControl == null) return; fControl.addMouseTrackListener(fMouseHandler); fControl.addMouseMoveListener(fMouseHandler); fControl.addListener(SWT.MouseUp, fMouseHandler); fControl.addListener(SWT.MouseDown, fMouseHandler); fControl.addDisposeListener(e -> handleDispose()); fRevisionSelectionProvider.install(fViewer); }
/** * Installs the selection provider on the viewer. * * @param viewer the viewer on which we listen to for post selection events */ void install(ITextViewer viewer) { uninstall(); fViewer= viewer; if (fViewer != null) { ISelectionProvider provider= fViewer.getSelectionProvider(); if (provider instanceof IPostSelectionProvider) { IPostSelectionProvider postProvider= (IPostSelectionProvider) provider; fSelectionListener= new PostSelectionListener(postProvider); } } }
/** * Updates the currently selected revision and sends out an event if it changed. * * @param revision the newly selected revision or <code>null</code> for none */ private void setSelectedRevision(Revision revision) { if (revision != fSelection) { fSelection= revision; fireSelectionEvent(); } }
/** * Private protocol used by {@link RevisionPainter} to signal selection of a revision. * * @param revision the selected revision, or <code>null</code> for none */ void revisionSelected(Revision revision) { setSelectedRevision(revision); }
/** * Installs the selection provider on the viewer. * * @param viewer the viewer on which we listen to for post selection events */ void install(ITextViewer viewer) { uninstall(); fViewer= viewer; if (fViewer != null) { ISelectionProvider provider= fViewer.getSelectionProvider(); if (provider instanceof IPostSelectionProvider) { IPostSelectionProvider postProvider= (IPostSelectionProvider) provider; fSelectionListener= new PostSelectionListener(postProvider); } } }