adw.about_dialog
Module for [AboutDialog] class
Types 3
A dialog showing information about the application.
an about dialog is typically opened when the user activates the About … item in the application's primary menu. All parts of the dialog are optional.
Main page
adw.about_dialog.AboutDialog prominently displays the application's icon, name, developer name and version. They can be set with the adw.about_dialog.AboutDialog.applicationIcon, adw.about_dialog.AboutDialog.applicationName, adw.about_dialog.AboutDialog.developerName and adw.about_dialog.AboutDialog.version_ respectively.
What's New
adw.about_dialog.AboutDialog provides a way for applications to display their release notes, set with the adw.about_dialog.AboutDialog.releaseNotes property.
Release notes are formatted the same way as AppStream descriptions.
The supported formatting options are:
- Paragraph (
<p>) - Ordered list (
<ol>), with list items (<li>) - Unordered list (
<ul>), with list items (<li>)
Within paragraphs and list items, emphasis (<em>) and inline code (<code>) text styles are supported. The emphasis is rendered in italic, while inline code is shown in a monospaced font.
Any text outside paragraphs or list items is ignored.
Nested lists are not supported.
Only one version can be shown at a time. By default, the displayed version number matches adw.about_dialog.AboutDialog.version_. Use adw.about_dialog.AboutDialog.releaseNotesVersion to override it.
Details
The Details page displays the application comments and links.
The comments can be set with the adw.about_dialog.AboutDialog.comments property. Unlike gtk.about_dialog.AboutDialog.comments, this string can be long and detailed. It can also contain links and Pango markup.
To set the application website, use adw.about_dialog.AboutDialog.website. To add extra links below the website, use adw.about_dialog.AboutDialog.addLink.
If the Details page doesn't have any other content besides website, the website will be displayed on the main page instead.
Troubleshooting
adw.about_dialog.AboutDialog displays the following two links on the main page:
- Support Questions, set with the adw.about_dialog.AboutDialog.supportUrl property,
- Report an Issue, set with the adw.about_dialog.AboutDialog.issueUrl property.
Additionally, applications can provide debugging information. It will be shown separately on the Troubleshooting page. Use the adw.about_dialog.AboutDialog.debugInfo property to specify it.
It's intended to be attached to issue reports when reporting issues against the application. As such, it cannot contain markup or links.
adw.about_dialog.AboutDialog provides a quick way to save debug information to a file. When saving, adw.about_dialog.AboutDialog.debugInfoFilename would be used as the suggested filename.
Credits and Acknowledgements
The Credits page has the following default sections:
- Developers, set with the adw.about_dialog.AboutDialog.developers property,
- Designers, set with the adw.about_dialog.AboutDialog.designers property,
- Artists, set with the adw.about_dialog.AboutDialog.artists property,
- Documenters, set with the adw.about_dialog.AboutDialog.documenters property,
- Translators, set with the adw.about_dialog.AboutDialog.translatorCredits property.
When setting translator credits, use the strings "translator-credits" or "translator_credits" and mark them as translatable.
The default sections that don't contain any names won't be displayed.
The Credits page can also contain an arbitrary number of extra sections below the default ones. Use adw.about_dialog.AboutDialog.addCreditSection to add them.
The Acknowledgements page can be used to acknowledge additional people and organizations for their non-development contributions. Use adw.about_dialog.AboutDialog.addAcknowledgementSection to add sections to it. For example, it can be used to list backers in a crowdfunded project or to give special thanks.
Each of the people or organizations can have an email address or a website specified. To add a email address, use a string like Edgar Allan Poe <edgar@poe.com>. To specify a website with a title, use a string like The GNOME Project https://www.gnome.org:
Legal
The Legal page displays the copyright and licensing information for the application and other modules.
The copyright string is set with the adw.about_dialog.AboutDialog.copyright property and should be a short string of one or two lines, for example: © 2022 Example.
Licensing information can be quickly set from a list of known licenses with the adw.about_dialog.AboutDialog.licenseType property. If the application's license is not in the list, adw.about_dialog.AboutDialog.license can be used instead.
To add information about other modules, such as application dependencies or data, use adw.about_dialog.AboutDialog.addLegalSection.
Constructing
To make constructing an adw.about_dialog.AboutDialog as convenient as possible, you can use the function func@show_about_dialog which constructs and shows a dialog.
static void
show_about (GtkApplication *app)
{
const char *developers[] = {
"Angela Avery",
NULL
};
const char *designers[] = {
"GNOME Design Team",
NULL
};
adw_show_about_dialog (GTK_WIDGET (gtk_application_get_active_window (app)),
"application-name", _("Example"),
"application-icon", "org.example.App",
"version", "1.2.3",
"copyright", "© 2022 Angela Avery",
"issue-url", "https://gitlab.gnome.org/example/example/-/issues/new",
"license-type", GTK_LICENSE_GPL_3_0,
"developers", developers,
"designers", designers,
"translator-credits", _("translator-credits"),
NULL);
}CSS nodes
adw.about_dialog.AboutDialog has a main CSS node with the name dialog and the style class .about.
AboutDialogGidBuilder builder() static nothrowGet builder for [adw.about_dialog.AboutDialog] Returns: New builder objectstring applicationIcon() @property nothrowGet `applicationIcon` property. Returns: The name of the application icon.void applicationIcon(string propval) @property nothrowSet `applicationIcon` property. Params: propval = The name of the application icon.string applicationName() @property nothrowGet `applicationName` property. Returns: The name of the application.void applicationName(string propval) @property nothrowSet `applicationName` property. Params: propval = The name of the application.string comments() @property nothrowGet `comments` property. Returns: The comments about the application.void comments(string propval) @property nothrowSet `comments` property. Params: propval = The comments about the application.void copyright(string propval) @property nothrowSet `copyright` property. Params: propval = The copyright information.void debugInfo(string propval) @property nothrowSet `debugInfo` property. Params: propval = The debug information.string debugInfoFilename() @property nothrowGet `debugInfoFilename` property. Returns: The debug information filename.void debugInfoFilename(string propval) @property nothrowSet `debugInfoFilename` property. Params: propval = The debug information filename.void developerName(string propval) @property nothrowSet `developerName` property. Params: propval = The developer name.string issueUrl() @property nothrowGet `issueUrl` property. Returns: The URL for the application's issue tracker.void issueUrl(string propval) @property nothrowSet `issueUrl` property. Params: propval = The URL for the application's issue tracker.void license(string propval) @property nothrowSet `license` property. Params: propval = The license text.gtk.types.License licenseType() @property nothrowGet `licenseType` property. Returns: The license type.void licenseType(gtk.types.License propval) @property nothrowSet `licenseType` property. Params: propval = The license type.string releaseNotes() @property nothrowGet `releaseNotes` property. Returns: The release notes of the application.void releaseNotes(string propval) @property nothrowSet `releaseNotes` property. Params: propval = The release notes of the application.string releaseNotesVersion() @property nothrowGet `releaseNotesVersion` property. Returns: The version described by the application's release notes.void releaseNotesVersion(string propval) @property nothrowSet `releaseNotesVersion` property. Params: propval = The version described by the application's release notes.string supportUrl() @property nothrowGet `supportUrl` property. Returns: The URL of the application's support page.void supportUrl(string propval) @property nothrowSet `supportUrl` property. Params: propval = The URL of the application's support page.string translatorCredits() @property nothrowGet `translatorCredits` property. Returns: The translator credits string.void translatorCredits(string propval) @property nothrowSet `translatorCredits` property. Params: propval = The translator credits string.string version_() @property nothrowGet `version_` property. Returns: The version of the application.void version_(string propval) @property nothrowSet `version_` property. Params: propval = The version of the application.string website() @property nothrowGet `website` property. Returns: The URL of the application's website.void website(string propval) @property nothrowSet `website` property. Params: propval = The URL of the application's website.adw.about_dialog.AboutDialog newFromAppdata(string resourcePath, string releaseNotesVersion = null) static nothrowCreates a new [adw.about_dialog.AboutDialog] using AppStream metadata.void addAcknowledgementSection(string name, string[] people) nothrowAdds a section to the Acknowledgements page.void addCreditSection(string name, string[] people) nothrowAdds an extra section to the Credits page.void addLegalSection(string title, string copyright, gtk.types.License licenseType, string license = null) nothrowAdds an extra section to the Legal page.string getApplicationIcon() nothrowGets the name of the application icon for self. Returns: the application icon namestring getApplicationName() nothrowGets the application name for self. Returns: the application namestring[] getArtists() nothrowGets the list of artists of the application. Returns: The list of artistsstring getCopyright() nothrowGets the copyright information for self. Returns: the copyright informationstring getDebugInfoFilename() nothrowGets the debug information filename for self. Returns: the debug information filenamestring[] getDesigners() nothrowGets the list of designers of the application. Returns: The list of designersstring[] getDevelopers() nothrowGets the list of developers of the application. Returns: The list of developersstring[] getDocumenters() nothrowGets the list of documenters of the application. Returns: The list of documentersstring getReleaseNotesVersion() nothrowGets the version described by the application's release notes. Returns: the release notes versionstring getSupportUrl() nothrowGets the URL of the support page for self. Returns: the support page URLstring getTranslatorCredits() nothrowGets the translator credits string. Returns: The translator credits stringvoid setApplicationIcon(string applicationIcon) nothrowSets the name of the application icon for self.void setDevelopers(string[] developers = null) nothrowSets the list of developers of the application.void setDocumenters(string[] documenters = null) nothrowSets the list of documenters of the application.void setLicenseType(gtk.types.License licenseType) nothrowSets the license for self from a list of known licenses.void setReleaseNotesVersion(string version_) nothrowSets the version described by the application's release notes.gulong connectActivateLink(T)(T callback, Flag!"After" after = No.After) if (isCallable!T
&& is(ReturnType!T == bool)
&& (Parameters!T.length < 1 || (ParameterStorageClassTuple!T[0] == ParameterStorageClass.none && is(Parameters!T[0] == string)))
&& (Parameters!T.length < 2 || (ParameterStorageClassTuple!T[1] == ParameterStorageClass.none && is(Parameters!T[1] : adw.about_dialog.AboutDialog)))
&& Parameters!T.length < 3) nothrowConnect to `ActivateLink` signal.Fluent builder implementation template for adw.about_dialog.AboutDialog
T applicationIcon(string propval) nothrowSet `applicationIcon` property. Params: propval = The name of the application icon.T applicationName(string propval) nothrowSet `applicationName` property. Params: propval = The name of the application.T comments(string propval) nothrowSet `comments` property. Params: propval = The comments about the application.T copyright(string propval) nothrowSet `copyright` property. Params: propval = The copyright information.T debugInfo(string propval) nothrowSet `debugInfo` property. Params: propval = The debug information.T debugInfoFilename(string propval) nothrowSet `debugInfoFilename` property. Params: propval = The debug information filename.T developerName(string propval) nothrowSet `developerName` property. Params: propval = The developer name.T issueUrl(string propval) nothrowSet `issueUrl` property. Params: propval = The URL for the application's issue tracker.T licenseType(gtk.types.License propval) nothrowSet `licenseType` property. Params: propval = The license type.T releaseNotes(string propval) nothrowSet `releaseNotes` property. Params: propval = The release notes of the application.T releaseNotesVersion(string propval) nothrowSet `releaseNotesVersion` property. Params: propval = The version described by the application's release notes.T supportUrl(string propval) nothrowSet `supportUrl` property. Params: propval = The URL of the application's support page.T translatorCredits(string propval) nothrowSet `translatorCredits` property. Params: propval = The translator credits string.T version_(string propval) nothrowSet `version_` property. Params: propval = The version of the application.T website(string propval) nothrowSet `website` property. Params: propval = The URL of the application's website.Fluent builder for adw.about_dialog.AboutDialog