caretOffset = getOffsetAtMouseLocation(caretX, caretLine);
caretOffset = getOffsetAtMouseLocation(columnX, caretLine);
void doPageUp() {	int oldCaretX = caretX;		if (caretLine > 0) {			int scrollLines = Math.max(1, Math.min(caretLine, getLineCountWhole()));		int scrollOffset;				caretLine -= scrollLines;		if (isBidi()) {			caretOffset = getBidiOffsetAtMouseLocation(caretX, caretLine);		}		else {			caretOffset = getOffsetAtMouseLocation(caretX, caretLine);		}			// scroll one page up or to the top		scrollOffset = Math.max(0, verticalScrollOffset - scrollLines * getVerticalIncrement());		if (scrollOffset < verticalScrollOffset) {							setVerticalScrollOffset(scrollOffset, true);		}	}	showCaret();	// save the original horizontal caret position		caretX = oldCaretX;}