gi-gtk-3.0.27: Gtk bindings

Copyright Will Thompson Iñaki García Etxebarria and Jonas Platte LGPL-2.1 Iñaki García Etxebarria (garetxe@gmail.com) None Haskell2010

Description

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 showUriOnWindow when a user clicks one. The behaviour can be overridden with the AboutDialog::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:

C code

GdkPixbuf *example_logo = gdk_pixbuf_new_from_file ("./logo.png", NULL);
"program-name", "ExampleCode",
"logo", example_logo,
NULL);

It is also possible to show a AboutDialog like any other Dialog, e.g. using dialogRun. In this case, you might need to know that the “Close” button returns the GTK_RESPONSE_CANCEL response id.

Synopsis

Exported types

Memory-managed wrapper type.

Constructors

Instances
 Source # Instance detailsDefined in GI.Gtk.Objects.AboutDialog Methods Source # Instance detailsDefined in GI.Gtk.Objects.AboutDialog Source # Instance detailsDefined in GI.Gtk.Objects.AboutDialog Source # Instance detailsDefined in GI.Gtk.Objects.AboutDialog Source # Instance detailsDefined in GI.Gtk.Objects.AboutDialog Source # Instance detailsDefined in GI.Gtk.Objects.AboutDialog Source # Instance detailsDefined in GI.Gtk.Objects.AboutDialog Source # Instance detailsDefined in GI.Gtk.Objects.AboutDialog Source # Instance detailsDefined in GI.Gtk.Objects.AboutDialog Source # Instance detailsDefined in GI.Gtk.Objects.AboutDialog

class GObject o => IsAboutDialog o Source #

Type class for types which can be safely cast to AboutDialog, for instance with toAboutDialog.

Instances
 Source # Instance detailsDefined in GI.Gtk.Objects.AboutDialog Source # Instance detailsDefined in GI.Gtk.Objects.AboutDialog

Cast to AboutDialog, for types for which this is known to be safe. For general casts, use castTo.

A convenience alias for Nothing :: Maybe AboutDialog.

Methods

Arguments

 :: (HasCallStack, MonadIO m, IsAboutDialog a) => a about: A AboutDialog -> Text sectionName: The name of the section -> [Text] people: The people who belong to that section -> m ()

Creates a new section in the Credits page.

Since: 3.4

getArtists

Arguments

 :: (HasCallStack, MonadIO m, IsAboutDialog a) => a about: a AboutDialog -> m [Text] Returns: A Nothing-terminated string array containing the artists. The array is owned by the about dialog and must not be modified.

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

Since: 2.6

getAuthors

Arguments

 :: (HasCallStack, MonadIO m, IsAboutDialog a) => a about: a AboutDialog -> m [Text] Returns: A Nothing-terminated string array containing the authors. The array is owned by the about dialog and must not be modified.

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

Since: 2.6

Arguments

 :: (HasCallStack, MonadIO m, IsAboutDialog a) => a about: a AboutDialog -> m Text Returns: The comments. The string is owned by the about dialog and must not be modified.

Since: 2.6

Arguments

 :: (HasCallStack, MonadIO m, IsAboutDialog a) => a about: a AboutDialog -> m Text Returns: The copyright string. The string is owned by the about dialog and must not be modified.

Since: 2.6

getDocumenters

Arguments

 :: (HasCallStack, MonadIO m, IsAboutDialog a) => a about: a AboutDialog -> m [Text] Returns: A Nothing-terminated string array containing the documenters. The array is owned by the about dialog and must not be modified.

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

Since: 2.6

Arguments

 :: (HasCallStack, MonadIO m, IsAboutDialog a) => a about: a AboutDialog -> m Text Returns: The license information. The string is owned by the about dialog and must not be modified.

Since: 2.6

Arguments

 :: (HasCallStack, MonadIO m, IsAboutDialog a) => a about: a AboutDialog -> m License Returns: a License value

Retrieves the license set using aboutDialogSetLicenseType

