gtkaboutdialog.h 8.16 KB
Newer Older
Cody Russell's avatar
Cody Russell committed
1
/* GTK - The GIMP Toolkit
2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17

   Copyright (C) 2001 CodeFactory AB
   Copyright (C) 2001 Anders Carlsson <andersca@codefactory.se>
   Copyright (C) 2003, 2004 Matthias Clasen <mclasen@redhat.com>

   This library is free software; you can redistribute it and/or
   modify it under the terms of the GNU Library General Public License as
   published by the Free Software Foundation; either version 2 of the
   License, or (at your option) any later version.

   This library is distributed in the hope that it will be useful,
   but WITHOUT ANY WARRANTY; without even the implied warranty of
   MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU
   Library General Public License for more details.

   You should have received a copy of the GNU Library General Public
Javier Jardón's avatar
Javier Jardón committed
18
   License along with this library. If not, see <http://www.gnu.org/licenses/>.
19 20 21 22

   Author: Anders Carlsson <andersca@codefactory.se>
*/

23
#if !defined (__GTK_H_INSIDE__) && !defined (GTK_COMPILATION)
24 25 26
#error "Only <gtk/gtk.h> can be included directly."
#endif

27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42
#ifndef __GTK_ABOUT_DIALOG_H__
#define __GTK_ABOUT_DIALOG_H__

#include <gtk/gtkdialog.h>

G_BEGIN_DECLS

#define GTK_TYPE_ABOUT_DIALOG            (gtk_about_dialog_get_type ())
#define GTK_ABOUT_DIALOG(object)         (G_TYPE_CHECK_INSTANCE_CAST ((object), GTK_TYPE_ABOUT_DIALOG, GtkAboutDialog))
#define GTK_ABOUT_DIALOG_CLASS(klass)    (G_TYPE_CHECK_CLASS_CAST ((klass), GTK_TYPE_ABOUT_DIALOG, GtkAboutDialogClass))
#define GTK_IS_ABOUT_DIALOG(object)      (G_TYPE_CHECK_INSTANCE_TYPE ((object), GTK_TYPE_ABOUT_DIALOG))
#define GTK_IS_ABOUT_DIALOG_CLASS(klass) (G_TYPE_CHECK_CLASS_TYPE ((klass), GTK_TYPE_ABOUT_DIALOG))
#define GTK_ABOUT_DIALOG_GET_CLASS(obj)  (G_TYPE_INSTANCE_GET_CLASS ((obj), GTK_TYPE_ABOUT_DIALOG, GtkAboutDialogClass))

typedef struct _GtkAboutDialog        GtkAboutDialog;
typedef struct _GtkAboutDialogClass   GtkAboutDialogClass;
43
typedef struct _GtkAboutDialogPrivate GtkAboutDialogPrivate;
44

45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79
/**
 * GtkLicense:
 * @GTK_LICENSE_UNKNOWN: No license specified
 * @GTK_LICENSE_CUSTOM: A license text is going to be specified by the
 *   developer
 * @GTK_LICENSE_GPL_2_0: The GNU General Public License, version 2.0
 * @GTK_LICENSE_GPL_3_0: The GNU General Public License, version 3.0
 * @GTK_LICENSE_LGPL_2_1: The GNU Lesser General Public License, version 2.1
 * @GTK_LICENSE_LGPL_3_0: The GNU Lesser General Public License, version 3.0
 * @GTK_LICENSE_BSD: The BSD standard license
 * @GTK_LICENSE_MIT_X11: The MIT/X11 standard license
 * @GTK_LICENSE_ARTISTIC: The Artistic License, version 2.0
 *
 * The type of license for an application.
 *
 * This enumeration can be expanded at later date.
 *
 * Since: 3.0
 */
typedef enum {
  GTK_LICENSE_UNKNOWN,
  GTK_LICENSE_CUSTOM,

  GTK_LICENSE_GPL_2_0,
  GTK_LICENSE_GPL_3_0,

  GTK_LICENSE_LGPL_2_1,
  GTK_LICENSE_LGPL_3_0,

  GTK_LICENSE_BSD,
  GTK_LICENSE_MIT_X11,

  GTK_LICENSE_ARTISTIC
} GtkLicense;

80 81 82 83 84 85
/**
 * GtkAboutDialog:
 *
 * The <structname>GtkAboutDialog</structname> struct contains
 * only private fields and should not be directly accessed.
 */
86
struct _GtkAboutDialog
87 88 89 90
{
  GtkDialog parent_instance;

  /*< private >*/
91
  GtkAboutDialogPrivate *priv;
92 93
};

