當前位置: 首頁>>代碼示例>>Java>>正文


Java RangeHighlighterEx.isValid方法代碼示例

本文整理匯總了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());
  }
}
 
開發者ID:jskierbi,項目名稱:intellij-ce-playground,代碼行數:22,代碼來源:UnifiedEditorRangeHighlighter.java

示例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;
}
 
開發者ID:jskierbi,項目名稱:intellij-ce-playground,代碼行數:19,代碼來源:DaemonCodeAnalyzerImpl.java

示例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());
  }
}
 
開發者ID:consulo,項目名稱:consulo,代碼行數:22,代碼來源:UnifiedEditorRangeHighlighter.java

示例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;
}
 
開發者ID:consulo,項目名稱:consulo,代碼行數:19,代碼來源:DaemonCodeAnalyzerImpl.java

示例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));
}
 
開發者ID:jskierbi,項目名稱:intellij-ce-playground,代碼行數:11,代碼來源:HighlightInfo.java

示例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));
}
 
開發者ID:lshain-android-source,項目名稱:tools-idea,代碼行數:8,代碼來源:HighlightInfo.java

示例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));
}
 
開發者ID:consulo,項目名稱:consulo,代碼行數:11,代碼來源:HighlightInfo.java

示例8: getActualStartOffset

import com.intellij.openapi.editor.ex.RangeHighlighterEx; //導入方法依賴的package包/類
public int getActualStartOffset() {
  RangeHighlighterEx h = highlighter;
  return h == null || !h.isValid() ? startOffset : h.getStartOffset();
}
 
開發者ID:jskierbi,項目名稱:intellij-ce-playground,代碼行數:5,代碼來源:HighlightInfo.java

示例9: getActualEndOffset

import com.intellij.openapi.editor.ex.RangeHighlighterEx; //導入方法依賴的package包/類
public int getActualEndOffset() {
  RangeHighlighterEx h = highlighter;
  return h == null || !h.isValid() ? endOffset : h.getEndOffset();
}
 
開發者ID:jskierbi,項目名稱:intellij-ce-playground,代碼行數:5,代碼來源:HighlightInfo.java

示例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;
  }
}
 
開發者ID:jskierbi,項目名稱:intellij-ce-playground,代碼行數:44,代碼來源:TextWithMarkupProcessor.java


注:本文中的com.intellij.openapi.editor.ex.RangeHighlighterEx.isValid方法示例由純淨天空整理自Github/MSDocs等開源代碼及文檔管理平台,相關代碼片段篩選自各路編程大神貢獻的開源項目,源碼版權歸原作者所有,傳播和使用請參考對應項目的License;未經允許,請勿轉載。