Module jEdit

Class FoldHandler

java.lang.Object
org.gjt.sp.jedit.buffer.FoldHandler
Direct Known Subclasses:
DummyFoldHandler, ExplicitFoldHandler, IndentFoldHandler, StringFoldHandler

public abstract class FoldHandler extends 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
Version:
$Id: FoldHandler.java 23981 2015-08-10 14:56:24Z daleanson $
Author:
Slava Pestov
  • Field Details

    • foldHandlerProvider

      public static FoldHandlerProvider foldHandlerProvider
      The FoldHandlerProvider.
  • Constructor Details

    • FoldHandler

      protected FoldHandler(String name)
  • Method Details

    • getName

      public 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, 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 List<Integer> getPrecedingFoldLevels(JEditBuffer buffer, int lineIndex, 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(Object o)
      Returns if the specified fold handler is equal to this one.
      Overrides:
      equals in class Object
      Parameters:
      o - The object
    • hashCode

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

      public static FoldHandler getFoldHandler(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 String[] getFoldModes()
      Returns an array containing the names of all registered fold handlers.
      Since:
      jEdit 4.0pre6
    • toString

      public String toString()
      Overrides:
      toString in class Object