| 
 | |
|  | 
| GTK+ Reference Manual | ||||
|---|---|---|---|---|
| GtkRecentFilterGtkRecentFilter Фильтр для выделения подмножества недавно использованных файлов | 
#include <gtk/gtk.h>
            GtkRecentFilter;
            GtkRecentFilterInfo;
enum        GtkRecentFilterFlags;
gboolean    (*GtkRecentFilterFunc)          (const GtkRecentFilterInfo *filter_info,
                                             gpointer user_data);
GtkRecentFilter* gtk_recent_filter_new      (void);
const gchar* gtk_recent_filter_get_name     (GtkRecentFilter *filter);
void        gtk_recent_filter_set_name      (GtkRecentFilter *filter,
                                             const gchar *name);
void        gtk_recent_filter_add_mime_type (GtkRecentFilter *filter,
                                             const gchar *mime_type);
void        gtk_recent_filter_add_pattern   (GtkRecentFilter *filter,
                                             const gchar *pattern);
void        gtk_recent_filter_add_pixbuf_formats
                                            (GtkRecentFilter *filter);
void        gtk_recent_filter_add_application
                                            (GtkRecentFilter *filter,
                                             const gchar *application);
void        gtk_recent_filter_add_group     (GtkRecentFilter *filter,
                                             const gchar *group);
void        gtk_recent_filter_add_age       (GtkRecentFilter *filter,
                                             gint days);
void        gtk_recent_filter_add_custom    (GtkRecentFilter *filter,
                                             GtkRecentFilterFlags needed,
                                             GtkRecentFilterFunc func,
                                             gpointer data,
                                             GDestroyNotify data_destroy);
GtkRecentFilterFlags gtk_recent_filter_get_needed
                                            (GtkRecentFilter *filter);
gboolean    gtk_recent_filter_filter        (GtkRecentFilter *filter,
                                             const GtkRecentFilterInfo *filter_info);
  GObject
   +----GInitiallyUnowned
         +----GtkObject
               +----GtkRecentFilter GtkRecentFilter может использоваться
