public MarkerRegistration addMarker(final TextRange range, final String className) { final CMPositionOverlay from = CMPositionOverlay.create(range.getFrom().getLine(), range.getFrom().getCharacter()); final CMPositionOverlay to = CMPositionOverlay.create(range.getTo().getLine(), range.getTo().getCharacter()); final CMTextMarkerOptionOverlay options = JavaScriptObject.createObject().cast(); options.setClassName(className); final CMTextMarkerOverlay textMark = this.editorOverlay.asMarksManager().markText(from, to, options); if (textMark == null) { LOG.warning("addMarker: markText returned a undefined TextMarker - range=" + range); return null; } return new MarkerRegistration() { @Override public void clearMark() { textMark.clear(); } }; }
public void scrollToLine(int line) { this.editorOverlay.scrollIntoView(CMPositionOverlay.create(line, 0)); }