gtk-0.12.4: Binding to the Gtk+ graphical user interface library.

Portabilityportable (depends on GHC)
Stabilityprovisional
Maintainergtk2hs-users@lists.sourceforge.net
Safe HaskellNone

Graphics.UI.Gtk.Multiline.TextTag

Contents

Description

A tag that can be applied to text in a TextBuffer

Synopsis

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.

Tags should be in the TextTagTable for a given TextBuffer before using them with that buffer.

textBufferCreateTag is the best way to create tags.

The textTagInvisible property was not implemented for Gtk+ 2.0; it's planned to be implemented in future releases.

Class Hierarchy

 | GObject
 | +----TextTag

Types

Constructors

textTagNew :: Maybe TagName -> IO TextTagSource

Creates a TextTag.

  • Supplying Nothing as tag name results in an anonymous tag.

Methods

textTagSetPriority :: TextTagClass self => self -> Int -> IO ()Source

Sets the priority of a TextTag. Valid priorities are start at 0 and go to one less than textTagTableGetSize. Each tag in a table has a unique priority; setting the priority of one tag shifts the priorities of all the other tags in the table to maintain a unique priority for each tag. Higher priority tags "win" if two tags both set the same text attribute. When adding a tag to a tag table, it will be assigned the highest priority in the table by default; so normally the precedence of a set of tags is the order in which they were added to the table, or created with textBufferCreateTag, which adds the tag to the buffer's table automatically.

textTagGetPriority :: TextTagClass self => self -> IO IntSource

Get the tag priority.

textAttributesNew :: IO TextAttributesSource

Creates a TextAttributes, which describes a set of properties on some text.

textAttributesCopySource

Arguments

:: TextAttributes

src - a TextAttributes to be copied

-> IO TextAttributes 

Copies src and returns a new TextAttributes.

textAttributesCopyValues :: TextAttributes -> TextAttributes -> IO ()Source

Copies the values from src to dest so that dest has the same values as src.

makeNewTextAttributes :: Ptr TextAttributes -> IO TextAttributesSource

This function is use internal for transform TextAttributes. Don't expoert this function.

Attributes

textTagName :: TextTagClass self => Attr self (Maybe String)Source

Name used to refer to the text tag. Nothing for anonymous tags.

Default value: Nothing

textTagBackground :: TextTagClass self => WriteAttr self StringSource

Background color as a string.

Default value: ""

textTagBackgroundSet :: TextTagClass self => Attr self BoolSource

Whether this tag affects the background color.

Default value: False

textTagBackgroundFullHeight :: TextTagClass self => Attr self BoolSource

Whether the background color fills the entire line height or only the height of the tagged characters.

Default value: False

textTagBackgroundFullHeightSet :: TextTagClass self => Attr self BoolSource

Whether this tag affects background height.

Default value: False

textTagBackgroundGdk :: TextTagClass self => Attr self ColorSource

Background color as a (possibly unallocated) GdkColor.

textTagBackgroundStipple :: (TextTagClass self, PixmapClass pixmap) => ReadWriteAttr self Pixmap pixmapSource

Bitmap to use as a mask when drawing the text background.

textTagBackgroundStippleSet :: TextTagClass self => Attr self BoolSource

Whether this tag affects the background stipple.

Default value: False

textTagForeground :: TextTagClass self => WriteAttr self StringSource

Foreground color as a string.

Default value: ""

textTagForegroundSet :: TextTagClass self => Attr self BoolSource

Whether this tag affects the foreground color.

Default value: False

textTagForegroundGdk :: TextTagClass self => Attr self ColorSource

Foreground color as a (possibly unallocated) GdkColor.

textTagForegroundStipple :: (TextTagClass self, PixmapClass pixmap) => ReadWriteAttr self Pixmap pixmapSource

Bitmap to use as a mask when drawing the text foreground.

textTagForegroundStippleSet :: TextTagClass self => Attr self BoolSource

