Maintainer | gtk2hs-users@lists.sourceforge.net |
---|---|
Stability | provisional |
Portability | portable (depends on GHC) |
Safe Haskell | None |
Language | Haskell98 |
A tag that can be applied to text in a TextBuffer
- data TextTag
- class GObjectClass o => TextTagClass o
- castToTextTag :: GObjectClass obj => obj -> TextTag
- gTypeTextTag :: GType
- toTextTag :: TextTagClass o => o -> TextTag
- type TagName = DefaultGlibString
- textTagNew :: Maybe TagName -> IO TextTag
- textTagSetPriority :: TextTagClass self => self -> Int -> IO ()
- textTagGetPriority :: TextTagClass self => self -> IO Int
- newtype TextAttributes = TextAttributes (ForeignPtr TextAttributes)
- textAttributesNew :: IO TextAttributes
- textAttributesCopy :: TextAttributes -> IO TextAttributes
- textAttributesCopyValues :: TextAttributes -> TextAttributes -> IO ()
- makeNewTextAttributes :: Ptr TextAttributes -> IO TextAttributes
- textTagName :: (TextTagClass self, GlibString string) => Attr self (Maybe string)
- textTagBackground :: (TextTagClass self, GlibString string) => WriteAttr self string
- textTagBackgroundSet :: TextTagClass self => Attr self Bool
- textTagBackgroundFullHeight :: TextTagClass self => Attr self Bool
- textTagBackgroundFullHeightSet :: TextTagClass self => Attr self Bool
- textTagBackgroundGdk :: TextTagClass self => Attr self Color
- textTagForeground :: (TextTagClass self, GlibString string) => WriteAttr self string
- textTagForegroundSet :: TextTagClass self => Attr self Bool
- textTagForegroundGdk :: TextTagClass self => Attr self Color
- textTagDirection :: TextTagClass self => Attr self TextDirection
- textTagEditable :: TextTagClass self => Attr self Bool
- textTagEditableSet :: TextTagClass self => Attr self Bool
- textTagFont :: (TextTagClass self, GlibString string) => Attr self string
- textTagFontDesc :: TextTagClass self => Attr self FontDescription
- textTagFamily :: (TextTagClass self, GlibString string) => Attr self string
- textTagFamilySet :: TextTagClass self => Attr self Bool
- textTagStyle :: TextTagClass self => Attr self FontStyle
- textTagStyleSet :: TextTagClass self => Attr self Bool
- textTagTabsSet :: TextTagClass self => Attr self Bool
- textTagVariant :: TextTagClass self => Attr self Variant
- textTagVariantSet :: TextTagClass self => Attr self Bool
- textTagWeight :: TextTagClass self => Attr self Int
- textTagWeightSet :: TextTagClass self => Attr self Bool
- textTagStretch :: TextTagClass self => Attr self Stretch
- textTagStretchSet :: TextTagClass self => Attr self Bool
- textTagSize :: TextTagClass self => Attr self Int
- textTagSizeSet :: TextTagClass self => Attr self Bool
- textTagScale :: TextTagClass self => Attr self Double
- textTagScaleSet :: TextTagClass self => Attr self Bool
- textTagSizePoints :: TextTagClass self => Attr self Double
- textTagJustification :: TextTagClass self => Attr self Justification
- textTagJustificationSet :: TextTagClass self => Attr self Bool
- textTagLanguage :: (TextTagClass self, GlibString string) => Attr self string
- textTagLanguageSet :: TextTagClass self => Attr self Bool
- textTagLeftMargin :: TextTagClass self => Attr self Int
- textTagLeftMarginSet :: TextTagClass self => Attr self Bool
- textTagRightMargin :: TextTagClass self => Attr self Int
- textTagRightMarginSet :: TextTagClass self => Attr self Bool
- textTagIndent :: TextTagClass self => Attr self Int
- textTagIndentSet :: TextTagClass self => Attr self Bool
- textTagRise :: TextTagClass self => Attr self Int
- textTagRiseSet :: TextTagClass self => Attr self Bool
- textTagPixelsAboveLines :: TextTagClass self => Attr self Int
- textTagPixelsAboveLinesSet :: TextTagClass self => Attr self Bool
- textTagPixelsBelowLines :: TextTagClass self => Attr self Int
- textTagPixelsBelowLinesSet :: TextTagClass self => Attr self Bool
- textTagPixelsInsideWrap :: TextTagClass self => Attr self Int
- textTagPixelsInsideWrapSet :: TextTagClass self => Attr self Bool
- textTagStrikethrough :: TextTagClass self => Attr self Bool
- textTagStrikethroughSet :: TextTagClass self => Attr self Bool
- textTagUnderline :: TextTagClass self => Attr self Underline
- textTagUnderlineSet :: TextTagClass self => Attr self Bool
- textTagWrapMode :: TextTagClass self => Attr self WrapMode
- textTagWrapModeSet :: TextTagClass self => Attr self Bool
- textTagInvisible :: TextTagClass self => Attr self Bool
- textTagInvisibleSet :: TextTagClass self => Attr self Bool
- textTagParagraphBackground :: (TextTagClass self, GlibString string) => WriteAttr self string
- textTagParagraphBackgroundSet :: TextTagClass self => Attr self Bool
- textTagParagraphBackgroundGdk :: TextTagClass self => Attr self Color
- textTagPriority :: TextTagClass self => Attr self Int
- textTagEvent :: TextTagClass self => Signal self (GObject -> TextIter -> EventM EAny Bool)
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
class GObjectClass o => TextTagClass o Source
castToTextTag :: GObjectClass obj => obj -> TextTag Source
toTextTag :: TextTagClass o => o -> TextTag Source
type TagName = DefaultGlibString Source
Constructors
textTagNew :: Maybe TagName -> IO TextTag Source
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 Int Source
Get the tag priority.
textAttributesNew :: IO TextAttributes Source
Creates a TextAttributes
, which describes a set of properties on some
text.
:: TextAttributes |
|
-> 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 TextAttributes Source
This function is use internal for transform TextAttributes. Don't expoert this function.
Attributes
textTagName :: (TextTagClass self, GlibString string) => Attr self (Maybe string) Source
Name used to refer to the text tag. Nothing
for anonymous tags.
Default value: Nothing
textTagBackground :: (TextTagClass self, GlibString string) => WriteAttr self string Source
Background color as a string.
Default value: ""
textTagBackgroundSet :: TextTagClass self => Attr self Bool Source
Whether this tag affects the background color.
Default value: False
textTagBackgroundFullHeight :: TextTagClass self => Attr self Bool Source
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 Bool Source
Whether this tag affects background height.
Default value: False
textTagBackgroundGdk :: TextTagClass self => Attr self Color Source
Background color as a (possibly unallocated) GdkColor.
textTagForeground :: (TextTagClass self, GlibString string) => WriteAttr self string Source
Foreground color as a string.
Default value: ""
textTagForegroundSet :: TextTagClass self => Attr self Bool Source
Whether this tag affects the foreground color.
Default value: False
textTagForegroundGdk :: TextTagClass self => Attr self Color Source
Foreground color as a (possibly unallocated) GdkColor.
textTagDirection :: TextTagClass self => Attr self TextDirection Source
Text direction, e.g. right-to-left or left-to-right.
Default value: TextDirLtr
textTagEditable :: TextTagClass self => Attr self Bool Source
Whether the text can be modified by the user.
Default value: True
textTagEditableSet :: TextTagClass self => Attr self Bool Source
Whether this tag affects text editability.
Default value: False
textTagFont :: (TextTagClass self, GlibString string) => Attr self string Source
Font description as a string, e.g. "Sans Italic 12".
Default value: ""
textTagFontDesc :: TextTagClass self => Attr self FontDescription Source
Font description as a FontDescription
struct.
textTagFamily :: (TextTagClass self, GlibString string) => Attr self string Source
Name of the font family, e.g. Sans, Helvetica, Times, Monospace.
Default value: ""
textTagFamilySet :: TextTagClass self => Attr self Bool Source
Whether this tag affects the font family.
Default value: False
textTagStyle :: TextTagClass self => Attr self FontStyle Source
Font style as a Style
, e.g. StyleItalic
.
Default value: StyleNormal
textTagStyleSet :: TextTagClass self => Attr self Bool Source
Whether this tag affects the font style.
Default value: False
textTagTabsSet :: TextTagClass self => Attr self Bool Source
Custom tabs for this text. textTagTabs :: TextTagClass self => Attr self TabArray
Whether this tag affects tabs.
Default value: False
textTagVariant :: TextTagClass self => Attr self Variant Source
Font variant as a Variant
, e.g. VariantSmallCaps
.
Default value: VariantNormal
textTagVariantSet :: TextTagClass self => Attr self Bool Source
Whether this tag affects the font variant.
Default value: False
textTagWeight :: TextTagClass self => Attr self Int Source
Font weight as an integer, see predefined values in Weight
; for
example, WeightBold
.
Allowed values: >= 0
Default value: 400
textTagWeightSet :: TextTagClass self => Attr self Bool Source
Whether this tag affects the font weight.
Default value: False
textTagStretch :: TextTagClass self => Attr self Stretch Source
Font stretch as a Stretch
, e.g. StretchCondensed
.
Default value: StretchNormal
textTagStretchSet :: TextTagClass self => Attr self Bool Source
Whether this tag affects the font stretch.
textTagSize :: TextTagClass self => Attr self Int Source
Font size in Pango units.
Allowed values: >= 0
Default value: 0
textTagSizeSet :: TextTagClass self => Attr self Bool Source
Whether this tag affects the font size.
Default value: False
textTagScale :: TextTagClass self => Attr self Double Source
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 Bool Source
Whether this tag scales the font size by a factor.
Default value: False
textTagSizePoints :: TextTagClass self => Attr self Double Source
Font size in points.
Allowed values: >= 0
Default value: 0
textTagJustification :: TextTagClass self => Attr self Justification Source
Left, right, or center justification.
Default value: JustifyLeft
textTagJustificationSet :: TextTagClass self => Attr self Bool Source
Whether this tag affects paragraph justification.
Default value: False
textTagLanguage :: (TextTagClass self, GlibString string) => Attr self string Source
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 Bool Source
Whether this tag affects the language the text is rendered as.
Default value: False
textTagLeftMargin :: TextTagClass self => Attr self Int Source
Width of the left margin in pixels.
Allowed values: >= 0
Default value: 0
textTagLeftMarginSet :: TextTagClass self => Attr self Bool Source
Whether this tag affects the left margin.
Default value: False
textTagRightMargin :: TextTagClass self => Attr self Int Source
Width of the right margin in pixels.
Allowed values: >= 0
Default value: 0
textTagRightMarginSet :: TextTagClass self => Attr self Bool Source
Whether this tag affects the right margin.
Default value: False
textTagIndent :: TextTagClass self => Attr self Int Source
Amount to indent the paragraph, in pixels.
Default value: 0
textTagIndentSet :: TextTagClass self => Attr self Bool Source
Whether this tag affects indentation.
Default value: False
textTagRise :: TextTagClass self => Attr self Int Source
Offset of text above the baseline (below the baseline if rise is negative) in pixels.
Default value: 0
textTagRiseSet :: TextTagClass self => Attr self Bool Source
Whether this tag affects the rise.
textTagPixelsAboveLines :: TextTagClass self => Attr self Int Source
Pixels of blank space above paragraphs.
Allowed values: >= 0
Default value: 0
textTagPixelsAboveLinesSet :: TextTagClass self => Attr self Bool Source
Whether this tag affects the number of pixels above lines.
Default value: False
textTagPixelsBelowLines :: TextTagClass self => Attr self Int Source
Pixels of blank space below paragraphs.
Allowed values: >= 0
Default value: 0
textTagPixelsBelowLinesSet :: TextTagClass self => Attr self Bool Source
Whether this tag affects the number of pixels below lines.
Default value: False
textTagPixelsInsideWrap :: TextTagClass self => Attr self Int Source
Pixels of blank space between wrapped lines in a paragraph.
Allowed values: >= 0
Default value: 0
textTagPixelsInsideWrapSet :: TextTagClass self => Attr self Bool Source
Whether this tag affects the number of pixels between wrapped lines.
Default value: False
textTagStrikethrough :: TextTagClass self => Attr self Bool Source
Whether to strike through the text.
Default value: False
textTagStrikethroughSet :: TextTagClass self => Attr self Bool Source
Whether this tag affects strikethrough.
Default value: False
textTagUnderline :: TextTagClass self => Attr self Underline Source
Style of underline for this text.
Default value: UnderlineNone
textTagUnderlineSet :: TextTagClass self => Attr self Bool Source
Whether this tag affects underlining.
Default value: False
textTagWrapMode :: TextTagClass self => Attr self WrapMode Source
Whether to wrap lines never, at word boundaries, or at character boundaries.
Default value: WrapNone
textTagWrapModeSet :: TextTagClass self => Attr self Bool Source
Whether this tag affects line wrap mode.
Default value: False
textTagInvisible :: TextTagClass self => Attr self Bool Source
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 Bool Source
Whether this tag affects text visibility.
Default value: False
textTagParagraphBackground :: (TextTagClass self, GlibString string) => WriteAttr self string Source
The paragraph background color as a string.
Default value: ""
textTagParagraphBackgroundSet :: TextTagClass self => Attr self Bool Source
Whether this tag affects the paragraph background color.
Default value: False
textTagParagraphBackgroundGdk :: TextTagClass self => Attr self Color Source
The paragraph background color as a as a (possibly unallocated) Color
.
textTagPriority :: TextTagClass self => Attr self Int Source
'priority' property. See textTagGetPriority
and textTagSetPriority
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.