gtk/docs/reference/gtk/migrating-GtkAboutDialog.sgml
Stefan Kost 804a06b859 Bug 540967 – docs build slowly because of entities
* gtk/building.sgml:
	* gtk/changes-1.2.sgml:
	* gtk/changes-2.0.sgml:
	* gtk/compiling.sgml:
	* gtk/directfb.sgml:
	* gtk/glossary.xml:
	* gtk/gtk-docs.sgml:
	* gtk/gtk-query-immodules-2.0.xml:
	* gtk/gtk-update-icon-cache.xml:
	* gtk/migrating-GtkAboutDialog.sgml:
	* gtk/migrating-GtkAction.sgml:
	* gtk/migrating-GtkAssistant.sgml:
	* gtk/migrating-GtkBuilder.sgml:
	* gtk/migrating-GtkColorButton.sgml:
	* gtk/migrating-GtkComboBox.sgml:
	* gtk/migrating-GtkFileChooser.sgml:
	* gtk/migrating-GtkIconView.sgml:
	* gtk/migrating-GtkLinkButton.sgml:
	* gtk/migrating-GtkRecentChooser.sgml:
	* gtk/migrating-GtkTooltip.sgml:
	* gtk/migrating-checklist.sgml:
	* gtk/osx.sgml:
	* gtk/other_software.sgml:
	* gtk/question_index.sgml:
	* gtk/resources.sgml:
	* gtk/running.sgml:
	* gtk/text_widget.sgml:
	* gtk/tree_widget.sgml:
	* gtk/visual_index.xml:
	* gtk/windows.sgml:
	* gtk/x11.sgml:
	  Use xi:include to speed up doc-build. Remove some unused entities.


svn path=/trunk/; revision=20812
2008-07-10 03:27:56 +00:00

99 lines
3.5 KiB
XML

<?xml version="1.0"?>
<!DOCTYPE chapter PUBLIC "-//OASIS//DTD DocBook XML V4.3//EN"
"http://www.oasis-open.org/docbook/xml/4.3/docbookx.dtd" [
]>
<chapter id="gtk-migrating-GtkAboutDialog">
<title>Migrating from GnomeAbout to GtkAboutDialog</title>
<para>
Since version 2.6, GTK+ provides the #GtkAboutDialog widget as a
replacement for the <structname>GnomeAbout</structname> dialog in
the libgnomeui library.
</para>
<para>
#GtkAboutDialog supports all features found in <structname>GnomeAbout</structname>.
The <structname>GtkAboutDialog</structname> API is bigger, since it follows
the GTK+ policy to have getters and setters for all widget properties,
but it isn't much more complex than <structname>GnomeAbout</structname>.
</para>
<para>
To convert an application that uses <structname>GnomeAbout</structname> to
<structname>GtkAboutDialog</structname>, as a first step, replace calls
like
<informalexample><programlisting>
const gchar *documentors[] = {
"Documenter 1",
"Documenter 2",
NULL
};
const gchar *documentors[] = {
"Author 1",
"Author 2",
NULL
};
GtkWidget *about = gnome_about_new ("GNOME Test Program", VERSION,
"(C) 1998-2001 The Free Software Foundation",
"Program to display GNOME functions.",
authors,
documenters,
_("translator-credits"),
"logo.png");
</programlisting></informalexample>
by something like
<informalexample><programlisting>
GdkPixbuf *logo = gdk_pixbuf_new_from_file ("logo.png", NULL);
GtkWidget *about = g_object_new (GTK_TYPE_ABOUT_DIALOG,
"name", "GNOME Test Program",
"version", VERSION,
"copyright", "(C) 1998-2001 The Free Software Foundation",
"comments", "Program to display GNOME functions.",
"authors", authors,
"documenters", documenters,
"translator-credits", _("translator-credits"),
"logo", logo,
NULL);
g_object_unref (pixbuf);
</programlisting></informalexample>
If the g_object_new() construction scares you, you can also use
gtk_about_dialog_new() to construct the dialog and then use the
setters for the individual properties.
</para>
<para>
Once you are done with the initial conversion, you may want to look into
using some of the features of <structname>GtkAboutDialog</structname>
which are not present in <structname>GnomeAbout</structname>.
<itemizedlist>
<listitem><para>
You can specify license information with the
#GtkAboutDialog:license property
</para></listitem>
<listitem><para>
You can add separate credits for artists with the
#GtkAboutDialog:artists property
</para></listitem>
<listitem><para>
You can add a pointer to the website of your application, using the
#GtkAboutDialog:website and #GtkAboutDialog:website-label properties.
</para></listitem>
<listitem><para>
If your credits contain email addresses or URLs, you can turn them
into clickable links using gtk_about_dialog_set_email_hook() and
gtk_about_dialog_set_url_hook().
</para></listitem>
</itemizedlist>
</para>
</chapter>
<!--
Local variables:
mode: sgml
sgml-parent-document: ("gtk-docs.sgml" "book" "part" "chapter")
End:
-->