GtkTextTag

GtkTextTag

Properties

gboolean accumulative-margin Read / Write
char * background Write
gboolean background-full-height Read / Write
gboolean background-full-height-set Read / Write
GdkColor * background-gdk Read / Write
gboolean background-set Read / Write
GdkPixmap * background-stipple Read / Write
gboolean background-stipple-set Read / Write
GtkTextDirection direction Read / Write
gboolean editable Read / Write
gboolean editable-set Read / Write
char * family Read / Write
gboolean family-set Read / Write
char * font Read / Write
PangoFontDescription * font-desc Read / Write
char * foreground Write
GdkColor * foreground-gdk Read / Write
gboolean foreground-set Read / Write
GdkPixmap * foreground-stipple Read / Write
gboolean foreground-stipple-set Read / Write
int indent Read / Write
gboolean indent-set Read / Write
gboolean invisible Read / Write
gboolean invisible-set Read / Write
GtkJustification 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
char * name Read / Write / Construct Only
char * paragraph-background Write
GdkColor * paragraph-background-gdk 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
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
gboolean underline-set Read / Write
PangoVariant variant Read / Write
gboolean variant-set Read / Write
int weight Read / Write
gboolean weight-set Read / Write
GtkWrapMode wrap-mode Read / Write
gboolean wrap-mode-set Read / Write

Signals

gboolean event Run Last

Types and Values

Object Hierarchy

    GObject
    ╰── GtkTextTag

Includes

#include <gtk/gtk.h>

Description

Functions

gtk_text_tag_new ()

GtkTextTag *
gtk_text_tag_new (const gchar *name);

Creates a GtkTextTag. Configure the tag using object arguments, i.e. using g_object_set().

Parameters

name

tag name, or NULL.

[allow-none]

Returns

a new GtkTextTag


gtk_text_tag_get_priority ()

gint
gtk_text_tag_get_priority (GtkTextTag *tag);

Get the tag priority.

Parameters

tag

a GtkTextTag

 

Returns

The tag's priority.


gtk_text_tag_set_priority ()

void
gtk_text_tag_set_priority (GtkTextTag *tag,
                           gint priority);

Sets the priority of a GtkTextTag. Valid priorities are start at 0 and go to one less than gtk_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 gtk_text_buffer_create_tag(), which adds the tag to the buffer's table automatically.

Parameters

tag

a GtkTextTag

 

priority

the new priority

 

gtk_text_tag_event ()

gboolean
gtk_text_tag_event (GtkTextTag *tag,
                    GObject *event_object,
                    GdkEvent *event,
                    const GtkTextIter *iter);

Emits the "event" signal on the GtkTextTag.

Parameters

tag

a GtkTextTag

 

event_object

object that received the event, such as a widget

 

event

the event

 

iter

location where the event was received

 

Returns

result of signal emission (whether the event was handled)


gtk_text_attributes_new ()

GtkTextAttributes *
gtk_text_attributes_new (void);

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

Returns

a new GtkTextAttributes


gtk_text_attributes_copy ()

GtkTextAttributes *
gtk_text_attributes_copy (GtkTextAttributes *src);

Copies src and returns a new GtkTextAttributes.

Parameters

src

a GtkTextAttributes to be copied

 

Returns

a copy of src


gtk_text_attributes_copy_values ()

void
gtk_text_attributes_copy_values (GtkTextAttributes *src,
                                 GtkTextAttributes *dest);

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

Parameters

src

a GtkTextAttributes

 

dest

another GtkTextAttributes

 

gtk_text_attributes_unref ()

void
gtk_text_attributes_unref (GtkTextAttributes *values);

Decrements the reference count on values , freeing the structure if the reference count reaches 0.

Parameters

values

a GtkTextAttributes

 

gtk_text_attributes_ref ()

GtkTextAttributes *
gtk_text_attributes_ref (GtkTextAttributes *values);

Increments the reference count on values .

Parameters

values

a GtkTextAttributes

 

Returns

the GtkTextAttributes that were passed in

Types and Values

struct GtkTextTag

struct GtkTextTag;

enum GtkWrapMode

Members

GTK_WRAP_NONE

   

GTK_WRAP_CHAR

   

GTK_WRAP_WORD

   

GTK_WRAP_WORD_CHAR

   

struct GtkTextAttributes

struct GtkTextAttributes {
  GtkTextAppearance appearance;

