@Override public void setTopIndex(int index) { if (fTextWidget != null) { int widgetLine= modelLine2WidgetLine(index); if (widgetLine == -1) widgetLine= getClosestWidgetLineForModelLine(index); if (widgetLine > -1) { fTextWidget.setTopIndex(widgetLine); updateViewportListeners(INTERNAL); } } }
@Override public void setTopIndex(int index) { if (fTextWidget != null) { int widgetLine= modelLine2WidgetLine(index); if (widgetLine == -1) widgetLine= getClosestWidgetLineForModelLine(index); if (widgetLine > -1) { fTextWidget.setTopIndex(widgetLine); updateViewportListeners(INTERNAL); } } }
/** * Updates the viewport, trying to keep the * {@linkplain StyledText#getLinePixel(int) line pixel} of the caret line stable. If the * selection has been updated while in redraw(false) mode, the new selection is revealed. */ private void updateViewport() { if (fSelectionSet) { revealRange(fSelection.getOffset(), fSelection.getLength()); } else if (fStableLine != null) { int stableLine; try { stableLine= fUpdaterDocument.getLineOfOffset(fStableLine.getOffset()); } catch (BadLocationException x) { // ignore and return silently return; } int stableWidgetLine= getClosestWidgetLineForModelLine(stableLine); if (stableWidgetLine == -1) return; int linePixel= getTextWidget().getLinePixel(stableWidgetLine); int delta= fStablePixel - linePixel; int topPixel= getTextWidget().getTopPixel(); getTextWidget().setTopPixel(topPixel - delta); } }
/** * Updates the viewport, trying to keep the * {@linkplain StyledText#getLinePixel(int) line pixel} of the caret line stable. If the * selection has been updated while in redraw(false) mode, the new selection is revealed. */ private void updateViewport() { if (fSelectionSet) { revealRange(fSelection.getOffset(), fSelection.getLength()); } else if (fStableLine != null) { int stableLine; try { stableLine= fUpdaterDocument.getLineOfOffset(fStableLine.getOffset()); } catch (BadLocationException x) { // ignore and return silently return; } int stableWidgetLine= getClosestWidgetLineForModelLine(stableLine); if (stableWidgetLine == -1) return; int linePixel= getTextWidget().getLinePixel(stableWidgetLine); int delta= fStablePixel - linePixel; int topPixel= getTextWidget().getTopPixel(); getTextWidget().setTopPixel(topPixel - delta); } }