2 // Generated by gtkmmproc -- DO NOT MODIFY!
3 #ifndef _GTKMM_ABOUTDIALOG_H
4 #define _GTKMM_ABOUTDIALOG_H
12 * Copyright (C) 2004 The gtkmm Development Team
14 * This library is free software; you can redistribute it and/or
15 * modify it under the terms of the GNU Library General Public
16 * License as published by the Free Software Foundation; either
17 * version 2 of the License, or (at your option) any later version.
19 * This library is distributed in the hope that it will be useful,
20 * but WITHOUT ANY WARRANTY; without even the implied warranty of
21 * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
22 * Library General Public License for more details.
24 * You should have received a copy of the GNU Library General Public
25 * License along with this library; if not, write to the Free
26 * Software Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA.
29 #include <gtkmm/dialog.h>
30 //#include <glibmm/listhandle.h>
33 #ifndef DOXYGEN_SHOULD_SKIP_THIS
34 typedef struct _GtkAboutDialog GtkAboutDialog;
35 typedef struct _GtkAboutDialogClass GtkAboutDialogClass;
36 #endif /* DOXYGEN_SHOULD_SKIP_THIS */
40 { class AboutDialog_Class; } // namespace Gtk
49 class AboutDialog : public Dialog
52 #ifndef DOXYGEN_SHOULD_SKIP_THIS
53 typedef AboutDialog CppObjectType;
54 typedef AboutDialog_Class CppClassType;
55 typedef GtkAboutDialog BaseObjectType;
56 typedef GtkAboutDialogClass BaseClassType;
57 #endif /* DOXYGEN_SHOULD_SKIP_THIS */
59 virtual ~AboutDialog();
61 #ifndef DOXYGEN_SHOULD_SKIP_THIS
64 friend class AboutDialog_Class;
65 static CppClassType aboutdialog_class_;
68 AboutDialog(const AboutDialog&);
69 AboutDialog& operator=(const AboutDialog&);
72 explicit AboutDialog(const Glib::ConstructParams& construct_params);
73 explicit AboutDialog(GtkAboutDialog* castitem);
75 #endif /* DOXYGEN_SHOULD_SKIP_THIS */
78 #ifndef DOXYGEN_SHOULD_SKIP_THIS
79 static GType get_type() G_GNUC_CONST;
80 static GType get_base_type() G_GNUC_CONST;
83 ///Provides access to the underlying C GtkObject.
84 GtkAboutDialog* gobj() { return reinterpret_cast<GtkAboutDialog*>(gobject_); }
86 ///Provides access to the underlying C GtkObject.
87 const GtkAboutDialog* gobj() const { return reinterpret_cast<GtkAboutDialog*>(gobject_); }
91 //C++ methods used to invoke GTK+ virtual functions:
94 //GTK+ Virtual Functions (override these to change behaviour):
96 //Default Signal Handlers::
106 /** Returns the program name displayed in the about dialog.
107 * @return The program name. The string is owned by the about
108 * dialog and must not be modified.
112 Glib::ustring get_name() const;
114 /** Sets the name to display in the about dialog.
115 * If this is not set, it defaults to Glib::get_application_name().
118 * @param name The program name.
120 void set_name(const Glib::ustring& name);
122 /** Returns the version string.
123 * @return The version string. The string is owned by the about
124 * dialog and must not be modified.
128 Glib::ustring get_version() const;
130 /** Sets the version string to display in the about dialog.
133 * @param version The version string.
135 void set_version(const Glib::ustring& version);
137 /** Returns the copyright string.
138 * @return The copyright string. The string is owned by the about
139 * dialog and must not be modified.
143 Glib::ustring get_copyright() const;
145 /** Sets the copyright string to display in the about dialog.
146 * This should be a short string of one or two lines.
149 * @param copyright The copyright string.
151 void set_copyright(const Glib::ustring& copyright);
153 /** Returns the comments string.
154 * @return The comments. The string is owned by the about
155 * dialog and must not be modified.
159 Glib::ustring get_comments() const;
161 /** Sets the comments string to display in the about
162 * dialog. This should be a short string of one or
166 * @param comments A comments string.
168 void set_comments(const Glib::ustring& comments);
170 /** Returns the license information.
171 * @return The license information. The string is owned by the about
172 * dialog and must not be modified.
176 Glib::ustring get_license() const;
178 /** Sets the license information to be displayed in the secondary
179 * license dialog. If @a license is <tt>0</tt>, the license button is
183 * @param license The license information or <tt>0</tt>.
185 void set_license(const Glib::ustring& license);
187 /** Returns the website URL.
188 * @return The website URL. The string is owned by the about
189 * dialog and must not be modified.
193 Glib::ustring get_website() const;
195 /** Sets the URL to use for the website link.
198 * @param website A URL string starting with "http://".
200 void set_website(const Glib::ustring& website);
202 /** Returns the label used for the website link.
203 * @return The label used for the website link. The string is owned by the about
204 * dialog and must not be modified.
208 Glib::ustring get_website_label() const;
210 /** Sets the label to be used for the website link.
211 * It defaults to the website URL.
214 * @param website_label The label used for the website link.
216 void set_website_label(const Glib::ustring& website_label);
219 /** Returns the string which are displayed in the authors tab
220 * of the secondary credits dialog.
221 * @return A <tt>0</tt>-terminated string array containing
222 * the authors. The array is owned by the about dialog
223 * and must not be modified.
227 Glib::StringArrayHandle get_authors() const;
230 /** Sets the strings which are displayed in the authors tab
231 * of the secondary credits dialog.
234 * @param authors A <tt>0</tt>-terminated array of strings.
236 void set_authors(const Glib::StringArrayHandle& authors) const;
239 /** Returns the string which are displayed in the documenters
240 * tab of the secondary credits dialog.
241 * @return A <tt>0</tt>-terminated string array containing
242 * the documenters. The array is owned by the about dialog
243 * and must not be modified.
247 Glib::StringArrayHandle get_documenters() const;
250 /** Sets the strings which are displayed in the documenters tab
251 * of the secondary credits dialog.
254 * @param documenters A <tt>0</tt>-terminated array of strings.
256 void set_documenters(const Glib::StringArrayHandle& documenters);
258 /** Returns the string which are displayed in the artists tab
259 * of the secondary credits dialog.
260 * @return A <tt>0</tt>-terminated string array containing
261 * the artists. The array is owned by the about dialog
262 * and must not be modified.
266 Glib::StringArrayHandle get_artists() const;
268 /** Sets the strings which are displayed in the artists tab
269 * of the secondary credits dialog.
272 * @param artists A <tt>0</tt>-terminated array of strings.
274 void set_artists(const Glib::StringArrayHandle& artists);
276 /** Returns the translator credits string which is displayed
277 * in the translators tab of the secondary credits dialog.
278 * @return The translator credits string. The string is
279 * owned by the about dialog and must not be modified.
283 Glib::ustring get_translator_credits() const;
285 /** Sets the translator credits string which is displayed in
286 * the translators tab of the secondary credits dialog.
288 * The intended use for this string is to display the translator
289 * of the language which is currently used in the user interface.
290 * Using gettext(), a simple way to achieve that is to mark the
291 * string for translation:
293 * gtk_about_dialog_set_translator_credits (about, _("translator-credits"));
295 * It is a good idea to use the customary msgid "translator-credits" for this
296 * purpose, since translators will already know the purpose of that msgid, and
297 * since Gtk::AboutDialog will detect if "translator-credits" is untranslated
301 * @param translator_credits The translator credits.
303 void set_translator_credits(const Glib::ustring& translator_credits);
306 /** Returns the pixbuf displayed as logo in the about dialog.
307 * @return The pixbuf displayed as logo. The pixbuf is
308 * owned by the about dialog. If you want to keep a reference
309 * to it, you have to call Glib::object_ref() on it.
313 Glib::RefPtr<Gdk::Pixbuf> get_logo();
315 /** Returns the pixbuf displayed as logo in the about dialog.
316 * @return The pixbuf displayed as logo. The pixbuf is
317 * owned by the about dialog. If you want to keep a reference
318 * to it, you have to call Glib::object_ref() on it.
322 Glib::RefPtr<const Gdk::Pixbuf> get_logo() const;
325 /** Sets the pixbuf to be displayed as logo in
326 * the about dialog. If it is <tt>0</tt>, the default
327 * window icon set with Gtk::Window::set_default_icon()
331 * @param logo A Gdk::Pixbuf, or <tt>0</tt>.
333 void set_logo(const Glib::RefPtr<Gdk::Pixbuf>& logo);
336 /** Returns the icon name displayed as logo in the about dialog.
337 * @return The icon name displayed as logo. The string is
338 * owned by the about dialog. If you want to keep a reference
339 * to it, you have to call Glib::strdup() on it.
343 Glib::ustring get_logo_icon_name() const;
345 /** Sets the pixbuf to be displayed as logo in
346 * the about dialog. If it is <tt>0</tt>, the default
347 * window icon set with Gtk::Window::set_default_icon()
351 * @param icon_name An icon name, or <tt>0</tt>.
353 void set_logo_icon_name(const Glib::ustring& icon_name);
356 * void on_activate_link_url(AboutDialog& about_dialog, const Glib::ustring& link);
358 typedef sigc::slot<void, AboutDialog& /* about_dialog */, const Glib::ustring& /* link */> SlotActivateLink;
360 //TODO: Document these methods.
361 static void set_email_hook(const SlotActivateLink& slot);
364 static void set_url_hook(const SlotActivateLink& slot);
367 /** The name of the program. If this is not set
369 * You rarely need to use properties because there are get_ and set_ methods for almost all of them.
370 * @return A PropertyProxy that allows you to get or set the property of the value, or receive notification when
371 * the value of the property changes.
373 Glib::PropertyProxy<Glib::ustring> property_name() ;
375 /** The name of the program. If this is not set
377 * You rarely need to use properties because there are get_ and set_ methods for almost all of them.
378 * @return A PropertyProxy that allows you to get or set the property of the value, or receive notification when
379 * the value of the property changes.
381 Glib::PropertyProxy_ReadOnly<Glib::ustring> property_name() const;
383 /** The version of the program.
385 * You rarely need to use properties because there are get_ and set_ methods for almost all of them.
386 * @return A PropertyProxy that allows you to get or set the property of the value, or receive notification when
387 * the value of the property changes.
389 Glib::PropertyProxy<Glib::ustring> property_version() ;
391 /** The version of the program.
393 * You rarely need to use properties because there are get_ and set_ methods for almost all of them.
394 * @return A PropertyProxy that allows you to get or set the property of the value, or receive notification when
395 * the value of the property changes.
397 Glib::PropertyProxy_ReadOnly<Glib::ustring> property_version() const;
399 /** Copyright information for the program.
401 * You rarely need to use properties because there are get_ and set_ methods for almost all of them.
402 * @return A PropertyProxy that allows you to get or set the property of the value, or receive notification when
403 * the value of the property changes.
405 Glib::PropertyProxy<Glib::ustring> property_copyright() ;
407 /** Copyright information for the program.
409 * You rarely need to use properties because there are get_ and set_ methods for almost all of them.
410 * @return A PropertyProxy that allows you to get or set the property of the value, or receive notification when
411 * the value of the property changes.
413 Glib::PropertyProxy_ReadOnly<Glib::ustring> property_copyright() const;
415 /** Comments about the program.
417 * You rarely need to use properties because there are get_ and set_ methods for almost all of them.
418 * @return A PropertyProxy that allows you to get or set the property of the value, or receive notification when
419 * the value of the property changes.
421 Glib::PropertyProxy<Glib::ustring> property_comments() ;
423 /** Comments about the program.
425 * You rarely need to use properties because there are get_ and set_ methods for almost all of them.
426 * @return A PropertyProxy that allows you to get or set the property of the value, or receive notification when
427 * the value of the property changes.
429 Glib::PropertyProxy_ReadOnly<Glib::ustring> property_comments() const;
431 /** The URL for the link to the website of the program.
433 * You rarely need to use properties because there are get_ and set_ methods for almost all of them.
434 * @return A PropertyProxy that allows you to get or set the property of the value, or receive notification when
435 * the value of the property changes.
437 Glib::PropertyProxy<Glib::ustring> property_website() ;
439 /** The URL for the link to the website of the program.
441 * You rarely need to use properties because there are get_ and set_ methods for almost all of them.
442 * @return A PropertyProxy that allows you to get or set the property of the value, or receive notification when
443 * the value of the property changes.
445 Glib::PropertyProxy_ReadOnly<Glib::ustring> property_website() const;
447 /** The label for the link to the website of the program. If this is not set
449 * You rarely need to use properties because there are get_ and set_ methods for almost all of them.
450 * @return A PropertyProxy that allows you to get or set the property of the value, or receive notification when
451 * the value of the property changes.
453 Glib::PropertyProxy<Glib::ustring> property_website_label() ;
455 /** The label for the link to the website of the program. If this is not set
457 * You rarely need to use properties because there are get_ and set_ methods for almost all of them.
458 * @return A PropertyProxy that allows you to get or set the property of the value, or receive notification when
459 * the value of the property changes.
461 Glib::PropertyProxy_ReadOnly<Glib::ustring> property_website_label() const;
463 /** The license of the program.
465 * You rarely need to use properties because there are get_ and set_ methods for almost all of them.
466 * @return A PropertyProxy that allows you to get or set the property of the value, or receive notification when
467 * the value of the property changes.
469 Glib::PropertyProxy<Glib::ustring> property_license() ;
471 /** The license of the program.
473 * You rarely need to use properties because there are get_ and set_ methods for almost all of them.
474 * @return A PropertyProxy that allows you to get or set the property of the value, or receive notification when
475 * the value of the property changes.
477 Glib::PropertyProxy_ReadOnly<Glib::ustring> property_license() const;
479 /** List of authors of the program.
481 * You rarely need to use properties because there are get_ and set_ methods for almost all of them.
482 * @return A PropertyProxy that allows you to get or set the property of the value, or receive notification when
483 * the value of the property changes.
485 Glib::PropertyProxy<Glib::StringArrayHandle> property_authors() ;
487 /** List of authors of the program.
489 * You rarely need to use properties because there are get_ and set_ methods for almost all of them.
490 * @return A PropertyProxy that allows you to get or set the property of the value, or receive notification when
491 * the value of the property changes.
493 Glib::PropertyProxy_ReadOnly<Glib::StringArrayHandle> property_authors() const;
495 /** List of people documenting the program.
497 * You rarely need to use properties because there are get_ and set_ methods for almost all of them.
498 * @return A PropertyProxy that allows you to get or set the property of the value, or receive notification when
499 * the value of the property changes.
501 Glib::PropertyProxy<Glib::StringArrayHandle> property_documenters() ;
503 /** List of people documenting the program.
505 * You rarely need to use properties because there are get_ and set_ methods for almost all of them.
506 * @return A PropertyProxy that allows you to get or set the property of the value, or receive notification when
507 * the value of the property changes.
509 Glib::PropertyProxy_ReadOnly<Glib::StringArrayHandle> property_documenters() const;
511 /** Credits to the translators. This string should be marked as translatable.
513 * You rarely need to use properties because there are get_ and set_ methods for almost all of them.
514 * @return A PropertyProxy that allows you to get or set the property of the value, or receive notification when
515 * the value of the property changes.
517 Glib::PropertyProxy<Glib::StringArrayHandle> property_translator_credits() ;
519 /** Credits to the translators. This string should be marked as translatable.
521 * You rarely need to use properties because there are get_ and set_ methods for almost all of them.
522 * @return A PropertyProxy that allows you to get or set the property of the value, or receive notification when
523 * the value of the property changes.
525 Glib::PropertyProxy_ReadOnly<Glib::StringArrayHandle> property_translator_credits() const;
527 /** List of people who have contributed artwork to the program.
529 * You rarely need to use properties because there are get_ and set_ methods for almost all of them.
530 * @return A PropertyProxy that allows you to get or set the property of the value, or receive notification when
531 * the value of the property changes.
533 Glib::PropertyProxy<Glib::StringArrayHandle> property_artists() ;
535 /** List of people who have contributed artwork to the program.
537 * You rarely need to use properties because there are get_ and set_ methods for almost all of them.
538 * @return A PropertyProxy that allows you to get or set the property of the value, or receive notification when
539 * the value of the property changes.
541 Glib::PropertyProxy_ReadOnly<Glib::StringArrayHandle> property_artists() const;
543 /** A logo for the about box. If this is not set
545 * You rarely need to use properties because there are get_ and set_ methods for almost all of them.
546 * @return A PropertyProxy that allows you to get or set the property of the value, or receive notification when
547 * the value of the property changes.
549 Glib::PropertyProxy< Glib::RefPtr<Gdk::Pixbuf> > property_logo() ;
551 /** A logo for the about box. If this is not set
553 * You rarely need to use properties because there are get_ and set_ methods for almost all of them.
554 * @return A PropertyProxy that allows you to get or set the property of the value, or receive notification when
555 * the value of the property changes.
557 Glib::PropertyProxy_ReadOnly< Glib::RefPtr<Gdk::Pixbuf> > property_logo() const;
559 /** A named icon to use as the logo for the about box.
561 * You rarely need to use properties because there are get_ and set_ methods for almost all of them.
562 * @return A PropertyProxy that allows you to get or set the property of the value, or receive notification when
563 * the value of the property changes.
565 Glib::PropertyProxy<Glib::ustring> property_logo_icon_name() ;
567 /** A named icon to use as the logo for the about box.
569 * You rarely need to use properties because there are get_ and set_ methods for almost all of them.
570 * @return A PropertyProxy that allows you to get or set the property of the value, or receive notification when
571 * the value of the property changes.
573 Glib::PropertyProxy_ReadOnly<Glib::ustring> property_logo_icon_name() const;
583 /** @relates Gtk::AboutDialog
584 * @param object The C instance
585 * @param take_copy False if the result should take ownership of the C instance. True if it should take a new copy or ref.
586 * @result A C++ instance that wraps this C instance.
588 Gtk::AboutDialog* wrap(GtkAboutDialog* object, bool take_copy = false);
590 #endif /* _GTKMM_ABOUTDIALOG_H */