Spec-Zone.ru › GTK 4.0

GtkDirectoryList

GtkDirectoryList — Список каталогов

Функции

GtkDirectoryList * gtk_directory_list_new ()
const char * gtk_directory_list_get_attributes ()
void gtk_directory_list_set_attributes ()
GFile * gtk_directory_list_get_file ()
void gtk_directory_list_set_file ()
int gtk_directory_list_get_io_priority ()
void gtk_directory_list_set-io-priority ()
gboolean gtk_directory_list_get_monitored ()
void gtk_directory_list_set-monitored ()
gboolean gtk_directory_list_is-loading ()
const GError * gtk_directory_list_get-error ()

Свойства

char * attributes Чтение/Запись
GError * ошибка Чтение
GFile * файл Чтение/Запись
int приоритет ввода-вывода Чтение/Запись
gboolean загрузка Чтение
gboolean отслеживается Чтение/Запись

Типы и значения

GtkDirectoryList

Иерархия объектов

    GObject
    ╰── GtkDirectoryList

Реализованные интерфейсы

GtkDirectoryList реализует GListModel.

Файлы заголовков

#include <gtk/gtk.h>

Описание

GtkDirectoryList — это модель списка, которая оборачивает g_file_enumerate_children_async(). Она представляет GListModel и асинхронно заполняет его GFileInfos, возвращаемыми этой функцией.

Перечисление начнется автоматически при установке свойства “файл”.

Пока GtkDirectoryList заполняется, свойство “загрузка” будет установлено в значение TRUE. Можно отслеживать это свойство, чтобы отобразить информацию, например, GtkSpinner или текст "Загрузка...".

Если загрузка в какой-либо момент завершится неудачно, свойство “ошибка” будет установлено для лучшего указания причины неудачи.

GFileInfos, возвращаемые GtkDirectoryList, имеют атрибут "standard::file", установленный в GFile, на который они ссылаются. Таким образом, получить файл можно так же, как и через g_file_enumerator_get_child(). Это означает, что доступ к GtkDirectoryList не требуется; GFile можно получить непосредственно из GFileInfo при работе с GtkListView или аналогичным элементом.

Функции

gtk_directory_list_new ()

GtkDirectoryList *
gtk_directory_list_new (const char *attributes,
                        GFile *file);

Создаёт новый объект GtkDirectoryList, запрашивая указанный file с заданными attributes .

Параметры

file

Файл для запроса.

[allow-none]

attributes

Атрибуты для запроса.

[allow-none]

Возвращает

новый объект GtkDirectoryList

gtk_directory_list_get_attributes ()

const char *
gtk_directory_list_get_attributes (GtkDirectoryList *self);

Получает атрибуты, запрошенные у дочерних элементов.

Параметры

self

объект GtkDirectoryList

Возвращает

Запрошенные атрибуты.

[nullable][transfer none]

gtk_directory_list_set_attributes ()

void
gtk_directory_list_set_attributes (GtkDirectoryList *self,
                                   const char *attributes);

Устанавливает attributes для перечисления и запускает перечисление.

Если attributes равно NULL, атрибуты не будут запрошены, но список GFileInfos всё равно будет создан.

Параметры

self

объект GtkDirectoryList

attributes

атрибуты для перечисления.

[allow-none]

gtk_directory_list_get_file ()

GFile *
gtk_directory_list_get_file (GtkDirectoryList *self);

Получает файл, чьи дочерние элементы в настоящее время перечисляются.

Параметры

self

объект GtkDirectoryList

Возвращает

Файл, чьи дочерние элементы перечисляются.

[nullable][transfer none]

gtk_directory_list_set_file ()

void
gtk_directory_list_set_file (GtkDirectoryList *self,
                             GFile *file);

Устанавливает file для перечисления и запускает перечисление.

Если file равно NULL, результат будет пустым списком.

Параметры

self

объект GtkDirectoryList

file

объект GFile для перечисления.

[allow-none]

gtk_directory_list_get_io_priority ()

int
gtk_directory_list_get_io_priority (GtkDirectoryList *self);

Получает приоритет ввода-вывода, установленный с помощью gtk_directory_list_set_io_priority().

Параметры

self

