Re: Subclassing Gtk2::GladeXML

2008-08-21 Thread Jeff Hallock
 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


RE: Re: Subclassing Gtk2::GladeXML

2008-08-21 Thread Jeff Hallock
I've figured it out. I did have get_widget redefined in the package GTIMs. (It 
was exported).
___
gtk-perl-list mailing list
gtk-perl-list@gnome.org
http://mail.gnome.org/mailman/listinfo/gtk-perl-list