@Override public void renderLine(int lineNumber, CodeLine line) { this.currentLine = lineNumber; if (lineNumber >= this.lines.size()) { this.lines.add(line); line.redraw(); this.add(line.asWidget(), this.getElement()); } else { // Reuse the line CodeLine oldLine = this.lines.get(lineNumber); if (!oldLine.equals(line)) { oldLine.setTokens(line.getTokens()); oldLine.redraw(); } } }