Gtk2(3) User Contributed Perl Documentation Gtk2(3)NAMEGtk2 - Perl interface to the 2.x series of the Gimp Toolkit library
SYNOPSIS
use Gtk2 -init;
# Gtk2->init; works if you didn't use -init on use
my $window = Gtk2::Window->new ('toplevel');
my $button = Gtk2::Button->new ('Quit');
$button->signal_connect (clicked => sub { Gtk2->main_quit });
$window->add ($button);
$window->show_all;
Gtk2->main;
ABSTRACT
Perl bindings to the 2.x series of the Gtk+ widget set. This module
allows you to write graphical user interfaces in a Perlish and object-
oriented way, freeing you from the casting and memory management in C,
yet remaining very close in spirit to original API.
DESCRIPTION
The Gtk2 module allows a Perl developer to use the Gtk+ graphical user
interface library. Find out more about Gtk+ at http://www.gtk.org.
The GTK+ Reference Manual is also a handy companion when writing Gtk
programs in any language. http://developer.gnome.org/doc/API/2.0/gtk/
The Perl bindings follow the C API very closely, and the C reference
documentation should be considered the canonical source.
To discuss gtk2-perl, ask questions and flame/praise the authors, join
gtk-perl-list@gnome.org at lists.gnome.org.
Also have a look at the gtk2-perl website and sourceforge project page,
http://gtk2-perl.sourceforge.net
INITIALIZATION
use Gtk2 qw/-init/;
use Gtk2 qw/-init -threads-init/;
-init
Equivalent to Gtk2->init, called to initialize GLIB and GTK+. Just
about every Gtk2-Perl script should do "use Gtk2 -init"; This
initialization should take place before using any other Gtk2
functions in your GUI applications. It will initialize everything
needed to operate the toolkit and parses some standard command line
options. @ARGV is adjusted accordingly so your own code will never
see those standard arguments.
-threads-init
Equivalent to Gtk2::Gdk::Threads->init, called to initialze/enable
gdk's thread safety mechanisms so that gdk can be accessed from
multiple threads when used in conjunction with
Gtk2::Gdk::Threads->enter and Gtk2::Gdk::Threads->leave. If invoked
as Gtk2::Gdk::Threads->init it should be done before Gtk2->init is
called, if done by "use Gtk2-init -threads-init" order does not
matter.
EXPORTSGtk2 exports nothing by default, but some constants are available upon
request.
Tag: constants
GTK_PRIORITY_RESIZE
GTK_PATH_PRIO_LOWEST
GTK_PATH_PRIO_GTK
GTK_PATH_PRIO_APPLICATION
GTK_PATH_PRIO_THEME
GTK_PATH_PRIO_RC
GTK_PATH_PRIO_HIGHEST
GDK_PRIORITY_EVENTS
GDK_PRIORITY_REDRAW
GDK_CURRENT_TIME
See Glib for other standard priority levels.
SEE ALSOperl(1), Glib(3pm), Pango(3pm).
Gtk2::Gdk::Keysyms(3pm) contains a hash of key codes, culled from
gdk/gdkkeysyms.h
Gtk2::api(3pm) describes how to map the C API into Perl, and some of
the important differences in the Perl bindings.
Gtk2::Helper(3pm) contains stuff that makes writing Gtk2 programs a
little easier.
Gtk2::SimpleList(3pm) makes the GtkListStore and GtkTreeModel a lot
easier to use.
Gtk2::Pango(3pm) exports various little-used but important constants
you may need to work with pango directly.
Gtk2::index(3pm) lists the autogenerated api documentation pod files
for Gtk2.
Gtk2 also provides code to make it relatively painless to create Perl
wrappers for other GLib/Gtk-based libraries. See Gtk2::CodeGen,
ExtUtils::PkgConfig, and ExtUtils::Depends. If you're writing
bindings, you'll probably also be interested in Gtk2::devel, which is a
supplement to Glib::devel and Glib::xsapi. The Binding Howto, at
http://gtk2-perl.sourceforge.net/doc/binding_howto.pod.html, ties it
all together.
AUTHORS
The gtk2-perl team:
muppet <scott at asofyet dot org>
Ross McFarland <rwmcfa1 at neces dot com>
Torsten Schoenfeld <kaffeetisch at web dot de>
Marc Lehmann <pcg at goof dot com>
Goeran Thyni <gthyni at kirra dot net>
Joern Reder <joern at zyn dot de>
Chas Owens <alas at wilma dot widomaker dot com>
Guillaume Cottenceau <gc at mandrakesoft dot com>
COPYRIGHT AND LICENSE
Copyright 2003-2011 by the gtk2-perl team.
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
License along with this library; if not, write to the Free Software
Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307
USA.
perl v5.14.1 2011-08-02 Gtk2(3)