|
Graphics.UI.Gtk.SourceView.SourceBuffer | Portability | portable (depends on GHC) | Stability | provisional | Maintainer | gtk2hs-users@lists.sourceforge.net |
|
|
|
|
|
Description |
|
|
Synopsis |
|
|
|
|
Description
|
|
The SourceBuffer object is the model for SourceView widgets. It extends the TextBuffer
object by adding features useful to display and edit source code as syntax highlighting and bracket
matching. It also implements support for undo/redo operations.
To create a SourceBuffer use sourceBufferNew or
sourceBufferNewWithLanguage. The second form is just a convenience function which allows
you to initially set a SourceLanguage.
By default highlighting is enabled, but you can disable it with
sourceBufferSetHighlightSyntax.
|
|
Types
|
|
|
Instances | |
|
|
|
| Instances | |
|
|
Methods
|
|
|
|
|
Create a new SourceBuffer, possibly
taking a TextTagTable.
|
|
|
Create a new SourceBuffer
with a SourceLanguage.
|
|
sourceBufferSetHighlightSyntax | Source |
|
:: SourceBufferClass buffer | | => buffer | buffer a SourceBuffer.
| -> Bool | highlight True to enable syntax highlighting, False to disable it.
| -> IO () | | Controls whether syntax is highlighted in the buffer. If highlight is True, the text will be
highlighted according to the syntax patterns specified in the language set with
sourceBufferSetLanguage. If highlight is False, syntax highlighting is disabled and all the
TextTag objects that have been added by the syntax highlighting engine are removed from the
buffer.
|
|
|
sourceBufferGetHighlightSyntax | Source |
|
:: SourceBufferClass buffer | | => buffer | | -> IO Bool | returns True if syntax highlighting is enabled, False otherwise.
| Determines whether syntax highlighting is activated in the source buffer.
|
|
|
|
|
|
|
|
|
sourceBufferSetHighlightMatchingBrackets | Source |
|
:: SourceBufferClass buffer | | => buffer | | -> Bool | highlight True if you want matching brackets highlighted.
| -> IO () | | Controls the bracket match highlighting function in the buffer. If activated, when you position your
cursor over a bracket character (a parenthesis, a square bracket, etc.) the matching opening or
closing bracket character will be highlighted. You can specify the style with the
sourceBufferSetBracketMatchStyle function.
|
|
|
sourceBufferGetHighlightMatchingBrackets | Source |
|
:: SourceBufferClass buffer | | => buffer | | -> IO Bool | returns True if the source buffer will highlight matching brackets.
| Determines whether bracket match highlighting is activated for the source buffer.
|
|
|
sourceBufferSetStyleScheme | Source |
|
|
|
sourceBufferGetStyleScheme | Source |
|
|
|
sourceBufferSetMaxUndoLevels | Source |
|
:: SourceBufferClass buffer | | => buffer | | -> Int | maxUndoLevels the desired maximum number of undo levels.
| -> IO () | | Sets the number of undo levels for user actions the buffer will track. If the number of user actions
exceeds the limit set by this function, older actions will be discarded.
If maxUndoLevels is -1, no limit is set.
A new action is started whenever the function textBufferBeginUserAction is called. In
general, this happens whenever the user presses any key which modifies the buffer, but the undo
manager will try to merge similar consecutive actions, such as multiple character insertions into
one action. But, inserting a newline does start a new action.
|
|
|
sourceBufferGetMaxUndoLevels | Source |
|
:: SourceBufferClass buffer | | => buffer | | -> IO Int | returns the maximum number of possible undo levels or -1 if no limit is set.
| Determines the number of undo levels the buffer will track for buffer edits.
|
|
|
|
:: SourceBufferClass buffer | | => buffer | | -> IO Bool | returns True if it's possible to undo the last action.
| Determines whether a source buffer can undo the last action.
|
|
|
|
:: SourceBufferClass buffer | | => buffer | | -> IO Bool | returns True if a redo is possible.
| Determines whether a source buffer can redo the last action (i.e. if the last operation was an
undo).
|
|
|
|
Undoes the last user action which modified the buffer. Use sourceBufferCanUndo to check
whether a call to this function will have any effect.
Actions are defined as groups of operations between a call to textBufferBeginUserAction
and textBufferEndUserAction on the
same line.
|
|
|
Redoes the last undo operation. Use sourceBufferCanRedo to check whether a call to this
function will have any effect.
|
|
|
Marks the beginning of a not undoable action on the buffer, disabling the undo manager. Typically
you would call this function before initially setting the contents of the buffer (e.g. when loading
a file in a text editor).
You may nest sourceBufferBeginNotUndoableAction /
sourceBufferEndNotUndoableAction blocks.
|
|
|
Marks the end of a not undoable action on the buffer. When the last not undoable block is closed
through the call to this function, the list of undo actions is cleared and the undo manager is
re-enabled.
|
|
|
Creates a marker in the buffer of the given type.
- A marker is
semantically very similar to a Graphics.UI.Gtk.Multiline.TextMark,
except it has a type
which is used by the SourceView displaying the buffer to show a
pixmap on the left margin, at the line the marker is in. Because
of this, a marker is generally associated to a line and not a
character position. Markers are also accessible through a position
or range in the buffer.
- Markers are implemented using Graphics.UI.Gtk.Multiline.TextMark,
so all characteristics
and restrictions to marks apply to markers too. These includes
life cycle issues and Graphics.UI.Gtk.Multiline.TextMark.onMarkSet
and Graphics.UI.Gtk.Multiline.TextMark.onMarkDeleted signal
emissions.
- Like a Graphics.UI.Gtk.Multiline.TextMark, a SourceMarker
can be anonymous if the
passed name is Nothing. Also, the buffer owns the markers so you
shouldn't unreference it.
|
|
sourceBufferGetSourceMarksAtLine | Source |
|
:: SourceBufferClass buffer | | => buffer | buffer a SourceBuffer.
| -> Int | line a line number.
| -> String | category category to search for or empty
| -> IO [SourceMark] | | Returns the list of marks of the given category at line. If category is empty, all marks at line are
returned.
|
|
|
sourceBufferGetSourceMarksAtIter | Source |
|
|
|
sourceBufferRemoveSourceMarks | Source |
|
|
|
sourceBufferForwardIterToSourceMark | Source |
|
:: SourceBufferClass buffer | | => buffer | buffer a SourceBuffer.
| -> TextIter | iter an iterator.
| -> String | category category to search for or emtpy
| -> IO Bool | returns whether iter moved.
| Moves iter to the position of the next SourceMark of the given category. Returns True if iter was
moved. If category is empty, the next source mark can be of any category.
|
|
|
sourceBufferBackwardIterToSourceMark | Source |
|
:: SourceBufferClass buffer | | => buffer | buffer a SourceBuffer.
| -> TextIter | iter an iterator.
| -> String | category category to search for or emtpy
| -> IO Bool | returns whether iter moved.
| Moves iter to the position of the previous SourceMark of the given category. Returns True if iter
was moved. If category is empty, the previous source mark can be of any category.
|
|
|
sourceBufferEnsureHighlight | Source |
|
:: SourceBufferClass buffer | | => buffer | | -> TextIter | start start of the area to highlight.
| -> TextIter | end end of the area to highlight.
| -> IO () | | Forces buffer to analyze and highlight the given area synchronously.
Note
This is a potentially slow operation and should be used only when you need to make sure that some
text not currently visible is highlighted, for instance before printing.
|
|
|
Attributes
|
|
|
Whether Redo operation is possible.
Default value: False
|
|
|
Whether Undo operation is possible.
Default value: False
|
|
|
Whether to highlight matching brackets in the buffer.
Default value: True
|
|
|
Whether to highlight syntax in the buffer.
Default value: True
|
|
|
Language object to get highlighting patterns from.
|
|
|
Style scheme. It contains styles for syntax highlighting, optionally foreground, background, cursor
color, current line color, and matching brackets style.
|
|
|
Number of undo levels for the buffer. -1 means no limit. This property will only affect the default
undo manager.
Allowed values: >= GMaxulong
Default value: 1000
|
|
|
The buffer undo manager.
|
|
Signals
|
|
|
|
|
|
|
|
|
The sourceBufferMarkUpdated signal is emitted each time a mark is added to, moved or removed from the
buffer.
|
|
Produced by Haddock version 2.6.1 |