  GtkJustification justification;
  GtkTextDirection direction;

  /* Individual chunks of this can be set/unset as a group */
  PangoFontDescription *font;

  gdouble font_scale;

  gint left_margin;

  gint indent;

  gint right_margin;

  gint pixels_above_lines;

  gint pixels_below_lines;

  gint pixels_inside_wrap;

  PangoTabArray *tabs;

  GtkWrapMode wrap_mode;        /* How to handle wrap-around for this tag.
                                 * Must be GTK_WRAPMODE_CHAR,
                                 * GTK_WRAPMODE_NONE, GTK_WRAPMODE_WORD
                                 */

  PangoLanguage *language;

  /* hide the text  */
  guint invisible : 1;

  /* Background is fit to full line height rather than
   * baseline +/- ascent/descent (font height)
   */
  guint bg_full_height : 1;

  /* can edit this text */
  guint editable : 1;

  /* colors are allocated etc. */
  guint realized : 1;
};

struct GtkTextAppearance

struct GtkTextAppearance {
  GdkColor bg_color;
  GdkColor fg_color;
  GdkBitmap *bg_stipple;
  GdkBitmap *fg_stipple;

  /* 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 GtkTextAppearance is part of a
   * GtkTextAttributes.
   */
  guint inside_selection : 1;
  guint is_text : 1;
};

Property Details

The “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: GtkTextTag

Flags: Read / Write

Default value: FALSE

Since: 2.12


The “background” property

  “background”               char *

Background color as a string.

Owner: GtkTextTag

Flags: Write

Default value: NULL


The “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: GtkTextTag

Flags: Read / Write

Default value: FALSE


The “background-full-height-set” property

  “background-full-height-set” gboolean

Whether this tag affects background height.

Owner: GtkTextTag

Flags: Read / Write

Default value: FALSE


The “background-gdk” property

  “background-gdk”           GdkColor *

Background color as a (possibly unallocated) GdkColor.

Owner: GtkTextTag

Flags: Read / Write


The “background-set” property

  “background-set”           gboolean

Whether this tag affects the background color.

Owner: GtkTextTag

Flags: Read / Write

Default value: FALSE


The “background-stipple” property

  “background-stipple”       GdkPixmap *

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

Owner: GtkTextTag

Flags: Read / Write


The “background-stipple-set” property

  “background-stipple-set”   gboolean

Whether this tag affects the background stipple.

Owner: GtkTextTag

Flags: Read / Write

Default value: FALSE


The “direction” property

  “direction”                GtkTextDirection

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

Owner: GtkTextTag

Flags: Read / Write

Default value: GTK_TEXT_DIR_NONE


The “editable” property

  “editable”                 gboolean

Whether the text can be modified by the user.

Owner: GtkTextTag

Flags: Read / Write

Default value: TRUE


The “editable-set” property

  “editable-set”             gboolean

Whether this tag affects text editability.

Owner: GtkTextTag

Flags: Read / Write

Default value: FALSE


The “family” property

  “family”                   char *

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

Owner: GtkTextTag

Flags: Read / Write

Default value: NULL


The “family-set” property

  “family-set”               gboolean

Whether this tag affects the font family.

Owner: GtkTextTag

Flags: Read / Write

Default value: FALSE


The “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: GtkTextTag

Flags: Read / Write

Default value: NULL


The “font-desc” property

  “font-desc”                PangoFontDescription *

Font description as a PangoFontDescription struct.

Owner: GtkTextTag

Flags: Read / Write


The “foreground” property

  “foreground”               char *

Foreground color as a string.

Owner: GtkTextTag

Flags: Write

Default value: NULL


The “foreground-gdk” property

  “foreground-gdk”           GdkColor *

Foreground color as a (possibly unallocated) GdkColor.

Owner: GtkTextTag

Flags: Read / Write


The “foreground-set” property

  “foreground-set”           gboolean

Whether this tag affects the foreground color.

Owner: GtkTextTag

Flags: Read / Write

Default value: FALSE


The “foreground-stipple” property

  “foreground-stipple”       GdkPixmap *

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

Owner: GtkTextTag

Flags: Read / Write


The “foreground-stipple-set” property

  “foreground-stipple-set”   gboolean

Whether this tag affects the foreground stipple.

Owner: GtkTextTag

Flags: Read / Write

