GtkTextTagTable
GtkTextTagTable — Коллекция тегов, которые могут использоваться вместе
Функции
| void | (*GtkTextTagTableForeach) () |
| GtkTextTagTable * | gtk_text_tag_table_new () |
| gboolean | gtk_text_tag_table_add () |
| void | gtk_text_tag_table_remove () |
| GtkTextTag * | gtk_text_tag_table_lookup () |
| void | gtk_text_tag_table_foreach () |
| int | gtk_text_tag_table_get_size () |
Сигналы
| void | tag-added | Выполняется последним |
| void | tag-changed | Выполняется последним |
| void | tag-removed | Выполняется последним |
Типы и значения
Иерархия объектов
GObject
╰── GtkTextTagTable
Реализованные интерфейсы
GtkTextTagTable реализует GtkBuildable.
Файлы включения
#include <gtk/gtk.h>
Описание
Вы можете начать с прочтения обзорных сведений о виджете текста, который дает общую информацию обо всех объектах и типах данных, связанных с виджетом текста, и о том, как они взаимодействуют.
GtkTextTagTable как GtkBuildable
Реализация GtkTextTagTable интерфейса GtkBuildable поддерживает добавление тегов, указав «tag» в качестве атрибута «type» элемента <child>.
Пример фрагмента определения пользовательского интерфейса, определяющего теги:
<object class="GtkTextTagTable"> <child type="tag"> <object class="GtkTextTag"/> </child> </object>
Функции
GtkTextTagTableForeach ()
void (*GtkTextTagTableForeach) (GtkTextTag *tag,gpointer data);
Функция, используемая с gtk_text_tag_table_foreach(), для перебора каждого GtkTextTag внутри GtkTextTagTable.
Параметры
tag | тег GtkTextTag | |
data | данные, переданные в | [closure] |
gtk_text_tag_table_new ()
GtkTextTagTable *
gtk_text_tag_table_new (void); Создает новую GtkTextTagTable. Таблица по умолчанию не содержит тегов.
Возвращает
новую GtkTextTagTable
gtk_text_tag_table_add ()
gboolean gtk_text_tag_table_add (GtkTextTagTable *table,GtkTextTag *tag);
Добавляет тег в таблицу. Тегу назначается наивысший приоритет в таблице.
tag не должен находиться в таблице тегов уже, и не может иметь то же имя, что и уже добавленный тег.
Параметры
table | таблица GtkTextTagTable | |
tag | тег GtkTextTag |
Возвращает
TRUE при успехе.
gtk_text_tag_table_remove ()
void gtk_text_tag_table_remove (GtkTextTagTable *table,GtkTextTag *tag);
Удаляет тег из таблицы. Если GtkTextBuffer использует table в качестве таблицы тегов, тег удаляется из буфера. Ссылка таблицы на тег удаляется, поэтому тег будет уничтожен, если у вас нет на него ссылки.
Параметры
table | таблица GtkTextTagTable | |
tag | тег GtkTextTag |
gtk_text_tag_table_lookup ()
GtkTextTag * gtk_text_tag_table_lookup (GtkTextTagTable *table,const char *name);
Ищет тег по имени.
Параметры
table | таблица GtkTextTagTable | |
name | имя тега |
Возвращает
Тег или NULL если тега с таким именем нет в таблице.
[nullable][transfer none]
gtk_text_tag_table_foreach ()
void gtk_text_tag_table_foreach (GtkTextTagTable *table,GtkTextTagTableForeach func,gpointer data);
Вызывает func для каждого тега в table , с данными пользователя data . Обратите внимание, что таблица не может быть изменена во время итерации по ней (вы не можете добавлять/удалять теги).
Параметры
table | таблица GtkTextTagTable | |
func | функция для вызова для каждого тега. | [scope call] |
data | данные пользователя |
gtk_text_tag_table_get_size ()
int
gtk_text_tag_table_get_size (GtkTextTagTable *table); Возвращает размер таблицы (количество тегов)
Параметры
table | таблица GtkTextTagTable |
Возвращает
количество тегов в table
Типы и значения
GtkTextTagTable
typedef struct _GtkTextTagTable GtkTextTagTable;
Объект, содержащий все экземпляры GtkTextTag для GtkTextBuffer.
Подробности сигналов
Сигнал “tag-added”
void user_function (GtkTextTagTable *texttagtable, GtkTextTag *tag, gpointer user_data)
Вызывается каждый раз, когда в GtkTextTagTable добавляется новый тег.
Параметры
texttagtable | объект, получивший сигнал. | |
tag | добавленный тег. | |
user_data | данные пользователя, заданные при подключении обработчика сигнала. |
Флаги: Run Last
Сигнал “tag-changed”
void user_function (GtkTextTagTable *texttagtable, GtkTextTag *tag, gboolean size_changed, gpointer user_data)
Вызывается каждый раз, когда тег в GtkTextTagTable изменяется.
Параметры
texttagtable | объект, получивший сигнал. | |
tag | изменённый тег. | |
size_changed | указывает, влияет ли изменение на макет GtkTextView. | |
user_data | данные пользователя, заданные при подключении обработчика сигнала. |
Флаги: Run Last
Сигнал “tag-removed”
void user_function (GtkTextTagTable *texttagtable, GtkTextTag *tag, gpointer user_data)
Вызывается каждый раз, когда тег удаляется из GtkTextTagTable.
Значение tag всё ещё валидно во время вызова сигнала, но больше не ассоциировано с таблицей тегов.
Параметры
texttagtable | объект, получивший сигнал. | |
tag | удаленный тег. | |
user_data | данные пользователя, заданные при подключении обработчика сигнала. |
Флаги: Run Last
© 2005–2020 The GNOME Project
Licensed under the GNU Lesser General Public License version 2.1 or later.
https://developer-old.gnome.org/gtk4/4.0/GtkTextTagTable.html