Since: 3.0

getLogo

Arguments

 :: (HasCallStack, MonadIO m, IsAboutDialog a) => a about: a AboutDialog -> m Pixbuf Returns: the pixbuf displayed as logo. The pixbuf is owned by the about dialog. If you want to keep a reference to it, you have to call objectRef on it.

Returns the pixbuf displayed as logo in the about dialog.

Since: 2.6

getLogoIconName

Arguments

 :: (HasCallStack, MonadIO m, IsAboutDialog a) => a about: a AboutDialog -> m Text Returns: the icon name displayed as logo. The string is owned by the dialog. If you want to keep a reference to it, you have to call strdup on it.

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

Since: 2.6

getProgramName

Arguments

 :: (HasCallStack, MonadIO m, IsAboutDialog a) => a about: a AboutDialog -> m Text Returns: The program name. The string is owned by the about dialog and must not be modified.

Returns the program name displayed in the about dialog.

Since: 2.12

getTranslatorCredits

Arguments

 :: (HasCallStack, MonadIO m, IsAboutDialog a) => a about: a AboutDialog -> m Text Returns: The translator credits string. The string is owned by the about dialog and must not be modified.

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

Since: 2.6

getVersion

Arguments

 :: (HasCallStack, MonadIO m, IsAboutDialog a) => a about: a AboutDialog -> m Text Returns: The version string. The string is owned by the about dialog and must not be modified.

Returns the version string.

Since: 2.6

getWebsite

Arguments

 :: (HasCallStack, MonadIO m, IsAboutDialog a) => a about: a AboutDialog -> m Text Returns: The website URL. The string is owned by the about dialog and must not be modified.

Returns the website URL.

Since: 2.6

getWebsiteLabel

Arguments

 :: (HasCallStack, MonadIO m, IsAboutDialog a) => a about: a AboutDialog -> m Text Returns: The label used for the website link. The string is owned by the about dialog and must not be modified.

Returns the label used for the website link.

Since: 2.6

Arguments

 :: (HasCallStack, MonadIO m, IsAboutDialog a) => a about: a AboutDialog -> m Bool Returns: True if the license text is wrapped

Returns whether the license text in about is automatically wrapped.

Since: 2.8

new

Arguments

 :: (HasCallStack, MonadIO m) => m AboutDialog Returns: a newly created AboutDialog

Creates a new AboutDialog.

Since: 2.6

setArtists

Arguments

 :: (HasCallStack, MonadIO m, IsAboutDialog a) => a about: a AboutDialog -> [Text] artists: a Nothing-terminated array of strings -> m ()

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

Since: 2.6

setAuthors

Arguments

 :: (HasCallStack, MonadIO m, IsAboutDialog a) => a about: a AboutDialog -> [Text] authors: a Nothing-terminated array of strings -> m ()

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

Since: 2.6

Arguments

 :: (HasCallStack, MonadIO m, IsAboutDialog a) => a about: a AboutDialog -> Maybe Text comments: a comments string -> m ()

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

Since: 2.6

Arguments

 :: (HasCallStack, MonadIO m, IsAboutDialog a) => a about: a AboutDialog -> Maybe Text copyright: the copyright string -> m ()

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

Since: 2.6

setDocumenters

Arguments

 :: (HasCallStack, MonadIO m, IsAboutDialog a) => a about: a AboutDialog -> [Text] documenters: a Nothing-terminated array of strings -> m ()

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

Since: 2.6

Arguments

 :: (HasCallStack, MonadIO m, IsAboutDialog a) => a about: a AboutDialog -> Maybe Text license: the license information or Nothing -> m ()

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

Since: 2.6

Arguments

 :: (HasCallStack, MonadIO m, IsAboutDialog a) => a about: a AboutDialog -> License licenseType: the type of license -> m ()

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

This function overrides the license set using aboutDialogSetLicense.

Since: 3.0

setLogo

