本文整理匯總了Java中com.intellij.openapi.editor.ex.RangeHighlighterEx.isValid方法的典型用法代碼示例。如果您正苦於以下問題:Java RangeHighlighterEx.isValid方法的具體用法?Java RangeHighlighterEx.isValid怎麽用?Java RangeHighlighterEx.isValid使用的例子?那麽, 這裏精選的方法代碼示例或許可以為您提供幫助。您也可以進一步了解該方法所在類com.intellij.openapi.editor.ex.RangeHighlighterEx
的用法示例。
在下文中一共展示了RangeHighlighterEx.isValid方法的10個代碼示例,這些例子默認根據受歡迎程度排序。您可以為喜歡或者感覺有用的代碼點讚,您的評價將有助於係統推薦出更棒的Java代碼示例。
示例1: apply
import com.intellij.openapi.editor.ex.RangeHighlighterEx; //導入方法依賴的package包/類
public void apply(@Nullable Project project, @NotNull Document document) {
MarkupModel model = DocumentMarkupModel.forDocument(document, project, true);
for (Element piece : myPieces) {
RangeHighlighterEx delegate = piece.getDelegate();
if (!delegate.isValid()) continue;
RangeHighlighter highlighter = model
.addRangeHighlighter(piece.getStart(), piece.getEnd(), delegate.getLayer(), delegate.getTextAttributes(), delegate.getTargetArea());
highlighter.setEditorFilter(delegate.getEditorFilter());
highlighter.setCustomRenderer(delegate.getCustomRenderer());
highlighter.setErrorStripeMarkColor(delegate.getErrorStripeMarkColor());
highlighter.setErrorStripeTooltip(delegate.getErrorStripeTooltip());
highlighter.setGutterIconRenderer(delegate.getGutterIconRenderer());
highlighter.setLineMarkerRenderer(delegate.getLineMarkerRenderer());
highlighter.setLineSeparatorColor(delegate.getLineSeparatorColor());
highlighter.setThinErrorStripeMark(delegate.isThinErrorStripeMark());
highlighter.setLineSeparatorPlacement(delegate.getLineSeparatorPlacement());
highlighter.setLineSeparatorRenderer(delegate.getLineSeparatorRenderer());
}
}
示例2: isOffsetInsideHighlightInfo
import com.intellij.openapi.editor.ex.RangeHighlighterEx; //導入方法依賴的package包/類
private static boolean isOffsetInsideHighlightInfo(int offset, @NotNull HighlightInfo info, boolean includeFixRange) {
RangeHighlighterEx highlighter = info.highlighter;
if (highlighter == null || !highlighter.isValid()) return false;
int startOffset = highlighter.getStartOffset();
int endOffset = highlighter.getEndOffset();
if (startOffset <= offset && offset <= endOffset) {
return true;
}
if (!includeFixRange) return false;
RangeMarker fixMarker = info.fixMarker;
if (fixMarker != null) { // null means its range is the same as highlighter
if (!fixMarker.isValid()) return false;
startOffset = fixMarker.getStartOffset();
endOffset = fixMarker.getEndOffset();
return startOffset <= offset && offset <= endOffset;
}
return false;
}
示例3: apply
import com.intellij.openapi.editor.ex.RangeHighlighterEx; //導入方法依賴的package包/類
public void apply(@Nullable Project project, @Nonnull Document document) {
MarkupModel model = DocumentMarkupModel.forDocument(document, project, true);
for (Element piece : myPieces) {
RangeHighlighterEx delegate = piece.getDelegate();
if (!delegate.isValid()) continue;
RangeHighlighter highlighter = model
.addRangeHighlighter(piece.getStart(), piece.getEnd(), delegate.getLayer(), delegate.getTextAttributes(), delegate.getTargetArea());
highlighter.setEditorFilter(delegate.getEditorFilter());
highlighter.setCustomRenderer(delegate.getCustomRenderer());
highlighter.setErrorStripeMarkColor(delegate.getErrorStripeMarkColor());
highlighter.setErrorStripeTooltip(delegate.getErrorStripeTooltip());
highlighter.setGutterIconRenderer(delegate.getGutterIconRenderer());
highlighter.setLineMarkerRenderer(delegate.getLineMarkerRenderer());
highlighter.setLineSeparatorColor(delegate.getLineSeparatorColor());
highlighter.setThinErrorStripeMark(delegate.isThinErrorStripeMark());
highlighter.setLineSeparatorPlacement(delegate.getLineSeparatorPlacement());
highlighter.setLineSeparatorRenderer(delegate.getLineSeparatorRenderer());
}
}
示例4: isOffsetInsideHighlightInfo
import com.intellij.openapi.editor.ex.RangeHighlighterEx; //導入方法依賴的package包/類
private static boolean isOffsetInsideHighlightInfo(int offset, @Nonnull HighlightInfo info, boolean includeFixRange) {
RangeHighlighterEx highlighter = info.getHighlighter();
if (highlighter == null || !highlighter.isValid()) return false;
int startOffset = highlighter.getStartOffset();
int endOffset = highlighter.getEndOffset();
if (startOffset <= offset && offset <= endOffset) {
return true;
}
if (!includeFixRange) return false;
RangeMarker fixMarker = info.fixMarker;
if (fixMarker != null) { // null means its range is the same as highlighter
if (!fixMarker.isValid()) return false;
startOffset = fixMarker.getStartOffset();
endOffset = fixMarker.getEndOffset();
return startOffset <= offset && offset <= endOffset;
}
return false;
}
示例5: getText
import com.intellij.openapi.editor.ex.RangeHighlighterEx; //導入方法依賴的package包/類
@NotNull
public String getText() {
if (isFileLevelAnnotation()) return "";
RangeHighlighterEx highlighter = this.highlighter;
if (highlighter == null) {
throw new RuntimeException("info not applied yet");
}
if (!highlighter.isValid()) return "";
return highlighter.getDocument().getText(TextRange.create(highlighter));
}
示例6: getText
import com.intellij.openapi.editor.ex.RangeHighlighterEx; //導入方法依賴的package包/類
@NotNull
public String getText() {
RangeHighlighterEx highlighter = this.highlighter;
if (highlighter == null) throw new RuntimeException("info not applied yet");
if (!highlighter.isValid()) return "";
return highlighter.getDocument().getText(TextRange.create(highlighter));
}
示例7: getText
import com.intellij.openapi.editor.ex.RangeHighlighterEx; //導入方法依賴的package包/類
@Nonnull
public String getText() {
if (isFileLevelAnnotation()) return "";
RangeHighlighterEx highlighter = this.highlighter;
if (highlighter == null) {
throw new RuntimeException("info not applied yet");
}
if (!highlighter.isValid()) return "";
return highlighter.getDocument().getText(TextRange.create(highlighter));
}
示例8: getActualStartOffset
import com.intellij.openapi.editor.ex.RangeHighlighterEx; //導入方法依賴的package包/類
public int getActualStartOffset() {
RangeHighlighterEx h = highlighter;
return h == null || !h.isValid() ? startOffset : h.getStartOffset();
}
示例9: getActualEndOffset
import com.intellij.openapi.editor.ex.RangeHighlighterEx; //導入方法依賴的package包/類
public int getActualEndOffset() {
RangeHighlighterEx h = highlighter;
return h == null || !h.isValid() ? endOffset : h.getEndOffset();
}
示例10: findNextSuitableRange
import com.intellij.openapi.editor.ex.RangeHighlighterEx; //導入方法依賴的package包/類
private void findNextSuitableRange() {
myNextAttributes = null;
while(myIterator.hasNext()) {
RangeHighlighterEx highlighter = myIterator.next();
if (highlighter == null || !highlighter.isValid() || !isInterestedInLayer(highlighter.getLayer())) {
continue;
}
// LINES_IN_RANGE highlighters are not supported currently
myNextStart = Math.max(highlighter.getStartOffset(), myStartOffset);
myNextEnd = Math.min(highlighter.getEndOffset(), myEndOffset);
if (myNextStart >= myEndOffset) {
break;
}
if (myNextStart < myCurrentEnd) {
continue; // overlapping ranges withing document markup model are not supported currently
}
TextAttributes attributes = null;
Object tooltip = highlighter.getErrorStripeTooltip();
if (tooltip instanceof HighlightInfo) {
HighlightInfo info = (HighlightInfo)tooltip;
TextAttributesKey key = info.forcedTextAttributesKey;
if (key == null) {
HighlightInfoType type = info.type;
key = type.getAttributesKey();
}
if (key != null) {
attributes = myColorsScheme.getAttributes(key);
}
}
if (attributes == null) {
continue;
}
Color foreground = attributes.getForegroundColor();
Color background = attributes.getBackgroundColor();
if ((foreground == null || myDefaultForeground.equals(foreground))
&& (background == null || myDefaultBackground.equals(background))
&& attributes.getFontType() == Font.PLAIN) {
continue;
}
myNextAttributes = attributes;
break;
}
}