объект GtkDirectoryList

Возвращает

Приоритет ввода-вывода.

gtk_directory_list_set_io_priority ()

void
gtk_directory_list_set_io_priority (GtkDirectoryList *self,
                                    int io_priority);

Устанавливает приоритет ввода-вывода для загрузки каталогов.

Установка приоритета во время загрузки self будет переназначать текущую загрузку как можно скорее.

По умолчанию приоритет ввода-вывода равен G_PRIORITY_DEFAULT, что выше приоритета перерисовки GTK. Если вы загружаете много каталогов параллельно, понижение его до значения, например, G_PRIORITY_DEFAULT_IDLE, может повысить отзывчивость.

Параметры

self

объект GtkDirectoryList

io_priority

Приоритет ввода-вывода

gtk_directory_list_get_monitored ()

gboolean
gtk_directory_list_get_monitored (GtkDirectoryList *self);

Возвращает, отслеживает ли список каталогов изменения в каталоге.

Параметры

self

объект GtkDirectoryList

Возвращает

TRUE, если каталог отслеживается

gtk_directory_list_set_monitored ()

void
gtk_directory_list_set_monitored (GtkDirectoryList *self,
                                  gboolean monitored);

Устанавливает, будет ли список каталогов отслеживать изменения в каталоге. Если отслеживание включено, сигнал “items-changed” будет выпущен, когда содержимое каталога изменится.

При включении отслеживания после первоначального создания списка каталогов каталог перечитывается, чтобы избежать пропуска файлов, которые появились между начальной загрузкой и включением отслеживания.

Параметры

self

объект GtkDirectoryList

monitored

TRUE отслеживать изменения в каталоге

gtk_directory_list_is_loading ()

gboolean
gtk_directory_list_is_loading (GtkDirectoryList *self);

Возвращает TRUE, если в настоящее время происходит перечисление дочерних элементов.

Файлы будут добавляться в self время от времени во время загрузки. Порядок добавления не определён и может меняться между запусками.

Параметры

self

объект GtkDirectoryList

Возвращает

TRUE, если self загружается

gtk_directory_list_get_error ()

const GError *
gtk_directory_list_get_error (GtkDirectoryList *self);

Получает ошибку загрузки, если она есть.

Если во время процесса загрузки возникнет ошибка, процесс загрузки завершится, и это свойство позволяет запросить произошедшую ошибку. Эта ошибка сохранится до тех пор, пока файл не будет загружен снова.

Наличие ошибки не означает, что файлы не были загружены, и все успешно запрошенные файлы останутся в списке.

Параметры

self

объект GtkDirectoryList

Возвращает

ошибку загрузки или NULL, если загрузка выполнена успешно.

[nullable][transfer none]

Типы и значения

GtkDirectoryList

typedef struct _GtkDirectoryList GtkDirectoryList;

Подробное описание свойств

Свойство “attributes”

  “attributes”               char *

Атрибуты для запроса

Владелец: GtkDirectoryList

Флаги: Чтение / Запись

Значение по умолчанию: NULL

Свойство “error”

  “error”                    GError *

Ошибка, возникшая при загрузке файлов

Владелец: GtkDirectoryList

Флаги: Чтение

Свойство “file”

  “file”                     GFile *

Файл для запроса

Владелец: GtkDirectoryList

Флаги: Чтение / Запись

Свойство “io-priority”

  “io-priority”              int

Приоритет при загрузке

Владелец: GtkDirectoryList

Флаги: Чтение / Запись

Допустимые значения: >= -2147483647

Значение по умолчанию: 0

Свойство “loading”

  “loading”                  gboolean

TRUE если файлы загружаются

Владелец: GtkDirectoryList

Флаги: Чтение

Значение по умолчанию: FALSE

Свойство “monitored”

  “monitored”                gboolean

TRUE если каталог отслеживается на изменения

Владелец: GtkDirectoryList

Флаги: Чтение / Запись

Значение по умолчанию: TRUE

См. также

GListModel, g_file_enumerate_children()

© 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/GtkDirectoryList.html

Spec-Zone.ru

Настройки Оффлайн Что нового Помощь О нас
Spec-Zone .ru
спецификации, руководства, описания, API