AboutDialog

The GtkAboutDialog offers a simple way to display information about a program like its logo, name, copyright, website and license. It is also possible to give credits to the authors, documenters, translators and artists who have worked on the program. An about dialog is typically opened when the user selects the About option from the Help menu. All parts of the dialog are optional.

About dialogs often contain links and email addresses. GtkAboutDialog displays these as clickable links. By default, it calls gtk_show_uri_on_window() when a user clicks one. The behaviour can be overridden with the #GtkAboutDialog::activate-link signal.

To specify a person with an email address, use a string like "Edgar Allan Poe <edgar\@poe.com>". To specify a website with a title, use a string like "GTK+ team http://www.gtk.org".

To make constructing a GtkAboutDialog as convenient as possible, you can use the function gtk_show_about_dialog() which constructs and shows a dialog and keeps it around so that it can be shown again.

Note that GTK+ sets a default title of _("About %s") on the dialog window (where \%s is replaced by the name of the application, but in order to ensure proper translation of the title, applications should set the title property explicitly when constructing a GtkAboutDialog, as shown in the following example: |[<!-- language="C" --> GdkPixbuf *example_logo = gdk_pixbuf_new_from_file ("./logo.png", NULL); gtk_show_about_dialog (NULL, "program-name", "ExampleCode", "logo", example_logo, "title", _("About ExampleCode"), NULL); ]|

It is also possible to show a #GtkAboutDialog like any other #GtkDialog, e.g. using gtk_dialog_run(). In this case, you might need to know that the “Close” button returns the #GTK_RESPONSE_CANCEL response id.

class AboutDialog : Dialog {}

Constructors

this
this(GtkAboutDialog* gtkAboutDialog, bool ownedRef)

Sets our main struct and passes it to the parent class.

this
this()

Creates a new #GtkAboutDialog.

Members

Classes

OnActivateLinkDelegateWrapper
class OnActivateLinkDelegateWrapper
Undocumented in source.

Functions

addCreditSection
void addCreditSection(string sectionName, string[] people)

Creates a new section in the Credits page.

addOnActivateLink
gulong addOnActivateLink(bool delegate(string, AboutDialog) dlg, ConnectFlags connectFlags)

The signal which gets emitted to activate a URI. Applications may connect to it to override the default behaviour, which is to call gtk_show_uri_on_window().

getAboutDialogStruct
GtkAboutDialog* getAboutDialogStruct(bool transferOwnership)

Get the main Gtk struct

getArtists
string[] getArtists()

Returns the string which are displayed in the artists tab of the secondary credits dialog.

getAuthors
string[] getAuthors()

Returns the string which are displayed in the authors tab of the secondary credits dialog.

getComments
string getComments()

Returns the comments string.

getCopyright
string getCopyright()

Returns the copyright string.

getDocumenters
string[] getDocumenters()

Returns the string which are displayed in the documenters tab of the secondary credits dialog.

getLicense
string getLicense()

Returns the license information.

getLicenseType
GtkLicense getLicenseType()

Retrieves the license set using gtk_about_dialog_set_license_type()

getLogo
Pixbuf getLogo()

Returns the pixbuf displayed as logo in the about dialog.

getLogoIconName
string getLogoIconName()

Returns the icon name displayed as logo in the about dialog.

getProgramName
string getProgramName()

Returns the program name displayed in the about dialog.

getStruct
void* getStruct()

the main Gtk struct as a void*

getTranslatorCredits
string getTranslatorCredits()

Returns the translator credits string which is displayed in the translators tab of the secondary credits dialog.

getVersion
string getVersion()

Returns the version string.

getWebsite
string getWebsite()

Returns the website URL.

getWebsiteLabel
string getWebsiteLabel()

Returns the label used for the website link.

getWrapLicense
bool getWrapLicense()

Returns whether the license text in @about is automatically wrapped.

setArtists
void setArtists(string[] artists)

Sets the strings which are displayed in the artists tab of the secondary credits dialog.

setAuthors
void setAuthors(string[] authors)

Sets the strings which are displayed in the authors tab of the secondary credits dialog.

setComments
void setComments(string comments)

Sets the comments string to display in the about dialog. This should be a short string of one or two lines.

setCopyright
void setCopyright(string copyright)

Sets the copyright string to display in the about dialog. This should be a short string of one or two lines.

setDocumenters
void setDocumenters(string[] documenters)

Sets the strings which are displayed in the documenters tab of the secondary credits dialog.

setLicense
void setLicense(string license)

Sets the license information to be displayed in the secondary license dialog. If @license is %NULL, the license button is hidden.

setLicenseType
void setLicenseType(GtkLicense licenseType)

Sets the license of the application showing the @about dialog from a list of known licenses.

setLogo
void setLogo(Pixbuf logo)

Sets the pixbuf to be displayed as logo in the about dialog. If it is %NULL, the default window icon set with gtk_window_set_default_icon() will be used.

setLogoIconName
void setLogoIconName(string iconName)

Sets the pixbuf to be displayed as logo in the about dialog. If it is %NULL, the default window icon set with gtk_window_set_default_icon() will be used.

setProgramName
void setProgramName(string name)

Sets the name to display in the about dialog. If this is not set, it defaults to g_get_application_name().

setStruct
void setStruct(GObject* obj)
Undocumented in source. Be warned that the author may not have intended to support it.
setTranslatorCredits
void setTranslatorCredits(string translatorCredits)

Sets the translator credits string which is displayed in the translators tab of the secondary credits dialog.

setVersion
void setVersion(string versio)

Sets the version string to display in the about dialog.

setWebsite
void setWebsite(string website)

Sets the URL to use for the website link.

setWebsiteLabel
void setWebsiteLabel(string websiteLabel)

Sets the label to be used for the website link.

setWrapLicense
void setWrapLicense(bool wrapLicense)

Sets whether the license text in @about is automatically wrapped.

Static functions

callBackActivateLink
int callBackActivateLink(GtkAboutDialog* aboutdialogStruct, char* uri, OnActivateLinkDelegateWrapper wrapper)
Undocumented in source. Be warned that the author may not have intended to support it.
callBackActivateLinkDestroy
void callBackActivateLinkDestroy(OnActivateLinkDelegateWrapper wrapper, GClosure* closure)
Undocumented in source. Be warned that the author may not have intended to support it.
getType
GType getType()

Variables

gtkAboutDialog
GtkAboutDialog* gtkAboutDialog;

the main Gtk struct

onActivateLinkListeners
OnActivateLinkDelegateWrapper[] onActivateLinkListeners;
Undocumented in source.

Inherited Members

From Dialog

gtkDialog
GtkDialog* gtkDialog;

the main Gtk struct

getDialogStruct
GtkDialog* getDialogStruct(bool transferOwnership)

Get the main Gtk struct

getStruct
void* getStruct()

the main Gtk struct as a void*

setStruct
void setStruct(GObject* obj)
Undocumented in source. Be warned that the author may not have intended to support it.
addButton
Button addButton(StockID stockID, int responseId)
addButtons
void addButtons(string[] buttonsText, ResponseType[] responses)
addButtons
void addButtons(StockID[] stockIDs, ResponseType[] responses)
getActionArea
HButtonBox getActionArea()

Returns the action area of dialog.

getContentArea
VBox getContentArea()

Returns the content area of dialog.

getType
GType getType()
addActionWidget
void addActionWidget(Widget child, int responseId)

Adds an activatable widget to the action area of a #GtkDialog, connecting a signal handler that will emit the #GtkDialog::response signal on the dialog when the widget is activated. The widget is appended to the end of the dialog’s action area. If you want to add a non-activatable widget, simply pack it into the @action_area field of the #GtkDialog struct.

addButton
Widget addButton(string buttonText, int responseId)

Adds a button with the given text and sets things up so that clicking the button will emit the #GtkDialog::response signal with the given @response_id. The button is appended to the end of the dialog’s action area. The button widget is returned, but usually you don’t need it.

getHeaderBar
Widget getHeaderBar()

Returns the header bar of @dialog. Note that the headerbar is only used by the dialog if the #GtkDialog:use-header-bar property is %TRUE.

getResponseForWidget
int getResponseForWidget(Widget widget)

Gets the response id of a widget in the action area of a dialog.

getWidgetForResponse
Widget getWidgetForResponse(int responseId)

Gets the widget button that uses the given response ID in the action area of a dialog.

response
void response(int responseId)

Emits the #GtkDialog::response signal with the given response ID. Used to indicate that the user has responded to the dialog in some way; typically either you or gtk_dialog_run() will be monitoring the ::response signal and take appropriate action.

run
int run()

Blocks in a recursive main loop until the @dialog either emits the #GtkDialog::response signal, or is destroyed. If the dialog is destroyed during the call to gtk_dialog_run(), gtk_dialog_run() returns #GTK_RESPONSE_NONE. Otherwise, it returns the response ID from the ::response signal emission.

setAlternativeButtonOrder
void setAlternativeButtonOrder(int[] newOrder)

Sets an alternative button order. If the #GtkSettings:gtk-alternative-button-order setting is set to %TRUE, the dialog buttons are reordered according to the order of the response ids in @new_order.

setDefaultResponse
void setDefaultResponse(int responseId)

Sets the last widget in the dialog’s action area with the given @response_id as the default widget for the dialog. Pressing “Enter” normally activates the default widget.

setResponseSensitive
void setResponseSensitive(int responseId, bool setting)

Calls gtk_widget_set_sensitive (widget, @setting) for each widget in the dialog’s action area with the given @response_id. A convenient way to sensitize/desensitize dialog buttons.

OnCloseDelegateWrapper
class OnCloseDelegateWrapper
Undocumented in source.
onCloseListeners
OnCloseDelegateWrapper[] onCloseListeners;
Undocumented in source.
addOnClose
gulong addOnClose(void delegate(Dialog) dlg, ConnectFlags connectFlags)

The ::close signal is a [keybinding signal]GtkBindingSignal which gets emitted when the user uses a keybinding to close the dialog.

callBackClose
void callBackClose(GtkDialog* dialogStruct, OnCloseDelegateWrapper wrapper)
Undocumented in source. Be warned that the author may not have intended to support it.
callBackCloseDestroy
void callBackCloseDestroy(OnCloseDelegateWrapper wrapper, GClosure* closure)
Undocumented in source. Be warned that the author may not have intended to support it.
OnResponseDelegateWrapper
class OnResponseDelegateWrapper
Undocumented in source.
onResponseListeners
OnResponseDelegateWrapper[] onResponseListeners;
Undocumented in source.
addOnResponse
gulong addOnResponse(void delegate(int, Dialog) dlg, ConnectFlags connectFlags)

Emitted when an action widget is clicked, the dialog receives a delete event, or the application programmer calls gtk_dialog_response(). On a delete event, the response ID is #GTK_RESPONSE_DELETE_EVENT. Otherwise, it depends on which action widget was clicked.

callBackResponse
void callBackResponse(GtkDialog* dialogStruct, int responseId, OnResponseDelegateWrapper wrapper)
Undocumented in source. Be warned that the author may not have intended to support it.
callBackResponseDestroy
void callBackResponseDestroy(OnResponseDelegateWrapper wrapper, GClosure* closure)
Undocumented in source. Be warned that the author may not have intended to support it.
alternativeDialogButtonOrder
bool alternativeDialogButtonOrder(Screen screen)

Returns %TRUE if dialogs are expected to use an alternative button order on the screen @screen. See gtk_dialog_set_alternative_button_order() for more details about alternative button order.

Meta