Arguments

 :: (HasCallStack, MonadIO m, IsAboutDialog a, IsPixbuf b) => a about: a AboutDialog -> Maybe b logo: a Pixbuf, or Nothing -> m ()

Sets the pixbuf to be displayed as logo in the about dialog. If it is Nothing, the default window icon set with windowSetDefaultIcon will be used.

Since: 2.6

setLogoIconName

Arguments

 :: (HasCallStack, MonadIO m, IsAboutDialog a) => a about: a AboutDialog -> Maybe Text iconName: an icon name, or Nothing -> m ()

Sets the pixbuf to be displayed as logo in the about dialog. If it is Nothing, the default window icon set with windowSetDefaultIcon will be used.

Since: 2.6

setProgramName

Arguments

 :: (HasCallStack, MonadIO m, IsAboutDialog a) => a about: a AboutDialog -> Text name: the program name -> m ()

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

Since: 2.12

setTranslatorCredits

Arguments

 :: (HasCallStack, MonadIO m, IsAboutDialog a) => a about: a AboutDialog -> Maybe Text translatorCredits: the translator credits -> m ()

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

The intended use for this string is to display the translator of the language which is currently used in the user interface. Using gettext(), a simple way to achieve that is to mark the string for translation:

C code

GtkWidget *about = gtk_about_dialog_new ();
_("translator-credits"));

It is a good idea to use the customary msgid “translator-credits” for this purpose, since translators will already know the purpose of that msgid, and since AboutDialog will detect if “translator-credits” is untranslated and hide the tab.

Since: 2.6

setVersion

Arguments

 :: (HasCallStack, MonadIO m, IsAboutDialog a) => a about: a AboutDialog -> Maybe Text version: the version string -> m ()

Sets the version string to display in the about dialog.

Since: 2.6

setWebsite

Arguments

 :: (HasCallStack, MonadIO m, IsAboutDialog a) => a about: a AboutDialog -> Maybe Text website: a URL string starting with "http://" -> m ()

Sets the URL to use for the website link.

Since: 2.6

setWebsiteLabel

Arguments

 :: (HasCallStack, MonadIO m, IsAboutDialog a) => a about: a AboutDialog -> Text websiteLabel: the label used for the website link -> m ()

Sets the label to be used for the website link.

Since: 2.6

Arguments

 :: (HasCallStack, MonadIO m, IsAboutDialog a) => a about: a AboutDialog -> Bool wrapLicense: whether to wrap the license -> m ()

Sets whether the license text in about is automatically wrapped.

Since: 2.8

Properties

artists

The people who contributed artwork to the program, as a Nothing-terminated array of strings. Each string may contain email addresses and URLs, which will be displayed as links, see the introduction for more details.

Since: 2.6

Construct a GValueConstruct with valid value for the “artists” property. This is rarely needed directly, but it is used by new.

Get the value of the “artists” property. When overloading is enabled, this is equivalent to

get aboutDialog #artists


Set the value of the “artists” property. When overloading is enabled, this is equivalent to

