Gnome2-1.046/0000755000175000017500000000000012542062376011270 5ustar lacklackGnome2-1.046/examples/0000755000175000017500000000000012542062376013106 5ustar lacklackGnome2-1.046/examples/session-management.pl0000644000175000017500000000677512542061635017254 0ustar lacklack#!/usr/bin/perl -w use strict; use Gnome2; # $Id$ my $application = Gnome2::Program -> init("Test", "0.1", "libgnomeui"); my $client = Gnome2::Client -> master(); ############################################################################### $client -> signal_connect(die => sub { # No time to save anything, just die. Gtk2 -> main_quit(); }); $client -> signal_connect(save_yourself => sub { my ($client, $phase, $save_style, $shutting_down, $interact_style, $fast) = @_; if ($fast) { # We're in a hurry, so don't do anything that takes ages. unless (save_session_quickly()) { error("Saving session failed.") if ($interact_style & "error"); return 0; } } else { # We've plenty of time. unless (save_session()) { if ($interact_style & "any") { question("Couldn't save session. Do you want me to " . "delete all your personal files in response?", sub { delete_all_personal_files(); }); } elsif ($interact_style & "error") { error("Saving session failed."); } return 0; } } return 1; }); ############################################################################### my $app = Gnome2::App -> new("test", "Test"); my $box = Gtk2::VBox -> new(0, 0); my $button_die = Gtk2::Button -> new("_Die"); my $button_save = Gtk2::Button -> new("_Save"); my $button_save_quickly = Gtk2::Button -> new("Save quickly"); # Normally, those events are fired by the session manager when the user logs # out or kills the application via the session UI. We emulate them here. $button_die -> signal_connect(clicked => sub { $client -> signal_emit("die"); }); $button_save -> signal_connect(clicked => sub { $client -> request_save("local", 0, "any", 0, 0); }); $button_save_quickly -> signal_connect(clicked => sub { $client -> request_save("local", 0, "errors", 1, 0); }); $box -> pack_start($button_die, 0, 0, 0); $box -> pack_start($button_save, 0, 0, 0); $box -> pack_start($button_save_quickly, 0, 0, 0); $app -> set_contents($box); $app -> show_all(); $app -> signal_connect(destroy => sub { Gtk2 -> main_quit(); }); Gtk2 -> main(); ############################################################################### sub delete_all_personal_files { $| = 1; print "Deleting all personal files ..."; select(undef, undef, undef, 0.25); print " done.\n"; } sub error { my ($label) = @_; my $dialog = Gtk2::MessageDialog -> new($app, [qw(modal destroy-with-parent)], "error", "ok", $label); $dialog -> signal_connect(response => sub { my ($dialog, $response) = @_; $dialog -> hide(); }); $client -> save_error_dialog($dialog); } sub question { my ($label, $callback) = @_; my $dialog = Gtk2::MessageDialog -> new($app, [qw(modal destroy-with-parent)], "question", "yes-no", $label); $dialog -> signal_connect(response => sub { my ($dialog, $response) = @_; $callback -> () if ($response eq "yes"); $dialog -> hide(); }); $client -> save_any_dialog($dialog); } sub save_session { select(undef, undef, undef, 0.5); return int(rand(2)); } sub save_session_quickly { select(undef, undef, undef, 0.1); return int(rand(2)); } Gnome2-1.046/examples/druid.pl0000644000175000017500000000712112542061635014550 0ustar lacklack#!/usr/bin/perl -w # # $Id$ # use Gnome2; use Cwd; use constant TRUE => 1; use constant FALSE => 0; $page_one_text = "This is a simple test of the GnomeDruid. If this had been an actual emergency, the attention signal you just heard would've been followed by sports, fashion, entertainment, and other critical information. Remember, this is only a test."; $end_page_text = "Thank you for joining us, and thank you for reading this banal text. I'm sorry it's so boring, but it's just filler, after all."; # this is intentionally incorrect --- spaces are not allowed in app_name, # because space isn't allowed in GConf keys. this proves that the checking # works, and keeps from polluting the GConf database with crap from test apps. # it does, however, mean that the program will spit out lots of GConf-CRITICAL # warnings, and present the user with a warning that the app couldn't # initialize properly. but this is a test, and we want to see things like that. #Gnome2::Program->init ('Druid Test', '1.0beta'); ###Gnome2::Program->init ('Druid Test', '1.0beta', 'libgnomeui'); Gnome2::Program->init ('Druid Test', '1.0beta', 'libgnomeui', show_crash_dialog => FALSE, app_libdir => cwd); print "app-libdir ".(Gnome2::Program->get_program->get ('app_libdir'))."\n"; #use Data::Dumper; #print Dumper([ Gnome2::Program->get_program->list_properties ]); ($druid, $window) = Gnome2::Druid->new_with_window ("Test Druid", undef, TRUE); $druid->finish->set_label ("_Finish"); $druid->finish->signal_connect (clicked => sub { Gtk2->main_quit ; 1 }); $druid_page = Gnome2::DruidPageEdge->new_with_vals ('start', FALSE, "Welcome", $page_one_text, undef, undef, undef); $druid->append_page ($druid_page); $druid_page = Gnome2::DruidPageStandard->new_with_vals ("Page Two", undef, undef); $druid->append_page ($druid_page); $druid_page->append_item ("Test _one:", Gtk2::Entry->new, "Longer information here"); $druid_page->append_item ("Test _two:", Gnome2::Entry->new ('fred'), "Longer information here"); $druid_page->append_item ("Test t_hree:", Gnome2::FileEntry->new ('barney', 'wilma'), "Longer information here"); $druid_page->append_item ("Test fou_r:", Gnome2::DateEdit->new (time, TRUE, FALSE), "Longer information here"); $druid_page = Gnome2::DruidPageStandard->new_with_vals ("Another", undef, undef); $druid->append_page ($druid_page); $druid_page->append_item ("For more information:", Gnome2::HRef->new ('http://gtk2-perl.sourceforge.net', 'the gtk2-perl homepage'), "click on it. you know you want to."); $button = Gtk2::Button->new ('play a sound'); $button->signal_connect (clicked => sub { Gnome2::Sound->play ('/usr/share/sounds/info.wav'); 1; } ); $druid_page->append_item ("test gnome_sound_play / Gnome2::Sound->play", $button, "sample filename is hard-coded"); $button = Gtk2::Button->new ("About"); # everything after authors may default on Gnome2::About->new. $button->signal_connect (clicked => sub { Gnome2::About->new ("Druid Test", "0.2", "(c) 2003 by muppet and the Gnome authors whose example he ported", "decreasingly simple example of using a Gnome2::Druid and other widgets", ['muppet', 'Gnome authors'])->show; 1 }); $druid_page->append_item ("test gnome_sound_play / Gnome2::Sound->play", $button, "sample filename is hard-coded"); $druid_page = Gnome2::DruidPageEdge->new_with_vals ('finish', FALSE, "Goodbye", $end_page_text, undef, undef, undef); $druid->append_page ($druid_page); $window->show_all; $window->signal_connect (destroy => sub { Gtk2->main_quit; 1 }); Gtk2->main; Gnome2-1.046/copyright.pod0000644000175000017500000000017412542061635014003 0ustar lacklackCopyright (C) 2003-2004 by the gtk2-perl team. This software is licensed under the LGPL. See L for a full notice. Gnome2-1.046/perl-Gnome2.doap0000644000175000017500000000143412542061635014223 0ustar lacklack Gnome2 Perl interface to the 2.x series of the GNOME libraries Torsten Schönfeld tsch Gnome2-1.046/Makefile.PL0000644000175000017500000001502212542061635013237 0ustar lacklack# # $Id$ # use 5.008; use strict; use warnings; use ExtUtils::MakeMaker; use Cwd; use File::Spec; # minimum required version of dependencies we need to build our %build_reqs = ( 'perl-ExtUtils-Depends' => '0.20', 'perl-ExtUtils-PkgConfig' => '1.03', 'perl-Glib' => '1.04', 'perl-Gtk2' => '1.00', 'perl-Gnome2-Canvas' => '1.00', 'perl-Gnome2-VFS' => '1.00', 'Gnome' => '2.0.0', 'Bonobo' => '2.0.0', ); our %PREREQ_PM = ( 'Glib' => $build_reqs{'perl-Glib'}, 'Gtk2' => $build_reqs{'perl-Gtk2'}, 'Gnome2::Canvas' => $build_reqs{'perl-Gnome2-Canvas'}, 'Gnome2::VFS' => $build_reqs{'perl-Gnome2-VFS'}, 'ExtUtils::Depends' => $build_reqs{'perl-ExtUtils-Depends'}, 'ExtUtils::PkgConfig' => $build_reqs{'perl-ExtUtils-PkgConfig'}, ); my %meta_merge = ( q(meta-spec) => { version => '2', url => 'http://search.cpan.org/perldoc?CPAN::Meta::Spec', }, author => ['Gnome2 Perl Team '], release_status => 'stable', # valid values: https://metacpan.org/module/CPAN::Meta::Spec#license license => 'lgpl_2_1', resources => { license => 'http://www.gnu.org/licenses/lgpl-2.1.html', homepage => 'http://gtk2-perl.sourceforge.net', x_MailingList => 'https://mail.gnome.org/mailman/listinfo/gtk-perl-list', bugtracker => { web => 'http://rt.cpan.org/Public/Dist/Display.html?Name=Gnome2', mailto => 'bug-Gnome2 [at] rt.cpan.org', }, repository => { url => 'git://git.gnome.org/perl-Gnome2', type => 'git', web => 'http://git.gnome.org/browse/perl-Gnome2', }, }, prereqs => { configure => { requires => {%PREREQ_PM}, # no direct ref for 5.14 compatibility }, test => { recommends => { 'Test::Number::Delta' => 1.0, }, }, }, no_index => { file => [qw(inc/MakeHelper.pm)], }, ); # Writing a fake Makefile ensures that CPAN will pick up the correct # dependencies and install them. unless (eval "use ExtUtils::Depends '$build_reqs{'perl-ExtUtils-Depends'}';" . "use ExtUtils::PkgConfig '$build_reqs{'perl-ExtUtils-PkgConfig'}';" . "use Glib '$build_reqs{'perl-Glib'}';" . "use Gtk2 '$build_reqs{'perl-Gtk2'}';" . "use Gnome2::Canvas '$build_reqs{'perl-Gnome2-Canvas'}';" . "use Gnome2::VFS '$build_reqs{'perl-Gnome2-VFS'}';" . "use Gtk2::CodeGen;" . "use Glib::MakeHelper;" . "1") { warn "$@\n"; WriteMakefile( PREREQ_FATAL => 1, PREREQ_PM => \%PREREQ_PM, ); exit 1; # not reached } # now let's get started on the real work... # in theory, getting what we need to build libgnomeui should # also get everything we need for libgnome. my %libgnomeui_pkgcfg = ExtUtils::PkgConfig->find ("libgnomeui-2.0 >= $build_reqs{Gnome}"); my %libbonoboui_pkgcfg = ExtUtils::PkgConfig->find("libbonoboui-2.0 >= $build_reqs{Bonobo}"); mkdir 'build', 0777; our @xs_files = ; our %pod_files = ( 'Gnome2.pm' => '$(INST_MAN3DIR)/Gnome2.$(MAN3EXT)', # enums.pod is generated by rules we add to the postamble, below. # it is generated straight into blib to avoid dependency problems. '$(INST_LIB)/$(FULLEXT)/enums.pod' => '$(INST_MAN3DIR)/Gnome2::enums.$(MAN3EXT)', # we will be installing a whole slew of pod files, generated directly # from the xs source -- but to have them installed and manified # properly, we have to know their names at Makefile.PL time. # This is a bit of a chicken and egg problem, and this solution # basically means that if you create a new package name in the xs # code, you'll need to re-run Makefile.PL. you already need to # re-run to pick up new XS files, so that's not such a big deal. Glib::MakeHelper->do_pod_files (@xs_files), ); # # autogeneration # Gtk2::CodeGen->parse_maps ('gnome2perl'); Gtk2::CodeGen->write_boot; # # create version guards for the libs that don't provide them. # ExtUtils::PkgConfig->write_version_macros( "build/gnome2perl-versions.h", 'libgnome-2.0' => 'LIBGNOME', 'libgnomeui-2.0' => 'LIBGNOMEUI', 'libbonoboui-2.0' => 'LIBBONOBOUI', ); # now we're ready to start creating the makefile. # we need to use ExtUtils::Depends to get relevant information out of # the Glib extension, and to save config information for other modules which # will chain from this one. our $gnome2 = ExtUtils::Depends->new ('Gnome2', 'Gnome2::Canvas', 'Gnome2::VFS'); $gnome2->set_inc ($libgnomeui_pkgcfg{cflags} . " " . $libbonoboui_pkgcfg{cflags}); $gnome2->set_libs ($libgnomeui_pkgcfg{libs} . " " . $libbonoboui_pkgcfg{libs}); $gnome2->add_xs (@xs_files); $gnome2->add_pm ('Gnome2.pm' => '$(INST_LIBDIR)/Gnome2.pm'); $gnome2->add_typemaps (map {File::Spec->catfile(cwd(), $_)} 'build/gnome2perl.typemap', 'gnome.typemap'); $gnome2->install (qw(gnome2perl.h build/gnome2perl-autogen.h build/gnome2perl-versions.h doctypes)); $gnome2->save_config ('build/IFiles.pm'); WriteMakefile( NAME => 'Gnome2', VERSION_FROM => 'Gnome2.pm', # finds $VERSION ABSTRACT_FROM => 'Gnome2.pm', # retrieve abstract from module XSPROTOARG => '-noprototypes', MAN3PODS => \%pod_files, PREREQ_PM => \%PREREQ_PM, META_MERGE => \%meta_merge, $gnome2->get_makefile_vars, ); sub MY::postamble { return Glib::MakeHelper->postamble_clean () . Glib::MakeHelper->postamble_docs_full ( DEPENDS => $main::gnome2, DOCTYPES => 'doctypes', COPYRIGHT_FROM => 'copyright.pod' ) . Glib::MakeHelper->postamble_rpms ( 'GNOME' => $build_reqs{'Gnome'}, 'PERL_EXTUTILS_DEPENDS' => $build_reqs{'perl-ExtUtils-Depends'}, 'PERL_EXTUTILS_PKGCONFIG' => $build_reqs{'perl-ExtUtils-PkgConfig'}, 'PERL_GLIB' => $build_reqs{'perl-Glib'}, 'PERL_GTK' => $build_reqs{'perl-Gtk2'}, 'PERL_GNOME_CANVAS' => $build_reqs{'perl-Gnome2-Canvas'}, 'PERL_GNOME_VFS' => $build_reqs{'perl-Gnome2-VFS'}, ) . " \$(INST_LIB)/\$(FULLEXT)/enums.pod : \$(BLIB_DONE) \$(INST_LIB)/\$(FULLEXT)/ maps podifyenums.pl \$(PERLRUNINST) -M\$(NAME) podifyenums.pl \$(NAME) maps > \$@ "; } Gnome2-1.046/xs/0000755000175000017500000000000012542062376011722 5ustar lacklackGnome2-1.046/xs/GnomeIconList.xs0000644000175000017500000002043312542061635015007 0ustar lacklack/* * Copyright (C) 2003 by the gtk2-perl team (see the file AUTHORS) * * This library is free software; you can redistribute it and/or * modify it under the terms of the GNU Lesser General Public * License as published by the Free Software Foundation; either * version 2.1 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 LICENSE file in the top level of this distribution * for the complete license terms. * */ #include "gnome2perl.h" typedef enum { GNOME2PERL_ICON_LIST_IS_EDITABLE = 1 << 0, GNOME2PERL_ICON_LIST_STATIC_TEXT = 1 << 1 } Gnome2PerlIconListFlags; static GType gnome2perl_icon_list_flags_get_type (void) { static GType etype = 0; if (etype == 0) { static const GFlagsValue values[] = { { GNOME2PERL_ICON_LIST_IS_EDITABLE, "GNOME_ICON_LIST_IS_EDITABLE", "is-editable" }, { GNOME2PERL_ICON_LIST_STATIC_TEXT, "GNOME_ICON_LIST_STATIC_TEXT", "static-text" }, { 0, NULL, NULL } }; etype = g_flags_register_static ("Gnome2PerlIconListFlags", values); } return etype; } #if 0 /* unused at the moment */ static SV * newSVGnome2PerlIconListFlags (Gnome2PerlIconListFlags flags) { return gperl_convert_back_flags (gnome2perl_icon_list_flags_get_type (), flags); } #endif static Gnome2PerlIconListFlags SvGnome2PerlIconListFlags (SV *sv) { return gperl_convert_flags (gnome2perl_icon_list_flags_get_type (), sv); } MODULE = Gnome2::IconList PACKAGE = Gnome2::IconList PREFIX = gnome_icon_list_ ## GtkWidget *gnome_icon_list_new (guint icon_width, GtkAdjustment *adj, int flags) GtkWidget * gnome_icon_list_new (class, icon_width, adj, flags) guint icon_width GtkAdjustment *adj Gnome2PerlIconListFlags flags C_ARGS: icon_width, adj, flags ## void gnome_icon_list_set_hadjustment (GnomeIconList *gil, GtkAdjustment *hadj) void gnome_icon_list_set_hadjustment (gil, hadj) GnomeIconList *gil GtkAdjustment *hadj ## void gnome_icon_list_set_vadjustment (GnomeIconList *gil, GtkAdjustment *vadj) void gnome_icon_list_set_vadjustment (gil, vadj) GnomeIconList *gil GtkAdjustment *vadj ## void gnome_icon_list_freeze (GnomeIconList *gil) void gnome_icon_list_freeze (gil) GnomeIconList *gil ## void gnome_icon_list_thaw (GnomeIconList *gil) void gnome_icon_list_thaw (gil) GnomeIconList *gil ## void gnome_icon_list_insert (GnomeIconList *gil, int pos, const char *icon_filename, const char *text) void gnome_icon_list_insert (gil, pos, icon_filename, text) GnomeIconList *gil int pos const char *icon_filename const char *text ## void gnome_icon_list_insert_pixbuf (GnomeIconList *gil, int pos, GdkPixbuf *im, const char *icon_filename, const char *text) void gnome_icon_list_insert_pixbuf (gil, pos, im, icon_filename, text) GnomeIconList *gil int pos GdkPixbuf *im const char *icon_filename const char *text ## int gnome_icon_list_append (GnomeIconList *gil, const char *icon_filename, const char *text) int gnome_icon_list_append (gil, icon_filename, text) GnomeIconList *gil const char *icon_filename const char *text ## int gnome_icon_list_append_pixbuf (GnomeIconList *gil, GdkPixbuf *im, const char *icon_filename, const char *text) int gnome_icon_list_append_pixbuf (gil, im, icon_filename, text) GnomeIconList *gil GdkPixbuf *im const char *icon_filename const char *text ## void gnome_icon_list_clear (GnomeIconList *gil) void gnome_icon_list_clear (gil) GnomeIconList *gil ## void gnome_icon_list_remove (GnomeIconList *gil, int pos) void gnome_icon_list_remove (gil, pos) GnomeIconList *gil int pos ## guint gnome_icon_list_get_num_icons (GnomeIconList *gil) guint gnome_icon_list_get_num_icons (gil) GnomeIconList *gil ## GtkSelectionMode gnome_icon_list_get_selection_mode(GnomeIconList *gil) GtkSelectionMode gnome_icon_list_get_selection_mode (gil) GnomeIconList *gil ## void gnome_icon_list_set_selection_mode (GnomeIconList *gil, GtkSelectionMode mode) void gnome_icon_list_set_selection_mode (gil, mode) GnomeIconList *gil GtkSelectionMode mode ## void gnome_icon_list_select_icon (GnomeIconList *gil, int pos) void gnome_icon_list_select_icon (gil, pos) GnomeIconList *gil int pos ## void gnome_icon_list_unselect_icon (GnomeIconList *gil, int pos) void gnome_icon_list_unselect_icon (gil, pos) GnomeIconList *gil int pos #if LIBGNOMEUI_CHECK_VERSION (2, 8, 0) ## void gnome_icon_list_select_all (GnomeIconList *gil) void gnome_icon_list_select_all (gil) GnomeIconList *gil #endif ## int gnome_icon_list_unselect_all (GnomeIconList *gil) int gnome_icon_list_unselect_all (gil) GnomeIconList *gil =for apidoc Returns a list of integers. =cut ## GList * gnome_icon_list_get_selection (GnomeIconList *gil) void gnome_icon_list_get_selection (gil) GnomeIconList *gil PREINIT: GList *list = NULL; PPCODE: list = gnome_icon_list_get_selection (gil); for (; list != NULL; list = list->next) /* cast to avoid warning. */ XPUSHs (sv_2mortal (newSViv ((gint) list->data))); ## void gnome_icon_list_focus_icon (GnomeIconList *gil, gint idx) void gnome_icon_list_focus_icon (gil, idx) GnomeIconList *gil gint idx ## void gnome_icon_list_set_icon_width (GnomeIconList *gil, int w) void gnome_icon_list_set_icon_width (gil, w) GnomeIconList *gil int w ## void gnome_icon_list_set_row_spacing (GnomeIconList *gil, int pixels) void gnome_icon_list_set_row_spacing (gil, pixels) GnomeIconList *gil int pixels ## void gnome_icon_list_set_col_spacing (GnomeIconList *gil, int pixels) void gnome_icon_list_set_col_spacing (gil, pixels) GnomeIconList *gil int pixels ## void gnome_icon_list_set_text_spacing (GnomeIconList *gil, int pixels) void gnome_icon_list_set_text_spacing (gil, pixels) GnomeIconList *gil int pixels ## void gnome_icon_list_set_icon_border (GnomeIconList *gil, int pixels) void gnome_icon_list_set_icon_border (gil, pixels) GnomeIconList *gil int pixels ## void gnome_icon_list_set_separators (GnomeIconList *gil, const char *sep) void gnome_icon_list_set_separators (gil, sep) GnomeIconList *gil const char *sep ## gchar * gnome_icon_list_get_icon_filename (GnomeIconList *gil, int idx) gchar_own * gnome_icon_list_get_icon_filename (gil, idx) GnomeIconList *gil int idx ## int gnome_icon_list_find_icon_from_filename (GnomeIconList *gil, const char *filename) int gnome_icon_list_find_icon_from_filename (gil, filename) GnomeIconList *gil const char *filename ### void gnome_icon_list_set_icon_data (GnomeIconList *gil, int idx, gpointer data) #void #gnome_icon_list_set_icon_data (gil, idx, data) # GnomeIconList *gil # int idx # gpointer data ### void gnome_icon_list_set_icon_data_full (GnomeIconList *gil, int pos, gpointer data, GDestroyNotify destroy) #void #gnome_icon_list_set_icon_data_full (gil, pos, data, destroy) # GnomeIconList *gil # int pos # gpointer data # GDestroyNotify destroy ### int gnome_icon_list_find_icon_from_data (GnomeIconList *gil, gpointer data) #int #gnome_icon_list_find_icon_from_data (gil, data) # GnomeIconList *gil # gpointer data ### gpointer gnome_icon_list_get_icon_data (GnomeIconList *gil, int pos) #gpointer #gnome_icon_list_get_icon_data (gil, pos) # GnomeIconList *gil # int pos ## void gnome_icon_list_moveto (GnomeIconList *gil, int pos, double yalign) void gnome_icon_list_moveto (gil, pos, yalign) GnomeIconList *gil int pos double yalign ## GtkVisibility gnome_icon_list_icon_is_visible (GnomeIconList *gil, int pos) GtkVisibility gnome_icon_list_icon_is_visible (gil, pos) GnomeIconList *gil int pos ## int gnome_icon_list_get_icon_at (GnomeIconList *gil, int x, int y) int gnome_icon_list_get_icon_at (gil, x, y) GnomeIconList *gil int x int y ## int gnome_icon_list_get_items_per_line (GnomeIconList *gil) int gnome_icon_list_get_items_per_line (gil) GnomeIconList *gil ## GnomeIconTextItem *gnome_icon_list_get_icon_text_item (GnomeIconList *gil, int idx) GnomeIconTextItem * gnome_icon_list_get_icon_text_item (gil, idx) GnomeIconList *gil int idx ## GnomeCanvasPixbuf *gnome_icon_list_get_icon_pixbuf_item (GnomeIconList *gil, int idx) GObject * gnome_icon_list_get_icon_pixbuf_item (gil, idx) GnomeIconList *gil int idx CODE: RETVAL = (GObject *) gnome_icon_list_get_icon_pixbuf_item (gil, idx); OUTPUT: RETVAL Gnome2-1.046/xs/GnomeModuleInfo.xs0000644000175000017500000000321012542061635015316 0ustar lacklack/* * Copyright (C) 2003, 2013 by the gtk2-perl team (see the file AUTHORS) * * This library is free software; you can redistribute it and/or * modify it under the terms of the GNU Lesser General Public * License as published by the Free Software Foundation; either * version 2.1 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 LICENSE file in the top level of this distribution * for the complete license terms. * */ #include "gnome2perl.h" MODULE = Gnome2::ModuleInfo PACKAGE = Gnome2::ModuleInfo GnomeModuleInfo * libgnome (class) ALIAS: Gnome2::ModuleInfo::libgnomeui = 1 Gnome2::ModuleInfo::bonobo = 2 CODE: switch (ix) { /* casting off const to avoid compiler warnings */ case 0: RETVAL = (GnomeModuleInfo*) LIBGNOME_MODULE; break; case 1: RETVAL = (GnomeModuleInfo*) LIBGNOME_MODULE; break; case 2: RETVAL = (GnomeModuleInfo*) gnome_bonobo_module_info_get (); break; default: RETVAL = NULL; } OUTPUT: RETVAL SV * name (module_info) GnomeModuleInfo * module_info ALIAS: Gnome2::ModuleInfo::version = 1 Gnome2::ModuleInfo::description = 2 Gnome2::ModuleInfo::opt_prefix = 3 CODE: switch (ix) { case 0: RETVAL = newSVpv (module_info->name, 0); break; case 1: RETVAL = newSVpv (module_info->version, 0); break; case 2: RETVAL = newSVpv (module_info->description, 0); break; case 3: RETVAL = newSVpv (module_info->opt_prefix, 0); break; default: RETVAL = &PL_sv_undef; } OUTPUT: RETVAL Gnome2-1.046/xs/GnomeAppBar.xs0000644000175000017500000000542312542061635014432 0ustar lacklack/* * Copyright (C) 2003 by the gtk2-perl team (see the file AUTHORS) * * This library is free software; you can redistribute it and/or * modify it under the terms of the GNU Lesser General Public * License as published by the Free Software Foundation; either * version 2.1 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 LICENSE file in the top level of this distribution * for the complete license terms. * */ #include "gnome2perl.h" MODULE = Gnome2::AppBar PACKAGE = Gnome2::AppBar PREFIX = gnome_appbar_ ## GtkWidget* gnome_appbar_new (gboolean has_progress, gboolean has_status, GnomePreferencesType interactivity) GtkWidget* gnome_appbar_new (class, has_progress, has_status, interactivity) gboolean has_progress gboolean has_status GnomePreferencesType interactivity C_ARGS: has_progress, has_status, interactivity ## void gnome_appbar_set_status (GnomeAppBar * appbar, const gchar * status) void gnome_appbar_set_status (appbar, status) GnomeAppBar * appbar const gchar * status ## GtkWidget* gnome_appbar_get_status (GnomeAppBar * appbar) GtkWidget* gnome_appbar_get_status (appbar) GnomeAppBar * appbar ## void gnome_appbar_set_default (GnomeAppBar * appbar, const gchar * default_status) void gnome_appbar_set_default (appbar, default_status) GnomeAppBar * appbar const gchar * default_status ## void gnome_appbar_push (GnomeAppBar * appbar, const gchar * status) void gnome_appbar_push (appbar, status) GnomeAppBar * appbar const gchar * status ## void gnome_appbar_pop (GnomeAppBar * appbar) void gnome_appbar_pop (appbar) GnomeAppBar * appbar ## void gnome_appbar_clear_stack (GnomeAppBar * appbar) void gnome_appbar_clear_stack (appbar) GnomeAppBar * appbar ## void gnome_appbar_set_progress_percentage (GnomeAppBar *appbar, gfloat percentage) void gnome_appbar_set_progress_percentage (appbar, percentage) GnomeAppBar *appbar gfloat percentage ## GtkProgressBar* gnome_appbar_get_progress (GnomeAppBar * appbar) GtkProgressBar* gnome_appbar_get_progress (appbar) GnomeAppBar * appbar ## void gnome_appbar_refresh (GnomeAppBar * appbar) void gnome_appbar_refresh (appbar) GnomeAppBar * appbar ## void gnome_appbar_set_prompt (GnomeAppBar * appbar, const gchar * prompt, gboolean modal) void gnome_appbar_set_prompt (appbar, prompt, modal) GnomeAppBar * appbar const gchar * prompt gboolean modal ## void gnome_appbar_clear_prompt (GnomeAppBar * appbar) void gnome_appbar_clear_prompt (appbar) GnomeAppBar * appbar ## gchar * gnome_appbar_get_response (GnomeAppBar * appbar) gchar_own * gnome_appbar_get_response (appbar) GnomeAppBar * appbar Gnome2-1.046/xs/GnomeApp.xs0000644000175000017500000000646012542061635014007 0ustar lacklack/* * Copyright (C) 2003 by the gtk2-perl team (see the file AUTHORS) * * This library is free software; you can redistribute it and/or * modify it under the terms of the GNU Lesser General Public * License as published by the Free Software Foundation; either * version 2.1 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 LICENSE file in the top level of this distribution * for the complete license terms. * */ #include "gnome2perl.h" MODULE = Gnome2::App PACKAGE = Gnome2::App PREFIX = gnome_app_ SV * prefix (app) GnomeApp *app ALIAS: Gnome2::App::dock = 1 Gnome2::App::statusbar = 2 Gnome2::App::vbox = 3 Gnome2::App::menubar = 4 Gnome2::App::contents = 5 Gnome2::App::layout = 6 Gnome2::App::accel_group = 7 Gnome2::App::get_enable_layout_config = 8 CODE: switch (ix) { case 0: RETVAL = newSVGChar (app->prefix); break; case 1: RETVAL = newSVGtkWidget (app->dock); break; case 2: RETVAL = newSVGtkWidget (app->statusbar); break; case 3: RETVAL = newSVGtkWidget (app->vbox); break; case 4: RETVAL = newSVGtkWidget (app->menubar); break; case 5: RETVAL = newSVGtkWidget (app->contents); break; case 6: RETVAL = newSVBonoboDockLayout (app->layout); break; case 7: RETVAL = newSVGtkAccelGroup (app->accel_group); break; case 8: RETVAL = newSVuv (app->enable_layout_config); break; default: RETVAL = &PL_sv_undef; } OUTPUT: RETVAL ## Create a new (empty) application window. You must specify the application's ## name (used internally as an identifier). The window title can be left as ## NULL, in which case the window's title will not be set. GtkWidget *gnome_app_new (class, appname, title=NULL) const gchar *appname const gchar *title C_ARGS: appname, title ## Sets the menu bar of the application window void gnome_app_set_menus (GnomeApp *app, GtkMenuBar *menubar); ## Sets the main toolbar of the application window void gnome_app_set_toolbar (GnomeApp *app, GtkToolbar *toolbar); ## Sets the status bar of the application window void gnome_app_set_statusbar (GnomeApp *app, GtkWidget *statusbar); ## Sets the status bar of the application window, but uses the given ## container widget rather than creating a new one. void gnome_app_set_statusbar_custom (GnomeApp *app, GtkWidget *container, GtkWidget *statusbar); ## Sets the content area of the application window void gnome_app_set_contents (GnomeApp *app, GtkWidget *contents); void gnome_app_add_toolbar (GnomeApp *app, GtkToolbar *toolbar, const gchar *name, BonoboDockItemBehavior behavior, BonoboDockPlacement placement, gint band_num, gint band_position, gint offset); GtkWidget *gnome_app_add_docked (GnomeApp *app, GtkWidget *widget, const gchar *name, BonoboDockItemBehavior behavior, BonoboDockPlacement placement, gint band_num, gint band_position, gint offset); void gnome_app_add_dock_item (GnomeApp *app, BonoboDockItem *item, BonoboDockPlacement placement, gint band_num, gint band_position, gint offset); void gnome_app_enable_layout_config (GnomeApp *app, gboolean enable); BonoboDock *gnome_app_get_dock (GnomeApp *app); BonoboDockItem *gnome_app_get_dock_item_by_name (GnomeApp *app, const gchar *name); Gnome2-1.046/xs/GnomeIconEntry.xs0000644000175000017500000000460112542061635015174 0ustar lacklack/* * Copyright (C) 2003 by the gtk2-perl team (see the file AUTHORS) * * This library is free software; you can redistribute it and/or * modify it under the terms of the GNU Lesser General Public * License as published by the Free Software Foundation; either * version 2.1 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 LICENSE file in the top level of this distribution * for the complete license terms. * */ #include "gnome2perl.h" MODULE = Gnome2::IconEntry PACKAGE = Gnome2::IconEntry PREFIX = gnome_icon_entry_ ## GtkWidget *gnome_icon_entry_new (const gchar *history_id, const gchar *browse_dialog_title) GtkWidget * gnome_icon_entry_new (class, history_id, browse_dialog_title) const gchar *history_id const gchar *browse_dialog_title C_ARGS: history_id, browse_dialog_title ## void gnome_icon_entry_set_pixmap_subdir(GnomeIconEntry *ientry, const gchar *subdir) void gnome_icon_entry_set_pixmap_subdir (ientry, subdir) GnomeIconEntry *ientry const gchar *subdir ## gchar *gnome_icon_entry_get_filename(GnomeIconEntry *ientry) gchar_own * gnome_icon_entry_get_filename (ientry) GnomeIconEntry *ientry ## gboolean gnome_icon_entry_set_filename(GnomeIconEntry *ientry, const gchar *filename) gboolean gnome_icon_entry_set_filename (ientry, filename) GnomeIconEntry *ientry const gchar *filename ## void gnome_icon_entry_set_browse_dialog_title(GnomeIconEntry *ientry, const gchar *browse_dialog_title) void gnome_icon_entry_set_browse_dialog_title (ientry, browse_dialog_title) GnomeIconEntry *ientry const gchar *browse_dialog_title ## void gnome_icon_entry_set_history_id(GnomeIconEntry *ientry, const gchar *history_id) void gnome_icon_entry_set_history_id (ientry, history_id) GnomeIconEntry *ientry const gchar *history_id #### this appeared sometime between 2.3.0 and 2.3.3.1 ... #if LIBGNOMEUI_CHECK_VERSION(2, 4, 0) ## void gnome_icon_entry_set_max_saved (GnomeIconEntry *ientry, guint max_saved) void gnome_icon_entry_set_max_saved (ientry, max_saved) GnomeIconEntry *ientry guint max_saved #endif ## GtkWidget *gnome_icon_entry_pick_dialog (GnomeIconEntry *ientry) GtkWidget_ornull * gnome_icon_entry_pick_dialog (ientry) GnomeIconEntry *ientry Gnome2-1.046/xs/GnomeI18N.xs0000644000175000017500000000256512542061635013750 0ustar lacklack/* * Copyright (C) 2003, 2013 by the gtk2-perl team (see the file AUTHORS) * * This library is free software; you can redistribute it and/or * modify it under the terms of the GNU Lesser General Public * License as published by the Free Software Foundation; either * version 2.1 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 LICENSE file in the top level of this distribution * for the complete license terms. * */ #include "gnome2perl.h" MODULE = Gnome2::I18N PACKAGE = Gnome2::I18N PREFIX = gnome_i18n_ =for apidoc Returns a list of languages. =cut ## const GList * gnome_i18n_get_language_list (const gchar *category_name) void gnome_i18n_get_language_list (class, category_name=NULL) const gchar *category_name PREINIT: const GList *results; PPCODE: results = gnome_i18n_get_language_list (category_name); for ( ; results != NULL; results = results->next) XPUSHs (sv_2mortal (newSVpv (results->data, 0))); ## void gnome_i18n_push_c_numeric_locale (void) void gnome_i18n_push_c_numeric_locale (class) C_ARGS: /* void */ ## void gnome_i18n_pop_c_numeric_locale (void) void gnome_i18n_pop_c_numeric_locale (class) C_ARGS: /* void */ Gnome2-1.046/xs/GnomeScore.xs0000644000175000017500000000371512542061635014342 0ustar lacklack/* * Copyright (C) 2003, 2013 by the gtk2-perl team (see the file AUTHORS) * * This library is free software; you can redistribute it and/or * modify it under the terms of the GNU Lesser General Public * License as published by the Free Software Foundation; either * version 2.1 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 LICENSE file in the top level of this distribution * for the complete license terms. * */ #include "gnome2perl.h" MODULE = Gnome2::Score PACKAGE = Gnome2::Score PREFIX = gnome_score_ ## gint gnome_score_init (const gchar *gamename) gint gnome_score_init (class, gamename) const gchar *gamename C_ARGS: gamename ## gint gnome_score_log (gfloat score, const gchar *level, gboolean higher_to_lower_score_order); gint gnome_score_log (class, score, level, higher_to_lower_score_order) gfloat score const gchar *level gboolean higher_to_lower_score_order C_ARGS: score, level, higher_to_lower_score_order =for apidoc Returns a reference to an array per player, containing the name, the score and the score time. =cut ## gint gnome_score_get_notable(const gchar *gamename, const gchar *level, gchar ***names, gfloat **scores, time_t **scoretimes); void gnome_score_get_notable (class, gamename, level) const gchar *gamename const gchar *level PREINIT: gint results, i; gchar **names; gfloat *scores; time_t *scoretimes; PPCODE: results = gnome_score_get_notable (gamename, level, &names, &scores, &scoretimes); for (i = 0; i < results; i++) { AV *set = newAV (); av_store (set, 0, newSVpv (names[i], 0)); av_store (set, 1, newSVnv (scores[i])); av_store (set, 2, newSViv (scoretimes[i])); XPUSHs (sv_2mortal (newRV_noinc ((SV*) set))); } g_free (names); g_free (scores); g_free (scoretimes); Gnome2-1.046/xs/GnomeIconTextItem.xs0000644000175000017500000000433112542061635015636 0ustar lacklack/* * Copyright (C) 2003 by the gtk2-perl team (see the file AUTHORS) * * This library is free software; you can redistribute it and/or * modify it under the terms of the GNU Lesser General Public * License as published by the Free Software Foundation; either * version 2.1 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 LICENSE file in the top level of this distribution * for the complete license terms. * */ #include "gnome2perl.h" MODULE = Gnome2::IconTextItem PACKAGE = Gnome2::IconTextItem PREFIX = gnome_icon_text_item_ ## void gnome_icon_text_item_configure (GnomeIconTextItem *iti, int x, int y, int width, const char *fontname, const char *text, gboolean is_editable, gboolean is_static) void gnome_icon_text_item_configure (iti, x, y, width, fontname, text, is_editable, is_static) GnomeIconTextItem *iti int x int y int width const char *fontname const char *text gboolean is_editable gboolean is_static ## void gnome_icon_text_item_setxy (GnomeIconTextItem *iti, int x, int y) void gnome_icon_text_item_setxy (iti, x, y) GnomeIconTextItem *iti int x int y ## void gnome_icon_text_item_select (GnomeIconTextItem *iti, gboolean sel) void gnome_icon_text_item_select (iti, sel) GnomeIconTextItem *iti gboolean sel ## void gnome_icon_text_item_focus (GnomeIconTextItem *iti, gboolean focused) void gnome_icon_text_item_focus (iti, focused) GnomeIconTextItem *iti gboolean focused ## const char *gnome_icon_text_item_get_text (GnomeIconTextItem *iti) const char * gnome_icon_text_item_get_text (iti) GnomeIconTextItem *iti ## void gnome_icon_text_item_start_editing (GnomeIconTextItem *iti) void gnome_icon_text_item_start_editing (iti) GnomeIconTextItem *iti ## void gnome_icon_text_item_stop_editing (GnomeIconTextItem *iti, gboolean accept) void gnome_icon_text_item_stop_editing (iti, accept) GnomeIconTextItem *iti gboolean accept ## GtkEditable *gnome_icon_text_item_get_editable (GnomeIconTextItem *iti) GtkEditable * gnome_icon_text_item_get_editable (iti) GnomeIconTextItem *iti Gnome2-1.046/xs/GnomePasswordDialog.xs0000644000175000017500000001277512542061635016217 0ustar lacklack/* * Copyright (C) 2003 by the gtk2-perl team (see the file AUTHORS) * * This library is free software; you can redistribute it and/or * modify it under the terms of the GNU Lesser General Public * License as published by the Free Software Foundation; either * version 2.1 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 LICENSE file in the top level of this distribution * for the complete license terms. * */ #include "gnome2perl.h" MODULE = Gnome2::PasswordDialog PACKAGE = Gnome2::PasswordDialog PREFIX = gnome_password_dialog_ BOOT: /* pass -Werror even if there are no xsubs at all */ #ifndef GNOME_TYPE_PASSWORD_DIALOG PERL_UNUSED_VAR (file); #endif #ifdef GNOME_TYPE_PASSWORD_DIALOG ## GtkWidget* gnome_password_dialog_new (const char *dialog_title, const char *message, const char *username, const char *password, gboolean readonly_username) GtkWidget* gnome_password_dialog_new (class, dialog_title, message, username, password, readonly_username) const char *dialog_title const char *message const char *username const char *password gboolean readonly_username C_ARGS: dialog_title, message, username, password, readonly_username ## gboolean gnome_password_dialog_run_and_block (GnomePasswordDialog *password_dialog) gboolean gnome_password_dialog_run_and_block (password_dialog) GnomePasswordDialog *password_dialog ## void gnome_password_dialog_set_username (GnomePasswordDialog *password_dialog, const char *username) void gnome_password_dialog_set_username (password_dialog, username) GnomePasswordDialog *password_dialog const char *username ## void gnome_password_dialog_set_password (GnomePasswordDialog *password_dialog, const char *password) void gnome_password_dialog_set_password (password_dialog, password) GnomePasswordDialog *password_dialog const char *password ## void gnome_password_dialog_set_readonly_username (GnomePasswordDialog *password_dialog, gboolean readonly) void gnome_password_dialog_set_readonly_username (password_dialog, readonly) GnomePasswordDialog *password_dialog gboolean readonly ## char * gnome_password_dialog_get_username (GnomePasswordDialog *password_dialog) char * gnome_password_dialog_get_username (password_dialog) GnomePasswordDialog *password_dialog CLEANUP: g_free (RETVAL); ## char * gnome_password_dialog_get_password (GnomePasswordDialog *password_dialog) char * gnome_password_dialog_get_password (password_dialog) GnomePasswordDialog *password_dialog CLEANUP: g_free (RETVAL); # --------------------------------------------------------------------------- # #if LIBGNOMEUI_CHECK_VERSION (2, 6, 0) ## void gnome_password_dialog_set_show_username (GnomePasswordDialog *password_dialog, gboolean show) void gnome_password_dialog_set_show_username (password_dialog, show) GnomePasswordDialog *password_dialog gboolean show ## void gnome_password_dialog_set_show_domain (GnomePasswordDialog *password_dialog, gboolean show) void gnome_password_dialog_set_show_domain (password_dialog, show) GnomePasswordDialog *password_dialog gboolean show ## void gnome_password_dialog_set_show_password (GnomePasswordDialog *password_dialog, gboolean show) void gnome_password_dialog_set_show_password (password_dialog, show) GnomePasswordDialog *password_dialog gboolean show ## void gnome_password_dialog_set_domain (GnomePasswordDialog *password_dialog, const char *domain) void gnome_password_dialog_set_domain (password_dialog, domain) GnomePasswordDialog *password_dialog const char *domain ## void gnome_password_dialog_set_readonly_domain (GnomePasswordDialog *password_dialog, gboolean readonly) void gnome_password_dialog_set_readonly_domain (password_dialog, readonly) GnomePasswordDialog *password_dialog gboolean readonly ## void gnome_password_dialog_set_show_remember (GnomePasswordDialog *password_dialog, gboolean show_remember) void gnome_password_dialog_set_show_remember (password_dialog, show_remember) GnomePasswordDialog *password_dialog gboolean show_remember ## void gnome_password_dialog_set_remember (GnomePasswordDialog *password_dialog, GnomePasswordDialogRemember remember) void gnome_password_dialog_set_remember (password_dialog, remember) GnomePasswordDialog *password_dialog GnomePasswordDialogRemember remember ## GnomePasswordDialogRemember gnome_password_dialog_get_remember (GnomePasswordDialog *password_dialog) GnomePasswordDialogRemember gnome_password_dialog_get_remember (password_dialog) GnomePasswordDialog *password_dialog ## char * gnome_password_dialog_get_domain (GnomePasswordDialog *password_dialog) char * gnome_password_dialog_get_domain (password_dialog) GnomePasswordDialog *password_dialog CLEANUP: g_free (RETVAL); #endif /* 2.6.0 */ # --------------------------------------------------------------------------- # #if LIBGNOMEUI_CHECK_VERSION (2, 8, 0) ## void gnome_password_dialog_set_show_userpass_buttons (GnomePasswordDialog *password_dialog, gboolean show_userpass_buttons) void gnome_password_dialog_set_show_userpass_buttons (password_dialog, show_userpass_buttons) GnomePasswordDialog *password_dialog gboolean show_userpass_buttons ## gboolean gnome_password_dialog_anon_selected (GnomePasswordDialog *password_dialog) gboolean gnome_password_dialog_anon_selected (password_dialog) GnomePasswordDialog *password_dialog #endif /* 2.8.0 */ #endif /* GNOME_TYPE_PASSWORD_DIALOG */ Gnome2-1.046/xs/GnomeColorPicker.xs0000644000175000017500000000605012542061635015476 0ustar lacklack/* * Copyright (C) 2003 by the gtk2-perl team (see the file AUTHORS) * * This library is free software; you can redistribute it and/or * modify it under the terms of the GNU Lesser General Public * License as published by the Free Software Foundation; either * version 2.1 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 LICENSE file in the top level of this distribution * for the complete license terms. * */ #include "gnome2perl.h" /* gnome-color-picker.h was deprecated in 2003 */ #undef GNOME_DISABLE_DEPRECATED MODULE = Gnome2::ColorPicker PACKAGE = Gnome2::ColorPicker PREFIX = gnome_color_picker_ GtkWidget * gnome_color_picker_new (class) C_ARGS: /* void */ ## void gnome_color_picker_set_d (GnomeColorPicker *cp, gdouble r, gdouble g, gdouble b, gdouble a) void gnome_color_picker_set_d (cp, r, g, b, a) GnomeColorPicker *cp gdouble r gdouble g gdouble b gdouble a ## void gnome_color_picker_get_d (GnomeColorPicker *cp, gdouble *r, gdouble *g, gdouble *b, gdouble *a) void gnome_color_picker_get_d (GnomeColorPicker *cp, OUTLIST gdouble r, OUTLIST gdouble g, OUTLIST gdouble b, OUTLIST gdouble a) ## void gnome_color_picker_set_i8 (GnomeColorPicker *cp, guint8 r, guint8 g, guint8 b, guint8 a) void gnome_color_picker_set_i8 (cp, r, g, b, a) GnomeColorPicker *cp guint8 r guint8 g guint8 b guint8 a ## void gnome_color_picker_get_i8 (GnomeColorPicker *cp, guint8 *r, guint8 *g, guint8 *b, guint8 *a) void gnome_color_picker_get_i8 (GnomeColorPicker *cp, OUTLIST guint8 r, OUTLIST guint8 g, OUTLIST guint8 b, OUTLIST guint8 a) ## void gnome_color_picker_set_i16 (GnomeColorPicker *cp, gushort r, gushort g, gushort b, gushort a) void gnome_color_picker_set_i16 (cp, r, g, b, a) GnomeColorPicker *cp guint16 r guint16 g guint16 b guint16 a ## void gnome_color_picker_get_i16 (GnomeColorPicker *cp, gushort *r, gushort *g, gushort *b, gushort *a) void gnome_color_picker_get_i16 (GnomeColorPicker *cp, OUTLIST guint16 r, OUTLIST guint16 g, OUTLIST guint16 b, OUTLIST guint16 a) ## void gnome_color_picker_set_dither (GnomeColorPicker *cp, gboolean dither) void gnome_color_picker_set_dither (cp, dither) GnomeColorPicker *cp gboolean dither ## gboolean gnome_color_picker_get_dither (GnomeColorPicker *cp) gboolean gnome_color_picker_get_dither (cp) GnomeColorPicker *cp ## void gnome_color_picker_set_use_alpha (GnomeColorPicker *cp, gboolean use_alpha) void gnome_color_picker_set_use_alpha (cp, use_alpha) GnomeColorPicker *cp gboolean use_alpha ## gboolean gnome_color_picker_get_use_alpha (GnomeColorPicker *cp) gboolean gnome_color_picker_get_use_alpha (cp) GnomeColorPicker *cp ## void gnome_color_picker_set_title (GnomeColorPicker *cp, const gchar *title) void gnome_color_picker_set_title (cp, title) GnomeColorPicker *cp const gchar *title const gchar * gnome_color_picker_get_title (cp) GnomeColorPicker *cp Gnome2-1.046/xs/GnomeThumbnail.xs0000644000175000017500000000745012542061635015212 0ustar lacklack/* * Copyright (C) 2003 by the gtk2-perl team (see the file AUTHORS) * * This library is free software; you can redistribute it and/or * modify it under the terms of the GNU Lesser General Public * License as published by the Free Software Foundation; either * version 2.1 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 LICENSE file in the top level of this distribution * for the complete license terms. * */ #include "gnome2perl.h" MODULE = Gnome2::Thumbnail PACKAGE = Gnome2::ThumbnailFactory PREFIX = gnome_thumbnail_factory_ BOOT: /* pass -Werror even if there are no xsubs at all */ #ifndef GNOME_TYPE_THUMBNAIL_FACTORY PERL_UNUSED_VAR (file); #endif #ifdef GNOME_TYPE_THUMBNAIL_FACTORY ## GnomeThumbnailFactory *gnome_thumbnail_factory_new (GnomeThumbnailSize size) GnomeThumbnailFactory * gnome_thumbnail_factory_new (class, size) GnomeThumbnailSize size C_ARGS: size ## char * gnome_thumbnail_factory_lookup (GnomeThumbnailFactory *factory, const char *uri, time_t mtime) char * gnome_thumbnail_factory_lookup (factory, uri, mtime) GnomeThumbnailFactory *factory const char *uri time_t mtime ## gboolean gnome_thumbnail_factory_has_valid_failed_thumbnail (GnomeThumbnailFactory *factory, const char *uri, time_t mtime) gboolean gnome_thumbnail_factory_has_valid_failed_thumbnail (factory, uri, mtime) GnomeThumbnailFactory *factory const char *uri time_t mtime ## gboolean gnome_thumbnail_factory_can_thumbnail (GnomeThumbnailFactory *factory, const char *uri, const char *mime_type, time_t mtime) gboolean gnome_thumbnail_factory_can_thumbnail (factory, uri, mime_type, mtime) GnomeThumbnailFactory *factory const char *uri const char *mime_type time_t mtime ## GdkPixbuf * gnome_thumbnail_factory_generate_thumbnail (GnomeThumbnailFactory *factory, const char *uri, const char *mime_type) GdkPixbuf * gnome_thumbnail_factory_generate_thumbnail (factory, uri, mime_type) GnomeThumbnailFactory *factory const char *uri const char *mime_type ## void gnome_thumbnail_factory_save_thumbnail (GnomeThumbnailFactory *factory, GdkPixbuf *thumbnail, const char *uri, time_t original_mtime) void gnome_thumbnail_factory_save_thumbnail (factory, thumbnail, uri, original_mtime) GnomeThumbnailFactory *factory GdkPixbuf *thumbnail const char *uri time_t original_mtime ## void gnome_thumbnail_factory_create_failed_thumbnail (GnomeThumbnailFactory *factory, const char *uri, time_t mtime) void gnome_thumbnail_factory_create_failed_thumbnail (factory, uri, mtime) GnomeThumbnailFactory *factory const char *uri time_t mtime MODULE = Gnome2::Thumbnail PACKAGE = Gtk2::Gdk::Pixbuf PREFIX = gnome_thumbnail_ =for object Gnome2::Thumbnail =cut ## gboolean gnome_thumbnail_has_uri (GdkPixbuf *pixbuf, const char *uri) gboolean gnome_thumbnail_has_uri (pixbuf, uri) GdkPixbuf *pixbuf const char *uri ## gboolean gnome_thumbnail_is_valid (GdkPixbuf *pixbuf, const char *uri, time_t mtime) gboolean gnome_thumbnail_is_valid (pixbuf, uri, mtime) GdkPixbuf *pixbuf const char *uri time_t mtime ## char * gnome_thumbnail_md5 (const char *uri) char * gnome_thumbnail_md5 (class, uri) const char *uri C_ARGS: uri ## char * gnome_thumbnail_path_for_uri (const char *uri, GnomeThumbnailSize size) char * gnome_thumbnail_path_for_uri (class, uri, size) const char *uri GnomeThumbnailSize size C_ARGS: uri, size ## GdkPixbuf *gnome_thumbnail_scale_down_pixbuf (GdkPixbuf *pixbuf, int dest_width, int dest_height) GdkPixbuf * gnome_thumbnail_scale_down_pixbuf (pixbuf, dest_width, dest_height) GdkPixbuf *pixbuf int dest_width int dest_height #endif /* have GnomeThumbnailFactory */ Gnome2-1.046/xs/GnomeHelp.xs0000644000175000017500000000764512542061635014165 0ustar lacklack/* * Copyright (C) 2003 by the gtk2-perl team (see the file AUTHORS) * * This library is free software; you can redistribute it and/or * modify it under the terms of the GNU Lesser General Public * License as published by the Free Software Foundation; either * version 2.1 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 LICENSE file in the top level of this distribution * for the complete license terms. * */ #include "gnome2perl.h" MODULE = Gnome2::Help PACKAGE = Gnome2::Help PREFIX = gnome_help_ =for apidoc __gerror__ =cut ## gboolean gnome_help_display (const char *file_name, const char *link_id, GError **error) gboolean gnome_help_display (class, file_name, link_id=NULL) const char *file_name const char *link_id PREINIT: GError *error = NULL; CODE: RETVAL = gnome_help_display (file_name, link_id, &error); if (!RETVAL) gperl_croak_gerror("Gnome2::Help->display", error); OUTPUT: RETVAL # API docs: «Most of the time, you want to call gnome_help_display() instead.» ### gboolean gnome_help_display_with_doc_id (GnomeProgram *program, const char *doc_id, const char *file_name, const char *link_id, GError **error) #gboolean #gnome_help_display_with_doc_id (program, doc_id, file_name, link_id, error) # GnomeProgram *program # const char *doc_id # const char *file_name # const char *link_id # GError **error # added to libgnome in 2.1.1 ### gboolean gnome_help_display_with_doc_id_and_env (GnomeProgram *program, const char *doc_id, const char *file_name, const char *link_id, char **envp, GError **error) #gboolean #gnome_help_display_with_doc_id_and_env (program, doc_id, file_name, link_id, envp, error) # GnomeProgram *program # const char *doc_id # const char *file_name # const char *link_id # char **envp # GError **error # API docs: «You should never need to call this function directly in code [...]» ### gboolean gnome_help_display_uri (const char *help_uri, GError **error) #gboolean #gnome_help_display_uri (class, help_uri) # const char *help_uri # PREINIT: # GError *error = NULL; # CODE: # RETVAL = gnome_help_display_uri (help_uri, &error); # iif (!RETVAL) # gperl_croak_gerror("Gnome2::Help->display_uri", error); # OUTPUT: # RETVAL # added to libgnome in 2.1.1 ### gboolean gnome_help_display_uri_with_env (const char *help_uri, char **envp, GError **error) #gboolean #gnome_help_display_uri_with_env (help_uri, envp, error) # const char *help_uri # char **envp # GError **error =for apidoc __gerror__ =cut ## gboolean gnome_help_display_desktop (GnomeProgram *program, const char *doc_id, const char *file_name, const char *link_id, GError **error) gboolean gnome_help_display_desktop (class, program, doc_id, file_name, link_id=NULL) GnomeProgram_ornull *program const char *doc_id const char *file_name const char *link_id PREINIT: GError *error = NULL; CODE: RETVAL = gnome_help_display_desktop (program, doc_id, file_name, link_id, &error); if (!RETVAL) gperl_croak_gerror("Gnome2::Help->display_desktop", error); OUTPUT: RETVAL #if LIBGNOME_CHECK_VERSION (2, 2, 0) =for apidoc __gerror__ =cut ## gboolean gnome_help_display_desktop_with_env (GnomeProgram *program, const char *doc_id, const char *file_name, const char *link_id, char **envp, GError **error) gboolean gnome_help_display_desktop_with_env (class, program, doc_id, file_name, link_id, env_ref) GnomeProgram *program const char *doc_id const char *file_name const char *link_id SV *env_ref PREINIT: char **envp; GError *error = NULL; CODE: envp = SvEnvArray (env_ref); RETVAL = gnome_help_display_desktop_with_env (program, doc_id, file_name, link_id, envp, &error); if (!RETVAL) gperl_croak_gerror("Gnome2::Help->display_desktop", error); g_free (envp); OUTPUT: RETVAL #endif Gnome2-1.046/xs/GnomePixmapEntry.xs0000644000175000017500000000422212542061635015541 0ustar lacklack/* * Copyright (C) 2003 by the gtk2-perl team (see the file AUTHORS) * * This library is free software; you can redistribute it and/or * modify it under the terms of the GNU Lesser General Public * License as published by the Free Software Foundation; either * version 2.1 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 LICENSE file in the top level of this distribution * for the complete license terms. * */ #include "gnome2perl.h" MODULE = Gnome2::PixmapEntry PACKAGE = Gnome2::PixmapEntry PREFIX = gnome_pixmap_entry_ ## GtkWidget *gnome_pixmap_entry_new (const gchar *history_id, const gchar *browse_dialog_title, gboolean do_preview) GtkWidget * gnome_pixmap_entry_new (class, history_id, browse_dialog_title, do_preview) const gchar *history_id const gchar *browse_dialog_title gboolean do_preview C_ARGS: history_id, browse_dialog_title, do_preview ## void gnome_pixmap_entry_set_pixmap_subdir(GnomePixmapEntry *pentry, const gchar *subdir) void gnome_pixmap_entry_set_pixmap_subdir (pentry, subdir) GnomePixmapEntry *pentry const gchar *subdir ## GtkWidget *gnome_pixmap_entry_scrolled_window(GnomePixmapEntry *pentry) GtkWidget * gnome_pixmap_entry_scrolled_window (pentry) GnomePixmapEntry *pentry ## GtkWidget *gnome_pixmap_entry_preview_widget(GnomePixmapEntry *pentry) GtkWidget * gnome_pixmap_entry_preview_widget (pentry) GnomePixmapEntry *pentry ## void gnome_pixmap_entry_set_preview (GnomePixmapEntry *pentry, gboolean do_preview) void gnome_pixmap_entry_set_preview (pentry, do_preview) GnomePixmapEntry *pentry gboolean do_preview ## void gnome_pixmap_entry_set_preview_size(GnomePixmapEntry *pentry, gint preview_w, gint preview_h) void gnome_pixmap_entry_set_preview_size (pentry, preview_w, preview_h) GnomePixmapEntry *pentry gint preview_w gint preview_h ## gchar *gnome_pixmap_entry_get_filename(GnomePixmapEntry *pentry) gchar_own * gnome_pixmap_entry_get_filename (pentry) GnomePixmapEntry *pentry Gnome2-1.046/xs/BonoboDockItem.xs0000644000175000017500000000424112542061635015132 0ustar lacklack/* * Copyright (C) 2003 by the gtk2-perl team (see the file AUTHORS) * * This library is free software; you can redistribute it and/or * modify it under the terms of the GNU Lesser General Public * License as published by the Free Software Foundation; either * version 2.1 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 LICENSE file in the top level of this distribution * for the complete license terms. * */ #include "gnome2perl.h" MODULE = Gnome2::Bonobo::DockItem PACKAGE = Gnome2::Bonobo::DockItem PREFIX = bonobo_dock_item_ ## GtkWidget *bonobo_dock_item_new (const gchar *name, BonoboDockItemBehavior behavior) GtkWidget * bonobo_dock_item_new (class, name, behavior) const gchar *name BonoboDockItemBehavior behavior C_ARGS: name, behavior ## GtkWidget *bonobo_dock_item_get_child (BonoboDockItem *dock_item) GtkWidget * bonobo_dock_item_get_child (dock_item) BonoboDockItem *dock_item ## char *bonobo_dock_item_get_name (BonoboDockItem *dock_item) char * bonobo_dock_item_get_name (dock_item) BonoboDockItem *dock_item ## void bonobo_dock_item_set_shadow_type (BonoboDockItem *dock_item, GtkShadowType type) void bonobo_dock_item_set_shadow_type (dock_item, type) BonoboDockItem *dock_item GtkShadowType type ## GtkShadowType bonobo_dock_item_get_shadow_type (BonoboDockItem *dock_item) GtkShadowType bonobo_dock_item_get_shadow_type (dock_item) BonoboDockItem *dock_item ## gboolean bonobo_dock_item_set_orientation (BonoboDockItem *dock_item, GtkOrientation orientation) gboolean bonobo_dock_item_set_orientation (dock_item, orientation) BonoboDockItem *dock_item GtkOrientation orientation ## GtkOrientation bonobo_dock_item_get_orientation (BonoboDockItem *dock_item) GtkOrientation bonobo_dock_item_get_orientation (dock_item) BonoboDockItem *dock_item ## BonoboDockItemBehavior bonobo_dock_item_get_behavior (BonoboDockItem *dock_item) BonoboDockItemBehavior bonobo_dock_item_get_behavior (dock_item) BonoboDockItem *dock_item Gnome2-1.046/xs/GnomeIconSelection.xs0000644000175000017500000000446312542061635016026 0ustar lacklack/* * Copyright (C) 2003 by the gtk2-perl team (see the file AUTHORS) * * This library is free software; you can redistribute it and/or * modify it under the terms of the GNU Lesser General Public * License as published by the Free Software Foundation; either * version 2.1 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 LICENSE file in the top level of this distribution * for the complete license terms. * */ #include "gnome2perl.h" MODULE = Gnome2::IconSelection PACKAGE = Gnome2::IconSelection PREFIX = gnome_icon_selection_ ## GtkWidget * gnome_icon_selection_new (void) GtkWidget * gnome_icon_selection_new (class) C_ARGS: /* void */ ## void gnome_icon_selection_add_defaults (GnomeIconSelection * gis) void gnome_icon_selection_add_defaults (gis) GnomeIconSelection * gis ## void gnome_icon_selection_add_directory (GnomeIconSelection * gis, const gchar * dir) void gnome_icon_selection_add_directory (gis, dir) GnomeIconSelection * gis const gchar * dir ## void gnome_icon_selection_show_icons (GnomeIconSelection * gis) void gnome_icon_selection_show_icons (gis) GnomeIconSelection * gis ## void gnome_icon_selection_clear (GnomeIconSelection * gis, gboolean not_shown) void gnome_icon_selection_clear (gis, not_shown) GnomeIconSelection * gis gboolean not_shown ## gchar * gnome_icon_selection_get_icon (GnomeIconSelection * gis, gboolean full_path) gchar_own * gnome_icon_selection_get_icon (gis, full_path) GnomeIconSelection * gis gboolean full_path ## void gnome_icon_selection_select_icon (GnomeIconSelection * gis, const gchar * filename) void gnome_icon_selection_select_icon (gis, filename) GnomeIconSelection * gis const gchar * filename ## void gnome_icon_selection_stop_loading (GnomeIconSelection * gis) void gnome_icon_selection_stop_loading (gis) GnomeIconSelection * gis ## GtkWidget *gnome_icon_selection_get_gil (GnomeIconSelection * gis) GtkWidget * gnome_icon_selection_get_gil (gis) GnomeIconSelection * gis ## GtkWidget *gnome_icon_selection_get_box (GnomeIconSelection * gis) GtkWidget * gnome_icon_selection_get_box (gis) GnomeIconSelection * gis Gnome2-1.046/xs/Gnome2.xs0000644000175000017500000000447212542061635013431 0ustar lacklack/* * Copyright (C) 2003 by the gtk2-perl team (see the file AUTHORS) * * This library is free software; you can redistribute it and/or * modify it under the terms of the GNU Lesser General Public * License as published by the Free Software Foundation; either * version 2.1 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 LICENSE file in the top level of this distribution * for the complete license terms. * */ #include "gnome2perl.h" MODULE = Gnome2 PACKAGE = Gnome2 =for object Gnome2::main =cut BOOT: { #include "register.xsh" #include "boot.xsh" /* route Gnome's log domains through perl's warn() and croak() */ gperl_handle_logs_for ("Gnome"); gperl_handle_logs_for ("GnomeUI"); gperl_handle_logs_for ("Bonobo"); gperl_handle_logs_for ("BonoboUI"); } void GET_VERSION_INFO (class) PPCODE: EXTEND (SP, 3); PUSHs (sv_2mortal (newSViv (LIBGNOMEUI_MAJOR_VERSION))); PUSHs (sv_2mortal (newSViv (LIBGNOMEUI_MINOR_VERSION))); PUSHs (sv_2mortal (newSViv (LIBGNOMEUI_MICRO_VERSION))); PERL_UNUSED_VAR (ax); bool CHECK_VERSION (class, major, minor, micro) int major int minor int micro CODE: RETVAL = LIBGNOMEUI_CHECK_VERSION (major, minor, micro); OUTPUT: RETVAL MODULE = Gnome2 PACKAGE = Gnome2::Bonobo void GET_VERSION_INFO (class) PPCODE: EXTEND (SP, 3); PUSHs (sv_2mortal (newSViv (LIBBONOBOUI_MAJOR_VERSION))); PUSHs (sv_2mortal (newSViv (LIBBONOBOUI_MINOR_VERSION))); PUSHs (sv_2mortal (newSViv (LIBBONOBOUI_MICRO_VERSION))); PERL_UNUSED_VAR (ax); bool CHECK_VERSION (class, major, minor, micro) int major int minor int micro CODE: RETVAL = LIBBONOBOUI_CHECK_VERSION (major, minor, micro); OUTPUT: RETVAL MODULE = Gnome2 PACKAGE = Gnome2::AuthenticationManager PREFIX = gnome_authentication_manager_ #if LIBGNOMEUI_CHECK_VERSION (2, 4, 0) ## void gnome_authentication_manager_init (void) void gnome_authentication_manager_init (class) C_ARGS: /* void */ #if LIBGNOMEUI_CHECK_VERSION (2, 8, 0) ## gboolean gnome_authentication_manager_dialog_is_visible (void) gboolean gnome_authentication_manager_dialog_is_visible (class) C_ARGS: /* void */ #endif #endif Gnome2-1.046/xs/GnomeEntry.xs0000644000175000017500000000314012542061635014360 0ustar lacklack/* * Copyright (C) 2003 by the gtk2-perl team (see the file AUTHORS) * * This library is free software; you can redistribute it and/or * modify it under the terms of the GNU Lesser General Public * License as published by the Free Software Foundation; either * version 2.1 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 LICENSE file in the top level of this distribution * for the complete license terms. * */ #include "gnome2perl.h" /* gnome-entry.h was deprecated in 2003 */ #undef GNOME_DISABLE_DEPRECATED MODULE = Gnome2::Entry PACKAGE = Gnome2::Entry PREFIX = gnome_entry_ ## GtkWidget * gnome_entry_new (const gchar *history_id) GtkWidget * gnome_entry_new (class, history_id=NULL) const gchar * history_id C_ARGS: history_id GtkWidget * gnome_entry_gtk_entry (gentry) GnomeEntry *gentry const gchar * gnome_entry_get_history_id (gentry) GnomeEntry *gentry void gnome_entry_set_history_id (gentry, history_id) GnomeEntry *gentry const gchar *history_id void gnome_entry_set_max_saved (gentry, max_saved) GnomeEntry *gentry guint max_saved guint gnome_entry_get_max_saved (gentry) GnomeEntry *gentry void gnome_entry_prepend_history (gentry, save, text) GnomeEntry *gentry gboolean save const gchar *text void gnome_entry_append_history (gentry, save, text) GnomeEntry *gentry gboolean save const gchar *text void gnome_entry_clear_history (gentry) GnomeEntry *gentry Gnome2-1.046/xs/GnomeURL.xs0000644000175000017500000000277512542061635013736 0ustar lacklack/* * Copyright (C) 2003 by the gtk2-perl team (see the file AUTHORS) * * This library is free software; you can redistribute it and/or * modify it under the terms of the GNU Lesser General Public * License as published by the Free Software Foundation; either * version 2.1 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 LICENSE file in the top level of this distribution * for the complete license terms. * */ #include "gnome2perl.h" MODULE = Gnome2::URL PACKAGE = Gnome2::URL PREFIX = gnome_url_ =for apidoc __gerror__ =cut ## gboolean gnome_url_show (const char *url, GError **error) gboolean gnome_url_show (class, url) const char *url PREINIT: GError *error = NULL; CODE: RETVAL = gnome_url_show (url, &error); if (!RETVAL) gperl_croak_gerror("Gnome2::URL->show", error); OUTPUT: RETVAL #if LIBGNOME_CHECK_VERSION (2, 2, 0) =for apidoc __gerror__ =cut ## gboolean gnome_url_show_with_env (const char *url, char **envp, GError **error) gboolean gnome_url_show_with_env (class, url, env_ref) const char *url SV *env_ref PREINIT: char **envp; GError *error = NULL; CODE: envp = SvEnvArray (env_ref); RETVAL = gnome_url_show_with_env (url, envp, &error); if (!RETVAL) gperl_croak_gerror("Gnome2::URL->show", error); g_free (envp); OUTPUT: RETVAL #endif Gnome2-1.046/xs/GnomeConfig.xs0000644000175000017500000003111112542061635014463 0ustar lacklack/* * Copyright (C) 2003, 2013 by the gtk2-perl team (see the file AUTHORS) * * This library is free software; you can redistribute it and/or * modify it under the terms of the GNU Lesser General Public * License as published by the Free Software Foundation; either * version 2.1 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 LICENSE file in the top level of this distribution * for the complete license terms. * */ #include "gnome2perl.h" /* ------------------------------------------------------------------------- */ static void * SvGnomeConfigIterator (SV *object) { MAGIC *mg; if (!object || !SvOK (object) || !SvROK (object) || !(mg = mg_find (SvRV (object), PERL_MAGIC_ext))) return NULL; return (void *) mg->mg_ptr; } static SV * newSVGnomeConfigIterator (const char *app_id) { SV *object = (SV *) newHV (); sv_magic (object, 0, PERL_MAGIC_ext, (const char *) app_id, 0); return sv_bless (newRV_noinc (object), gv_stashpv ("Gnome2::Config::Iterator", 1)); } /* ------------------------------------------------------------------------- */ MODULE = Gnome2::Config PACKAGE = Gnome2::Config PREFIX = gnome_config_ char * get_string (class, path) const char *path ALIAS: Gnome2::Config::get_translated_string = 1 Gnome2::Config::Private::get_string = 2 Gnome2::Config::Private::get_translated_string = 3 CODE: switch (ix) { case 0: RETVAL = gnome_config_get_string (path); break; case 1: RETVAL = gnome_config_get_translated_string (path); break; case 2: RETVAL = gnome_config_private_get_string (path); break; case 3: RETVAL = gnome_config_private_get_translated_string (path); break; default: RETVAL = NULL; } OUTPUT: RETVAL CLEANUP: g_free (RETVAL); =for apidoc Returns a boolean indicating whether the default was used and the actual value. =cut void get_string_with_default (class, path) const char *path ALIAS: Gnome2::Config::get_translated_string_with_default = 1 Gnome2::Config::Private::get_string_with_default = 2 Gnome2::Config::Private::get_translated_string_with_default = 3 PREINIT: char *retval = NULL; gboolean def; PPCODE: switch (ix) { case 0: retval = gnome_config_get_string_with_default (path, &def); break; case 1: retval = gnome_config_get_translated_string_with_default (path, &def); break; case 2: retval = gnome_config_private_get_string_with_default (path, &def); break; case 3: retval = gnome_config_private_get_translated_string_with_default (path, &def); break; } EXTEND (sp, 1); PUSHs (sv_2mortal (newSVuv (def))); if (retval != NULL) XPUSHs (sv_2mortal (newSVpv (retval, 0))); g_free (retval); int get_int (class, path) const char *path ALIAS: Gnome2::Config::Private::get_int = 1 CODE: switch (ix) { case 0: RETVAL = gnome_config_get_int (path); break; case 1: RETVAL = gnome_config_private_get_int (path); break; default: RETVAL = 0; } OUTPUT: RETVAL =for apidoc Returns a boolean indicating whether the default was used and the actual value. =cut void get_int_with_default (class, path) const char *path ALIAS: Gnome2::Config::Private::get_int_with_default = 1 PREINIT: int retval = 0; gboolean def; PPCODE: switch (ix) { case 0: retval = gnome_config_get_int_with_default (path, &def); break; case 1: retval = gnome_config_private_get_int_with_default (path, &def); break; } EXTEND (sp, 2); PUSHs (sv_2mortal (newSVuv (def))); PUSHs (sv_2mortal (newSViv (retval))); gdouble get_float (class, path) const char *path ALIAS: Gnome2::Config::Private::get_float = 1 CODE: switch (ix) { case 0: RETVAL = gnome_config_get_float (path); break; case 1: RETVAL = gnome_config_private_get_float (path); break; default: RETVAL = 0.0; } OUTPUT: RETVAL =for apidoc Returns a boolean indicating whether the default was used and the actual value. =cut void get_float_with_default (class, path) const char *path ALIAS: Gnome2::Config::Private::get_float_with_default = 1 PREINIT: gdouble retval = 0.0; gboolean def; PPCODE: switch (ix) { case 0: retval = gnome_config_get_float_with_default (path, &def); break; case 1: retval = gnome_config_private_get_float_with_default (path, &def); break; } EXTEND (sp, 2); PUSHs (sv_2mortal (newSVuv (def))); PUSHs (sv_2mortal (newSVnv (retval))); gboolean get_bool (class, path) const char *path ALIAS: Gnome2::Config::Private::get_bool = 1 CODE: switch (ix) { case 0: RETVAL = gnome_config_get_bool (path); break; case 1: RETVAL = gnome_config_private_get_bool (path); break; default: RETVAL = FALSE; } OUTPUT: RETVAL =for apidoc Returns a boolean indicating whether the default was used and the actual value. =cut void get_bool_with_default (class, path) const char *path ALIAS: Gnome2::Config::Private::get_bool_with_default = 1 PREINIT: gboolean retval = FALSE; gboolean def = FALSE; PPCODE: switch (ix) { case 0: retval = gnome_config_get_bool_with_default (path, &def); break; case 1: retval = gnome_config_private_get_bool_with_default (path, &def); break; } EXTEND (sp, 2); PUSHs (sv_2mortal (newSVuv (def))); PUSHs (sv_2mortal (newSVuv (retval))); SV * get_vector (class, path) const char *path ALIAS: Gnome2::Config::Private::get_vector = 1 PREINIT: char **argv = NULL; int argc, i; AV *array = newAV (); CODE: switch (ix) { case 0: gnome_config_get_vector (path, &argc, &argv); break; case 1: gnome_config_private_get_vector (path, &argc, &argv); break; } if (argv != NULL) { for (i = 0; i < argc; i++) av_push (array, newSVpv (argv[i], 0)); g_free (argv); } RETVAL = newRV_noinc ((SV *) array); OUTPUT: RETVAL =for apidoc Returns a boolean indicating whether the default was used and the actual value. =cut void get_vector_with_default (class, path) const char *path ALIAS: Gnome2::Config::Private::get_vector_with_default = 1 PREINIT: gboolean def; char **argv = NULL; int argc, i; AV *array = newAV (); PPCODE: switch (ix) { case 0: gnome_config_get_vector_with_default (path, &argc, &argv, &def); break; case 1: gnome_config_private_get_vector_with_default (path, &argc, &argv, &def); break; } if (argv != NULL) { for (i = 0; i < argc; i++) av_push (array, newSVpv (argv[i], 0)); g_free (argv); } EXTEND (sp, 2); PUSHs (sv_2mortal (newSVuv (def))); PUSHs (sv_2mortal (newRV_noinc ((SV *) array))); # --------------------------------------------------------------------------- # void set_string (class, path, value) const char *path const char *value ALIAS: Gnome2::Config::set_translated_string = 1 Gnome2::Config::Private::set_string = 2 Gnome2::Config::Private::set_translated_string = 3 CODE: switch (ix) { case 0: gnome_config_set_string (path, value); break; case 1: gnome_config_set_translated_string (path, value); break; case 2: gnome_config_private_set_string (path, value); break; case 3: gnome_config_private_set_translated_string (path, value); break; } void set_int (class, path, value) const char *path int value ALIAS: Gnome2::Config::Private::set_int = 1 CODE: switch (ix) { case 0: gnome_config_set_int (path, value); break; case 1: gnome_config_private_set_int (path, value); break; } void set_float (class, path, value) const char *path gdouble value ALIAS: Gnome2::Config::Private::set_float = 1 CODE: switch (ix) { case 0: gnome_config_set_float (path, value); break; case 1: gnome_config_private_set_float (path, value); break; } void set_bool (class, path, value) const char *path gboolean value ALIAS: Gnome2::Config::Private::set_bool = 1 CODE: switch (ix) { case 0: gnome_config_set_bool (path, value); break; case 1: gnome_config_private_set_bool (path, value); break; } void set_vector (class, path, value) const char *path SV *value ALIAS: Gnome2::Config::Private::set_vector = 1 PREINIT: char **argv; int length, i; AV *array; SV **string; CODE: if (! (SvOK (value) && SvROK (value) && SvTYPE (SvRV (value)) == SVt_PVAV)) croak ("the vector parameter must be a reference to an array"); array = (AV *) SvRV (value); length = av_len (array); argv = g_new0 (char *, length + 1); for (i = 0; i <= length; i++) { string = av_fetch (array, i, 0); if (string) argv[i] = SvPV_nolen (*string); } switch (ix) { case 0: gnome_config_set_vector (path, length + 1, (const char **) argv); break; case 1: gnome_config_private_set_vector (path, length + 1, (const char **) argv); break; } # --------------------------------------------------------------------------- # gboolean has_section (class, path) const char *path ALIAS: Gnome2::Config::Private::has_section = 1 Gnome2::Config::sync_file = 2 Gnome2::Config::Private::sync_file = 3 CODE: switch (ix) { case 0: RETVAL = gnome_config_has_section (path); break; case 1: RETVAL = gnome_config_private_has_section (path); break; case 2: RETVAL = gnome_config_sync_file ((char *) path); break; case 3: RETVAL = gnome_config_private_sync_file ((char *) path); break; default: RETVAL = FALSE; } OUTPUT: RETVAL void drop_file (class, path) const char *path ALIAS: Gnome2::Config::Private::drop_file = 1 Gnome2::Config::clean_file = 2 Gnome2::Config::Private::clean_file = 3 Gnome2::Config::clean_section = 4 Gnome2::Config::Private::clean_section = 5 Gnome2::Config::clean_key = 6 Gnome2::Config::Private::clean_key = 7 CODE: switch (ix) { case 0: gnome_config_drop_file (path); break; case 1: gnome_config_private_drop_file (path); break; case 2: gnome_config_clean_file (path); break; case 3: gnome_config_private_clean_file (path); break; case 4: gnome_config_clean_section (path); break; case 5: gnome_config_private_clean_section (path); break; case 6: gnome_config_clean_key (path); break; case 7: gnome_config_private_clean_key (path); break; } gchar * get_real_path (class, path) gchar *path ALIAS: Gnome2::Config::Private::get_real_path = 1 CODE: switch (ix) { case 0: RETVAL = gnome_config_get_real_path (path); break; case 1: RETVAL = gnome_config_private_get_real_path (path); break; default: RETVAL = NULL; } OUTPUT: RETVAL CLEANUP: g_free (RETVAL); ## void gnome_config_drop_all (void) void gnome_config_drop_all (class) C_ARGS: /* void */ ## gboolean gnome_config_sync (void) gboolean gnome_config_sync (class) C_ARGS: /* void */ ## void gnome_config_push_prefix (const char *path) void gnome_config_push_prefix (class, path) const char *path C_ARGS: path ## void gnome_config_pop_prefix (void) void gnome_config_pop_prefix (class) C_ARGS: /* void */ # --------------------------------------------------------------------------- # SV * gnome_config_init_iterator (class, path) const char *path ALIAS: Gnome2::Config::init_iterator_sections = 1 Gnome2::Config::Private::init_iterator = 2 Gnome2::Config::Private::init_iterator_sections = 3 PREINIT: void *pointer = NULL; CODE: switch (ix) { case 0: pointer = gnome_config_init_iterator (path); break; case 1: pointer = gnome_config_init_iterator_sections (path); break; case 2: pointer = gnome_config_private_init_iterator (path); break; case 3: pointer = gnome_config_private_init_iterator_sections (path); break; } if (pointer) RETVAL = newSVGnomeConfigIterator (pointer); else XSRETURN_UNDEF; OUTPUT: RETVAL MODULE = Gnome2::Config PACKAGE = Gnome2::Config::Iterator PREFIX = gnome_config_iterator_ =for apidoc Returns the new GnomeConfigIterator, the key, and the value. =cut void gnome_config_iterator_next (handle) SV *handle PREINIT: void *new = NULL, *old = NULL; char *key = NULL, *value = NULL; PPCODE: old = SvGnomeConfigIterator (handle); new = gnome_config_iterator_next (old, &key, &value); if (new && key && value) { EXTEND (sp, 3); PUSHs (sv_2mortal (newSVGnomeConfigIterator (new))); PUSHs (sv_2mortal (newSVpv (key, 0))); PUSHs (sv_2mortal (newSVpv (value, 0))); g_free (key); g_free (value); } else XSRETURN_EMPTY; void DESTROY (handle) SV *handle CODE: sv_unmagic (SvRV (handle), PERL_MAGIC_ext); # --------------------------------------------------------------------------- # ### void gnome_config_make_vector (const char *string, int *argcp, char ***argvp) #void #gnome_config_make_vector (string, argcp, argvp) # const char *string # int *argcp # char ***argvp ### char *gnome_config_assemble_vector (int argc, const char *const argv []) #char * #gnome_config_assemble_vector (argc, ) # int argc # const char *const argv [] Gnome2-1.046/xs/GnomeUIDefs.xs0000644000175000017500000001241212542061635014400 0ustar lacklack/* * Copyright (C) 2003, 2013 by the gtk2-perl team (see the file AUTHORS) * * This library is free software; you can redistribute it and/or * modify it under the terms of the GNU Lesser General Public * License as published by the Free Software Foundation; either * version 2.1 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 LICENSE file in the top level of this distribution * for the complete license terms. * */ #include "gnome2perl.h" MODULE = Gnome2::UIDefs PACKAGE = Gnome2::UIDefs SV * pad (class) ALIAS: pad_small = 1 pad_big = 2 key_name_quit = 4 key_mod_quit = 5 key_name_close = 8 key_mod_close = 9 key_name_cut = 10 key_mod_cut = 11 key_name_copy = 12 key_mod_copy = 13 key_name_paste = 14 key_mod_paste = 15 key_name_select_all = 16 key_mod_select_all = 17 key_name_clear = 18 key_mod_clear = 19 key_name_undo = 20 key_mod_undo = 21 key_name_redo = 22 key_mod_redo = 23 key_name_save = 24 key_mod_save = 25 key_name_open = 26 key_mod_open = 27 key_name_save_as = 28 key_mod_save_as = 29 key_name_new = 30 key_mod_new = 31 key_name_print = 32 key_mod_print = 33 key_name_print_setup = 34 key_mod_print_setup = 35 key_name_find = 36 key_mod_find = 37 key_name_find_again = 38 key_mod_find_again = 39 key_name_replace = 40 key_mod_replace = 41 key_name_new_window = 42 key_mod_new_window = 43 key_name_close_window = 44 key_mod_close_window = 45 key_name_redo_move = 46 key_mod_redo_move = 47 key_name_undo_move = 48 key_mod_undo_move = 49 key_name_pause_game = 50 key_mod_pause_game = 51 key_name_new_game = 52 key_mod_new_game = 53 PREINIT: char key[] = "_"; CODE: switch (ix) { case 0: RETVAL = newSViv (GNOME_PAD); break; case 1: RETVAL = newSViv (GNOME_PAD_SMALL); break; case 2: RETVAL = newSViv (GNOME_PAD_BIG); break; case 4: key[0] = GNOME_KEY_NAME_QUIT; RETVAL = newSVpv (key, 0); break; case 5: RETVAL = newSViv (GNOME_KEY_MOD_QUIT); break; case 8: key[0] = GNOME_KEY_NAME_CLOSE; RETVAL = newSVpv (key, 0); break; case 9: RETVAL = newSViv (GNOME_KEY_MOD_CLOSE); break; case 10: key[0] = GNOME_KEY_NAME_CUT; RETVAL = newSVpv (key, 0); break; case 11: RETVAL = newSViv (GNOME_KEY_MOD_CUT); break; case 12: key[0] = GNOME_KEY_NAME_COPY; RETVAL = newSVpv (key, 0); break; case 13: RETVAL = newSViv (GNOME_KEY_MOD_COPY); break; case 14: key[0] = GNOME_KEY_NAME_PASTE; RETVAL = newSVpv (key, 0); break; case 15: RETVAL = newSViv (GNOME_KEY_MOD_PASTE); break; case 16: key[0] = GNOME_KEY_NAME_SELECT_ALL; RETVAL = newSVpv (key, 0); break; case 17: RETVAL = newSViv (GNOME_KEY_MOD_SELECT_ALL); break; case 18: key[0] = GNOME_KEY_NAME_CLEAR; RETVAL = newSVpv (key, 0); break; case 19: RETVAL = newSViv (GNOME_KEY_MOD_CLEAR); break; case 20: key[0] = GNOME_KEY_NAME_UNDO; RETVAL = newSVpv (key, 0); break; case 21: RETVAL = newSViv (GNOME_KEY_MOD_UNDO); break; case 22: key[0] = GNOME_KEY_NAME_REDO; RETVAL = newSVpv (key, 0); break; case 23: RETVAL = newSViv (GNOME_KEY_MOD_REDO); break; case 24: key[0] = GNOME_KEY_NAME_SAVE; RETVAL = newSVpv (key, 0); break; case 25: RETVAL = newSViv (GNOME_KEY_MOD_SAVE); break; case 26: key[0] = GNOME_KEY_NAME_OPEN; RETVAL = newSVpv (key, 0); break; case 27: RETVAL = newSViv (GNOME_KEY_MOD_OPEN); break; case 28: key[0] = GNOME_KEY_NAME_SAVE_AS; RETVAL = newSVpv (key, 0); break; case 29: RETVAL = newSViv (GNOME_KEY_MOD_SAVE_AS); break; case 30: key[0] = GNOME_KEY_NAME_NEW; RETVAL = newSVpv (key, 0); break; case 31: RETVAL = newSViv (GNOME_KEY_MOD_NEW); break; case 32: key[0] = GNOME_KEY_NAME_PRINT; RETVAL = newSVpv (key, 0); break; case 33: RETVAL = newSViv (GNOME_KEY_MOD_PRINT); break; case 34: key[0] = GNOME_KEY_NAME_PRINT_SETUP; RETVAL = newSVpv (key, 0); break; case 35: RETVAL = newSViv (GNOME_KEY_MOD_PRINT_SETUP); break; case 36: key[0] = GNOME_KEY_NAME_FIND; RETVAL = newSVpv (key, 0); break; case 37: RETVAL = newSViv (GNOME_KEY_MOD_FIND); break; case 38: key[0] = GNOME_KEY_NAME_FIND_AGAIN; RETVAL = newSVpv (key, 0); break; case 39: RETVAL = newSViv (GNOME_KEY_MOD_FIND_AGAIN); break; case 40: key[0] = GNOME_KEY_NAME_REPLACE; RETVAL = newSVpv (key, 0); break; case 41: RETVAL = newSViv (GNOME_KEY_MOD_REPLACE); break; case 42: key[0] = GNOME_KEY_NAME_NEW_WINDOW; RETVAL = newSVpv (key, 0); break; case 43: RETVAL = newSViv (GNOME_KEY_MOD_NEW_WINDOW); break; case 44: key[0] = GNOME_KEY_NAME_CLOSE_WINDOW; RETVAL = newSVpv (key, 0); break; case 45: RETVAL = newSViv (GNOME_KEY_MOD_CLOSE_WINDOW); break; case 46: key[0] = GNOME_KEY_NAME_REDO_MOVE; RETVAL = newSVpv (key, 0); break; case 47: RETVAL = newSViv (GNOME_KEY_MOD_REDO_MOVE); break; case 48: key[0] = GNOME_KEY_NAME_UNDO_MOVE; RETVAL = newSVpv (key, 0); break; case 49: RETVAL = newSViv (GNOME_KEY_MOD_UNDO_MOVE); break; case 50: RETVAL = newSViv (GNOME_KEY_NAME_PAUSE_GAME); break; case 51: RETVAL = newSViv (GNOME_KEY_MOD_PAUSE_GAME); break; case 52: key[0] = GNOME_KEY_NAME_NEW_GAME; RETVAL = newSVpv (key, 0); break; case 53: RETVAL = newSViv (GNOME_KEY_MOD_NEW_GAME); break; default: RETVAL = &PL_sv_undef; } OUTPUT: RETVAL Gnome2-1.046/xs/GnomePopupMenu.xs0000644000175000017500000001267412542061635015223 0ustar lacklack/* * Copyright (C) 2003 by the gtk2-perl team (see the file AUTHORS) * * This library is free software; you can redistribute it and/or * modify it under the terms of the GNU Lesser General Public * License as published by the Free Software Foundation; either * version 2.1 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 LICENSE file in the top level of this distribution * for the complete license terms. * */ #include "gnome2perl.h" /* gnome-popup-menu.h was deprecated in 2003. */ #undef GNOME_DISABLE_DEPRECATED extern void gtk2perl_menu_position_func (GtkMenu * menu, gint * x, gint * y, gboolean * push_in, GPerlCallback * callback); MODULE = Gnome2::PopupMenu PACKAGE = Gnome2::PopupMenu PREFIX = gnome_popup_menu_ ## GtkWidget *gnome_popup_menu_new (GnomeUIInfo *uiinfo) ## GtkWidget *gnome_popup_menu_new_with_accelgroup (GnomeUIInfo *uiinfo, GtkAccelGroup *accelgroup) GtkWidget * gnome_popup_menu_new (class, uiinfo, accelgroup=NULL) GnomeUIInfo *uiinfo GtkAccelGroup *accelgroup ALIAS: new_with_accelgroup = 1 CODE: if (ix == 1 || accelgroup != NULL) RETVAL = gnome_popup_menu_new_with_accelgroup (uiinfo, accelgroup); else RETVAL = gnome_popup_menu_new (uiinfo); gnome2perl_refill_infos_popup (ST (1), uiinfo); OUTPUT: RETVAL MODULE = Gnome2::PopupMenu PACKAGE = Gtk2::Menu PREFIX = gnome_popup_menu_ =for object Gnome2::PopupMenu =cut ## same as gtk_menu_get_accel_group ## GtkAccelGroup *gnome_popup_menu_get_accel_group(GtkMenu *menu) ## void gnome_popup_menu_attach (GtkWidget *popup, GtkWidget *widget, gpointer user_data) void gnome_popup_menu_attach_to (popup, widget, user_data=NULL) GtkWidget *popup GtkWidget *widget SV * user_data CODE: gnome_popup_menu_attach (popup, widget, user_data); #### void gnome_popup_menu_do_popup (GtkWidget *popup, GtkMenuPositionFunc pos_func, gpointer pos_data, GdkEventButton *event, gpointer user_data, GtkWidget *for_widget) void gnome_popup_menu_do_popup (popup, pos_func, pos_data, event, user_data, for_widget) GtkMenu * popup SV * pos_func SV * pos_data GdkEvent * event SV * user_data GtkWidget * for_widget CODE: if (SvTRUE (pos_func)) { GPerlCallback * callback; /* we don't need to worry about the callback arg types since * we already have to marshall this callback ourselves. */ callback = gperl_callback_new (pos_func, pos_data, 0, NULL, 0); gnome_popup_menu_do_popup (GTK_WIDGET (popup), (GtkMenuPositionFunc) gtk2perl_menu_position_func, callback, (GdkEventButton*) event, user_data, for_widget); /* NOTE: this isn't a proper destructor, as it could leak * if replaced somewhere else. on the other hand, how * likely is that? */ g_object_set_data_full (G_OBJECT (popup), "_menu_pos_callback", callback, (GDestroyNotify) gperl_callback_destroy); } else gnome_popup_menu_do_popup (GTK_WIDGET (popup), NULL, NULL, (GdkEventButton*) event, user_data, for_widget); #### int gnome_popup_menu_do_popup_modal (GtkWidget *popup, GtkMenuPositionFunc pos_func, gpointer pos_data, GdkEventButton *event, gpointer user_data, GtkWidget *for_widget) int gnome_popup_menu_do_popup_modal (popup, pos_func, pos_data, event, user_data, for_widget) GtkMenu * popup SV * pos_func SV * pos_data GdkEvent * event SV * user_data GtkWidget * for_widget CODE: if (SvTRUE (pos_func)) { GPerlCallback * callback; /* we don't need to worry about the callback arg types since * we already have to marshall this callback ourselves. */ callback = gperl_callback_new (pos_func, pos_data, 0, NULL, 0); RETVAL = gnome_popup_menu_do_popup_modal (GTK_WIDGET (popup), (GtkMenuPositionFunc) gtk2perl_menu_position_func, callback, (GdkEventButton *) event, user_data, for_widget); gperl_callback_destroy (callback); } else RETVAL = gnome_popup_menu_do_popup_modal (GTK_WIDGET (popup), NULL, NULL, (GdkEventButton*) event, user_data, for_widget); OUTPUT: RETVAL ## void gnome_popup_menu_append (GtkWidget *popup, GnomeUIInfo *uiinfo) void gnome_popup_menu_append_from (popup, uiinfo) GtkWidget *popup GnomeUIInfo *uiinfo CODE: gnome_popup_menu_append (popup, uiinfo); gnome2perl_refill_infos_popup (ST (1), uiinfo); MODULE = Gnome2::PopupMenu PACKAGE = Gtk2::Widget PREFIX = gnome_gtk_widget_ =for object Gnome2::PopupMenu =cut ## void gnome_gtk_widget_add_popup_items (GtkWidget *widget, GnomeUIInfo *uiinfo, gpointer user_data) void gnome_gtk_widget_add_popup_items (widget, uiinfo, user_data=NULL) GtkWidget *widget GnomeUIInfo *uiinfo SV * user_data CODE: gnome_gtk_widget_add_popup_items (widget, uiinfo, user_data); gnome2perl_refill_infos_popup (ST (1), uiinfo); Gnome2-1.046/xs/BonoboDock.xs0000644000175000017500000000644312542061635014321 0ustar lacklack/* * Copyright (C) 2003, 2013 by the gtk2-perl team (see the file AUTHORS) * * This library is free software; you can redistribute it and/or * modify it under the terms of the GNU Lesser General Public * License as published by the Free Software Foundation; either * version 2.1 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 LICENSE file in the top level of this distribution * for the complete license terms. * */ #include "gnome2perl.h" MODULE = Gnome2::Bonobo::Dock PACKAGE = Gnome2::Bonobo::Dock PREFIX = bonobo_dock_ ## GtkWidget *bonobo_dock_new (void) GtkWidget * bonobo_dock_new (class) C_ARGS: /* void */ ## void bonobo_dock_allow_floating_items (BonoboDock *dock, gboolean enable) void bonobo_dock_allow_floating_items (dock, enable) BonoboDock *dock gboolean enable ## void bonobo_dock_add_item (BonoboDock *dock, BonoboDockItem *item, BonoboDockPlacement placement, guint band_num, gint position, guint offset, gboolean in_new_band) void bonobo_dock_add_item (dock, item, placement, band_num, position, offset, in_new_band) BonoboDock *dock BonoboDockItem *item BonoboDockPlacement placement guint band_num gint position guint offset gboolean in_new_band ## void bonobo_dock_add_floating_item (BonoboDock *dock, BonoboDockItem *widget, gint x, gint y, GtkOrientation orientation) void bonobo_dock_add_floating_item (dock, widget, x, y, orientation) BonoboDock *dock BonoboDockItem *widget gint x gint y GtkOrientation orientation ## void bonobo_dock_set_client_area (BonoboDock *dock, GtkWidget *widget) void bonobo_dock_set_client_area (dock, widget) BonoboDock *dock GtkWidget *widget ## GtkWidget *bonobo_dock_get_client_area (BonoboDock *dock) GtkWidget * bonobo_dock_get_client_area (dock) BonoboDock *dock =for apidoc Returns a BonoboDockItem, a BonoboDockPlacement and three unsigned integers corresponding to num_band, band_position and offset. =cut ## BonoboDockItem *bonobo_dock_get_item_by_name (BonoboDock *dock, const gchar *name, BonoboDockPlacement *placement_return, guint *num_band_return, guint *band_position_return, guint *offset_return) void bonobo_dock_get_item_by_name (dock, name) BonoboDock *dock const gchar *name PREINIT: BonoboDockItem *dock_item_return; BonoboDockPlacement placement_return; guint num_band_return; guint band_position_return; guint offset_return; PPCODE: EXTEND (SP, 5); dock_item_return = bonobo_dock_get_item_by_name (dock, name, &placement_return, &num_band_return, &band_position_return, &offset_return); PUSHs (sv_2mortal (newSVBonoboDockItem (dock_item_return))); PUSHs (sv_2mortal (newSVBonoboDockPlacement (placement_return))); PUSHs (sv_2mortal (newSVuv (num_band_return))); PUSHs (sv_2mortal (newSVuv (band_position_return))); PUSHs (sv_2mortal (newSVuv (offset_return))); ## BonoboDockLayout *bonobo_dock_get_layout (BonoboDock *dock) BonoboDockLayout * bonobo_dock_get_layout (dock) BonoboDock *dock ## gboolean bonobo_dock_add_from_layout (BonoboDock *dock, BonoboDockLayout *layout) gboolean bonobo_dock_add_from_layout (dock, layout) BonoboDock *dock BonoboDockLayout *layout Gnome2-1.046/xs/GnomeSound.xs0000644000175000017500000000263712542061635014361 0ustar lacklack/* * Copyright (C) 2003 by the gtk2-perl team (see the file AUTHORS) * * This library is free software; you can redistribute it and/or * modify it under the terms of the GNU Lesser General Public * License as published by the Free Software Foundation; either * version 2.1 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 LICENSE file in the top level of this distribution * for the complete license terms. * */ #include "gnome2perl.h" MODULE = Gnome2::Sound PACKAGE = Gnome2::Sound PREFIX = gnome_sound_ ## int gnome_sound_connection_get (void) int gnome_sound_connection_get (class) C_ARGS: /* void */ ## void gnome_sound_init(const char *hostname) void gnome_sound_init (class, hostname="localhost") const char *hostname C_ARGS: hostname ## void gnome_sound_shutdown(void) void gnome_sound_shutdown (class) C_ARGS: /* void */ ## int gnome_sound_sample_load(const char *sample_name, const char *filename) int gnome_sound_sample_load (class, sample_name, filename) const char *sample_name const char *filename C_ARGS: sample_name, filename ## void gnome_sound_play (const char * filename) void gnome_sound_play (class, filename) const char * filename C_ARGS: filename Gnome2-1.046/xs/GnomeClient.xs0000644000175000017500000001664712542061635014515 0ustar lacklack/* * Copyright (C) 2003 by the gtk2-perl team (see the file AUTHORS) * * This library is free software; you can redistribute it and/or * modify it under the terms of the GNU Lesser General Public * License as published by the Free Software Foundation; either * version 2.1 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 LICENSE file in the top level of this distribution * for the complete license terms. * */ #include "gnome2perl.h" static void gtk2perl_gnome_interact_function (GnomeClient *client, gint key, GnomeDialogType dialog_type, GPerlCallback * callback) { gperl_callback_invoke (callback, NULL, client, key, dialog_type); } static GPerlCallback * gtk2perl_gnome_interact_function_create (SV * func, SV *data) { GType param_types [] = { GNOME_TYPE_CLIENT, G_TYPE_INT, GNOME_TYPE_DIALOG_TYPE, }; return gperl_callback_new (func, data, G_N_ELEMENTS (param_types), param_types, 0); } MODULE = Gnome2::Client PACKAGE = Gnome2::Client PREFIX = gnome_client_ gboolean connected (client) GnomeClient * client CODE: /* this naughty macro uses a pointer value as a truth value... */ RETVAL = (gboolean) GNOME_CLIENT_CONNECTED (client); OUTPUT: RETVAL GnomeClient * gnome_client_master (class) CODE: RETVAL = gnome_master_client (); OUTPUT: RETVAL const gchar * gnome_client_get_config_prefix (client) GnomeClient *client const gchar * gnome_client_get_global_config_prefix (client) GnomeClient *client CLEANUP: g_free ((gchar *) RETVAL); ## void gnome_client_set_global_config_prefix (GnomeClient *client, const gchar* prefix) void gnome_client_set_global_config_prefix (client, prefix) GnomeClient *client const gchar* prefix GnomeClientFlags gnome_client_get_flags (client) GnomeClient * client ## void gnome_client_set_restart_style (GnomeClient *client, GnomeRestartStyle style) void gnome_client_set_restart_style (client, style) GnomeClient *client GnomeRestartStyle style ## void gnome_client_set_priority (GnomeClient *client, guint priority) void gnome_client_set_priority (client, priority) GnomeClient *client guint priority ## void gnome_client_set_restart_command (GnomeClient *client, gint argc, gchar *argv[]) ## void gnome_client_set_discard_command (GnomeClient *client, gint argc, gchar *argv[]) ## void gnome_client_set_resign_command (GnomeClient *client, gint argc, gchar *argv[]) ## void gnome_client_set_shutdown_command (GnomeClient *client, gint argc, gchar *argv[]) ## void gnome_client_set_clone_command (GnomeClient *client, gint argc, gchar *argv[]) void set_restart_command (client, ...) GnomeClient *client ALIAS: Gnome2::Client::set_discard_command = 1 Gnome2::Client::set_resign_command = 2 Gnome2::Client::set_shutdown_command = 3 Gnome2::Client::set_clone_command = 4 PREINIT: gint argc, i; gchar ** argv; CODE: argc = items - 1; argv = g_new0 (gchar*, argc); for (i = 1; i < items; i++) argv[i - 1] = SvGChar (ST (i)); switch (ix) { case 0: gnome_client_set_restart_command (client, argc, argv); break; case 1: gnome_client_set_discard_command (client, argc, argv); break; case 2: gnome_client_set_resign_command (client, argc, argv); break; case 3: gnome_client_set_shutdown_command (client, argc, argv); break; case 4: gnome_client_set_clone_command (client, argc, argv); break; } g_free (argv); ## void gnome_client_add_static_arg (GnomeClient *client, ...) void gnome_client_add_static_arg (client, ...) GnomeClient *client PREINIT: int i; CODE: for (i = 1; i < items; i++) gnome_client_add_static_arg (client, SvGChar (ST (i)), NULL); ## void gnome_client_set_current_directory (GnomeClient *client, const gchar *dir) void gnome_client_set_current_directory (client, dir) GnomeClient *client const gchar *dir ## void gnome_client_set_environment (GnomeClient *client, const gchar *name, const gchar *value) void gnome_client_set_environment (client, name, value) GnomeClient *client const gchar *name const gchar *value ### these are not for applications ## void gnome_client_set_process_id (GnomeClient *client, pid_t pid) ## void gnome_client_set_program (GnomeClient *client, const gchar *program) ## void gnome_client_set_user_id (GnomeClient *client, const gchar *id) ## void gnome_client_save_any_dialog (GnomeClient *client, GtkDialog *dialog) void gnome_client_save_any_dialog (client, dialog) GnomeClient *client GtkDialog *dialog ## void gnome_client_save_error_dialog (GnomeClient *client, GtkDialog *dialog) void gnome_client_save_error_dialog (client, dialog) GnomeClient *client GtkDialog *dialog ## void gnome_client_request_phase_2 (GnomeClient *client) void gnome_client_request_phase_2 (client) GnomeClient *client ## void gnome_client_request_save (GnomeClient *client, GnomeSaveStyle save_style, gboolean shutdown, GnomeInteractStyle interact_style, gboolean fast, gboolean global) void gnome_client_request_save (client, save_style, shutdown, interact_style, fast, global) GnomeClient *client GnomeSaveStyle save_style gboolean shutdown GnomeInteractStyle interact_style gboolean fast gboolean global ## void gnome_client_flush (GnomeClient *client) void gnome_client_flush (client) GnomeClient *client ## DEPRECATED ## void gnome_client_disable_master_connection (void) GnomeClient * gnome_client_new (class) C_ARGS: /* void */ GnomeClient * gnome_client_new_without_connection (class) C_ARGS: /* void */ ## void gnome_client_connect (GnomeClient *client) void gnome_client_connect (client) GnomeClient *client ## void gnome_client_disconnect (GnomeClient *client) void gnome_client_disconnect (client) GnomeClient *client ## docs say you don't need it ## void gnome_client_set_id (GnomeClient *client, const gchar *id) ## may return NULL const gchar * gnome_client_get_id (client) GnomeClient * client ## may return NULL const gchar * gnome_client_get_previous_id (client) GnomeClient * client ## may return NULL const gchar * gnome_client_get_desktop_id (client) GnomeClient * client ## void gnome_client_request_interaction (GnomeClient *client, GnomeDialogType dialog_type, GnomeInteractFunction function, gpointer data) ## void gnome_client_request_interaction_interp (GnomeClient *client, GnomeDialogType dialog_type, GtkCallbackMarshal function, gpointer data, GtkDestroyNotify destroy) void gnome_client_request_interaction (client, dialog_type, function, data=NULL) GnomeClient *client GnomeDialogType dialog_type SV * function SV * data PREINIT: GPerlCallback * callback; CODE: callback = gtk2perl_gnome_interact_function_create (function, data); gnome_client_request_interaction (client, dialog_type, (GnomeInteractFunction) gtk2perl_gnome_interact_function, callback); g_object_set_data_full (G_OBJECT (client), "_interact_callback", callback, (GDestroyNotify) gperl_callback_destroy); ## void gnome_interaction_key_return (gint key, gboolean cancel_shutdown) void gnome_client_interaction_key_return (class, key, cancel_shutdown) gint key gboolean cancel_shutdown CODE: gnome_interaction_key_return (key, cancel_shutdown); Gnome2-1.046/xs/GnomeWindowIcon.xs0000644000175000017500000000536012542061635015345 0ustar lacklack/* * Copyright (C) 2003 by the gtk2-perl team (see the file AUTHORS) * * This library is free software; you can redistribute it and/or * modify it under the terms of the GNU Lesser General Public * License as published by the Free Software Foundation; either * version 2.1 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 LICENSE file in the top level of this distribution * for the complete license terms. * */ #include "gnome2perl.h" /* ------------------------------------------------------------------------- */ static char ** newSVGnomeCharArray (SV *ref) { AV *array; SV **value; int length, i; char **filenames; if (! (SvOK (ref) && SvROK (ref) && SvTYPE (SvRV (ref)) == SVt_PVAV)) croak ("the filenames parameter must be a reference to an array"); array = (AV *) SvRV (ref); length = av_len (array) + 1; filenames = g_new0 (char *, length + 1); for (i = 0; i < length; i++) { value = av_fetch (array, i, 0); if (value && SvOK (*value)) filenames[i] = SvPV_nolen (*value); } filenames[length] = NULL; return filenames; } /* ------------------------------------------------------------------------- */ MODULE = Gnome2::WindowIcon PACKAGE = Gnome2::WindowIcon PREFIX = gnome_window_icon_ ## void gnome_window_icon_init (void) void gnome_window_icon_init (class) C_ARGS: /* void */ ## void gnome_window_icon_set_from_default (GtkWindow *w) void gnome_window_icon_set_from_default (class, w) GtkWindow *w C_ARGS: w ## void gnome_window_icon_set_from_file (GtkWindow *w, const char *filename) void gnome_window_icon_set_from_file (class, w, filename) GtkWindow *w const char *filename C_ARGS: w, filename ## void gnome_window_icon_set_from_file_list (GtkWindow *w, const char **filenames) void gnome_window_icon_set_from_file_list (class, w, filenames_ref) GtkWindow *w SV *filenames_ref PREINIT: char **filenames; CODE: filenames = newSVGnomeCharArray (filenames_ref); gnome_window_icon_set_from_file_list (w, (const char**) filenames); g_free (filenames); ## void gnome_window_icon_set_default_from_file (const char *filename) void gnome_window_icon_set_default_from_file (class, filename) const char *filename C_ARGS: filename ## void gnome_window_icon_set_default_from_file_list (const char **filenames) void gnome_window_icon_set_default_from_file_list (class, filenames_ref) SV *filenames_ref PREINIT: char **filenames; CODE: filenames = newSVGnomeCharArray (filenames_ref); gnome_window_icon_set_default_from_file_list ((const char**) filenames); g_free (filenames); Gnome2-1.046/xs/GnomeHRef.xs0000644000175000017500000000232712542061635014111 0ustar lacklack/* * Copyright (C) 2003 by the gtk2-perl team (see the file AUTHORS) * * This library is free software; you can redistribute it and/or * modify it under the terms of the GNU Lesser General Public * License as published by the Free Software Foundation; either * version 2.1 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 LICENSE file in the top level of this distribution * for the complete license terms. * */ #include "gnome2perl.h" MODULE = Gnome2::HRef PACKAGE = Gnome2::HRef PREFIX = gnome_href_ GtkWidget * gnome_href_new (class, url, text) const gchar *url const gchar *text C_ARGS: url, text void gnome_href_set_url (href, url) GnomeHRef *href const gchar *url const gchar * gnome_href_get_url (href) GnomeHRef * href void gnome_href_set_text (href, text) GnomeHRef *href const gchar *text const gchar * gnome_href_get_text (href) GnomeHRef * href void gnome_href_set_label (href, label) GnomeHRef *href const gchar *label const gchar * gnome_href_get_label (href) GnomeHRef * href Gnome2-1.046/xs/GnomeProgram.xs0000644000175000017500000001773712542061635014707 0ustar lacklack/* * Copyright (C) 2003 by the gtk2-perl team (see the file AUTHORS) * * This library is free software; you can redistribute it and/or * modify it under the terms of the GNU Lesser General Public * License as published by the Free Software Foundation; either * version 2.1 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 LICENSE file in the top level of this distribution * for the complete license terms. * */ #include "gnome2perl.h" static const GnomeModuleInfo * handle_module_info (SV * module_info) { const GnomeModuleInfo * real_module_info = NULL; if (!module_info || !SvTRUE (module_info)) { /* go ahead and pass NULL. you get libgnome initialized. */ /* FIXME FIXME is it right to change default to libgnomeui? */ real_module_info = LIBGNOMEUI_MODULE; } else if (SvPOK (module_info)) { /* name of a module. this is a limited-support hack. */ char * modname = SvPV_nolen (module_info); if (strEQ ("libgnome", modname)) { real_module_info = LIBGNOME_MODULE; } else if (strEQ ("libgnomeui", modname)) { real_module_info = LIBGNOMEUI_MODULE; } else { croak ("you passed a string for module_info, but it wasn't one of 'libgnome' or 'libgnomeui'"); } } else { real_module_info = SvGnomeModuleInfo (module_info); } return real_module_info; } MODULE = Gnome2::Program PACKAGE = Gnome2::Program PREFIX = gnome_program_ =for apidoc The list argument is for property-value pairs. =cut ## GnomeProgram * gnome_program_init (const char *app_id, const char *app_version, const GnomeModuleInfo *module_info, int argc, char **argv, const char *first_property_name, ...) GnomeProgram * gnome_program_init (class, app_id, app_version, module_info=NULL, ...) const char * app_id const char * app_version SV * module_info PREINIT: int i; GPerlArgv *pargv; const GnomeModuleInfo * real_module_info = NULL; CODE: #define FIRST_VAR_ARG 4 /* check validity of stack item count before doing anything else */ if (items > FIRST_VAR_ARG && 0 != ((items - FIRST_VAR_ARG) % 2)) { /* caller didn't specify an even number of parameters... */ croak ("Usage: Gnome2::Program->init (app_id, app_version, module_info)\n" " or: Gnome2::Program->init (app_id, app_version, module_info, prop => val, ...)\n" " there may be any number of prop/val pairs, but there must be a value\n" " for every prop"); } /* let's see what the user passed for module_info */ real_module_info = handle_module_info (module_info); /* we're good to go. let's get a hold of @ARGV and $0 so we can * synthesize the argv that gnome_program_init wants. */ pargv = gperl_argv_new (); /* note that we have *not* modifed @ARGV. */ #if LIBGNOME_CHECK_VERSION (2, 8, 0) { GObjectClass *class; GParameter *params = NULL; guint nparams; int j; class = g_type_class_ref (GNOME_TYPE_PROGRAM); nparams = (items - FIRST_VAR_ARG) / 2; params = g_new0 (GParameter, nparams); /* get properties off the stack and set them */ for (i = FIRST_VAR_ARG, j = 0 ; i < items ; i += 2, j++) { GType type; params[j].name = SvGChar (ST (i)); /* Map GNOME_CLIENT_PARAM_SM_CONNECT to G_TYPE_BOOLEAN * manually. It's installed into the GnomeProgram class by * libgnomeui when its module is loaded. But that happens as * part of gnome_program_init_paramv which we call below. So * when we try to find out the correct type for sm-connect * *now*, the type system will complain that GnomeProgram has * no such property. */ if (gperl_str_eq (params[j].name, GNOME_CLIENT_PARAM_SM_CONNECT)) { type = G_TYPE_BOOLEAN; } else { GParamSpec * pspec = g_object_class_find_property (class, params[j].name); if (!pspec) /* we should do a lot more cleanup here, * in principle, but the GnomeProgram is a * singleton, and most people aren't going to * accept an exception on initializing it. */ croak ("property %s not found in object class %s", params[j].name, g_type_name (GNOME_TYPE_PROGRAM)); type = G_PARAM_SPEC_VALUE_TYPE (pspec); } g_value_init (¶ms[j].value, type); gperl_value_from_sv (¶ms[j].value, ST (i+1)); } RETVAL = gnome_program_init_paramv (GNOME_TYPE_PROGRAM, app_id, app_version, real_module_info, pargv->argc, pargv->argv, nparams, params); for (j = 0 ; j < nparams ; j++) { g_value_unset (¶ms[j].value); } g_free (params); g_type_class_unref (class); } #else RETVAL = gnome_program_init (app_id, app_version, real_module_info, pargv->argc, pargv->argv, GNOME_PARAM_NONE); /* get properties off the stack and set them */ for (i = FIRST_VAR_ARG ; i < items ; i += 2) { const char * property_name; GValue gvalue = {0,}; GParamSpec * pspec; property_name = SvGChar (ST (i)); pspec = g_object_class_find_property (G_OBJECT_GET_CLASS (RETVAL), property_name); if (!pspec) /* we should do a lot more cleanup here, * in principle, but the GnomeProgram is a * singleton, and most people aren't going to * accept an exception on initializing it. */ croak ("property %s not found in object class %s", property_name, G_OBJECT_TYPE_NAME (RETVAL)); g_value_init (&gvalue, G_PARAM_SPEC_VALUE_TYPE (pspec)); gperl_value_from_sv (&gvalue, ST (i+1)); g_object_set_property (G_OBJECT (RETVAL), property_name, &gvalue); g_value_unset (&gvalue); } #endif gperl_argv_free (pargv); OUTPUT: RETVAL ## GnomeProgram * gnome_program_get (void) GnomeProgram_ornull * gnome_program_get_program (class) CODE: RETVAL = gnome_program_get (); OUTPUT: RETVAL const char * gnome_program_get_human_readable_name (GnomeProgram * program); const char* gnome_program_get_app_id (GnomeProgram *program); const char* gnome_program_get_app_version (GnomeProgram *program); =for apidoc Returns a list of locations. =cut ## gchar * gnome_program_locate_file (GnomeProgram *program, GnomeFileDomain domain, const gchar *file_name, gboolean only_if_exists, GSList **ret_locations) void gnome_program_locate_file (program, domain, file_name, only_if_exists) GnomeProgram *program GnomeFileDomain domain const gchar *file_name gboolean only_if_exists PREINIT: gchar *path; GSList *i, *ret_locations = NULL; PPCODE: path = gnome_program_locate_file (program, domain, file_name, only_if_exists, &ret_locations); if (path) { XPUSHs (sv_2mortal (newSVGChar (path))); g_free (path); } for (i = ret_locations; i != NULL; i = i->next) { XPUSHs (sv_2mortal (newSVGChar ((gchar *) i->data))); g_free (i->data); } g_slist_free (ret_locations); ## void gnome_program_module_register (const GnomeModuleInfo *module_info) void gnome_program_module_register (class, module_info) SV * module_info PREINIT: const GnomeModuleInfo * real_module_info = NULL; CODE: real_module_info = handle_module_info (module_info); gnome_program_module_register(real_module_info); ## gboolean gnome_program_module_registered (const GnomeModuleInfo *module_info) gboolean gnome_program_module_registered (class, module_info) SV * module_info PREINIT: const GnomeModuleInfo * real_module_info = NULL; CODE: real_module_info = handle_module_info (module_info); RETVAL = gnome_program_module_registered (real_module_info); OUTPUT: RETVAL ## const GnomeModuleInfo * gnome_program_module_load (const char * mod_name) GnomeModuleInfo * gnome_program_module_load (class, mod_name) const char * mod_name CODE: /* just to keep the compiler from complaining about const */ RETVAL = (GnomeModuleInfo*)gnome_program_module_load(mod_name); OUTPUT: RETVAL Gnome2-1.046/xs/GnomeWindow.xs0000644000175000017500000000234012542061635014527 0ustar lacklack/* * Copyright (C) 2003 by the gtk2-perl team (see the file AUTHORS) * * This library is free software; you can redistribute it and/or * modify it under the terms of the GNU Lesser General Public * License as published by the Free Software Foundation; either * version 2.1 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 LICENSE file in the top level of this distribution * for the complete license terms. * */ /* the stuff in gnome-window.h was deprecated as of Oct '03 */ #undef GNOME_DISABLE_DEPRECATED #include "gnome2perl.h" #include MODULE = Gnome2::Window PACKAGE = Gtk2::Window PREFIX = gnome_window_ =for object Gnome2::Window =cut ## void gnome_window_toplevel_set_title (GtkWindow *window, const gchar *doc_name, const gchar *app_name, const gchar *extension) void gnome_window_toplevel_set_title (window, doc_name, app_name, extension) GtkWindow *window const gchar *doc_name const gchar *app_name const gchar *extension C_ARGS: window, doc_name, app_name, extension Gnome2-1.046/xs/GnomeDruidPageStandard.xs0000644000175000017500000000721412542061635016612 0ustar lacklack/* * Copyright (C) 2003 by the gtk2-perl team (see the file AUTHORS) * * This library is free software; you can redistribute it and/or * modify it under the terms of the GNU Lesser General Public * License as published by the Free Software Foundation; either * version 2.1 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 LICENSE file in the top level of this distribution * for the complete license terms. * */ #include "gnome2perl.h" MODULE = Gnome2::DruidPageStandard PACKAGE = Gnome2::DruidPageStandard PREFIX = gnome_druid_page_standard_ ## GtkWidget* gnome_druid_page_standard_new (void); GtkWidget * gnome_druid_page_standard_new (class) C_ARGS: /* void */ ## GtkWidget* gnome_druid_page_standard_new_with_vals (const gchar *title, GdkPixbuf *logo, GdkPixbuf *top_watermark); GtkWidget * gnome_druid_page_standard_new_with_vals (class, title, logo=NULL, top_watermark=NULL) const gchar *title GdkPixbuf_ornull *logo GdkPixbuf_ornull *top_watermark C_ARGS: title, logo, top_watermark ## void gnome_druid_page_standard_set_title (GnomeDruidPageStandard *druid_page_standard, const gchar *title) void gnome_druid_page_standard_set_title (druid_page_standard, title) GnomeDruidPageStandard *druid_page_standard const gchar *title ## void gnome_druid_page_standard_set_logo (GnomeDruidPageStandard *druid_page_standard, GdkPixbuf *logo_image) void gnome_druid_page_standard_set_logo (druid_page_standard, logo_image) GnomeDruidPageStandard *druid_page_standard GdkPixbuf_ornull *logo_image ## void gnome_druid_page_standard_set_top_watermark (GnomeDruidPageStandard *druid_page_standard, GdkPixbuf *top_watermark_image) void gnome_druid_page_standard_set_top_watermark (druid_page_standard, top_watermark_image) GnomeDruidPageStandard *druid_page_standard GdkPixbuf_ornull *top_watermark_image ## void gnome_druid_page_standard_set_title_foreground (GnomeDruidPageStandard *druid_page_standard, GdkColor *color) void gnome_druid_page_standard_set_title_foreground (druid_page_standard, color) GnomeDruidPageStandard *druid_page_standard GdkColor *color ## void gnome_druid_page_standard_set_background (GnomeDruidPageStandard *druid_page_standard, GdkColor *color) void gnome_druid_page_standard_set_background (druid_page_standard, color) GnomeDruidPageStandard *druid_page_standard GdkColor *color ## void gnome_druid_page_standard_set_logo_background (GnomeDruidPageStandard *druid_page_standard, GdkColor *color) void gnome_druid_page_standard_set_logo_background (druid_page_standard, color) GnomeDruidPageStandard *druid_page_standard GdkColor *color ## void gnome_druid_page_standard_set_contents_background (GnomeDruidPageStandard *druid_page_standard, GdkColor *color) void gnome_druid_page_standard_set_contents_background (druid_page_standard, color) GnomeDruidPageStandard *druid_page_standard GdkColor *color ## void gnome_druid_page_standard_append_item (GnomeDruidPageStandard *druid_page_standard, const gchar *question, GtkWidget *item, const gchar *additional_info) void gnome_druid_page_standard_append_item (druid_page_standard, question, item, additional_info) GnomeDruidPageStandard *druid_page_standard const gchar *question GtkWidget *item const gchar *additional_info # Since the vbox member isn't available as an object property, we provide a # separate accessor. GtkWidget * vbox (druid_page_standard) GnomeDruidPageStandard * druid_page_standard CODE: RETVAL = druid_page_standard->vbox; OUTPUT: RETVAL Gnome2-1.046/xs/GnomeAppHelper.xs0000644000175000017500000004223612542061635015150 0ustar lacklack/* * Copyright (C) 2003 by the gtk2-perl team (see the file AUTHORS) * * This library is free software; you can redistribute it and/or * modify it under the terms of the GNU Lesser General Public * License as published by the Free Software Foundation; either * version 2.1 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 LICENSE file in the top level of this distribution * for the complete license terms. * */ #include "gnome2perl.h" #include static void gnome2perl_popup_menu_activate_func (GtkObject *object, gpointer data, GtkWidget *for_widget) { /* We stored the SV in the widget. Get it. */ SV *callback = g_object_get_data (G_OBJECT (object), "gnome2perl_popup_menu_callback"); if (callback) { dGPERL_CALLBACK_MARSHAL_SP; #ifdef PERL_IMPLICIT_CONTEXT PERL_SET_CONTEXT (callback); SPAGAIN; #endif ENTER; SAVETMPS; PUSHMARK (SP); EXTEND (SP, 3); PUSHs (sv_2mortal (newSVGtkObject (object))); PUSHs (sv_2mortal (newSVsv (data))); PUSHs (sv_2mortal (newSVGtkWidget (for_widget))); PUTBACK; call_sv (callback, G_DISCARD); FREETMPS; LEAVE; } } static void gnome2perl_popup_menu_activate_func_destroy (SV *callback) { /* FIXME: Any idea how to destroy the callback? SvREFCNT_dec (callback); */ } /* ------------------------------------------------------------------------- */ /* * this was originally SvGnomeUIInfo in Gtk-Perl-0.7008/Gnome/xs/Gnome.xs */ void gnome2perl_parse_uiinfo_sv (SV * sv, GnomeUIInfo * info) { g_assert (sv != NULL); g_assert (info != NULL); if (!SvOK (sv)) return; /* fail silently if undef */ if ((!SvRV (sv)) || (SvTYPE (SvRV (sv)) != SVt_PVHV && SvTYPE (SvRV (sv)) != SVt_PVAV)) croak ("GnomeUIInfo must be a hash or array reference"); if (SvTYPE (SvRV (sv)) == SVt_PVHV) { HV *h = (HV*) SvRV (sv); SV **s; if ((s = hv_fetch (h, "type", 4, 0)) && SvOK (*s)) info->type = SvGnomeUIInfoType(*s); if ((s = hv_fetch (h, "label", 5, 0)) && SvOK (*s)) info->label = SvGChar (*s); if ((s = hv_fetch (h, "hint", 4, 0)) && SvOK (*s)) info->hint = SvGChar (*s); if ((s = hv_fetch (h, "widget", 6, 0)) && SvOK (*s)) info->widget = SvGtkWidget (*s); /* 'subtree' and 'callback' are also allowed - they have the bonus that we know what you mean if you use them */ if ((s = hv_fetch(h, "moreinfo", 8, 0)) && SvOK(*s)) { info->moreinfo = *s; } else if ((s = hv_fetch(h, "subtree", 7, 0)) && SvOK(*s)) { if (info->type != GNOME_APP_UI_SUBTREE && info->type != GNOME_APP_UI_SUBTREE_STOCK) croak ("'subtree' argument specified, but " "GnomeUIInfo type is not 'subtree'"); info->moreinfo = *s; } else if ((s = hv_fetch(h, "callback", 8, 0)) && SvOK(*s)) { if ((info->type != GNOME_APP_UI_ITEM) && (info->type != GNOME_APP_UI_ITEM_CONFIGURABLE) && (info->type != GNOME_APP_UI_TOGGLEITEM)) croak ("'callback' argument specified, but " "GnomeUIInfo type is not an item type"); info->moreinfo = *s; } if ((s = hv_fetch(h, "pixmap_type", 11, 0)) && SvOK(*s)) info->pixmap_type = SvGnomeUIPixmapType(*s); if ((s = hv_fetch(h, "pixmap_info", 11, 0)) && SvOK(*s)) /* stock ids have no non-ascii (i hope), and this should * allow actual pixmap data through, too */ info->pixmap_info = SvPV_nolen (*s); if ((s = hv_fetch(h, "accelerator_key", 15, 0)) && SvOK(*s)) /* keysym */ info->accelerator_key = SvIV(*s); if ((s = hv_fetch(h, "ac_mods", 7, 0)) && SvOK(*s)) info->ac_mods = SvGdkModifierType(*s); } else { /* As in Python - it's an array of: type, label, hint, moreinfo, pixmap_type, pixmap_info, accelerator_key, modifiers */ AV *a = (AV*)SvRV (sv); SV **s; if ((s = av_fetch (a, 0, 0)) && SvOK (*s)) info->type = SvGnomeUIInfoType (*s); if ((s = av_fetch (a, 1, 0)) && SvOK (*s)) info->label = SvGChar (*s); if ((s = av_fetch (a, 2, 0)) && SvOK (*s)) info->hint = SvGChar (*s); if ((s = av_fetch (a, 3, 0)) && SvOK (*s)) info->moreinfo = *s; if ((s = av_fetch (a, 4, 0)) && SvOK (*s)) info->pixmap_type = SvGnomeUIPixmapType (*s); if ((s = av_fetch (a, 5, 0)) && SvOK (*s)) info->pixmap_info = SvPV_nolen (*s); if ((s = av_fetch (a, 6, 0)) && SvOK (*s)) /* keysym */ info->accelerator_key = SvIV (*s); if ((s = av_fetch (a, 7, 0)) && SvOK (*s)) info->ac_mods = SvGdkModifierType (*s); # define GNOME2PERL_WIDGET_ARRAY_INDEX 8 if ((s = av_fetch (a, GNOME2PERL_WIDGET_ARRAY_INDEX, 0)) && SvOK (*s)) info->widget = SvGtkWidget (*s); } /* Decide what to do with the moreinfo */ switch (info->type) { case GNOME_APP_UI_SUBTREE: case GNOME_APP_UI_SUBTREE_STOCK: case GNOME_APP_UI_RADIOITEMS: if (info->moreinfo == NULL) croak ("GnomeUIInfo type requires a 'moreinfo' or " "'subtree' argument, but none was specified"); /* Now we can recurse */ /* Hope user_data doesn't get mangled... */ info->user_data = info->moreinfo; info->moreinfo = gnome2perl_svrv_to_uiinfo_tree (info->moreinfo, "'subtree' or 'moreinfo'"); break; case GNOME_APP_UI_HELP: if (info->moreinfo == NULL) croak("GnomeUIInfo type requires a 'moreinfo' argument, " "but none was specified"); /* It's just a string */ info->moreinfo = SvGChar ((SV*)info->moreinfo); break; case GNOME_APP_UI_ITEM: case GNOME_APP_UI_ITEM_CONFIGURABLE: case GNOME_APP_UI_TOGGLEITEM: if (info->moreinfo) { /* We simply swap moreinfo and user_data here so that the GnomePopupMenu functions don't see the SV but our custom marshaller. GnomeAppHelper isn't directly affected since we use the GnomeUIBuilderData thingy there anyway. */ info->user_data = info->moreinfo; info->moreinfo = gnome2perl_popup_menu_activate_func; } break; default: /* Do nothing */ break; } } GnomeUIInfo * gnome2perl_svrv_to_uiinfo_tree (SV* sv, char * name) { AV * av; int i, count; GnomeUIInfo * infos; g_assert (sv != NULL); if ((!SvOK (sv)) || (!SvRV (sv)) || (SvTYPE (SvRV (sv)) != SVt_PVAV)) croak ("%s must be a reference to an array of Gnome UI " "Info Entries", name); av = (AV*)SvRV (sv); /* add one to turn from last index to length... */ count = av_len (av) + 1; infos = gperl_alloc_temp (sizeof(GnomeUIInfo) * (count+1)); for (i = 0; i < count; i++) { SV ** svp = av_fetch (av, i, FALSE); gnome2perl_parse_uiinfo_sv (*svp, infos + i); } /* and stick another one on the end of the array as the terminator */ infos[count].type = GNOME_APP_UI_ENDOFINFO; return infos; } GnomeUIInfo * SvGnomeUIInfo (SV * sv) { return gnome2perl_svrv_to_uiinfo_tree (sv, "variable"); } static void gnome2perl_refill_info_common (SV *data, GnomeUIInfo *info) { if (info->widget) { if (SvTYPE(SvRV(data)) == SVt_PVHV) { hv_store ((HV*)SvRV(data), "widget", 6, newSVGtkWidget (info->widget), FALSE); } else { av_store ((AV*)SvRV(data), GNOME2PERL_WIDGET_ARRAY_INDEX, newSVGtkWidget (info->widget)); } } } static void gnome2perl_refill_info (SV *data, GnomeUIInfo *info) { gnome2perl_refill_info_common (data, info); switch (info->type) { case GNOME_APP_UI_SUBTREE: case GNOME_APP_UI_SUBTREE_STOCK: case GNOME_APP_UI_RADIOITEMS: /* in gnome2perl_parse_uiinfo_sv, we stashed a pointer to * the SV reference to the subtree array in info->user_data. * it should still be there, provided there's no mangling * in the library. */ gnome2perl_refill_infos (info->user_data, info->moreinfo); break; default: break; } } static void gnome2perl_refill_info_popup (SV *data, GnomeUIInfo *info) { gnome2perl_refill_info_common (data, info); switch (info->type) { case GNOME_APP_UI_SUBTREE: case GNOME_APP_UI_SUBTREE_STOCK: case GNOME_APP_UI_RADIOITEMS: /* in gnome2perl_parse_uiinfo_sv, we stashed a pointer to * the SV reference to the subtree array in info->user_data. * it should still be there, provided there's no mangling * in the library. */ gnome2perl_refill_infos_popup (info->user_data, info->moreinfo); break; case GNOME_APP_UI_ITEM: case GNOME_APP_UI_ITEM_CONFIGURABLE: case GNOME_APP_UI_TOGGLEITEM: /* user_data contains the SV. Store it in the widget so that the custom marshaller can recover and call it. */ if (info->user_data) g_object_set_data_full ( G_OBJECT (info->widget), "gnome2perl_popup_menu_callback", info->user_data, (GDestroyNotify) gnome2perl_popup_menu_activate_func_destroy); break; default: break; } } void gnome2perl_refill_infos (SV *data, GnomeUIInfo *infos) { int i, count; AV* a = (AV*)SvRV (data); count = av_len(a) + 1; for (i = 0; i < count; i++) { SV** s = av_fetch(a, i, 0); gnome2perl_refill_info (*s, infos + i); } } void gnome2perl_refill_infos_popup (SV *data, GnomeUIInfo *infos) { int i, count; AV* a = (AV*)SvRV (data); count = av_len(a) + 1; for (i = 0; i < count; i++) { SV** s = av_fetch(a, i, 0); gnome2perl_refill_info_popup (*s, infos + i); } } static void gnome2perl_ui_signal_connect (GnomeUIInfo * uiinfo, const char * signal_name, GnomeUIBuilderData * uibdata) { /* We're using user_data here instead of moreinfo because we swapped them in gnome2perl_parse_uiinfo_sv. */ if (uiinfo->user_data) gperl_signal_connect (newSVGObject (G_OBJECT (uiinfo->widget)), (char*) signal_name, uiinfo->user_data, NULL, G_SIGNAL_RUN_FIRST); } static GnomeUIBuilderData ui_builder_data = { gnome2perl_ui_signal_connect, NULL, FALSE, NULL, (GtkDestroyNotify) gperl_callback_destroy }; MODULE = Gnome2::AppHelper PACKAGE = Gnome2 PREFIX = gnome_ =for object Gnome2::AppHelper =for apidoc =head1 GnomeUIInfo In Gnome2 GnomeUIInfo's are often used as a convenient way to create GUI's. In Perl, GnomeUIInfo's are always references to arrays of items. Items can either be references to hashs or references to arrays: =over =item Hash Reference When using hash references, items are specified by giving key-value pairs. A typical example: { type => "item", label => "Quit", callback => sub { exit(0); } } For the list of valid keys, see below. =item Array References When using array references, items are a list of the following keys, in this order: type, label, hint, moreinfo, pixmap_type, pixmap_info, accelerator_key and modifiers. The example from above would become: [ "item", "Item", undef, sub { exit(0); }, undef, undef, undef, undef ] =back To create multi-level structures, you use the "subtree" type and the "subtree" key, as in the following example: { type => "subtree", label => "Radio Items", subtree => [ { type => "radioitems", moreinfo => [ { type => "item", label => "A" }, { type => "item", label => "B" }, { type => "item", label => "C" }, { type => "item", label => "D" }, { type => "item", label => "E" } ] } ] } =cut ## void gnome_accelerators_sync (void) void gnome_accelerators_sync (class) C_ARGS: /*void*/ MODULE = Gnome2::AppHelper PACKAGE = Gtk2::MenuShell PREFIX = gnome_app_ =for object Gnome2::AppHelper =cut ### void gnome_app_fill_menu (GtkMenuShell *menu_shell, GnomeUIInfo *uiinfo, GtkAccelGroup *accel_group, gboolean uline_accels, gint pos) ### void gnome_app_fill_menu_with_data (GtkMenuShell *menu_shell, GnomeUIInfo *uiinfo, GtkAccelGroup *accel_group, gboolean uline_accels, gint pos, gpointer user_data) ### void gnome_app_fill_menu_custom (GtkMenuShell *menu_shell, GnomeUIInfo *uiinfo, GnomeUIBuilderData *uibdata, GtkAccelGroup *accel_group, gboolean uline_accels, gint pos) void gnome_app_fill_menu (menu_shell, uiinfo, accel_group, uline_accels, pos) GtkMenuShell *menu_shell GnomeUIInfo *uiinfo GtkAccelGroup *accel_group gboolean uline_accels gint pos CODE: gnome_app_fill_menu_custom (menu_shell, uiinfo, &ui_builder_data, accel_group, uline_accels, pos); gnome2perl_refill_infos (ST (1), uiinfo); =for apidoc Returns the GtkWidget and the position associated with the path. =cut ## GtkWidget *gnome_app_find_menu_pos (GtkWidget *parent, const gchar *path, gint *pos) void gnome_app_find_menu_pos (parent, path) GtkWidget *parent const gchar *path PREINIT: gint pos; GtkWidget *widget; PPCODE: EXTEND (sp, 2); widget = gnome_app_find_menu_pos (parent, path, &pos); PUSHs (sv_2mortal (newSVGtkWidget (widget))); PUSHs (sv_2mortal (newSViv (pos))); MODULE = Gnome2::AppHelper PACKAGE = Gtk2::Toolbar PREFIX = gnome_app_ =for object Gnome2::AppHelper =cut ## void gnome_app_fill_toolbar (GtkToolbar *toolbar, GnomeUIInfo *uiinfo, GtkAccelGroup *accel_group) ### void gnome_app_fill_toolbar_with_data (GtkToolbar *toolbar, GnomeUIInfo *uiinfo, GtkAccelGroup *accel_group, gpointer user_data) ### void gnome_app_fill_toolbar_custom (GtkToolbar *toolbar, GnomeUIInfo *uiinfo, GnomeUIBuilderData *uibdata, GtkAccelGroup *accel_group) void gnome_app_fill_toolbar (toolbar, uiinfo, accel_group) GtkToolbar *toolbar GnomeUIInfo *uiinfo GtkAccelGroup *accel_group CODE: gnome_app_fill_toolbar_custom (toolbar, uiinfo, &ui_builder_data, accel_group); gnome2perl_refill_infos (ST (1), uiinfo); MODULE = Gnome2::AppHelper PACKAGE = Gnome2::App PREFIX = gnome_app_ #### void gnome_app_ui_configure_configurable (GnomeUIInfo* uiinfo) ##void ##gnome_app_ui_configure_configurable (uiinfo) ## GnomeUIInfo* uiinfo ## void gnome_app_create_menus (GnomeApp *app, GnomeUIInfo *uiinfo) ### void gnome_app_create_menus_interp (GnomeApp *app, GnomeUIInfo *uiinfo, GtkCallbackMarshal relay_func, gpointer data, GtkDestroyNotify destroy_func) ### void gnome_app_create_menus_with_data (GnomeApp *app, GnomeUIInfo *uiinfo, gpointer user_data) ### void gnome_app_create_menus_custom (GnomeApp *app, GnomeUIInfo *uiinfo, GnomeUIBuilderData *uibdata) ## void gnome_app_create_toolbar (GnomeApp *app, GnomeUIInfo *uiinfo) ### void gnome_app_create_toolbar_interp (GnomeApp *app, GnomeUIInfo *uiinfo, GtkCallbackMarshal relay_func, gpointer data, GtkDestroyNotify destroy_func) ### void gnome_app_create_toolbar_with_data (GnomeApp *app, GnomeUIInfo *uiinfo, gpointer user_data) ### void gnome_app_create_toolbar_custom (GnomeApp *app, GnomeUIInfo *uiinfo, GnomeUIBuilderData *uibdata) void gnome_app_create_menus (app, uiinfo) GnomeApp *app GnomeUIInfo *uiinfo ALIAS: create_toolbar = 1 CODE: if (ix == 0) gnome_app_create_menus_custom (app, uiinfo, &ui_builder_data); else gnome_app_create_toolbar_custom (app, uiinfo, &ui_builder_data); gnome2perl_refill_infos (ST (1), uiinfo); ## void gnome_app_insert_menus (GnomeApp *app, const gchar *path, GnomeUIInfo *menuinfo) ### void gnome_app_insert_menus_custom (GnomeApp *app, const gchar *path, GnomeUIInfo *uiinfo, GnomeUIBuilderData *uibdata) ### void gnome_app_insert_menus_with_data (GnomeApp *app, const gchar *path, GnomeUIInfo *menuinfo, gpointer data) ### void gnome_app_insert_menus_interp (GnomeApp *app, const gchar *path, GnomeUIInfo *menuinfo, GtkCallbackMarshal relay_func, gpointer data, GtkDestroyNotify destroy_func) void gnome_app_insert_menus (app, path, menuinfo) GnomeApp *app const gchar *path GnomeUIInfo *menuinfo CODE: gnome_app_insert_menus_custom (app, path, menuinfo, &ui_builder_data); gnome2perl_refill_infos (ST (2), menuinfo); ## void gnome_app_remove_menus (GnomeApp *app, const gchar *path, gint items) void gnome_app_remove_menus (app, path, items) GnomeApp *app const gchar *path gint items ## void gnome_app_remove_menu_range (GnomeApp *app, const gchar *path, gint start, gint items) void gnome_app_remove_menu_range (app, path, start, items) GnomeApp *app const gchar *path gint start gint items ## void gnome_app_install_menu_hints (GnomeApp *app, GnomeUIInfo *uiinfo) void gnome_app_install_menu_hints (app, uiinfo) GnomeApp *app GnomeUIInfo *uiinfo ## void gnome_app_setup_toolbar (GtkToolbar *toolbar, BonoboDockItem *dock_item) void gnome_app_setup_toolbar (class, toolbar, dock_item) GtkToolbar *toolbar BonoboDockItem *dock_item C_ARGS: toolbar, dock_item MODULE = Gnome2::AppHelper PACKAGE = Gnome2::AppBar PREFIX = gnome_app_ ## void gnome_app_install_appbar_menu_hints (GnomeAppBar* appbar, GnomeUIInfo* uiinfo) void gnome_app_install_menu_hints (appbar, uiinfo) GnomeAppBar* appbar GnomeUIInfo* uiinfo CODE: gnome_app_install_appbar_menu_hints (appbar, uiinfo); MODULE = Gnome2::AppHelper PACKAGE = Gtk2::Statusbar PREFIX = gnome_app_ =for object Gnome2::AppHelper =cut ## void gnome_app_install_statusbar_menu_hints (GtkStatusbar* bar, GnomeUIInfo* uiinfo) void gnome_app_install_menu_hints (bar, uiinfo) GtkStatusbar* bar GnomeUIInfo* uiinfo CODE: gnome_app_install_statusbar_menu_hints (bar, uiinfo); Gnome2-1.046/xs/GnomeInit.xs0000644000175000017500000000211212542061635014160 0ustar lacklack/* * Copyright (C) 2003 by the gtk2-perl team (see the file AUTHORS) * * This library is free software; you can redistribute it and/or * modify it under the terms of the GNU Lesser General Public * License as published by the Free Software Foundation; either * version 2.1 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 LICENSE file in the top level of this distribution * for the complete license terms. * */ #include "gnome2perl.h" MODULE = Gnome2::Init PACKAGE = Gnome2 PREFIX = gnome_ =for object Gnome2::main =cut const char * user_dir_get (class) ALIAS: Gnome2::user_private_dir_get = 1 Gnome2::user_accels_dir_get = 2 CODE: switch (ix) { case 0: RETVAL = gnome_user_dir_get (); break; case 1: RETVAL = gnome_user_private_dir_get (); break; case 2: RETVAL = gnome_user_accels_dir_get (); break; default: RETVAL = NULL; } OUTPUT: RETVAL Gnome2-1.046/xs/GnomeUtil.xs0000644000175000017500000000211612542061635014176 0ustar lacklack/* * Copyright (C) 2003 by the gtk2-perl team (see the file AUTHORS) * * This library is free software; you can redistribute it and/or * modify it under the terms of the GNU Lesser General Public * License as published by the Free Software Foundation; either * version 2.1 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 LICENSE file in the top level of this distribution * for the complete license terms. * */ #include "gnome2perl.h" MODULE = Gnome2::Util PACKAGE = Gnome2::Util PREFIX = gnome_util_ const char * gnome_util_extension (class, path) const char *path CODE: RETVAL = g_extension_pointer (path); OUTPUT: RETVAL gchar_own * gnome_util_prepend_user_home (class, file) const gchar *file C_ARGS: file gchar_own * gnome_util_home_file (class, file) const gchar *file C_ARGS: file char * gnome_util_user_shell (class) C_ARGS: /* void */ Gnome2-1.046/xs/GnomeScores.xs0000644000175000017500000001075212542061635014524 0ustar lacklack/* * Copyright (C) 2003 by the gtk2-perl team (see the file AUTHORS) * * This library is free software; you can redistribute it and/or * modify it under the terms of the GNU Lesser General Public * License as published by the Free Software Foundation; either * version 2.1 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 LICENSE file in the top level of this distribution * for the complete license terms. * */ #include "gnome2perl.h" MODULE = Gnome2::Scores PACKAGE = Gnome2::Scores PREFIX = gnome_scores_ ## GtkWidget * gnome_scores_display (const gchar *title, const gchar *app_name, const gchar *level, int pos) GtkWidget * gnome_scores_display (class, title, app_name, level, pos) const gchar *title const gchar *app_name const gchar *level int pos C_ARGS: title, app_name, level, pos ## GtkWidget * gnome_scores_display_with_pixmap (const gchar *pixmap_logo, const gchar *app_name, const gchar *level, int pos) GtkWidget * gnome_scores_display_with_pixmap (class, pixmap_logo, app_name, level, pos) const gchar *pixmap_logo const gchar *app_name const gchar *level int pos C_ARGS: pixmap_logo, app_name, level, pos =for apidoc =for arg names - reference to an array =for arg scores - reference to an array =for arg times - reference to an array =cut ## GtkWidget* gnome_scores_new (guint n_scores, gchar **names, gfloat *scores, time_t *times, gboolean clear) GtkWidget* gnome_scores_new (class, names, scores, times, clear) SV * names SV * scores SV * times gboolean clear PREINIT: SV **s; int i; guint length; gchar **real_names = NULL; gfloat *real_scores = NULL; time_t *real_times = NULL; CODE: if (names && SvOK (names) && SvRV (names) && SvTYPE (SvRV (names)) == SVt_PVAV && scores && SvOK (scores) && SvRV (scores) && SvTYPE (SvRV (scores)) == SVt_PVAV && times && SvOK (times) && SvRV (times) && SvTYPE (SvRV (times)) == SVt_PVAV) { AV *a = (AV*) SvRV (names); AV *b = (AV*) SvRV (scores); AV *c = (AV*) SvRV (times); length = av_len (a); real_names = g_new0 (gchar *, length + 1); for (i = 0; i <= length; i++) if ((s = av_fetch (a, i, 0)) && SvOK (*s)) real_names[i] = SvGChar (*s); /* --------------------------------------------------------- */ if (av_len (b) != length) croak ("All three array references must have the same number of elements"); real_scores = g_new0 (gfloat, length + 1); for (i = 0; i <= length; i++) if ((s = av_fetch (b, i, 0)) && SvOK (*s)) real_scores[i] = SvNV (*s); /* --------------------------------------------------------- */ if (av_len (c) != length) croak ("All three array references must have the same number of elements"); real_times = g_new0 (time_t, length + 1); for (i = 0; i <= length; i++) if ((s = av_fetch (c, i, 0)) && SvOK (*s)) real_times[i] = SvIV (*s); } else croak ("Usage: Gnome2::Scores -> new([name, name, ...], [score, score, ...], [time, time, ...], clear)"); RETVAL = gnome_scores_new (length + 1, real_names, real_scores, real_times, clear); OUTPUT: RETVAL ## void gnome_scores_set_logo_label (GnomeScores *gs, const gchar *txt, const gchar *font, GdkColor *col) void gnome_scores_set_logo_label (gs, txt, font, col) GnomeScores *gs const gchar *txt const gchar *font GdkColor *col ## void gnome_scores_set_logo_pixmap (GnomeScores *gs, const gchar *pix_name) void gnome_scores_set_logo_pixmap (gs, pix_name) GnomeScores *gs const gchar *pix_name ## void gnome_scores_set_logo_widget (GnomeScores *gs, GtkWidget *w) void gnome_scores_set_logo_widget (gs, w) GnomeScores *gs GtkWidget *w ## void gnome_scores_set_color (GnomeScores *gs, guint n, GdkColor *col) void gnome_scores_set_color (gs, n, col) GnomeScores *gs guint n GdkColor *col ## void gnome_scores_set_def_color (GnomeScores *gs, GdkColor *col) void gnome_scores_set_def_color (gs, col) GnomeScores *gs GdkColor *col ## void gnome_scores_set_colors (GnomeScores *gs, GdkColor *col) void gnome_scores_set_colors (gs, col) GnomeScores *gs GdkColor *col ## void gnome_scores_set_logo_label_title (GnomeScores *gs, const gchar *txt) void gnome_scores_set_logo_label_title (gs, txt) GnomeScores *gs const gchar *txt ## void gnome_scores_set_current_player (GnomeScores *gs, gint i) void gnome_scores_set_current_player (gs, i) GnomeScores *gs gint i Gnome2-1.046/xs/GnomeIconLookup.xs0000644000175000017500000000616312542061635015351 0ustar lacklack/* * Copyright (C) 2003, 2013 by the gtk2-perl team (see the file AUTHORS) * * This library is free software; you can redistribute it and/or * modify it under the terms of the GNU Lesser General Public * License as published by the Free Software Foundation; either * version 2.1 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 LICENSE file in the top level of this distribution * for the complete license terms. * */ #include "gnome2perl.h" MODULE = Gnome2::IconLookup PACKAGE = Gnome2::IconTheme PREFIX = gnome_icon_ ### GnomeIconTheme didn't appear until about 2.0.6, according to the changelogs ### for libgnomeui. BOOT: /* pass -Werror even if there are no xsubs at all */ #ifndef GNOME_TYPE_ICON_THEME PERL_UNUSED_VAR (file); #endif #ifdef GNOME_TYPE_ICON_THEME =for apidoc Returns the icon name and a GnomeIconLookupFlags. =cut ## char *gnome_icon_lookup (GnomeIconTheme *icon_theme, GnomeThumbnailFactory *thumbnail_factory, const char *file_uri, const char *custom_icon, GnomeVFSFileInfo *file_info, const char *mime_type, GnomeIconLookupFlags flags, GnomeIconLookupResultFlags *result) void gnome_icon_lookup (icon_theme, thumbnail_factory, file_uri, custom_icon, file_info, mime_type, flags) GnomeIconTheme *icon_theme GnomeThumbnailFactory_ornull *thumbnail_factory const char *file_uri SV *custom_icon GnomeVFSFileInfo *file_info const char *mime_type GnomeIconLookupFlags flags PREINIT: GnomeIconLookupResultFlags result; char *icon = NULL; const char *real_custom_icon = NULL; PPCODE: if (SvPOK (custom_icon)) real_custom_icon = (const char *) SvPV_nolen (custom_icon); icon = gnome_icon_lookup (icon_theme, thumbnail_factory, file_uri, real_custom_icon, file_info, mime_type, flags, &result); if (icon == NULL) XSRETURN_UNDEF; EXTEND (sp, 2); PUSHs (sv_2mortal (newSVpv (icon, 0))); PUSHs (sv_2mortal (newSVGnomeIconLookupFlags (result))); g_free (icon); =for apidoc Returns the icon name and a GnomeIconLookupFlags. =cut ## char *gnome_icon_lookup_sync (GnomeIconTheme *icon_theme, GnomeThumbnailFactory *thumbnail_factory, const char *file_uri, const char *custom_icon, GnomeIconLookupFlags flags, GnomeIconLookupResultFlags *result) void gnome_icon_lookup_sync (icon_theme, thumbnail_factory, file_uri, custom_icon, flags) GnomeIconTheme *icon_theme GnomeThumbnailFactory_ornull *thumbnail_factory const char *file_uri SV *custom_icon GnomeIconLookupFlags flags PREINIT: GnomeIconLookupResultFlags result; char *icon; const char *real_custom_icon = NULL; PPCODE: if (SvPOK (custom_icon)) real_custom_icon = (const char *) SvPV_nolen (custom_icon); icon = gnome_icon_lookup_sync (icon_theme, thumbnail_factory, file_uri, real_custom_icon, flags, &result); if (icon == NULL) XSRETURN_UNDEF; EXTEND (sp, 2); PUSHs (sv_2mortal (newSVpv (icon, 0))); PUSHs (sv_2mortal (newSVGnomeIconLookupFlags (result))); g_free (icon); #endif /* have GNOME_TYPE_ICON_THEME */ Gnome2-1.046/xs/GnomeFontPicker.xs0000644000175000017500000000550512542061635015332 0ustar lacklack/* * Copyright (C) 2003 by the gtk2-perl team (see the file AUTHORS) * * This library is free software; you can redistribute it and/or * modify it under the terms of the GNU Lesser General Public * License as published by the Free Software Foundation; either * version 2.1 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 LICENSE file in the top level of this distribution * for the complete license terms. * */ #include "gnome2perl.h" /* gnome-font-picker.h was deprecated in 2003 */ #undef GNOME_DISABLE_DEPRECATED MODULE = Gnome2::FontPicker PACKAGE = Gnome2::FontPicker PREFIX = gnome_font_picker_ GtkWidget * gnome_font_picker_new (class) C_ARGS: /* void */ ## void gnome_font_picker_set_title (GnomeFontPicker *gfp, const gchar *title) void gnome_font_picker_set_title (gfp, title) GnomeFontPicker *gfp const gchar *title ## const gchar* gnome_font_picker_get_title (GnomeFontPicker *gfp) const gchar* gnome_font_picker_get_title (gfp) GnomeFontPicker *gfp ## GnomeFontPickerMode gnome_font_picker_get_mode (GnomeFontPicker *gfp) GnomeFontPickerMode gnome_font_picker_get_mode (gfp) GnomeFontPicker *gfp ## void gnome_font_picker_set_mode (GnomeFontPicker *gfp, GnomeFontPickerMode mode) void gnome_font_picker_set_mode (gfp, mode) GnomeFontPicker *gfp GnomeFontPickerMode mode ## void gnome_font_picker_fi_set_use_font_in_label (GnomeFontPicker *gfp, gboolean use_font_in_label, gint size) void gnome_font_picker_fi_set_use_font_in_label (gfp, use_font_in_label, size) GnomeFontPicker *gfp gboolean use_font_in_label gint size ## void gnome_font_picker_fi_set_show_size (GnomeFontPicker *gfp, gboolean show_size) void gnome_font_picker_fi_set_show_size (gfp, show_size) GnomeFontPicker *gfp gboolean show_size ## void gnome_font_picker_uw_set_widget (GnomeFontPicker *gfp, GtkWidget *widget) void gnome_font_picker_uw_set_widget (gfp, widget) GnomeFontPicker *gfp GtkWidget *widget ## GtkWidget * gnome_font_picker_uw_get_widget (GnomeFontPicker *gfp) GtkWidget * gnome_font_picker_uw_get_widget (gfp) GnomeFontPicker *gfp ## const gchar* gnome_font_picker_get_font_name (GnomeFontPicker *gfp) const gchar* gnome_font_picker_get_font_name (gfp) GnomeFontPicker *gfp ## gboolean gnome_font_picker_set_font_name (GnomeFontPicker *gfp, const gchar *fontname) gboolean gnome_font_picker_set_font_name (gfp, fontname) GnomeFontPicker *gfp const gchar *fontname ## void gnome_font_picker_set_preview_text (GnomeFontPicker *gfp, const gchar *text) void gnome_font_picker_set_preview_text (gfp, text) GnomeFontPicker *gfp const gchar *text const gchar* gnome_font_picker_get_preview_text (GnomeFontPicker *gfp); Gnome2-1.046/xs/GnomeFileEntry.xs0000644000175000017500000000370512542061635015167 0ustar lacklack/* * Copyright (C) 2003 by the gtk2-perl team (see the file AUTHORS) * * This library is free software; you can redistribute it and/or * modify it under the terms of the GNU Lesser General Public * License as published by the Free Software Foundation; either * version 2.1 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 LICENSE file in the top level of this distribution * for the complete license terms. * */ #include "gnome2perl.h" MODULE = Gnome2::FileEntry PACKAGE = Gnome2::FileEntry PREFIX = gnome_file_entry_ GtkWidget * gnome_file_entry_new (class, history_id, browse_dialog_title) const char *history_id const char *browse_dialog_title C_ARGS: history_id, browse_dialog_title GtkWidget * gnome_file_entry_gnome_entry (GnomeFileEntry *fentry); GtkWidget * gnome_file_entry_gtk_entry (GnomeFileEntry *fentry); void gnome_file_entry_set_title (fentry, browse_dialog_title) GnomeFileEntry *fentry const char *browse_dialog_title void gnome_file_entry_set_default_path (fentry, path) GnomeFileEntry *fentry const char *path void gnome_file_entry_set_directory_entry (fentry, directory_entry) GnomeFileEntry *fentry gboolean directory_entry gboolean gnome_file_entry_get_directory_entry (fentry) GnomeFileEntry *fentry char * gnome_file_entry_get_full_path (fentry, file_must_exist) GnomeFileEntry * fentry gboolean file_must_exist CLEANUP: g_free (RETVAL); void gnome_file_entry_set_filename (fentry, filename) GnomeFileEntry *fentry const char *filename void gnome_file_entry_set_modal (fentry, is_modal) GnomeFileEntry *fentry gboolean is_modal gboolean gnome_file_entry_get_modal (fentry) GnomeFileEntry *fentry ## deprecated ## void gnome_file_entry_set_directory(GnomeFileEntry *fentry, gboolean directory_entry) Gnome2-1.046/xs/GnomeDruidPage.xs0000644000175000017500000000222612542061635015127 0ustar lacklack/* * Copyright (C) 2003 by the gtk2-perl team (see the file AUTHORS) * * This library is free software; you can redistribute it and/or * modify it under the terms of the GNU Lesser General Public * License as published by the Free Software Foundation; either * version 2.1 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 LICENSE file in the top level of this distribution * for the complete license terms. * */ #include "gnome2perl.h" MODULE = Gnome2::DruidPage PACKAGE = Gnome2::DruidPage PREFIX = gnome_druid_page_ GtkWidget * gnome_druid_page_new (class) C_ARGS: /* void */ gboolean gnome_druid_page_next (druid_page) GnomeDruidPage *druid_page void gnome_druid_page_prepare (druid_page) GnomeDruidPage *druid_page gboolean gnome_druid_page_back (druid_page) GnomeDruidPage *druid_page gboolean gnome_druid_page_cancel (druid_page) GnomeDruidPage *druid_page void gnome_druid_page_finish (druid_page) GnomeDruidPage *druid_page Gnome2-1.046/xs/GnomeDateEdit.xs0000644000175000017500000000423412542061635014747 0ustar lacklack/* * Copyright (C) 2003 by the gtk2-perl team (see the file AUTHORS) * * This library is free software; you can redistribute it and/or * modify it under the terms of the GNU Lesser General Public * License as published by the Free Software Foundation; either * version 2.1 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 LICENSE file in the top level of this distribution * for the complete license terms. * */ #include "gnome2perl.h" static SV * date_edit_flags_to_sv (gint flags) { return gperl_convert_back_flags (GNOME_TYPE_DATE_EDIT_FLAGS, flags); } MODULE = Gnome2::DateEdit PACKAGE = Gnome2::DateEdit PREFIX = gnome_date_edit_ GtkWidget * gnome_date_edit_new (class, the_time, show_time, use_24_format) time_t the_time gboolean show_time gboolean use_24_format C_ARGS: the_time, show_time, use_24_format GtkWidget * gnome_date_edit_new_flags (class, the_time, flags) time_t the_time GnomeDateEditFlags flags C_ARGS: the_time, flags ## void gnome_date_edit_set_time (GnomeDateEdit *gde, time_t the_time) void gnome_date_edit_set_time (gde, the_time) GnomeDateEdit *gde time_t the_time ## time_t gnome_date_edit_get_time (GnomeDateEdit *gde) time_t gnome_date_edit_get_time (gde) GnomeDateEdit *gde ## void gnome_date_edit_set_popup_range (GnomeDateEdit *gde, int low_hour, int up_hour) void gnome_date_edit_set_popup_range (gde, low_hour, up_hour) GnomeDateEdit *gde int low_hour int up_hour ## void gnome_date_edit_set_flags (GnomeDateEdit *gde, GnomeDateEditFlags flags) void gnome_date_edit_set_flags (gde, flags) GnomeDateEdit *gde GnomeDateEditFlags flags ## int gnome_date_edit_get_flags (GnomeDateEdit *gde) SV * gnome_date_edit_get_flags (gde) GnomeDateEdit *gde CODE: RETVAL = date_edit_flags_to_sv (gnome_date_edit_get_flags (gde)); OUTPUT: RETVAL ## time_t gnome_date_edit_get_initial_time(GnomeDateEdit *gde) time_t gnome_date_edit_get_initial_time (gde) GnomeDateEdit *gde Gnome2-1.046/xs/GnomeDruidPageEdge.xs0000644000175000017500000000721212542061635015714 0ustar lacklack/* * Copyright (C) 2003 by the gtk2-perl team (see the file AUTHORS) * * This library is free software; you can redistribute it and/or * modify it under the terms of the GNU Lesser General Public * License as published by the Free Software Foundation; either * version 2.1 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 LICENSE file in the top level of this distribution * for the complete license terms. * */ #include "gnome2perl.h" MODULE = Gnome2::DruidPageEdge PACKAGE = Gnome2::DruidPageEdge PREFIX = gnome_druid_page_edge_ ## GtkWidget * gnome_druid_page_edge_new (GnomeEdgePosition position); GtkWidget * gnome_druid_page_edge_new (class, position) GnomeEdgePosition position C_ARGS: position ## GtkWidget * gnome_druid_page_edge_new_aa (GnomeEdgePosition position); GtkWidget * gnome_druid_page_edge_new_aa (class, position) GnomeEdgePosition position C_ARGS: position ## GtkWidget * gnome_druid_page_edge_new_with_vals (GnomeEdgePosition position, gboolean antialiased, const gchar *title, const gchar *text, GdkPixbuf *logo, GdkPixbuf *watermark, GdkPixbuf *top_watermark); GtkWidget * gnome_druid_page_edge_new_with_vals (class, position, antialiased, title=NULL, text=NULL, logo=NULL, watermark=NULL, top_watermark=NULL) GnomeEdgePosition position gboolean antialiased const gchar *title const gchar *text GdkPixbuf_ornull *logo GdkPixbuf_ornull *watermark GdkPixbuf_ornull *top_watermark C_ARGS: position, antialiased, title, text, logo, watermark, top_watermark ## void gnome_druid_page_edge_set_bg_color (GnomeDruidPageEdge *druid_page_edge, GdkColor *color) void gnome_druid_page_edge_set_bg_color (druid_page_edge, color) GnomeDruidPageEdge *druid_page_edge GdkColor *color ## void gnome_druid_page_edge_set_textbox_color (GnomeDruidPageEdge *druid_page_edge, GdkColor *color) void gnome_druid_page_edge_set_textbox_color (druid_page_edge, color) GnomeDruidPageEdge *druid_page_edge GdkColor *color ## void gnome_druid_page_edge_set_logo_bg_color (GnomeDruidPageEdge *druid_page_edge, GdkColor *color) void gnome_druid_page_edge_set_logo_bg_color (druid_page_edge, color) GnomeDruidPageEdge *druid_page_edge GdkColor *color ## void gnome_druid_page_edge_set_title_color (GnomeDruidPageEdge *druid_page_edge, GdkColor *color) void gnome_druid_page_edge_set_title_color (druid_page_edge, color) GnomeDruidPageEdge *druid_page_edge GdkColor *color ## void gnome_druid_page_edge_set_text_color (GnomeDruidPageEdge *druid_page_edge, GdkColor *color) void gnome_druid_page_edge_set_text_color (druid_page_edge, color) GnomeDruidPageEdge *druid_page_edge GdkColor *color ## void gnome_druid_page_edge_set_text (GnomeDruidPageEdge *druid_page_edge, const gchar *text) void gnome_druid_page_edge_set_text (druid_page_edge, text) GnomeDruidPageEdge *druid_page_edge const gchar *text ## void gnome_druid_page_edge_set_title (GnomeDruidPageEdge *druid_page_edge, const gchar *title) void gnome_druid_page_edge_set_title (druid_page_edge, title) GnomeDruidPageEdge *druid_page_edge const gchar *title void gnome_druid_page_edge_set_logo (druid_page_edge, logo_image) GnomeDruidPageEdge *druid_page_edge GdkPixbuf_ornull *logo_image void gnome_druid_page_edge_set_watermark (druid_page_edge, watermark) GnomeDruidPageEdge *druid_page_edge GdkPixbuf_ornull *watermark void gnome_druid_page_edge_set_top_watermark (druid_page_edge, top_watermark_image) GnomeDruidPageEdge *druid_page_edge GdkPixbuf_ornull *top_watermark_image Gnome2-1.046/xs/GnomeDruid.xs0000644000175000017500000000633112542061635014333 0ustar lacklack/* * Copyright (C) 2003 by the gtk2-perl team (see the file AUTHORS) * * This library is free software; you can redistribute it and/or * modify it under the terms of the GNU Lesser General Public * License as published by the Free Software Foundation; either * version 2.1 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 LICENSE file in the top level of this distribution * for the complete license terms. * */ #include "gnome2perl.h" MODULE = Gnome2::Druid PACKAGE = Gnome2::Druid PREFIX = gnome_druid_ GtkWidget * help (druid) GnomeDruid * druid ALIAS: Gnome2::Druid::back = 1 Gnome2::Druid::next = 2 Gnome2::Druid::cancel = 3 Gnome2::Druid::finish = 4 CODE: switch (ix) { case 0: RETVAL = druid->help; break; case 1: RETVAL = druid->back; break; case 2: RETVAL = druid->next; break; case 3: RETVAL = druid->cancel; break; case 4: RETVAL = druid->finish; break; default: RETVAL = NULL; } OUTPUT: RETVAL GtkWidget * gnome_druid_new (class) C_ARGS: /* void */ ## void gnome_druid_set_buttons_sensitive (GnomeDruid *druid, gboolean back_sensitive, gboolean next_sensitive, gboolean cancel_sensitive, gboolean help_sensitive) void gnome_druid_set_buttons_sensitive (druid, back_sensitive, next_sensitive, cancel_sensitive, help_sensitive) GnomeDruid *druid gboolean back_sensitive gboolean next_sensitive gboolean cancel_sensitive gboolean help_sensitive ## void gnome_druid_set_show_finish (GnomeDruid *druid, gboolean show_finish) void gnome_druid_set_show_finish (druid, show_finish) GnomeDruid *druid gboolean show_finish ## void gnome_druid_set_show_help (GnomeDruid *druid, gboolean show_help) void gnome_druid_set_show_help (druid, show_help) GnomeDruid *druid gboolean show_help ## void gnome_druid_prepend_page (GnomeDruid *druid, GnomeDruidPage *page) void gnome_druid_prepend_page (druid, page) GnomeDruid *druid GnomeDruidPage *page ## void gnome_druid_insert_page (GnomeDruid *druid, GnomeDruidPage *back_page, GnomeDruidPage *page) void gnome_druid_insert_page (druid, back_page, page) GnomeDruid *druid GnomeDruidPage_ornull *back_page GnomeDruidPage *page ## void gnome_druid_append_page (GnomeDruid *druid, GnomeDruidPage *page) void gnome_druid_append_page (druid, page) GnomeDruid *druid GnomeDruidPage *page ## void gnome_druid_set_page (GnomeDruid *druid, GnomeDruidPage *page) void gnome_druid_set_page (druid, page) GnomeDruid *druid GnomeDruidPage *page =for apidoc Returns a GnomeDruid and a GtkWindow. =cut ## GtkWidget * gnome_druid_new_with_window (const char *title, GtkWindow *parent, gboolean close_on_cancel, GtkWidget **window); void gnome_druid_new_with_window (class, title, parent, close_on_cancel) const char * title GtkWindow_ornull * parent gboolean close_on_cancel PREINIT: GtkWidget * window; GtkWidget * druid; PPCODE: druid = gnome_druid_new_with_window (title, parent, close_on_cancel, &window); XPUSHs (sv_2mortal (newSVGnomeDruid (druid))); XPUSHs (sv_2mortal (newSVGtkWindow (window))); Gnome2-1.046/xs/GnomeAbout.xs0000644000175000017500000000543412542061635014341 0ustar lacklack/* * Copyright (C) 2003, 2013 by the gtk2-perl team (see the file AUTHORS) * * This library is free software; you can redistribute it and/or * modify it under the terms of the GNU Lesser General Public * License as published by the Free Software Foundation; either * version 2.1 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 LICENSE file in the top level of this distribution * for the complete license terms. * */ #include "gnome2perl.h" MODULE = Gnome2::About PACKAGE = Gnome2::About PREFIX = gnome_about_ =for apidoc =for arg authors - either a reference to an array of strings or a plain string =for arg documenters - either a reference to an array of strings or a plain string =cut GtkWidget * gnome_about_new (class, name, version, copyright, comments, authors, documenters=NULL, translator_credits=NULL, logo_pixbuf=NULL) const gchar * name const gchar * version const gchar * copyright const gchar * comments SV * authors SV * documenters const gchar * translator_credits GdkPixbuf_ornull * logo_pixbuf PREINIT: const gchar ** a = NULL; const gchar ** d = NULL; CODE: /* pull authors and documentors out of the SVs, which may be * either plain strings or refs to arrays of strings */ if (authors && SvOK(authors)) { if (SvRV(authors) && (SvTYPE(SvRV(authors)) == SVt_PVAV)) { AV * av = (AV*)SvRV(authors); int i; a = g_new0 (const gchar*, av_len(av)+2); for(i=0;i<=av_len(av);i++) { a[i] = SvPV_nolen(*av_fetch(av, i, 0)); } a[i] = NULL; } else { a = (const gchar**)malloc(sizeof(const gchar*) * 2); a[0] = SvPV_nolen(authors); a[1] = NULL; } } else { /* the C version of gnome_about_new does not allow authors * to be NULL, and will abort, returning no widget, if * you do pass NULL. rather than let that slide, let's * croak. author credits are important, you know! */ croak ("authors may not be undef, specify either a string or reference to an array of strings"); } if (documenters && SvOK(documenters)) { if (SvRV(documenters) && (SvTYPE(SvRV(documenters)) == SVt_PVAV)) { AV * av = (AV*)SvRV(documenters); int i; d = g_new (const gchar*, av_len(av)+2); for(i=0;i<=av_len(av);i++) { d[i] = SvPV_nolen(*av_fetch(av, i, 0)); } d[i] = NULL; } else { d = (const gchar**)malloc(sizeof(const gchar*) * 2); d[0] = SvPV_nolen(documenters); d[1] = NULL; } } RETVAL = gnome_about_new (name, version, copyright, comments, a, d, translator_credits, logo_pixbuf); g_free (a); g_free (d); OUTPUT: RETVAL Gnome2-1.046/xs/GnomeGConf.xs0000644000175000017500000000226112542061635014256 0ustar lacklack/* * Copyright (C) 2003 by the gtk2-perl team (see the file AUTHORS) * * This library is free software; you can redistribute it and/or * modify it under the terms of the GNU Lesser General Public * License as published by the Free Software Foundation; either * version 2.1 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 LICENSE file in the top level of this distribution * for the complete license terms. * */ #include "gnome2perl.h" MODULE = Gnome2::GConf PACKAGE = Gnome2::GConf PREFIX = gnome_gconf_ =for object Gnome2::main =cut ## gchar *gnome_gconf_get_gnome_libs_settings_relative (const gchar *subkey) gchar_own * gnome_gconf_get_gnome_libs_settings_relative (class, subkey) const gchar *subkey C_ARGS: subkey ## gchar *gnome_gconf_get_app_settings_relative (GnomeProgram *program, const gchar *subkey) gchar_own * gnome_gconf_get_app_settings_relative (class, program, subkey) GnomeProgram *program const gchar *subkey C_ARGS: program, subkey Gnome2-1.046/xs/GnomeIconTheme.xs0000644000175000017500000001713212542061635015140 0ustar lacklack/* * Copyright (C) 2003, 2013 by the gtk2-perl team (see the file AUTHORS) * * This library is free software; you can redistribute it and/or * modify it under the terms of the GNU Lesser General Public * License as published by the Free Software Foundation; either * version 2.1 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 LICENSE file in the top level of this distribution * for the complete license terms. * */ #include "gnome2perl.h" /* gnome-icon-theme.h was deprecated in 2003. */ #undef GNOME_DISABLE_DEPRECATED #ifdef GNOME_TYPE_ICON_THEME static SV * newSVGnomeIconData (const GnomeIconData * data) { HV * hv = newHV (); if (data) { AV * av = newAV (); int i; for (i = 0; i < data->n_attach_points; i++) { AV * av_points = newAV (); GnomeIconDataPoint point = (data->attach_points)[i]; av_store (av_points, 0, newSViv (point.x)); av_store (av_points, 1, newSViv (point.y)); av_store (av, i, newRV_noinc ((SV*) av_points)); } hv_store (hv, "has_embedded_rect", 17, newSVuv (data->has_embedded_rect), 0); hv_store (hv, "x0", 2, newSViv (data->x0), 0); hv_store (hv, "y0", 2, newSViv (data->y0), 0); hv_store (hv, "x1", 2, newSViv (data->x1), 0); hv_store (hv, "y1", 2, newSViv (data->y1), 0); hv_store (hv, "attach_points", 13, newRV_noinc ((SV*) av), 0); if (data->display_name) hv_store (hv, "display_name", 12, newSVpv (data->display_name, 0), 0); } return newRV_noinc ((SV *) hv); } #if 0 /* not used at the moment */ static GnomeIconData * SvGnomeIconData (SV * sv) { HV * hv = (HV*) SvRV (sv); SV ** value; GnomeIconData * data = gperl_alloc_temp (sizeof (GnomeIconData)); SV ** points = hv_fetch (hv, "attach_points", 13, FALSE); int i; AV * av = (AV*) SvRV (*points); if (! (sv && SvOK (sv) && SvROK (sv) && SvTYPE (SvRV (sv)) == SVt_PVHV)) croak ("malformed icon data; use a reference to a hash as icon data"); /* ----------------------------------------------------------------- */ value = hv_fetch (hv, "has_embedded_rect", 17, FALSE); if (value) data->has_embedded_rect = SvUV (*value); value = hv_fetch (hv, "x0", 2, FALSE); if (value) data->x0 = SvIV (*value); value = hv_fetch (hv, "y0", 2, FALSE); if (value) data->y0 = SvIV (*value); value = hv_fetch (hv, "x1", 2, FALSE); if (value) data->x1 = SvIV (*value); value = hv_fetch (hv, "y1", 2, FALSE); if (value) data->y1 = SvIV (*value); value = hv_fetch (hv, "display_name", 12, FALSE); if (value) data->display_name = SvPV_nolen (*value); /* ----------------------------------------------------------------- */ if (! (*points && SvOK (*points) && SvROK (*points) && SvTYPE (SvRV (*points)) == SVt_PVAV)) croak ("malformed points data; use a reference to an array as points data"); data->attach_points = gperl_alloc_temp (av_len (av) * sizeof (GnomeIconDataPoint)); for (i = 0; i <= av_len (av); i++) { SV ** point = av_fetch (av, i, FALSE); AV * av_point = (AV*) SvRV (*point); GnomeIconDataPoint point_data; if (! (*point && SvOK (*point) && SvROK (*point) && SvTYPE (SvRV (*point)) == SVt_PVAV)) croak ("malformed point data; use a reference to an array as point data"); if (av_len (av) != 1) croak ("malformed point data; point data must have two elements"); point = av_fetch (av_point, 0, FALSE); if (point) point_data.x = SvIV (*point); point = av_fetch (av_point, 1, FALSE); if (point) point_data.y = SvIV (*point); (data->attach_points)[i] = point_data; } /* ----------------------------------------------------------------- */ return data; } #endif #endif /* GNOME_TYPE_ICON_THEME */ MODULE = Gnome2::IconTheme PACKAGE = Gnome2::IconTheme PREFIX = gnome_icon_theme_ BOOT: /* pass -Werror even if there are no xsubs at all */ #ifndef GNOME_TYPE_ICON_THEME PERL_UNUSED_VAR (file); #endif #ifdef GNOME_TYPE_ICON_THEME ## GnomeIconTheme *gnome_icon_theme_new (void) GnomeIconTheme * gnome_icon_theme_new (class) C_ARGS: /* void */ =for apidoc =for arg ... of paths =cut ## void gnome_icon_theme_set_search_path (GnomeIconTheme *theme, const char *path[], int n_elements) void gnome_icon_theme_set_search_path (theme, ...) GnomeIconTheme *theme PREINIT: int i; const char **path = NULL; CODE: path = g_new0 (const char*, items - 1); for (i = 1; i < items; i++) path[i - 1] = SvPV_nolen (ST (i)); gnome_icon_theme_set_search_path (theme, path, i - 1); =for apidoc Returns a list of paths. =cut ## void gnome_icon_theme_get_search_path (GnomeIconTheme *theme, char **path[], int *n_elements) void gnome_icon_theme_get_search_path (theme) GnomeIconTheme *theme PREINIT: char **path; int n_elements, i; PPCODE: gnome_icon_theme_get_search_path (theme, &path, &n_elements); if (path) { EXTEND (sp, n_elements); for (i = 0; i < n_elements; i++) PUSHs (sv_2mortal (newSVpv (path[i], 0))); } else XSRETURN_EMPTY; ## void gnome_icon_theme_set_allow_svg (GnomeIconTheme *theme, gboolean allow_svg) void gnome_icon_theme_set_allow_svg (theme, allow_svg) GnomeIconTheme *theme gboolean allow_svg ## gboolean gnome_icon_theme_get_allow_svg (GnomeIconTheme *theme) gboolean gnome_icon_theme_get_allow_svg (theme) GnomeIconTheme *theme ## void gnome_icon_theme_append_search_path (GnomeIconTheme *theme, const char *path) void gnome_icon_theme_append_search_path (theme, path) GnomeIconTheme *theme const char *path ## void gnome_icon_theme_prepend_search_path (GnomeIconTheme *theme, const char *path) void gnome_icon_theme_prepend_search_path (theme, path) GnomeIconTheme *theme const char *path ## void gnome_icon_theme_set_custom_theme (GnomeIconTheme *theme, const char *theme_name) void gnome_icon_theme_set_custom_theme (theme, theme_name) GnomeIconTheme *theme const char *theme_name =for apidoc Returns the filename, the icon data and the base size. =cut # FIXME: it seems like icon_data never gets filled. ## char * gnome_icon_theme_lookup_icon (GnomeIconTheme *theme, const char *icon_name, int size, const GnomeIconData **icon_data, int *base_size) void gnome_icon_theme_lookup_icon (theme, icon_name, size) GnomeIconTheme *theme const char *icon_name int size PREINIT: char *filename; const GnomeIconData *icon_data; int base_size; PPCODE: filename = gnome_icon_theme_lookup_icon (theme, icon_name, size, &icon_data, &base_size); if (!filename) XSRETURN_EMPTY; EXTEND (sp, 3); PUSHs (sv_2mortal (newSVpv (filename, 0))); PUSHs (sv_2mortal (newSVGnomeIconData (icon_data))); PUSHs (sv_2mortal (newSViv (base_size))); g_free (filename); ## gboolean gnome_icon_theme_has_icon (GnomeIconTheme *theme, const char *icon_name) gboolean gnome_icon_theme_has_icon (theme, icon_name) GnomeIconTheme *theme const char *icon_name =for apidoc Returns a list of icons. =cut ## GList * gnome_icon_theme_list_icons (GnomeIconTheme *theme, const char *context) void gnome_icon_theme_list_icons (theme, context=NULL) GnomeIconTheme *theme const char *context PREINIT: GList *i, *results = NULL; PPCODE: results = gnome_icon_theme_list_icons (theme, context); for (i = results; i != NULL; i = i->next) { XPUSHs (sv_2mortal (newSVpv (i->data, 0))); g_free (i->data); } g_list_free (results); ## char * gnome_icon_theme_get_example_icon_name (GnomeIconTheme *theme) char * gnome_icon_theme_get_example_icon_name (theme) GnomeIconTheme *theme ## gboolean gnome_icon_theme_rescan_if_needed (GnomeIconTheme *theme) gboolean gnome_icon_theme_rescan_if_needed (theme) GnomeIconTheme *theme #endif Gnome2-1.046/NEWS0000644000175000017500000000773412542061635011777 0ustar lacklackOverview of changes in Gnome2 1.045 =================================== * Bugzilla #710417; Fix typo: correspoding -> corresponding Overview of changes in Gnome2 1.044 =================================== * RT#89191: Fix FSF's address * RT#89188: Make enums.pod depend on Gnome2 directory creation Overview of changes in Gnome2 1.043 =================================== * Avoid misusing the macro PL_na, thus preventing issues when Gnome2 is used in conjunction with certain XS modules, among them XML::Parser and String::Approx. * Created %meta_merge, which is used to pass META_MERGE values to EU::MM and CPAN::Meta; these populate META.[yml|json] and MYMETA.[yml|json] Overview of changes in Gnome2 1.042 =================================== * Support the sm-connect property in Gnome2::Program::init. Overview of changes in Gnome2 1.041 =================================== * Fix a test failure. * Fix a POD error. Overview of changes in Gnome2 1.040 =================================== Since 1.02x (the previous stable series) ---------------------------------------- * Fix some test suite issues. Since 1.030 ----------- * Nada. Overview of changes in Gnome2 1.030 =================================== * Fix some test issues. Overview of changes in Gnome2 1.023 =================================== * Fix yet another test suite issue. Overview of changes in Gnome2 1.022 =================================== * Fix some test suite issues. Overview of changes in Gnome2 1.021 =================================== * Update some build infrastructure. * "Fix" a test failure. Overview of changes in Gnome2 1.020 =================================== Since 1.001 (the previous stable series) ---------------------------------------- * Many internal changes and fixes to the test suite. * Possibility to use construct-only properties with Gnome2::Program::init. * A Gnome2::enums page that lists all enums and their values. * API additions: - Some new things in GnomePasswordDialog. - Gnome2::AuthenticationManager::dialog_is_visible. - Gnome2::IconList::select_all. Since 1.014 ----------- * Nada. Overview of changes in Gnome2 1.014 =================================== * Bind and test gnome_authentication_manager_dialog_is_visible. * Generate a Gnome2::enums man page with all enum and flag values. [Kevin C. Krinke] Overview of changes in Gnome2 1.013 =================================== * Make construct-only properties work when using Gnome2::Program::init. Overview of changes in Gnome2 1.012 =================================== * Fix man small glitches in the test suite; add a new test for GnomeSound. * Bind and test new API in GnomePasswordDialog. Overview of changes in Gnome2 1.011 =================================== * Bind and test Gnome2::IconList::select_all. * Test Gnome2::DruidPageStandard::set_contents_background. Overview of changes in Gnome2 1.010 =================================== * Rearrange many private functions and make them static. Overview of changes in Gnome2 1.001 =================================== * Fix some building and testing issues. * Fix a bug in Gnome2::IconTheme. * Make Gnome2.pm use() Gnome2::Canvas so that Gnome2::IconList works. Overview of changes in Gnome2 1.00 ================================== * Depend on Glib 1.04, Gnome2::Canvas 1.00, and Gnome2::VFS 1.00. Overview of changes in Gnome2 0.94 ================================== * Document which functions may croak on error. Overview of changes in Gnome2 0.93 ================================== * Changed the binding of gnome_popup_menu_append from Gtk2::Menu::append to Gtk2::Menu::append_from. This is API breakage. Any existing application using Gtk2::Menu::append and expecting to get gnome_popup_menu_append needs to be changed. * Added new GnomePasswordDialog methods. * Switched to the new version information policy introduced by Glib and Gtk2. * Made minor bug fixes and improvements. * In accordance with the GNOME Bindings release plan, Gnome2 froze API. Gnome2-1.046/README0000644000175000017500000000373112542061635012151 0ustar lacklack Gnome2 -------- The Gnome2 module allows a perl developer to use the Gnome libraries. Find out more about Gnome+ at http://www.gnome.org. 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 Installation -------------- To install this module type the following: perl Makefile.PL make make test make install To avoid installing to a system directory, since this is a beta release, you can change the installation prefix at Makefile.PL time with perl Makefile.PL PREFIX=/some/other/place This will install the module to the subdirectory lib/perl5 under the given prefix. If this is not already in perl's include path, you'll need to tell perl how to get to this library directory so you can use it; there are three ways: in your environment (the easiest): PERL5LIB=/some/other/place/lib/perl5/site_perl:$PERL5LIB on the perl command line: perl -I /some/other/place/lib/perl5/site_perl yourscript in the code of your perl script: use lib '/some/other/place/lib/perl5/site_perl'; Dependencies -------------- This module requires these other modules and libraries: perl >= 5.8.0 Glib >= 1.04 (perl module and requisite C libraries) Gtk2 >= 1.00 (perl module and requisite C libraries) Gnome2::Canvas >= 1.00 (perl module and requisite C libraries) Gnome2::VFS >= 1.00 (perl module and requisite C libraries) libgnomeui > 2.x (C library) and dependencies libbonoboui > 2.x (C library) and dependencies To build this module from source, you'll also need: ExtUtils::Depends >= 0.20 ExtUtils::PkgConfig >= 1.03 Copyright ----------- Copyright (C) 2003-2006 by the gtk2-perl team (see the file AUTHORS) Gnome2-1.046/maps0000644000175000017500000000726112542061635012156 0ustar lacklackBONOBO_TYPE_DOCK BonoboDock GtkObject Gnome2::Bonobo::Dock BONOBO_TYPE_DOCK_BAND BonoboDockBand GtkObject Gnome2::Bonobo::DockBand BONOBO_TYPE_DOCK_ITEM BonoboDockItem GtkObject Gnome2::Bonobo::DockItem BONOBO_TYPE_DOCK_ITEM_BEHAVIOR BonoboDockItemBehavior GFlags Gnome2::Bonobo::DockItemBehavior BONOBO_TYPE_DOCK_LAYOUT BonoboDockLayout GObject Gnome2::Bonobo::DockLayout BONOBO_TYPE_DOCK_PLACEMENT BonoboDockPlacement GEnum Gnome2::Bonobo::DockPlacement GNOME_TYPE_ABOUT GnomeAbout GtkObject Gnome2::About GNOME_TYPE_APP GnomeApp GtkObject Gnome2::App GNOME_TYPE_APPBAR GnomeAppBar GtkObject Gnome2::AppBar GNOME_TYPE_CLIENT GnomeClient GtkObject Gnome2::Client GNOME_TYPE_CLIENT_FLAGS GnomeClientFlags GFlags Gnome2::ClientFlags GNOME_TYPE_CLIENT_STATE GnomeClientState GEnum Gnome2::ClientState GNOME_TYPE_COLOR_PICKER GnomeColorPicker GtkObject Gnome2::ColorPicker GNOME_TYPE_DATE_EDIT GnomeDateEdit GtkObject Gnome2::DateEdit GNOME_TYPE_DATE_EDIT_FLAGS GnomeDateEditFlags GFlags Gnome2::DateEditFlags GNOME_TYPE_DIALOG_TYPE GnomeDialogType GEnum Gnome2::DialogType GNOME_TYPE_DRUID GnomeDruid GtkObject Gnome2::Druid GNOME_TYPE_DRUID_PAGE GnomeDruidPage GtkObject Gnome2::DruidPage GNOME_TYPE_DRUID_PAGE_EDGE GnomeDruidPageEdge GtkObject Gnome2::DruidPageEdge GNOME_TYPE_DRUID_PAGE_STANDARD GnomeDruidPageStandard GtkObject Gnome2::DruidPageStandard GNOME_TYPE_EDGE_POSITION GnomeEdgePosition GEnum Gnome2::EdgePosition GNOME_TYPE_ENTRY GnomeEntry GtkObject Gnome2::Entry GNOME_TYPE_FILE_DOMAIN GnomeFileDomain GEnum Gnome2::FileDomain GNOME_TYPE_FILE_ENTRY GnomeFileEntry GtkObject Gnome2::FileEntry GNOME_TYPE_FONT_PICKER GnomeFontPicker GtkObject Gnome2::FontPicker GNOME_TYPE_FONT_PICKER_MODE GnomeFontPickerMode GEnum Gnome2::FontPickerMode GNOME_TYPE_HELP_ERROR GnomeHelpError GEnum Gnome2::HelpError GNOME_TYPE_HREF GnomeHRef GtkObject Gnome2::HRef GNOME_TYPE_ICON_ENTRY GnomeIconEntry GtkObject Gnome2::IconEntry GNOME_TYPE_ICON_LIST GnomeIconList GtkObject Gnome2::IconList GNOME_TYPE_ICON_LIST_MODE GnomeIconListMode GEnum Gnome2::IconListMode GNOME_TYPE_ICON_LOOKUP_FLAGS GnomeIconLookupFlags GFlags Gnome2::IconLookupFlags GNOME_TYPE_ICON_LOOKUP_RESULT_FLAGS GnomeIconLookupResultFlags GFlags Gnome2::IconLookupResultFlags GNOME_TYPE_ICON_SELECTION GnomeIconSelection GtkObject Gnome2::IconSelection GNOME_TYPE_ICON_TEXT_ITEM GnomeIconTextItem GtkObject Gnome2::IconTextItem GNOME_TYPE_ICON_THEME GnomeIconTheme GObject Gnome2::IconTheme GNOME_TYPE_INTERACT_STYLE GnomeInteractStyle GEnum Gnome2::InteractStyle GNOME_TYPE_MDI_MODE GnomeMDIMode GEnum Gnome2::MDIMode GNOME_TYPE_MODULE_INFO GnomeModuleInfo GBoxed Gnome2::ModuleInfo GNOME_TYPE_PASSWORD_DIALOG GnomePasswordDialog GtkObject Gnome2::PasswordDialog GNOME_TYPE_PASSWORD_DIALOG_REMEMBER GnomePasswordDialogRemember GEnum Gnome2::PasswordDialogRemember GNOME_TYPE_PIXMAP_ENTRY GnomePixmapEntry GtkObject Gnome2::PixmapEntry GNOME_TYPE_PREFERENCES_TYPE GnomePreferencesType GEnum Gnome2::PreferencesType GNOME_TYPE_PROGRAM GnomeProgram GObject Gnome2::Program GNOME_TYPE_RESTART_STYLE GnomeRestartStyle GEnum Gnome2::RestartStyle GNOME_TYPE_SAVE_STYLE GnomeSaveStyle GEnum Gnome2::SaveStyle GNOME_TYPE_SCORES GnomeScores GtkObject Gnome2::Scores GNOME_TYPE_THUMBNAIL_FACTORY GnomeThumbnailFactory GObject Gnome2::ThumbnailFactory GNOME_TYPE_THUMBNAIL_SIZE GnomeThumbnailSize GEnum Gnome2::ThumbnailSize GNOME_TYPE_TRIGGER_TYPE GnomeTriggerType GEnum Gnome2::TriggerType GNOME_TYPE_UI_INFO_CONFIGURABLE_TYPES GnomeUIInfoConfigurableTypes GEnum Gnome2::UIInfoConfigurableTypes GNOME_TYPE_UI_INFO_TYPE GnomeUIInfoType GEnum Gnome2::UIInfoType GNOME_TYPE_UI_PIXMAP_TYPE GnomeUIPixmapType GEnum Gnome2::UIPixmapType GNOME_TYPE_URL_ERROR GnomeURLError GEnum Gnome2::URLError Gnome2-1.046/podifyenums.pl0000644000175000017500000000245112542061635014166 0ustar lacklackuse warnings; use Glib::GenPod; my $NAME = shift @ARGV; print "=head1 NAME $NAME\::enums - enumeration and flag values for $NAME =head1 DESCRIPTION Just a listing of all enum and flags types defined for $NAME, in one place for convenience. For more information, see the description of flags and enums in L. =head1 LISTING "; while (<>) { s/#.*//; (undef, $cname, $base, undef) = split; next unless $cname; next unless $base eq 'GFlags' or $base eq 'GEnum'; eval { # do the name to package conversion first, in case we have # hijacked enum registrations with names that aren't the same # as the C type names. (i've pulled that trick in a couple # of places, can't remember exactly where, so play it safe.) my $name = Glib::GenPod::convert_type ($cname); my @values = Glib::Type->list_values ($name); next unless @values; my $type = UNIVERSAL::isa ($name, 'Glib::Flags') ? 'flags' : 'enum'; print "=head2 $type $name\n\n" . "=over\n\n" . join ("\n\n", map { "=item * '$_->{nick}' / '$_->{name}'" } @values) . "\n\n=back\n\n"; } or print STDERR $@; } print " =head1 SEE ALSO L, L, L =head1 AUTHOR Generated by $0, using Gnome2-Perl version ". $Gnome2::VERSION .". =cut "; Gnome2-1.046/META.json0000644000175000017500000000400112542062376012704 0ustar lacklack{ "abstract" : "Perl interface to the 2.x series of the GNOME libraries", "author" : [ "Gnome2 Perl Team " ], "dynamic_config" : 1, "generated_by" : "ExtUtils::MakeMaker version 7.04, CPAN::Meta::Converter version 2.140640", "license" : [ "lgpl_2_1" ], "meta-spec" : { "url" : "http://search.cpan.org/perldoc?CPAN::Meta::Spec", "version" : "2" }, "name" : "Gnome2", "no_index" : { "directory" : [ "t", "inc" ], "file" : [ "inc/MakeHelper.pm" ] }, "prereqs" : { "build" : { "requires" : { "ExtUtils::MakeMaker" : "0" } }, "configure" : { "requires" : { "ExtUtils::Depends" : "0.20", "ExtUtils::MakeMaker" : "0", "ExtUtils::PkgConfig" : "1.03", "Glib" : "1.04", "Gnome2::Canvas" : "1.00", "Gnome2::VFS" : "1.00", "Gtk2" : "1.00" } }, "runtime" : { "requires" : { "ExtUtils::Depends" : "0.20", "ExtUtils::PkgConfig" : "1.03", "Glib" : "1.04", "Gnome2::Canvas" : "1.00", "Gnome2::VFS" : "1.00", "Gtk2" : "1.00" } }, "test" : { "recommends" : { "Test::Number::Delta" : "1" } } }, "release_status" : "stable", "resources" : { "bugtracker" : { "mailto" : "bug-Gnome2 [at] rt.cpan.org", "web" : "http://rt.cpan.org/Public/Dist/Display.html?Name=Gnome2" }, "homepage" : "http://gtk2-perl.sourceforge.net", "license" : [ "http://www.gnu.org/licenses/lgpl-2.1.html" ], "repository" : { "type" : "git", "url" : "git://git.gnome.org/perl-Gnome2", "web" : "http://git.gnome.org/browse/perl-Gnome2" }, "x_MailingList" : "https://mail.gnome.org/mailman/listinfo/gtk-perl-list" }, "version" : "1.046" } Gnome2-1.046/t/0000755000175000017500000000000012542062376011533 5ustar lacklackGnome2-1.046/t/GnomeIconSelection.t0000644000175000017500000000162412542061635015444 0ustar lacklack#!/usr/bin/perl -w use strict; use Gnome2; use constant TESTS => 3; use Test::More tests => TESTS; # $Id$ ############################################################################### SKIP: { our $application; do "t/TestBoilerplate"; ############################################################################# my $selection = Gnome2::IconSelection -> new(); isa_ok($selection, "Gnome2::IconSelection"); isa_ok($selection -> get_gil(), "Gnome2::IconList"); isa_ok($selection -> get_box(), "Gtk2::VBox"); my $window = Gtk2::Window -> new(); $window -> add($selection); $selection -> realize(); $selection -> clear(1); $selection -> add_defaults(); $selection -> add_directory("/usr/share/pixmaps"); $selection -> stop_loading(); $selection -> show_icons(); $selection -> select_icon("yes.xpm"); $selection -> get_icon(1); # FIXME: the return value should be checked. } Gnome2-1.046/t/GnomePixmapEntry.t0000644000175000017500000000126212542061635015164 0ustar lacklack#!/usr/bin/perl -w use strict; use Gnome2; use constant TESTS => 3; use Test::More tests => TESTS; # $Id$ ############################################################################### SKIP: { our $application; do "t/TestBoilerplate"; ############################################################################# my $entry = Gnome2::PixmapEntry -> new("schmih", "Schmah", 1); isa_ok($entry, "Gnome2::PixmapEntry"); isa_ok($entry -> scrolled_window(), "Gtk2::ScrolledWindow"); isa_ok($entry -> preview_widget(), "Gtk2::Widget"); $entry -> set_pixmap_subdir("nautilus"); $entry -> set_preview(1); $entry -> set_preview_size(23, 42); $entry -> get_filename(); } Gnome2-1.046/t/GnomePasswordDialog.t0000644000175000017500000000304112542061635015623 0ustar lacklack#!/usr/bin/perl -w use strict; use Gnome2; use constant TESTS => 7; use Test::More tests => TESTS; # $Id$ ############################################################################### SKIP: { do "t/TestBoilerplate"; skip("GnomePasswordDialog and GnomeAuthenticationManager didn't appear until 2.4.0", TESTS) unless (Gnome2 -> CHECK_VERSION(2, 4, 0)); Gnome2::AuthenticationManager -> init(); SKIP: { skip("dialog_is_visible is new in 2.8", 1) unless (Gnome2 -> CHECK_VERSION(2, 8, 0)); ok(!Gnome2::AuthenticationManager -> dialog_is_visible()); } my $dialog = Gnome2::PasswordDialog -> new("Bla", "Bla!", "bla", "alb", 1); isa_ok($dialog, "Gnome2::PasswordDialog"); $dialog -> set_username("urgs"); is($dialog -> get_username(), "urgs"); $dialog -> set_password("urgs"); is($dialog -> get_password(), "urgs"); $dialog -> set_readonly_username(1); SKIP: { skip("things new in 2.6.0", 2) unless (Gnome2 -> CHECK_VERSION(2, 6, 0)); $dialog -> set_show_username(1); $dialog -> set_show_domain(1); $dialog -> set_show_password(1); $dialog -> set_show_remember(1); $dialog -> set_readonly_domain(1); $dialog -> set_remember("nothing"); is($dialog -> get_remember(), "nothing"); $dialog -> set_domain("urgs"); is($dialog -> get_domain(), "urgs"); } SKIP: { skip("things new in 2.8.0", 1) unless (Gnome2 -> CHECK_VERSION(2, 8, 0)); $dialog -> set_show_userpass_buttons(1); ok(!$dialog -> anon_selected()); } # $dialog -> run_and_block(); } Gnome2-1.046/t/GnomeIconTheme.t0000644000175000017500000000356012542061635014562 0ustar lacklack#!/usr/bin/perl -w use strict; use Gnome2; use constant TESTS => 10; use Test::More tests => TESTS; Gnome2::VFS -> init(); # $Id$ ############################################################################### SKIP: { our $application; do "t/TestBoilerplate"; skip("GnomeIconTheme is new in 2.0.6", TESTS) unless (Gnome2 -> CHECK_VERSION(2, 0, 6)); ############################################################################# my $theme = Gnome2::IconTheme -> new(); isa_ok($theme, "Gnome2::IconTheme"); # FIXME: $theme -> get_example_icon_name(); my @icon = $theme -> lookup_sync(undef, "/usr/bin/perl", undef, "none"); ok(scalar(@icon) == 2 and defined($icon[0])); my ($result, $info) = Gnome2::VFS -> get_file_info("/usr/bin/perl", "get-mime-type"); @icon = $theme -> lookup(undef, "/usr/bin/perl", undef, $info, "application/x-executable-binary", "none"); ok(scalar(@icon) == 2 and defined($icon[0])); ok($theme -> list_icons()); is($theme -> has_icon("gnome-unknown"), 1); my ($file, $icon_data, $size) = $theme -> lookup_icon("gnome-fs-directory", 48); SKIP: { skip "lookup_icon aftermath", 3 unless defined $file; ok(-e $file); isa_ok($icon_data, "HASH"); like($size, qr/^\d+$/); } $theme -> set_allow_svg(1); is($theme -> get_allow_svg(), 1); $theme -> rescan_if_needed(); $theme -> set_search_path("/usr/share/icons"); # FIXME: these seem to do nothing. $theme -> append_search_path("/usr/share/pixmaps"); $theme -> prepend_search_path("/usr/share/images"); ok(defined($theme -> get_search_path())); $theme -> set_custom_theme("Crux"); } ############################################################################### Gnome2::VFS -> shutdown(); Gnome2-1.046/t/GnomeProgram.t0000644000175000017500000000426312542061635014317 0ustar lacklack#!/usr/bin/perl -w use strict; use Glib qw(:constants); use Gnome2; use constant TESTS => 9; use Test::More tests => TESTS; # $Id$ ############################################################################### SKIP: { skip("You don't appear to have the GNOME session manager running.", TESTS) unless (-d "$ENV{ HOME }/.gconfd" && -d "$ENV{ HOME }/.gnome2"); skip("Couldn't initialize Gtk2", TESTS) unless (Gtk2 -> init_check()); skip("Couldn't connect to the session manager.", TESTS) unless (Gnome2::Client -> new() -> connected()); ############################################################################# Gnome2::Program -> module_register("libgnome"); ok(Gnome2::Program -> module_registered("libgnome")); # FIXME # isa_ok(Gnome2::Program -> module_load("/usr/lib/libgnome-2.so"), # "Gnome2::ModuleInfo"); @ARGV = qw(--name bla --class blub --urgs); my $application; if (Gnome2 -> CHECK_VERSION (2, 8, 0)) { $application = Gnome2::Program -> init("Test", "0.1", "libgnomeui", app_prefix => "/gtk2perl", app_sysconfdir => "/gtk2perl/etc", human_readable_name => "Test", sm_connect => FALSE); } else { $application = Gnome2::Program -> init("Test", "0.1", "libgnomeui", app_prefix => "/gtk2perl", app_sysconfdir => "/gtk2perl/etc"); } is_deeply([$application -> get(qw(app_prefix app_sysconfdir))], [qw(/gtk2perl /gtk2perl/etc)]); is_deeply(\@ARGV, [qw(--name bla --class blub --urgs)]); isa_ok($application, "Gnome2::Program"); is($application -> get_program(), $application); is($application -> get_human_readable_name(), "Test"); is($application -> get_app_id(), "Test"); is($application -> get_app_version(), "0.1"); ok(-e $application -> locate_file("libdir", "libgnome-2.so", 1)); } Gnome2-1.046/t/GnomeFileEntry.t0000644000175000017500000000146112542061635014606 0ustar lacklack#!/usr/bin/perl -w use strict; use Gnome2; use constant TESTS => 6; use Test::More tests => TESTS; # $Id$ ############################################################################### SKIP: { our $application; do "t/TestBoilerplate"; ############################################################################# my $entry = Gnome2::FileEntry -> new("cookies", "Be Open!"); isa_ok($entry, "Gnome2::FileEntry"); isa_ok($entry -> gnome_entry(), "Gnome2::Entry"); isa_ok($entry -> gtk_entry(), "Gtk2::Entry"); $entry -> set_title("No Way!"); $entry -> set_default_path($ENV{ HOME }); $entry -> set_directory_entry(1); is($entry -> get_directory_entry(), 1); $entry -> set_filename("."); ok(-d $entry -> get_full_path(1)); $entry -> set_modal(1); is($entry -> get_modal(), 1); } Gnome2-1.046/t/GnomeClient0000644000175000017500000000534712542061635013670 0ustar lacklack#!/usr/bin/perl -w use strict; use Gnome2; use constant TESTS => 1; use Test::More tests => TESTS; # $Id$ ############################################################################### SKIP: { our $application; do "t/TestBoilerplate"; ############################################################################# my $client = Gnome2::Client -> master(); isa_ok($client, "Gnome2::Client"); $client -> connect(); ok($client -> connected()); is($client -> get_config_prefix(), "/Test/"); $client -> set_global_config_prefix("/_Test_/"); is($client -> get_global_config_prefix(), "/_Test_/"); is($client -> get_flags() -> [0], "is-connected"); $client -> set_restart_style("never"); $client -> set_priority(42); $client -> set_restart_command(qw(bla blub blob)); $client -> set_discard_command(qw(bla blub blob)); $client -> set_resign_command(qw(bla blub blob)); $client -> set_shutdown_command(qw(bla blub blob)); $client -> set_clone_command(qw(bla blub blob)); $client -> add_static_arg(qw(hmm mmh)); $client -> set_current_directory($ENV{ HOME }); $client -> set_environment(BLA => "blub"); $client -> flush(); SKIP: { skip("this only works if we're connected to the session manager", 3) unless ($client -> connected()); foreach ($client -> get_id(), $client -> get_previous_id(), $client -> get_desktop_id()) { # ok(defined($_)); ok(1); } } $client -> signal_connect(save_yourself => sub { my ($client, $phase, $save_style, $shutting_down, $interact_style, $fast) = @_; isa_ok($client, "Gnome2::Client"); like($phase, qr/^(?:1|2)$/); is($save_style, "both"); ok(not $shutting_down); is($interact_style, "errors"); ok($fast); $client -> save_any_dialog(Gtk2::Dialog -> new()); $client -> save_error_dialog(Gtk2::Dialog -> new()); # FIXME $client -> request_interaction("error", sub { my ($client, $key, $dialog_type); die "foobar"; isa_ok($client, "Gnome2::Client"); warn $key; is($dialog_type, "error"); Gnome2::Client -> interaction_key_return($key, 0); }); return 1; }); $client -> request_save("both", 0, "errors", 1, 0); # $client -> request_phase_2(); while (Gtk2 -> events_pending()) { Gtk2 -> main_iteration(); } ############################################################################# Glib::Idle -> add(sub { $client -> disconnect(); foreach (Gnome2::Client -> new(), Gnome2::Client -> new_without_connection()) { isa_ok($_, "Gnome2::Client"); $_ -> connect(); $_ -> disconnect(); } Gtk2 -> main_quit(); return 0; }); Gtk2 -> main(); } Gnome2-1.046/t/GnomeAppBar.t0000644000175000017500000000205712542061635014054 0ustar lacklack#!/usr/bin/perl -w use strict; use Gnome2; use constant TESTS => 8; use Test::More tests => TESTS; # $Id$ ############################################################################### SKIP: { our $application; do "t/TestBoilerplate"; ############################################################################# my $app_bar = Gnome2::AppBar -> new(1, 1, "always"); isa_ok($app_bar, "Gnome2::AppBar"); $app_bar -> set_default("-"); $app_bar -> set_status("BLA!"); isa_ok($app_bar -> get_status(), "Gtk2::Entry"); is($app_bar -> get_status() -> get_text(), "BLA!"); $app_bar -> clear_stack(); is($app_bar -> get_status() -> get_text(), "-"); $app_bar -> push("BLUB!"); is($app_bar -> get_status() -> get_text(), "BLUB!"); $app_bar -> pop(); is($app_bar -> get_status() -> get_text(), "-"); $app_bar -> set_progress_percentage(0.23); isa_ok($app_bar -> get_progress(), "Gtk2::ProgressBar"); $app_bar -> refresh(); $app_bar -> set_prompt("Hmm?", 0); is($app_bar -> get_response(), ""); $app_bar -> clear_prompt(); } Gnome2-1.046/t/GnomeDruid.t0000644000175000017500000000757612542061635013771 0ustar lacklack#!/usr/bin/perl -w use strict; use Gnome2; use constant TESTS => 17; use Test::More tests => TESTS; # $Id$ ############################################################################### SKIP: { our $application; do "t/TestBoilerplate"; ############################################################################# my ($druid, $druid_window) = Gnome2::Druid -> new_with_window("Bleh", undef, 1); isa_ok($druid, "Gnome2::Druid"); isa_ok($druid_window, "Gtk2::Window"); $druid = Gnome2::Druid -> new(); isa_ok($druid, "Gnome2::Druid"); $druid -> set_buttons_sensitive(1, 1, 1, 1); $druid -> set_show_finish(0); $druid -> set_show_help(1); ############################################################################# my $dummy = Gnome2::DruidPage -> new(); foreach (qw(back cancel finish prepare next)) { $dummy -> signal_connect($_ => sub { ok(1); return 1; }); } $dummy -> back(); $dummy -> cancel(); $dummy -> finish(); $dummy -> prepare(); $dummy -> next(); ############################################################################# my $first = Gnome2::DruidPageEdge -> new_aa("start"); isa_ok($first, "Gnome2::DruidPageEdge"); $first = Gnome2::DruidPageEdge -> new_with_vals("start", 1, "Blub", "Bla Blub"); isa_ok($first, "Gnome2::DruidPageEdge"); $first = Gnome2::DruidPageEdge -> new("start"); isa_ok($first, "Gnome2::DruidPageEdge"); $first -> set_bg_color(Gtk2::Gdk::Color -> new(0, 255, 0)); $first -> set_textbox_color(Gtk2::Gdk::Color -> new(255, 0, 0)); $first -> set_logo_bg_color(Gtk2::Gdk::Color -> new(0, 0, 255)); $first -> set_title_color(Gtk2::Gdk::Color -> new(255, 255, 0)); $first -> set_text_color(Gtk2::Gdk::Color -> new(0, 255, 255)); $first -> set_text("Schmih"); $first -> set_title("Schmuh"); $first -> set_logo(undef); $first -> set_watermark(undef); $first -> set_top_watermark(undef); ############################################################################# my $middle = Gnome2::DruidPageStandard -> new_with_vals("Blub"); isa_ok($middle, "Gnome2::DruidPageStandard"); isa_ok($middle -> vbox(), "Gtk2::VBox"); $middle = Gnome2::DruidPageStandard -> new(); isa_ok($middle, "Gnome2::DruidPageStandard"); $middle -> set_background(Gtk2::Gdk::Color -> new(0, 255, 0)); $middle -> set_logo_background(Gtk2::Gdk::Color -> new(0, 0, 255)); $middle -> set_title_foreground(Gtk2::Gdk::Color -> new(255, 255, 0)); SKIP: { skip("set_contents_background was broken prior to 2.8", 0) unless (Gnome2 -> CHECK_VERSION(2, 8, 0)); $middle -> set_contents_background(Gtk2::Gdk::Color -> new(255, 255, 0)); } $middle -> set_title("Schmuh"); $middle -> set_logo(undef); $middle -> set_top_watermark(undef); $middle -> append_item("What?", Gtk2::Label -> new("Hrmpf!"), "Really!"); ############################################################################# my $last = Gnome2::DruidPageEdge -> new_aa("finish"); isa_ok($last, "Gnome2::DruidPageEdge"); $last = Gnome2::DruidPageEdge -> new_with_vals("finish", 1, "Blub", "Bla Blub"); isa_ok($last, "Gnome2::DruidPageEdge"); $last = Gnome2::DruidPageEdge -> new("start"); isa_ok($last, "Gnome2::DruidPageEdge"); $last -> set_bg_color(Gtk2::Gdk::Color -> new(0, 255, 0)); $last -> set_textbox_color(Gtk2::Gdk::Color -> new(255, 0, 0)); $last -> set_logo_bg_color(Gtk2::Gdk::Color -> new(0, 0, 255)); $last -> set_title_color(Gtk2::Gdk::Color -> new(255, 255, 0)); $last -> set_text_color(Gtk2::Gdk::Color -> new(0, 255, 255)); $last -> set_text("Schmih"); $last -> set_title("Schmuh"); $last -> set_logo(undef); $last -> set_watermark(undef); $last -> set_top_watermark(undef); ############################################################################# $druid -> prepend_page($first); $druid -> insert_page($first, $middle); $druid -> append_page($last); $druid -> set_page($middle); } Gnome2-1.046/t/GnomeUtil.t0000644000175000017500000000062312542061635013621 0ustar lacklack#!/usr/bin/perl -w use strict; use Gnome2; use constant TESTS => 4; use Test::More tests => TESTS; # $Id$ ############################################################################### is(Gnome2::Util -> extension("blub.abw"), "abw"); like(Gnome2::Util -> prepend_user_home("blub.abw"), qr/blub.abw/); like(Gnome2::Util -> home_file("blub.abw"), qr/blub.abw/); ok(-e Gnome2::Util -> user_shell()); Gnome2-1.046/t/GnomeApp.t0000644000175000017500000000317312542061635013427 0ustar lacklack#!/usr/bin/perl -w use strict; use Gnome2; use constant TESTS => 13; use Test::More tests => TESTS; # $Id$ ############################################################################### SKIP: { our $application; do "t/TestBoilerplate"; ############################################################################# my $app = Gnome2::App -> new("test", "Test"); isa_ok($app, "Gnome2::App"); is($app -> prefix, "/test/"); isa_ok($app -> dock, "Gnome2::Bonobo::Dock"); isa_ok($app -> vbox, "Gtk2::VBox"); isa_ok($app -> layout, "Gnome2::Bonobo::DockLayout"); isa_ok($app -> accel_group, "Gtk2::AccelGroup"); $app -> set_menus(Gtk2::MenuBar -> new()); isa_ok($app -> menubar, "Gtk2::MenuBar"); $app -> set_toolbar(Gtk2::Toolbar -> new()); $app -> set_statusbar(Gtk2::Label -> new("Statusbar")); # $app -> set_statusbar_custom(Gtk2::HBox -> new(0, 0), Gtk2::Label -> new("Statusbar")); isa_ok($app -> statusbar, "Gtk2::Label"); $app -> set_contents(Gtk2::Label -> new("Content")); isa_ok($app -> contents, "Gtk2::Label"); $app -> add_toolbar(Gtk2::Toolbar -> new(), "toolbar", "normal", "top", 1, 1, 0); isa_ok($app -> add_docked(Gtk2::Toolbar -> new(), "dock", "normal", "left", 1, 2, 0), "Gnome2::Bonobo::DockItem"); my $dock_item = Gnome2::Bonobo::DockItem -> new("dock item", "normal"); $dock_item -> add(Gtk2::Toolbar -> new()); $app -> add_dock_item($dock_item, "right", 1, 3, 0); $app -> enable_layout_config(0); is($app -> get_enable_layout_config, 0); isa_ok($app -> get_dock(), "Gnome2::Bonobo::Dock"); isa_ok($app -> get_dock_item_by_name("dock item"), "Gnome2::Bonobo::DockItem"); } Gnome2-1.046/t/GnomeConfig.t0000644000175000017500000001506412542061635014116 0ustar lacklack#!/usr/bin/perl -w use strict; use Gnome2; use constant TESTS => 50; use Test::More tests => TESTS; # $Id$ ############################################################################### SKIP: { our $application; do "t/TestBoilerplate"; ############################################################################# Gnome2::Config -> push_prefix("Test"); ############################################################################# Gnome2::Config -> set_string("/State/Shit", "Oh yes."); is(Gnome2::Config -> get_string("/State/Shit"), "Oh yes."); Gnome2::Config -> set_translated_string("/State/Shit", "Oh yes."); is(Gnome2::Config -> get_translated_string("/State/Shit"), "Oh yes."); is_deeply([Gnome2::Config -> get_string_with_default("/State/Whops=bla")], [1, "bla"]); is_deeply([Gnome2::Config -> get_string_with_default("/State/Shit")], [0, "Oh yes."]); is_deeply([Gnome2::Config -> get_translated_string_with_default("/State/Whops=bla")], [1, "bla"]); is_deeply([Gnome2::Config -> get_translated_string_with_default("/State/Shit")], [0, "Oh yes."]); Gnome2::Config -> set_vector("/State/Env", ["bla=blub", "blub=bla"]); is_deeply(Gnome2::Config -> get_vector("/State/Env"), ["bla=blub", "blub=bla"]); is_deeply([Gnome2::Config -> get_vector_with_default("/State/Whops")], [1, []]); is_deeply([Gnome2::Config -> get_vector_with_default("/State/Env")], [0, ["bla=blub", "blub=bla"]]); Gnome2::Config -> set_int("/Geometry/Width", 1024); is(Gnome2::Config -> get_int("/Geometry/Width"), 1024); is_deeply([Gnome2::Config -> get_int_with_default("/Geometry/Whops=1600")], [1, 1600]); is_deeply([Gnome2::Config -> get_int_with_default("/Geometry/Width")], [0, 1024]); Gnome2::Config -> set_float("/Geometry/Ratio", 1.23); is(Gnome2::Config -> get_float("/Geometry/Ratio"), 1.23); is_deeply([Gnome2::Config -> get_float_with_default("/Geometry/Whops=0.5")], [1, 0.5]); is_deeply([Gnome2::Config -> get_float_with_default("/Geometry/Ratio")], [0, 1.23]); Gnome2::Config -> set_bool("/State/Hidden", 1); ok(Gnome2::Config -> get_bool("/State/Hidden")); is_deeply([Gnome2::Config -> get_bool_with_default("/State/Whops=0")], [1, 0]); is_deeply([Gnome2::Config -> get_bool_with_default("/State/Hidden")], [0, 1]); ok(Gnome2::Config -> has_section("/State")); ok(not Gnome2::Config -> has_section("/Whops")); # ############################################################################# Gnome2::Config::Private -> set_string("/State/Shit", "Oh yes."); is(Gnome2::Config::Private -> get_string("/State/Shit"), "Oh yes."); Gnome2::Config::Private -> set_translated_string("/State/Shit", "Oh yes."); is(Gnome2::Config::Private -> get_translated_string("/State/Shit"), "Oh yes."); is_deeply([Gnome2::Config::Private -> get_string_with_default("/State/Whops=bla")], [1, "bla"]); is_deeply([Gnome2::Config::Private -> get_string_with_default("/State/Shit")], [0, "Oh yes."]); is_deeply([Gnome2::Config::Private -> get_translated_string_with_default("/State/Whops=bla")], [1, "bla"]); is_deeply([Gnome2::Config::Private -> get_translated_string_with_default("/State/Shit")], [0, "Oh yes."]); Gnome2::Config::Private -> set_vector("/State/Env", ["bla=blub", "blub=bla"]); is_deeply(Gnome2::Config::Private -> get_vector("/State/Env"), ["bla=blub", "blub=bla"]); is_deeply([Gnome2::Config::Private -> get_vector_with_default("/State/Whops")], [1, []]); is_deeply([Gnome2::Config::Private -> get_vector_with_default("/State/Env")], [0, ["bla=blub", "blub=bla"]]); Gnome2::Config::Private -> set_int("/Geometry/Width", 1024); is(Gnome2::Config::Private -> get_int("/Geometry/Width"), 1024); is_deeply([Gnome2::Config::Private -> get_int_with_default("/Geometry/Whops=1600")], [1, 1600]); is_deeply([Gnome2::Config::Private -> get_int_with_default("/Geometry/Width")], [0, 1024]); Gnome2::Config::Private -> set_float("/Geometry/Ratio", 1.23); is(Gnome2::Config::Private -> get_float("/Geometry/Ratio"), 1.23); SKIP: { skip("get_float_with_default was broken prior to 2.6.0", 2) unless (Gnome2 -> CHECK_VERSION(2, 6, 0)); is_deeply([Gnome2::Config::Private -> get_float_with_default("/Geometry/Whops=0.5")], [1, 0.5]); is_deeply([Gnome2::Config::Private -> get_float_with_default("/Geometry/Ratio")], [0, 1.23]); } Gnome2::Config::Private -> set_bool("/State/Hidden", 1); ok(Gnome2::Config::Private -> get_bool("/State/Hidden")); is_deeply([Gnome2::Config::Private -> get_bool_with_default("/State/Whops=0")], [1, 0]); is_deeply([Gnome2::Config::Private -> get_bool_with_default("/State/Hidden")], [0, 1]); ok(Gnome2::Config::Private -> has_section("/State")); ok(not Gnome2::Config::Private -> has_section("/Whops")); ############################################################################# my $handle = Gnome2::Config -> init_iterator("/Geometry"); isa_ok($handle, "Gnome2::Config::Iterator"); $handle = Gnome2::Config::Private -> init_iterator("/Geometry"); isa_ok($handle, "Gnome2::Config::Iterator"); my ($key, $value); while (@_ = $handle -> next()) { ($handle, $key, $value) = @_; ok($key eq "Ratio" || $key eq "Width"); ok($value == 1.23 || $value == 1024); } ############################################################################# # FIXME: hrm, no sections? $handle = Gnome2::Config -> init_iterator_sections("Test"); isa_ok($handle, "Gnome2::Config::Iterator"); $handle = Gnome2::Config::Private -> init_iterator_sections("Test"); isa_ok($handle, "Gnome2::Config::Iterator"); while (@_ = $handle -> next()) { ($handle, $key, $value) = @_; warn $key, $value; } ############################################################################# # ok(Gnome2::Config -> sync()); # ok(Gnome2::Config -> sync_file("Test")); # ok(Gnome2::Config::Private -> sync_file("Test")); Gnome2::Config -> clean_key("/Geometry/Ratio"); Gnome2::Config::Private -> clean_file("/Geometry/Ratio"); Gnome2::Config -> clean_section("/Geometry"); Gnome2::Config::Private -> clean_section("/Geometry"); Gnome2::Config -> clean_file("Test"); Gnome2::Config::Private -> clean_file("Test"); Gnome2::Config -> drop_file("Test"); Gnome2::Config::Private -> drop_file("Test"); Gnome2::Config -> drop_all(); ############################################################################# Gnome2::Config -> pop_prefix(); ############################################################################# is(Gnome2::Config -> get_real_path("Test"), "$ENV{ HOME }/.gnome2/Test"); is(Gnome2::Config::Private -> get_real_path("Test"), "$ENV{ HOME }/.gnome2_private/Test"); } Gnome2-1.046/t/GnomeIconList.t0000644000175000017500000000547112542061635014436 0ustar lacklack#!/usr/bin/perl -w use strict; use Gnome2; use constant TESTS => 12; use Test::More skip_all => "Seems to be broken", tests => TESTS; # $Id$ ############################################################################### SKIP: { our $application; do "t/TestBoilerplate"; ############################################################################# my $adjustment = Gtk2::Adjustment -> new(50, 0, 100, 5, 5, 20); my $list = Gnome2::IconList -> new(23, $adjustment, [qw(static-text is-editable)]); isa_ok($list, "Gnome2::IconList"); $list -> set_hadjustment($adjustment); $list -> set_vadjustment($adjustment); $list -> freeze(); $list -> thaw(); $list -> insert(0, "/usr/share/pixmaps/yes.xpm", "YES!"); $list -> insert_pixbuf(1, Gtk2::Gdk::Pixbuf -> new("rgb", 1, 8, 23, 42), "/usr/share/pixmaps/yes.xpm", "YES!"); $list -> append("/usr/share/pixmaps/yes.xpm", "YES!"); $list -> append_pixbuf(Gtk2::Gdk::Pixbuf -> new("rgb", 1, 8, 23, 42), "/usr/share/pixmaps/yes.xpm", "YES!"); is($list -> get_icon_filename(2), "/usr/share/pixmaps/yes.xpm"); is($list -> find_icon_from_filename("/usr/share/pixmaps/yes.xpm"), 0); $list -> remove(1); is($list -> get_num_icons(), 3); $list -> set_selection_mode("multiple"); is($list -> get_selection_mode(), "multiple"); $list -> select_icon(1); is_deeply([$list -> get_selection()], [1]); $list -> unselect_icon(1); $list -> unselect_all(); SKIP: { skip("select_all is new in 2.8", 0) unless (Gnome2 -> CHECK_VERSION(2, 8, 0)); $list -> select_all(); } $list -> focus_icon(1); $list -> set_icon_width(42); $list -> set_row_spacing(5); $list -> set_col_spacing(5); $list -> set_text_spacing(5); $list -> set_icon_border(5); $list -> set_separators("--"); # FIXME: why does moveto() yield a warning? # $list -> moveto(1, 0.0); is($list -> icon_is_visible(1), "none"); is($list -> get_icon_at(20, 20), -1); like($list -> get_items_per_line(), qr/^\d+$/); my $item = $list -> get_icon_text_item(1); isa_ok($item, "Gnome2::IconTextItem"); $item -> configure(10, 10, 23, "Sans 12", "BLA!", 0, 1); is($item -> get_text(), "BLA!"); $item -> setxy(11, 11); $item -> select(1); $item -> focus(1); $item -> start_editing(); isa_ok($item -> get_editable(), "Gtk2::Editable"); $item -> stop_editing(0); # isa_ok($list -> get_icon_pixbuf_item(1), "Gnome2::Canvas::Pixbuf"); # FIXME # on rh8, with libgnomeui-2.0 version 2.0.3, this line causes the test # to segfault and pop up the Gnome crash dialog when running under # make test, but not when running directly from the terminal. probably # something strange going on with refcounts somewhere. -mup # $list -> clear(); } Gnome2-1.046/t/GnomeColorPicker.t0000644000175000017500000000166212542061635015124 0ustar lacklack#!/usr/bin/perl -w use strict; use Gnome2; use constant TESTS => 7; use Test::More tests => TESTS; # $Id$ ############################################################################### SKIP: { our $application; do "t/TestBoilerplate"; ############################################################################# my $picker = Gnome2::ColorPicker -> new(); isa_ok($picker, "Gnome2::ColorPicker"); $picker -> set_d(0.5, 0.5, 0.5, 0.5); is_deeply([$picker -> get_d()], [0.5, 0.5, 0.5, 0.5]); $picker -> set_i8(23, 23, 42, 42); is_deeply([$picker -> get_i8()], [23, 23, 42, 42]); $picker -> set_i16(23, 23, 42, 42); is_deeply([$picker -> get_i16()], [23, 23, 42, 42]); $picker -> set_dither(1); is($picker -> get_dither(), 1); $picker -> set_use_alpha(1); is($picker -> get_use_alpha(), 1); $picker -> set_title("May The Force Be With You!"); is($picker -> get_title(), "May The Force Be With You!"); } Gnome2-1.046/t/GnomeFontPicker.t0000644000175000017500000000204412542061635014747 0ustar lacklack#!/usr/bin/perl -w use strict; use Gnome2; use constant TESTS => 6; use Test::More tests => TESTS; # $Id$ ############################################################################### SKIP: { our $application; do "t/TestBoilerplate"; ############################################################################# my $picker = Gnome2::FontPicker -> new(); isa_ok($picker, "Gnome2::FontPicker"); $picker -> set_title("Sociol Distortion For President!"); is($picker -> get_title(), "Sociol Distortion For President!"); $picker -> set_mode("font-info"); is($picker -> get_mode(), "font-info"); $picker -> fi_set_use_font_in_label(1, 14); $picker -> fi_set_show_size(1); $picker -> set_mode("user-widget"); my $label = Gtk2::Label -> new("Really?"); $picker -> uw_set_widget($label); is($picker -> uw_get_widget(), $label); $picker -> set_font_name("sans 14"); is($picker -> get_font_name(), "sans 14"); $picker -> set_preview_text("Brown foxes suck."); is($picker -> get_preview_text(), "Brown foxes suck."); } Gnome2-1.046/t/GnomeEntry.t0000644000175000017500000000155312542061635014010 0ustar lacklack#!/usr/bin/perl -w use strict; use Gnome2; use constant TESTS => 3; use Test::More tests => TESTS; # $Id$ ############################################################################### SKIP: { our $application; do "t/TestBoilerplate"; ############################################################################# my $entry = Gnome2::Entry -> new(); isa_ok($entry, "Gnome2::Entry"); isa_ok($entry -> gtk_entry, "Gtk2::Entry"); # this would make gconf create an entry in its db. # $entry -> set_history_id("urgs"); # is($entry -> get_history_id(), "urgs"); SKIP: { skip("set_max_saved is new in 2.4.0", 1) unless (Gnome2 -> CHECK_VERSION(2, 4, 0)); $entry -> set_max_saved(23); is($entry -> get_max_saved(), 23); } $entry -> prepend_history(1, "blub"); $entry -> append_history(0, "blab"); $entry -> clear_history(); } Gnome2-1.046/t/GnomePopupMenu.t0000644000175000017500000000432712542061635014641 0ustar lacklack#!/usr/bin/perl -w use strict; use Gnome2; use constant TESTS => 6; use Test::More tests => TESTS; # $Id$ ############################################################################### SKIP: { our $application; do "t/TestBoilerplate"; ############################################################################# my $uiinfo = [ { type => "item", label => "Item" }, { type => "toggleitem", label => "Toggle" }, { type => "subtree", label => "Radio Items", subtree => [ { type => "radioitems", moreinfo => [ { type => "item", label => "A" }, { type => "item", label => "B", callback => sub { warn @_; } } ] } ] } ]; my $additional_uiinfo = [ { type => "item", label => "Really?" } ]; ############################################################################# my $popup = Gnome2::PopupMenu -> new($uiinfo); isa_ok($popup, "Gtk2::Menu"); isa_ok($popup -> get_accel_group(), "Gtk2::AccelGroup"); $popup = Gnome2::PopupMenu -> new_with_accelgroup($uiinfo); isa_ok($popup, "Gtk2::Menu"); isa_ok($popup -> get_accel_group(), "Gtk2::AccelGroup"); $popup = Gnome2::PopupMenu -> new_with_accelgroup($uiinfo, Gtk2::AccelGroup -> new()); isa_ok($popup, "Gtk2::Menu"); isa_ok($popup -> get_accel_group(), "Gtk2::AccelGroup"); $popup -> append_from($additional_uiinfo); my $window = Gtk2::Window -> new("toplevel"); my $button = Gtk2::Button -> new("BUH!"); $window -> add($button); $popup -> attach_to($button); $popup -> attach_to($button, "blub"); if (join("", Gtk2 -> get_version_info()) >= 220) { my $event = Gtk2::Gdk::Event -> new("button_press"); $popup -> do_popup( sub { my ($menu) = @_; return 23, 42; }, undef, $event, "bla", $button ); } # FIXME: how to make it return? # $popup -> do_popup_modal( # sub { # my ($menu) = @_; # return 23, 42; # }, # undef, # $event, # "bla", # $button # ); $window -> add_popup_items($uiinfo); $window -> add_popup_items($uiinfo, "blab"); } Gnome2-1.046/t/GnomeAppHelper.t0000644000175000017500000000537312542061635014573 0ustar lacklack#!/usr/bin/perl -w use strict; use Gnome2; use constant TESTS => 2; use Test::More tests => TESTS; # $Id$ ############################################################################### SKIP: { our $application; do "t/TestBoilerplate"; ############################################################################# my $menubar_info = [ { type => "item", label => "Item", callback => sub { warn @_; } }, { type => "toggleitem", label => "Toggle", callback => sub { warn @_; } }, { type => "subtree", label => "Radio Items", subtree => [ { type => "radioitems", moreinfo => [ { type => "item", label => "A", callback => sub { warn @_; }, hint => "Don't click me!" }, { type => "item", label => "B" }, { type => "item", label => "C" }, { type => "item", label => "D" }, { type => "item", label => "E" } ] } ] }, { type => "subtree", label => "Help Me, PLEASE!", subtree => [ { type => "help", moreinfo => "test" } ] }, ]; my $toolbar_info = [ [ "item", "Item", undef, sub { warn @_; }, undef, undef, undef, undef ], { type => "separator" }, { type => "toggleitem", label => "Toggle", callback => sub { warn @_; } } ]; ############################################################################# Gnome2 -> accelerators_sync(); my $app = Gnome2::App -> new("test", "Test"); my $accel_group = Gtk2::AccelGroup -> new(); my $menubar = Gtk2::MenuBar -> new(); my $toolbar = Gtk2::Toolbar -> new(); $menubar -> fill_menu($menubar_info, $accel_group, 1, 1); $toolbar -> fill_toolbar($toolbar_info, $accel_group); $app -> create_menus($menubar_info); $app -> create_toolbar($toolbar_info); $app -> insert_menus("Toggle", $menubar_info); my ($widget, $pos) = $menubar -> find_menu_pos("Item"); isa_ok($widget, "Gtk2::MenuBar"); is($pos, 1); $app -> remove_menus("Item", 1); $app -> remove_menu_range("Toggle", 1, 2); my $dock_item = Gnome2::Bonobo::DockItem -> new("dock item", "normal"); my $dock_toolbar = Gtk2::Toolbar -> new(); $dock_item -> add($dock_toolbar); $app -> setup_toolbar($dock_toolbar, $dock_item); my $appbar = Gnome2::AppBar -> new(1, 1, "always"); my $statusbar = Gtk2::Statusbar -> new(); $app -> set_statusbar($appbar); $appbar -> install_menu_hints($menubar_info); $statusbar -> install_menu_hints($menubar_info); $app -> install_menu_hints($menubar_info); } Gnome2-1.046/t/TestBoilerplate0000644000175000017500000000061212542061635014554 0ustar lacklackskip("You don't appear to have the GNOME session manager running.", TESTS) unless (-d "$ENV{ HOME }/.gconfd" && -d "$ENV{ HOME }/.gnome2"); skip("Couldn't initialize Gtk2", TESTS) unless (Gtk2 -> init_check()); $application = Gnome2::Program -> init("Test", "0.1"); skip("Couldn't connect to the session manager.", TESTS) unless (Gnome2::Client -> new() -> connected()); 1; Gnome2-1.046/t/GnomeThumbnail.t0000644000175000017500000000267412542061635014637 0ustar lacklack#!/usr/bin/perl -w use strict; use Gnome2; use constant TESTS => 4; use Test::More tests => TESTS; # $Id$ ############################################################################### SKIP: { our $application; do "t/TestBoilerplate"; skip("GnomeThumbnail is new in 2.0.6", 4) unless (Gnome2 -> CHECK_VERSION(2, 0, 6)); ############################################################################# my $uri = "file:///usr/share/pixmaps/yes.xpm"; my $file = "/usr/share/pixmaps/yes.xpm"; my $mtime = (stat($file))[9]; SKIP: { skip "yes.xpm not found", 4 unless defined $mtime; my $factory = Gnome2::ThumbnailFactory -> new("normal"); isa_ok($factory, "Gnome2::ThumbnailFactory"); $factory -> lookup($uri, $mtime); $factory -> has_valid_failed_thumbnail($uri, $mtime); $factory -> can_thumbnail($uri, "image/xpm", $mtime); my $thumbnail = $factory -> generate_thumbnail($uri, $mtime); isa_ok($thumbnail, "Gtk2::Gdk::Pixbuf"); $factory -> save_thumbnail($thumbnail, $uri, $mtime); $factory -> create_failed_thumbnail($uri, $mtime); SKIP: { skip("has_uri and is_valid are broken", 2) unless (Gnome2 -> CHECK_VERSION(2, 8, 0)); like($thumbnail -> has_uri($uri), qr/^(|1)$/); like($thumbnail -> is_valid($uri, $mtime), qr/^(|1)$/); } $thumbnail -> md5($uri); $thumbnail -> path_for_uri($uri, "large"); $thumbnail -> scale_down_pixbuf(5, 5); } } Gnome2-1.046/t/GnomeDateEdit.t0000644000175000017500000000160612542061635014371 0ustar lacklack#!/usr/bin/perl -w use strict; use Gnome2; use constant TESTS => 5; use Test::More tests => TESTS; # $Id$ ############################################################################### SKIP: { our $application; do "t/TestBoilerplate"; ############################################################################# my $edit = Gnome2::DateEdit -> new(time(), 1, 1); isa_ok($edit, "Gnome2::DateEdit"); $edit = Gnome2::DateEdit -> new_flags(0, [qw(show_time 24_hr week_starts_on_monday)]); isa_ok($edit, "Gnome2::DateEdit"); $edit -> set_time(time()); like($edit -> get_time(), qr/^\d+$/); like($edit -> get_initial_time(), qr/^\d+$/); $edit -> set_popup_range(6, 12); $edit -> set_flags([qw(show_time 24_hr)]); is_deeply(\@{ $edit -> get_flags() }, [qw(show-time 24-hr)]); } Gnome2-1.046/t/GnomeSound0000644000175000017500000000104712542061635013533 0ustar lacklack#!/usr/bin/perl -w use strict; use Gnome2; use constant TESTS => 1; use Test::More tests => TESTS; # $Id$ ############################################################################### SKIP: { our $application; do "t/TestBoilerplate"; ############################################################################# Gnome2::Sound -> init(); Gnome2::Sound -> init("localhost"); warn Gnome2::Sound -> connection_get(); warn Gnome2::Sound -> sample_load("bla", "bla"); Gnome2::Sound -> play("bla"); Gnome2::Sound -> shutdown(); } Gnome2-1.046/t/GnomeURL0000644000175000017500000000064312542061635013106 0ustar lacklack#!/usr/bin/perl -w use strict; use Gnome2; # $Id$ ############################################################################### SKIP: { our $application; do "t/TestBoilerplate"; ############################################################################# Gnome2::URL -> show("http://ftp.freenet.de"); Gnome2::URL -> show_with_env("http://ftp.freenet.de", [map { "$_=" . $ENV{ $_ } } (keys(%ENV))]); } Gnome2-1.046/t/GnomeI18N.t0000644000175000017500000000055712542061635013371 0ustar lacklack#!/usr/bin/perl -w use strict; use Gnome2; use constant TESTS => 2; use Test::More tests => TESTS; # $Id$ ############################################################################### ok(Gnome2::I18N -> get_language_list()); ok(Gnome2::I18N -> get_language_list("LC_MESSAGES")); Gnome2::I18N -> push_c_numeric_locale(); Gnome2::I18N -> pop_c_numeric_locale(); Gnome2-1.046/t/GnomeHelp0000644000175000017500000000101012542061635013321 0ustar lacklack#!/usr/bin/perl -w use strict; use Gnome2; # $Id$ ############################################################################### SKIP: { our $application; do "t/TestBoilerplate"; ############################################################################# Gnome2::Help -> display("zenity.xml"); Gnome2::Help -> display_desktop($application, "panel", "launchers.html"); Gnome2::Help -> display_desktop_with_env($application, "panel", "launchers.html", "", [map { "$_=" . $ENV{ $_ } } (keys(%ENV))]); } Gnome2-1.046/t/GnomeIconEntry.t0000644000175000017500000000141712542061635014620 0ustar lacklack#!/usr/bin/perl -w use strict; use Gnome2; use constant TESTS => 3; use Test::More tests => TESTS; # $Id$ ############################################################################### SKIP: { our $application; do "t/TestBoilerplate"; ############################################################################# my $entry = Gnome2::IconEntry -> new("sometimes", "I wish you were here"); isa_ok($entry, "Gnome2::IconEntry"); $entry -> set_pixmap_subdir($ENV{ HOME }); $entry -> set_filename("blablablub"); ok(not defined($entry -> get_filename())); # $entry -> set_history_id("always"); $entry -> set_browse_dialog_title("Boring"); ok(not defined($entry -> pick_dialog())); $entry -> set_max_saved(23) if (Gnome2 -> CHECK_VERSION(2, 4, 0)); } Gnome2-1.046/t/GnomeScore0000644000175000017500000000036712542061635013522 0ustar lacklack#!/usr/bin/perl -w use strict; use Gnome2; # $Id$ Gnome2::Score -> init("Test"); Gnome2::Score -> log(1.23, "first", 1); Gnome2::Score -> log(1.5745, "first", 1); use Data::Dumper; print Dumper (Gnome2::Score -> get_notable("Test", "first")); Gnome2-1.046/t/GnomeHRef.t0000644000175000017500000000107512542061635013532 0ustar lacklack#!/usr/bin/perl -w use strict; use Gnome2; use constant TESTS => 3; use Test::More tests => TESTS; # $Id$ ############################################################################### SKIP: { our $application; do "t/TestBoilerplate"; ############################################################################# my $link = Gnome2::HRef -> new("ftp://ftp.freenet.de/pub/", "Freenet"); isa_ok($link, "Gnome2::HRef"); $link -> set_url("bla://blub"); is($link -> get_url(), "bla://blub"); $link -> set_text("Hmm"); is($link -> get_text(), "Hmm"); } Gnome2-1.046/t/GnomeScores.t0000644000175000017500000000203012542061635014134 0ustar lacklack#!/usr/bin/perl -w use strict; use Gnome2; use constant TESTS => 1; use Test::More tests => TESTS; # $Id$ ############################################################################### SKIP: { our $application; do "t/TestBoilerplate"; ############################################################################# my $scores = Gnome2::Scores -> new([qw(bla blub)], [1.3, 1.1127], [time(), time()], 0); isa_ok($scores, "Gnome2::Scores"); $scores -> set_logo_label("Losers:", "Sans 28", Gtk2::Gdk::Color -> new(255, 0, 0)); $scores -> set_logo_pixmap("yes.xpm"); $scores -> set_logo_widget(Gtk2::Label -> new("Crawww")); $scores -> set_color(1, Gtk2::Gdk::Color -> new(0, 255, 0)); $scores -> set_def_color(Gtk2::Gdk::Color -> new(0, 0, 255)); $scores -> set_colors(Gtk2::Gdk::Color -> new(0, 0, 0)); $scores -> set_logo_label_title("Blub"); $scores -> set_current_player(1); } Gnome2-1.046/t/Gnome.t0000644000175000017500000000457712542061635012777 0ustar lacklack#!/usr/bin/perl -w use strict; use Gnome2; use constant TESTS => 23; use Test::More tests => TESTS; # $Id$ ############################################################################### SKIP: { our $application; do "t/TestBoilerplate"; ############################################################################# foreach (Gnome2::ModuleInfo -> libgnome(), Gnome2::ModuleInfo -> libgnomeui(), Gnome2::ModuleInfo -> bonobo()) { isa_ok($_, "Gnome2::ModuleInfo"); ok(defined($_ -> name())); ok(defined($_ -> version())); ok(defined($_ -> description())); } ok(-e Gnome2 -> user_dir_get()); ok(-e Gnome2 -> user_private_dir_get()); ok(-e Gnome2 -> user_accels_dir_get()); ############################################################################# is(Gnome2::UIDefs -> pad, 8); is(Gnome2::UIDefs -> key_name_find, "f"); is(Gnome2::UIDefs -> key_name_replace, "r"); like(Gnome2::UIDefs -> key_name_pause_game, qr/^\d+$/); ############################################################################# is(Gnome2::GConf -> get_gnome_libs_settings_relative("test"), "/apps/gnome-settings/Test/test"); is(Gnome2::GConf -> get_app_settings_relative($application, "test"), "/apps/Test/test"); ############################################################################# my $window = Gtk2::Window -> new("toplevel"); $window -> toplevel_set_title("test.doc", "Test", ".doc"); is($window -> get_title(), "test : Test"); Gnome2::WindowIcon -> init(); Gnome2::WindowIcon -> set_from_default($window); Gnome2::WindowIcon -> set_from_file($window, "/usr/share/pixmaps/yes.xpm"); Gnome2::WindowIcon -> set_from_file_list($window, ["/usr/share/pixmaps/yes.xpm"]); Gnome2::WindowIcon -> set_default_from_file("/usr/share/pixmaps/yes.xpm"); Gnome2::WindowIcon -> set_default_from_file_list(["/usr/share/pixmaps/yes.xpm"]); ############################################################################# my $about = Gnome2::About -> new("Test", "0.1", "Copyright © 1923-1942 Holy Shit, Inc.", "Schmih Schmah Schmuh", [qw(Bla Ble Bli Blo Blu)], "Only You", "Where's my calculator?"); isa_ok($about, "Gtk2::Dialog"); } Gnome2-1.046/doctypes0000644000175000017500000000015212542061635013040 0ustar lacklackGnomeUIInfo Gnome2::UIInfo time_t a timestamp Gnome2PerlIconListFlags Gnome2::IconListFlags Gnome2-1.046/perl-Gnome2.spec.in0000644000175000017500000000444012542061635014637 0ustar lacklackSummary: Gnome2 Perl module Name: perl-Gnome2 Version: @VERSION@ Release: 1 Packager: gtk-perl-list@gnome.org License: GPL Group: Development/Libraries URL: http://search.cpan.org/dist/Gnome2/ BuildRoot: %{_tmppath}/%{name}-%{version}-%{release}-root BuildRequires: perl >= 2:5.8.0 BuildRequires: libgnomeui-devel >= @GNOME@ BuildRequires: perl-ExtUtils-Depends >= @PERL_EXTUTILS_DEPENDS@ BuildRequires: perl-ExtUtils-PkgConfig >= @PERL_EXTUTILS_PKGCONFIG@ BuildRequires: perl-Glib >= @PERL_GLIB@ BuildRequires: perl-Gtk2 >= @PERL_GTK@ BuildRequires: perl-Gnome2-Canvas >= @PERL_GNOME_CANVAS@ BuildRequires: perl-Gnome2-VFS >= @PERL_GNOME_VFS@ Requires: libgnomeui >= %(pkg-config --modversion libgnomeui-2.0) Requires: perl-Glib >= @PERL_GLIB@ Requires: perl-Gtk2 >= @PERL_GTK@ Requires: perl-Gnome2-Canvas >= @PERL_GNOME_CANVAS@ Requires: perl-Gnome2-VFS >= @PERL_GNOME_VFS@ Requires: %(perl -MConfig -le 'if (defined $Config{useithreads}) { print "perl(:WITH_ITHREADS)" } else { print "perl(:WITHOUT_ITHREADS)" }') Requires: %(perl -MConfig -le 'if (defined $Config{usethreads}) { print "perl(:WITH_THREADS)" } else { print "perl(:WITHOUT_THREADS)" }') Requires: %(perl -MConfig -le 'if (defined $Config{uselargefiles}) { print "perl(:WITH_LARGEFILES)" } else { print "perl(:WITHOUT_LARGEFILES)" }') Source0: @SOURCE@ %description Perl bindings to the 2.x series of the Gnome 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. %prep %setup -q -n Gnome2-%{version} %build CFLAGS="$RPM_OPT_FLAGS" perl Makefile.PL PREFIX=$RPM_BUILD_ROOT%{_prefix} make OPTIMIZE="$RPM_OPT_FLAGS" make test %install %makeinstall [ -x /usr/lib/rpm/brp-compress ] && /usr/lib/rpm/brp-compress find $RPM_BUILD_ROOT \( -name perllocal.pod -o -name .packlist \) -exec rm -v {} \; find $RPM_BUILD_ROOT/usr -type f -print | \ sed "s@^$RPM_BUILD_ROOT@@g" | \ grep -v perllocal.pod | \ grep -v "\.packlist" > %{name}-%{version}-filelist if [ "$(cat %{name}-%{version}-filelist)X" = "X" ] ; then exit -1 fi %clean rm -rf $RPM_BUILD_ROOT %files -f %{name}-%{version}-filelist %defattr(-,root,root) %changelog * @DATE@ gtk-perl-list@gnome.org - @VERSION@ - Specfile autogenerated. Gnome2-1.046/TODO0000644000175000017500000000152012542061635011753 0ustar lacklack# # $Id$ # need examples these haven't been done yet (going from the reference doc indices): libbonobo, libbonoboui: not touched. should it go in a separate module? (still in this namespace, but...) libgnome: gnome-exec (perl offers the same features natively) gnome-triggers (failed to implement this one) libgnomeui: GnomeThemeFile (no GObject, so I'll wait till someone begs for it) gnome-vfs-util libnautilus-2.0: needed for writing nautilus components in perl, but requires binding for libbonobo/libbonobo-ui librsvg: this is the library that renders SVG (Scalable Vector Graphics) images; since it will be more and more needed, should go in too (even if not in the Gnome2::* namespace?) Also, libgstreamer should be wrapped, as soon as it's considered stable. (Brett Kosinki has been working on this for several months) Gnome2-1.046/LICENSE0000644000175000017500000006350212542061635012300 0ustar lacklack GNU LESSER GENERAL PUBLIC LICENSE Version 2.1, February 1999 Copyright (C) 1991, 1999 Free Software Foundation, Inc. 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA Everyone is permitted to copy and distribute verbatim copies of this license document, but changing it is not allowed. [This is the first released version of the Lesser GPL. It also counts as the successor of the GNU Library Public License, version 2, hence the version number 2.1.] Preamble The licenses for most software are designed to take away your freedom to share and change it. By contrast, the GNU General Public Licenses are intended to guarantee your freedom to share and change free software--to make sure the software is free for all its users. This license, the Lesser General Public License, applies to some specially designated software packages--typically libraries--of the Free Software Foundation and other authors who decide to use it. You can use it too, but we suggest you first think carefully about whether this license or the ordinary General Public License is the better strategy to use in any particular case, based on the explanations below. When we speak of free software, we are referring to freedom of use, not price. Our General Public Licenses are designed to make sure that you have the freedom to distribute copies of free software (and charge for this service if you wish); that you receive source code or can get it if you want it; that you can change the software and use pieces of it in new free programs; and that you are informed that you can do these things. To protect your rights, we need to make restrictions that forbid distributors to deny you these rights or to ask you to surrender these rights. These restrictions translate to certain responsibilities for you if you distribute copies of the library or if you modify it. For example, if you distribute copies of the library, whether gratis or for a fee, you must give the recipients all the rights that we gave you. You must make sure that they, too, receive or can get the source code. If you link other code with the library, you must provide complete object files to the recipients, so that they can relink them with the library after making changes to the library and recompiling it. And you must show them these terms so they know their rights. We protect your rights with a two-step method: (1) we copyright the library, and (2) we offer you this license, which gives you legal permission to copy, distribute and/or modify the library. To protect each distributor, we want to make it very clear that there is no warranty for the free library. Also, if the library is modified by someone else and passed on, the recipients should know that what they have is not the original version, so that the original author's reputation will not be affected by problems that might be introduced by others. Finally, software patents pose a constant threat to the existence of any free program. We wish to make sure that a company cannot effectively restrict the users of a free program by obtaining a restrictive license from a patent holder. Therefore, we insist that any patent license obtained for a version of the library must be consistent with the full freedom of use specified in this license. Most GNU software, including some libraries, is covered by the ordinary GNU General Public License. This license, the GNU Lesser General Public License, applies to certain designated libraries, and is quite different from the ordinary General Public License. We use this license for certain libraries in order to permit linking those libraries into non-free programs. When a program is linked with a library, whether statically or using a shared library, the combination of the two is legally speaking a combined work, a derivative of the original library. The ordinary General Public License therefore permits such linking only if the entire combination fits its criteria of freedom. The Lesser General Public License permits more lax criteria for linking other code with the library. We call this license the "Lesser" General Public License because it does Less to protect the user's freedom than the ordinary General Public License. It also provides other free software developers Less of an advantage over competing non-free programs. These disadvantages are the reason we use the ordinary General Public License for many libraries. However, the Lesser license provides advantages in certain special circumstances. For example, on rare occasions, there may be a special need to encourage the widest possible use of a certain library, so that it becomes a de-facto standard. To achieve this, non-free programs must be allowed to use the library. A more frequent case is that a free library does the same job as widely used non-free libraries. In this case, there is little to gain by limiting the free library to free software only, so we use the Lesser General Public License. In other cases, permission to use a particular library in non-free programs enables a greater number of people to use a large body of free software. For example, permission to use the GNU C Library in non-free programs enables many more people to use the whole GNU operating system, as well as its variant, the GNU/Linux operating system. Although the Lesser General Public License is Less protective of the users' freedom, it does ensure that the user of a program that is linked with the Library has the freedom and the wherewithal to run that program using a modified version of the Library. The precise terms and conditions for copying, distribution and modification follow. Pay close attention to the difference between a "work based on the library" and a "work that uses the library". The former contains code derived from the library, whereas the latter must be combined with the library in order to run. GNU LESSER GENERAL PUBLIC LICENSE TERMS AND CONDITIONS FOR COPYING, DISTRIBUTION AND MODIFICATION 0. This License Agreement applies to any software library or other program which contains a notice placed by the copyright holder or other authorized party saying it may be distributed under the terms of this Lesser General Public License (also called "this License"). Each licensee is addressed as "you". A "library" means a collection of software functions and/or data prepared so as to be conveniently linked with application programs (which use some of those functions and data) to form executables. The "Library", below, refers to any such software library or work which has been distributed under these terms. A "work based on the Library" means either the Library or any derivative work under copyright law: that is to say, a work containing the Library or a portion of it, either verbatim or with modifications and/or translated straightforwardly into another language. (Hereinafter, translation is included without limitation in the term "modification".) "Source code" for a work means the preferred form of the work for making modifications to it. For a library, complete source code means all the source code for all modules it contains, plus any associated interface definition files, plus the scripts used to control compilation and installation of the library. Activities other than copying, distribution and modification are not covered by this License; they are outside its scope. The act of running a program using the Library is not restricted, and output from such a program is covered only if its contents constitute a work based on the Library (independent of the use of the Library in a tool for writing it). Whether that is true depends on what the Library does and what the program that uses the Library does. 1. You may copy and distribute verbatim copies of the Library's complete source code as you receive it, in any medium, provided that you conspicuously and appropriately publish on each copy an appropriate copyright notice and disclaimer of warranty; keep intact all the notices that refer to this License and to the absence of any warranty; and distribute a copy of this License along with the Library. You may charge a fee for the physical act of transferring a copy, and you may at your option offer warranty protection in exchange for a fee. 2. You may modify your copy or copies of the Library or any portion of it, thus forming a work based on the Library, and copy and distribute such modifications or work under the terms of Section 1 above, provided that you also meet all of these conditions: a) The modified work must itself be a software library. b) You must cause the files modified to carry prominent notices stating that you changed the files and the date of any change. c) You must cause the whole of the work to be licensed at no charge to all third parties under the terms of this License. d) If a facility in the modified Library refers to a function or a table of data to be supplied by an application program that uses the facility, other than as an argument passed when the facility is invoked, then you must make a good faith effort to ensure that, in the event an application does not supply such function or table, the facility still operates, and performs whatever part of its purpose remains meaningful. (For example, a function in a library to compute square roots has a purpose that is entirely well-defined independent of the application. Therefore, Subsection 2d requires that any application-supplied function or table used by this function must be optional: if the application does not supply it, the square root function must still compute square roots.) These requirements apply to the modified work as a whole. If identifiable sections of that work are not derived from the Library, and can be reasonably considered independent and separate works in themselves, then this License, and its terms, do not apply to those sections when you distribute them as separate works. But when you distribute the same sections as part of a whole which is a work based on the Library, the distribution of the whole must be on the terms of this License, whose permissions for other licensees extend to the entire whole, and thus to each and every part regardless of who wrote it. Thus, it is not the intent of this section to claim rights or contest your rights to work written entirely by you; rather, the intent is to exercise the right to control the distribution of derivative or collective works based on the Library. In addition, mere aggregation of another work not based on the Library with the Library (or with a work based on the Library) on a volume of a storage or distribution medium does not bring the other work under the scope of this License. 3. You may opt to apply the terms of the ordinary GNU General Public License instead of this License to a given copy of the Library. To do this, you must alter all the notices that refer to this License, so that they refer to the ordinary GNU General Public License, version 2, instead of to this License. (If a newer version than version 2 of the ordinary GNU General Public License has appeared, then you can specify that version instead if you wish.) Do not make any other change in these notices. Once this change is made in a given copy, it is irreversible for that copy, so the ordinary GNU General Public License applies to all subsequent copies and derivative works made from that copy. This option is useful when you wish to copy part of the code of the Library into a program that is not a library. 4. You may copy and distribute the Library (or a portion or derivative of it, under Section 2) in object code or executable form under the terms of Sections 1 and 2 above provided that you accompany it with the complete corresponding machine-readable source code, which must be distributed under the terms of Sections 1 and 2 above on a medium customarily used for software interchange. If distribution of object code is made by offering access to copy from a designated place, then offering equivalent access to copy the source code from the same place satisfies the requirement to distribute the source code, even though third parties are not compelled to copy the source along with the object code. 5. A program that contains no derivative of any portion of the Library, but is designed to work with the Library by being compiled or linked with it, is called a "work that uses the Library". Such a work, in isolation, is not a derivative work of the Library, and therefore falls outside the scope of this License. However, linking a "work that uses the Library" with the Library creates an executable that is a derivative of the Library (because it contains portions of the Library), rather than a "work that uses the library". The executable is therefore covered by this License. Section 6 states terms for distribution of such executables. When a "work that uses the Library" uses material from a header file that is part of the Library, the object code for the work may be a derivative work of the Library even though the source code is not. Whether this is true is especially significant if the work can be linked without the Library, or if the work is itself a library. The threshold for this to be true is not precisely defined by law. If such an object file uses only numerical parameters, data structure layouts and accessors, and small macros and small inline functions (ten lines or less in length), then the use of the object file is unrestricted, regardless of whether it is legally a derivative work. (Executables containing this object code plus portions of the Library will still fall under Section 6.) Otherwise, if the work is a derivative of the Library, you may distribute the object code for the work under the terms of Section 6. Any executables containing that work also fall under Section 6, whether or not they are linked directly with the Library itself. 6. As an exception to the Sections above, you may also combine or link a "work that uses the Library" with the Library to produce a work containing portions of the Library, and distribute that work under terms of your choice, provided that the terms permit modification of the work for the customer's own use and reverse engineering for debugging such modifications. You must give prominent notice with each copy of the work that the Library is used in it and that the Library and its use are covered by this License. You must supply a copy of this License. If the work during execution displays copyright notices, you must include the copyright notice for the Library among them, as well as a reference directing the user to the copy of this License. Also, you must do one of these things: a) Accompany the work with the complete corresponding machine-readable source code for the Library including whatever changes were used in the work (which must be distributed under Sections 1 and 2 above); and, if the work is an executable linked with the Library, with the complete machine-readable "work that uses the Library", as object code and/or source code, so that the user can modify the Library and then relink to produce a modified executable containing the modified Library. (It is understood that the user who changes the contents of definitions files in the Library will not necessarily be able to recompile the application to use the modified definitions.) b) Use a suitable shared library mechanism for linking with the Library. A suitable mechanism is one that (1) uses at run time a copy of the library already present on the user's computer system, rather than copying library functions into the executable, and (2) will operate properly with a modified version of the library, if the user installs one, as long as the modified version is interface-compatible with the version that the work was made with. c) Accompany the work with a written offer, valid for at least three years, to give the same user the materials specified in Subsection 6a, above, for a charge no more than the cost of performing this distribution. d) If distribution of the work is made by offering access to copy from a designated place, offer equivalent access to copy the above specified materials from the same place. e) Verify that the user has already received a copy of these materials or that you have already sent this user a copy. For an executable, the required form of the "work that uses the Library" must include any data and utility programs needed for reproducing the executable from it. However, as a special exception, the materials to be distributed need not include anything that is normally distributed (in either source or binary form) with the major components (compiler, kernel, and so on) of the operating system on which the executable runs, unless that component itself accompanies the executable. It may happen that this requirement contradicts the license restrictions of other proprietary libraries that do not normally accompany the operating system. Such a contradiction means you cannot use both them and the Library together in an executable that you distribute. 7. You may place library facilities that are a work based on the Library side-by-side in a single library together with other library facilities not covered by this License, and distribute such a combined library, provided that the separate distribution of the work based on the Library and of the other library facilities is otherwise permitted, and provided that you do these two things: a) Accompany the combined library with a copy of the same work based on the Library, uncombined with any other library facilities. This must be distributed under the terms of the Sections above. b) Give prominent notice with the combined library of the fact that part of it is a work based on the Library, and explaining where to find the accompanying uncombined form of the same work. 8. You may not copy, modify, sublicense, link with, or distribute the Library except as expressly provided under this License. Any attempt otherwise to copy, modify, sublicense, link with, or distribute the Library is void, and will automatically terminate your rights under this License. However, parties who have received copies, or rights, from you under this License will not have their licenses terminated so long as such parties remain in full compliance. 9. You are not required to accept this License, since you have not signed it. However, nothing else grants you permission to modify or distribute the Library or its derivative works. These actions are prohibited by law if you do not accept this License. Therefore, by modifying or distributing the Library (or any work based on the Library), you indicate your acceptance of this License to do so, and all its terms and conditions for copying, distributing or modifying the Library or works based on it. 10. Each time you redistribute the Library (or any work based on the Library), the recipient automatically receives a license from the original licensor to copy, distribute, link with or modify the Library subject to these terms and conditions. You may not impose any further restrictions on the recipients' exercise of the rights granted herein. You are not responsible for enforcing compliance by third parties with this License. 11. If, as a consequence of a court judgment or allegation of patent infringement or for any other reason (not limited to patent issues), conditions are imposed on you (whether by court order, agreement or otherwise) that contradict the conditions of this License, they do not excuse you from the conditions of this License. If you cannot distribute so as to satisfy simultaneously your obligations under this License and any other pertinent obligations, then as a consequence you may not distribute the Library at all. For example, if a patent license would not permit royalty-free redistribution of the Library by all those who receive copies directly or indirectly through you, then the only way you could satisfy both it and this License would be to refrain entirely from distribution of the Library. If any portion of this section is held invalid or unenforceable under any particular circumstance, the balance of the section is intended to apply, and the section as a whole is intended to apply in other circumstances. It is not the purpose of this section to induce you to infringe any patents or other property right claims or to contest validity of any such claims; this section has the sole purpose of protecting the integrity of the free software distribution system which is implemented by public license practices. Many people have made generous contributions to the wide range of software distributed through that system in reliance on consistent application of that system; it is up to the author/donor to decide if he or she is willing to distribute software through any other system and a licensee cannot impose that choice. This section is intended to make thoroughly clear what is believed to be a consequence of the rest of this License. 12. If the distribution and/or use of the Library is restricted in certain countries either by patents or by copyrighted interfaces, the original copyright holder who places the Library under this License may add an explicit geographical distribution limitation excluding those countries, so that distribution is permitted only in or among countries not thus excluded. In such case, this License incorporates the limitation as if written in the body of this License. 13. The Free Software Foundation may publish revised and/or new versions of the Lesser General Public License from time to time. Such new versions will be similar in spirit to the present version, but may differ in detail to address new problems or concerns. Each version is given a distinguishing version number. If the Library specifies a version number of this License which applies to it and "any later version", you have the option of following the terms and conditions either of that version or of any later version published by the Free Software Foundation. If the Library does not specify a license version number, you may choose any version ever published by the Free Software Foundation. 14. If you wish to incorporate parts of the Library into other free programs whose distribution conditions are incompatible with these, write to the author to ask for permission. For software which is copyrighted by the Free Software Foundation, write to the Free Software Foundation; we sometimes make exceptions for this. Our decision will be guided by the two goals of preserving the free status of all derivatives of our free software and of promoting the sharing and reuse of software generally. NO WARRANTY 15. BECAUSE THE LIBRARY IS LICENSED FREE OF CHARGE, THERE IS NO WARRANTY FOR THE LIBRARY, TO THE EXTENT PERMITTED BY APPLICABLE LAW. EXCEPT WHEN OTHERWISE STATED IN WRITING THE COPYRIGHT HOLDERS AND/OR OTHER PARTIES PROVIDE THE LIBRARY "AS IS" WITHOUT WARRANTY OF ANY KIND, EITHER EXPRESSED OR IMPLIED, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE. THE ENTIRE RISK AS TO THE QUALITY AND PERFORMANCE OF THE LIBRARY IS WITH YOU. SHOULD THE LIBRARY PROVE DEFECTIVE, YOU ASSUME THE COST OF ALL NECESSARY SERVICING, REPAIR OR CORRECTION. 16. IN NO EVENT UNLESS REQUIRED BY APPLICABLE LAW OR AGREED TO IN WRITING WILL ANY COPYRIGHT HOLDER, OR ANY OTHER PARTY WHO MAY MODIFY AND/OR REDISTRIBUTE THE LIBRARY AS PERMITTED ABOVE, BE LIABLE TO YOU FOR DAMAGES, INCLUDING ANY GENERAL, SPECIAL, INCIDENTAL OR CONSEQUENTIAL DAMAGES ARISING OUT OF THE USE OR INABILITY TO USE THE LIBRARY (INCLUDING BUT NOT LIMITED TO LOSS OF DATA OR DATA BEING RENDERED INACCURATE OR LOSSES SUSTAINED BY YOU OR THIRD PARTIES OR A FAILURE OF THE LIBRARY TO OPERATE WITH ANY OTHER SOFTWARE), EVEN IF SUCH HOLDER OR OTHER PARTY HAS BEEN ADVISED OF THE POSSIBILITY OF SUCH DAMAGES. END OF TERMS AND CONDITIONS How to Apply These Terms to Your New Libraries If you develop a new library, and you want it to be of the greatest possible use to the public, we recommend making it free software that everyone can redistribute and change. You can do so by permitting redistribution under these terms (or, alternatively, under the terms of the ordinary General Public License). To apply these terms, attach the following notices to the library. It is safest to attach them to the start of each source file to most effectively convey the exclusion of warranty; and each file should have at least the "copyright" line and a pointer to where the full notice is found. Copyright (C) This library is free software; you can redistribute it and/or modify it under the terms of the GNU Lesser General Public License as published by the Free Software Foundation; either version 2.1 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 Lesser General Public License for more details. You should have received a copy of the GNU Lesser General Public License along with this library; if not, write to the Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA Also add information on how to contact you by electronic and paper mail. You should also get your employer (if you work as a programmer) or your school, if any, to sign a "copyright disclaimer" for the library, if necessary. Here is a sample; alter the names: Yoyodyne, Inc., hereby disclaims all copyright interest in the library `Frob' (a library for tweaking knobs) written by James Random Hacker. , 1 April 1990 Ty Coon, President of Vice That's all there is to it! Gnome2-1.046/MANIFEST.SKIP0000644000175000017500000000016312542061635013163 0ustar lacklack~$ \.bak$ blib \.bs$ build \.c$ \.git \.gitigore$ Makefile$ Makefile\.old$ MYMETA.* \.o$ \.spec$ \.sw.$ \.tar\.gz$ Gnome2-1.046/MANIFEST0000644000175000017500000000325212542062376012423 0ustar lacklackAUTHORS ChangeLog.pre-git Gnome2.pm LICENSE MANIFEST This list of files MANIFEST.SKIP META.yml Makefile.PL NEWS README TODO copyright.pod doctypes examples/druid.pl examples/session-management.pl gnome.typemap gnome2perl.h maps perl-Gnome2.doap perl-Gnome2.spec.in podifyenums.pl t/Gnome.t t/GnomeApp.t t/GnomeAppBar.t t/GnomeAppHelper.t t/GnomeClient t/GnomeColorPicker.t t/GnomeConfig.t t/GnomeDateEdit.t t/GnomeDruid.t t/GnomeEntry.t t/GnomeFileEntry.t t/GnomeFontPicker.t t/GnomeHRef.t t/GnomeHelp t/GnomeI18N.t t/GnomeIconEntry.t t/GnomeIconList.t t/GnomeIconSelection.t t/GnomeIconTheme.t t/GnomePasswordDialog.t t/GnomePixmapEntry.t t/GnomePopupMenu.t t/GnomeProgram.t t/GnomeScore t/GnomeScores.t t/GnomeSound t/GnomeThumbnail.t t/GnomeURL t/GnomeUtil.t t/TestBoilerplate xs/BonoboDock.xs xs/BonoboDockItem.xs xs/Gnome2.xs xs/GnomeAbout.xs xs/GnomeApp.xs xs/GnomeAppBar.xs xs/GnomeAppHelper.xs xs/GnomeClient.xs xs/GnomeColorPicker.xs xs/GnomeConfig.xs xs/GnomeDateEdit.xs xs/GnomeDruid.xs xs/GnomeDruidPage.xs xs/GnomeDruidPageEdge.xs xs/GnomeDruidPageStandard.xs xs/GnomeEntry.xs xs/GnomeFileEntry.xs xs/GnomeFontPicker.xs xs/GnomeGConf.xs xs/GnomeHRef.xs xs/GnomeHelp.xs xs/GnomeI18N.xs xs/GnomeIconEntry.xs xs/GnomeIconList.xs xs/GnomeIconLookup.xs xs/GnomeIconSelection.xs xs/GnomeIconTextItem.xs xs/GnomeIconTheme.xs xs/GnomeInit.xs xs/GnomeModuleInfo.xs xs/GnomePasswordDialog.xs xs/GnomePixmapEntry.xs xs/GnomePopupMenu.xs xs/GnomeProgram.xs xs/GnomeScore.xs xs/GnomeScores.xs xs/GnomeSound.xs xs/GnomeThumbnail.xs xs/GnomeUIDefs.xs xs/GnomeURL.xs xs/GnomeUtil.xs xs/GnomeWindow.xs xs/GnomeWindowIcon.xs META.json Module JSON meta-data (added by MakeMaker) Gnome2-1.046/gnome2perl.h0000644000175000017500000000266412542061635013520 0ustar lacklack/* * Copyright (C) 2003 by the gtk2-perl team (see the file AUTHORS) * * This library is free software; you can redistribute it and/or * modify it under the terms of the GNU Lesser General Public * License as published by the Free Software Foundation; either * version 2.1 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 * Lesser General Public License for more details. * * You should have received a copy of the GNU Lesser General Public * License along with this library; if not, write to the Free Software * Foundation, Inc., * 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA * * $Id$ */ #ifndef _GNOME2PERL_H_ #define _GNOME2PERL_H_ #include #include #undef _ /* gnome and perl disagree on this one */ #include #include #include #include "gnome2perl-versions.h" #include "gnome2perl-autogen.h" GnomeUIInfo *SvGnomeUIInfo (SV *sv); void gnome2perl_parse_uiinfo_sv (SV * sv, GnomeUIInfo * info); GnomeUIInfo * gnome2perl_svrv_to_uiinfo_tree (SV* sv, char * name); void gnome2perl_refill_infos (SV *data, GnomeUIInfo *infos); void gnome2perl_refill_infos_popup (SV *data, GnomeUIInfo *info); #endif /* _GNOME2PERL_H_ */ Gnome2-1.046/META.yml0000644000175000017500000000213312542062376012540 0ustar lacklack--- abstract: 'Perl interface to the 2.x series of the GNOME libraries' author: - 'Gnome2 Perl Team ' build_requires: ExtUtils::MakeMaker: '0' configure_requires: ExtUtils::Depends: '0.20' ExtUtils::MakeMaker: '0' ExtUtils::PkgConfig: '1.03' Glib: '1.04' Gnome2::Canvas: '1.00' Gnome2::VFS: '1.00' Gtk2: '1.00' dynamic_config: 1 generated_by: 'ExtUtils::MakeMaker version 7.04, CPAN::Meta::Converter version 2.140640' license: lgpl meta-spec: url: http://module-build.sourceforge.net/META-spec-v1.4.html version: '1.4' name: Gnome2 no_index: directory: - t - inc file: - inc/MakeHelper.pm requires: ExtUtils::Depends: '0.20' ExtUtils::PkgConfig: '1.03' Glib: '1.04' Gnome2::Canvas: '1.00' Gnome2::VFS: '1.00' Gtk2: '1.00' resources: MailingList: https://mail.gnome.org/mailman/listinfo/gtk-perl-list bugtracker: http://rt.cpan.org/Public/Dist/Display.html?Name=Gnome2 homepage: http://gtk2-perl.sourceforge.net license: http://www.gnu.org/licenses/lgpl-2.1.html repository: git://git.gnome.org/perl-Gnome2 version: '1.046' Gnome2-1.046/ChangeLog.pre-git0000644000175000017500000017042512542061635014416 0ustar lacklack=== ChangeLog discontinued === With the move to git, we stop maintaining a separate ChangeLog and rely on proper commit messages instead. Web view of changes: . 2007-08-13 kaffeetisch * Gnome2.pm * NEWS: Stable release 1.042. 2007-08-13 kaffeetisch * t/GnomeProgram.t * xs/GnomeProgram.xs: Special-case GNOME_CLIENT_PARAM_SM_CONNECT in the xsub for gnome_program_connect. It's not yet installed in the type system when we try to lookup the types of the passed in properties. 2006-12-30 kaffeetisch * Gnome2.pm, NEWS: Stable release 1.041. 2006-12-30 kaffeetisch * t/GnomeUtil.t: Fix a test failure. 2006-10-03 kaffeetisch * Gnome2.pm: Fix a POD error. 2006/03/12 kaffeetisch * Gnome2.pm, NEWS, README: Stable release 1.040. 2005/12/12 kaffeetisch * Gnome2.pm, NEWS: Unstable release 1.030. 2005/10/08 kaffeetisch * t/GnomeDateEdit.t: Use is_deeply() on a flags value. * t/GnomeIconList.t: Realize the list to avoid thousands of warnings. * t/GnomeIconTheme.t: Fix a failure reported by ultradm at cpan dot org. 2005/06/23 kaffeetisch * Gnome2.pm, Makefile.PL, META.yml, NEWS: Version 1.022. 2005/06/22 kaffeetisch * t/GnomeDateEdit.t: Use is() instead of is_deeply() to test flags values since the latter was changed to always use the string version of overloaded objects in recent versions of Test::More, whereas the former seems to work correctly. Tested with Test::More 0.45 and 0.60. 2005/06/06 kaffeetisch * genmaps.pl, MANIFEST: Remove the old lad genmaps.pl since it's unused nowadays. * Gnome2.pm, META.yml, NEWS: Version 1.022. 2005/05/29 kaffeetisch * t/GnomeDateEdit.t: Remove the TODO around a test that previously failed due to the now resolved Test::More bug. * t/GnomeIconList.t: Skip all tests as GnomeIconList seems to be broken right now. * t/GnomeThumbnail.t: Skip tests if yes.xpm can't be found. 2005/03/06 kaffeetisch * Gnome2.pm, META.yml, NEWS, README: Version 1.021. 2005/03/06 kaffeetisch * t/GnomeDateEdit.t: Mark failing test as TODO till we have a solution for the Test::More issue. 2005/02/10 22:15 (+0100) kaffeetisch * Gnome2.pm: Do it like all the other cool kids and alter dl_load_flags() to avoid warnings on Darwin. 2004/10/24 11:55 (-0400) rwmcfa1 * MANIFEST.SKIP: updates * perl-Gnome2.spec.in: new scheme that addresses x86_64 problems found by Carl Nygard 2004/09/14 00:08 (+0200) kaffeetisch * t/GnomeIconList.t, t/GnomePasswordDialog.t, t/GnomeProgram.t, xs/Gnome2.xs, xs/GnomeIconList.xs, xs/GnomePasswordDialog.xs, xs/GnomeProgram.xs: Make all version checks refer to stable releases. * Gnome2.pm, NEWS: Version 1.020. 2004/08/29 20:00 (+0200) kaffeetisch * Gnome2.pm, NEWS: Version 1.014. 2004/08/28 13:55 (+0200) kaffeetisch * t/GnomePasswordDialog.t, xs/Gnome2.xs: Bind and test the newly added gnome_authentication_manager_dialog_is_visible. 2004/08/23 21:05 (+0200) kaffeetisch * MANIFEST, Makefile.PL, podifyenums.pl: Patch from Kevin C. Krinke adds code to generate Gnome2::enum -- a list of all enum and flag values. 2004/08/13 10:27 (+0200) kaffeetisch * Gnome2.pm, NEWS: Version 1.013. 2004/08/13 10:19 (+0200) kaffeetisch * t/GnomeProgram.t, xs/GnomeProgram.xs: If available, use the new gnome_program_init_paramv to wrap gnome_program_init properly. 2004/07/19 12:51 (+0200) kaffeetisch * Gnome2.pm, NEWS: Version 1.012. 2004/07/18 19:44 (+0200) kaffeetisch A t/GnomeSound * MANIFEST: Add a test for GnomeSound. It's not run during make test though, because we can't be sure there's a sound server running. * t/GnomeConfig.t: Test drop_all. * t/GnomeIconList.t: Test icon_is_visible and get_icon_at. * t/GnomeThumbnail.t: Use a version check for has_uri and is_valid instead of the unconditional skip now that the bug has been fixed. * t/GnomePasswordDialog.t * xs/GnomePasswordDialog.xs: Bind and test set_show_userpass_buttons and anon_selected. * xs/GnomeColorPicker.xs * xs/GnomeEntry.xs * xs/GnomeFontPicker.xs * xs/GnomeIconTheme.xs * xs/GnomePopupMenu.xs: Add #undef GNOME_DISABLE_DEPRECATED to stuff that was deprecated after we wrapped it. 2004/06/28 19:35 (+0200) kaffeetisch * Gnome2.pm * NEWS * README: Version 1.011. 2004/06/14 19:35 (+0200) kaffeetisch * t/GnomeDruid.t: Test the fixed set_contents_background, now that the properties were added. * t/GnomeIconList.t * xs/GnomeIconList.xs: Bind and test select_all. 2004/05/29 18:39 (+0200) kaffeetisch * Gnome2.pm * NEWS: Unstable version 1.010. 2004/05/28 23:58 (+0200) kaffeetisch * Gnome2.pm: Actually use() Gnome2::Canvas so users of Gnome2 are not required to do so themselves. 2004/05/28 13:12 (+0200) kaffeetisch * t/GnomeIconTheme.t: Use the gnome-fs-directory icon. 2004/05/22 17:50 (+0200) kaffeetisch * t/GnomeIconTheme.t: Check if the icon data is a hash reference. 2004/05/21 16:08 (+0200) kaffeetisch * xs/GnomeAppHelper.xs: Make gnome2perl_popup_menu_activate_func, gnome2perl_popup_menu_activate_func_destroy, gnome2perl_refill_info_common, gnome2perl_refill_info, gnome2perl_refill_info_popup, and ui_builder_data static. * xs/GnomeConfig.xs: Make SvGnomeConfigIterator and newSVGnomeConfigIterator static. * xs/GnomeIconList.xs: Make newSVGnome2PerlIconListFlags static and comment it out, it's unused. * xs/GnomeIconTheme.xs: Rename data_to_hv to newSVGnomeIconData, make it static and let it handle the RV creation. Make SvGnomeIconData static and comment it out -- it's not used currently. * xs/GnomeProgram.xs: Make handle_module_info static. * xs/GnomeWindowIcon.xs: Make newSVGnomeCharArray static. Merge from the stable-1-00 branch: * xs/GnomeIconTheme.xs (data_to_hv): Check if display_name is NULL before using it. * xs/GnomeIconLookup.xs * xs/GnomeIconTheme.xs * xs/GnomePasswordDialog.xs * xs/GnomeThumbnail.xs: Mark 'file' unused in case there are no xsubs at all. 2004/05/16 17:46 (+0200) kaffeetisch * t/GnomeThumbnail.t: Correct skip count. 2004/04/27 20:45 (+0200) kaffeetisch Merge from the stable-1-00 branch: * Makefile.PL: Add Gnome2::Canvas to PREREQ_PM as well so that it (hopefully) gets picked up by CPAN(PLUS).pm. 2004/04/25 13:38 (+0200) kaffeetisch * t/GnomeDruid.t: Add reference to the relevant bug to the set_contents_background comment. * t/GnomeThumbnail.t: Test has_uri and is_valid but skip them for now since they're broken. 2004/03/29 19:55 (+0200) kaffeetisch * Gnome2.pm * Makefile.PL * NEWS * README: Version 1.00. * t/GnomeConfig.t * t/GnomeEntry.t * t/GnomeIconEntry.t * t/GnomePasswordDialog.t * xs/Gnome2.xs * xs/GnomeHelp.xs * xs/GnomeIconEntry.xs * xs/GnomePasswordDialog.xs * xs/GnomeURL.xs: Refer to stable releases only. 2004/03/11 16:17 (+0100) kaffeetisch * Gnome2.pm * Makefile.PL * NEWS * README: Version 0.94. * Gnome2.pm: Provide an import() implementation that relays everything to UNIVERSAL::VERSION to make version checking work. * xs/GnomeHelp.xs * xs/GnomeURL.xs: Use the new __gerror__ keyword to mark those functions that may croak on error. 2004/03/02 05:06 (+0100) kaffeetisch * Gnome2.pm: Document the recent API changes. A NEWS * Gnome2.pm * MANIFEST * README: Version 0.93. 2004/03/02 04:34 (+0100) kaffeetisch * xs/GnomeApp.xs * xs/GnomeAppHelper.xs * xs/GnomeClient.xs * xs/GnomeConfig.xs * xs/GnomeDruid.xs * xs/GnomeInit.xs * xs/GnomeModuleInfo.xs * xs/GnomeUIDefs.xs: Rearrange ALIAS sections to avoid unneeded xsubs. 2004/03/02 03:35 (+0100) kaffeetisch * t/GnomeConfig.t * t/GnomeEntry.t * t/GnomeIconEntry.t * t/GnomeIconTheme.t * t/GnomePasswordDialog.t * t/GnomeThumbnail.t * xs/Gnome2.xs: Stick to the new version information policy: Uppercase names for compile time related functions. * xs/GnomeAppHelper.xs: Don't use ALIAS 0 as a way to override an xsub's name. Do it properly instead. * xs/GnomeClient.xs: Free the return value of gnome_client_get_global_config_prefix. * xs/GnomeConfig.xs: Remove a now invalid FIXME comment. * maps * t/GnomePasswordDialog.t * xs/GnomePasswordDialog.xs: Bind and test API that was added in 2.5.1: set_show_username, set_show_domain, set_show_password, set_domain, set_readonly_domain, set_show_remember, set_remember, get_remember, and get_domain. * t/GnomePopupMenu.t * xs/GnomePopupMenu.xs: Change the binding for gnome_popup_menu_append to Gtk2::Menu::append_from. This is necessary to avoid a collision with gtk_menu_append. Applications using Gtk2::Menu::append and expecting to get gnome_popup_menu_append will have to be changed. 2004/02/15 13:32 (-0500) rwmcfa1 * Makefile.PL, perl-Gnome2.spec.in: fixed some of the dependancies, added Gnome2-VFS, Gnome2-Canvas to the spec file and the postable_rpms. 2004/02/12 19:55 (+0100) kaffeetisch * Gnome2.pm * Makefile.PL * README: Version 0.92. 2004/02/12 19:21 (+0100) kaffeetisch * t/GnomeIconTheme.t: Only test if get_search_path returned something defined. * t/GnomeProgram.t: Use properties that are not construct-only to work around the problem for now. * t/GnomePopupMenu.t * xs/GnomePopupMenu.xs: Change the binding for gnome_popup_menu_attach to Gtk2::Menu::attach_to. 2004/02/11 02:02 (+0100) kaffeetisch * Makefile.PL * xs/GnomeProgram.xs * t/GnomeProgram.t: Use and test the new GPerlArgv helper. 2004/02/10 19:01 (+0100) kaffeetisch * t/GnomeConfig.t: Re-enable the get_float_with_default test, with skips. The relevant bug has been fixed in libgnomeui 2.5.4. * t/GnomeIconSelection.t: Don't check the return value of get_icon, there seems to be no way to predict it. 2004/02/10 17:01 (+0100) kaffeetisch Applying a patch from muppet. A copyright.pod A doctypes * MANIFEST * Makefile.PL * gnome2perl.h: Use the new features of ExtUtils::Depends and ExtUtils::PkgConfig. Depend on Gnome2::Canvas. Use 'gnome2perl-versions.h' for the version macros. 2004/01/27 19:40 (+0100) kaffeetisch * t/GnomeClient: Use the correct Gnome2::Client->interaction_key_return syntax. * xs/GnomeAppHelper.xs: Mark ix unused in some places. * xs/GnomeClient.xs * xs/GnomeUtil.xs: Avoid creating two xsubs with ALIAS when we really only want one. * gnome2perl.h * xs/GnomeWindow.xs: Remove some apparently unneeded #include's. 2004/01/26 01:47 (-0500) muppetman * xs/GnomeWindow.xs: bad muppet, that should've been #undef GNOME_DISABLE_DEPRECATED. 2004/01/25 23:26 (-0500) muppetman * xs/GnomeClient.xs, xs/GnomeUtil.xs: hush unused var warnings * xs/GnomeWindow.xs: #define GNOME_DISABLE_DEPRECATED, so gnome_window_toplevel_set_title() is defined at compile time. (it was deprecated in october of '03.) 2004/01/24 21:44 (-0500) rwmcfa1 * Makefile.PL: removed runtime_reqs stuff, replaced by the pkg-config trick * perl-Gnome2.spec.in: use pkg-config for Requires version 2004/01/14 18:16 (-0500) muppetman * t/GnomePasswordDialog.t: GnomePasswordDialog and GnomeAuthenticationManager didn't appear until 2.3.6, use version guards to skip tests on older releases. 2003/12/31 11:45 (+0100) kaffeetisch * xs/BonoboDockItem.xs: Remove functions that weren't supposed to be bound in the first place (namely set_lock, detach, attach, unfloat, grab_pointer, drag_floating, handle_size_request, get_floating_position, and get_grip). That also hushes compiler warnings. Thanks to muppet for catching this. 2003/12/31 02:10 (-0500) muppetman more warnings fixes: * xs/GnomeApp.xs, xs/GnomeConfig.xs, xs/GnomeDruid.xs, xs/GnomeInit.xs, xs/GnomeModuleInfo.xs, xs/GnomeUIDefs.xs: don't let RETVAL be used uninitialized in alias switches. * xs/Gnome2.xs: mark ax unused in functions which don't touch the input stack, to hush compiler warnings * xs/GnomeScore.xs: return type on PPCODE xsubs must be void. 2003/12/29 16:32 (-0500) rwmcfa1 * perl-Gnome2.spec.in: use the new DATE replacement in conjunction with VERSION to create the changlog on the fly, which is better. 2003/12/22 23:54 (-0500) muppetman * xs/GnomeConfig.xs: initialize variables to avoid 'may be used uninitialized' warnings in functions with alias switches. it's not likely that we'll trigger them, but it's nice to shut them up. 2003/12/22 18:07 (-0500) rwmcfa1 * Makefile.PL: removed a type-o do_pod_files. 2003/12/20 19:58 (+0100) kaffeetisch * t/GnomeConfig.t: Add a TODO comment about a bug in libgnome. 2003/12/19 18:18 (+0100) kaffeetisch * gnome2perl.h * xs/GnomeHelp.xs * xs/GnomeURL.xs: Rename SvGnomeCharArray to SvEnvArray and move it to Gnome2-VFS. 2003/12/18 22:13 (+0100) kaffeetisch * Gnome2.pm: Mention Gnome2::index. 2003/12/16 00:02 (+0100) kaffeetisch * xs/GnomeConfig.xs * xs/GnomeI18N.xs * xs/GnomeIconLookup.xs * xs/GnomeIconTheme.xs * xs/GnomeProgram.xs: Add API documentation. 2003/12/15 01:12 (+0100) kaffeetisch A t/TestBoilerplate * t/*: Put some boilerplate code into an external file. Skip most tests if Gtk2->init_check fails. * README: Reformat slightly. * Gnome2.pm * META.yml: Bump version to 0.90. 2003/12/14 20:48 (+0100) kaffeetisch * xs/GnomeAppHelper.xs: In the custom marshaller for GnomePopupMenu callbacks, don't use GPERL_CALLBACK_MARSHAL_INIT on callback because it would try to access callback->priv, which doesn't exist since callback is a plain SV. 2003/12/14 05:37 (+0100) kaffeetisch * xs/GnomeAppHelper.xs * xs/GnomePopupMenu.xs: Use custom marshalling for all callbacks specified in GnomeUIInfo's used from GnomePopupMenu. In addition to making callbacks work, this even solves the user data problem in GnomePopupMenu. Many thanks to muppet for this great idea. * t/GnomePopupMenu.t: Add some user data and callback bits to test our new toys. 2003/12/13 23:41 (+0100) kaffeetisch * t/GnomeConfig.t * xs/GnomeConfig.xs: Implement and test iterators. 2003/12/13 21:35 (+0100) kaffeetisch * t/GnomeAppHelper.t: Change the callback tests so that it's easy to know if they were actually called. Make the install_menu_hints tests work. * gnome2perl.h * xs/GnomeAppHelper.xs: List all helper functions here. Prefix them with "gnome2perl_". * xs/GnomeAppHelper.xs: Store and restore the "widget" member of GnomeUIInfo's if it exists. Use GNOME2PERL_WIDGET_ARRAY_INDEX instead of the last used index + 1 for the widget's array index. Allow GNOME_APP_UI_ITEM_CONFIGURABLE to have callbacks. If there is a callback, arrange for it to be invisible to the C backend -- otherwise the SV would be stored and later used as if it were a function pointer, thus causing a segfault. Use a global GnomeUIBuilderData instead of a separate one for every function. * xs/GnomeAppHelper.xs * xs/GnomePopupMenu.xs: Refill the GnomeUIInfo's used here so that we can warn about callbacks not working currently. 2003/12/12 23:26 (+0100) kaffeetisch * TODO: Removed reference to gnome-ui-init. It's bound. * README: Mention Gnome2::VFS as a dependency. Remove license boilerplate. 2003/12/12 03:35 (+0100) kaffeetisch * xs/GnomeIconList.xs: Cast the return value of gnome_icon_list_get_icon_pixbuf_item to silence the compiler. * t/GnomeConfig.t * xs/GnomeConfig.xs: Implement and test vector setters and getters. * t/GnomeDruid.t * xs/GnomeDruidPageStandard.xs: Add and test an accessor for the vbox member. (Thanks to Gustavo Noronha Silva for discovering it and to muppet for providing a patch.) 2003/12/12 00:38 (+0100) kaffeetisch * xs/GnomeDruidPageEdge.xs * xs/GnomeDruidPageStandard.xs: Use GdkPixbuf_ornull for the logo and watermark arguments in the new_with_vals constructors so that you can actually omit and/or pass undef for them. Makes examples/druid.pl work again. 2003/12/10 22:08 (+0100) kaffeetisch R t/GnomeClientReal A examples/session-management.pl * MANIFEST: Completely revamp the "real world" GnomeClient test case and move it to the examples directory. * xs/GnomeClient.xs: Remove a FIXME comment. * TODO: Update to reflect presence: GnomeClient, GnomeIconLookup and libvte are bound and the GNOME stock icons work. 2003/12/10 02:02 (+0100) kaffeetisch A t/GnomeConfig.t A xs/GnomeConfig.xs * MANIFEST: Implement and test GnomeConfig. 2003/12/10 00:54 (+0100) kaffeetisch A xs/GnomeWindowIcon.xs * t/Gnome.t * MANIFEST: Implement and test GnomeWindowIcon. * t/GnomeIconSelection.t: Add /usr/share/pixmaps to the search path as recent libgnomeui's don't seem to do it anymore. 2003/12/09 15:41 (-0500) muppetman * Makefile.PL: a little bit churn on the pkg-config names, so we can get info on and create version guard macros for libgnome and whatever else. * xs/GnomeHelp.xs, xs/GnomeURL.xs: the _with_env functions didn't exist until libgnome 2.2.1; use version guards to avoid missing symbols. 2003/12/04 19:02 (+0100) kaffeetisch * gnome2perl.h * t/GnomeHelp * t/GnomeURL * xs/GnomeHelp.xs * xs/GnomeURL.xs: Implement and test Gnome2::Help::display_desktop_with_env and Gnome2::URL::show_with_env. 2003/12/02 20:40 (+0100) kaffeetisch * gnome.typemap: Use T_GPERL_GENERIC_WRAPPER for GnomeUIInfo's. * gnome.typemap * t/GnomeIconList.t * xs/GnomeIconList.xs: Create and register a custom GFlags type so we can use the cool flags magician in Gnome2::IconList::new. * xs/GnomeIconTextItem.xs * xs/GnomePasswordDialog.xs: Add license boilerplate. * xs/GnomeHelp.xs * xs/GnomeURL.xs: Add FIXME comments. 2003/11/30 14:48 (+0100) kaffeetisch A xs/GnomeIconTextItem.xs * t/GnomeIconList.t * MANIFEST: Initial implementation and test for GnomeIconTextItem. * xs/GnomeIconLookup.xs: Fix critical bug in Gnome2::IconTheme::lookup that caused a segfault. * xs/GnomeIconTheme.xs: Remove needless spaces at the end of a line. 2003/11/29 17:01 (+0100) kaffeetisch * gnome2perl.h: Include bonobo/bonobo-dock.h and bonobo/bonobo-dock-item.h. 2003/11/29 09:15 (-0500) muppetman * xs/GnomeAppHelper.xs: remove unused variables. 2003/11/28 22:19 (+0100) kaffeetisch * Gnome2.pm * META.yml * README: Prepare the release of 0.49. * t/GnomePasswordDialog.t * xs/Gnome2.xs: Change the package name from Gnome2::Authentication::Manager to Gnome2::AuthenticationManager. * xs/GnomeAppHelper: Add API documentation. * xs/GnomeGConf.xs: Put API documentation into Gnome2::main so that we don't overwrite Gnome2::GConf's POD/man pages. 2003/11/26 14:37 (-0500) muppetman * gnome2perl.h * xs/GnomeAppHelper.xs: put SvGnomeUIInfo in the package header to quell compiler warnings and make sure the typechecking is correct. 2003/11/25 00:06 (+0100) kaffeetisch A t/GnomePasswordDialog.t A xs/GnomePasswordDialog.xs * MANIFEST: Initial implementation of Gnome2::PasswordDialog. R gnome2perl.typemap A gnome.typemap * MANIFEST * Makefile.PL: Rename gnome2perl.typemap to gnome.typemap to avoid that it gets overwritten by the one generated by Gtk2::CodeGen. * xs/Gnome2.xs: Implement Gnome2::Authentication::Manager::init. * Gnome2.pm * Makefile.PL * gnome2perl.h * t/GnomeIconTheme.t * xs/GnomeIconLookup.xs: Implement and test Gnome2::IconTheme::lookup. That required adding Gnome2::VFS to the dependencies. * xs/GnomeIconLookup.xs: Check and free the icon return value of gnome_icon_lookup_sync. 2003/11/21 02:15 (-0500) muppetman * xs/GnomeAppHelper.xs, xs/GnomeWindow.xs, xs/GnomePopupMenu.xs, xs/GnomeThumbnail.xs: shuffle docs around to keep from clobbering docs from other extensions. 2003/11/15 12:13 (+0100) kaffeetisch * Gnome2.pm: Add a comma. * xs/BonoboDock.xs * xs/GnomeDruid.xs * xs/GnomeIconList.xs * xs/GnomeIconLookup.xs: Add API documentation mainly for things that return lists. 2003/11/14 19:50 (+0100) kaffeetisch * xs/GnomeIconList.xs * xs/GnomeIconTheme.xs * xs/GnomeProgram.xs: Plug even more memory leaks. * xs/GnomeClient.xs: Make gnome_client_add_static_arg work. 2003/11/12 22:13 (+0100) kaffeetisch * xs/GnomeIconTheme.xs * xs/GnomeProgram.xs: Plug some memory leaks. * xs/GnomeUtil.xs: Use gchar_own instead of CLEANUP sections. 2003/11/11 00:36 (-0500) muppetman * MANIFEST, debian/*: remove the debian packaging files, since having them in the upstream dist makes it difficult for the maintainers 2003/11/09 03:22 (+0100) kaffeetisch * Makefile.PL: Require Glib 1.01. Remove const_cccmd hack. 2003/11/07 19:35 (+0100) kaffeetisch * xs/BonoboDock.xs * xs/BonoboDockItem.xs * xs/Gnome2.xs * xs/GnomeAbout.xs * xs/GnomeApp.xs * xs/GnomeAppBar.xs * xs/GnomeAppHelper.xs * xs/GnomeClient.xs * xs/GnomeColorPicker.xs * xs/GnomeDateEdit.xs * xs/GnomeDruid.xs * xs/GnomeDruidPage.xs * xs/GnomeDruidPageEdge.xs * xs/GnomeDruidPageStandard.xs * xs/GnomeEntry.xs * xs/GnomeFileEntry.xs * xs/GnomeFontPicker.xs * xs/GnomeGConf.xs * xs/GnomeHRef.xs * xs/GnomeHelp.xs * xs/GnomeI18N.xs * xs/GnomeIconEntry.xs * xs/GnomeIconList.xs * xs/GnomeIconSelection.xs * xs/GnomeIconTheme.xs * xs/GnomeInit.xs * xs/GnomeModuleInfo.xs * xs/GnomePixmapEntry.xs * xs/GnomePopupMenu.xs * xs/GnomeProgram.xs * xs/GnomeScore.xs * xs/GnomeScores.xs * xs/GnomeSound.xs * xs/GnomeThumbnail.xs * xs/GnomeUIDefs.xs * xs/GnomeURL.xs * xs/GnomeUtil.xs: Remove declarations of class variables to silence compiler warnings and make the documentation generator create correct POD. * xs/GnomeIconTheme.xs: Use "const char*" as the type of the (ignored) first_path parameter of gnome_icon_theme_set_search_path to indicate that it wants strings. * MANIFEST: druid.pl -> examples/druid.pl. Add perl-Gnome2.spec.in. 2003/11/06 10:35 (-0500) muppetman * perl-Gnome2.spec.in: dependencies were b0rken * xs/Gnome2.xs: route Gnome's log domains through perl's warn() and croak() 2003/11/03 22:40 (+0100) kaffeetisch * README: Remove FIXME comment about lack of documentation. * Gnome2.pm: Remove TODO comment. R druid.pl A examples/druid.pl: Move the druid example to a new sub directory. 2003/11/03 22:26 (+0100) kaffeetisch * xs/GnomeAppHelper.xs: Document GnomeUIInfo. * xs/GnomeIconTheme.xs * xs/GnomeProgram.xs * xs/GnomeScore.xs * xs/GnomeScores.xs: Add miscellaneous API documentation for things we handle differently from C. * xs/GnomeUIDefs.xs: Rearrange the ALIAS section. * xs/GnomeUtil.xs: Simplify house cleaning by using CLEANUP sections. 2003/11/02 14:22 (-0500) muppetman * Makefile.PL: Gtk2 and Glib have been corrected, no more silly "atleast" version checks. 2003/11/02 20:37 (+0100) kaffeetisch * xs/GnomeApp.xs * xs/GnomeAppHelper.xs * xs/GnomeClient.xs * xs/GnomeInit.xs * xs/GnomeModuleInfo.xs * xs/GnomeUIDefs.xs * xs/GnomeUtil.xs: Rearranged ALIAS numbers to start at 0 to signal to the documentation generator that the original function name shouldn't be listed. * xs/GnomeAbout.xs: Added documentation for authors and documenters parameters. * xs/GnomeClient.xs: Alias gnome_interaction_key_return to Gnome2::Client::interaction_key_return. * xs/GnomeIconList.xs: Remove FIXME comment. * xs/GnomeScore.xs * xs/GnomeIconTheme.xs: Use newRV_noinc instead of newRV_inc. Remove a FIXME comment. * t/*: Replace XXX with FIXME. * t/GnomeIconList.t: Comment out $list -> clear(). 2003/11/02 11:49 (-0500) rwmcfa1 * Makefile.PL: MakeHelper'd things, including pod generation. * xs/Gnome2.xs, xs/GnomeAppHelper.xs, xs/GnomeInit.xs: added a for object pod so that Gnome2.pm's won't be overwritten. 2003/11/01 13:21 (+0100) kaffeetisch * xs/Gnome2.xs: Implement Gnome2::check_version. * t/GnomeThumbnail.t * t/GnomeIconTheme.t * t/GnomeIconEntry.t * t/GnomeEntry.t: Use the new Gnome2::check_version. 2003/11/01 01:33 (-0500) muppetman * t/GnomeIconList.t: put in a FIXME * t/GnomeIconTheme.t: wasn't skipping enough tests * xs/GnomeIconEntry.xs: if NULL is possible on return, use _ornull. this hushes the cast warnings from t/GnomeIconEntry.t. 2003/10/31 20:09 (+0100) kaffeetisch * xs/GnomeIconTheme.xs: Use newRV_noinc instead of newRV_inc to avoid a memory leak. 2003/10/27 15:22 (+0100) ebassi * TODO: updated future bindings listing 2003/10/19 16:06 (+0200) kaffeetisch * Gnome2.pm: Correct a few mistakes. 2003/10/18 22:53 (+0200) kaffeetisch * t/GnomeIconList.t: Alter $list -> get_selection test to be more accurate. * t/GnomeIconTheme.t: Implement $theme -> list_icons test. * xs/GnomeIconList.xs * xs/GnomeIconTheme.xs * xs/GnomeProgram.xs: Don't use a temporary G(S)List in gnome_icon_list_get_selection, gnome_icon_theme_list_icons and gnome_program_locate_file. * xs/GnomeIconEntry.xs * xs/GnomeIconList.xs * xs/GnomeIconSelection.xs * xs/GnomePixmapEntry.xs: Use gchar_own instead of gchar for the return value of gnome_icon_entry_get_filename, gnome_icon_list_get_icon_filename, gnome_icon_selection_get_icon and gnome_pixmap_entry_get_filename. 2003/10/17 22:02 (+0200) kaffeetisch R t/GnomeVFSOps R t/GnomeVFSURI.t R xs/GnomeVFSInit.xs R xs/GnomeVFSOps.xs R xs/GnomeVFSURI.xs * MANIFEST * Makefile.PL * README * genmaps.pl * gnome2perl.h * gnome2perl.typemap * maps: Remove all references to GnomeVFS. It's going to get its own package. 2003/10/12 21:49 (+0200) kaffeetisch * xs/Gnome2.xs: Remove calls to UNUSED. 2003/10/09 02:42 (+0200) kaffeetisch * genmaps.pl: Make warnings and strict safe. Use descriptive variable names. Remove every reference to GnomeCanvas. 2003/10/08 00:33 (+0200) kaffeetisch * Makefile.PL: Install gnome2perl-vfs-gtypes.h. 2003/10/07 23:57 (+0200) kaffeetisch * genmaps.pl: Include xs/gnome2perl-vfs-gtypes.c when compiling the helper program. * gnome2perl.h: Declare GnomeVFSURI converters. * xs/GnomeVFSURI.xs: Add destruction handler. Call gnome_vfs_uri_relative_new instead of gnome_vfs_uri_resolve_relative when we're older than 1.9.1. Cosmetical cleanups. A t/GnomeVFSOps A xs/GnomeVFSOps.xs * MANIFEST * gnome2perl.h * gnome2perl.typemap * t/GnomeVFSURI.t: Initial partial implementation of GnomeVFSOps. The test isn't included in make test because it creates and deletes files. 2003/10/07 10:34 (-0400) muppetman * xs/GnomeVFSURI.xs: gnome-vfs-uri.h apparently gets #included via the standard gnome headers in newer releases but not in older ones. include libgnomevfs/gnome-vfs-uri.h directly to compile on gnome 2.0. 2003/10/07 03:19 (+0200) kaffeetisch * Makefile.PL: Use xs/gnome2perl-vfs-gtypes.c as the place for the GTypes for GnomeVFS. 2003/10/07 02:32 (+0200) kaffeetisch * LICENSE * Gnome2.pm * README * xs/*: Update license terms. * MANIFEST * Makefile.PL * genmaps.pl * gnome2perl.h * maps R gnomeuiinfo.typemap A gnome2perl.typemap A t/GnomeVFSURI.t A xs/GnomeVFSInit.xs A xs/GnomeVFSURI.xs: Add first parts of GnomeVFS bindings and the necessary infrastructure. 2003/10/04 16:26 (+0200) kaffeetisch * Gnome2.pm: Alter documentation to better describe Gnome2. Don't repeat what Gtk2.pm says, but rather point the reader to it. Add links to the API documentation. Add a MISSING METHODS section, a RENAMED METHODS section and a DIFFERENT CALL SIGNATURES OR SEMANTICS section. (Following Gtk2.pm's example.) 2003/10/03 16:29 (-0400) muppetman * Gnome2.pm, META.yml, README, debian/changelog: release 0.38 2003/10/01 18:45 (+0200) kaffeetisch * xs/GnomeIconTheme.xs * xs/GnomeScores.xs: Move variable declarations to the beginning of the block to make it compile on compilers that attach more importance to standards. Found by Nelis Lamprecht. 2003/09/30 15:56 (+0200) kaffeetisch * druid.pl: Use Gnome2::Program->get_program instead of ->get. * t/GnomeDruid.t: Complete GnomeDruid test. * t/GnomeEntry.t: Disable a test which would cause GConf to add a key to its DB. * xs/GnomeDruidPageEdge.xs: Provide defaults for the title, text, logo, watermark and top_watermark parameters. * xs/GnomeDruidPageStandard.xs: Provide defaults for the logo and top_watermark parameters. 2003/09/29 16:33 (+0200) kaffeetisch * xs/GnomeDateEdit.xs * t/GnomeDateEdit.t: Change gnome_date_edit_get_flags to return a proper flag value instead of a plain integer. * t/GnomeThumbnail.t: Add comment to methods that are segfaulting. 2003/09/27 01:35 (+0200) kaffeetisch * t/GnomePopupMenu.t: Re-enabled the popup code, but make it skip it if we are not running 2.2.0 (which introduced Gtk2::Gdk::Event->new) or above. 2003/09/26 16:20 (+0200) kaffeetisch * TODO: Added libbonoboui. Added explanations to gnome-config, gnome-triggers and GnomeThemeFile. * t/*: Removed unneeded main loops. Fixed comments. * t/GnomeIconList.t: Filled the skeleton. * t/GnomeProgram.t: Changed human readable program name to avoid line wrapping. * xs/GnomeHelp.xs: Comment out gnome_help_display_uri. * xs/GnomeIconTheme.xs: Removed IconData prototypes. They're not needed. A t/GnomeHelp A t/GnomeURL * MANIFEST: Initial tests. Not run by make test since they require user interaction. A xs/GnomeUtil.xs A t/GnomeUtil.t * MANIFEST: Initial implementation of GnomeUtil. 2003/09/26 04:40 (-0400) muppetman * Gnome2.pm, META.yml, README, debian/changelog: release 0.36 * Gnome2.pm: removed extraneous Exporter stuff. we export nothing, don't waste the space. add L<> to stuff in See Also. update the Authors section to reflect the fact that torsten > is da man. * t/GnomeI18N.t: removed the no-op main loop to quell strange behavior that made the test turn up "dubious". * t/GnomePopupMenu.t: there is no Gtk2::Gdk::Event->new(), so the event synthesizing code just makes the test fail. disabled for now. 2003/09/25 16:22 (+0200) kaffeetisch A t/GnomeI18N.t A xs/GnomeI18N.xs * MANIFEST * TODO: Initial implementation of GnomeI18N. A t/GnomeScore A xs/GnomeScore.xs * MANIFEST * TODO: Initial implementation of GnomeScore. The test isn't run by make test because it would require certain privileges. A xs/GnomeUIDefs.xs * t/Gnome.t * MANIFEST * TODO: Implemented GnomeUIDefs. Wow, what a PITA. * MANIFEST: Added xs/BonoboDock.xs and xs/BonoboDockItem.xs. * t/*: Use a constant for the number of tests. * xs/GnomeIconList.xs: Change comment to use /* */ instead of #. * xs/GnomeProgram.xs * t/GnomeProgram.t: Rename Gnome2::Program->get to Gnome2::Program->get_program to avoid clash with Glib::Object->get. 2003/09/24 19:10 (+0200) kaffeetisch * t/GnomeApp.t * t/GnomeAppBar.t: Fix indention. * t/GnomeIconTheme.t: Use undef instead of "". * xs/GnomeIconList.xs: Added FIXME comment. A xs/GnomeHelp.xs A xs/GnomeURL.xs * TODO: Initial implementation of GnomeHelp and GnomeURL. No tests since they can't be tested without user interaction. 2003/09/23 09:26 rwmcfa1 * t/GnomeIconTheme.t: return value of test #2 is an array, have to catch it as such or else we'll get only the flags which on my system is empty and thus the test fails. now check that we get a 2 element array back and that the first element is defined. 2003/09/23 13:38 (+0200) kaffeetisch * t/GnomeIconTheme.t: Altered test #2 to only check whether the return value is defined. 2003/09/22 09:26 rwmcfa1 * t/GnomeIconEntry.t: set_max_saved does not exist til after 2.3.3 so don't call it unless we can. 2003/09/21 20:19 rwmcfa1 * Makefile.PL: fixed bug in specfile generation 2003/09/21 20:13 kaffeetisch * xs/GnomeIconLookup.xs: Allow undef to be passed for the cutom_icon parameter to gnome_icon_lookup_sync. 2003/09/21 19:55 kaffeetisch * TODO: Remove GnomePixmap. It's deprecated. * t/GnomeClient * t/GnomeClienReal: Fix indention. * xs/GnomeClient.xs: Fix gnome_client_request_interaction. Should work now, but doesn't. 2003/09/21 18:24 kaffeetisch * xs/GnomeIconTheme.xs: Free strdup'ed strings. 2003/09/21 17:46 kaffeetisch * Makefile.PL: Use libbonoboui instead of libbonobo as the hash key to generate correct macros. * xs/Gnome2.xs: Implement gnome_get_version_info and bonobo_get_version_info. * t/GnomeEntry.t * t/GnomeIconTheme.t * t/GnomeThumbnail.t: Use the new version methods to find out if certain tests are to be skipped. 2003/09/21 11:00 muppetman * Makefile.PL, gnome2perl.h: add a slight hack to generate version- checking macros a la GTK_CHECK_VERSION for the libraries that don't do that for us. * xs/GnomeIconEntry.xs: use the shiny new LIBGNOMEUI_CHECK_VERSION() to avoid trying to compile gnome_icon_entry_set_max_saved on versions prior to 2.3.3 (because they don't have it). 2003/09/21 16:06 kaffeetisch * TODO: Updated to reflect recent changes. 2003/09/21 00:05 muppetman (EDT, not back in time) * AUTHORS: torsten forgot to credit himself :-) * xs/GnomeIconLookup.xs, xs/GnomeIconTheme.xs, xs/GnomeThumbnail.xs: GnomeIconTheme and GnomeThumbnailFactory didn't appear until about 2.0.6, according to the changelogs for libgnomeui. only compile this stuff if we have the right types defined. 2003/09/20 23:32 rwmcfa1 * xs/GnomeIconTheme.xs: list -> results, type-o i guess. wouldn't compile now does. 2003/09/21 02:00 kaffeetisch Big overhaul. * Makefile.PL * genmaps.pl * gnome2perl.h: Add libbonoboui to the requirements. * maps: Add Bonobo typemaps. A xs/BonoboDock.xs A xs/BonoboDockItem.xs, * MANIFEST: First parts of Bonobo. Necessary for GnomeApp and GnomeAppHelper. * xs/GnomeAbout.xs: Fix indention. * xs/GnomeApp.xs: Provide member accessors. Implement gnome_app_add_toolbar, gnome_app_add_docked, gnome_app_add_dock_item, gnome_app_get_dock and gnome_app_get_dock_item_by_name. * xs/GnomeAppHelper.xs: Import the menu functions into the Gtk2::MenuShell namespace. Implement gnome_app_find_menu_pos, gnome_app_fill_toolbar*, gnome_app_insert_menus*, gnome_app_remove_menus, gnome_app_remove_menu_range, gnome_app_install_menu_hints, gnome_app_setup_toolbar, gnome_app_install_appbar_menu_hints and gnome_app_install_statusbar_menu_hints. * xs/GnomeClient.xs: Implement gnome_client_set_*_command and gnome_client_add_static_arg. * xs/GnomeDateEdit.xs: Add FIXME comment. * xs/GnomeEntry.xs: Provide a default for the history_id parameter. * xs/GnomeFontPicker.xs: Implement gnome_font_picker_get_title, gnome_font_picker_get_font_name. Remove gnome_font_picker_get_font. A xs/GnomeIconEntry.xs A xs/GnomeIconList.xs A xs/GnomeIconLookup.xs A xs/GnomeIconSelection.xs A xs/GnomeIconTheme.xs A xs/GnomePixmapEntry.xs, A xs/GnomeScores.xs, A xs/GnomeThumbnail.xs, A xs/GnomeWindow.xs, * MANIFEST: Initial implementation. A xs/GnomeModuleInfo.xs * xs/GnomeInit.xs, * MANIFEST: Moved ModuleInfo accessors into their own file. Implemented member accessors. * xs/GnomePopupMenu.xs: Fix bug that kept you from passing undef for the accelgroup parameter to gnome_popup_menu_new. Import gnome_gtk_widget_add_popup_items into the Gtk2::Widget namespace. * xs/GnomeProgram.xs: Create convenience functions to handle ARGV and ModuleInfo's. In gnome_program_locate_file, initialize the lists, check if the returned value is non-NULL and use newSVGChar instead of newSVpv. Make gnome_program_module_register and gnome_program_module_registered work. R t/00.Gnome2.t A t/Gnome.t A t/GnomeApp.t A t/GnomeAppBar.t A t/GnomeAppHelper.t A t/GnomeClient A t/GnomeClientReal A t/GnomeColorPicker.t A t/GnomeDateEdit.t A t/GnomeDruid.t A t/GnomeEntry.t A t/GnomeFileEntry.t A t/GnomeFontPicker.t A t/GnomeHRef.t A t/GnomeIconEntry.t A t/GnomeIconList.t A t/GnomeIconSelection.t A t/GnomeIconTheme.t A t/GnomePixmapEntry.t A t/GnomePopupMenu.t A t/GnomeProgram.t A t/GnomeScores.t A t/GnomeThumbnail.t * MANIFEST: New, fairly comprehensive test suite. 2003/09/17 10:44 rwmcfa1 * Makefile.PL: ExtUtils::PkgConfig can now deal with version requirements using pkg-config's interface, make use of it. 2003/09/16 23:50 rwmcfa1 * Makefile.PL, perl-*spec.in: somewhat automated versioning system implemented for depenancy modules 2003/09/15 22:26 rwmcfa1 * Makefile.PL: spec file dependancies improved 2003/09/06 19:23 rwmcfa1 * Makefile.PL: dist-rpms build target added * perl-Gnome2.spec.in: initial import 2003/09/04 21:32 muppetman * Gnome2.pm, README, debian/changelog, META.yml: prep for 0.34 release * xs/GnomePopupMenu.xs, MANIFEST: new stuff. * TODO: updated 2003/08/22 01:57 muppetman * Gnome2.pm, README, META.yml, debian/changelog, MANIFEST: updated for 0.32 release 2003/08/19 21:11 rwmcfa1 * Makefile.PL: added realclean removal of build dir to postamble section. 2003/08/18 21:16 muppetman * xs/GnomeAppHelper.xs: all the parts were there, they just weren't plugged in. refilling the GnomeUIInfo after creating menus and such now works. 2003/08/18 12:34 muppetman * debian/*: patch from james curbo adds debian packaging stuff 2003/07/25 10:21 muppetman * Gnome2.pm, README: bump version to 0.30 2003/07/23 16:46 muppetman * README, Makefile.PL: update required versionf of Gtk2 and Glib to ensure that the gchar_own typemap (introduced in 0.90) is available. 2003/07/18 12:49 muppetman * xs/GnomeProgram.xs: change default for the module_info to libgnomeui (since that's what most people want) and allow it to be omitted. * Gnome2.pm META.yml README: bump version number to 0.28 for release 2003/07/11 01:00 muppetman * gnomeuiinfo.typemap, gnome2perl.h, Makefile.PL, xs/GnomeAppHelper.xs: added support for GnomeUIInfo, and thus for $app->create_menu, $app->create_toolbar, and a couple other of the gnome-app-helper.h functions. ported the code from gtk-perl to retain some unity in the code, but expect a reference to an array of GnomeUIInfo hashes, not a list of them on the stack. 2003/07/05 07:08 pcg * META.yml: Add module meta-data in YAML for CPAN. * xs/GnomeAppBar.xs, xs/GnomeGConf.xs: use gchar_own* to avoid memleak. 2003/07/02 16:12 rwmcfa1 * maps: removed all of the deprecated widgets, they had no xs files so they wouldn't be useful anyway. * t/00.Gnome2.t: initial import, just uses the module for now, i.e. makes sure that we don't have undefined symbols and the like 2003/06/20 11:34 muppetman * README, Gnome2.pm, Makefile.PL: bump version info and prepare for 0.24 release. yeah, i know this skips 0.22, but it works with other 0.24 versions. no one has claimed ownership of Gnome2 and it will probably continue to stagnate like this until they do. 2003/06/05 23:11 muppetman * maps: removed GnomeCanvas stuff, so that it can go into its own module. 2003/05/22 12:00 muppetman * AUTHORS, LICENSE, most files: added copyright and license information. 2003/05/18 14:00 muppetman * ChangeLog: since breaking the monolithic build into pieces, ChangeLog entries for Gnome2 will be in here. i've included the contents of the toplevel log up to this point for history. * MANIFEST: updated for proper make dist * Gnome2.pm: bumped up the version number, fixed the synopsis, and added an advert for a new author. * Makefile.PL: require Gtk2 >= 0.20 * README, MANIFEST: added 2003/05/17 09:06 rwmcfa1 * Glade/*: first pass at GladeXML added * Makefile: added, see comments within * Makefile.PL: is no more * lots and lots of files: G -> Glib and other related/required changes 2003/05/16 14:55 muppetman * Gtk2/xs/GtkSpinButton.xs: removed get_value_as_float because it is deprecated (and had the wrong return type anyway). 2003/05/15 11:45 muppetman * G/GSignal.xs: hush unused parameter warning, more efficient this way, anyway * Gtk2/xs/GtkContainer.xs: implemented foreach * Gtk2/xs/GtkIconFactory.xs: minor bugfix * G/GType.xs, G/GValue.xs, G/gperl.h, G/typemap, Gnome2/xs/GnomeProgram.xs, Gtk2/xs/GtkCombo.xs, Gtk2/xs/GtkDialog.xs, Gtk2/xs/GtkFrame.xs, Gtk2/xs/GtkItemFactory.xs, Gtk2/xs/GtkStock.xs, Gtk2/xs/GtkTextBuffer.xs, Gtk2/xs/GtkToolbar.xs, Gtk2/xs/GtkTooltips.xs, Gtk2/xs/GtkTreeViewColumn.xs: use newSVGChar and SvGChar instead of newSVpv and SvPV_nolen for gchar*, to ensure valid utf8 handling. this definitely needs testing. 2003/05/06 12:56 rwmcfa1 * Gtk2/t/1.GtkWindow.t, Gtk2/t/2.GtkButton.t: prevent windows from fighting over focus and thus stall tests (happends with wmaker) * Gtk2/t/16.GtkMenu-etc.t: we don't really know how to use tearoff_state so for the time being we won't 2003/05/05 23:11 muppetman * G/G.pm, Gtk2/Gtk2.pm: pod updates 2003/05/05 16:35 muppetman * Gtk2/xs/GtkTooltips.xs: work around a (bug|feature) in the Gtk+ C library by storing a GtkTooltips reference in the GtkWidget's user data. doesn't hurt normal behavior, and prevents some hard-to-explain pitfall errors. 2003/05/03 11:17 joered * Gtk2/: Gtk2.pm, Makefile.PL, pm/Helper.pm: removed deprecated timeout/idle/input methods from Gtk2.pm; added Gtk2/pm/Helper.pm with a convenience implementation of add_watch/remove_watch 2003/05/02 18:11 muppetman * Gtk2/gtk-demo/apple-red.png, Gtk2/gtk-demo/background.jpg, Gtk2/gtk-demo/gnome-applets.png, Gtk2/gtk-demo/gnome-calendar.png, Gtk2/gtk-demo/gnome-foot.png, Gtk2/gtk-demo/gnome-gimp.png, Gtk2/gtk-demo/gnome-gmush.png, Gtk2/gtk-demo/gnome-gsame.png, Gtk2/gtk-demo/gnu-keys.png: images needed by Gtk2/gtk-demo/pixbufs.pl, directly from the gtk+-2.2.1 source distribution. * G/GType.xs, Gtk2/examples/histogramplot.pl: a bunch of code, borrowed from pygtk, to add signals to a derived class. altered the histogramplot example to use a new signal. * Gtk2/xs/GtkTooltips.xs: allow tip_private to default to NULL 2003/05/02 00:30 muppetman * Gtk2/Gtk2.pm, Gtk2/gtk2perl.h, Gtk2/examples/scribble.pl, Gtk2/gtk-demo/drawingarea.pl, Gtk2/gtk-demo/pixbufs.pl, Gtk2/xs/Gdk.xs, Gtk2/xs/GdkTypes.xs, Gtk2/xs/GtkCellRenderer.xs, Gtk2/xs/GtkWidget.xs: reverted the whole GdkRectangle mess. it's a boxed type again. this clears up several bugs to do with GdkAllocation, and in fact makes the whole shebang more efficient because we don't just create an array any time the GdkRectangle is needed, in which case it is often thrown away or only one element is used. added a ->values function, like in gtk2-perl, which returns the members in a list in the order you'd want for passing to several important gdk functions. Gtk2::Gdk::Rectangle->new is good for creating new rectangles. * Gtk2/xs/GtkTextView.xs, Gtk2/xs/GtkTreeView.xs: implemented some functions found to be missing when looking for GdkRectangle returns that needed to be marked _copy. 2003/05/01 23:17 joered * Gtk2/xs/GtkCombo.xs: added GtkCombo->entry and GtkCombo->list returning the correspondent widgets * Gtk2/xs/GtkHBox.xs, Gtk2/xs/GtkVBox.xs: default homogenous is 0 and default spacing is 5, as in gtk-perl * Gtk2/xs/GtkWidget.xs: widget flags can now be set with Widget->flag_name(1) resp. unset with Widget->flag_name(0); Widget->flag_name() still returns current state 2003/05/01 08:00 rwmcfa1 * Gtk2/xs/GtkStyle.xs: removed deprecated functions, there was a lot of them. 2003/04/31 01:00 muppetman * Gtk2/xs/GtkFrame.xs: properly allow undef in Gtk2::Frame->new (was adding an empty string instead of passing NULL) * Gtk2/xs/Gdk.xs, Gtk2/xs/GdkPixbufLoader.xs, Gtk2/xs/GdkRegion.xs, Gtk2/xs/PangoContext.xs, Gtk2/xs/PangoLayout.xs: newly implemented * Gtk2/examples/histogramplot.pl: new code to test drive drawing primitives, pango text handling and drawing, and subclassing. lots of stuff in here; was ported from a working C class library i've been writing. * G/GType.xs, G/GObject.xs, Gtk2/xs/GtkObject.xs: support for pure-perl GObject subclasses. added G::Type->register to create a new GType (basically wraps g_type_register_static), G::Object->_new, to be called from perl constructors for things inheriting GObject, and Gtk2::Object->new, which MUST be used for things inheriting GtkObject (to handle the floating ref situation properly). this allows the perl developer to create new widgets without writing C code! adding signals and properties is currently not implemented. * Gtk2/CodeGen.pm: more correct handling of undef --- previous code was allowing a variable containing undef to pass, which would cause a croak in the wrapper-reader function. * Gtk2/Gtk2.pm, Gtk2/xs/GdkTypes.xs: stopgap solution, simple lvalue subs to get members from a rectangle list * Gtk2/gtk-demo/drawingarea.pl: revert to named member method syntax for rectangles * Gtk2/gtk-demo/pixbufs.pl: actually works now. you need the images, which i don't think are in CVS yet. * Gtk2/gtk-demo/stock_browser.pl: cleanup * Gtk2/xs/GdkPixmap.xs: implemented create_from_xpm_d and colormap_create_from_xpm_d * Gtk2/xs/GdkWindow.xs: allow NULL for cursor in set_cursor * Gtk2/xs/GtkWidget.xs: implemented create_pango_layout 2003/04/29 21:55 joered * Gtk2/xs/GtkListStore.xs: bugfix: gtk_list_store_append and gtk_list_store_prepend were swapped 2003/04/29 23:44 muppetman * Gtk2/xs/GdkDrawable.xs: implemented gdk_draw_polygon, gdk_draw_points, gdk_draw_lines, gdk_draw_segments, gdk_draw_layout, and gdk_draw_layout_with_colors * G/GObject.xs: removed some very old and very broken commented-out code (wrapper instance caching). added new methods for dealing with foreign objects in perl: G::Object->new_from_pointer(VAL, NOINC) (a direct wrapper around gperl_new_object), and $object->get_pointer. 2003/04/29 18:10 muppetman * Gtk2/xs/GtkWindow.xs: icon list stuff * Gtk2/gtk-demo/images.pl, Gtk2/gtk-demo/pixbufs.pl: the last two pieces of gtk-demo (need some image files and such, though), and these two don't work correctly. * Gtk2/gtk-demo/appwindow.pl, Gtk2/gtk-demo/button_box.pl, Gtk2/gtk-demo/changedisplay.pl, Gtk2/gtk-demo/colorsel.pl, Gtk2/gtk-demo/dialog.pl, Gtk2/gtk-demo/editable_cells.pl, Gtk2/gtk-demo/item_factory.pl, Gtk2/gtk-demo/list_store.pl, Gtk2/gtk-demo/main.pl, Gtk2/gtk-demo/menus.pl, Gtk2/gtk-demo/panes.pl, Gtk2/gtk-demo/sizegroup.pl, Gtk2/gtk-demo/stock_browser.pl, Gtk2/gtk-demo/textview.pl, Gtk2/gtk-demo/tree_store.pl: gtk-demo runs! lots of cleanup in the pieces, and changed each one to us a single entry point name, defined in a package with the same name as the file; this bit of subterfuge was necessary because of the differences between C and perl, and the fact that the app is designed as a C program. NOTE: drawingarea.pl is broken, because my copy has other changes that won't work with the current state of CVS. 2003/04/29 16:16 rwmcfa1 * Gtk2/xs/GdkGC.xs: impelemted gdk_gc_set_dashes 2003/04/29 15:10 muppetman * Gtk2/xs/GtkSizeGroup.xs: implemented size groups * Depends.pm, G/Depends.pm, G/Makefile.PL, Gnome2/Makefile.PL, GnomePrint2/Makefile.PL, Gtk2/Makefile.PL, GtkSpell/Makefile.PL, G/PkgConfig.pm, Gtk2/CodeGen.pm, helpers/genstuff.pl, helpers/genboot.pl: build system hacks. moved Depends.pm under G, so that G can install it. made a module of some boilerplate to handle dealing with pkgconfig, and converted the code in helpers/genstuff.pl and helpers/genboot.pl into Gtk2/CodeGen.pm, stuff that can be called from Makefile.PLs. hacked up a the Makefile.PLs to reflect these changes. this makes it possible to use the autogen build tools outside the source tree --- the first step towards breaking up the source tree into separately distributable modules. 2003/04/29 11:14 muppetman * Gtk2/gtk-demo/sizegroup.pl: another little piece of my heart * Gtk2/xs/GtkDialog.xs: use alias to ensure that new_with_buttons exists for those who seek it. 2003/04/28 23:25 muppetman * Gtk2/xs/GtkListStore.xs, Gtk2/xs/GtkTreeStore.xs: work around bizarre stack behavior by not using a helper function. trying to read the stack in a helper function called from an xsub was resulting in the stack showing the wrong number of items. 2003/04/28 18:00 muppetman * Gtk2/gtk-demo/panes.pl: another piece of the gtk-demo pie * G/G.pm G/GObject.xs: overload the == operator, for more natural object comparisons * Gtk2/xs/GtkPaned.xs: struct member access * Gtk2/Makefile.PL Gtk2/genkeysyms.pl: create a big hash of key symbols in Gtk2::Gdk::Keysyms, a la gtk-perl * Gtk2/xs/GtkRadioButton.xs, Gtk2/xs/GtkRadioMenuItem.xs, Gtk2/xs/GtkButton.xs, Gtk2/xs/GtkCheckButton.xs, Gtk2/xs/GtkCheckMenuItem.xs, Gtk2/xs/GtkImageMenuItem.xs, Gtk2/xs/GtkMenuItem.xs, Gtk2/xs/GtkToggleButton.xs: consolidate constructors with ALIAS to avoid copying code. make sure that group isn't a valid SV pointing to undef * Gtk2/xs/GtkWidget.xs: implemented queue_draw, add_accelerator, remove_accelerator, and get_display 2003/04/27 08:52- rwmcfa1 * Gtk2/t/16.GtkMenu-etc.t: Added a first pass at the testing of GtkMenu and friends. * Gtk2/t/15.GtkHandleBox.t: Added a decently complete test of GtkHandleBox * Gtk2/t/14.GtkToolbar.t: Added a decently complete test of GtkToolbar * Gtk2/xs/GtkToolbar.xs: Fixed a bug where GtkToolbarChildType was wrongly being used as a gtype, caused all _element functions to fail * Gtk2/t/13.GtkTooltips.t: Added a decently complete test of GtkTooltips * Gtk2/xs/GtkTooltips.xs: implemented an attempt at gtk_tooltips_data_get which returns what is in the GtkTooltipsData struct as a hash. * Gtk2/t/12.GtkDialog.t: Added a decently complete test of GtkDialog * Gtk2/xs/GtkDialog.xs: added gtk_dialog_add_butttons with multiple calls to gtk_dialog_add_button. combined the vbox and action_area get functions into one aliased function. also changed a char* to a gchar * * Gtk2/maps: hand added entry for Gtk2::Progress, removed * Gtk2/xs/GtkProgressBar.xs: added a BOOT section with a isa call to tell GtkProgressBar that it's a GtkWidget dependant. 2003/04/26 09:53- rwmcfa1 * GtkSpell/Spell.pm: first pass of documentation * GtkSpell/GtkSpell.xs: gtkspell_get_from_text_view now accepts and ignores a class * Gtk2/t/10.GtkProgressBar.t, Gtk2/t/11.GtkStatusBar.t: first passes at testing the two modules * Gtk2/maps: hand added a (maybe temporary) entry for Gtk2::Progress * Gtk2/xs/GtkProgressBar.xs: removed a bunch of deprecated functions * Gtk2/xs/GtkMenuItem.xs, Gtk2/xs/GtkRadioButton.xs, Gtk2/xs/GtkRadioMenuItem.xs, Gtk2/xs/GtkToggleButton.xs: now new with string new('string') uses mnemonic instead of label. seems like a good idea. you can use new_with_label if you don't want this behavior. also impelented news with aliases for new and new_with_mnemonic (saves code space/copying). * Gtk2/xs/GtkCheckButton.xs, Gtk2/xs/GtkCheckMenuItem.xs, Gtk2/xs/GtkImageMenuItem.xs: same as ^ with the addition of: wrappers for _new_with_label were invalid they're now fixed. 2003/04/25 23:01 rwmcfa1 * GtkSpell/: Initial import of working (for me anyway) GtkSpell mappings, give them a try. 2003/04/25 18:17 muppetman * Gtk2/gtk-demo/changedisplay.pl, Gtk2/gtk-demo/drawingarea.pl, Gtk2/gtk-demo/editable_cells.pl: more demo pieces. changedisplay.pl is completely untested, because i do not have Gtk+ 2.2 on my development machine. * G/GClosure.xs: always copy SVs that are to be stored. see the perlcall manpage. this fixes some intermittent bugs that happen when reusing the same variable for various objects. * Gtk2/xs/GdkWindow.xs: implemented gdk_window_invalidate_rect * new-gtk2-perl.html, G/GBoxed.xs, helpers/genstuff.pl, G/gperl.h, G/GObject.xs: renamed gperl_register_class to gperl_register_object to be more consistent (with gperl_register_fundamental and gperl_register_boxed). also added gperl_object_set_no_warn_unreg_subclass, made gperl_get_object honor it. * Gtk2/xs/GdkGC.xs, Gtk2/xs/GtkStyle.xs: set 'no warn for unregistered subclasses on GtkStyle and GdkGC. causes the type system to stop spewing messages on stderr about unregistered types from theme engines and gdk backends. * Gtk2/gtk2perl.h, Gtk2/examples/scribble.pl, Gtk2/xs/GdkEvent.xs, Gtk2/xs/GdkTypes.xs, Gtk2/xs/GtkCellRenderer.xs: completely reworked the handling of GdkRectangle. it's now treated as a perl list instead of an opaque type; this is consistent with gtk-perl and makes life easier for manipulating the rectangles in perl. * Gtk2/xs/GtkWidget.xs: changed handling of GtkAllocation, since handling of GdkRectangle changed. invisible from the perl side. also implemented gtk_widget_get_events. * Gtk2/xs/GtkImage.xs: implemented gtk_image_new_from_pixmap, gtk_image_set_from_pixmap, and gtk_image_get_pixmap * Gtk2/xs/GtkLabel.xs: allow Label->new to default to NULL for creating empty labels. * Gtk2/xs/GtkTreeModel.xs: implemented gtk_tree_path_get_indices 2003/04/25 12:40 rwmcfa1 * Gtk2/t/1.GtkWindow.t: corrected check for gtk >= 2.2 * Gtk2/t/5.GtkListStore-etc.t: if 2.2 then try the reorder function * Gtk2/xs/GtkCurve.xs: re-did set_vector to be clearer and removed a unused param name from prototype. * Gtk2/xs/GtkFileSelection.xs: clarified the a for loop's operations in get_selections * Gtk2/xs/GtkTreeStore.xs, Gtk2/xs/GtkListStore.xs: added itital pass at _store_reorder * Gtk2/maps: added stuff new as of gtk2.2.1 * Gtk2/xs/GtkPlug.xs Gtk2/xs/GtkWindow.xs Gtk2/xs/GdkCursor.xs Gtk2/xs/GdkDrawable.xs Gtk2/xs/GtkInvisible.xs Gtk2/xs/GtkMenu.xs: uncommented stuff new to gtk 2.2 now that maps is up to date for 2.2.1 2003/04/24 18:24 muppetman * Gtk2/gtk-demo/appwindow.pl, Gtk2/gtk-demo/button_box.pl, Gtk2/gtk-demo/colorsel.pl, Gtk2/gtk-demo/dialog.pl: more pieces of the demo * Gtk2/xs/GtkToolbar.xs: implemented all the append/prepend/insert functions that were left out because they require callbacks * Gtk2/xs/GtkStock.xs: implemented gtk_stock_add * G/GSignal.xs, G/gperl.h: export gperl_signal_connect, the actual workhorse, so other XSubs can use it * Gtk2/xs/GtkColorSelection.xs: fixed get_current_color and get_previous_color * Gtk2/xs/GtkColorSelectionDialog.xs: member access * TODO: high-level things (i forgot to commit this last week) 2003/04/24 17:55 rwmcfa1 * Gtk2/t/5.GtkListStore-etc.t: fixed type-o, datam -> data that was preventing entries being made into the list * Gtk2/xs/GtkMessagedialog.xs: removed a TODO, it is probably better to just pass the message as you want it rather than use the varargs stuff anyway 2003/04/24 13:30 muppetman * Gnome2/xs/GnomeProgram.xs, Gnome2/druid.pl: implemented object properties on Gnome2::Program->init (was a FIXME) * G/GObject.xs: created alias get_property for get and set_property for set, since some objects mask the G::Object-level method with their own. in list_properties, don't die if the descr isn't set. 2003/04/24 12:55 muppetman * helpers/genstuff.pl: wrap generated code in #ifdefs to support versioning (typemaps must be generated even if the code isn't, so we generate everything but only use part of it) 2003/04/23 10:44 rwmcfa1 * Gtk2/xs/GtkHButtonBox.xs, Gtk2/xs/GtkVButtonBox.xs: get_spacing_defaults should accept and ignore class * Gtk2/gtk2perl.h: type-o newSVGdkModiferType -> newSVGdkModifierType * Gtk2/xs/GtkFontSelection.xs: type functions should not be in XS, it's all automagical * Gtk2/xs/GtkWindow.xs: a first pass at set_icon_list_function added 2003/04/23 10:37 muppetman * ChangeLog: new change log, from the cvs log on sourceforge. please keep it updated. 2003/04/22 muppetman * G/GBoxed.xs: updates to debugging output * G/GClosure.xs: don't keep the supplemental arguments array in gperl_closure_marshal --- just put mortal values on the stack and everything works out fine. simplifies the code quite a bit, and removes some subtle and nasty bugs. * G/GType.xs: GPERL_TYPE_SV, a boxed wrapper for perl scalars, mapped to the package G::Scalar. this is handy for storing hashes and other perl data structures in a TreeModel. * G/GValue.xs: special handling for GPERL_TYPE_SV. implement handling for G_TYPE_INTERFACE. * Gtk2/gtk-demo/stock_browser.pl, Gtk2/xs/GtkIconFactory.xs: stock browser demo and some supporting code * Gtk2/gtk2perl.h, Gtk2/xs/GdkTypes.xs: special handling for GdkModifierType flags... GDK_MODIFIER_MASK matches all of the flag values, and causes nasty problems when you try to convert the SV flags wrapper *back* to C. so, handle it separately, and don't allow GDK_MODIFIER_MASK to make it into perl from C. (can still go the other way, though) * Gtk2/xs/GtkItemFactory.xs: bracket callback with ENTER/SAVETMPS & FREETMPS/LEAVE * Gtk2/xs/GtkMenu.xs: implemented gtk_menu_popup * Gtk2/xs/GtkTreeModel.xs: it's possible for gtk_tree_model_iter_next to return NULL * Gtk2/xs/GtkTreeView.xs: implemented gtk_tree_view_insert_column_with_data_func * Gtk2/xs/GtkTreeViewColumn.xs: implemented gtk_tree_view_column_set_cell_data_func * Gtk2/xs/GtkWidget.xs: default params on set_size_request, and implemented render_icon 2003/04/22 rwmcfa1 * Gtk2/t/5.GtkListStore-etc.t, Gtk2/t/6.GtkLabel.t, Gtk2/t/7.GtkBoxes.t, Gtk2/t/8.GtkCombo.t: initial import * Gtk2/t/9.GtkRadioButton.t: test out a little more throughly * Gtk2/xs/GtkFileSelection.xs: first pass at gtk_file_selection_get_selections, needs to be utf8 tested/implemented maybe * Gtk2/xs/GtkRadioButton.xs: crash bug, need to make sure that svp exists * Gtk2/xs/GtkRadioMenuItem.xs: first pass at implementing this class, not tested yet 2003/04/21 muppetman * G/G.xs, G/gperl.h: added gperl_alloc_temp * G/GClosure.xs: added GPerlCallback, and made some robustness fixes for GPerlClosure. (there was bizarre stuff happening in the marshaller, wrong number of items in the supplemental arguments array.) * G/gperl.h: add GPerlCallback, with docs, and some other noise * Gtk2/gtk-demo/item_factory.pl: gtk-demo driver for GtkItemFactory * Gtk2/xs/GtkItemFactory.xs: implemented GtkItemFactory * Gtk2/xs/GtkWidget.xs: set_flags and unset_flags 2003/04/21 rwmcfa1 * Gtk2/xs/GtkRadioButton.xs: implement all of the functions now with a first pass at how to deal with GSList/group stuff. (notice: it's subject to change) 2003/04/20 rwmcfa1 * just about every file: added cvs Header: tags * Gtk2/xs/GtkWindow.xs: missing functions added; version 2.2 functions added (some commented out); decorated_window functions added, but commented out (how should we go about these?) 2003/04/18 gthyni added .cvsignore files for cleaner updates 2003/04/18 muppetman * Gnome2/druid.pl: add a button to test out Gnome2::About * Gnome2/xs/GnomeAbout.xs: patch from Chas Owens to implement the authors and documenters parameter lists, and allow defaults on parameters following authors. (authors is required by gnome_about_new) * Gtk2/xs/GtkAccelGroup.xs: implemented gtk_accelerator_parse and gtk_accelerator_name * Gtk2/xs/GtkFileSelection.xs: patch from Chas Owens giving access to member widgets * Gtk2/xs/GtkImage.xs: implemented new_from_pixbuf and set_from_pixbuf * Gtk2/xs/GtkStock.xs: implemented some stock handling stuff, enough to get the stock_browser demo working * Gtk2/xs/GtkTreeSelection.xs: implemented gtk_tree_selection_get_selected 2003/04/18 rwmcfa1 * Gtk2/xs/GtkWindow.xs: add a header tag and see if i can commit, header tags need to be added to everything before to long. 2003/04/17 muppetman massive commit of changes made by muppetman and rwmcfa1 since the last pre-sourceforge snapshot. * G/G.xs, G/gperl.h: added gperl_croak_gerror, takes care of properly freeing a GError before croaking with the message it contains * G/GObject.xs: don't allow non-RVs in gperl_get_object; added G::Object->eq * G/gperl.h: added gperl_croak_gerror, takes care of properly freeing a GError before croaking with the message it contains * Gtk2/gdk.typemap, Gtk2/gtk2perl.h: custom handling for GdkBitmap * Gtk2/examples/layout.pl: new example (ported from C by ross) * Gtk2/examples/socket.pl, Gtk2/t/0.Gtk2.t, Gtk2/t/1.GtkWindow.t, Gtk2/t/2.GtkButton.t, Gtk2/t/3.GtkGammaCurve.t: updates since snapshot * Gtk2/gtk-demo/textview.pl, Gtk2/gtk-demo/floppybuddy.gif, Gtk2/gtk-demo/gtk-logo-rgb.gif: another piece of gtk-demo, and accessories * Gtk2/xs/GdkPixbuf.xs: added lots of missing functionality * Gtk2/xs/GdkPixmap.xs: can now create GdkBitmaps. warning, GdkBitmap may be in the wrong class, there are some complaints at runtime about it (porting C code passing a GdkBitmap where a GdkPixmap was wanted, i had to re-bless in perl to achieve that). * Gtk2/xs/Gtk2.xs: added version information functions * Gtk2/xs/GtkCurve.xs: work around a C bug that the Gtk+ maintainers say won't be fixed (because the widget is to be removed in future versions) * Gtk2/xs/GtkHScale.xs, Gtk2/xs/GtkHScrollBar.xs, Gtk2/xs/GtkVScale.xs, Gtk2/xs/GtkVScrollBar.xs, Gtk2/xs/GtkScrolledWindow.xs: allow default parameters * Gtk2/xs/GtkListStore.xs: place TreeModel at the beginning of ISA so Gtk2::TreeModel::get is found before G::Object::get. remove some warn()s. * Gtk2/xs/GtkNotebook.xs: patch from Emmanuele Bassi, which was a double commit, because goran had already fixed it and i didn't notice in time * Gtk2/xs/GtkTextBuffer.xs: implemented insert_with_tags_by_name * Gtk2/xs/GtkTextIter.xs: allow NULL return from get_child_anchor * Gtk2/xs/GtkTextView.xs: oops, bad signature * Gtk2/xs/GtkTreeView.xs: implemented missing new_with_model * Gtk2/xs/GtkTreeViewColumn.xs: stack randomly had the wrong number of items. converted to a macro to avoid the use of dXSARGS, and suddenly the list_store.pl portion of gtk-demo works. dXSARGS is supposed to work anywhere; i don't understand why it didn't. * Gtk2/xs/GtkWidget.xs: implemented several _modify_* methods * Gtk2/xs/GtkWindow.xs: allow window type to default to 'toplevel' on ->new; all NULL for several other functions' parameters. * Gtk2/xs/PangoFont.xs: pango constants. 2003/04/17 gthyni imported 20030415 snapshot into CVS Gnome2-1.046/gnome.typemap0000644000175000017500000000013712542061635013774 0ustar lacklackTYPEMAP GnomeUIInfo * T_GPERL_GENERIC_WRAPPER Gnome2PerlIconListFlags T_GPERL_GENERIC_WRAPPER Gnome2-1.046/AUTHORS0000644000175000017500000000122312542061635012333 0ustar lacklack The Gtk2-Perl Team - contact us at gtk-perl-list@gnome.org ================================================================ muppet scott at asofyet dot org Ross McFarland rwmcfa1 at neces dot com Torsten Schoenfeld kaffeetisch at web dot de Goran Thyni goran 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 several important bits of gtk2-perl were heavily inspired by pygtk, gtk-perl, and a good read-through of the gtk source code, so credit goes to those guys as well -- thanks! Gnome2-1.046/Gnome2.pm0000644000175000017500000000736712542061635012767 0ustar lacklack# $Id$ package Gnome2; use 5.008; use strict; use warnings; use Gtk2; use Gnome2::Canvas; use Gnome2::VFS; require DynaLoader; our @ISA = qw(DynaLoader); our $VERSION = '1.046'; sub import { my $self = shift(); $self -> VERSION(@_); } sub dl_load_flags { $^O eq 'darwin' ? 0x00 : 0x01 } Gnome2 -> bootstrap($VERSION); 1; __END__ =head1 NAME Gnome2 - Perl interface to the 2.x series of the GNOME libraries =head1 SYNOPSIS use Gnome2; Gnome2::Program->init ($appname, $appversion); my $app = Gnome2::App->new ($appname); $app->show; Gtk2->main; =head1 ABSTRACT Perl bindings to the 2.x series of the GNOME libraries. This module allows you to interface with the libgnome and libgnomeui libraries to create GNOME applications. =head1 DESCRIPTION Since this module tries to stick very closely to the C API, the documentation found at http://developer.gnome.org/libgnome and http://developer.gnome.org/libgnomeui is the canonical reference. In addition to that, there's also the automatically generated API documentation: L(3pm). The mapping described in L(3pm) also applies to this module. To discuss this module, ask questions and flame/praise the authors, join gtk-perl-list@gnome.org at lists.gnome.org. =head1 MISSING METHODS =over =item gnome_app_fill_menu_with_data =item gnome_app_fill_menu_custom Use gnome_app_fill_menu instead. =item gnome_app_fill_toolbar_with_data =item gnome_app_fill_toolbar_custom Use gnome_app_fill_toolbar instead. =item gnome_app_create_menus_interp =item gnome_app_create_menus_with_data =item gnome_app_create_menus_custom Use gnome_app_create_menus instead. =item gnome_app_create_toolbar_interp =item gnome_app_create_toolbar_with_data =item gnome_app_create_toolbar_custom Use gnome_app_create_toolbar instead. =item gnome_app_insert_menus_custom =item gnome_app_insert_menus_with_data =item gnome_app_insert_menus_interp Use gnome_app_insert_menus instead. =back =head1 RENAMED METHODS =over =item gnome_program_get Gnome2::Program->get has been renamed to ->get_program to avoid a clash with GObject->get. =item gnome_popup_menu_attach Gtk2::Menu->attach has been renamed to ->attach_to to avoid a clash with gtk_menu_attach. =item gnome_popup_menu_append Gtk2::Menu->append has been renamed to ->append_from to avoid a clash with gtk_menu_shell_append. =back =head1 DIFFERENT CALL SIGNATURES OR SEMANTICS =over =item gnome_client_set_restart_command =item gnome_client_set_discard_command =item gnome_client_set_resign_command =item gnome_client_set_shutdown_command =item gnome_client_set_clone_command Instead of argc and argv you simply pass in a list. =item gnome_program_init Gnome2::Program->init automagically fills argc and argv so just omit these parameters. =back =head1 SEE ALSO L(1), L(3pm), L(3pm), L(3pm), L(3pm). =head1 AUTHOR muppet Escott at asofyet dot orgE did the initial stuff. Torsten Schoenfeld Ekaffeetisch at gmx dot deE took over between 0.34 and 0.36, and implemented lots of tests and missing functionality, and corrected several of muppet's mistakes. =head1 COPYRIGHT AND LICENSE Copyright (C) 2003-2006, 2013 by the gtk2-perl team (see the file AUTHORS) This library is free software; you can redistribute it and/or modify it under the terms of the GNU Lesser General Public License as published by the Free Software Foundation; either version 2.1 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 LICENSE file in the top level of this distribution for the complete license terms. =cut