Class FoldHandler

  • Direct Known Subclasses:
    DummyFoldHandler, ExplicitFoldHandler, IndentFoldHandler

    public abstract class FoldHandler
    extends java.lang.Object
    Interface for obtaining the fold level of a specified line.

    Plugins can provide fold handlers by defining entries in their services.xml files like so:

    <SERVICE CLASS="org.gjt.sp.jedit.buffer.FoldHandler" NAME="name">
        new MyFoldHandler();
    </SERVICE>
    See ServiceManager for details.
    Since:
    jEdit 4.3pre3
    • Constructor Summary

      Constructors 
      Modifier Constructor Description
      protected FoldHandler​(java.lang.String name)  
    • Method Summary

      All Methods Static Methods Instance Methods Abstract Methods Concrete Methods 
      Modifier and Type Method Description
      boolean equals​(java.lang.Object o)
      Returns if the specified fold handler is equal to this one.
      static FoldHandler getFoldHandler​(java.lang.String name)
      Returns the fold handler with the specified name, or null if there is no registered handler with that name.
      abstract int getFoldLevel​(JEditBuffer buffer, int lineIndex, javax.swing.text.Segment seg)
      Returns the fold level of the specified line.
      static java.lang.String[] getFoldModes()
      Returns an array containing the names of all registered fold handlers.
      java.lang.String getName()
      Returns the internal name of this FoldHandler
      java.util.List<java.lang.Integer> getPrecedingFoldLevels​(JEditBuffer buffer, int lineIndex, javax.swing.text.Segment seg, int lineFoldLevel)
      Returns the fold levels of the lines preceding the specified line, which depend on the specified line.
      int hashCode()  
      java.lang.String toString()  
      • Methods inherited from class java.lang.Object

        clone, finalize, getClass, notify, notifyAll, wait, wait, wait
    • Field Detail

      • foldHandlerProvider

        public static FoldHandlerProvider foldHandlerProvider
        The FoldHandlerProvider.
    • Constructor Detail

      • FoldHandler

        protected FoldHandler​(java.lang.String name)
    • Method Detail

      • getName

        public java.lang.String getName()
        Returns the internal name of this FoldHandler
        Returns:
        The internal name of this FoldHandler
        Since:
        jEdit 4.0pre6
      • getFoldLevel

        public abstract int getFoldLevel​(JEditBuffer buffer,
                                         int lineIndex,
                                         javax.swing.text.Segment seg)
        Returns the fold level of the specified line.
        Parameters:
        buffer - The buffer in question
        lineIndex - The line index
        seg - A segment the fold handler can use to obtain any text from the buffer, if necessary
        Returns:
        The fold level of the specified line
        Since:
        jEdit 4.0pre1
      • getPrecedingFoldLevels

        public java.util.List<java.lang.Integer> getPrecedingFoldLevels​(JEditBuffer buffer,
                                                                        int lineIndex,
                                                                        javax.swing.text.Segment seg,
                                                                        int lineFoldLevel)
        Returns the fold levels of the lines preceding the specified line, which depend on the specified line.
        Parameters:
        buffer - The buffer in question
        lineIndex - The line index
        seg - A segment the fold handler can use to obtain any
        lineFoldLevel - The fold level of the specified line
        Returns:
        The fold levels of the preceding lines, in decreasing line number order (i.e. bottomost line first).
        Since:
        jEdit 4.3pre18
      • equals

        public boolean equals​(java.lang.Object o)
        Returns if the specified fold handler is equal to this one.
        Overrides:
        equals in class java.lang.Object
        Parameters:
        o - The object
      • hashCode

        public int hashCode()
        Overrides:
        hashCode in class java.lang.Object
      • getFoldHandler

        public static FoldHandler getFoldHandler​(java.lang.String name)
        Returns the fold handler with the specified name, or null if there is no registered handler with that name.
        Parameters:
        name - The name of the desired fold handler
        Since:
        jEdit 4.0pre6
      • getFoldModes

        public static java.lang.String[] getFoldModes()
        Returns an array containing the names of all registered fold handlers.
        Since:
        jEdit 4.0pre6
      • toString

        public java.lang.String toString()
        Overrides:
        toString in class java.lang.Object