GtkFontChooser
GtkFontChooser — Интерфейс, реализуемый виджетами, отображающими шрифты
Функции
| PangoFontFamily * | gtk_font_chooser_get_font_family () |
| PangoFontFace * | gtk_font_chooser_get_font_face () |
| gint | gtk_font_chooser_get_font_size () |
| gchar * | gtk_font_chooser_get_font () |
| void | gtk_font_chooser_set_font () |
| PangoFontDescription * | gtk_font_chooser_get_font_desc () |
| void | gtk_font_chooser_set_font_desc () |
| gchar * | gtk_font_chooser_get_preview_text () |
| void | gtk_font_chooser_set_preview_text () |
| gboolean | gtk_font_chooser_get_show_preview_entry () |
| void | gtk_font_chooser_set_show_preview_entry () |
| gboolean | (*GtkFontFilterFunc) () |
| void | gtk_font_chooser_set_filter_func () |
| void | gtk_font_chooser_set_font_map () |
| PangoFontMap * | gtk_font_chooser_get_font_map () |
| void | gtk_font_chooser_set_level () |
| GtkFontChooserLevel | gtk_font_chooser_get_level () |
| char * | gtk_font_chooser_get_font_features () |
| void | gtk_font_chooser_set_language () |
| char * | gtk_font_chooser_get_language () |
Свойства
| char * | font | Чтение / Запись |
| PangoFontDescription * | font-desc | Чтение / Запись |
| char * | font-features | Только чтение |
| char * | language | Чтение / Запись |
| GtkFontChooserLevel | level | Чтение / Запись |
| char * | preview-text | Чтение / Запись |
| gboolean | show-preview-entry | Чтение / Запись |
Сигналы
| void | font-activated | Выполнить первым |
Типы и значения
Иерархия объектов
GInterface ╰── GtkFontChooser
Предварительные условия
GtkFontChooser требует GObject.
Известные реализации
GtkFontChooser реализуется с помощью GtkFontButton, GtkFontChooserDialog и GtkFontChooserWidget.
Включения
#include <gtk/gtk.h>
Описание
GtkFontChooser — это интерфейс, который могут реализовывать виджеты, отображающие список шрифтов. В GTK+ основными объектами, реализующими этот интерфейс, являются GtkFontChooserWidget, GtkFontChooserDialog и GtkFontButton. Интерфейс GtkFontChooser был представлен в GTK+ 3.2.
Функции
gtk_font_chooser_get_font_family ()
PangoFontFamily *
gtk_font_chooser_get_font_family (GtkFontChooser *fontchooser); Получает PangoFontFamily, представляющий выбранную семью шрифтов. Семейства шрифтов — это набор шрифтовых начертаний.
Если выбранный шрифт не установлен, возвращает NULL.
Параметры
fontchooser | объект GtkFontChooser |
Возвращает
Объект PangoFontFamily, представляющий выбранную семью шрифтов, или NULL. Возвращённый объект принадлежит fontchooser и не должен быть изменён или освобождён.
[nullable][transfer none]
С момента: 3.2
gtk_font_chooser_get_font_face ()
PangoFontFace *
gtk_font_chooser_get_font_face (GtkFontChooser *fontchooser); Получает PangoFontFace, представляющий детали выбранной группы шрифтов (т.е. семью, наклон, вес, ширину и т. д.).
Если выбранный шрифт не установлен, возвращает NULL.
Параметры
fontchooser | объект GtkFontChooser |
Возвращает
Объект PangoFontFace, представляющий детали выбранной группы шрифтов, или NULL. Возвращённый объект принадлежит fontchooser и не должен быть изменён или освобождён.
[nullable][transfer none]
С момента: 3.2
gtk_font_chooser_get_font_size ()
gint
gtk_font_chooser_get_font_size (GtkFontChooser *fontchooser); Размер выбранного шрифта.
Параметры
fontchooser | объект GtkFontChooser |
Возвращает
Целое число, представляющее размер выбранного шрифта, или -1, если размер шрифта не выбран.
С момента: 3.2
gtk_font_chooser_get_font ()
gchar *
gtk_font_chooser_get_font (GtkFontChooser *fontchooser); Получает имя текущего выбранного шрифта.
Обратите внимание, что это может быть другой строкой, чем та, которую вы установили с помощью gtk_font_chooser_set_font(), так как виджет выбора шрифтов может нормализовать имена шрифтов и, следовательно, вернуть строку с другой структурой. Например, “Helvetica Italic Bold 12” может быть нормализован до “Helvetica Bold Italic 12”.
Используйте pango_font_description_equal(), если вы хотите сравнить два описания шрифтов.
Параметры
fontchooser | объект GtkFontChooser |
Возвращает
Строку с именем текущего шрифта или NULL, если шрифт не выбран. Вы должны освободить эту строку с помощью g_free().
[nullable][transfer full]
С момента: 3.2
gtk_font_chooser_set_font ()
void gtk_font_chooser_set_font (GtkFontChooser *fontchooser,const gchar *fontname);
Устанавливает текущий выбранный шрифт.
Параметры
fontchooser | объект GtkFontChooser | |
fontname | имя шрифта, например, “Helvetica 12” или “Times Bold 18” |
С момента: 3.2
gtk_font_chooser_get_font_desc ()
PangoFontDescription *
gtk_font_chooser_get_font_desc (GtkFontChooser *fontchooser); Получает текущий выбранный шрифт.
Обратите внимание, что это может быть другой строкой, чем та, которую вы установили с помощью gtk_font_chooser_set_font(), так как виджет выбора шрифтов может нормализовать имена шрифтов и, следовательно, вернуть строку с другой структурой. Например, “Helvetica Italic Bold 12” может быть нормализован до “Helvetica Bold Italic 12”.
Используйте pango_font_description_equal(), если вы хотите сравнить два описания шрифтов.
Параметры
fontchooser | объект GtkFontChooser |
Возвращает
Объект PangoFontDescription для текущего шрифта или NULL если шрифт не выбран.
[nullable][transfer full]
С момента: 3.2
gtk_font_chooser_set_font_desc ()
void gtk_font_chooser_set_font_desc (GtkFontChooser *fontchooser,const PangoFontDescription *font_desc);
Устанавливает текущий выбранный шрифт из font_desc .
Параметры
fontchooser | объект GtkFontChooser | |
font_desc | объект PangoFontDescription |
С момента: 3.2
gtk_font_chooser_get_preview_text ()
gchar *
gtk_font_chooser_get_preview_text (GtkFontChooser *fontchooser); Получает текст, отображаемый в области предварительного просмотра.
Параметры
fontchooser | объект GtkFontChooser |
Возвращает
текст, отображаемый в области предварительного просмотра.
[transfer full]
С момента: 3.2
gtk_font_chooser_set_preview_text ()
void gtk_font_chooser_set_preview_text (GtkFontChooser *fontchooser,const gchar *text);
Устанавливает текст, отображаемый в области предварительного просмотра. text используется для отображения того, как выглядит выбранный шрифт.
Параметры
fontchooser | объект GtkFontChooser | |
text | текст для отображения в области предварительного просмотра. | [transfer none] |
С момента: 3.2
gtk_font_chooser_get_show_preview_entry ()
gboolean
gtk_font_chooser_get_show_preview_entry
(GtkFontChooser *fontchooser); Возвращает, отображается ли элемент предварительного просмотра.
Параметры
fontchooser |
Возвращает
TRUE если элемент предварительного просмотра отображается или FALSE если он скрыт.
С: 3.2
gtk_font_chooser_set_show_preview_entry ()
void gtk_font_chooser_set_show_preview_entry (GtkFontChooser *fontchooser,gboolean show_preview_entry);
Отображает или скрывает редактируемый элемент предварительного просмотра.
Параметры
fontchooser | ||
show_preview_entry | отображать ли редактируемый элемент предварительного просмотра или нет |
С: 3.2
GtkFontFilterFunc ()
gboolean (*GtkFontFilterFunc) (const PangoFontFamily *family,const PangoFontFace *face,gpointer data);
Тип функции, используемой для определения, какие шрифты отображаются в GtkFontChooser. См. gtk_font_chooser_set_filter_func().
Параметры
family | ||
face | a PangoFontFace принадлежащий | |
data | данные пользователя, переданные в | [closure] |
Возвращает
TRUE если шрифт должен быть отображен
gtk_font_chooser_set_filter_func ()
void gtk_font_chooser_set_filter_func (GtkFontChooser *fontchooser,GtkFontFilterFunc filter,gpointer user_data,GDestroyNotify destroy);
Добавляет функцию фильтрации, определяющую, какие шрифты отображать в выборе шрифтов.
Параметры
fontchooser | ||
filter | a GtkFontFilterFunc, или | [allow-none] |
user_data | данные для передачи в | |
destroy | функция для освобождения |
С: 3.2
gtk_font_chooser_set_font_map ()
void gtk_font_chooser_set_font_map (GtkFontChooser *fontchooser,PangoFontMap *fontmap);
Устанавливает пользовательскую карту шрифтов для использования в этом виджете выбора шрифтов. Пользовательская карта шрифтов может использоваться для представления прикладных шрифтов вместо или дополнительно к стандартным системным шрифтам.
Обратите внимание, что другие виджеты GTK+ смогут использовать прикладной шрифт только если он присутствует в карте шрифтов, которую они используют:
FcConfig *config; PangoFontMap *fontmap; config = FcInitLoadConfigAndFonts (); FcConfigAppFontAddFile (config, my_app_font_file); fontmap = pango_cairo_font_map_new_for_font_type (CAIRO_FONT_TYPE_FT); pango_fc_font_map_set_config (PANGO_FC_FONT_MAP (fontmap), config); gtk_font_chooser_set_font_map (font_chooser, fontmap);
Параметры
fontchooser | ||
fontmap | a PangoFontMap. | [allow-none] |
С: 3.18
gtk_font_chooser_get_font_map ()
PangoFontMap *
gtk_font_chooser_get_font_map (GtkFontChooser *fontchooser); Получает пользовательскую карту шрифтов этого виджета выбора шрифтов, или NULL если её нет.
Параметры
fontchooser |
С: 3.18
gtk_font_chooser_set_level ()
void gtk_font_chooser_set_level (GtkFontChooser *fontchooser,GtkFontChooserLevel level);
Устанавливает желаемый уровень детализации для выбора шрифтов.
Параметры
fontchooser | ||
level | желаемый уровень детализации |
С: 3.24
gtk_font_chooser_get_level ()
GtkFontChooserLevel
gtk_font_chooser_get_level (GtkFontChooser *fontchooser); Возвращает текущий уровень детализации для выбора шрифтов.
Параметры
fontchooser |
Возвращает
текущий уровень детализации
С: 3.24
gtk_font_chooser_get_font_features ()
char *
gtk_font_chooser_get_font_features (GtkFontChooser *fontchooser); Получает текущие выбранные особенности шрифта.
Параметры
fontchooser |
Возвращает
текущие выбранные особенности шрифта
С: 3.24
gtk_font_chooser_set_language ()
void gtk_font_chooser_set_language (GtkFontChooser *fontchooser,const char *language);
Устанавливает язык для использования в свойствах шрифта.
Параметры
fontchooser | ||
language | язык |
С: 3.24
gtk_font_chooser_get_language ()
char *
gtk_font_chooser_get_language (GtkFontChooser *fontchooser); Получает язык, используемый для функций шрифта.
Параметры
fontchooser |
Возвращаемое значение
текущий выбранный язык
С версии: 3.24
Типы и значения
GtkFontChooser
typedef struct _GtkFontChooser GtkFontChooser;
Подробности свойств
Свойство “font”
“font” char *
Описание шрифта в виде строки, например, "Sans Italic 12".
Владелец: GtkFontChooser
Флаги: Чтение / Запись
Значение по умолчанию: "Sans 10"
Свойство “font-desc”
“font-desc” PangoFontDescription *
Описание шрифта в виде PangoFontDescription.
Владелец: GtkFontChooser
Флаги: Чтение / Запись
Свойство “font-features”
“font-features” char *
Выбранные функции шрифта в формате, совместимом с CSS и атрибутами Pango.
Владелец: GtkFontChooser
Флаги: Чтение
Значение по умолчанию: ""
С версии: 3.22.30
Свойство “language”
“language” char *
Язык, для которого были выбраны “font-features”, в формате, совместимом с CSS и атрибутами Pango.
Владелец: GtkFontChooser
Флаги: Чтение / Запись
Значение по умолчанию: ""
С версии: 3.22.30
Свойство “level”
“level” GtkFontChooserLevel
Уровень детализации для выбора шрифтов.
Владелец: GtkFontChooser
Флаги: Чтение / Запись
Значение по умолчанию: GTK_FONT_CHOOSER_LEVEL_STYLE | GTK_FONT_CHOOSER_LEVEL_SIZE
С версии: 3.22.30
Свойство “preview-text”
“preview-text” char *
Строка для предварительного просмотра шрифта.
Владелец: GtkFontChooser
Флаги: Чтение / Запись
Значение по умолчанию: "The quick brown fox jumps over the lazy dog."
Свойство “show-preview-entry”
“show-preview-entry” gboolean
Показывать ли поле для изменения текста предварительного просмотра.
Владелец: GtkFontChooser
Флаги: Чтение / Запись
Значение по умолчанию: TRUE
Подробности сигналов
Сигнал “font-activated”
void user_function (GtkFontChooser *self, char *fontname, gpointer user_data)
Выдаётся при активации шрифта. Обычно происходит при двойном щелчке элемента, или когда элемент выбран, и пользователь нажимает пробел, Shift+Пробел, Возврат или Enter.
Параметры
self | объект, получивший сигнал | |
fontname | имя шрифта | |
user_data | данные пользователя, заданные при подключении обработчика сигнала. |
Флаги: Выполняется первым
См. также
© 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/GtkFontChooser.html