Whether this tag affects the foreground stipple.

Default value: False

textTagDirection :: TextTagClass self => Attr self TextDirectionSource

Text direction, e.g. right-to-left or left-to-right.

Default value: TextDirLtr

textTagEditable :: TextTagClass self => Attr self BoolSource

Whether the text can be modified by the user.

Default value: True

textTagEditableSet :: TextTagClass self => Attr self BoolSource

Whether this tag affects text editability.

Default value: False

textTagFont :: TextTagClass self => Attr self StringSource

Font description as a string, e.g. "Sans Italic 12".

Default value: ""

textTagFontDesc :: TextTagClass self => Attr self FontDescriptionSource

Font description as a FontDescription struct.

textTagFamily :: TextTagClass self => Attr self StringSource

Name of the font family, e.g. Sans, Helvetica, Times, Monospace.

Default value: ""

textTagFamilySet :: TextTagClass self => Attr self BoolSource

Whether this tag affects the font family.

Default value: False

textTagStyle :: TextTagClass self => Attr self FontStyleSource

Font style as a Style, e.g. StyleItalic.

Default value: StyleNormal

textTagStyleSet :: TextTagClass self => Attr self BoolSource

Whether this tag affects the font style.

Default value: False

textTagTabsSet :: TextTagClass self => Attr self BoolSource

Custom tabs for this text. textTagTabs :: TextTagClass self => Attr self TabArray

Whether this tag affects tabs.

Default value: False

textTagVariant :: TextTagClass self => Attr self VariantSource

Font variant as a Variant, e.g. VariantSmallCaps.

Default value: VariantNormal

textTagVariantSet :: TextTagClass self => Attr self BoolSource

Whether this tag affects the font variant.

Default value: False

textTagWeight :: TextTagClass self => Attr self IntSource

Font weight as an integer, see predefined values in Weight; for example, WeightBold.

Allowed values: >= 0

Default value: 400

textTagWeightSet :: TextTagClass self => Attr self BoolSource

Whether this tag affects the font weight.

Default value: False

textTagStretch :: TextTagClass self => Attr self StretchSource

Font stretch as a Stretch, e.g. StretchCondensed.

Default value: StretchNormal

textTagStretchSet :: TextTagClass self => Attr self BoolSource

Whether this tag affects the font stretch.

textTagSize :: TextTagClass self => Attr self IntSource

Font size in Pango units.

Allowed values: >= 0

Default value: 0

textTagSizeSet :: TextTagClass self => Attr self BoolSource

Whether this tag affects the font size.

Default value: False

textTagScale :: TextTagClass self => Attr self DoubleSource

Font size as a scale factor relative to the default font size. This properly adapts to theme changes etc. so is recommended.

Allowed values: >= 0

Default value: 1

textTagScaleSet :: TextTagClass self => Attr self BoolSource

Whether this tag scales the font size by a factor.

Default value: False

textTagSizePoints :: TextTagClass self => Attr self DoubleSource

Font size in points.

Allowed values: >= 0

Default value: 0

textTagJustification :: TextTagClass self => Attr self JustificationSource

Left, right, or center justification.

Default value: JustifyLeft

textTagJustificationSet :: TextTagClass self => Attr self BoolSource

Whether this tag affects paragraph justification.

Default value: False

textTagLanguage :: TextTagClass self => Attr self StringSource

The language this text is in, as an ISO code. Pango can use this as a hint when rendering the text. If not set, an appropriate default will be used.

Default value: ""

textTagLanguageSet :: TextTagClass self => Attr self BoolSource

Whether this tag affects the language the text is rendered as.

Default value: False

textTagLeftMargin :: TextTagClass self => Attr self IntSource

Width of the left margin in pixels.

Allowed values: >= 0

Default value: 0

textTagLeftMarginSet :: TextTagClass self => Attr self BoolSource

Whether this tag affects the left margin.

Default value: False

textTagRightMargin :: TextTagClass self => Attr self IntSource

