Im using the DefaultHightlighter.DefaultHightlighterPainter
to highlight text within a java text pane.
I want to remove all highlights (there could be more than one
If you remove all highlights (I suppose with removeAllHighlights
) you can getHighlights
before that and use the information you receive there.
How about something like
Highlighter.Highlight[] highlights = pseudoCodeTextPane.getHighlighter().getHighlights();
int[] startOffsets = new int[highlights.length];
int[] endOffsets = new int[highlights.length];
for (int i = 0; i < highlights.length; ++i) {
startOffsets[i] = highlights[i].getStartOffset();
endOffsets[i] = highlights[i].getEndOffset();
}
pseudoCodeTextPane.getHighlighter().removeAllHighlights();
// now do whatever processing you want to do with the highlight locations