Темабельные изображения стоковых изображений
Темабельные изображения стоковых изображений — Управление стоковыми значками
Функции
| GtkIconSource * | gtk_icon_source_new () |
| void | gtk_icon_source_set_direction () |
| void | gtk_icon_source_set_direction_wildcarded () |
| void | gtk_icon_source_set_filename () |
| void | gtk_icon_source_set_pixbuf () |
| void | gtk_icon_source_set_icon_name () |
| void | gtk_icon_source_set_size () |
| void | gtk_icon_source_set_size_wildcarded () |
| void | gtk_icon_source_set_state () |
| void | gtk_icon_source_set_state_wildcarded () |
Типы и значения
| GtkIconSource | |
| структура | GtkIconFactory |
| структура | GtkIconFactoryClass |
| GtkIconSet | |
| перечисление | GtkIconSize |
Иерархия объектов
GBoxed ╰── GtkIconSet GObject ╰── GtkIconFactory
Реализованные интерфейсы
GtkIconFactory реализует GtkBuildable.
Включаемые файлы
#include <gtk/gtk.h>
Описание
Фабрика иконок управляет набором GtkIconSet; GtkIconSet управляет набором вариантов конкретной иконки (то есть GtkIconSet содержит варианты для разных размеров и состояний виджета). Иконки в фабрике иконок имеют имена по идентификатору, который является простой строкой, идентифицирующей иконку. Каждый GtkStyle имеет список GtkIconFactory, полученный из текущей темы; эти фабрики иконок сначала проверяются при поиске иконки. Если тема не устанавливает определенную иконку, GTK+ ищет иконку в списке фабрик по умолчанию, поддерживаемых функциями gtk_icon_factory_add_default() и gtk_icon_factory_remove_default(). Приложения с иконками должны добавлять фабрику иконок по умолчанию со своими иконками, что позволит темам переопределять иконки приложения.
Для отображения иконки всегда используйте gtk_style_lookup_icon_set() на виджете, который будет отображать иконку, или удобную функцию gtk_widget_render_icon(). Эти функции учитывают тему при поиске иконки для заданного идентификатора.
GtkIconFactory как GtkBuildable
GtkIconFactory поддерживает пользовательский элемент <sources>, который может содержать несколько элементов <source>. Разрешены следующие атрибуты:
-
stock-id
Идентификатор стоковой иконки, строка. Этот атрибут обязателен.
-
filename
Имя файла источника, строка. Этот атрибут необязателен.
-
icon-name
Имя иконки для источника, строка. Этот атрибут необязателен.
-
size
Размер иконки, значение перечисления GtkIconSize. Этот атрибут необязателен.
-
direction
Направление источника, значение перечисления GtkTextDirection. Этот атрибут необязателен.
-
state
Состояние источника, значение перечисления GtkStateType. Этот атрибут необязателен.
Фрагмент определения пользовательского интерфейса GtkIconFactory.
<object class="GtkIconFactory" id="iconfactory1">
<sources>
<source stock-id="apple-red" filename="apple-red.png"/>
</sources>
</object>
<object class="GtkWindow" id="window1">
<child>
<object class="GtkButton" id="apple_button">
<property name="label">apple-red</property>
<property name="use-stock">True</property>
</object>
</child>
</object>Функции
gtk_icon_source_copy ()
GtkIconSource *
gtk_icon_source_copy (const GtkIconSource *source); gtk_icon_source_copy устарела с версии 3.10 и не должна использоваться в новых кодах.
Используйте GtkIconTheme вместо этого.
Создаёт копию source; в основном полезна для языковых библиотек.
Параметры
source |
Возвращает
новый GtkIconSource
gtk_icon_source_free ()
void
gtk_icon_source_free (GtkIconSource *source); gtk_icon_source_free устарела с версии 3.10 и не должна использоваться в новых кодах.
Используйте GtkIconTheme вместо этого.
Освобождает динамически выделенный источник иконки, а также его имя файла, размер и поля pixbuf, если они не NULL.
Параметры
source |
gtk_icon_factory_add ()
void gtk_icon_factory_add (GtkIconFactory *factory,const gchar *stock_id,GtkIconSet *icon_set);
gtk_icon_factory_add устарела с версии 3.10 и не должна использоваться в новых кодах.
Используйте GtkIconTheme вместо этого.
Добавляет заданный icon_set в фабрику иконок под именем stock_id. stock_id должен быть именован по принципу пространств имён для вашего приложения, например, “myapp-whatever-icon”. Обычно приложения создают GtkIconFactory, затем добавляют его в список стандартных фабрик с помощью gtk_icon_factory_add_default(). Затем они передают stock_id виджетам, таким как GtkImage, для отображения иконки. Темы могут предоставить иконку с тем же именем (например, "myapp-whatever-icon"), чтобы переопределить стандартные иконки вашего приложения. Если иконка уже существовала в factory для stock_id, она аннулируется и заменяется новой icon_set.
Параметры
factory | ||
stock_id | имя иконки | |
icon_set | набор иконок |
gtk_icon_factory_add_default ()
void
gtk_icon_factory_add_default (GtkIconFactory *factory); gtk_icon_factory_add_default устарела с версии 3.10 и не должна использоваться в новых кодах.
Используйте GtkIconTheme вместо этого.
Добавляет фабрику иконок в список фабрик иконок, которые проверяются функцией gtk_style_lookup_icon_set(). Это означает, что, например, gtk_image_new_from_stock() сможет найти иконки в factory. Обычно для каждой библиотеки или приложения с иконками добавляется фабрика иконок. Стандартные фабрики иконок могут быть переопределены темами.
Параметры
factory |
gtk_icon_factory_lookup ()
GtkIconSet * gtk_icon_factory_lookup (GtkIconFactory *factory,const gchar *stock_id);
gtk_icon_factory_lookup устарела с версии 3.10 и не должна использоваться в новых кодах.
Используйте GtkIconTheme вместо этого.
Ищет stock_id в фабрике иконок, возвращая набор иконок, если найден, в противном случае NULL. Для отображения пользователю следует использовать gtk_style_lookup_icon_set() в GtkStyle для виджета, который отобразит иконку, вместо использования этой функции напрямую, чтобы учесть темы.
Параметры
factory | ||
stock_id | имя иконки |
Возвращает
набор иконок stock_id .
[transfer none]
gtk_icon_factory_lookup_default ()
GtkIconSet *
gtk_icon_factory_lookup_default (const gchar *stock_id); gtk_icon_factory_lookup_default устарела с версии 3.10 и не должна использоваться в новых кодах.
Используйте GtkIconTheme вместо этого.
Ищет иконку в списке стандартных фабрик иконок. Для отображения пользователю следует использовать gtk_style_lookup_icon_set() в GtkStyle для виджета, который отобразит иконку, вместо использования этой функции напрямую, чтобы учесть темы.
Параметры
stock_id | имя иконки |
gtk_icon_factory_new ()
GtkIconFactory *
gtk_icon_factory_new (void); gtk_icon_factory_new устарела с версии 3.10 и не должна использоваться в новых кодах.
Используйте GtkIconTheme вместо этого.
Создаёт новую GtkIconFactory. Фабрика иконок управляет набором GtkIconSets; GtkIconSet управляет набором вариантов конкретной иконки (т. е. GtkIconSet содержит варианты для разных размеров и состояний виджетов). Иконки в фабрике иконок называются ID иконки, которая представляет собой простую строку, идентифицирующую иконку. Каждый GtkStyle имеет список GtkIconFactorys, полученный из текущей темы; эти фабрики иконок проверяются в первую очередь при поиске иконки. Если тема не задаёт конкретную иконку, GTK+ ищет иконку в списке стандартных фабрик иконок, поддерживаемых функциями gtk_icon_factory_add_default() и gtk_icon_factory_remove_default(). Приложения с иконками должны добавлять стандартную фабрику иконок со своими иконками, что позволит темам переопределять иконки для приложения.
Возвращает
новый GtkIconFactory
gtk_icon_factory_remove_default ()
void
gtk_icon_factory_remove_default (GtkIconFactory *factory); gtk_icon_factory_remove_default устарело с версии 3.10 и не должно использоваться в новом коде.
Используйте GtkIconTheme вместо этого.
Удаляет фабрику иконок из списка стандартных фабрик иконок. Обычно не используется; может использоваться библиотекой, которая может быть загружена или выгружена.
Параметры
factory | a GtkIconFactory добавленный ранее с помощью |
gtk_icon_set_add_source ()
void gtk_icon_set_add_source (GtkIconSet *icon_set,const GtkIconSource *source);
gtk_icon_set_add_source устарело с версии 3.10 и не должно использоваться в новом коде.
Используйте GtkIconTheme вместо этого.
Наборы иконок имеют список GtkIconSource, который они используют в качестве базовых иконок для отрисовки иконок в различных состояниях и размерах. Иконки масштабируются, делаются неактивными и т. д. в gtk_icon_set_render_icon(), но GtkIconSet нуждается в базовых изображениях для работы. Базовые изображения и когда их использовать описываются с помощью GtkIconSource.
Эта функция копирует source, поэтому вы можете повторно использовать тот же источник сразу же, не затрагивая набор иконок.
Пример использования этой функции: иконка «Назад к предыдущей странице» веб-браузера может указывать в разном направлении на иврите и на английском языке; она может выглядеть иначе в неактивном состоянии; и она может изменяться в зависимости от режима панели инструментов (маленькие/большие иконки). Таким образом, один набор иконок будет содержать все эти варианты иконок, и вы можете добавить отдельный источник для каждого.
Вы почти всегда должны добавлять источник «по умолчанию» со всеми полями «подстановочными», который будет использоваться в качестве резервного варианта, если ни один более конкретный источник не соответствует требованиям. GtkIconSet всегда предпочитает более конкретные источники иконок более общим источникам иконок. Порядок добавления источников в набор иконок не имеет значения.
gtk_icon_set_new_from_pixbuf() создаёт новый набор иконок со стандартным источником иконок, основанным на предоставленном pixbuf.
Параметры
icon_set | ||
source |
gtk_icon_set_copy ()
GtkIconSet *
gtk_icon_set_copy (GtkIconSet *icon_set); gtk_icon_set_copy устарело с версии 3.10 и не должно использоваться в новом коде.
Используйте GtkIconTheme вместо этого.
Копирует icon_set по значению.
Параметры
icon_set |
Возвращает
новый GtkIconSet, идентичный первому.
gtk_icon_set_new ()
GtkIconSet *
gtk_icon_set_new (void); gtk_icon_set_new устарело с версии 3.10 и не должно использоваться в новом коде.
Используйте GtkIconTheme вместо этого.
Создаёт новый GtkIconSet. GtkIconSet представляет отдельную иконку в различных размерах и состояниях виджетов. Он может предоставить GdkPixbuf для заданного размера и состояния по запросу и автоматически кэширует некоторые из отрендеренных объектов GdkPixbuf.
Обычно вы будете использовать gtk_widget_render_icon_pixbuf() вместо прямого использования GtkIconSet. Единственный случай, когда вы будете использовать GtkIconSet, — это создание наборов иконок, специфичных для приложения, для размещения в GtkIconFactory.
Возвращает
новый GtkIconSet
gtk_icon_set_new_from_pixbuf ()
GtkIconSet *
gtk_icon_set_new_from_pixbuf (GdkPixbuf *pixbuf); gtk_icon_set_new_from_pixbuf устарело с версии 3.10 и не должно использоваться в новом коде.
Используйте GtkIconTheme вместо этого.
Создаёт новый GtkIconSet с pixbuf в качестве изображения по умолчанию/резервного источника. Если вы не добавите никаких дополнительных GtkIconSource в набор иконок, все варианты иконок будут созданы из pixbuf, используя масштабирование, пикселизацию и т. д. по мере необходимости для изменения размера иконки или для того, чтобы иконка выглядела неактивной/подсвеченной.
Параметры
pixbuf |
Возвращает
новый GtkIconSet
gtk_icon_set_ref ()
GtkIconSet *
gtk_icon_set_ref (GtkIconSet *icon_set); gtk_icon_set_ref устарело с версии 3.10 и не должно использоваться в новом коде.
Используйте GtkIconTheme вместо этого.
Увеличивает счётчик ссылок на icon_set .
Параметры
icon_set | a GtkIconSet. |
Возвращает
icon_set .
gtk_icon_set_render_icon ()
GdkPixbuf * gtk_icon_set_render_icon (GtkIconSet *icon_set,GtkStyle *style,GtkTextDirection direction,GtkStateType state,GtkIconSize size,GtkWidget *widget,const gchar *detail);
gtk_icon_set_render_icon было устаревшим с версии 3.0 и не должно использоваться в новом коде.
Используйте gtk_icon_set_render_icon_pixbuf() вместо этого
Отображает значок с помощью gtk_style_render_icon(). В большинстве случаев gtk_widget_render_icon() лучше, так как он автоматически предоставляет большинство аргументов из текущих настроек виджета. Эта функция никогда не возвращает NULL; если значок не может быть отображён (например, из-за проблем с загрузкой файла изображения), вместо этого возвращается значок по умолчанию "отсутствующее изображение".
Параметры
icon_set | ||
style | a GtkStyle связанный с | [allow-none] |
direction | направление текста | |
state | состояние виджета | |
size | размер значка (GtkIconSize). Значение | [type int] |
widget | виджет, который будет отображать значок, или | [allow-none] |
detail | детали для передачи в движок темы, или | [allow-none] |
gtk_icon_set_render_icon_pixbuf ()
GdkPixbuf * gtk_icon_set_render_icon_pixbuf (GtkIconSet *icon_set,GtkStyleContext *context,GtkIconSize size);
gtk_icon_set_render_icon_pixbuf было устаревшим с версии 3.10 и не должно использоваться в новом коде.
Используйте GtkIconTheme вместо этого.
Отображает значок с помощью gtk_render_icon_pixbuf(). В большинстве случаев gtk_widget_render_icon_pixbuf() лучше, так как он автоматически предоставляет большинство аргументов из текущих настроек виджета. Эта функция никогда не возвращает NULL; если значок не может быть отображён (например, из-за проблем с загрузкой файла изображения), вместо этого возвращается значок по умолчанию "отсутствующее изображение".
Параметры
icon_set | ||
context | ||
size | размер значка (GtkIconSize). Значение | [type int] |
С: 3.0
gtk_icon_set_render_icon_surface ()
cairo_surface_t * gtk_icon_set_render_icon_surface (GtkIconSet *icon_set,GtkStyleContext *context,GtkIconSize size,int scale,GdkWindow *for_window);
gtk_icon_set_render_icon_surface было устаревшим с версии 3.10 и не должно использоваться в новом коде.
Используйте GtkIconTheme вместо этого.
Отображает значок с помощью gtk_render_icon_pixbuf() и преобразует его в поверхность cairo.
Эта функция никогда не возвращает NULL; если значок не может быть отображён (например, из-за проблем с загрузкой файла изображения), вместо этого возвращается значок по умолчанию "отсутствующее изображение".
Параметры
icon_set | ||
context | ||
size | размер значка (GtkIconSize). Значение | [type int] |
scale | масштаб окна для отрисовки | |
for_window | GdkWindow для оптимизации отрисовки, или | [allow-none] |
С: 3.10
gtk_icon_set_unref ()
void
gtk_icon_set_unref (GtkIconSet *icon_set); gtk_icon_set_unref было устаревшим с версии 3.10 и не должно использоваться в новом коде.
Используйте GtkIconTheme вместо этого.
Уменьшает счетчик ссылок на icon_set и освобождает память, если счетчик достигает 0.
Параметры
icon_set |
gtk_icon_size_lookup ()
gboolean gtk_icon_size_lookup (GtkIconSize size,gint *width,gint *height);
Получает размер пикселей семантического размера значка size : GTK_ICON_SIZE_MENU, GTK_ICON_SIZE_BUTTON и т. д. Эта функция обычно не требуется, gtk_icon_theme_load_icon() — это обычный способ получения значка для отрисовки, а затем просто просмотр размера отрисованного pixbuf. Отрисованный pixbuf может даже не соответствовать ширине/высоте, возвращаемой gtk_icon_size_lookup(), так как темы могут свободно отрисовывать pixbuf, как им угодно, в том числе изменять обычный размер.
Параметры
size | размер значка (GtkIconSize). | [type int] |
width | место для хранения ширины значка. | [out][allow-none] |
height | место для хранения высоты значка. | [out][allow-none] |
Возвращает
TRUE если size был допустимым размером
gtk_icon_size_lookup_for_settings ()
gboolean gtk_icon_size_lookup_for_settings (GtkSettings *settings,GtkIconSize size,gint *width,gint *height);
gtk_icon_size_lookup_for_settings устарел начиная с версии 3.10 и не должен использоваться в новом коде.
Используйте gtk_icon_size_lookup() вместо этого.
Получает размер пикселей семантического размера значка, возможно, изменённого пользовательскими настройками для конкретного GtkSettings. Обычно size будет GTK_ICON_SIZE_MENU, GTK_ICON_SIZE_BUTTON и т. д. Эта функция обычно не требуется, gtk_widget_render_icon_pixbuf() — это обычный способ получения значка для отрисовки, а затем просто просмотр размера отрисованного pixbuf. Отрисованный pixbuf может даже не соответствовать ширине/высоте, возвращаемой gtk_icon_size_lookup(), так как темы могут свободно отрисовывать pixbuf, как им угодно, в том числе изменять обычный размер.
Параметры
settings | объект GtkSettings, используемый для определения используемого набора пользовательских настроек. | |
size | размер значка (GtkIconSize). | [type int] |
width | место для хранения ширины значка. | [out][allow-none] |
height | место для хранения высоты значка. | [out][allow-none] |
Возвращает
TRUE если size был допустимым размером
С: 2.2
gtk_icon_size_register ()
GtkIconSize gtk_icon_size_register (const gchar *name,gint width,gint height);
gtk_icon_size_register устарел начиная с версии 3.10 и не должен использоваться в новом коде.
Используйте GtkIconTheme вместо этого.
Регистрирует новый размер значка, аналогично GTK_ICON_SIZE_MENU и т. д. Возвращает целое значение для размера.
Параметры
name | имя размера значка | |
width | ширина значка | |
height | высота значка |
gtk_icon_size_register_alias ()
void gtk_icon_size_register_alias (const gchar *alias,GtkIconSize target);
gtk_icon_size_register_alias устарел начиная с версии 3.10 и не должен использоваться в новом коде.
Используйте GtkIconTheme вместо этого.
Регистрирует alias как другое имя для target. Так что вызов gtk_icon_size_from_name() с alias в качестве аргумента вернёт target.
Параметры
alias | псевдоним для | |
target | существующий размер значка (GtkIconSize). | [type int] |
gtk_icon_size_from_name ()
GtkIconSize
gtk_icon_size_from_name (const gchar *name); gtk_icon_size_from_name устарел начиная с версии 3.10 и не должен использоваться в новом коде.
Используйте GtkIconTheme вместо этого.
Ищет размер значка, связанный с name.
Параметры
name | имя для поиска. |
gtk_icon_size_get_name ()
const gchar *
gtk_icon_size_get_name (GtkIconSize size); gtk_icon_size_get_name устарел начиная с версии 3.10 и не должен использоваться в новом коде.
Используйте GtkIconTheme вместо этого.
Получает каноническое имя заданного размера значка. Возвращаемая строка статически выделена и не должна освобождаться.
Параметры
size | a GtkIconSize. | [type int] |
Возвращает
имя заданного размера значка.
gtk_icon_set_get_sizes ()
void gtk_icon_set_get_sizes (GtkIconSet *icon_set,GtkIconSize **sizes,gint *n_sizes);
gtk_icon_set_get_sizes устарело с версии 3.10 и не должно использоваться в новом коде.
Используйте GtkIconTheme вместо этого.
Получает список размеров значков, которые может отобразить этот набор значков. Возвращаемый массив должен быть освобождён с помощью g_free().
Параметры
icon_set | ||
sizes | место назначения для массива размеров (GtkIconSize). | [array length=n_sizes][out][type int] |
n_sizes | место для хранения количества элементов в возвращаемом массиве |
gtk_icon_source_get_direction ()
GtkTextDirection
gtk_icon_source_get_direction (const GtkIconSource *source); gtk_icon_source_get_direction устарело с версии 3.10 и не должно использоваться в новом коде.
Используйте GtkIconTheme вместо этого.
Получает направление текста, к которому применяется этот источник значков. Возвращаемое значение полезно/имеет смысл только если направление текста не является универсальным.
Параметры
source |
Возвращает
направление текста, которому соответствует этот источник
gtk_icon_source_get_direction_wildcarded ()
gboolean
gtk_icon_source_get_direction_wildcarded
(const GtkIconSource *source); gtk_icon_source_get_direction_wildcarded устарело с версии 3.10 и не должно использоваться в новом коде.
Используйте GtkIconTheme вместо этого.
Получает значение, установленное с помощью gtk_icon_source_set_direction_wildcarded().
Параметры
source |
Возвращает
TRUE если этот источник значка является базовым для любого варианта направления текста
gtk_icon_source_get_filename ()
const gchar *
gtk_icon_source_get_filename (const GtkIconSource *source); gtk_icon_source_get_filename устарело с версии 3.10 и не должно использоваться в новом коде.
Используйте GtkIconTheme вместо этого.
Возвращает имя файла источника или NULL, если оно не задано. Имя файла не является копией и не должно изменяться или ожидаться, что оно сохранится после завершения работы источника значка.
Параметры
source |
Возвращает
имя файла изображения. Эта строка не должна изменяться или освобождаться.
[type filename]
gtk_icon_source_get_pixbuf ()
GdkPixbuf *
gtk_icon_source_get_pixbuf (const GtkIconSource *source); gtk_icon_source_get_pixbuf устарело с версии 3.10 и не должно использоваться в новом коде.
Используйте GtkIconTheme вместо этого.
Возвращает исходный pixbuf или NULL, если он не задан. Кроме того, если используется источник в виде имени файла, эта функция в некоторых случаях вернёт pixbuf, загруженный из файла. Это, например, справедливо для GtkIconSource, переданного виртуальной функции GtkStyle render_icon(). Счётчик ссылок на pixbuf не увеличивается.
Параметры
source |
Возвращает
исходный pixbuf.
[transfer none]
gtk_icon_source_get_icon_name ()
const gchar *
gtk_icon_source_get_icon_name (const GtkIconSource *source); gtk_icon_source_get_icon_name устарело с версии 3.10 и не должно использоваться в новом коде.
Используйте GtkIconTheme вместо этого.
Возвращает имя исходного значка или NULL, если оно не задано. Имя значка не является копией и не должно изменяться или ожидаться, что оно сохранится после завершения работы источника значка.
Параметры
source |
Возвращает
имя значка. Эта строка не должна изменяться или освобождаться.
gtk_icon_source_get_size ()
GtkIconSize
gtk_icon_source_get_size (const GtkIconSource *source); gtk_icon_source_get_size устарело с версии 3.10 и не должно использоваться в новом коде.
Используйте GtkIconTheme вместо этого.
Получает размер значка, к которому применяется этот источник. Возвращаемое значение имеет смысл только если размер значка не является универсальным.
Параметры
source |
gtk_icon_source_get_size_wildcarded ()
gboolean
gtk_icon_source_get_size_wildcarded (const GtkIconSource *source); gtk_icon_source_get_size_wildcarded устарело с версии 3.10 и не должно использоваться в новом коде.
Используйте GtkIconTheme вместо этого.
Получает значение, установленное с помощью gtk_icon_source_set_size_wildcarded().
Параметры
source |
Возвращает
TRUE если этот источник значка является базовым для любого варианта размера значка
gtk_icon_source_get_state ()
GtkStateType
gtk_icon_source_get_state (const GtkIconSource *source); gtk_icon_source_get_state устарело с версии 3.10 и не должно использоваться в новом коде.
Используйте GtkIconTheme вместо этого.
Получает состояние виджета, к которому применяется этот источник значка. Возвращаемое значение имеет смысл только если состояние виджета не является универсальным.
Параметры
source |
Возвращает
состояние виджета, которому соответствует этот источник
gtk_icon_source_get_state_wildcarded ()
gboolean
gtk_icon_source_get_state_wildcarded (const GtkIconSource *source); gtk_icon_source_get_state_wildcarded было устарело с версии 3.10 и не должно использоваться в новом коде.
Используйте GtkIconTheme вместо этого.
Получает значение, установленное функцией gtk_icon_source_set_state_wildcarded().
Параметры
source |
Возвращает
TRUE если этот источник иконки является основой для любого варианта состояния виджета
gtk_icon_source_new ()
GtkIconSource *
gtk_icon_source_new (void); gtk_icon_source_new было устарело с версии 3.10 и не должно использоваться в новом коде.
Используйте GtkIconTheme вместо этого.
Создаёт новый GtkIconSource. GtkIconSource содержит GdkPixbuf (или имя файла изображения), которое служит базовым изображением для одной или нескольких иконок в GtkIconSet, а также описание того, какие иконки в наборе иконок будут основаны на этом pixbuf или файле изображения. Набор иконок содержит набор иконок, которые представляют «одинаковую» логическую концепцию в различных состояниях, различных глобальных направлениях текста и различных размерах.
Например, иконка веб-браузера «Назад к предыдущей странице» может быть направлена в другом направлении на иврите и английском языках; она может выглядеть по-другому в нечувствительном режиме; и она может меняться в зависимости от режима панели инструментов (маленькие/большие иконки). Таким образом, один набор иконок будет содержать все эти варианты иконок. GtkIconSet содержит список GtkIconSource, из которого он может выводить конкретные варианты иконок в наборе.
В простейшем случае, GtkIconSet содержит один исходный pixbuf, из которого он выводит все варианты. Функция удобства gtk_icon_set_new_from_pixbuf() обрабатывает этот случай; если у вас есть только один исходный pixbuf, просто используйте эту функцию.
Если вы хотите использовать другой базовый pixbuf для разных вариантов иконок, создайте несколько источников иконок, пометьте, для создания каких вариантов они будут использоваться, и добавьте их в набор иконок с помощью gtk_icon_set_add_source().
По умолчанию, у источника иконок все параметры являются условными. То есть, источник иконок будет использоваться в качестве базовой иконки для любого желаемого направления текста, состояния виджета или размера иконки.
Возвращает
новый GtkIconSource
gtk_icon_source_set_direction ()
void gtk_icon_source_set_direction (GtkIconSource *source,GtkTextDirection direction);
gtk_icon_source_set_direction было устарело с версии 3.10 и не должно использоваться в новом коде.
Используйте GtkIconTheme вместо этого.
Устанавливает направление текста, с которым должен использоваться этот источник иконок.
Установка направления текста для источника иконок не имеет значения, если направление текста условно. Поэтому, вам обычно нужно вызвать gtk_icon_source_set_direction_wildcarded(), чтобы снять условность, помимо вызова этой функции.
Параметры
source | ||
direction | направление текста, к которому относится этот источник |
gtk_icon_source_set_direction_wildcarded ()
void gtk_icon_source_set_direction_wildcarded (GtkIconSource *source,gboolean setting);
gtk_icon_source_set_direction_wildcarded было устарело с версии 3.10 и не должно использоваться в новом коде.
Используйте GtkIconTheme вместо этого.
Если направление текста условно, этот источник может использоваться в качестве базового изображения для иконки в любом GtkTextDirection. Если направление текста не условно, то направление текста, к которому относится источник иконок, должно быть установлено с помощью gtk_icon_source_set_direction(), и источник иконок будет использоваться только с этим направлением текста.
GtkIconSet отдаёт предпочтение источникам без условных параметров (точных соответствий) перед условными источниками и будет использовать точное соответствие, когда это возможно.
Параметры
source | ||
setting |
|
gtk_icon_source_set_filename ()
void gtk_icon_source_set_filename (GtkIconSource *source,const gchar *filename);
gtk_icon_source_set_filename было устарело с версии 3.10 и не должно использоваться в новом коде.
Используйте GtkIconTheme вместо этого.
Устанавливает имя файла изображения, которое нужно использовать в качестве базового изображения при создании вариантов иконок для GtkIconSet. Имя файла должно быть абсолютным.
Параметры
source | ||
filename | используемый файл изображения. | [type filename] |
gtk_icon_source_set_pixbuf ()
void gtk_icon_source_set_pixbuf (GtkIconSource *source,GdkPixbuf *pixbuf);
gtk_icon_source_set_pixbuf было устарело с версии 3.10 и не должно использоваться в новом коде.
Используйте GtkIconTheme вместо этого.
Устанавливает pixbuf для использования в качестве базового изображения при создании вариантов иконок для GtkIconSet.
Параметры
source | ||
pixbuf | pixbuf для использования в качестве источника |
gtk_icon_source_set_icon_name ()
void gtk_icon_source_set_icon_name (GtkIconSource *source,const gchar *icon_name);
gtk_icon_source_set_icon_name было устарело с версии 3.10 и не должно использоваться в новом коде.
Используйте GtkIconTheme вместо этого.
Устанавливает имя иконки для поиска в текущей теме иконок, которая будет использоваться в качестве базового изображения при создании вариантов иконок для GtkIconSet.
Параметры
source | ||
icon_name | имя используемой иконки. | [allow-none] |
gtk_icon_source_set_size ()
void gtk_icon_source_set_size (GtkIconSource *source,GtkIconSize size);
gtk_icon_source_set_size было устаревшим с версии 3.10 и не должно использоваться в новых кодах.
Используйте GtkIconTheme вместо этого.
Устанавливает размер значка, с которым предназначено использовать этот источник значков.
Установка размера значка для источника значков не оказывает никакого влияния, если размер задан как универсальный. Поэтому, обычно вы должны вызвать gtk_icon_source_set_size_wildcarded(), чтобы сделать его универсальным, помимо вызова этой функции.
Параметры
source | ||
size | размер значка (GtkIconSize), к которому относится этот источник. | [type int] |
gtk_icon_source_set_size_wildcarded ()
void gtk_icon_source_set_size_wildcarded (GtkIconSource *source,gboolean setting);
gtk_icon_source_set_size_wildcarded было устаревшим с версии 3.10 и не должно использоваться в новых кодах.
Используйте GtkIconTheme вместо этого.
Если размер значка задан как универсальный, этот источник может использоваться в качестве базового изображения для значка любого размера. Если размер не универсальный, размер, к которому относится источник, должен быть установлен с помощью gtk_icon_source_set_size(), и источник значка будет использоваться только с этим конкретным размером.
GtkIconSet отдаёт предпочтение источникам без универсального размера (точным соответствиям) перед универсальными источниками и будет использовать точное соответствие, когда это возможно.
GtkIconSet обычно масштабирует изображения с универсальным размером, чтобы создать подходящий значок заданного размера, но не будет изменять размер изображений, которые точно соответствуют размеру.
Параметры
source | ||
setting |
|
gtk_icon_source_set_state ()
void gtk_icon_source_set_state (GtkIconSource *source,GtkStateType state);
gtk_icon_source_set_state было устаревшим с версии 3.10 и не должно использоваться в новых кодах.
Используйте GtkIconTheme вместо этого.
Устанавливает состояние виджета, с которым предназначено использовать этот источник значков.
Установка состояния виджета для источника значков не оказывает никакого влияния, если состояние задано как универсальное. Поэтому, обычно вы должны вызвать gtk_icon_source_set_state_wildcarded(), чтобы сделать его универсальным, помимо вызова этой функции.
Параметры
source | ||
state | состояние виджета, к которому относится этот источник |
gtk_icon_source_set_state_wildcarded ()
void gtk_icon_source_set_state_wildcarded (GtkIconSource *source,gboolean setting);
gtk_icon_source_set_state_wildcarded было устаревшим с версии 3.10 и не должно использоваться в новых кодах.
Используйте GtkIconTheme вместо этого.
Если состояние виджета задано как универсальное, этот источник может использоваться в качестве базового изображения для значка в любом GtkStateType. Если состояние виджета не универсальное, состояние, к которому относится источник, должно быть установлено с помощью gtk_icon_source_set_state(), и источник значка будет использоваться только с этим конкретным состоянием.
GtkIconSet отдаёт предпочтение источникам без универсального состояния (точным соответствиям) перед универсальными источниками и будет использовать точное соответствие, когда это возможно.
GtkIconSet обычно преобразует изображения с универсальным состоянием, чтобы создать подходящий значок для заданного состояния, например, осветляет изображение при предварительном выделении, но не будет изменять изображения, которые точно соответствуют состоянию.
Параметры
source | ||
setting |
|
Типы и значения
GtkIconSource
typedef struct _GtkIconSource GtkIconSource;
struct GtkIconFactory
struct GtkIconFactory;
struct GtkIconFactoryClass
struct GtkIconFactoryClass {
GObjectClass parent_class;
};
Члены
GtkIconSet
typedef struct _GtkIconSet GtkIconSet;
enum GtkIconSize
Встроенные стандартные размеры значков.
Члены
GTK_ICON_SIZE_INVALID | Неверный размер. | |
GTK_ICON_SIZE_MENU | Размер, подходящий для меню (16px). | |
GTK_ICON_SIZE_SMALL_TOOLBAR | Размер, подходящий для маленьких панелей инструментов (16px). | |
GTK_ICON_SIZE_LARGE_TOOLBAR | Размер, подходящий для больших панелей инструментов (24px). | |
GTK_ICON_SIZE_BUTTON | Размер, подходящий для кнопок (16px). | |
GTK_ICON_SIZE_DND | Размер, подходящий для перетаскивания (32px). | |
GTK_ICON_SIZE_DIALOG | Размер, подходящий для диалоговых окон (48px). |
© 2005–2020 The GNOME Project
Licensed under the GNU Lesser General Public License version 2.1 or later.
https://developer.gnome.org/gtk3/3.24/gtk3-Themeable-Stock-Images.html