Class DefaultParserNotice

java.lang.Object
org.fife.ui.rsyntaxtextarea.parser.DefaultParserNotice
All Implemented Interfaces:
Comparable<ParserNotice>, ParserNotice
Direct Known Subclasses:
TaskTagParser.TaskNotice

public class DefaultParserNotice extends Object implements ParserNotice
Base implementation of a parser notice. Most Parser implementations can return instances of this in their parse result.
Version:
1.0
See Also:
  • Field Details

    • parser

      private Parser parser
    • level

      private ParserNotice.Level level
    • line

      private int line
    • offset

      private int offset
    • length

      private int length
    • showInEditor

      private boolean showInEditor
    • color

      private Color color
    • message

      private String message
    • toolTipText

      private String toolTipText
    • DEFAULT_COLORS

      private static final Color[] DEFAULT_COLORS
  • Constructor Details

    • DefaultParserNotice

      public DefaultParserNotice(Parser parser, String msg, int line)
      Constructor.
      Parameters:
      parser - The parser that created this notice.
      msg - The text of the message.
      line - The line number for the message.
    • DefaultParserNotice

      public DefaultParserNotice(Parser parser, String message, int line, int offset, int length)
      Constructor.
      Parameters:
      parser - The parser that created this notice.
      message - The message.
      line - The line number corresponding to the message.
      offset - The offset in the input stream of the code the message is concerned with, or -1 if unknown.
      length - The length of the code the message is concerned with, or -1 if unknown.
  • Method Details

    • compareTo

      public int compareTo(ParserNotice other)
      Compares this parser notice to another.
      Specified by:
      compareTo in interface Comparable<ParserNotice>
      Parameters:
      other - Another parser notice.
      Returns:
      How the two parser notices should be sorted relative to one another.
    • containsPosition

      public boolean containsPosition(int pos)
      Description copied from interface: ParserNotice
      Returns whether this parser notice contains the specified location in the document.
      Specified by:
      containsPosition in interface ParserNotice
      Parameters:
      pos - The position in the document.
      Returns:
      Whether the position is contained. This will always return false if ParserNotice.getOffset() returns -1.
    • equals

      public boolean equals(Object obj)
      Returns whether this parser notice is equal to another one.
      Overrides:
      equals in class Object
      Parameters:
      obj - Another parser notice.
      Returns:
      Whether the two notices are equal.
    • getColor

      public Color getColor()
      Description copied from interface: ParserNotice
      Returns the color to use when painting this notice.
      Specified by:
      getColor in interface ParserNotice
      Returns:
      The color.
    • getKnowsOffsetAndLength

      public boolean getKnowsOffsetAndLength()
      Description copied from interface: ParserNotice
      Returns whether this parser notice has offset and length information (as opposed to just what line number to mark).
      Specified by:
      getKnowsOffsetAndLength in interface ParserNotice
      Returns:
      Whether the offset and length of the notice are specified.
      See Also:
    • getLength

      public int getLength()
      Description copied from interface: ParserNotice
      Returns the length of the code the message is concerned with.
      Specified by:
      getLength in interface ParserNotice
      Returns:
      The length of the code the message is concerned with, or -1 if unknown.
      See Also:
    • getLevel

      public ParserNotice.Level getLevel()
      Description copied from interface: ParserNotice
      Returns the level of this notice.
      Specified by:
      getLevel in interface ParserNotice
      Returns:
      A value from the ParserNotice.Level enumeration.
    • getLine

      public int getLine()
      Description copied from interface: ParserNotice
      Returns the line number the notice is about.
      Specified by:
      getLine in interface ParserNotice
      Returns:
      The line number.
    • getMessage

      public String getMessage()
      Description copied from interface: ParserNotice
      Returns the message from the parser.
      Specified by:
      getMessage in interface ParserNotice
      Returns:
      The message from the parser.
    • getOffset

      public int getOffset()
      Description copied from interface: ParserNotice
      Returns the offset of the code the message is concerned with.
      Specified by:
      getOffset in interface ParserNotice
      Returns:
      The offset, or -1 if unknown.
      See Also:
    • getParser

      public Parser getParser()
      Description copied from interface: ParserNotice
      Returns the parser that created this message.
      Specified by:
      getParser in interface ParserNotice
      Returns:
      The parser.
    • getShowInEditor

      public boolean getShowInEditor()
      Description copied from interface: ParserNotice
      Whether a squiggle underline should be drawn in the editor for this notice.
      Specified by:
      getShowInEditor in interface ParserNotice
      Returns:
      Whether a squiggle underline should be drawn.
    • getToolTipText

      public String getToolTipText()
      Description copied from interface: ParserNotice
      Returns the tool tip text to display for this notice.
      Specified by:
      getToolTipText in interface ParserNotice
      Returns:
      The tool tip text. If none has been explicitly set, this method returns the same text as ParserNotice.getMessage().
    • hashCode

      public int hashCode()
      Returns the hash code for this notice.
      Overrides:
      hashCode in class Object
      Returns:
      The hash code.
    • setColor

      public void setColor(Color color)
      Sets the color to use when painting this notice.
      Parameters:
      color - The color to use.
      See Also:
    • setLevel

      public void setLevel(ParserNotice.Level level)
      Sets the level of this notice.
      Parameters:
      level - The new level.
      See Also:
    • setShowInEditor

      public void setShowInEditor(boolean show)
      Sets whether a squiggle underline should be drawn in the editor for this notice.
      Parameters:
      show - Whether to draw a squiggle underline.
      See Also:
    • setToolTipText

      public void setToolTipText(String text)
      Sets the tool tip text to display for this notice.
      Parameters:
      text - The new tool tip text. This can be HTML. If this is null, then tool tips will return the same text as getMessage().
      See Also:
    • toString

      public String toString()
      Returns a string representation of this parser notice.
      Overrides:
      toString in class Object
      Returns:
      This parser notice as a string.