/** * 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); }
/** * 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); }