HighlightsSequence hs = bag.getHighlights(0, doc.getLength()); if (hs.moveNext()) { if (directionForward) { int firstStart = hs.getStartOffset(), firstEnd = hs.getEndOffset(); while (hs.getStartOffset() <= curPos && hs.moveNext()); if (hs.getStartOffset() > curPos) { return hs.getStartOffset(); } else if (!(firstEnd >= curPos && firstStart <= curPos)) { int current = hs.getStartOffset(), last; boolean stuck = false; do { last = current; current = hs.getStartOffset(); } while (hs.getEndOffset() < curPos && (stuck = hs.moveNext())); while (hs.moveNext()); if (!(hs.getEndOffset() >= curPos && hs.getStartOffset() <= curPos)) { return hs.getStartOffset();
HighlightsSequence seq = newBag.getHighlights(0, Integer.MAX_VALUE); Set<AttributeSet> set = new HashSet<AttributeSet>(); while (seq.moveNext()) { set.add(seq.getAttributes()); while (seq.moveNext()) { if (!set.contains(seq.getAttributes())) { int startOffset = getDocumentOffset(doc, seq.getStartOffset()); int endOffset = getDocumentOffset(doc, seq.getEndOffset()); if (startOffset < doc.getLength() && endOffset > 0) { addHighlightsToBag(tempBag, startOffset, endOffset, seq.getAttributes(), "cached"); //NOI18N
HighlightsSequence hs = bag.getHighlights(0, doc.getLength()); if (hs.moveNext()) { if (directionForward) { int firstStart = hs.getStartOffset(), firstEnd = hs.getEndOffset(); while (hs.getStartOffset() <= curPos && hs.moveNext()); if (hs.getStartOffset() > curPos) { return hs.getStartOffset(); } else if (!(firstEnd >= curPos && firstStart <= curPos)) { int current = hs.getStartOffset(), last; boolean stuck = false; do { last = current; current = hs.getStartOffset(); } while (hs.getEndOffset() < curPos && (stuck = hs.moveNext())); while (hs.moveNext()); if (!(hs.getEndOffset() >= curPos && hs.getStartOffset() <= curPos)) { return hs.getStartOffset();
while (hs.moveNext()) { if (lastPosition >= hs.getStartOffset() && lastPosition <= hs.getEndOffset()) {