Default value: FALSE


The “indent” property

  “indent”                   int

Amount to indent the paragraph, in pixels.

Owner: GtkTextTag

Flags: Read / Write

Default value: 0


The “indent-set” property

  “indent-set”               gboolean

Whether this tag affects indentation.

Owner: GtkTextTag

Flags: Read / Write

Default value: FALSE


The “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: GtkTextTag

Flags: Read / Write

Default value: FALSE

Since: 2.8


The “invisible-set” property

  “invisible-set”            gboolean

Whether this tag affects text visibility.

Owner: GtkTextTag

Flags: Read / Write

Default value: FALSE


The “justification” property

  “justification”            GtkJustification

Left, right, or center justification.

Owner: GtkTextTag

Flags: Read / Write

Default value: GTK_JUSTIFY_LEFT


The “justification-set” property

  “justification-set”        gboolean

Whether this tag affects paragraph justification.

Owner: GtkTextTag

Flags: Read / Write

Default value: FALSE


The “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 gtk_get_default_language().

Owner: GtkTextTag

Flags: Read / Write

Default value: NULL


The “language-set” property

  “language-set”             gboolean

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

Owner: GtkTextTag

Flags: Read / Write

Default value: FALSE


The “left-margin” property

  “left-margin”              int

Width of the left margin in pixels.

Owner: GtkTextTag

Flags: Read / Write

Allowed values: >= 0

Default value: 0


The “left-margin-set” property

  “left-margin-set”          gboolean

Whether this tag affects the left margin.

Owner: GtkTextTag

Flags: Read / Write

Default value: FALSE


The “name” property

  “name”                     char *

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

Owner: GtkTextTag

Flags: Read / Write / Construct Only

Default value: NULL


The “paragraph-background” property

  “paragraph-background”     char *

The paragraph background color as a string.

Owner: GtkTextTag

Flags: Write

Default value: NULL

Since: 2.8


The “paragraph-background-gdk” property

  “paragraph-background-gdk” GdkColor *

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

Owner: GtkTextTag

Flags: Read / Write

Since: 2.8


The “paragraph-background-set” property

  “paragraph-background-set” gboolean

Whether this tag affects the paragraph background color.

Owner: GtkTextTag

Flags: Read / Write

Default value: FALSE


The “pixels-above-lines” property

  “pixels-above-lines”       int

Pixels of blank space above paragraphs.

Owner: GtkTextTag

Flags: Read / Write

Allowed values: >= 0

Default value: 0


The “pixels-above-lines-set” property

  “pixels-above-lines-set”   gboolean

Whether this tag affects the number of pixels above lines.

Owner: GtkTextTag

Flags: Read / Write

Default value: FALSE


The “pixels-below-lines” property

  “pixels-below-lines”       int

Pixels of blank space below paragraphs.

Owner: GtkTextTag

Flags: Read / Write

Allowed values: >= 0

Default value: 0


The “pixels-below-lines-set” property

  “pixels-below-lines-set”   gboolean

Whether this tag affects the number of pixels above lines.

Owner: GtkTextTag

Flags: Read / Write

Default value: FALSE


The “pixels-inside-wrap” property

  “pixels-inside-wrap”       int

Pixels of blank space between wrapped lines in a paragraph.

Owner: GtkTextTag

Flags: Read / Write

Allowed values: >= 0

Default value: 0


The “pixels-inside-wrap-set” property

  “pixels-inside-wrap-set”   gboolean

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

Owner: GtkTextTag

Flags: Read / Write

Default value: FALSE


The “right-margin” property

  “right-margin”             int

Width of the right margin in pixels.

Owner: GtkTextTag

Flags: Read / Write

Allowed values: >= 0

Default value: 0


The “right-margin-set” property

  “right-margin-set”         gboolean

Whether this tag affects the right margin.

Owner: GtkTextTag

Flags: Read / Write

Default value: FALSE


The “rise” property

  “rise”                     int

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

Owner: GtkTextTag

Flags: Read / Write

Default value: 0


The “rise-set” property

  “rise-set”                 gboolean

Whether this tag affects the rise.

Owner: GtkTextTag

Flags: Read / Write

Default value: FALSE


The “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: GtkTextTag

Flags: Read / Write

Allowed values: >= 0

Default value: 1


The “scale-set” property

  “scale-set”                gboolean

