| Top |
| CtkTextTag * | ctk_text_tag_new () |
| gint | ctk_text_tag_get_priority () |
| void | ctk_text_tag_set_priority () |
| gboolean | ctk_text_tag_event () |
| void | ctk_text_tag_changed () |
| CtkTextAttributes * | ctk_text_attributes_new () |
| CtkTextAttributes * | ctk_text_attributes_copy () |
| void | ctk_text_attributes_copy_values () |
| void | ctk_text_attributes_unref () |
| CtkTextAttributes * | ctk_text_attributes_ref () |
| gboolean | accumulative-margin | Read / Write |
| char * | background | Write |
| CdkColor * | background-cdk | Read / Write |
| gboolean | background-full-height | Read / Write |
| gboolean | background-full-height-set | Read / Write |
| CdkRGBA * | background-rgba | Read / Write |
| gboolean | background-set | Read / Write |
| CtkTextDirection | direction | Read / Write |
| gboolean | editable | Read / Write |
| gboolean | editable-set | Read / Write |
| gboolean | fallback | Read / Write |
| gboolean | fallback-set | Read / Write |
| char * | family | Read / Write |
| gboolean | family-set | Read / Write |
| char * | font | Read / Write |
| PangoFontDescription * | font-desc | Read / Write |
| char * | font-features | Read / Write |
| gboolean | font-features-set | Read / Write |
| char * | foreground | Write |
| CdkColor * | foreground-cdk | Read / Write |
| CdkRGBA * | foreground-rgba | Read / Write |
| gboolean | foreground-set | Read / Write |
| int | indent | Read / Write |
| gboolean | indent-set | Read / Write |
| gboolean | invisible | Read / Write |
| gboolean | invisible-set | Read / Write |
| CtkJustification | justification | Read / Write |
| gboolean | justification-set | Read / Write |
| char * | language | Read / Write |
| gboolean | language-set | Read / Write |
| int | left-margin | Read / Write |
| gboolean | left-margin-set | Read / Write |
| int | letter-spacing | Read / Write |
| gboolean | letter-spacing-set | Read / Write |
| char * | name | Read / Write / Construct Only |
| char * | paragraph-background | Write |
| CdkColor * | paragraph-background-cdk | Read / Write |
| CdkRGBA * | paragraph-background-rgba | Read / Write |
| gboolean | paragraph-background-set | Read / Write |
| int | pixels-above-lines | Read / Write |
| gboolean | pixels-above-lines-set | Read / Write |
| int | pixels-below-lines | Read / Write |
| gboolean | pixels-below-lines-set | Read / Write |
| int | pixels-inside-wrap | Read / Write |
| gboolean | pixels-inside-wrap-set | Read / Write |
| int | right-margin | Read / Write |
| gboolean | right-margin-set | Read / Write |
| int | rise | Read / Write |
| gboolean | rise-set | Read / Write |
| double | scale | Read / Write |
| gboolean | scale-set | Read / Write |
| int | size | Read / Write |
| double | size-points | Read / Write |
| gboolean | size-set | Read / Write |
| PangoStretch | stretch | Read / Write |
| gboolean | stretch-set | Read / Write |
| gboolean | strikethrough | Read / Write |
| CdkRGBA * | strikethrough-rgba | Read / Write |
| gboolean | strikethrough-rgba-set | Read / Write |
| gboolean | strikethrough-set | Read / Write |
| PangoStyle | style | Read / Write |
| gboolean | style-set | Read / Write |
| PangoTabArray * | tabs | Read / Write |
| gboolean | tabs-set | Read / Write |
| PangoUnderline | underline | Read / Write |
| CdkRGBA * | underline-rgba | Read / Write |
| gboolean | underline-rgba-set | Read / Write |
| gboolean | underline-set | Read / Write |
| PangoVariant | variant | Read / Write |
| gboolean | variant-set | Read / Write |
| int | weight | Read / Write |
| gboolean | weight-set | Read / Write |
| CtkWrapMode | wrap-mode | Read / Write |
| gboolean | wrap-mode-set | Read / Write |
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 CtkTextTagTable for a given CtkTextBuffer before using them with that buffer.
ctk_text_buffer_create_tag() is the best way to create tags. See “ctk3-demo” for numerous examples.
For each property of CtkTextTag, there is a “set” property, e.g. “font-set” corresponds to “font”. These “set” properties reflect whether a property has been set or not. They are maintained by CTK+ and you should not set them independently.
CtkTextTag *
ctk_text_tag_new (const gchar *name);
Creates a CtkTextTag. Configure the tag using object arguments,
i.e. using g_object_set().
gint
ctk_text_tag_get_priority (CtkTextTag *tag);
Get the tag priority.
void ctk_text_tag_set_priority (CtkTextTag *tag,gint priority);
Sets the priority of a CtkTextTag. Valid priorities
start at 0 and go to one less than ctk_text_tag_table_get_size().
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
ctk_text_buffer_create_tag(), which adds the tag to the buffer’s table
automatically.
gboolean ctk_text_tag_event (CtkTextTag *tag,GObject *event_object,CdkEvent *event,const CtkTextIter *iter);
Emits the “event” signal on the CtkTextTag.
void ctk_text_tag_changed (CtkTextTag *tag,gboolean size_changed);
Emits the “tag-changed” signal on the CtkTextTagTable where the tag is included.
The signal is already emitted when setting a CtkTextTag property. This function is useful for a CtkTextTag subclass.
Since: 3.20
CtkTextAttributes *
ctk_text_attributes_new (void);
Creates a CtkTextAttributes, which describes a set of properties on some text.
CtkTextAttributes *
ctk_text_attributes_copy (CtkTextAttributes *src);
Copies src
and returns a new CtkTextAttributes.
void ctk_text_attributes_copy_values (CtkTextAttributes *src,CtkTextAttributes *dest);
Copies the values from src
to dest
so that dest
has
the same values as src
. Frees existing values in dest
.
void
ctk_text_attributes_unref (CtkTextAttributes *values);
Decrements the reference count on values
, freeing the structure
if the reference count reaches 0.
CtkTextAttributes *
ctk_text_attributes_ref (CtkTextAttributes *values);
Increments the reference count on values
.
struct CtkTextAttributes {
CtkTextAppearance appearance;
CtkJustification justification;
CtkTextDirection direction;
PangoFontDescription *font;
gdouble font_scale;
gint left_margin;
gint right_margin;
gint indent;
gint pixels_above_lines;
gint pixels_below_lines;
gint pixels_inside_wrap;
PangoTabArray *tabs;
CtkWrapMode wrap_mode;
PangoLanguage *language;
guint invisible : 1;
guint bg_full_height : 1;
guint editable : 1;
guint no_fallback: 1;
gint letter_spacing;
#ifdef __GI_SCANNER__
/* The scanner should only see the transparent union, so that its
* content does not vary across architectures.
*/
union {
gchar *font_features;
};
Using CtkTextAttributes directly should rarely be necessary.
It’s primarily useful with ctk_text_iter_get_attributes().
As with most CTK+ structs, the fields in this struct should only
be read, never modified directly.
CtkTextAppearance |
CtkTextAppearance for text. |
|
CtkJustification |
CtkJustification for text. |
|
CtkTextDirection |
CtkTextDirection for text. |
|
PangoFontDescription for text. |
||
Font scale factor. |
||
Width of the left margin in pixels. |
||
Width of the right margin in pixels. |
||
Amount to indent the paragraph, in pixels. |
||
Pixels of blank space above paragraphs. |
||
Pixels of blank space below paragraphs. |
||
Pixels of blank space between wrapped lines in a paragraph. |
||
Custom PangoTabArray for this text. |
||
CtkWrapMode |
CtkWrapMode for text. |
|
PangoLanguage for text. |
||
Hide the text. |
||
Background is fit to full line height rather than baseline +/- ascent/descent (font height). |
||
Can edit this text. |
||
Whether to disable font fallback. |
||
Extra space to insert between graphemes, in Pango units |
||
OpenType font features, as a string. |
struct CtkTextAppearance {
CdkColor bg_color; /* pixel is taken for underline color */
CdkColor fg_color; /* pixel is taken for strikethrough color */
/* super/subscript rise, can be negative */
gint rise;
guint underline : 4; /* PangoUnderline */
guint strikethrough : 1;
/* Whether to use background-related values; this is irrelevant for
* the values struct when in a tag, but is used for the composite
* values struct; it's true if any of the tags being composited
* had background stuff set.
*/
guint draw_bg : 1;
/* These are only used when we are actually laying out and rendering
* a paragraph; not when a CtkTextAppearance is part of a
* CtkTextAttributes.
*/
guint inside_selection : 1;
guint is_text : 1;
/* For the sad story of this bit of code, see
* https://bugzilla.gnome.org/show_bug.cgi?id=711158
*/
#ifdef __GI_SCANNER__
/* The scanner should only see the transparent union, so that its
* content does not vary across architectures.
*/
union {
CdkRGBA *rgba[2];
};
CdkColor |
Background CdkColor. |
|
CdkColor |
Foreground CdkColor. |
|
Super/subscript rise, can be negative. |
||
PangoUnderline |
||
Strikethrough style |
||
Whether to use background-related values; this is irrelevant for the values struct when in a tag, but is used for the composite values struct; it’s true if any of the tags being composited had background stuff set. |
||
This are only used when we are actually laying out and rendering a paragraph; not when a CtkTextAppearance is part of a CtkTextAttributes. |
||
This are only used when we are actually laying out and rendering a paragraph; not when a CtkTextAppearance is part of a CtkTextAttributes. |
||
CdkRGBA * |
“accumulative-margin” property “accumulative-margin” gboolean
Whether the margins accumulate or override each other.
When set to TRUE the margins of this tag are added to the margins
of any other non-accumulative margins present. When set to FALSE
the margins override one another (the default).
Owner: CtkTextTag
Flags: Read / Write
Default value: FALSE
Since: 2.12
“background” property “background” char *
Background color as a string.
Owner: CtkTextTag
Flags: Write
Default value: NULL
“background-cdk” property“background-cdk” CdkColor *
Background color as a CdkColor.
CtkTextTag:background-cdk has been deprecated since version 3.4 and should not be used in newly-written code.
Use “background-rgba” instead.
Owner: CtkTextTag
Flags: Read / Write
“background-full-height” property “background-full-height” gboolean
Whether the background color fills the entire line height or only the height of the tagged characters.
Owner: CtkTextTag
Flags: Read / Write
Default value: FALSE
“background-full-height-set” property “background-full-height-set” gboolean
Whether this tag affects background height.
Owner: CtkTextTag
Flags: Read / Write
Default value: FALSE
“background-rgba” property“background-rgba” CdkRGBA *
Background color as a CdkRGBA.
Owner: CtkTextTag
Flags: Read / Write
Since: 3.2
“background-set” property “background-set” gboolean
Whether this tag affects the background color.
Owner: CtkTextTag
Flags: Read / Write
Default value: FALSE
“direction” property“direction” CtkTextDirection
Text direction, e.g. right-to-left or left-to-right.
Owner: CtkTextTag
Flags: Read / Write
Default value: CTK_TEXT_DIR_NONE
“editable” property “editable” gboolean
Whether the text can be modified by the user.
Owner: CtkTextTag
Flags: Read / Write
Default value: TRUE
“editable-set” property “editable-set” gboolean
Whether this tag affects text editability.
Owner: CtkTextTag
Flags: Read / Write
Default value: FALSE
“fallback” property “fallback” gboolean
Whether font fallback is enabled.
When set to TRUE, other fonts will be substituted
where the current font is missing glyphs.
Owner: CtkTextTag
Flags: Read / Write
Default value: TRUE
Since: 3.16
“fallback-set” property “fallback-set” gboolean
Whether this tag affects font fallback.
Owner: CtkTextTag
Flags: Read / Write
Default value: FALSE
“family” property “family” char *
Name of the font family, e.g. Sans, Helvetica, Times, Monospace.
Owner: CtkTextTag
Flags: Read / Write
Default value: NULL
“family-set” property “family-set” gboolean
Whether this tag affects the font family.
Owner: CtkTextTag
Flags: Read / Write
Default value: FALSE
“font” property “font” char *
Font description as string, e.g. \"Sans Italic 12\".
Note that the initial value of this property depends on the internals of PangoFontDescription.
Owner: CtkTextTag
Flags: Read / Write
Default value: NULL
“font-desc” property “font-desc” PangoFontDescription *
Font description as a PangoFontDescription struct.
Owner: CtkTextTag
Flags: Read / Write
“font-features” property “font-features” char *
OpenType font features, as a string.
Owner: CtkTextTag
Flags: Read / Write
Default value: NULL
Since: 3.18
“font-features-set” property “font-features-set” gboolean
Whether this tag affects font features.
Owner: CtkTextTag
Flags: Read / Write
Default value: FALSE
“foreground” property “foreground” char *
Foreground color as a string.
Owner: CtkTextTag
Flags: Write
Default value: NULL
“foreground-cdk” property“foreground-cdk” CdkColor *
Foreground color as a CdkColor.
CtkTextTag:foreground-cdk has been deprecated since version 3.4 and should not be used in newly-written code.
Use “foreground-rgba” instead.
Owner: CtkTextTag
Flags: Read / Write
“foreground-rgba” property“foreground-rgba” CdkRGBA *
Foreground color as a CdkRGBA.
Owner: CtkTextTag
Flags: Read / Write
Since: 3.2
“foreground-set” property “foreground-set” gboolean
Whether this tag affects the foreground color.
Owner: CtkTextTag
Flags: Read / Write
Default value: FALSE
“indent” property “indent” int
Amount to indent the paragraph, in pixels.
Owner: CtkTextTag
Flags: Read / Write
Default value: 0
“indent-set” property “indent-set” gboolean
Whether this tag affects indentation.
Owner: CtkTextTag
Flags: Read / Write
Default value: FALSE
“invisible” property “invisible” gboolean
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.
Owner: CtkTextTag
Flags: Read / Write
Default value: FALSE
Since: 2.8
“invisible-set” property “invisible-set” gboolean
Whether this tag affects text visibility.
Owner: CtkTextTag
Flags: Read / Write
Default value: FALSE
“justification” property“justification” CtkJustification
Left, right, or center justification.
Owner: CtkTextTag
Flags: Read / Write
Default value: CTK_JUSTIFY_LEFT
“justification-set” property “justification-set” gboolean
Whether this tag affects paragraph justification.
Owner: CtkTextTag
Flags: Read / Write
Default value: FALSE
“language” property “language” char *
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.
Note that the initial value of this property depends on the current
locale, see also ctk_get_default_language().
Owner: CtkTextTag
Flags: Read / Write
Default value: NULL
“language-set” property “language-set” gboolean
Whether this tag affects the language the text is rendered as.
Owner: CtkTextTag
Flags: Read / Write
Default value: FALSE
“left-margin” property “left-margin” int
Width of the left margin in pixels.
Owner: CtkTextTag
Flags: Read / Write
Allowed values: >= 0
Default value: 0
“left-margin-set” property “left-margin-set” gboolean
Whether this tag affects the left margin.
Owner: CtkTextTag
Flags: Read / Write
Default value: FALSE
“letter-spacing” property “letter-spacing” int
Extra spacing between graphemes, in Pango units.
Owner: CtkTextTag
Flags: Read / Write
Allowed values: >= 0
Default value: 0
Since: 3.16
“letter-spacing-set” property “letter-spacing-set” gboolean
Whether this tag affects letter spacing.
Owner: CtkTextTag
Flags: Read / Write
Default value: FALSE
“name” property “name” char *
Name used to refer to the text tag. NULL for anonymous tags.
Owner: CtkTextTag
Flags: Read / Write / Construct Only
Default value: NULL
“paragraph-background” property “paragraph-background” char *
The paragraph background color as a string.
Owner: CtkTextTag
Flags: Write
Default value: NULL
Since: 2.8
“paragraph-background-cdk” property“paragraph-background-cdk” CdkColor *
The paragraph background color as a CdkColor.
CtkTextTag:paragraph-background-cdk has been deprecated since version 3.4 and should not be used in newly-written code.
Use “paragraph-background-rgba” instead.
Owner: CtkTextTag
Flags: Read / Write
Since: 2.8
“paragraph-background-rgba” property“paragraph-background-rgba” CdkRGBA *
The paragraph background color as a CdkRGBA.
Owner: CtkTextTag
Flags: Read / Write
Since: 3.2
“paragraph-background-set” property “paragraph-background-set” gboolean
Whether this tag affects the paragraph background color.
Owner: CtkTextTag
Flags: Read / Write
Default value: FALSE
“pixels-above-lines” property “pixels-above-lines” int
Pixels of blank space above paragraphs.
Owner: CtkTextTag
Flags: Read / Write
Allowed values: >= 0
Default value: 0
“pixels-above-lines-set” property “pixels-above-lines-set” gboolean
Whether this tag affects the number of pixels above lines.
Owner: CtkTextTag
Flags: Read / Write
Default value: FALSE
“pixels-below-lines” property “pixels-below-lines” int
Pixels of blank space below paragraphs.
Owner: CtkTextTag
Flags: Read / Write
Allowed values: >= 0
Default value: 0
“pixels-below-lines-set” property “pixels-below-lines-set” gboolean
Whether this tag affects the number of pixels above lines.
Owner: CtkTextTag
Flags: Read / Write
Default value: FALSE
“pixels-inside-wrap” property “pixels-inside-wrap” int
Pixels of blank space between wrapped lines in a paragraph.
Owner: CtkTextTag
Flags: Read / Write
Allowed values: >= 0
Default value: 0
“pixels-inside-wrap-set” property “pixels-inside-wrap-set” gboolean
Whether this tag affects the number of pixels between wrapped lines.
Owner: CtkTextTag
Flags: Read / Write
Default value: FALSE
“right-margin” property “right-margin” int
Width of the right margin in pixels.
Owner: CtkTextTag
Flags: Read / Write
Allowed values: >= 0
Default value: 0
“right-margin-set” property “right-margin-set” gboolean
Whether this tag affects the right margin.
Owner: CtkTextTag
Flags: Read / Write
Default value: FALSE
“rise” property “rise” int
Offset of text above the baseline (below the baseline if rise is negative) in Pango units.
Owner: CtkTextTag
Flags: Read / Write
Default value: 0
“rise-set” property “rise-set” gboolean
Whether this tag affects the rise.
Owner: CtkTextTag
Flags: Read / Write
Default value: FALSE
“scale” property “scale” double
Font size as a scale factor relative to the default font size. This properly adapts to theme changes etc. so is recommended. Pango predefines some scales such as PANGO_SCALE_X_LARGE.
Owner: CtkTextTag
Flags: Read / Write
Allowed values: >= 0
Default value: 1
“scale-set” property “scale-set” gboolean
Whether this tag scales the font size by a factor.
Owner: CtkTextTag
Flags: Read / Write
Default value: FALSE
“size” property “size” int
Font size in Pango units.
Owner: CtkTextTag
Flags: Read / Write
Allowed values: >= 0
Default value: 0
“size-points” property “size-points” double
Font size in points.
Owner: CtkTextTag
Flags: Read / Write
Allowed values: >= 0
Default value: 0
“size-set” property “size-set” gboolean
Whether this tag affects the font size.
Owner: CtkTextTag
Flags: Read / Write
Default value: FALSE
“stretch” property “stretch” PangoStretch
Font stretch as a PangoStretch, e.g. PANGO_STRETCH_CONDENSED.
Owner: CtkTextTag
Flags: Read / Write
Default value: PANGO_STRETCH_NORMAL
“stretch-set” property “stretch-set” gboolean
Whether this tag affects the font stretch.
Owner: CtkTextTag
Flags: Read / Write
Default value: FALSE
“strikethrough” property “strikethrough” gboolean
Whether to strike through the text.
Owner: CtkTextTag
Flags: Read / Write
Default value: FALSE
“strikethrough-rgba” property“strikethrough-rgba” CdkRGBA *
This property modifies the color of strikeouts. If not set, strikeouts will use the forground color.
Owner: CtkTextTag
Flags: Read / Write
Since: 3.16
“strikethrough-rgba-set” property “strikethrough-rgba-set” gboolean
If the “strikethrough-rgba” property has been set.
Owner: CtkTextTag
Flags: Read / Write
Default value: FALSE
Since: 3.16
“strikethrough-set” property “strikethrough-set” gboolean
Whether this tag affects strikethrough.
Owner: CtkTextTag
Flags: Read / Write
Default value: FALSE
“style” property “style” PangoStyle
Font style as a PangoStyle, e.g. PANGO_STYLE_ITALIC.
Owner: CtkTextTag
Flags: Read / Write
Default value: PANGO_STYLE_NORMAL
“style-set” property “style-set” gboolean
Whether this tag affects the font style.
Owner: CtkTextTag
Flags: Read / Write
Default value: FALSE
“tabs” property “tabs” PangoTabArray *
Custom tabs for this text.
Owner: CtkTextTag
Flags: Read / Write
“tabs-set” property “tabs-set” gboolean
Whether this tag affects tabs.
Owner: CtkTextTag
Flags: Read / Write
Default value: FALSE
“underline” property “underline” PangoUnderline
Style of underline for this text.
Owner: CtkTextTag
Flags: Read / Write
Default value: PANGO_UNDERLINE_NONE
“underline-rgba” property“underline-rgba” CdkRGBA *
This property modifies the color of underlines. If not set, underlines will use the forground color.
If “underline” is set to PANGO_UNDERLINE_ERROR, an alternate
color may be applied instead of the foreground. Setting this property
will always override those defaults.
Owner: CtkTextTag
Flags: Read / Write
Since: 3.16
“underline-rgba-set” property “underline-rgba-set” gboolean
If the “underline-rgba” property has been set.
Owner: CtkTextTag
Flags: Read / Write
Default value: FALSE
Since: 3.16
“underline-set” property “underline-set” gboolean
Whether this tag affects underlining.
Owner: CtkTextTag
Flags: Read / Write
Default value: FALSE
“variant” property “variant” PangoVariant
Font variant as a PangoVariant, e.g. PANGO_VARIANT_SMALL_CAPS.
Owner: CtkTextTag
Flags: Read / Write
Default value: PANGO_VARIANT_NORMAL
“variant-set” property “variant-set” gboolean
Whether this tag affects the font variant.
Owner: CtkTextTag
Flags: Read / Write
Default value: FALSE
“weight” property “weight” int
Font weight as an integer, see predefined values in PangoWeight; for example, PANGO_WEIGHT_BOLD.
Owner: CtkTextTag
Flags: Read / Write
Allowed values: >= 0
Default value: 400
“weight-set” property “weight-set” gboolean
Whether this tag affects the font weight.
Owner: CtkTextTag
Flags: Read / Write
Default value: FALSE
“wrap-mode” property“wrap-mode” CtkWrapMode
Whether to wrap lines never, at word boundaries, or at character boundaries.
Owner: CtkTextTag
Flags: Read / Write
Default value: CTK_WRAP_NONE
“event” signalgboolean user_function (CtkTextTag *tag, GObject *object, CdkEvent *event, CtkTextIter *iter, gpointer user_data)
The ::event signal is emitted when an event occurs on a region of the buffer marked with this tag.
tag |
the CtkTextTag on which the signal is emitted |
|
object |
the object the event was fired from (typically a CtkTextView) |
|
event |
the event which triggered the signal |
|
iter |
a CtkTextIter pointing at the location the event occurred |
|
user_data |
user data set when the signal handler was connected. |
TRUE to stop other handlers from being invoked for the
event. FALSE to propagate the event further.
Flags: Run Last