GtkAboutDialog
GtkAboutDialog — Отображение информации о приложении
Функции
Свойства
| GStrv | artists | Чтение / Запись |
| GStrv | авторы | Чтение / Запись |
| char * | комментарии | Чтение / Запись |
| char * | авторские права | Чтение / Запись |
| GStrv | документаторы | Чтение / Запись |
| char * | лицензия | Чтение / Запись |
| GtkLicense | тип-лицензии | Чтение / Запись |
| GdkPaintable * | логотип | Чтение / Запись |
| char * | имя-иконки-логотипа | Чтение / Запись |
| char * | имя-программы | Чтение / Запись |
| char * | информация-о-системе | Чтение / Запись |
| char * | благодарности-переводчикам | Чтение / Запись |
| char * | версия | Чтение / Запись |
| char * | сайт | Чтение / Запись |
| char * | метка-сайта | Чтение / Запись |
| gboolean | обёрнутая-лицензия | Чтение / Запись |
Сигналы
| gboolean | активировать-ссылку | Выполнить последним |
Типы и значения
| GtkAboutDialog | |
| перечисление | GtkLicense |
Реализованные интерфейсы
GtkAboutDialog реализует GtkAccessible, GtkBuildable, GtkConstraintTarget, GtkNative, GtkShortcutManager и GtkRoot.
Файлы-включения
#include <gtk/gtk.h>
Описание
GtkAboutDialog предоставляет простой способ отображения информации о программе, такой как ее логотип, имя, авторские права, веб-сайт и лицензия. Также можно указать благодарности авторам, документаторам, переводчикам и художникам, которые работали над программой. Диалоговое окно «О программе» обычно открывается, когда пользователь выбирает опцию About в меню Help. Все части диалогового окна необязательны.
Диалоговые окна «О программе» часто содержат ссылки и адреса электронной почты. GtkAboutDialog отображает их как нажимаемые ссылки. По умолчанию он вызывает gtk_show_uri() при нажатии пользователем на одну из них. Поведение можно переопределить с помощью сигнала “активировать-ссылку”.
Чтобы указать человека с адресом электронной почты, используйте строку типа "Edgar Allan Poe <edgar@poe.com>". Чтобы указать веб-сайт с названием, используйте строку типа "Команда GTK http://www.gtk.org".
Для удобства создания GtkAboutDialog можно использовать функцию gtk_show_about_dialog(), которая создает и отображает диалоговое окно и сохраняет его, чтобы его можно было снова отобразить.
Обратите внимание, что GTK устанавливает по умолчанию заголовок _("About %s") в окне диалога (где %s заменяется именем приложения, но для обеспечения правильного перевода заголовка приложения следует явно установить свойство заголовка при создании GtkAboutDialog, как показано в следующем примере:
Узлы CSS
GtkAboutDialog имеет единственный узел CSS с именем window и классом стиля .aboutdialog.
Функции
gtk_about_dialog_new ()
GtkWidget *
gtk_about_dialog_new (void); Создает новый GtkAboutDialog.
Returns
вновь созданный GtkAboutDialog
gtk_about_dialog_get_program_name ()
const char *
gtk_about_dialog_get_program_name (GtkAboutDialog *about); Возвращает имя программы, отображаемое в диалоговом окне «О программе».
Parameters
about |
Returns
Имя программы. Строка принадлежит диалоговому окну «О программе» и не должна изменяться.
[nullable]
gtk_about_dialog_set_program_name ()
void gtk_about_dialog_set_program_name (GtkAboutDialog *about,const char *name);
Устанавливает имя для отображения в диалоговом окне «О программе». Если это не установлено, по умолчанию используется g_get_application_name().
Parameters
about | ||
name | имя программы |
gtk_about_dialog_get_version ()
const char *
gtk_about_dialog_get_version (GtkAboutDialog *about); Возвращает строку версии.
Parameters
about |
Returns
Строка версии. Строка принадлежит диалоговому окну «О программе» и не должна изменяться.
[nullable]
gtk_about_dialog_set_version ()
void gtk_about_dialog_set_version (GtkAboutDialog *about,const char *version);
Устанавливает строку версии для отображения в диалоговом окне «О программе».
Parameters
about | ||
version | строка версии. | [allow-none] |
gtk_about_dialog_get_copyright ()
const char *
gtk_about_dialog_get_copyright (GtkAboutDialog *about); Возвращает строку авторских прав.
Parameters
about |
Returns
Строка авторских прав. Строка принадлежит диалоговому окну «О программе» и не должна изменяться.
[nullable]
gtk_about_dialog_set_copyright ()
void gtk_about_dialog_set_copyright (GtkAboutDialog *about,const char *copyright);
Устанавливает строку авторских прав для отображения в диалоговом окне «О программе». Это должна быть короткая строка из одной или двух строк.
Parameters
about | ||
copyright | строка авторских прав. | [allow-none] |
gtk_about_dialog_get_comments ()
const char *
gtk_about_dialog_get_comments (GtkAboutDialog *about); Возвращает строку комментариев.
Parameters
about |
Returns
Комментарии. Строка принадлежит диалоговому окну «О программе» и не должна изменяться.
[nullable]
gtk_about_dialog_set_comments ()
void gtk_about_dialog_set_comments (GtkAboutDialog *about,const char *comments);
Устанавливает строку комментариев для отображения в диалоговом окне «О программе». Это должна быть короткая строка из одной или двух строк.
Parameters
about | ||
comments | строка комментариев. | [allow-none] |
gtk_about_dialog_get_license ()
const char *
gtk_about_dialog_get_license (GtkAboutDialog *about); Возвращает информацию о лицензии.
Parameters
about |
Returns
Информация о лицензии. Строка принадлежит диалоговому окну «О программе» и не должна изменяться.
[nullable]
gtk_about_dialog_set_license ()
void gtk_about_dialog_set_license (GtkAboutDialog *about,const char *license);
Устанавливает информацию о лицензии для отображения во вторичном диалоговом окне лицензии. Если license является NULL, кнопка лицензии скрыта.
Parameters
about | ||
license | информация о лицензии или | [allow-none] |
gtk_about_dialog_get_wrap_license ()
gboolean
gtk_about_dialog_get_wrap_license (GtkAboutDialog *about); Возвращает, автоматически ли переносится текст лицензии в about.
Parameters
about |
Returns
TRUE если текст лицензии переносится
gtk_about_dialog_set_wrap-license ()
void gtk_about_dialog_set_wrap_license (GtkAboutDialog *about,gboolean wrap_license);
Устанавливает, автоматически ли переносится текст лицензии в about.
Parameters
about | ||
wrap_license | необходимо ли переносить лицензию |
gtk_about_dialog_get_license_type ()
GtkLicense
gtk_about_dialog_get_license_type (GtkAboutDialog *about); Извлекает лицензию, установленную с помощью gtk_about_dialog_set_license_type()
Parameters
about |
Returns
значение GtkLicense
gtk_about_dialog_set_license_type ()
void gtk_about_dialog_set_license_type (GtkAboutDialog *about,GtkLicense license_type);
Устанавливает лицензию приложения, показывающего диалоговое окно about из списка известных лицензий.
Эта функция переопределяет лицензию, установленную с помощью gtk_about_dialog_set_license().
Параметры
about | ||
license_type | тип лицензии |
gtk_about_dialog_get_website ()
const char *
gtk_about_dialog_get_website (GtkAboutDialog *about); Возвращает URL-адрес веб-сайта.
Параметры
about |
Возвращаемое значение
URL-адрес веб-сайта. Строка принадлежит диалоговому окну about и не должна изменяться.
[nullable]
gtk_about_dialog_set_website ()
void gtk_about_dialog_set_website (GtkAboutDialog *about,const char *website);
Устанавливает URL-адрес для ссылки на веб-сайт.
Параметры
about | ||
website | строка URL-адреса, начинающаяся с "http://". | [allow-none] |
gtk_about_dialog_get_website_label ()
const char *
gtk_about_dialog_get_website_label (GtkAboutDialog *about); Возвращает метку, используемую для ссылки на веб-сайт.
Параметры
about |
Возвращаемое значение
Метка, используемая для ссылки на веб-сайт. Строка принадлежит диалоговому окну about и не должна изменяться.
[nullable]
gtk_about_dialog_set_website_label ()
void gtk_about_dialog_set_website_label (GtkAboutDialog *about,const char *website_label);
Устанавливает метку, которая будет использоваться для ссылки на веб-сайт.
Параметры
about | ||
website_label | метка, используемая для ссылки на веб-сайт |
gtk_about_dialog_get_authors ()
const char * const *
gtk_about_dialog_get_authors (GtkAboutDialog *about); Возвращает строку, которая отображается во вкладке «Авторы» дополнительного диалогового окна сведений.
Параметры
about |
Возвращаемое значение
A NULL-terminated string array containing the authors. The array is owned by the about dialog and must not be modified.
[array zero-terminated=1][transfer none]
gtk_about_dialog_set_authors ()
void gtk_about_dialog_set_authors (GtkAboutDialog *about,const char **authors);
Устанавливает строки, которые отображаются во вкладке «Авторы» дополнительного диалогового окна сведений.
Параметры
about | ||
authors | a | [array zero-terminated=1] |
gtk_about_dialog_get_artists ()
const char * const *
gtk_about_dialog_get_artists (GtkAboutDialog *about); Возвращает строку, которая отображается во вкладке «Художники» дополнительного диалогового окна сведений.
Параметры
about |
Возвращаемое значение
A NULL-terminated string array containing the artists. The array is owned by the about dialog and must not be modified.
[array zero-terminated=1][transfer none]
gtk_about_dialog_set_artists ()
void gtk_about_dialog_set_artists (GtkAboutDialog *about,const char **artists);
Устанавливает строки, которые отображаются во вкладке «Художники» дополнительного диалогового окна сведений.
Параметры
about | ||
artists | a | [array zero-terminated=1] |
gtk_about_dialog_get_documenters ()
const char * const *
gtk_about_dialog_get_documenters (GtkAboutDialog *about); Возвращает строку, которая отображается во вкладке «Документаторы» дополнительного диалогового окна сведений.
Параметры
about |
Возвращаемое значение
A NULL-terminated string array containing the documenters. The array is owned by the about dialog and must not be modified.
[array zero-terminated=1][transfer none]
gtk_about_dialog_set_documenters ()
void gtk_about_dialog_set_documenters (GtkAboutDialog *about,const char **documenters);
Устанавливает строки, которые отображаются во вкладке «Документаторы» диалогового окна сведений.
Параметры
about | ||
documenters | a | [array zero-terminated=1] |
gtk_about_dialog_get_translator_credits ()
const char *
gtk_about_dialog_get_translator_credits
(GtkAboutDialog *about); Возвращает строку с благодарностью переводчикам, которая отображается во вкладке «Переводчики» дополнительного диалогового окна сведений.
Параметры
about |
Возвращаемое значение
Строка с благодарностью переводчикам. Строка принадлежит диалоговому окну about и не должна изменяться.
[nullable]
gtk_about_dialog_set_translator_credits ()
void gtk_about_dialog_set_translator_credits (GtkAboutDialog *about,const char *translator_credits);
Устанавливает строку с данными о переводчиках, которая отображается во вкладке «Переводчики» диалогового окна дополнительной информации.
Эта строка предназначена для отображения имени переводчика языка, который в данный момент используется в пользовательском интерфейсе. Используя gettext(), простой способ достижения этого — пометить строку для перевода:
GFile *logo_file = g_file_new_for_path ("./logo.png");
GdkTexture *example_logo = gdk_texture_new_from_file (logo_file, NULL);
g_object_unref (logo_file);
gtk_show_about_dialog (NULL,
"program-name", "ExampleCode",
"logo", example_logo,
"title", _("About ExampleCode"),
NULL);Рекомендуется использовать стандартный идентификатор сообщения «translator-credits», так как переводчики уже знают назначение этого идентификатора, и так как GtkAboutDialog обнаружит, если «translator-credits» не переведен, и скроет вкладку.
Параметры
about | объект GtkAboutDialog | |
translator_credits | данные о переводчиках. | [allow-none] |
gtk_about_dialog_get_logo ()
GdkPaintable *
gtk_about_dialog_get_logo (GtkAboutDialog *about); Возвращает элемент, отображаемый как логотип в диалоговом окне «О программе».
Параметры
about | объект GtkAboutDialog |
Возвращаемое значение
элемент, отображаемый как логотип, или NULL, если логотип не задан или был задан через gtk_about_dialog_set_logo_icon_name(). Элемент принадлежит диалоговому окну «О программе». Если вы хотите сохранить ссылку на него, вы должны вызвать g_object_ref() на нём.
[transfer none][nullable]
gtk_about_dialog_set_logo ()
void gtk_about_dialog_set_logo (GtkAboutDialog *about,GdkPaintable *logo);
Устанавливает логотип в диалоговом окне «О программе».
Параметры
about | объект GtkAboutDialog | |
logo | объект GdkPaintable или | [allow-none] |
gtk_about_dialog_get_logo_icon_name ()
const char *
gtk_about_dialog_get_logo_icon_name (GtkAboutDialog *about); Возвращает имя иконки, отображаемой в качестве логотипа в диалоговом окне «О программе».
Параметры
about | объект GtkAboutDialog |
Возвращаемое значение
имя иконки, отображаемой в качестве логотипа, или NULL, если логотип был задан через gtk_about_dialog_set_logo(). Строка принадлежит диалоговому окну. Если вы хотите сохранить ссылку на неё, вы должны вызвать g_strdup() на ней.
[transfer none][nullable]
gtk_about_dialog_set_logo_icon_name ()
void gtk_about_dialog_set_logo_icon_name (GtkAboutDialog *about,const char *icon_name);
Устанавливает имя иконки, отображаемой в качестве логотипа в диалоговом окне «О программе».
Параметры
about | объект GtkAboutDialog | |
icon_name | имя иконки или | [allow-none] |
gtk_about_dialog_get_system_information ()
const char *
gtk_about_dialog_get_system_information
(GtkAboutDialog *about); Возвращает системную информацию, отображаемую в диалоговом окне «О программе».
Параметры
about | объект GtkAboutDialog |
Возвращаемое значение
системная информация.
[nullable]
gtk_about_dialog_set_system_information ()
void gtk_about_dialog_set_system_information (GtkAboutDialog *about,const char *system_information);
Устанавливает системную информацию, которая будет отображаться в диалоговом окне «О программе». Если system_information имеет значение NULL, вкладка «Системная информация» скрывается.
Параметры
about | объект GtkAboutDialog | |
system_information | системная информация или | [allow-none] |
gtk_about_dialog_add_credit_section ()
void gtk_about_dialog_add_credit_section (GtkAboutDialog *about,const char *section_name,const char **people);
Создаёт новую секцию на странице «Благодарности».
Параметры
about | Объект GtkAboutDialog | |
section_name | Название секции | |
people | Список людей, относящихся к этой секции. | [array zero-terminated=1] |
gtk_show_about_dialog ()
void gtk_show_about_dialog (GtkWindow *parent,const char *first_property_name,...);
Это вспомогательная функция для показа диалогового окна «О программе» приложения. Построенное диалоговое окно ассоциируется с родительским окном и используется повторно для последующих вызовов этой функции.
Параметры
parent | транзиентный родитель или | [allow-none] |
first_property_name | имя первой характеристики | |
... | значение первой характеристики, за которым следуют дополнительные характеристики, завершённые |
Типы и значения
GtkAboutDialog
typedef struct _GtkAboutDialog GtkAboutDialog;
Перечисление GtkLicense
Тип лицензии приложения.
Это перечисление может быть расширено в будущем.
Элементы
GTK_LICENSE_UNKNOWN | Лицензия не указана | |
GTK_LICENSE_CUSTOM | Текст лицензии будет указан разработчиком | |
GTK_LICENSE_GPL_2_0 | GNU Общая публичная лицензия, версия 2.0 или более поздняя | |
GTK_LICENSE_GPL_3_0 | GNU Общая публичная лицензия, версия 3.0 или более поздняя | |
GTK_LICENSE_LGPL_2_1 | GNU Небольшая общая публичная лицензия, версия 2.1 или более поздняя | |
GTK_LICENSE_LGPL_3_0 | GNU Небольшая общая публичная лицензия, версия 3.0 или более поздняя | |
GTK_LICENSE_BSD | Стандартная лицензия BSD | |
GTK_LICENSE_MIT_X11 | Стандартная лицензия MIT/X11 | |
GTK_LICENSE_ARTISTIC | Художественная лицензия, версия 2.0 | |
GTK_LICENSE_GPL_2_0_ONLY | Только GNU Общая публичная лицензия, версия 2.0 | |
GTK_LICENSE_GPL_3_0_ONLY | Только GNU Общая публичная лицензия, версия 3.0 | |
GTK_LICENSE_LGPL_2_1_ONLY | Только GNU Небольшая общая публичная лицензия, версия 2.1 | |
GTK_LICENSE_LGPL_3_0_ONLY | Только GNU Небольшая общая публичная лицензия, версия 3.0 | |
GTK_LICENSE_AGPL_3_0 | GNU Affero Общая публичная лицензия, версия 3.0 или более поздняя | |
GTK_LICENSE_AGPL_3_0_ONLY | Только GNU Affero Общая публичная лицензия, версия 3.0 | |
GTK_LICENSE_BSD_3 | Лицензия BSD (3-строчная) | |
GTK_LICENSE_APACHE_2_0 | Лицензия Apache, версия 2.0 | |
GTK_LICENSE_MPL_2_0 | Mozilla Public License, версия 2.0 |
Подробное описание свойств
Свойство “artists”
“artists” GStrv
Люди, внесшие вклад в создание графики программы, в виде массива строк, завершённого значением NULL. Каждая строка может содержать адреса электронной почты и URL-адреса, которые будут отображаться как ссылки. Подробнее см. введение.
Владелец: GtkAboutDialog
Флаги: Чтение / Запись
Свойство “authors”
“authors” GStrv
Авторы программы, в виде массива строк, завершённого значением NULL. Каждая строка может содержать адреса электронной почты и URL-адреса, которые будут отображаться как ссылки. Подробнее см. введение.
Владелец: GtkAboutDialog
Флаги: Чтение / Запись
Свойство “comments”
“comments” char *
Комментарии к программе. Эта строка отображается в метке основного диалогового окна, поэтому она должна содержать краткое объяснение основного назначения программы, а не подробный список функций.
Владелец: GtkAboutDialog
Флаги: Чтение / Запись
Значение по умолчанию: NULL
Свойство “copyright”
“copyright” char *
Информация об авторских правах для программы.
Владелец: GtkAboutDialog
Флаги: Чтение / Запись
Значение по умолчанию: NULL
Свойство “documenters”
“documenters” GStrv
Авторы документации программы, в виде массива строк, завершённого значением NULL. Каждая строка может содержать адреса электронной почты и URL-адреса, которые будут отображаться как ссылки. Подробнее см. введение.
Владелец: GtkAboutDialog
Флаги: Чтение / Запись
Свойство “license”
“license” char *
Лицензия программы. Эта строка отображается в текстовом представлении во всплывающем диалоговом окне, поэтому можно использовать длинный текст с несколькими абзацами. Обратите внимание, что текст будет форматироваться только в текстовом представлении, если свойство «wrap-license» установлено в TRUE; в противном случае текст должен содержать необходимые переводы строк. При установке данного свойства на значение, отличное от NULL, свойство “license-type” автоматически устанавливается в GTK_LICENSE_CUSTOM.
Текст может содержать ссылки в формате <http://www.some.place/> и ссылки на электронную почту в формате <mail-tosome.body>, которые будут преобразовываться в нажимаемые ссылки.
Владелец: GtkAboutDialog
Флаги: Чтение / Запись
Значение по умолчанию: NULL
Свойство “license-type”
“license-type” GtkLicense
Лицензия программы, как значение перечисления GtkLicense.
Библиотека GtkAboutDialog автоматически заполнит стандартный отказ от ответственности и предоставит пользователю ссылку на соответствующий онлайн-ресурс для текста лицензии.
Если используется GTK_LICENSE_UNKNOWN, ссылка будет той же, что указана в свойстве “website”.
Если используется GTK_LICENSE_CUSTOM, будут использоваться текущие значения свойства “license”.
Для любого другого значения перечисления GtkLicense содержимое свойства “license” также будет установлено как побочный эффект.
Владелец: GtkAboutDialog
Флаги: Чтение / Запись
Значение по умолчанию: GTK_LICENSE_UNKNOWN
Свойство “logo”
“logo” GdkPaintable *
Логотип для диалогового окна «О программе». Если он NULL, будет использован значок окна по умолчанию, заданный с помощью gtk_window_set_default_icon_name().
Владелец: GtkAboutDialog
Флаги: Чтение / Запись
Свойство “logo-icon-name”
“logo-icon-name” char *
Имя значка, используемого в качестве логотипа для диалогового окна «О программе». Это свойство переопределяет свойство “logo”.
Владелец: GtkAboutDialog
Флаги: Чтение / Запись
Значение по умолчанию: NULL
Свойство “program-name”
“program-name” char *
Название программы. Если не задано, используется значение по умолчанию g_get_application_name().
Владелец: GtkAboutDialog
Флаги: Чтение / Запись
Значение по умолчанию: NULL
Свойство “system-information”
“system-information” char *
Информация о системе, на которой работает программа. Отображается на отдельной вкладке, поэтому можно использовать длинный текст с несколькими абзацами. Обратите внимание, что текст должен содержать необходимые переводы строк.
Текст может содержать ссылки в формате <http://www.some.place/> и ссылки на электронную почту в формате <mail-tosome.body>, которые будут преобразовываться в нажимаемые ссылки.
Владелец: GtkAboutDialog
Флаги: Чтение / Запись
Значение по умолчанию: NULL
Свойство “translator-credits”
“translator-credits” char *
Благодарности переводчикам. Эта строка должна быть отмечена как требующая перевода. Строка может содержать адреса электронной почты и URL-адреса, которые будут отображаться как ссылки, см. введение.
Владелец: GtkAboutDialog
Флаги: Чтение / Запись
Значение по умолчанию: NULL
Свойство “version”
“version” char *
Версия программы.
Владелец: GtkAboutDialog
Флаги: Чтение / Запись
Значение по умолчанию: NULL
Свойство “website”
“website” char *
URL-адрес веб-сайта программы. Должен начинаться с "http://".
Владелец: GtkAboutDialog
Флаги: Чтение / Запись
Значение по умолчанию: NULL
Свойство “website-label”
“website-label” char *
Метка ссылки на веб-сайт программы.
Владелец: GtkAboutDialog
Флаги: Чтение / Запись
Значение по умолчанию: NULL
Свойство “wrap-license”
“wrap-license” gboolean
Указывает, следует ли форматировать текст в диалоговом окне лицензии.
Владелец: GtkAboutDialog
Флаги: Чтение / Запись
Значение по умолчанию: FALSE
Подробное описание сигналов
Сигнал “activate-link”
gboolean user_function (GtkAboutDialog *label, char *uri, gpointer user_data)
Сигнал, который генерируется для активации URI. Приложения могут подключиться к нему, чтобы переопределить стандартное поведение, которое заключается в вызове gtk_show_uri().
Параметры
label | Объект, на котором был сгенерирован сигнал | |
uri | активируемый URI | |
user_data | данные пользователя, заданные при подключении обработчика сигнала. |
Возвращаемое значение
TRUE если ссылка была активирована
Флаги: Run Last
© 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/GtkAboutDialog.html