if(firstLine != vertical.getValue())
Buffer.Fold fold = buffer.getFolds(); int totalLineCount = 0; int virtualLineCount = 0; for(;;) { int foldLineCount = fold.getLineCount(); if(totalLineCount + foldLineCount > firstLine) break;  totalLineCount += foldLineCount;  switch(fold.getVisibility()) { case Buffer.Fold.ALL_LINES_VISIBLE: virtualLineCount += foldLineCount; break; case Buffer.Fold.ONE_LINE_VISIBLE: virtualLineCount++; break; }  fold = fold.getNextFold(); }  firstLineFold = fold; firstLineFoldOffset = firstLine - totalLineCount; if(fold.getVisibility() == Buffer.Fold.ALL_LINES_VISIBLE) virtualLineCount += firstLineFoldOffset;  if(firstLine != vertical.getValue())
	public void _setFirstLine(int firstLine)	{		this.firstLine = firstLine;		maxHorizontalScrollWidth = 0;		if(firstLine != vertical.getValue())			updateScrollBars();		painter.repaint();		gutter.repaint();	}