GtkStringList
GtkStringList — Список строк
Функции
| GtkStringList * | gtk_string_list_new () |
| void | gtk_string_list_append () |
| void | gtk_string_list_take () |
| void | gtk_string_list_remove () |
| void | gtk_string_list_splice () |
| const char * | gtk_string_list_get_string () |
| GtkStringObject * | gtk_string_object_new () |
| const char * | gtk_string_object_get_string () |
Свойства
| char * | строка | Чтение |
Типы и значения
Иерархия объектов
GObject
├── GtkStringList
╰── GtkStringObject
Реализованные интерфейсы
GtkStringList реализует GtkBuildable и GListModel.
Файлы заголовков
#include <gtk/gtk.h>
Описание
GtkStringList — это модель списка, которая оборачивает массив строк.
Объекты в модели имеют свойство "строка".
GtkStringList хорошо подходит для случаев, где вы обычно используете char*[], но вам нужна модель списка.
GtkStringList как GtkBuildable
Реализация GtkStringList интерфейса GtkBuildable поддерживает добавление элементов напрямую с помощью элемента <items> и указания элементов <item> для каждого элемента. Каждый элемент <item> поддерживает стандартные атрибуты перевода “translatable”, “context” и “comments”.
Вот фрагмент определения пользовательского интерфейса, указывающий GtkStringList
Функции
gtk_string_list_new ()
GtkStringList *
gtk_string_list_new (const char * const *strings); Создаёт новый GtkStringList с заданными strings.
Параметры
strings | Строки для добавления в модель. | [array zero-terminated=1][nullable] |
Возвращает
новый GtkStringList
gtk_string_list_append ()
void gtk_string_list_append (GtkStringList *self,const char *string);
Добавляет string в конец self.
Строка string будет скопирована. Обратитесь к gtk_string_list_take() для предотвращения копирования.
Параметры
self | объект GtkStringList | |
string | строка для добавления |
gtk_string_list_take ()
void gtk_string_list_take (GtkStringList *self,char *string);
Добавляет string в конец списка self, взяв на себя ответственность за него.
Этот вариант gtk_string_list_append() удобен для форматирования строк:
<object class="GtkStringList">
<items>
<item translatable="yes">Factory</item>
<item translatable="yes">Home</item>
<item translatable="yes">Subway</item>
</items>
</object>Параметры
self | объект GtkStringList | |
string | строка для добавления. | [transfer full] |
gtk_string_list_remove ()
void gtk_string_list_remove (GtkStringList *self,guint position);
Удаляет строку по позиции position из self. position должна быть меньше текущей длины списка.
Параметры
self | объект GtkStringList | |
position | позиция строки для удаления |
gtk_string_list_splice ()
void gtk_string_list_splice (GtkStringList *self,guint position,guint n_removals,const char * const *additions);
Изменяет self, удаляя n_removals строк и добавляя additions.
Эта функция более эффективна, чем gtk_string_list_append() и gtk_string_list_remove(), так как она генерирует событие “items-changed” только один раз.
Эта функция копирует строки в additions.
Параметры position и n_removals должны быть корректными (то есть position + n_removals должно быть меньше или равно длине списка в момент вызова функции).
Параметры
self | объект GtkStringList | |
position | позиция для внесения изменений | |
n_removals | количество строк для удаления | |
additions | строки для добавления. | [array zero-terminated=1][nullable] |
gtk_string_list_get_string ()
const char * gtk_string_list_get_string (GtkStringList *self,guint position);
Возвращает строку по позиции position в self. Если self не содержит position элементов, возвращается NULL.
Функция возвращает const char *. Чтобы получить объект, содержащий эту строку, используйте g_list_model_get_item().
Параметры
self | объект GtkStringList | |
position | позиция строки |
Возвращает
строку по указанной позиции.
[nullable]
gtk_string_object_new ()
GtkStringObject *
gtk_string_object_new (const char *string); Оборачивает строку в объект для использования с GListModel
Параметры
string | Строка для оборачивания. | [not nullable] |
Возвращает
новый GtkStringObject
gtk_string-object-get-string ()
const char *
gtk_string_object_get_string (GtkStringObject *self); Возвращает строку, содержащуюся в GtkStringObject.
Параметры
self | объект GtkStringObject |
Возвращает
строку self
Типы и Значения
GtkStringList
typedef struct _GtkStringList GtkStringList;
GtkStringObject
typedef struct _GtkStringObject GtkStringObject;
Подробное описание свойств
Свойство “string”
“string” char *
Строка.
Владелец: GtkStringObject
Флаги: Чтение
Значение по умолчанию: NULL
См. также
GListModel
© 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/GtkStringList.html