Whether this tag scales the font size by a factor.

Owner: GtkTextTag

Flags: Read / Write

Default value: FALSE


The “size” property

  “size”                     int

Font size in Pango units.

Owner: GtkTextTag

Flags: Read / Write

Allowed values: >= 0

Default value: 0


The “size-points” property

  “size-points”              double

Font size in points.

Owner: GtkTextTag

Flags: Read / Write

Allowed values: >= 0

Default value: 0


The “size-set” property

  “size-set”                 gboolean

Whether this tag affects the font size.

Owner: GtkTextTag

Flags: Read / Write

Default value: FALSE


The “stretch” property

  “stretch”                  PangoStretch

Font stretch as a PangoStretch, e.g. PANGO_STRETCH_CONDENSED.

Owner: GtkTextTag

Flags: Read / Write

Default value: PANGO_STRETCH_NORMAL


The “stretch-set” property

  “stretch-set”              gboolean

Whether this tag affects the font stretch.

Owner: GtkTextTag

Flags: Read / Write

Default value: FALSE


The “strikethrough” property

  “strikethrough”            gboolean

Whether to strike through the text.

Owner: GtkTextTag

Flags: Read / Write

Default value: FALSE


The “strikethrough-set” property

  “strikethrough-set”        gboolean

Whether this tag affects strikethrough.

Owner: GtkTextTag

Flags: Read / Write

Default value: FALSE


The “style” property

  “style”                    PangoStyle

Font style as a PangoStyle, e.g. PANGO_STYLE_ITALIC.

Owner: GtkTextTag

Flags: Read / Write

Default value: PANGO_STYLE_NORMAL


The “style-set” property

  “style-set”                gboolean

Whether this tag affects the font style.

Owner: GtkTextTag

Flags: Read / Write

Default value: FALSE


The “tabs” property

  “tabs”                     PangoTabArray *

Custom tabs for this text.

Owner: GtkTextTag

Flags: Read / Write


The “tabs-set” property

  “tabs-set”                 gboolean

Whether this tag affects tabs.

Owner: GtkTextTag

Flags: Read / Write

Default value: FALSE


The “underline” property

  “underline”                PangoUnderline

Style of underline for this text.

Owner: GtkTextTag

Flags: Read / Write

Default value: PANGO_UNDERLINE_NONE


The “underline-set” property

  “underline-set”            gboolean

Whether this tag affects underlining.

Owner: GtkTextTag

Flags: Read / Write

Default value: FALSE


The “variant” property

  “variant”                  PangoVariant

Font variant as a PangoVariant, e.g. PANGO_VARIANT_SMALL_CAPS.

Owner: GtkTextTag

Flags: Read / Write

Default value: PANGO_VARIANT_NORMAL


The “variant-set” property

  “variant-set”              gboolean

Whether this tag affects the font variant.

Owner: GtkTextTag

Flags: Read / Write

Default value: FALSE


The “weight” property

  “weight”                   int

Font weight as an integer, see predefined values in PangoWeight; for example, PANGO_WEIGHT_BOLD.

Owner: GtkTextTag

Flags: Read / Write

Allowed values: >= 0

Default value: 400


The “weight-set” property

  “weight-set”               gboolean

Whether this tag affects the font weight.

Owner: GtkTextTag

Flags: Read / Write

Default value: FALSE


The “wrap-mode” property

  “wrap-mode”                GtkWrapMode

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

Owner: GtkTextTag

Flags: Read / Write

Default value: GTK_WRAP_NONE


The “wrap-mode-set” property

  “wrap-mode-set”            gboolean

Whether this tag affects line wrap mode.

Owner: GtkTextTag

Flags: Read / Write

Default value: FALSE

Signal Details

The “event” signal

gboolean
user_function (GtkTextTag  *tag,
               GObject     *object,
               GdkEvent    *event,
               GtkTextIter *iter,
               gpointer     user_data)

The ::event signal is emitted when an event occurs on a region of the buffer marked with this tag.

Parameters

tag

the GtkTextTag on which the signal is emitted

 

object

the object the event was fired from (typically a GtkTextView)

 

event

the event which triggered the signal

 

iter

a GtkTextIter pointing at the location the event occured

 

user_data

user data set when the signal handler was connected.

 

Returns

TRUE to stop other handlers from being invoked for the event. FALSE to propagate the event further.

Flags: Run Last