return setOrigin(newFirstLine,newHorizontalOffset);
	public void scrollTo(int line, int offset)	{		// visibleLines == 0 before the component is realized		// we can't do any proper scrolling then, so we have		// this hack...		if(visibleLines == 0)		{			setFirstLine(Math.max(0,line - electricScroll));			return;		}		if(line < firstLine + electricScroll)		{			setFirstLine(Math.max(0,line - electricScroll));		}		else if(line + electricScroll >= firstLine + visibleLines)		{			int newline = (line - visibleLines) + electricScroll + 1;			if(newline < 0)				newline = 0;			if(newline + visibleLines >= getLineCount())				newline = getLineCount() - visibleLines;			setFirstLine(newline);		}		int x = offsetToX(line,offset);		int width = painter.getFontMetrics().charWidth('w');		if(x < 0)		{			setHorizontalOffset(Math.min(0,horizontalOffset				- x + width));		}		else if(x + width >= painter.getSize().width)		{			setHorizontalOffset(horizontalOffset +				(painter.getSize().width - x)				- width);		}	}