protected void paintSyntaxLine(Graphics gfx, int line, Font defaultFont, Color defaultColor, int x, int y)
protected void paintSyntaxLine(TokenMarker tokenMarker, Graphics gfx, int line, Font defaultFont, Color defaultColor, int x, int y)
	protected void paintSyntaxLine(Graphics gfx, int line, Font defaultFont,		Color defaultColor, int x, int y)	{		paintHighlight(gfx,line,y);		y += getFontMetrics().getHeight();		// We do this because xToOffset() uses currentLine to avoid		// unnecessary getText()s, and we must keep the offset and		// count values from being mangled		int segmentOffset = currentLine.offset;		int segmentCount = currentLine.count;		int offset = 0;		Token tokens = currentLineTokens;		for(;;)		{			byte id = tokens.id;			if(id == Token.END)				break;			int length = tokens.length;			if(id == Token.NULL)			{				if(!defaultColor.equals(gfx.getColor()))					gfx.setColor(defaultColor);				if(!defaultFont.equals(gfx.getFont()))					gfx.setFont(defaultFont);			}			else				styles[id].setGraphicsFlags(gfx,defaultFont);			currentLine.count = length;			x = Utilities.drawTabbedText(currentLine,x,y,gfx,this,0);			currentLine.offset += length;			offset += length;			tokens = tokens.next;		}		if(eolMarkers)		{			gfx.setColor(eolMarkerColor);			gfx.drawString(".",x,y);		}		currentLine.offset = segmentOffset;		currentLine.count = segmentCount;	}