IRegion region= fViewer.getVisibleRegion();
if (!includes(region, fFramePosition)) { leave(UNINSTALL | COMMIT | DOCUMENT_CHANGED); return; }
	public void paintControl(PaintEvent event) {			if (fFramePosition == null)			return;				IRegion region= fViewer.getVisibleRegion();				int offset= fFramePosition.getOffset() -  region.getOffset();		int length= fFramePosition.getLength();					StyledText text= fViewer.getTextWidget();				// support for bidi		Point minLocation= getMinimumLocation(text, offset, length);		Point maxLocation= getMaximumLocation(text, offset, length);		int x1= minLocation.x;		int x2= minLocation.x + maxLocation.x - minLocation.x - 1;		int y= minLocation.y + text.getLineHeight() - 1;				GC gc= event.gc;		gc.setForeground(fFrameColor);		gc.drawLine(x1, y, x2, y);	}