Width of the right margin in pixels.

Allowed values: >= 0

Default value: 0

textTagRightMarginSet :: TextTagClass self => Attr self BoolSource

Whether this tag affects the right margin.

Default value: False

textTagIndent :: TextTagClass self => Attr self IntSource

Amount to indent the paragraph, in pixels.

Default value: 0

textTagIndentSet :: TextTagClass self => Attr self BoolSource

Whether this tag affects indentation.

Default value: False

textTagRise :: TextTagClass self => Attr self IntSource

Offset of text above the baseline (below the baseline if rise is negative) in pixels.

Default value: 0

textTagRiseSet :: TextTagClass self => Attr self BoolSource

Whether this tag affects the rise.

textTagPixelsAboveLines :: TextTagClass self => Attr self IntSource

Pixels of blank space above paragraphs.

Allowed values: >= 0

Default value: 0

textTagPixelsAboveLinesSet :: TextTagClass self => Attr self BoolSource

Whether this tag affects the number of pixels above lines.

Default value: False

textTagPixelsBelowLines :: TextTagClass self => Attr self IntSource

Pixels of blank space below paragraphs.

Allowed values: >= 0

Default value: 0

textTagPixelsBelowLinesSet :: TextTagClass self => Attr self BoolSource

Whether this tag affects the number of pixels below lines.

Default value: False

textTagPixelsInsideWrap :: TextTagClass self => Attr self IntSource

Pixels of blank space between wrapped lines in a paragraph.

Allowed values: >= 0

Default value: 0

textTagPixelsInsideWrapSet :: TextTagClass self => Attr self BoolSource

Whether this tag affects the number of pixels between wrapped lines.

Default value: False

textTagStrikethrough :: TextTagClass self => Attr self BoolSource

Whether to strike through the text.

Default value: False

textTagStrikethroughSet :: TextTagClass self => Attr self BoolSource

Whether this tag affects strikethrough.

Default value: False

textTagUnderline :: TextTagClass self => Attr self UnderlineSource

Style of underline for this text.

Default value: UnderlineNone

textTagUnderlineSet :: TextTagClass self => Attr self BoolSource

Whether this tag affects underlining.

Default value: False

textTagWrapMode :: TextTagClass self => Attr self WrapModeSource

Whether to wrap lines never, at word boundaries, or at character boundaries.

Default value: WrapNone

textTagWrapModeSet :: TextTagClass self => Attr self BoolSource

Whether this tag affects line wrap mode.

Default value: False

textTagInvisible :: TextTagClass self => Attr self BoolSource

Whether this text is hidden.

Note that there may still be problems with the support for invisible text, in particular when navigating programmatically inside a buffer containing invisible segments.

Default value: False

textTagInvisibleSet :: TextTagClass self => Attr self BoolSource

Whether this tag affects text visibility.

Default value: False

textTagParagraphBackground :: TextTagClass self => WriteAttr self StringSource

The paragraph background color as a string.

Default value: ""

textTagParagraphBackgroundSet :: TextTagClass self => Attr self BoolSource

Whether this tag affects the paragraph background color.

Default value: False

textTagParagraphBackgroundGdk :: TextTagClass self => Attr self ColorSource

The paragraph background color as a as a (possibly unallocated) Color.

Signals

textTagEvent :: TextTagClass self => Signal self (GObject -> TextIter -> EventM EAny Bool)Source

An event has occurred that affects the given tag.

  • Adding an event handler to the tag makes it possible to react on e.g. mouse clicks to implement hyperlinking.
  • The first argument is the object the event was fired from (typically a TextView). The second argument is the iterator indicating where the event happened.

Deprecated

onTextTagEvent :: TextTagClass t => t -> (Event -> TextIter -> IO ()) -> IO (ConnectId t)Source

An event has occurred that affects the given tag.

  • Adding an event handler to the tag makes it possible to react on e.g. mouse clicks to implement hyperlinking.