set aboutDialog [ #artists := value ]


authors

The authors of the program, as a Nothing-terminated array of strings. Each string may contain email addresses and URLs, which will be displayed as links, see the introduction for more details.

Since: 2.6

Construct a GValueConstruct with valid value for the “authors” property. This is rarely needed directly, but it is used by new.

Get the value of the “authors” property. When overloading is enabled, this is equivalent to

get aboutDialog #authors


Set the value of the “authors” property. When overloading is enabled, this is equivalent to

set aboutDialog [ #authors := value ]


Comments about the program. This string is displayed in a label in the main dialog, thus it should be a short explanation of the main purpose of the program, not a detailed list of features.

Since: 2.6

Set the value of the “comments” property to Nothing. When overloading is enabled, this is equivalent to

clear #comments


Construct a GValueConstruct with valid value for the “comments” property. This is rarely needed directly, but it is used by new.

Get the value of the “comments” property. When overloading is enabled, this is equivalent to

get aboutDialog #comments


Set the value of the “comments” property. When overloading is enabled, this is equivalent to

set aboutDialog [ #comments := value ]


Since: 2.6

Set the value of the “copyright” property to Nothing. When overloading is enabled, this is equivalent to

clear #copyright


Construct a GValueConstruct with valid value for the “copyright” property. This is rarely needed directly, but it is used by new.

Get the value of the “copyright” property. When overloading is enabled, this is equivalent to

get aboutDialog #copyright


Set the value of the “copyright” property. When overloading is enabled, this is equivalent to

set aboutDialog [ #copyright := value ]


documenters

The people documenting the program, as a Nothing-terminated array of strings. Each string may contain email addresses and URLs, which will be displayed as links, see the introduction for more details.

Since: 2.6

Construct a GValueConstruct with valid value for the “documenters” property. This is rarely needed directly, but it is used by new.

Get the value of the “documenters” property. When overloading is enabled, this is equivalent to

get aboutDialog #documenters


Set the value of the “documenters” property. When overloading is enabled, this is equivalent to

set aboutDialog [ #documenters := value ]


The license of the program. This string is displayed in a text view in a secondary dialog, therefore it is fine to use a long multi-paragraph text. Note that the text is only wrapped in the text view if the "wrap-license" property is set to True; otherwise the text itself must contain the intended linebreaks. When setting this property to a non-Nothing value, the AboutDialog:license-type property is set to LicenseCustom as a side effect.

Since: 2.6

Set the value of the “license” property to Nothing. When overloading is enabled, this is equivalent to

clear #license


Construct a GValueConstruct with valid value for the “license” property. This is rarely needed directly, but it is used by new.

Get the value of the “license” property. When overloading is enabled, this is equivalent to

get aboutDialog #license


Set the value of the “license” property. When overloading is enabled, this is equivalent to

set aboutDialog [ #license := value ]


The license of the program, as a value of the GtkLicense enumeration.

The AboutDialog will automatically fill out a standard disclaimer and link the user to the appropriate online resource for the license text.

If LicenseUnknown is used, the link used will be the same specified in the AboutDialog:website property.

If LicenseCustom is used, the current contents of the AboutDialog:license property are used.

For any other License value, the contents of the AboutDialog:license property are also set by this property as a side effect.

Since: 3.0

Construct a GValueConstruct with valid value for the “license-type” property. This is rarely needed directly, but it is used by new.

Get the value of the “license-type” property. When overloading is enabled, this is equivalent to

get aboutDialog #licenseType


Set the value of the “license-type” property. When overloading is enabled, this is equivalent to

set aboutDialog [ #licenseType := value ]


logo

A logo for the about box. If it is Nothing, the default window icon set with windowSetDefaultIcon will be used.

Since: 2.6

:: (MonadIO m, IsAboutDialog o) => o -> m () Source #

Set the value of the “logo” property to Nothing. When overloading is enabled, this is equivalent to

clear #logo


:: (IsAboutDialog o, IsPixbuf a) => a -> IO (GValueConstruct o) Source #

Construct a GValueConstruct with valid value for the “logo” property. This is rarely needed directly, but it is used by new.

:: (MonadIO m, IsAboutDialog o) => o -> m Pixbuf Source #

Get the value of the “logo” property. When overloading is enabled, this is equivalent to

get aboutDialog #logo


:: (MonadIO m, IsAboutDialog o, IsPixbuf a) => o -> a -> m () Source #

Set the value of the “logo” property. When overloading is enabled, this is equivalent to

set aboutDialog [ #logo := value ]


logoIconName

A named icon to use as the logo for the about box. This property overrides the AboutDialog:logo property.

Since: 2.6

Set the value of the “logo-icon-name” property to Nothing. When overloading is enabled, this is equivalent to

clear #logoIconName


Construct a GValueConstruct with valid value for the “logo-icon-name” property. This is rarely needed directly, but it is used by new.

Get the value of the “logo-icon-name” property. When overloading is enabled, this is equivalent to

get aboutDialog #logoIconName


Set the value of the “logo-icon-name” property. When overloading is enabled, this is equivalent to

set aboutDialog [ #logoIconName := value ]


programName

The name of the program. If this is not set, it defaults to getApplicationName.

Since: 2.12

Construct a GValueConstruct with valid value for the “program-name” property. This is rarely needed directly, but it is used by new.

Get the value of the “program-name” property. When overloading is enabled, this is equivalent to

get aboutDialog #programName


Set the value of the “program-name” property. When overloading is enabled, this is equivalent to

set aboutDialog [ #programName := value ]


translatorCredits

Credits to the translators. This string should be marked as translatable. The string may contain email addresses and URLs, which will be displayed as links, see the introduction for more details.

Since: 2.6

Set the value of the “translator-credits” property to Nothing. When overloading is enabled, this is equivalent to

clear #translatorCredits


Construct a GValueConstruct with valid value for the “translator-credits” property. This is rarely needed directly, but it is used by new.

Get the value of the “translator-credits” property. When overloading is enabled, this is equivalent to

get aboutDialog #translatorCredits


Set the value of the “translator-credits” property. When overloading is enabled, this is equivalent to

set aboutDialog [ #translatorCredits := value ]


version

The version of the program.

Since: 2.6

Set the value of the “version” property to Nothing. When overloading is enabled, this is equivalent to

clear #version


Construct a GValueConstruct with valid value for the “version” property. This is rarely needed directly, but it is used by new.

Get the value of the “version” property. When overloading is enabled, this is equivalent to

get aboutDialog #version


Set the value of the “version” property. When overloading is enabled, this is equivalent to

set aboutDialog [ #version := value ]


website

The URL for the link to the website of the program. This should be a string starting with "http://.

Since: 2.6

Set the value of the “website” property to Nothing. When overloading is enabled, this is equivalent to

clear #website


Construct a GValueConstruct with valid value for the “website” property. This is rarely needed directly, but it is used by new.

Get the value of the “website” property. When overloading is enabled, this is equivalent to

get aboutDialog #website


Set the value of the “website” property. When overloading is enabled, this is equivalent to

set aboutDialog [ #website := value ]


websiteLabel

The label for the link to the website of the program.

Since: 2.6

Construct a GValueConstruct with valid value for the “website-label” property. This is rarely needed directly, but it is used by new.

Get the value of the “website-label” property. When overloading is enabled, this is equivalent to

get aboutDialog #websiteLabel


Set the value of the “website-label” property. When overloading is enabled, this is equivalent to

set aboutDialog [ #websiteLabel := value ]


Whether to wrap the text in the license dialog.

Since: 2.8

Construct a GValueConstruct with valid value for the “wrap-license” property. This is rarely needed directly, but it is used by new.

Get the value of the “wrap-license” property. When overloading is enabled, this is equivalent to

get aboutDialog #wrapLicense


Set the value of the “wrap-license” property. When overloading is enabled, this is equivalent to

set aboutDialog [ #wrapLicense := value ]


Signals

Arguments

 = Text uri: the URI that is activated -> IO Bool Returns: True if the link has been activated

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

Since: 2.24

type C_AboutDialogActivateLinkCallback = Ptr () -> CString -> Ptr () -> IO CInt Source #

Type for the callback on the (unwrapped) C side.

Connect a signal handler for the “activate-link” signal, to be run after the default handler. When overloading is enabled, this is equivalent to

after aboutDialog #activateLink callback


Wrap the callback into a Closure.

Generate a function pointer callable from C code, from a C_AboutDialogActivateLinkCallback.

A convenience synonym for Nothing :: Maybe AboutDialogActivateLinkCallback.

Connect a signal handler for the “activate-link” signal, to be run before the default handler. When overloading is enabled, this is equivalent to

on aboutDialog #activateLink callback


Wrap a AboutDialogActivateLinkCallback into a C_AboutDialogActivateLinkCallback.