org.gjt.sp.jedit.buffer
Class FoldHandler

java.lang.Object
  extended by org.gjt.sp.jedit.buffer.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

Field Summary
static FoldHandlerProvider foldHandlerProvider
          The FoldHandlerProvider.
static java.lang.String SERVICE
          Deprecated. use ServiceManager.ServiceFoldHandlerProvider
 
Constructor Summary
protected FoldHandler(java.lang.String name)
           
 
Method Summary
 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

SERVICE

@Deprecated
public static final java.lang.String SERVICE
Deprecated. use ServiceManager.ServiceFoldHandlerProvider
The service type. See ServiceManager.

Since:
jEdit 4.2pre1
See Also:
Constant Field Values

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