1 /* GTK - The GIMP Toolkit
3 Copyright (C) 2001 CodeFactory AB
4 Copyright (C) 2001 Anders Carlsson <andersca@codefactory.se>
5 Copyright (C) 2003, 2004 Matthias Clasen <mclasen@redhat.com>
7 This library is free software; you can redistribute it and/or
8 modify it under the terms of the GNU Library General Public License as
9 published by the Free Software Foundation; either version 2 of the
10 License, or (at your option) any later version.
12 This library is distributed in the hope that it will be useful,
13 but WITHOUT ANY WARRANTY; without even the implied warranty of
14 MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
15 Library General Public License for more details.
17 You should have received a copy of the GNU Library General Public
18 License along with the Gnome Library; see the file COPYING.LIB. If not,
19 write to the Free Software Foundation, Inc., 59 Temple Place - Suite 330,
20 Boston, MA 02111-1307, USA.
22 Author: Anders Carlsson <andersca@codefactory.se>
25 #if !defined (__GTK_H_INSIDE__) && !defined (GTK_COMPILATION)
26 #error "Only <gtk/gtk.h> can be included directly."
29 #ifndef __GTK_ABOUT_DIALOG_H__
30 #define __GTK_ABOUT_DIALOG_H__
32 #include <gtk/gtkdialog.h>
36 #define GTK_TYPE_ABOUT_DIALOG (gtk_about_dialog_get_type ())
37 #define GTK_ABOUT_DIALOG(object) (G_TYPE_CHECK_INSTANCE_CAST ((object), GTK_TYPE_ABOUT_DIALOG, GtkAboutDialog))
38 #define GTK_ABOUT_DIALOG_CLASS(klass) (G_TYPE_CHECK_CLASS_CAST ((klass), GTK_TYPE_ABOUT_DIALOG, GtkAboutDialogClass))
39 #define GTK_IS_ABOUT_DIALOG(object) (G_TYPE_CHECK_INSTANCE_TYPE ((object), GTK_TYPE_ABOUT_DIALOG))
40 #define GTK_IS_ABOUT_DIALOG_CLASS(klass) (G_TYPE_CHECK_CLASS_TYPE ((klass), GTK_TYPE_ABOUT_DIALOG))
41 #define GTK_ABOUT_DIALOG_GET_CLASS(obj) (G_TYPE_INSTANCE_GET_CLASS ((obj), GTK_TYPE_ABOUT_DIALOG, GtkAboutDialogClass))
43 typedef struct _GtkAboutDialog GtkAboutDialog;
44 typedef struct _GtkAboutDialogClass GtkAboutDialogClass;
45 typedef struct _GtkAboutDialogPrivate GtkAboutDialogPrivate;
49 * @GTK_LICENSE_UNKNOWN: No license specified
50 * @GTK_LICENSE_CUSTOM: A license text is going to be specified by the
52 * @GTK_LICENSE_GPL_2_0: The GNU General Public License, version 2.0
53 * @GTK_LICENSE_GPL_3_0: The GNU General Public License, version 3.0
54 * @GTK_LICENSE_LGPL_2_1: The GNU Lesser General Public License, version 2.1
55 * @GTK_LICENSE_LGPL_3_0: The GNU Lesser General Public License, version 3.0
56 * @GTK_LICENSE_BSD: The BSD standard license
57 * @GTK_LICENSE_MIT_X11: The MIT/X11 standard license
58 * @GTK_LICENSE_ARTISTIC: The Artistic License, version 2.0
60 * The type of license for an application.
62 * This enumeration can be expanded at later date.
85 * The <structname>GtkAboutDialog</structname> struct contains
86 * only private fields and should not be directly accessed.
88 struct _GtkAboutDialog
90 GtkDialog parent_instance;
93 GtkAboutDialogPrivate *priv;
96 struct _GtkAboutDialogClass
98 GtkDialogClass parent_class;
100 /* Padding for future expansion */
101 void (*_gtk_reserved1) (void);
102 void (*_gtk_reserved2) (void);
103 void (*_gtk_reserved3) (void);
104 void (*_gtk_reserved4) (void);
107 GType gtk_about_dialog_get_type (void) G_GNUC_CONST;
108 GtkWidget *gtk_about_dialog_new (void);
109 void gtk_show_about_dialog (GtkWindow *parent,
110 const gchar *first_property_name,
111 ...) G_GNUC_NULL_TERMINATED;
112 G_CONST_RETURN gchar *gtk_about_dialog_get_program_name (GtkAboutDialog *about);
113 void gtk_about_dialog_set_program_name (GtkAboutDialog *about,
115 G_CONST_RETURN gchar *gtk_about_dialog_get_version (GtkAboutDialog *about);
116 void gtk_about_dialog_set_version (GtkAboutDialog *about,
117 const gchar *version);
118 G_CONST_RETURN gchar *gtk_about_dialog_get_copyright (GtkAboutDialog *about);
119 void gtk_about_dialog_set_copyright (GtkAboutDialog *about,
120 const gchar *copyright);
121 G_CONST_RETURN gchar *gtk_about_dialog_get_comments (GtkAboutDialog *about);
122 void gtk_about_dialog_set_comments (GtkAboutDialog *about,
123 const gchar *comments);
124 G_CONST_RETURN gchar *gtk_about_dialog_get_license (GtkAboutDialog *about);
125 void gtk_about_dialog_set_license (GtkAboutDialog *about,
126 const gchar *license);
127 void gtk_about_dialog_set_license_type (GtkAboutDialog *about,
128 GtkLicense license_type);
129 GtkLicense gtk_about_dialog_get_license_type (GtkAboutDialog *about);
131 gboolean gtk_about_dialog_get_wrap_license (GtkAboutDialog *about);
132 void gtk_about_dialog_set_wrap_license (GtkAboutDialog *about,
133 gboolean wrap_license);
135 G_CONST_RETURN gchar *gtk_about_dialog_get_website (GtkAboutDialog *about);
136 void gtk_about_dialog_set_website (GtkAboutDialog *about,
137 const gchar *website);
138 G_CONST_RETURN gchar *gtk_about_dialog_get_website_label (GtkAboutDialog *about);
139 void gtk_about_dialog_set_website_label (GtkAboutDialog *about,
140 const gchar *website_label);
141 G_CONST_RETURN gchar* G_CONST_RETURN * gtk_about_dialog_get_authors (GtkAboutDialog *about);
142 void gtk_about_dialog_set_authors (GtkAboutDialog *about,
143 const gchar **authors);
144 G_CONST_RETURN gchar* G_CONST_RETURN * gtk_about_dialog_get_documenters (GtkAboutDialog *about);
145 void gtk_about_dialog_set_documenters (GtkAboutDialog *about,
146 const gchar **documenters);
147 G_CONST_RETURN gchar* G_CONST_RETURN * gtk_about_dialog_get_artists (GtkAboutDialog *about);
148 void gtk_about_dialog_set_artists (GtkAboutDialog *about,
149 const gchar **artists);
150 G_CONST_RETURN gchar *gtk_about_dialog_get_translator_credits (GtkAboutDialog *about);
151 void gtk_about_dialog_set_translator_credits (GtkAboutDialog *about,
152 const gchar *translator_credits);
153 GdkPixbuf *gtk_about_dialog_get_logo (GtkAboutDialog *about);
154 void gtk_about_dialog_set_logo (GtkAboutDialog *about,
156 G_CONST_RETURN gchar *gtk_about_dialog_get_logo_icon_name (GtkAboutDialog *about);
157 void gtk_about_dialog_set_logo_icon_name (GtkAboutDialog *about,
158 const gchar *icon_name);
161 * GtkAboutDialogActivateLinkFunc:
162 * @about: the #GtkAboutDialog in which the link was activated
163 * @link_: the URL or email address to which the activated link points
164 * @data: user data that was passed when the function was registered
165 * with gtk_about_dialog_set_email_hook() or
166 * gtk_about_dialog_set_url_hook()
168 * The type of a function which is called when a URL or email
171 typedef void (* GtkAboutDialogActivateLinkFunc) (GtkAboutDialog *about,
175 GtkAboutDialogActivateLinkFunc gtk_about_dialog_set_email_hook (GtkAboutDialogActivateLinkFunc func,
177 GDestroyNotify destroy);
178 GtkAboutDialogActivateLinkFunc gtk_about_dialog_set_url_hook (GtkAboutDialogActivateLinkFunc func,
180 GDestroyNotify destroy);
184 #endif /* __GTK_ABOUT_DIALOG_H__ */