GtkTextTagTable

GtkTextTagTable — Collection of tags that can be used together

Functions

Signals

void tag-added Run Last
void tag-changed Run Last
void tag-removed Run Last

Types and Values

Object Hierarchy

    GObject
    ╰── GtkTextTagTable

Implemented Interfaces

GtkTextTagTable implements GtkBuildable.

Includes

#include <gtk/gtk.h>

Description

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.

GtkTextTagTables as GtkBuildable

The GtkTextTagTable implementation of the GtkBuildable interface supports adding tags by specifying “tag” as the “type” attribute of a <child> element.

An example of a UI definition fragment specifying tags:

1
2
3
4
5
<object class="GtkTextTagTable">
 <child type="tag">
   <object class="GtkTextTag"/>
 </child>
</object>

Functions

GtkTextTagTableForeach ()

void
(*GtkTextTagTableForeach) (GtkTextTag *tag,
                           gpointer data);

Parameters

tag

the GtkTextTag

 

data

data passed to gtk_text_tag_table_foreach().

[closure]

gtk_text_tag_table_new ()

GtkTextTagTable *
gtk_text_tag_table_new (void);

Creates a new GtkTextTagTable. The table contains no tags by default.

Returns

a new GtkTextTagTable


gtk_text_tag_table_add ()

gboolean
gtk_text_tag_table_add (GtkTextTagTable *table,
                        GtkTextTag *tag);

Add a tag to the table. The tag is assigned the highest priority in the table.

tag must not be in a tag table already, and may not have the same name as an already-added tag.

Parameters

table

a GtkTextTagTable

 

tag

a GtkTextTag

 

Returns

TRUE on success.


gtk_text_tag_table_remove ()

void
gtk_text_tag_table_remove (GtkTextTagTable *table,
                           GtkTextTag *tag);

Remove a tag from the table. If a GtkTextBuffer has table as its tag table, the tag is removed from the buffer. The table’s reference to the tag is removed, so the tag will end up destroyed if you don’t have a reference to it.

Parameters

table

a GtkTextTagTable

 

tag

a GtkTextTag

 

gtk_text_tag_table_lookup ()

GtkTextTag *
gtk_text_tag_table_lookup (GtkTextTagTable *table,
                           const gchar *name);

Look up a named tag.

Parameters

table

a GtkTextTagTable

 

name

name of a tag

 

Returns

The tag, or NULL if none by that name is in the table.

[nullable][transfer none]


gtk_text_tag_table_foreach ()

void
gtk_text_tag_table_foreach (GtkTextTagTable *table,
                            GtkTextTagTableForeach func,
                            gpointer data);

Calls func on each tag in table , with user data data . Note that the table may not be modified while iterating over it (you can’t add/remove tags).

Parameters

table

a GtkTextTagTable

 

func

a function to call on each tag.

[scope call]

data

user data

 

gtk_text_tag_table_get_size ()

gint
gtk_text_tag_table_get_size (GtkTextTagTable *table);

Returns the size of the table (number of tags)

Parameters

table

a GtkTextTagTable

 

Returns

number of tags in table

Types and Values

GtkTextTagTable

typedef struct _GtkTextTagTable GtkTextTagTable;

Signal Details

The “tag-added” signal

void
user_function (GtkTextTagTable *texttagtable,
               GtkTextTag      *tag,
               gpointer         user_data)

Parameters

texttagtable

the object which received the signal.

 

tag

the added tag.

 

user_data

user data set when the signal handler was connected.

 

Flags: Run Last


The “tag-changed” signal

void
user_function (GtkTextTagTable *texttagtable,
               GtkTextTag      *tag,
               gboolean         size_changed,
               gpointer         user_data)

Parameters

texttagtable

the object which received the signal.

 

tag

the changed tag.

 

size_changed

whether the change affects the GtkTextView layout.

 

user_data

user data set when the signal handler was connected.

 

Flags: Run Last


The “tag-removed” signal

void
user_function (GtkTextTagTable *texttagtable,
               GtkTextTag      *tag,
               gpointer         user_data)

Parameters

texttagtable

the object which received the signal.

 

tag

the removed tag.

 

user_data

user data set when the signal handler was connected.

 

Flags: Run Last