для ограничения отображаемых в
GtkRecentChooser фалов.
Файлы могут фильтроваться по имени (с
помощью gtk_recent_filter_add_pattern()),
по mime типу (с помощью
gtk_file_filter_add_mime_type()),
по приложениям зарегистрированным
вместе с ними (с помощью
gtk_recent_filter_add_application()),
или выборочно (с помощью
gtk_recent_filter_add_custom()).
Фильтрация по mime типу обрабатывает псевдонимы и подклассы mime типов; например фильтр text/plain означает также файлы с mime типом application/rtf, так как application/rtf это подкласс text/plain. Помните, GtkRecentFilter допускает шаблоны для подтипов mime типов, таким образом вы можете использовать фильтр image/*.
Обычно, фильтры используются добавляя
их в GtkRecentChooser,
смотрите gtk_recent_chooser_add_filter(),
но они также позволяют фильтровать
файлы вручную gtk_recent_filter_filter().
Недавно использованные файлы поддерживаются с версии GTK+ 2.10.
typedef struct _GtkRecentFilter GtkRecentFilter;
Структура GtkRecentFilter содержит только закрытые поля к которым нет непосредственного доступа.
typedef struct {
  GtkRecentFilterFlags contains;
  const gchar *uri;
  const gchar *display_name;
  const gchar *mime_type;
  const gchar **applications;
  const gchar **groups;
  
  gint age;
} GtkRecentFilterInfo;
Структура GtkRecentFilterInfo используется для
размещения информации о проверяемом
файле в  gtk_recent_filter_filter().
| GtkRecentFilterFlags  | Флаги указывают какие следующие поля нужно заполнить | 
| const gchar * | URI проверяемого файла | 
| const gchar * | Строка которая используется для отображения файла в селекторе недавно использованных файлов | 
| const gchar * | mime тип файла | 
| const gchar ** | Список приложений зарегистрированных с файлом | 
| const gchar ** | Группы к которым принадлежит файл | 
| gint  | Количество истекших дней с момента регистрации файла | 
typedef enum {
  GTK_RECENT_FILTER_URI          = 1 << 0,
  GTK_RECENT_FILTER_DISPLAY_NAME = 1 << 1,
  GTK_RECENT_FILTER_MIME_TYPE    = 1 << 2,
  GTK_RECENT_FILTER_APPLICATION  = 1 << 3,
  GTK_RECENT_FILTER_GROUP        = 1 << 4,
  GTK_RECENT_FILTER_AGE          = 1 << 5
} GtkRecentFilterFlags;Эти флаги указывают какая часть структуры GtkRecentFilterInfo заполнена или должна быть заполнена.
| URI проверяемого файла | |
| Строка которая используется для отображения файла в селекторе недавно использованных файлов | |
| mime тип файла | |
| Список приложений зарегистрированных с файлом | |
| Группы к которым принадлежит файл | |
| Количество истекших дней с момента регистрации файла | 
gboolean    (*GtkRecentFilterFunc)          (const GtkRecentFilterInfo *filter_info,
                                             gpointer user_data);
Тип функции которая используется для
выборочной фильтрации, смотрите
gtk_recent_filter_add_custom().
| 
 | GtkRecentFilterInfo которая
			заполняется согласно  | 
| 
 | Пользовательские данные помещаемые
			в  | 
| Возвращает : | 
 | 
GtkRecentFilter* gtk_recent_filter_new (void);
Создаёт новый GtkRecentFilter без
добавления в него правил. Такой фильтр
не принимает никаких недавно использованных
файлов, поэтому бесполезен пока вы не
добавите правила с помощью
gtk_recent_filter_add_pattern(),
gtk_recent_filter_add_mime_type(),
gtk_recent_filter_add_application(),
gtk_recent_filter_add_age().
Для создания фильтра показывающего все
недавно использованные файлы используйте:
GtkRecentFilter *filter = gtk_recent_filter_new ();
gtk_recent_filter_add_pattern (filter, "*");
| Возвращает : | Новый GtkRecentFilter | 
Начиная с версии 2.10
const gchar* gtk_recent_filter_get_name (GtkRecentFilter *filter);
Выдаёт читабельное (human-readable) имя для
фильтра. Смотрите gtk_recent_filter_set_name().
| 
 | |
| Возвращает : | Имя фильтра, или  | 
Начиная с версии 2.10
void        gtk_recent_filter_set_name      (GtkRecentFilter *filter,
                                             const gchar *name);Устанавливает читабельное (human-readable) имя фильтра; это строка которая отображается в селекторе недавно использованных файлов пользовательского интерфейса если есть список выбираемых фильтров.
| 
 | |
| 
 | Читабельное имя  | 
Начиная с версии 2.10
void        gtk_recent_filter_add_mime_type (GtkRecentFilter *filter,
                                             const gchar *mime_type);Добавляет правило которое отбирает ресурсы основываясь на их зарегистрированном MIME типе.
| 
 | |
| 
 | MIME тип | 
Начиная с версии 2.10
void        gtk_recent_filter_add_pattern   (GtkRecentFilter *filter,
                                             const gchar *pattern);Добавляет правило отбора ресурсов основываясь на шаблоне их отображаемых имен.
| 
 | |
| 
 | Шаблон файла | 
Начиная с версии 2.10
void        gtk_recent_filter_add_pixbuf_formats
                                            (GtkRecentFilter *filter);Добавляет правило отбора файлов изображений в формате поддерживаемом GdkPixbuf.
| 
 | 
Начиная с версии 2.10
void        gtk_recent_filter_add_application
                                            (GtkRecentFilter *filter,
                                             const gchar *application);Добавляет правило отбора основываясь на имени зарегистрированного приложения для отображения файлов.
| 
 | |
| 
 | Имя приложения | 
Начиная с версии 2.10
void        gtk_recent_filter_add_group     (GtkRecentFilter *filter,
                                             const gchar *group);Добавляет правило отбора ресурсов основываясь на имени группы к которой они прнадлежат.
| 
 | |
| 
 | Имя группы | 
Начиная с версии 2.10
void        gtk_recent_filter_add_age       (GtkRecentFilter *filter,
                                             gint days);Добавляет правило отбора ресурсов основываясь на их возрасте то есть количестве дней прошедших с момента последнего изменения.
| 
 | |
| 
 | Количество дней | 
Начиная с версии 2.10
void        gtk_recent_filter_add_custom    (GtkRecentFilter *filter,
                                             GtkRecentFilterFlags needed,
                                             GtkRecentFilterFunc func,
                                             gpointer data,
                                             GDestroyNotify data_destroy);
Добавляет правило фильтрации которое
основано на выбранной функции. Битовое
поле needed  помещается для
обозначения способа сортировки информации
в которой нуждается функция фильтрации;
это позволяет GTK+ обходить получение
расширенной информации когда она не
необходима фильтрам.
| 
 | |
| 
 | Битовое поле флагов указывающих информацию отбираемую для функции фильтрации. | 
| 
 | callback-функция; если функция возвращает
			 | 
| 
 | Данные помещаемые в  | 
| 
 | Функция вызываемая для освобождения
			данных  | 
Начиная с версии 2.10
GtkRecentFilterFlags gtk_recent_filter_get_needed
                                            (GtkRecentFilter *filter);
Выдаёт поля которые необходимо заполнить
в структуре помещаемой в
gtk_recent_filter_filter()
Эта функция обычно не используется приложениями; она преимущественно предназначена для использования при реализации GtkRecentChooser.
| 
 | |
| Возвращает : | Битовое поле флагов указывающих
			поля необходимые для заполнения при
			вызове   | 
Начиная с версии 2.10
gboolean    gtk_recent_filter_filter        (GtkRecentFilter *filter,
                                             const GtkRecentFilterInfo *filter_info);
Проверяет должен ли файл отображаться
согласно filter. GtkRecentFilterInfo
структура filter_info должна
содержать поля возвращаемые из
gtk_recent_filter_get_needed().
Эта функция обычно не используется приложениями; она преимущественно предназначена для использования при реализации GtkRecentChooser.
| 
 | |
| 
 | GtkRecentFilterInfo структура содержащая информацию о недавно использованных ресурсах | 
| Возвращает : | 
 | 
Начиная с версии 2.10
| Закладки на сайте Проследить за страницей | Created 1996-2025 by Maxim Chirkov Добавить, Поддержать, Вебмастеру |