94
struct _GtkAboutDialogClass
95 96 97
{
  GtkDialogClass parent_class;

98 99 100
  gboolean (*activate_link) (GtkAboutDialog *dialog,
                             const gchar    *uri);

101 102 103 104 105 106 107 108 109 110
  /* Padding for future expansion */
  void (*_gtk_reserved1) (void);
  void (*_gtk_reserved2) (void);
  void (*_gtk_reserved3) (void);
  void (*_gtk_reserved4) (void);
};

GType                  gtk_about_dialog_get_type               (void) G_GNUC_CONST;
GtkWidget             *gtk_about_dialog_new                    (void);
void                   gtk_show_about_dialog                   (GtkWindow       *parent,
111 112
                                                                const gchar     *first_property_name,
                                                                ...) G_GNUC_NULL_TERMINATED;
113
const gchar *          gtk_about_dialog_get_program_name       (GtkAboutDialog  *about);
114
void                   gtk_about_dialog_set_program_name       (GtkAboutDialog  *about,
115
                                                                const gchar     *name);
116
const gchar *          gtk_about_dialog_get_version            (GtkAboutDialog  *about);
117
void                   gtk_about_dialog_set_version            (GtkAboutDialog  *about,
118
                                                                const gchar     *version);
119
const gchar *          gtk_about_dialog_get_copyright          (GtkAboutDialog  *about);
120
void                   gtk_about_dialog_set_copyright          (GtkAboutDialog  *about,
121
                                                                const gchar     *copyright);
122
const gchar *          gtk_about_dialog_get_comments           (GtkAboutDialog  *about);
123
void                   gtk_about_dialog_set_comments           (GtkAboutDialog  *about,
124
                                                                const gchar     *comments);
125
const gchar *          gtk_about_dialog_get_license            (GtkAboutDialog  *about);
126
void                   gtk_about_dialog_set_license            (GtkAboutDialog  *about,
127
                                                                const gchar     *license);
128 129 130
void                   gtk_about_dialog_set_license_type       (GtkAboutDialog  *about,
                                                                GtkLicense       license_type);
GtkLicense             gtk_about_dialog_get_license_type       (GtkAboutDialog  *about);
131 132 133 134 135

gboolean               gtk_about_dialog_get_wrap_license       (GtkAboutDialog  *about);
void                   gtk_about_dialog_set_wrap_license       (GtkAboutDialog  *about,
                                                                gboolean         wrap_license);

136
const gchar *          gtk_about_dialog_get_website            (GtkAboutDialog  *about);
137
void                   gtk_about_dialog_set_website            (GtkAboutDialog  *about,
138
                                                                const gchar     *website);
139
const gchar *          gtk_about_dialog_get_website_label      (GtkAboutDialog  *about);
140
void                   gtk_about_dialog_set_website_label      (GtkAboutDialog  *about,
141
                                                                const gchar     *website_label);
142
const gchar* const *   gtk_about_dialog_get_authors            (GtkAboutDialog  *about);
143
void                   gtk_about_dialog_set_authors            (GtkAboutDialog  *about,
144
                                                                const gchar    **authors);
145
const gchar* const *   gtk_about_dialog_get_documenters        (GtkAboutDialog  *about);
146
void                   gtk_about_dialog_set_documenters        (GtkAboutDialog  *about,
147
                                                                const gchar    **documenters);
148
const gchar* const *   gtk_about_dialog_get_artists            (GtkAboutDialog  *about);
149
void                   gtk_about_dialog_set_artists            (GtkAboutDialog  *about,
150
                                                                const gchar    **artists);
151
const gchar *          gtk_about_dialog_get_translator_credits (GtkAboutDialog  *about);
152
void                   gtk_about_dialog_set_translator_credits (GtkAboutDialog  *about,
153
                                                                const gchar     *translator_credits);
154 155
GdkPixbuf             *gtk_about_dialog_get_logo               (GtkAboutDialog  *about);
void                   gtk_about_dialog_set_logo               (GtkAboutDialog  *about,
156
                                                                GdkPixbuf       *logo);
157
const gchar *          gtk_about_dialog_get_logo_icon_name     (GtkAboutDialog  *about);
158
void                   gtk_about_dialog_set_logo_icon_name     (GtkAboutDialog  *about,
159
                                                                const gchar     *icon_name);
160
GDK_AVAILABLE_IN_3_4
161 162 163
void                  gtk_about_dialog_add_credit_section      (GtkAboutDialog  *about,
                                                                const gchar     *section_name,
                                                                const gchar    **people);
164 165 166 167 168 169

G_END_DECLS

#endif /* __GTK_ABOUT_DIALOG_H__ */