|
Graphics.UI.Gtk.Multiline.TextView | Portability | portable (depends on GHC) | Stability | provisional | Maintainer | gtk2hs-users@lists.sourceforge.net |
|
|
|
|
|
Description |
Widget that displays a TextBuffer
|
|
Synopsis |
|
data TextView | | class ContainerClass o => TextViewClass o | | data TextChildAnchor | | class GObjectClass o => TextChildAnchorClass o | | castToTextView :: GObjectClass obj => obj -> TextView | | | | | | | | | | | | | | textViewNew :: IO TextView | | textViewNewWithBuffer :: TextBufferClass buffer => buffer -> IO TextView | | textViewSetBuffer :: (TextViewClass self, TextBufferClass buffer) => self -> buffer -> IO () | | textViewGetBuffer :: TextViewClass self => self -> IO TextBuffer | | textViewScrollToMark :: (TextViewClass self, TextMarkClass mark) => self -> mark -> Double -> Maybe (Double, Double) -> IO () | | textViewScrollToIter :: TextViewClass self => self -> TextIter -> Double -> Maybe (Double, Double) -> IO Bool | | textViewScrollMarkOnscreen :: (TextViewClass self, TextMarkClass mark) => self -> mark -> IO () | | textViewMoveMarkOnscreen :: (TextViewClass self, TextMarkClass mark) => self -> mark -> IO Bool | | textViewPlaceCursorOnscreen :: TextViewClass self => self -> IO Bool | | textViewGetLineAtY :: TextViewClass self => self -> Int -> IO (TextIter, Int) | | textViewGetLineYrange :: TextViewClass self => self -> TextIter -> IO (Int, Int) | | textViewGetIterAtLocation :: TextViewClass self => self -> Int -> Int -> IO TextIter | | textViewBufferToWindowCoords :: TextViewClass self => self -> TextWindowType -> (Int, Int) -> IO (Int, Int) | | textViewWindowToBufferCoords :: TextViewClass self => self -> TextWindowType -> (Int, Int) -> IO (Int, Int) | | textViewGetWindow :: TextViewClass self => self -> TextWindowType -> IO (Maybe DrawWindow) | | textViewGetWindowType :: TextViewClass self => self -> DrawWindow -> IO TextWindowType | | textViewSetBorderWindowSize :: TextViewClass self => self -> TextWindowType -> Int -> IO () | | textViewGetBorderWindowSize :: TextViewClass self => self -> TextWindowType -> IO Int | | textViewForwardDisplayLine :: TextViewClass self => self -> TextIter -> IO Bool | | textViewBackwardDisplayLine :: TextViewClass self => self -> TextIter -> IO Bool | | textViewForwardDisplayLineEnd :: TextViewClass self => self -> TextIter -> IO Bool | | textViewBackwardDisplayLineStart :: TextViewClass self => self -> TextIter -> IO Bool | | textViewStartsDisplayLine :: TextViewClass self => self -> TextIter -> IO Bool | | textViewMoveVisually :: TextViewClass self => self -> TextIter -> Int -> IO Bool | | textViewAddChildAtAnchor :: (TextViewClass self, WidgetClass child) => self -> child -> TextChildAnchor -> IO () | | textChildAnchorNew :: IO TextChildAnchor | | textChildAnchorGetWidgets :: TextChildAnchor -> IO [Widget] | | textChildAnchorGetDeleted :: TextChildAnchor -> IO Bool | | textViewAddChildInWindow :: (TextViewClass self, WidgetClass child) => self -> child -> TextWindowType -> Int -> Int -> IO () | | textViewMoveChild :: (TextViewClass self, WidgetClass child) => self -> child -> Int -> Int -> IO () | | textViewSetWrapMode :: TextViewClass self => self -> WrapMode -> IO () | | textViewGetWrapMode :: TextViewClass self => self -> IO WrapMode | | textViewSetEditable :: TextViewClass self => self -> Bool -> IO () | | textViewGetEditable :: TextViewClass self => self -> IO Bool | | textViewSetCursorVisible :: TextViewClass self => self -> Bool -> IO () | | textViewGetCursorVisible :: TextViewClass self => self -> IO Bool | | textViewSetPixelsAboveLines :: TextViewClass self => self -> Int -> IO () | | textViewGetPixelsAboveLines :: TextViewClass self => self -> IO Int | | textViewSetPixelsBelowLines :: TextViewClass self => self -> Int -> IO () | | textViewGetPixelsBelowLines :: TextViewClass self => self -> IO Int | | textViewSetPixelsInsideWrap :: TextViewClass self => self -> Int -> IO () | | textViewGetPixelsInsideWrap :: TextViewClass self => self -> IO Int | | textViewSetJustification :: TextViewClass self => self -> Justification -> IO () | | textViewGetJustification :: TextViewClass self => self -> IO Justification | | textViewSetLeftMargin :: TextViewClass self => self -> Int -> IO () | | textViewGetLeftMargin :: TextViewClass self => self -> IO Int | | textViewSetRightMargin :: TextViewClass self => self -> Int -> IO () | | textViewGetRightMargin :: TextViewClass self => self -> IO Int | | textViewSetIndent :: TextViewClass self => self -> Int -> IO () | | textViewGetIndent :: TextViewClass self => self -> IO Int | | textViewGetDefaultAttributes :: TextViewClass self => self -> IO TextAttributes | | textViewGetVisibleRect :: TextViewClass self => self -> IO Rectangle | | textViewGetIterLocation :: TextViewClass self => self -> TextIter -> IO Rectangle | | textViewSetOverwrite :: TextViewClass self => self -> Bool -> IO () | | textViewGetOverwrite :: TextViewClass self => self -> IO Bool | | textViewSetAcceptsTab :: TextViewClass self => self -> Bool -> IO () | | textViewGetAcceptsTab :: TextViewClass self => self -> IO Bool | | textViewPixelsAboveLines :: TextViewClass self => Attr self Int | | textViewPixelsBelowLines :: TextViewClass self => Attr self Int | | textViewPixelsInsideWrap :: TextViewClass self => Attr self Int | | textViewEditable :: TextViewClass self => Attr self Bool | | textViewWrapMode :: TextViewClass self => Attr self WrapMode | | textViewJustification :: TextViewClass self => Attr self Justification | | textViewLeftMargin :: TextViewClass self => Attr self Int | | textViewRightMargin :: TextViewClass self => Attr self Int | | textViewIndent :: TextViewClass self => Attr self Int | | textViewCursorVisible :: TextViewClass self => Attr self Bool | | textViewBuffer :: (TextViewClass self, TextBufferClass buffer) => ReadWriteAttr self TextBuffer buffer | | textViewOverwrite :: TextViewClass self => Attr self Bool | | textViewAcceptsTab :: TextViewClass self => Attr self Bool | | onCopyClipboard :: TextViewClass self => self -> IO () -> IO (ConnectId self) | | afterCopyClipboard :: TextViewClass self => self -> IO () -> IO (ConnectId self) | | onCutClipboard :: TextViewClass self => self -> IO () -> IO (ConnectId self) | | afterCutClipboard :: TextViewClass self => self -> IO () -> IO (ConnectId self) | | onDeleteFromCursor :: TextViewClass self => self -> (DeleteType -> Int -> IO ()) -> IO (ConnectId self) | | afterDeleteFromCursor :: TextViewClass self => self -> (DeleteType -> Int -> IO ()) -> IO (ConnectId self) | | onInsertAtCursor :: TextViewClass self => self -> (String -> IO ()) -> IO (ConnectId self) | | afterInsertAtCursor :: TextViewClass self => self -> (String -> IO ()) -> IO (ConnectId self) | | onMoveCursor :: TextViewClass self => self -> (MovementStep -> Int -> Bool -> IO ()) -> IO (ConnectId self) | | afterMoveCursor :: TextViewClass self => self -> (MovementStep -> Int -> Bool -> IO ()) -> IO (ConnectId self) | | onMoveFocus :: TextViewClass self => self -> (DirectionType -> IO ()) -> IO (ConnectId self) | | afterMoveFocus :: TextViewClass self => self -> (DirectionType -> IO ()) -> IO (ConnectId self) | | onPageHorizontally :: TextViewClass self => self -> (Int -> Bool -> IO ()) -> IO (ConnectId self) | | afterPageHorizontally :: TextViewClass self => self -> (Int -> Bool -> IO ()) -> IO (ConnectId self) | | onPasteClipboard :: TextViewClass self => self -> IO () -> IO (ConnectId self) | | afterPasteClipboard :: TextViewClass self => self -> IO () -> IO (ConnectId self) | | onPopulatePopup :: TextViewClass self => self -> (Menu -> IO ()) -> IO (ConnectId self) | | afterPopulatePopup :: TextViewClass self => self -> (Menu -> IO ()) -> IO (ConnectId self) | | onSetAnchor :: TextViewClass self => self -> IO () -> IO (ConnectId self) | | afterSetAnchor :: TextViewClass self => self -> IO () -> IO (ConnectId self) | | onSetScrollAdjustments :: TextViewClass self => self -> (Adjustment -> Adjustment -> IO ()) -> IO (ConnectId self) | | afterSetScrollAdjustments :: TextViewClass self => self -> (Adjustment -> Adjustment -> IO ()) -> IO (ConnectId self) | | onToggleOverwrite :: TextViewClass self => self -> IO () -> IO (ConnectId self) | | afterToggleOverwrite :: TextViewClass self => self -> IO () -> IO (ConnectId self) |
|
|
|
Detail
|
|
You may wish to begin by reading the text widget conceptual overview
which gives an overview of all the objects and data types related to the
text widget and how they work together.
Throughout we distinguish between buffer coordinates which are pixels with
the origin at the upper left corner of the first character on the first
line. Window coordinates are relative to the top left pixel which is visible
in the current TextView. Coordinates from Events are in the latter
relation. The conversion can be done with textViewWindowToBufferCoords.
|
|
Class Hierarchy
|
|
| GObject
| +----Object
| +----Widget
| +----Container
| +----TextView
|
|
| GObject
| +----TextChildAnchor
|
|
Types
|
|
data TextView |
Instances | |
|
|
class ContainerClass o => TextViewClass o |
| Instances | |
|
|
data TextChildAnchor |
Instances | |
|
|
class GObjectClass o => TextChildAnchorClass o |
| Instances | |
|
|
castToTextView :: GObjectClass obj => obj -> TextView |
|
data DeleteType |
Editing option
| Constructors | DeleteChars | | DeleteWordEnds | | DeleteWords | | DeleteDisplayLines | | DeleteDisplayLineEnds | | DeleteParagraphEnds | | DeleteParagraphs | | DeleteWhitespace | |
| Instances | |
|
|
data DirectionType |
Editing direction
| Constructors | DirTabForward | | DirTabBackward | | DirUp | | DirDown | | DirLeft | | DirRight | |
| Instances | |
|
|
data Justification |
Justification for label and maybe other widgets (text?)
| Constructors | JustifyLeft | | JustifyRight | | JustifyCenter | | JustifyFill | |
| Instances | |
|
|
data MovementStep |
Movement in text widget
| Constructors | MovementLogicalPositions | | MovementVisualPositions | | MovementWords | | MovementDisplayLines | | MovementDisplayLineEnds | | MovementParagraphs | | MovementParagraphEnds | | MovementPages | | MovementBufferEnds | | MovementHorizontalPages | |
| Instances | |
|
|
data TextWindowType |
The window type for coordinate translation.
| Constructors | TextWindowPrivate | | TextWindowWidget | | TextWindowText | | TextWindowLeft | | TextWindowRight | | TextWindowTop | | TextWindowBottom | |
| Instances | |
|
|
data WrapMode |
Determine how lines are wrapped in a TextView.
| Constructors | WrapNone | | WrapChar | | WrapWord | | WrapWordChar | |
| Instances | |
|
|
Constructors
|
|
textViewNew :: IO TextView |
Creates a new TextView. If you don't call textViewSetBuffer before
using the text view, an empty default buffer will be created for you. Get
the buffer with textViewGetBuffer. If you want to specify your own buffer,
consider textViewNewWithBuffer.
|
|
textViewNewWithBuffer :: TextBufferClass buffer => buffer -> IO TextView |
Creates a new TextView widget displaying the buffer buffer. One
buffer can be shared among many widgets.
|
|
Methods
|
|
textViewSetBuffer :: (TextViewClass self, TextBufferClass buffer) => self -> buffer -> IO () |
Sets the given buffer as the buffer being displayed by the text view.
|
|
textViewGetBuffer :: TextViewClass self => self -> IO TextBuffer |
Returns the TextBuffer being displayed by this text view.
|
|
textViewScrollToMark |
:: (TextViewClass self, TextMarkClass mark) | | => self | | -> mark | mark - a TextMark
| -> Double | withinMargin - margin as a [0.0,0.5) fraction of screen size
and imposes an extra margin at all four sides of the window
within which xalign and yalign are evaluated.
| -> Maybe (Double, Double) | Just (xalign, yalign) - horizontal and
vertical alignment of mark within visible area (if Nothing,
scroll just enough to get the mark onscreen)
| -> IO () | | Scrolls the text view so that mark is on the screen in the position
indicated by xalign and yalign. An alignment of 0.0 indicates left or
top, 1.0 indicates right or bottom, 0.5 means center. If the alignment is
Nothing, the text scrolls the minimal distance to get the mark onscreen,
possibly not scrolling at all. The effective screen for purposes of this
function is reduced by a margin of size withinMargin.
|
|
|
textViewScrollToIter |
:: TextViewClass self | | => self | | -> TextIter | iter - a TextIter
| -> Double | withinMargin - margin as a [0.0,0.5) fraction of screen
size
| -> Maybe (Double, Double) | Just (xalign, yalign) - horizontal and
vertical alignment of mark within visible area (if Nothing,
scroll just enough to get the mark onscreen)
| -> IO Bool | returns True if scrolling occurred
| Scrolls the text view so that iter is on the screen in the position
indicated by xalign and yalign. An alignment of 0.0 indicates left or
top, 1.0 indicates right or bottom, 0.5 means center. If the alignment is
Nothing, the text scrolls the minimal distance to get the mark onscreen,
possibly not scrolling at all. The effective screen for purposes of this
function is reduced by a margin of size withinMargin.
NOTE: This function
uses the currently-computed height of the lines in the text buffer. Note
that line heights are computed in an idle handler; so this function may not
have the desired effect if it's called before the height computations. To
avoid oddness, consider using textViewScrollToMark which saves a point to
be scrolled to after line validation.
|
|
|
textViewScrollMarkOnscreen |
:: (TextViewClass self, TextMarkClass mark) | | => self | | -> mark | mark - a mark in the buffer for the text view
| -> IO () | | Scrolls the text view the minimum distance such that mark is contained
within the visible area of the widget.
|
|
|
textViewMoveMarkOnscreen |
:: (TextViewClass self, TextMarkClass mark) | | => self | | -> mark | mark - a TextMark
| -> IO Bool | returns True if the mark moved (wasn't already onscreen)
| Moves a mark within the buffer so that it's located within the
currently-visible text area.
|
|
|
textViewPlaceCursorOnscreen |
:: TextViewClass self | | => self | | -> IO Bool | returns True if the cursor had to be moved.
| Moves the cursor to the currently visible region of the buffer, it it
isn't there already.
|
|
|
textViewGetLineAtY |
:: TextViewClass self | | => self | | -> Int | y - a y coordinate
| -> IO (TextIter, Int) | (targetIter, lineTop) - returns the iter and the
top coordinate of the line
| Gets the TextIter at the start of the line containing the coordinate
y. y is in buffer coordinates, convert from window coordinates with
textViewWindowToBufferCoords. Also returns lineTop the
coordinate of the top edge of the line.
|
|
|
textViewGetLineYrange |
:: TextViewClass self | | => self | | -> TextIter | iter - a TextIter
| -> IO (Int, Int) | (y, height) - y coordinate and height of the line
| Gets the y coordinate of the top of the line containing iter, and the
height of the line. The coordinate is a buffer coordinate; convert to window
coordinates with textViewBufferToWindowCoords.
|
|
|
textViewGetIterAtLocation |
:: TextViewClass self | | => self | | -> Int | x - x position, in buffer coordinates
| -> Int | y - y position, in buffer coordinates
| -> IO TextIter | | Retrieves the iterator at buffer coordinates x and y. Buffer
coordinates are coordinates for the entire buffer, not just the
currently-displayed portion. If you have coordinates from an event, you have
to convert those to buffer coordinates with textViewWindowToBufferCoords.
|
|
|
textViewBufferToWindowCoords |
|
|
textViewWindowToBufferCoords |
|
|
textViewGetWindow |
:: TextViewClass self | | => self | | -> TextWindowType | win - window to get
| -> IO (Maybe DrawWindow) | returns a DrawWindow, or Nothing
| Retrieves the DrawWindow corresponding to an area of the text view;
possible windows include the overall widget window, child windows on the
left, right, top, bottom, and the window that displays the text buffer.
Windows are Nothing and nonexistent if their width or height is 0, and are
nonexistent before the widget has been realized.
|
|
|
textViewGetWindowType :: TextViewClass self => self -> DrawWindow -> IO TextWindowType |
Retrieve the type of window the TextView widget contains.
Usually used to find out which window an event corresponds to. An emission
of an event signal of TextView yields a DrawWindow. This function can be
used to see if the event actually belongs to the main text window.
|
|
textViewSetBorderWindowSize |
|
|
textViewGetBorderWindowSize |
|
|
textViewForwardDisplayLine |
:: TextViewClass self | | => self | | -> TextIter | iter - a TextIter
| -> IO Bool | returns True if iter was moved and is not on the end
iterator
| Moves the given iter forward by one display (wrapped) line. A display
line is different from a paragraph. Paragraphs are separated by newlines or
other paragraph separator characters. Display lines are created by
line-wrapping a paragraph. If wrapping is turned off, display lines and
paragraphs will be the same. Display lines are divided differently for each
view, since they depend on the view's width; paragraphs are the same in all
views, since they depend on the contents of the TextBuffer.
|
|
|
textViewBackwardDisplayLine |
:: TextViewClass self | | => self | | -> TextIter | iter - a TextIter
| -> IO Bool | returns True if iter was moved and is not on the end
iterator
| Moves the given iter backward by one display (wrapped) line. A display
line is different from a paragraph. Paragraphs are separated by newlines or
other paragraph separator characters. Display lines are created by
line-wrapping a paragraph. If wrapping is turned off, display lines and
paragraphs will be the same. Display lines are divided differently for each
view, since they depend on the view's width; paragraphs are the same in all
views, since they depend on the contents of the TextBuffer.
|
|
|
textViewForwardDisplayLineEnd |
:: TextViewClass self | | => self | | -> TextIter | iter - a TextIter
| -> IO Bool | returns True if iter was moved and is not on the end
iterator
| Moves the given iter forward to the next display line end. A display
line is different from a paragraph. Paragraphs are separated by newlines or
other paragraph separator characters. Display lines are created by
line-wrapping a paragraph. If wrapping is turned off, display lines and
paragraphs will be the same. Display lines are divided differently for each
view, since they depend on the view's width; paragraphs are the same in all
views, since they depend on the contents of the TextBuffer.
|
|
|
textViewBackwardDisplayLineStart |
:: TextViewClass self | | => self | | -> TextIter | iter - a TextIter
| -> IO Bool | returns True if iter was moved and is not on the end
iterator
| Moves the given iter backward to the next display line start. A display
line is different from a paragraph. Paragraphs are separated by newlines or
other paragraph separator characters. Display lines are created by
line-wrapping a paragraph. If wrapping is turned off, display lines and
paragraphs will be the same. Display lines are divided differently for each
view, since they depend on the view's width; paragraphs are the same in all
views, since they depend on the contents of the TextBuffer.
|
|
|
textViewStartsDisplayLine |
|
|
textViewMoveVisually |
:: TextViewClass self | | => self | | -> TextIter | iter - a TextIter
| -> Int | count - number of characters to move (negative moves left,
positive moves right)
| -> IO Bool | returns True if iter moved and is not on the end
iterator
| Move the iterator a given number of characters visually, treating it as
the strong cursor position. If count is positive, then the new strong
cursor position will be count positions to the right of the old cursor
position. If count is negative then the new strong cursor position will be
count positions to the left of the old cursor position.
In the presence of bidirection text, the correspondence between logical
and visual order will depend on the direction of the current run, and there
may be jumps when the cursor is moved off of the end of a run.
|
|
|
textViewAddChildAtAnchor |
|
|
textChildAnchorNew :: IO TextChildAnchor |
Create a new TextChildAnchor.
- Using textBufferCreateChildAnchor is usually simpler then
executing this function and textBufferInsertChildAnchor.
|
|
textChildAnchorGetWidgets :: TextChildAnchor -> IO [Widget] |
Retrieve all Widgets at this
TextChildAnchor.
- The widgets in the returned list need to be upcasted to what they were.
|
|
textChildAnchorGetDeleted :: TextChildAnchor -> IO Bool |
Query if an anchor was deleted.
|
|
textViewAddChildInWindow |
:: (TextViewClass self, WidgetClass child) | | => self | | -> child | child - a Widget
| -> TextWindowType | whichWindow - which window the child should appear
in
| -> Int | xpos - X position of child in window coordinates
| -> Int | ypos - Y position of child in window coordinates
| -> IO () | | Adds a child at fixed coordinates in one of the text widget's windows.
The window must have nonzero size (see textViewSetBorderWindowSize). Note
that the child coordinates are given relative to the DrawWindow in
question, and that these coordinates have no sane relationship to scrolling.
When placing a child in TextWindowWidget, scrolling is irrelevant, the
child floats above all scrollable areas. If you want the widget to move when
the text view scrolls, use textViewAddChildAtAnchor instead.
|
|
|
textViewMoveChild |
:: (TextViewClass self, WidgetClass child) | | => self | | -> child | child - child widget already added to the text view
| -> Int | xpos - new X position in window coordinates
| -> Int | ypos - new Y position in window coordinates
| -> IO () | | Move a child widget within the TextView. This is really only apprpriate
for "floating" child widgets added using textViewAddChildInWindow.
|
|
|
textViewSetWrapMode :: TextViewClass self => self -> WrapMode -> IO () |
Sets the line wrapping for the view.
|
|
textViewGetWrapMode :: TextViewClass self => self -> IO WrapMode |
Gets the line wrapping for the view.
|
|
textViewSetEditable :: TextViewClass self => self -> Bool -> IO () |
Sets the default editability of the TextView. You can override this
default setting with tags in the buffer, using the "editable" attribute of
tags.
|
|
textViewGetEditable :: TextViewClass self => self -> IO Bool |
Returns the default editability of the TextView. Tags in the buffer may
override this setting for some ranges of text.
|
|
textViewSetCursorVisible :: TextViewClass self => self -> Bool -> IO () |
Toggles whether the insertion point is displayed. A buffer with no
editable text probably shouldn't have a visible cursor, so you may want to
turn the cursor off.
|
|
textViewGetCursorVisible :: TextViewClass self => self -> IO Bool |
Find out whether the cursor is being displayed.
|
|
textViewSetPixelsAboveLines :: TextViewClass self => self -> Int -> IO () |
Sets the default number of blank pixels above paragraphs in the text view.
Tags in the buffer for the text view may override the defaults.
- Tags in the buffer may override this default.
|
|
textViewGetPixelsAboveLines :: TextViewClass self => self -> IO Int |
Gets the default number of pixels to put above paragraphs.
|
|
textViewSetPixelsBelowLines :: TextViewClass self => self -> Int -> IO () |
Sets the default number of pixels of blank space to put below paragraphs
in the text view. May be overridden by tags applied to the text view's
buffer.
|
|
textViewGetPixelsBelowLines :: TextViewClass self => self -> IO Int |
Gets the default number of blank pixels below each paragraph.
|
|
textViewSetPixelsInsideWrap :: TextViewClass self => self -> Int -> IO () |
Sets the default number of pixels of blank space to leave between
display/wrapped lines within a paragraph. May be overridden by tags in
the text view's buffer.
|
|
textViewGetPixelsInsideWrap :: TextViewClass self => self -> IO Int |
Gets the default number of pixels of blank space between lines in a
wrapped paragraph.
|
|
textViewSetJustification :: TextViewClass self => self -> Justification -> IO () |
Sets the default justification of text in the text view. Tags in the
view's buffer may override the default.
|
|
textViewGetJustification :: TextViewClass self => self -> IO Justification |
Gets the default justification of paragraphs in the text view. Tags in the
buffer may override the default.
|
|
textViewSetLeftMargin |
:: TextViewClass self | | => self | | -> Int | leftMargin - left margin in pixels
| -> IO () | | Sets the default left margin for text in the text view. Tags in the buffer
may override the default.
|
|
|
textViewGetLeftMargin |
:: TextViewClass self | | => self | | -> IO Int | returns left margin in pixels
| Gets the default left margin size of paragraphs in the text view. Tags
in the buffer may override the default.
|
|
|
textViewSetRightMargin |
:: TextViewClass self | | => self | | -> Int | rightMargin - right margin in pixels
| -> IO () | | Sets the default right margin for text in the text view. Tags in the
buffer may override the default.
|
|
|
textViewGetRightMargin |
:: TextViewClass self | | => self | | -> IO Int | returns right margin in pixels
| Gets the default right margin for text in the text view. Tags in the
buffer may override the default.
|
|
|
textViewSetIndent |
:: TextViewClass self | | => self | | -> Int | indent - indentation in pixels (may be negative)
| -> IO () | | Sets the default indentation for paragraphs in the text view. Tags in the
buffer may override the default.
|
|
|
textViewGetIndent |
:: TextViewClass self | | => self | | -> IO Int | returns number of pixels of indentation
| Gets the default indentation of paragraphs in the text view. Tags in the
view's buffer may override the default. The indentation may be negative.
|
|
|
textViewGetDefaultAttributes :: TextViewClass self => self -> IO TextAttributes |
Obtains a copy of the default text attributes. These are the attributes
used for text unless a tag overrides them. You'd typically pass the default
attributes in to textIterGetAttributes in order to get the attributes in
effect at a given text position.
|
|
textViewGetVisibleRect :: TextViewClass self => self -> IO Rectangle |
Returns the currently-visible region of the buffer, in
buffer coordinates. Convert to window coordinates with
textViewBufferToWindowCoords.
|
|
textViewGetIterLocation :: TextViewClass self => self -> TextIter -> IO Rectangle |
Gets a rectangle which roughly contains the character at iter. The
rectangle position is in buffer coordinates; use
textViewBufferToWindowCoords to convert these coordinates to coordinates
for one of the windows in the text view.
|
|
textViewSetOverwrite |
:: TextViewClass self | | => self | | -> Bool | overwrite - True to turn on overwrite mode, False to turn
it off
| -> IO () | | Changes the TextView overwrite mode.
- Available since Gtk+ version 2.4
|
|
|
textViewGetOverwrite :: TextViewClass self => self -> IO Bool |
Returns whether the TextView is in overwrite mode or not.
- Available since Gtk+ version 2.4
|
|
textViewSetAcceptsTab |
:: TextViewClass self | | => self | | -> Bool | acceptsTab - True if pressing the Tab key should insert a
tab character, False, if pressing the Tab key should move the
keyboard focus.
| -> IO () | | Sets the behavior of the text widget when the Tab key is pressed. If
acceptsTab is True a tab character is inserted. If acceptsTab is
False the keyboard focus is moved to the next widget in the focus chain.
- Available since Gtk+ version 2.4
|
|
|
textViewGetAcceptsTab |
:: TextViewClass self | | => self | | -> IO Bool | returns True if pressing the Tab key inserts a tab
character, False if pressing the Tab key moves the keyboard
focus.
| Returns whether pressing the Tab key inserts a tab characters.
textViewSetAcceptsTab.
- Available since Gtk+ version 2.4
|
|
|
Attributes
|
|
textViewPixelsAboveLines :: TextViewClass self => Attr self Int |
Pixels of blank space above paragraphs.
Allowed values: >= 0
Default value: 0
|
|
textViewPixelsBelowLines :: TextViewClass self => Attr self Int |
Pixels of blank space below paragraphs.
Allowed values: >= 0
Default value: 0
|
|
textViewPixelsInsideWrap :: TextViewClass self => Attr self Int |
Pixels of blank space between wrapped lines in a paragraph.
Allowed values: >= 0
Default value: 0
|
|
textViewEditable :: TextViewClass self => Attr self Bool |
Whether the text can be modified by the user.
Default value: True
|
|
textViewWrapMode :: TextViewClass self => Attr self WrapMode |
Whether to wrap lines never, at word boundaries, or at character
boundaries.
Default value: WrapNone
|
|
textViewJustification :: TextViewClass self => Attr self Justification |
Left, right, or center justification.
Default value: JustifyLeft
|
|
textViewLeftMargin :: TextViewClass self => Attr self Int |
Width of the left margin in pixels.
Allowed values: >= 0
Default value: 0
|
|
textViewRightMargin :: TextViewClass self => Attr self Int |
Width of the right margin in pixels.
Allowed values: >= 0
Default value: 0
|
|
textViewIndent :: TextViewClass self => Attr self Int |
Amount to indent the paragraph, in pixels.
Allowed values: >= 0
Default value: 0
|
|
textViewCursorVisible :: TextViewClass self => Attr self Bool |
If the insertion cursor is shown.
Default value: True
|
|
textViewBuffer :: (TextViewClass self, TextBufferClass buffer) => ReadWriteAttr self TextBuffer buffer |
The buffer which is displayed.
|
|
textViewOverwrite :: TextViewClass self => Attr self Bool |
Whether entered text overwrites existing contents.
Default value: False
|
|
textViewAcceptsTab :: TextViewClass self => Attr self Bool |
Whether Tab will result in a tab character being entered.
Default value: True
|
|
Signals
|
|
onCopyClipboard :: TextViewClass self => self -> IO () -> IO (ConnectId self) |
Copying to the clipboard.
- This signal is emitted when a selection is copied to the clipboard.
- The action itself happens when the TextView processes this
signal.
|
|
afterCopyClipboard :: TextViewClass self => self -> IO () -> IO (ConnectId self) |
|
onCutClipboard :: TextViewClass self => self -> IO () -> IO (ConnectId self) |
Cutting to the clipboard.
- This signal is emitted when a selection is cut out and copied to the
clipboard. The action itself happens when the textview processed this
request.
|
|
afterCutClipboard :: TextViewClass self => self -> IO () -> IO (ConnectId self) |
|
onDeleteFromCursor :: TextViewClass self => self -> (DeleteType -> Int -> IO ()) -> IO (ConnectId self) |
Deleting text.
- The widget will remove the specified number of units in the text where
the meaning of units depends on the kind of deletion.
- The action itself happens when the TextView processes this
signal.
|
|
afterDeleteFromCursor :: TextViewClass self => self -> (DeleteType -> Int -> IO ()) -> IO (ConnectId self) |
|
onInsertAtCursor :: TextViewClass self => self -> (String -> IO ()) -> IO (ConnectId self) |
Inserting text.
- The widget will insert the string into the text where the meaning
of units depends on the kind of deletion.
- The action itself happens when the TextView processes this
signal.
|
|
afterInsertAtCursor :: TextViewClass self => self -> (String -> IO ()) -> IO (ConnectId self) |
|
onMoveCursor :: TextViewClass self => self -> (MovementStep -> Int -> Bool -> IO ()) -> IO (ConnectId self) |
Moving the cursor.
- The signal specifies what kind and how many steps the cursor will do.
The flag is set to True if this movement extends a selection.
- The action itself happens when the TextView processes this
signal.
|
|
afterMoveCursor :: TextViewClass self => self -> (MovementStep -> Int -> Bool -> IO ()) -> IO (ConnectId self) |
|
onMoveFocus :: TextViewClass self => self -> (DirectionType -> IO ()) -> IO (ConnectId self) |
Moving the focus.
- The action itself happens when the TextView processes this
signal.
|
|
afterMoveFocus :: TextViewClass self => self -> (DirectionType -> IO ()) -> IO (ConnectId self) |
|
onPageHorizontally :: TextViewClass self => self -> (Int -> Bool -> IO ()) -> IO (ConnectId self) |
Page change signals.
- The signal specifies how many pages the view should move up or down.
The flag is set to True if this movement extends a selection.
- The action itself happens when the TextView processes this
signal.
- Figure out why this signal is called horizontally, not vertically.
|
|
afterPageHorizontally :: TextViewClass self => self -> (Int -> Bool -> IO ()) -> IO (ConnectId self) |
|
onPasteClipboard :: TextViewClass self => self -> IO () -> IO (ConnectId self) |
Pasting from the clipboard.
- This signal is emitted when something is pasted from the clipboard.
- The action itself happens when the TextView processes this
signal.
|
|
afterPasteClipboard :: TextViewClass self => self -> IO () -> IO (ConnectId self) |
|
onPopulatePopup :: TextViewClass self => self -> (Menu -> IO ()) -> IO (ConnectId self) |
Add menu entries to context menus.
- This signal is emitted if a context menu within the TextView
is opened. This signal can be used to add application specific menu
items to this popup.
|
|
afterPopulatePopup :: TextViewClass self => self -> (Menu -> IO ()) -> IO (ConnectId self) |
|
onSetAnchor :: TextViewClass self => self -> IO () -> IO (ConnectId self) |
Inserting an anchor.
- This signal is emitted when anchor is inserted into the text.
- The action itself happens when the TextView processes this
signal.
|
|
afterSetAnchor :: TextViewClass self => self -> IO () -> IO (ConnectId self) |
|
onSetScrollAdjustments :: TextViewClass self => self -> (Adjustment -> Adjustment -> IO ()) -> IO (ConnectId self) |
The scroll-bars changed.
|
|
afterSetScrollAdjustments :: TextViewClass self => self -> (Adjustment -> Adjustment -> IO ()) -> IO (ConnectId self) |
|
onToggleOverwrite :: TextViewClass self => self -> IO () -> IO (ConnectId self) |
Insert/Overwrite mode has changed.
- This signal is emitted when the TextView changes from
inserting mode to overwriting mode and vice versa.
- The action itself happens when the TextView processes this
signal.
|
|
afterToggleOverwrite :: TextViewClass self => self -> IO () -> IO (ConnectId self) |
|
Produced by Haddock version 0.7 |