>> I was sub-classing Gtk2::GladeXML (I have a print dialog for a large >> number of reports, each report has its own 'options' dialog it can >> display - which I have all in 1 glade file that I want to keep >> separate from the rest of the program, and want to create some helper >> functions that I want to access through the glade object. >> >> The issue I ran into (and was able to "solve") is that after sub- >> classing Gtk2::GladeXML, I can't say >> >> $self->get_widget('winReports'); >> >> I get an undefined value returned. However, if say it as so... it works >> just fine. >> >> &Gtk2::GladeXML::get_widget($self, 'winReports'); >> >> Is this a bug or is does this operate this way for a specific reason? > >A minimal example that exhibits this problem would go a long way towards the >answer. The >immediate question i have is "are you writing the code in some >odd way that causes the object to >be blessed incorrectly?"
Here is the beginning lines of the module. package GTIMs::GUI::Dialog::Report; use warnings; use strict; use Carp qw/carp cluck/; use GTIMs; use Glib qw(TRUE FALSE); use Gtk2; use Gtk2::GladeXML; use Gtk2::Ex::DateEntry; use base qw(Gtk2::GladeXML); sub new { my $class = shift; my $self = bless Gtk2::GladeXML->new('lib/widgets/dlg_report.glade'), $class; $self->signal_autoconnect_from_package($class); $self->get_widget('winReports')->{GUI} = $self; $self->do_winReports_date_widgets_setup; $self->do_winReports_treeView_setup; $self->do_winReports_treeView_populate; return $self; } I can get away with this, and get the behavior that I want. The no warnings; use warnings; statements because I get a warning that get_widget has been redefined... no warnings; sub get_widget { my ($self, $widget) = @_; &Gtk2::GladeXML::get_widget($self, $widget); } use warnings; Im running windows 32, GTK+/Win32 Runtime Environment 2.8.20-1, ActiveState Perl 5.8.8 build 819. (The distribution from lostmind.de/gtk-perl/)
_______________________________________________ gtk-perl-list mailing list gtk-perl-list@gnome.org http://mail.gnome.org/mailman/listinfo/gtk-perl-list