Изображения акций с темами
Темабельные изображения стоковой графики — Работа со стоковыми значками
Функции
| 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 |
Реализованные интерфейсы
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 содержит варианты для разных размеров и состояний виджета). Значки в фабрике значков называются идентификатором запаса, который представляет собой простую строку, идентифицирующую значок. Каждый 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 | a GdkPixbuf |
Возвращает
новый 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 | [allow-none] | |
direction | направление текста | |
state | состояние виджета | |
size | размер значка (GtkIconSize). Значение | [type int] |
widget | виджет, который будет отображать значок, или | [allow-none] |
detail | детали для передачи в движок темы, или | [allow-none] |
Возвращаемое значение
a GdkPixbuf для отображения.
[transfer full]
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] |
Возвращаемое значение
a GdkPixbuf для отображения.
[transfer full]
С: 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 | [allow-none] |
Возвращаемое значение
a cairo_surface_t для отображения.
[transfer full]
С: 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 | значение 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 | Размер, подходящий для меню (16 пикселей). | |
GTK_ICON_SIZE_SMALL_TOOLBAR | Размер, подходящий для маленьких панелей инструментов (16 пикселей). | |
GTK_ICON_SIZE_LARGE_TOOLBAR | Размер, подходящий для больших панелей инструментов (24 пикселя). | |
GTK_ICON_SIZE_BUTTON | Размер, подходящий для кнопок (16 пикселей). | |
GTK_ICON_SIZE_DND | Размер, подходящий для перетаскивания (32 пикселя). | |
GTK_ICON_SIZE_DIALOG | Размер, подходящий для диалоговых окон (48 пикселей). |
© 2005–2020 The GNOME Project
Licensed under the GNU Lesser General Public License version 2.1 or later.
https://developer.gnome.org/gtk3/3.22/gtk3-Themeable-Stock-Images.html