GtkPerl Glade autoconnect



There has been some change in the effects of 
signal_autoconnect_from_package from Gtk-Perl-0.6123 -> Gtk-Perl-0.7002

in Gtk-Perl-0.6123 we could explicitly identify a funtion in another
package from within glade, and if only a function name was given it would
be in the package specified in signal_autoconnect_from_package.  With
Gtk-Perl-0.7002 however, the default package is appended regardless of
explicit package::function name.

Ex.
Gtk-Perl-0.6123 signal_autoconnect_from_package.("gui");
glade handler		referenced function
---------------		-------------------
widget_dostuff		gui::widget_dostuff
main::widget_nodo	main::widget_nodo

Gtk-Perl-0.7002 signal_autoconnect_from_package.("gui");
glade handler           referenced function
---------------         -------------------
widget_dostuff          gui::widget_dostuff
main::widget_nodo       gui::main::widget_nodo

in Glade/GladeXML.pm change the following lines, and all will be well.

in sub _autoconnect_helper {

change :
	$handler = $package ."::". $handler_name if $package;

to:
        if(index($handler,"::") < 0){
                $handler = $package ."::". $handler_name if $package;
        }


This is crude, and should probably be refined, but for right now, it
allows my existing Perl/Gtk applications to run correctly.


Corey Thornburg
coreyt@coreyt.com






[Date Prev][Date Next]   [Thread Prev][Thread Next]   [Thread Index] [Date Index] [Author Index]