#!/usr/bin/perl -w
#
# This is the (re)generated UI construction class.
#
# DO NOT EDIT THIS FILE, ANY CHANGES THAT YOU MAKE WILL BE LOST WHEN
# THIS FILE WILL BE OVERWRITTEN BY THE NEXT RUN OF Glade::PerlGenerate
#
#==============================================================================
#=== This is the 'connect_dialog' class                              
#==============================================================================
package connect_dialog;
require 5.000; use strict 'vars', 'refs', 'subs';
# UI class 'connect_dialog' (version 0.01)
# 
# Copyright (c) Date Tue Oct 23 01:49:12 PDT 2001
# Author Ivan Kohler,Chess room,888-670-SISD,215-996-0824 <ivan\@rootwood.haze.st>
#
## Unspecified copying policy, please contact the author\n#  Ivan Kohler,Chess room,888-670-SISD,215-996-0824 <ivan\@rootwood.haze.st>
#
#==============================================================================
# This perl source file was automatically generated by 
# Glade::PerlGenerate version 0.59 - Wed Jun 20 14:48:25 BST 2001
# Copyright (c) Author Dermot Musgrove <dermot.musgrove\@virgin.net>
#
# from Glade file /home/ivan/gtkdbi/gtkdbi.glade
# Thu Jan 10 08:02:21 PST 2002
#==============================================================================

BEGIN {
    # Run-time utilities and vars
    use Glade::PerlRun; 
    # Existing signal handler modules
    use vars qw( 
                 @ISA
                 %fields
                 %stubs
                 $PACKAGE
                 $VERSION
                 $AUTHOR
                 $DATE
                 $AUTOLOAD
                 $permitted_fields
             );
    # Tell interpreter who we are inheriting from
    @ISA     = qw( Glade::PerlRun );
    $PACKAGE = 'gtkdbi';
    $VERSION = '0.01';
    $AUTHOR  = 'Ivan Kohler,Chess room,888-670-SISD,215-996-0824 <ivan\@rootwood.haze.st>';
    $DATE    = 'Tue Oct 23 01:49:12 PDT 2001';
    $permitted_fields = '_permitted_fields';             
} # End of sub BEGIN

    $Glade::PerlRun::pixmaps_directory ||= '/home/ivan/gtkdbi/pixmaps';

%fields = (
    # These are the data fields that you can set/get using the dynamic
    # calls provided by AUTOLOAD (and their initial values).
    # eg $class->FORM($new_value);      sets the value of FORM
    #    $current_value = $class->FORM; gets the current value of FORM
    TOPLEVEL => undef,
    FORM     => undef,
    PACKAGE  => 'gtkdbi',
    VERSION  => '0.01',
    AUTHOR   => 'Ivan Kohler,Chess room,888-670-SISD,215-996-0824 <ivan\@rootwood.haze.st>',
    DATE     => 'Tue Oct 23 01:49:12 PDT 2001',
    INSTANCE => 'window1',
    CLASS_HIERARCHY => undef,
    WIDGET_HIERARCHY => undef,
);

%stubs = (
    # These are signal handlers that will cause a message_box to be
    # displayed by AUTOLOAD if there is not already a sub of that name
    # in any module specified in 'use_modules'.

    'on_abortconnect_button_clicked' => undef,
    'on_connect_button_clicked' => undef,
    'on_datasource_entry_changed' => undef,
    'on_deletesession_button_clicked' => undef,
    'on_password_entry_changed' => undef,
    'on_savesession_button_clicked' => undef,
    'on_username_entry_changed' => undef,
);

sub AUTOLOAD {
    my $self = shift;
    my $type = ref($self)
        or die "$self is not an object so we cannot '$AUTOLOAD'\n",
            "We were called from ".join(", ", caller)."\n\n";
    my $name = $AUTOLOAD;
    $name =~ s/.*://;       # strip fully-qualified portion

    if (exists $self->{$permitted_fields}->{$name} ) {
        # This allows dynamic data methods - see hash fields above
        # eg $class->UI('new_value');
        # or $current_value = $class->UI;
        if (@_) {
            return $self->{$name} = shift;
        } else {
            return $self->{$name};
        }

    } elsif (exists $stubs{$name} ) {
        # This shows dynamic signal handler stub message_box - see hash stubs above
        __PACKAGE__->show_skeleton_message(
            $AUTOLOAD."\n ("._("AUTOLOADED by")." ".__PACKAGE__.")", 
            [$self, @_], 
            __PACKAGE__, 
            'glade2perl_logo.xpm');
        
    } else {
        die "Can't access method `$name' in class $type\n".
            "We were called from ".join(", ", caller)."\n\n";

    }
} # End of sub AUTOLOAD

sub run {
    my ($class) = @_;
    $class->load_translations('gtkdbi');
    # You can use the line below to load a test .mo file before it is installed in 
    # the normal place (eg /usr/local/share/locale/C/LC_MESSAGES/gtkdbi.mo)
#    $class->load_translations('gtkdbi', 'test', undef, '/home/ivan/gtkdbi/ppo/gtkdbi.mo');
    Gtk->init;
    my $window = $class->new;
    $window->TOPLEVEL->show;
    Gtk->main;
} # End of sub run

sub DESTROY {
    # This sub will be called on object destruction
} # End of sub DESTROY

sub new {
#
# This sub will create the UI window
    my $that  = shift;
    my $class = ref($that) || $that;
    my $self  = {
        $permitted_fields   => \%fields, %fields,
        _permitted_stubs    => \%stubs,  %stubs,
    };
    my ($forms, $widgets, $data, $work);
    my $instance = 1;
    # Get a unique toplevel widget structure
    while (defined $__PACKAGE__::all_forms->{"connect_dialog-$instance"}) {$instance++;}


    #
    # Construct a GtkWindow 'connect_dialog'
    $widgets->{'connect_dialog'} = new Gtk::Window;
    $widgets->{'connect_dialog'}->set_title(_('gtkdbi - Connect') );
    $widgets->{'connect_dialog'}->position('none' );
    $widgets->{'connect_dialog'}->set_policy(0, 1, 0 );
    $widgets->{'connect_dialog'}->set_modal(1 );
    $widgets->{'connect_dialog'}->realize;
    $forms->{'connect_dialog'}{'tooltips'} = new Gtk::Tooltips;
    $forms->{'connect_dialog'}{'accelgroup'} = new Gtk::AccelGroup;
    $forms->{'connect_dialog'}{'accelgroup'}->attach($widgets->{'connect_dialog'} );
    $forms->{'connect_dialog'}{'connect_dialog'} = $widgets->{'connect_dialog'};
	#
	# Construct a GtkVBox 'vbox4'
	$widgets->{'vbox4'} = new Gtk::VBox(0, 0 );
	$forms->{'connect_dialog'}{'connect_dialog'}->add($widgets->{'vbox4'} );
	$widgets->{'vbox4'}->show;
	$forms->{'connect_dialog'}{'vbox4'} = $widgets->{'vbox4'};
	    #
	    # Construct a GtkTable 'table2'
	    $widgets->{'table2'} = new Gtk::Table(4, 2, 0 );
	    $widgets->{'table2'}->set_row_spacings(0 );
	    $widgets->{'table2'}->set_col_spacings(0 );
	    $forms->{'connect_dialog'}{'vbox4'}->add($widgets->{'table2'} );
	    $widgets->{'table2'}->show;
	    $forms->{'connect_dialog'}{'table2'} = $widgets->{'table2'};
	    $forms->{'connect_dialog'}{'table2'}->border_width(4 );
		#
		# Construct a GtkEntry 'datasource_entry'
		$widgets->{'datasource_entry'} = new Gtk::Entry;
		$forms->{'connect_dialog'}{'table2'}->attach($widgets->{'datasource_entry'}, 1, 2, 1, 2, ['expand', 'fill'], [], 0, 0 );
		$widgets->{'datasource_entry'}->show;
		$forms->{'connect_dialog'}{'datasource_entry'} = $widgets->{'datasource_entry'};
		$forms->{'connect_dialog'}{'datasource_entry'}->can_focus(1 );
		$forms->{'connect_dialog'}{'datasource_entry'}->set_text(_('') );
		$forms->{'connect_dialog'}{'datasource_entry'}->set_max_length(0 );
		$forms->{'connect_dialog'}{'datasource_entry'}->set_visibility(1 );
		$forms->{'connect_dialog'}{'datasource_entry'}->set_editable(1 );
		#
		# Construct a GtkEntry 'username_entry'
		$widgets->{'username_entry'} = new Gtk::Entry;
		$forms->{'connect_dialog'}{'table2'}->attach($widgets->{'username_entry'}, 1, 2, 2, 3, ['expand', 'fill'], [], 0, 0 );
		$widgets->{'username_entry'}->show;
		$forms->{'connect_dialog'}{'username_entry'} = $widgets->{'username_entry'};
		$forms->{'connect_dialog'}{'username_entry'}->can_focus(1 );
		$forms->{'connect_dialog'}{'username_entry'}->set_text(_('') );
		$forms->{'connect_dialog'}{'username_entry'}->set_max_length(0 );
		$forms->{'connect_dialog'}{'username_entry'}->set_visibility(1 );
		$forms->{'connect_dialog'}{'username_entry'}->set_editable(1 );
		#
		# Construct a GtkEntry 'password_entry'
		$widgets->{'password_entry'} = new Gtk::Entry;
		$forms->{'connect_dialog'}{'table2'}->attach($widgets->{'password_entry'}, 1, 2, 3, 4, ['expand', 'fill'], [], 0, 0 );
		$widgets->{'password_entry'}->show;
		$forms->{'connect_dialog'}{'password_entry'} = $widgets->{'password_entry'};
		$forms->{'connect_dialog'}{'password_entry'}->can_focus(1 );
		$forms->{'connect_dialog'}{'password_entry'}->set_text(_('') );
		$forms->{'connect_dialog'}{'password_entry'}->set_max_length(0 );
		$forms->{'connect_dialog'}{'password_entry'}->set_visibility(1 );
		$forms->{'connect_dialog'}{'password_entry'}->set_editable(1 );
		#
		# Construct a GtkLabel 'datasource_label'
		$widgets->{'datasource_label'} = new Gtk::Label(_('Data Source'));
		$widgets->{'datasource_label'}->set_justify('right' );
		$widgets->{'datasource_label'}->set_line_wrap(0 );
		$forms->{'connect_dialog'}{'table2'}->attach($widgets->{'datasource_label'}, 0, 1, 1, 2, ['fill'], [], 0, 0 );
		$widgets->{'datasource_label'}->show;
		$forms->{'connect_dialog'}{'datasource_label'} = $widgets->{'datasource_label'};
		$forms->{'connect_dialog'}{'datasource_label'}->set_alignment(0, 0.5 );
		#
		# Construct a GtkLabel 'username_label'
		$widgets->{'username_label'} = new Gtk::Label(_('Username'));
		$widgets->{'username_label'}->set_justify('center' );
		$widgets->{'username_label'}->set_line_wrap(0 );
		$forms->{'connect_dialog'}{'table2'}->attach($widgets->{'username_label'}, 0, 1, 2, 3, ['fill'], [], 0, 0 );
		$widgets->{'username_label'}->show;
		$forms->{'connect_dialog'}{'username_label'} = $widgets->{'username_label'};
		$forms->{'connect_dialog'}{'username_label'}->set_alignment(0, 0.5 );
		#
		# Construct a GtkLabel 'password_label'
		$widgets->{'password_label'} = new Gtk::Label(_('Password'));
		$widgets->{'password_label'}->set_justify('center' );
		$widgets->{'password_label'}->set_line_wrap(0 );
		$forms->{'connect_dialog'}{'table2'}->attach($widgets->{'password_label'}, 0, 1, 3, 4, ['fill'], [], 0, 0 );
		$widgets->{'password_label'}->show;
		$forms->{'connect_dialog'}{'password_label'} = $widgets->{'password_label'};
		$forms->{'connect_dialog'}{'password_label'}->set_alignment(0, 0.5 );
		#
		# Construct a GtkLabel 'session_label'
		$widgets->{'session_label'} = new Gtk::Label(_('Session'));
		$widgets->{'session_label'}->set_justify('center' );
		$widgets->{'session_label'}->set_line_wrap(0 );
		$forms->{'connect_dialog'}{'table2'}->attach($widgets->{'session_label'}, 0, 1, 0, 1, ['fill'], [], 0, 0 );
		$widgets->{'session_label'}->show;
		$forms->{'connect_dialog'}{'session_label'} = $widgets->{'session_label'};
		$forms->{'connect_dialog'}{'session_label'}->set_alignment(0, 0.5 );
		#
		# Construct a GtkOptionMenu 'session_optionmenu'
		$widgets->{'session_optionmenu'} = new Gtk::OptionMenu;
		$forms->{'connect_dialog'}{'table2'}->attach($widgets->{'session_optionmenu'}, 1, 2, 0, 1, ['expand', 'fill'], [], 0, 0 );
		$widgets->{'session_optionmenu'}->show;
		$forms->{'connect_dialog'}{'session_optionmenu'} = $widgets->{'session_optionmenu'};
		$forms->{'connect_dialog'}{'session_optionmenu'}->set_usize(0, 32 );
		$forms->{'connect_dialog'}{'session_optionmenu'}->can_focus(1 );
		$widgets->{'session_optionmenu_menu'} = new Gtk::Menu;
		$forms->{'connect_dialog'}{'session_optionmenu'}->set_menu($widgets->{'session_optionmenu_menu'} );
		$forms->{'connect_dialog'}{'session_optionmenu_menu'} = $widgets->{'session_optionmenu_menu'};
		$forms->{'connect_dialog'}{'session_optionmenu'}->set_history( 0 );
	    $forms->{'connect_dialog'}{'vbox4'}->set_child_packing($forms->{'connect_dialog'}{'table2'}, 1, 1, 0, 'start' );
	    #
	    # Construct a GtkHSeparator 'hseparator1'
	    $widgets->{'hseparator1'} = new Gtk::HSeparator;
	    $forms->{'connect_dialog'}{'vbox4'}->add($widgets->{'hseparator1'} );
	    $widgets->{'hseparator1'}->show;
	    $forms->{'connect_dialog'}{'hseparator1'} = $widgets->{'hseparator1'};
	    $forms->{'connect_dialog'}{'vbox4'}->set_child_packing($forms->{'connect_dialog'}{'hseparator1'}, 1, 1, 0, 'start' );
	    #
	    # Construct a GtkHButtonBox 'hbuttonbox2'
	    $widgets->{'hbuttonbox2'} = new Gtk::HButtonBox;
	    $forms->{'connect_dialog'}{'vbox4'}->add($widgets->{'hbuttonbox2'} );
	    $widgets->{'hbuttonbox2'}->show;
	    $forms->{'connect_dialog'}{'hbuttonbox2'} = $widgets->{'hbuttonbox2'};
	    $forms->{'connect_dialog'}{'hbuttonbox2'}->set_layout('spread' );
	    $forms->{'connect_dialog'}{'hbuttonbox2'}->set_spacing(30 );
	    $forms->{'connect_dialog'}{'hbuttonbox2'}->set_child_size(85, 27 );
	    $forms->{'connect_dialog'}{'hbuttonbox2'}->set_child_ipadding(7, 0 );
		#
		# Construct a GtkButton 'savesession_button'
		$widgets->{'savesession_button'} = new Gtk::Button(_('Save Session'));
		$forms->{'connect_dialog'}{'hbuttonbox2'}->add($widgets->{'savesession_button'} );
		$widgets->{'savesession_button'}->show;
		$forms->{'connect_dialog'}{'savesession_button'} = $widgets->{'savesession_button'};
		$forms->{'connect_dialog'}{'savesession_button'}->can_default(1 );
		$forms->{'connect_dialog'}{'savesession_button'}->can_focus(1 );
		#
		# Construct a GtkButton 'deletesession_button'
		$widgets->{'deletesession_button'} = new Gtk::Button(_('Delete Session'));
		$forms->{'connect_dialog'}{'hbuttonbox2'}->add($widgets->{'deletesession_button'} );
		$widgets->{'deletesession_button'}->show;
		$forms->{'connect_dialog'}{'deletesession_button'} = $widgets->{'deletesession_button'};
		$forms->{'connect_dialog'}{'deletesession_button'}->can_default(1 );
		$forms->{'connect_dialog'}{'deletesession_button'}->can_focus(1 );
	    $forms->{'connect_dialog'}{'vbox4'}->set_child_packing($forms->{'connect_dialog'}{'hbuttonbox2'}, 1, 1, 0, 'start' );
	    #
	    # Construct a GtkHSeparator 'hseparator2'
	    $widgets->{'hseparator2'} = new Gtk::HSeparator;
	    $forms->{'connect_dialog'}{'vbox4'}->add($widgets->{'hseparator2'} );
	    $widgets->{'hseparator2'}->show;
	    $forms->{'connect_dialog'}{'hseparator2'} = $widgets->{'hseparator2'};
	    $forms->{'connect_dialog'}{'vbox4'}->set_child_packing($forms->{'connect_dialog'}{'hseparator2'}, 1, 1, 0, 'start' );
	    #
	    # Construct a GtkHButtonBox 'hbuttonbox3'
	    $widgets->{'hbuttonbox3'} = new Gtk::HButtonBox;
	    $forms->{'connect_dialog'}{'vbox4'}->add($widgets->{'hbuttonbox3'} );
	    $widgets->{'hbuttonbox3'}->show;
	    $forms->{'connect_dialog'}{'hbuttonbox3'} = $widgets->{'hbuttonbox3'};
	    $forms->{'connect_dialog'}{'hbuttonbox3'}->set_layout('edge' );
	    $forms->{'connect_dialog'}{'hbuttonbox3'}->set_spacing(30 );
	    $forms->{'connect_dialog'}{'hbuttonbox3'}->set_child_size(85, 27 );
	    $forms->{'connect_dialog'}{'hbuttonbox3'}->set_child_ipadding(7, 0 );
		#
		# Construct a GtkButton 'connect_button'
		$widgets->{'connect_button'} = new Gtk::Button(_('Connect'));
		$forms->{'connect_dialog'}{'hbuttonbox3'}->add($widgets->{'connect_button'} );
		$widgets->{'connect_button'}->show;
		$forms->{'connect_dialog'}{'connect_button'} = $widgets->{'connect_button'};
		$forms->{'connect_dialog'}{'connect_button'}->can_default(1 );
		$forms->{'connect_dialog'}{'connect_button'}->can_focus(1 );
		#
		# Construct a GtkButton 'abortconnect_button'
		$widgets->{'abortconnect_button'} = new Gtk::Button(_('Abort'));
		$forms->{'connect_dialog'}{'hbuttonbox3'}->add($widgets->{'abortconnect_button'} );
		$widgets->{'abortconnect_button'}->show;
		$forms->{'connect_dialog'}{'abortconnect_button'} = $widgets->{'abortconnect_button'};
		$forms->{'connect_dialog'}{'abortconnect_button'}->can_default(1 );
		$forms->{'connect_dialog'}{'abortconnect_button'}->can_focus(1 );
	    $forms->{'connect_dialog'}{'vbox4'}->set_child_packing($forms->{'connect_dialog'}{'hbuttonbox3'}, 1, 1, 0, 'start' );
    #
    # Connect all signals now that widgets are constructed
    $forms->{'connect_dialog'}{'datasource_entry'}->signal_connect( 'changed', "$class\::on_datasource_entry_changed", '', 'datasource_entry', "connect_dialog-$instance" );
    $forms->{'connect_dialog'}{'username_entry'}->signal_connect( 'changed', "$class\::on_username_entry_changed", '', 'username_entry', "connect_dialog-$instance" );
    $forms->{'connect_dialog'}{'password_entry'}->signal_connect( 'changed', "$class\::on_password_entry_changed", '', 'password_entry', "connect_dialog-$instance" );
    $forms->{'connect_dialog'}{'savesession_button'}->signal_connect( 'clicked', "$class\::on_savesession_button_clicked", '', 'savesession_button', "connect_dialog-$instance" );
    $forms->{'connect_dialog'}{'deletesession_button'}->signal_connect( 'clicked', "$class\::on_deletesession_button_clicked", '', 'deletesession_button', "connect_dialog-$instance" );
    $forms->{'connect_dialog'}{'connect_button'}->signal_connect( 'clicked', "$class\::on_connect_button_clicked", '', 'connect_button', "connect_dialog-$instance" );
    $forms->{'connect_dialog'}{'abortconnect_button'}->signal_connect( 'clicked', "$class\::on_abortconnect_button_clicked", '', 'abortconnect_button', "connect_dialog-$instance" );


    #
    # Return the constructed UI
    bless $self, $class;
    $self->FORM($forms->{'connect_dialog'});
    $self->TOPLEVEL($self->FORM->{'connect_dialog'});
    $self->FORM->{'TOPLEVEL'} = ($self->TOPLEVEL);
    $self->INSTANCE("connect_dialog-$instance");
    $self->CLASS_HIERARCHY($self->FORM->{'__WH'});
    $self->WIDGET_HIERARCHY($self->FORM->{'__CH'});
    $__PACKAGE__::all_forms->{$self->INSTANCE} = $self->FORM;
    
    return $self;
} # End of sub new









#==============================================================================
#=== This is the 'quit_dialog' class                              
#==============================================================================
package quit_dialog;
require 5.000; use strict 'vars', 'refs', 'subs';
# UI class 'quit_dialog' (version 0.01)
# 
# Copyright (c) Date Tue Oct 23 01:49:12 PDT 2001
# Author Ivan Kohler,Chess room,888-670-SISD,215-996-0824 <ivan\@rootwood.haze.st>
#
## Unspecified copying policy, please contact the author\n#  Ivan Kohler,Chess room,888-670-SISD,215-996-0824 <ivan\@rootwood.haze.st>
#
#==============================================================================
# This perl source file was automatically generated by 
# Glade::PerlGenerate version 0.59 - Wed Jun 20 14:48:25 BST 2001
# Copyright (c) Author Dermot Musgrove <dermot.musgrove\@virgin.net>
#
# from Glade file /home/ivan/gtkdbi/gtkdbi.glade
# Thu Jan 10 08:02:21 PST 2002
#==============================================================================

BEGIN {
    # Run-time utilities and vars
    use Glade::PerlRun; 
    # Existing signal handler modules
    use vars qw( 
                 @ISA
                 %fields
                 %stubs
                 $PACKAGE
                 $VERSION
                 $AUTHOR
                 $DATE
                 $AUTOLOAD
                 $permitted_fields
             );
    # Tell interpreter who we are inheriting from
    @ISA     = qw( Glade::PerlRun );
    $PACKAGE = 'gtkdbi';
    $VERSION = '0.01';
    $AUTHOR  = 'Ivan Kohler,Chess room,888-670-SISD,215-996-0824 <ivan\@rootwood.haze.st>';
    $DATE    = 'Tue Oct 23 01:49:12 PDT 2001';
    $permitted_fields = '_permitted_fields';             
} # End of sub BEGIN

    $Glade::PerlRun::pixmaps_directory ||= '/home/ivan/gtkdbi/pixmaps';

%fields = (
    # These are the data fields that you can set/get using the dynamic
    # calls provided by AUTOLOAD (and their initial values).
    # eg $class->FORM($new_value);      sets the value of FORM
    #    $current_value = $class->FORM; gets the current value of FORM
    TOPLEVEL => undef,
    FORM     => undef,
    PACKAGE  => 'gtkdbi',
    VERSION  => '0.01',
    AUTHOR   => 'Ivan Kohler,Chess room,888-670-SISD,215-996-0824 <ivan\@rootwood.haze.st>',
    DATE     => 'Tue Oct 23 01:49:12 PDT 2001',
    INSTANCE => 'window1',
    CLASS_HIERARCHY => undef,
    WIDGET_HIERARCHY => undef,
);

%stubs = (
    # These are signal handlers that will cause a message_box to be
    # displayed by AUTOLOAD if there is not already a sub of that name
    # in any module specified in 'use_modules'.

    'on_quit_no_clicked' => undef,
    'on_quit_yes_clicked' => undef,
);

sub AUTOLOAD {
    my $self = shift;
    my $type = ref($self)
        or die "$self is not an object so we cannot '$AUTOLOAD'\n",
            "We were called from ".join(", ", caller)."\n\n";
    my $name = $AUTOLOAD;
    $name =~ s/.*://;       # strip fully-qualified portion

    if (exists $self->{$permitted_fields}->{$name} ) {
        # This allows dynamic data methods - see hash fields above
        # eg $class->UI('new_value');
        # or $current_value = $class->UI;
        if (@_) {
            return $self->{$name} = shift;
        } else {
            return $self->{$name};
        }

    } elsif (exists $stubs{$name} ) {
        # This shows dynamic signal handler stub message_box - see hash stubs above
        __PACKAGE__->show_skeleton_message(
            $AUTOLOAD."\n ("._("AUTOLOADED by")." ".__PACKAGE__.")", 
            [$self, @_], 
            __PACKAGE__, 
            'glade2perl_logo.xpm');
        
    } else {
        die "Can't access method `$name' in class $type\n".
            "We were called from ".join(", ", caller)."\n\n";

    }
} # End of sub AUTOLOAD

sub run {
    my ($class) = @_;
    $class->load_translations('gtkdbi');
    # You can use the line below to load a test .mo file before it is installed in 
    # the normal place (eg /usr/local/share/locale/C/LC_MESSAGES/gtkdbi.mo)
#    $class->load_translations('gtkdbi', 'test', undef, '/home/ivan/gtkdbi/ppo/gtkdbi.mo');
    Gtk->init;
    my $window = $class->new;
    $window->TOPLEVEL->show;
    Gtk->main;
} # End of sub run

sub DESTROY {
    # This sub will be called on object destruction
} # End of sub DESTROY

sub new {
#
# This sub will create the UI window
    my $that  = shift;
    my $class = ref($that) || $that;
    my $self  = {
        $permitted_fields   => \%fields, %fields,
        _permitted_stubs    => \%stubs,  %stubs,
    };
    my ($forms, $widgets, $data, $work);
    my $instance = 1;
    # Get a unique toplevel widget structure
    while (defined $__PACKAGE__::all_forms->{"quit_dialog-$instance"}) {$instance++;}


    #
    # Construct a GtkDialog 'quit_dialog'
    $widgets->{'quit_dialog'} = new Gtk::Dialog;
    $widgets->{'quit_dialog'}->set_title(_('gtkdbi ') );
    $widgets->{'quit_dialog'}->position('center' );
    $widgets->{'quit_dialog'}->set_policy(1, 1, 0 );
    $widgets->{'quit_dialog'}->set_modal(1 );
    $widgets->{'quit_dialog'}->realize;
    $forms->{'quit_dialog'}{'tooltips'} = new Gtk::Tooltips;
    $forms->{'quit_dialog'}{'accelgroup'} = new Gtk::AccelGroup;
    $forms->{'quit_dialog'}{'accelgroup'}->attach($widgets->{'quit_dialog'} );
    $forms->{'quit_dialog'}{'quit_dialog'} = $widgets->{'quit_dialog'};
	#
	# Construct a GtkVBox 'dialog-vbox1'
	$widgets->{'dialog-vbox1'} = $forms->{'quit_dialog'}{'quit_dialog'}->vbox;
	$widgets->{'dialog-vbox1'}->show;
	$forms->{'quit_dialog'}{'dialog-vbox1'} = $widgets->{'dialog-vbox1'};
	    #
	    # Construct a GtkHBox 'dialog-action_area1'
	    $widgets->{'dialog-action_area1'} = $forms->{'quit_dialog'}{'quit_dialog'}->action_area;
	    $widgets->{'dialog-action_area1'}->show;
	    $forms->{'quit_dialog'}{'dialog-action_area1'} = $widgets->{'dialog-action_area1'};
	    $forms->{'quit_dialog'}{'dialog-action_area1'}->border_width(10 );
		#
		# Construct a GtkHButtonBox 'hbuttonbox1'
		$widgets->{'hbuttonbox1'} = new Gtk::HButtonBox;
		$forms->{'quit_dialog'}{'dialog-action_area1'}->add($widgets->{'hbuttonbox1'} );
		$widgets->{'hbuttonbox1'}->show;
		$forms->{'quit_dialog'}{'hbuttonbox1'} = $widgets->{'hbuttonbox1'};
		$forms->{'quit_dialog'}{'hbuttonbox1'}->set_layout('default_style' );
		$forms->{'quit_dialog'}{'hbuttonbox1'}->set_spacing(30 );
		$forms->{'quit_dialog'}{'hbuttonbox1'}->set_child_size(85, 27 );
		$forms->{'quit_dialog'}{'hbuttonbox1'}->set_child_ipadding(7, 0 );
		    #
		    # Construct a GtkButton 'quit_yes'
		    $widgets->{'quit_yes'} = new Gtk::Button(_('Yes'));
		    $forms->{'quit_dialog'}{'hbuttonbox1'}->add($widgets->{'quit_yes'} );
		    $widgets->{'quit_yes'}->show;
		    $forms->{'quit_dialog'}{'quit_yes'} = $widgets->{'quit_yes'};
		    $forms->{'quit_dialog'}{'quit_yes'}->can_default(1 );
		    $forms->{'quit_dialog'}{'quit_yes'}->can_focus(1 );
		    #
		    # Construct a GtkButton 'quit_no'
		    $widgets->{'quit_no'} = new Gtk::Button(_('No'));
		    $forms->{'quit_dialog'}{'hbuttonbox1'}->add($widgets->{'quit_no'} );
		    $widgets->{'quit_no'}->show;
		    $forms->{'quit_dialog'}{'quit_no'} = $widgets->{'quit_no'};
		    $forms->{'quit_dialog'}{'quit_no'}->can_default(1 );
		    $forms->{'quit_dialog'}{'quit_no'}->can_focus(1 );
		$forms->{'quit_dialog'}{'dialog-action_area1'}->set_child_packing($forms->{'quit_dialog'}{'hbuttonbox1'}, 1, 1, 0, 'start' );
	    $forms->{'quit_dialog'}{'dialog-vbox1'}->set_child_packing($forms->{'quit_dialog'}{'dialog-action_area1'}, 0, 1, 0, 'end' );
	    #
	    # Construct a GtkLabel 'label2'
	    $widgets->{'label2'} = new Gtk::Label(_('Really quit?'));
	    $widgets->{'label2'}->set_justify('center' );
	    $widgets->{'label2'}->set_line_wrap(0 );
	    $forms->{'quit_dialog'}{'dialog-vbox1'}->add($widgets->{'label2'} );
	    $widgets->{'label2'}->show;
	    $forms->{'quit_dialog'}{'label2'} = $widgets->{'label2'};
	    $forms->{'quit_dialog'}{'label2'}->set_alignment(0.5, 0.5 );
	    $forms->{'quit_dialog'}{'label2'}->set_padding(0, 4 );
	    $forms->{'quit_dialog'}{'dialog-vbox1'}->set_child_packing($forms->{'quit_dialog'}{'label2'}, 1, 0, 0, 'start' );
    #
    # Connect all signals now that widgets are constructed
    $forms->{'quit_dialog'}{'quit_yes'}->signal_connect( 'clicked', "$class\::on_quit_yes_clicked", '', 'quit_yes', "quit_dialog-$instance" );
    $forms->{'quit_dialog'}{'quit_no'}->signal_connect( 'clicked', "$class\::on_quit_no_clicked", '', 'quit_no', "quit_dialog-$instance" );


    #
    # Return the constructed UI
    bless $self, $class;
    $self->FORM($forms->{'quit_dialog'});
    $self->TOPLEVEL($self->FORM->{'quit_dialog'});
    $self->FORM->{'TOPLEVEL'} = ($self->TOPLEVEL);
    $self->INSTANCE("quit_dialog-$instance");
    $self->CLASS_HIERARCHY($self->FORM->{'__WH'});
    $self->WIDGET_HIERARCHY($self->FORM->{'__CH'});
    $__PACKAGE__::all_forms->{$self->INSTANCE} = $self->FORM;
    
    return $self;
} # End of sub new









#==============================================================================
#=== This is the 'error_dialog' class                              
#==============================================================================
package error_dialog;
require 5.000; use strict 'vars', 'refs', 'subs';
# UI class 'error_dialog' (version 0.01)
# 
# Copyright (c) Date Tue Oct 23 01:49:12 PDT 2001
# Author Ivan Kohler,Chess room,888-670-SISD,215-996-0824 <ivan\@rootwood.haze.st>
#
## Unspecified copying policy, please contact the author\n#  Ivan Kohler,Chess room,888-670-SISD,215-996-0824 <ivan\@rootwood.haze.st>
#
#==============================================================================
# This perl source file was automatically generated by 
# Glade::PerlGenerate version 0.59 - Wed Jun 20 14:48:25 BST 2001
# Copyright (c) Author Dermot Musgrove <dermot.musgrove\@virgin.net>
#
# from Glade file /home/ivan/gtkdbi/gtkdbi.glade
# Thu Jan 10 08:02:21 PST 2002
#==============================================================================

BEGIN {
    # Run-time utilities and vars
    use Glade::PerlRun; 
    # Existing signal handler modules
    use vars qw( 
                 @ISA
                 %fields
                 %stubs
                 $PACKAGE
                 $VERSION
                 $AUTHOR
                 $DATE
                 $AUTOLOAD
                 $permitted_fields
             );
    # Tell interpreter who we are inheriting from
    @ISA     = qw( Glade::PerlRun );
    $PACKAGE = 'gtkdbi';
    $VERSION = '0.01';
    $AUTHOR  = 'Ivan Kohler,Chess room,888-670-SISD,215-996-0824 <ivan\@rootwood.haze.st>';
    $DATE    = 'Tue Oct 23 01:49:12 PDT 2001';
    $permitted_fields = '_permitted_fields';             
} # End of sub BEGIN

    $Glade::PerlRun::pixmaps_directory ||= '/home/ivan/gtkdbi/pixmaps';

%fields = (
    # These are the data fields that you can set/get using the dynamic
    # calls provided by AUTOLOAD (and their initial values).
    # eg $class->FORM($new_value);      sets the value of FORM
    #    $current_value = $class->FORM; gets the current value of FORM
    TOPLEVEL => undef,
    FORM     => undef,
    PACKAGE  => 'gtkdbi',
    VERSION  => '0.01',
    AUTHOR   => 'Ivan Kohler,Chess room,888-670-SISD,215-996-0824 <ivan\@rootwood.haze.st>',
    DATE     => 'Tue Oct 23 01:49:12 PDT 2001',
    INSTANCE => 'window1',
    CLASS_HIERARCHY => undef,
    WIDGET_HIERARCHY => undef,
);

%stubs = (
    # These are signal handlers that will cause a message_box to be
    # displayed by AUTOLOAD if there is not already a sub of that name
    # in any module specified in 'use_modules'.

    'on_error_button_clicked' => undef,
);

sub AUTOLOAD {
    my $self = shift;
    my $type = ref($self)
        or die "$self is not an object so we cannot '$AUTOLOAD'\n",
            "We were called from ".join(", ", caller)."\n\n";
    my $name = $AUTOLOAD;
    $name =~ s/.*://;       # strip fully-qualified portion

    if (exists $self->{$permitted_fields}->{$name} ) {
        # This allows dynamic data methods - see hash fields above
        # eg $class->UI('new_value');
        # or $current_value = $class->UI;
        if (@_) {
            return $self->{$name} = shift;
        } else {
            return $self->{$name};
        }

    } elsif (exists $stubs{$name} ) {
        # This shows dynamic signal handler stub message_box - see hash stubs above
        __PACKAGE__->show_skeleton_message(
            $AUTOLOAD."\n ("._("AUTOLOADED by")." ".__PACKAGE__.")", 
            [$self, @_], 
            __PACKAGE__, 
            'glade2perl_logo.xpm');
        
    } else {
        die "Can't access method `$name' in class $type\n".
            "We were called from ".join(", ", caller)."\n\n";

    }
} # End of sub AUTOLOAD

sub run {
    my ($class) = @_;
    $class->load_translations('gtkdbi');
    # You can use the line below to load a test .mo file before it is installed in 
    # the normal place (eg /usr/local/share/locale/C/LC_MESSAGES/gtkdbi.mo)
#    $class->load_translations('gtkdbi', 'test', undef, '/home/ivan/gtkdbi/ppo/gtkdbi.mo');
    Gtk->init;
    my $window = $class->new;
    $window->TOPLEVEL->show;
    Gtk->main;
} # End of sub run

sub DESTROY {
    # This sub will be called on object destruction
} # End of sub DESTROY

sub new {
#
# This sub will create the UI window
    my $that  = shift;
    my $class = ref($that) || $that;
    my $self  = {
        $permitted_fields   => \%fields, %fields,
        _permitted_stubs    => \%stubs,  %stubs,
    };
    my ($forms, $widgets, $data, $work);
    my $instance = 1;
    # Get a unique toplevel widget structure
    while (defined $__PACKAGE__::all_forms->{"error_dialog-$instance"}) {$instance++;}


    #
    # Construct a GtkDialog 'error_dialog'
    $widgets->{'error_dialog'} = new Gtk::Dialog;
    $widgets->{'error_dialog'}->set_title(_('gtkdbi - Error') );
    $widgets->{'error_dialog'}->position('none' );
    $widgets->{'error_dialog'}->set_policy(1, 1, 0 );
    $widgets->{'error_dialog'}->set_modal(1 );
    $widgets->{'error_dialog'}->realize;
    $forms->{'error_dialog'}{'tooltips'} = new Gtk::Tooltips;
    $forms->{'error_dialog'}{'accelgroup'} = new Gtk::AccelGroup;
    $forms->{'error_dialog'}{'accelgroup'}->attach($widgets->{'error_dialog'} );
    $forms->{'error_dialog'}{'error_dialog'} = $widgets->{'error_dialog'};
	#
	# Construct a GtkVBox 'dialog-vbox3'
	$widgets->{'dialog-vbox3'} = $forms->{'error_dialog'}{'error_dialog'}->vbox;
	$widgets->{'dialog-vbox3'}->show;
	$forms->{'error_dialog'}{'dialog-vbox3'} = $widgets->{'dialog-vbox3'};
	    #
	    # Construct a GtkHBox 'dialog-action_area3'
	    $widgets->{'dialog-action_area3'} = $forms->{'error_dialog'}{'error_dialog'}->action_area;
	    $widgets->{'dialog-action_area3'}->show;
	    $forms->{'error_dialog'}{'dialog-action_area3'} = $widgets->{'dialog-action_area3'};
	    $forms->{'error_dialog'}{'dialog-action_area3'}->border_width(10 );
		#
		# Construct a GtkButton 'error_button'
		$widgets->{'error_button'} = new Gtk::Button(_('OK'));
		$forms->{'error_dialog'}{'dialog-action_area3'}->add($widgets->{'error_button'} );
		$widgets->{'error_button'}->show;
		$forms->{'error_dialog'}{'error_button'} = $widgets->{'error_button'};
		$forms->{'error_dialog'}{'error_button'}->can_focus(1 );
		$forms->{'error_dialog'}{'dialog-action_area3'}->set_child_packing($forms->{'error_dialog'}{'error_button'}, 0, 0, 0, 'start' );
	    $forms->{'error_dialog'}{'dialog-vbox3'}->set_child_packing($forms->{'error_dialog'}{'dialog-action_area3'}, 0, 1, 0, 'end' );
	    #
	    # Construct a GtkLabel 'error_label'
	    $widgets->{'error_label'} = new Gtk::Label(_('$ERROR'));
	    $widgets->{'error_label'}->set_justify('center' );
	    $widgets->{'error_label'}->set_line_wrap(0 );
	    $forms->{'error_dialog'}{'dialog-vbox3'}->add($widgets->{'error_label'} );
	    $widgets->{'error_label'}->show;
	    $forms->{'error_dialog'}{'error_label'} = $widgets->{'error_label'};
	    $forms->{'error_dialog'}{'error_label'}->set_alignment(0.5, 0.5 );
	    $forms->{'error_dialog'}{'dialog-vbox3'}->set_child_packing($forms->{'error_dialog'}{'error_label'}, 1, 0, 0, 'start' );
    #
    # Connect all signals now that widgets are constructed
    $forms->{'error_dialog'}{'error_button'}->signal_connect( 'clicked', "$class\::on_error_button_clicked", '', 'error_button', "error_dialog-$instance" );


    #
    # Return the constructed UI
    bless $self, $class;
    $self->FORM($forms->{'error_dialog'});
    $self->TOPLEVEL($self->FORM->{'error_dialog'});
    $self->FORM->{'TOPLEVEL'} = ($self->TOPLEVEL);
    $self->INSTANCE("error_dialog-$instance");
    $self->CLASS_HIERARCHY($self->FORM->{'__WH'});
    $self->WIDGET_HIERARCHY($self->FORM->{'__CH'});
    $__PACKAGE__::all_forms->{$self->INSTANCE} = $self->FORM;
    
    return $self;
} # End of sub new









#==============================================================================
#=== This is the 'about_dialog' class                              
#==============================================================================
package about_dialog;
require 5.000; use strict 'vars', 'refs', 'subs';
# UI class 'about_dialog' (version 0.01)
# 
# Copyright (c) Date Tue Oct 23 01:49:12 PDT 2001
# Author Ivan Kohler,Chess room,888-670-SISD,215-996-0824 <ivan\@rootwood.haze.st>
#
## Unspecified copying policy, please contact the author\n#  Ivan Kohler,Chess room,888-670-SISD,215-996-0824 <ivan\@rootwood.haze.st>
#
#==============================================================================
# This perl source file was automatically generated by 
# Glade::PerlGenerate version 0.59 - Wed Jun 20 14:48:25 BST 2001
# Copyright (c) Author Dermot Musgrove <dermot.musgrove\@virgin.net>
#
# from Glade file /home/ivan/gtkdbi/gtkdbi.glade
# Thu Jan 10 08:02:21 PST 2002
#==============================================================================

BEGIN {
    # Run-time utilities and vars
    use Glade::PerlRun; 
    # Existing signal handler modules
    use vars qw( 
                 @ISA
                 %fields
                 %stubs
                 $PACKAGE
                 $VERSION
                 $AUTHOR
                 $DATE
                 $AUTOLOAD
                 $permitted_fields
             );
    # Tell interpreter who we are inheriting from
    @ISA     = qw( Glade::PerlRun );
    $PACKAGE = 'gtkdbi';
    $VERSION = '0.01';
    $AUTHOR  = 'Ivan Kohler,Chess room,888-670-SISD,215-996-0824 <ivan\@rootwood.haze.st>';
    $DATE    = 'Tue Oct 23 01:49:12 PDT 2001';
    $permitted_fields = '_permitted_fields';             
} # End of sub BEGIN

    $Glade::PerlRun::pixmaps_directory ||= '/home/ivan/gtkdbi/pixmaps';

%fields = (
    # These are the data fields that you can set/get using the dynamic
    # calls provided by AUTOLOAD (and their initial values).
    # eg $class->FORM($new_value);      sets the value of FORM
    #    $current_value = $class->FORM; gets the current value of FORM
    TOPLEVEL => undef,
    FORM     => undef,
    PACKAGE  => 'gtkdbi',
    VERSION  => '0.01',
    AUTHOR   => 'Ivan Kohler,Chess room,888-670-SISD,215-996-0824 <ivan\@rootwood.haze.st>',
    DATE     => 'Tue Oct 23 01:49:12 PDT 2001',
    INSTANCE => 'window1',
    CLASS_HIERARCHY => undef,
    WIDGET_HIERARCHY => undef,
);

%stubs = (
    # These are signal handlers that will cause a message_box to be
    # displayed by AUTOLOAD if there is not already a sub of that name
    # in any module specified in 'use_modules'.

    'on_about_button_clicked' => undef,
);

sub AUTOLOAD {
    my $self = shift;
    my $type = ref($self)
        or die "$self is not an object so we cannot '$AUTOLOAD'\n",
            "We were called from ".join(", ", caller)."\n\n";
    my $name = $AUTOLOAD;
    $name =~ s/.*://;       # strip fully-qualified portion

    if (exists $self->{$permitted_fields}->{$name} ) {
        # This allows dynamic data methods - see hash fields above
        # eg $class->UI('new_value');
        # or $current_value = $class->UI;
        if (@_) {
            return $self->{$name} = shift;
        } else {
            return $self->{$name};
        }

    } elsif (exists $stubs{$name} ) {
        # This shows dynamic signal handler stub message_box - see hash stubs above
        __PACKAGE__->show_skeleton_message(
            $AUTOLOAD."\n ("._("AUTOLOADED by")." ".__PACKAGE__.")", 
            [$self, @_], 
            __PACKAGE__, 
            'glade2perl_logo.xpm');
        
    } else {
        die "Can't access method `$name' in class $type\n".
            "We were called from ".join(", ", caller)."\n\n";

    }
} # End of sub AUTOLOAD

sub run {
    my ($class) = @_;
    $class->load_translations('gtkdbi');
    # You can use the line below to load a test .mo file before it is installed in 
    # the normal place (eg /usr/local/share/locale/C/LC_MESSAGES/gtkdbi.mo)
#    $class->load_translations('gtkdbi', 'test', undef, '/home/ivan/gtkdbi/ppo/gtkdbi.mo');
    Gtk->init;
    my $window = $class->new;
    $window->TOPLEVEL->show;
    Gtk->main;
} # End of sub run

sub DESTROY {
    # This sub will be called on object destruction
} # End of sub DESTROY

sub new {
#
# This sub will create the UI window
    my $that  = shift;
    my $class = ref($that) || $that;
    my $self  = {
        $permitted_fields   => \%fields, %fields,
        _permitted_stubs    => \%stubs,  %stubs,
    };
    my ($forms, $widgets, $data, $work);
    my $instance = 1;
    # Get a unique toplevel widget structure
    while (defined $__PACKAGE__::all_forms->{"about_dialog-$instance"}) {$instance++;}


    #
    # Construct a GtkDialog 'about_dialog'
    $widgets->{'about_dialog'} = new Gtk::Dialog;
    $widgets->{'about_dialog'}->set_title(_('gtkdbi - About') );
    $widgets->{'about_dialog'}->position('center' );
    $widgets->{'about_dialog'}->set_policy(1, 1, 0 );
    $widgets->{'about_dialog'}->set_modal(1 );
    $widgets->{'about_dialog'}->realize;
    $forms->{'about_dialog'}{'tooltips'} = new Gtk::Tooltips;
    $forms->{'about_dialog'}{'accelgroup'} = new Gtk::AccelGroup;
    $forms->{'about_dialog'}{'accelgroup'}->attach($widgets->{'about_dialog'} );
    $forms->{'about_dialog'}{'about_dialog'} = $widgets->{'about_dialog'};
	#
	# Construct a GtkVBox 'dialog-vbox2'
	$widgets->{'dialog-vbox2'} = $forms->{'about_dialog'}{'about_dialog'}->vbox;
	$widgets->{'dialog-vbox2'}->show;
	$forms->{'about_dialog'}{'dialog-vbox2'} = $widgets->{'dialog-vbox2'};
	    #
	    # Construct a GtkHBox 'dialog-action_area2'
	    $widgets->{'dialog-action_area2'} = $forms->{'about_dialog'}{'about_dialog'}->action_area;
	    $widgets->{'dialog-action_area2'}->show;
	    $forms->{'about_dialog'}{'dialog-action_area2'} = $widgets->{'dialog-action_area2'};
	    $forms->{'about_dialog'}{'dialog-action_area2'}->border_width(10 );
		#
		# Construct a GtkButton 'about_button'
		$widgets->{'about_button'} = new Gtk::Button(_('Ok'));
		$forms->{'about_dialog'}{'dialog-action_area2'}->add($widgets->{'about_button'} );
		$widgets->{'about_button'}->show;
		$forms->{'about_dialog'}{'about_button'} = $widgets->{'about_button'};
		$forms->{'about_dialog'}{'about_button'}->can_focus(1 );
		$forms->{'about_dialog'}{'dialog-action_area2'}->set_child_packing($forms->{'about_dialog'}{'about_button'}, 0, 0, 0, 'start' );
	    $forms->{'about_dialog'}{'dialog-vbox2'}->set_child_packing($forms->{'about_dialog'}{'dialog-action_area2'}, 0, 1, 0, 'end' );
	    #
	    # Construct a GtkLabel 'about_label'
	    $widgets->{'about_label'} = new Gtk::Label(_('gtkdbi

A graphical interface to DBI data sources.

http://www.420.am/gtkdbi doesn\'t exist yet.

Ivan Kohler <ivan-gtkdbi@420.am>'));
	    $widgets->{'about_label'}->set_justify('center' );
	    $widgets->{'about_label'}->set_line_wrap(0 );
	    $forms->{'about_dialog'}{'dialog-vbox2'}->add($widgets->{'about_label'} );
	    $widgets->{'about_label'}->show;
	    $forms->{'about_dialog'}{'about_label'} = $widgets->{'about_label'};
	    $forms->{'about_dialog'}{'about_label'}->set_alignment(0.5, 0.5 );
	    $forms->{'about_dialog'}{'about_label'}->set_padding(4, 0 );
	    $forms->{'about_dialog'}{'dialog-vbox2'}->set_child_packing($forms->{'about_dialog'}{'about_label'}, 1, 0, 0, 'start' );
    #
    # Connect all signals now that widgets are constructed
    $forms->{'about_dialog'}{'about_button'}->signal_connect( 'clicked', "$class\::on_about_button_clicked", '', 'about_button', "about_dialog-$instance" );


    #
    # Return the constructed UI
    bless $self, $class;
    $self->FORM($forms->{'about_dialog'});
    $self->TOPLEVEL($self->FORM->{'about_dialog'});
    $self->FORM->{'TOPLEVEL'} = ($self->TOPLEVEL);
    $self->INSTANCE("about_dialog-$instance");
    $self->CLASS_HIERARCHY($self->FORM->{'__WH'});
    $self->WIDGET_HIERARCHY($self->FORM->{'__CH'});
    $__PACKAGE__::all_forms->{$self->INSTANCE} = $self->FORM;
    
    return $self;
} # End of sub new









#==============================================================================
#=== This is the 'window1' class                              
#==============================================================================
package window1;
require 5.000; use strict 'vars', 'refs', 'subs';
# UI class 'window1' (version 0.01)
# 
# Copyright (c) Date Tue Oct 23 01:49:12 PDT 2001
# Author Ivan Kohler,Chess room,888-670-SISD,215-996-0824 <ivan\@rootwood.haze.st>
#
## Unspecified copying policy, please contact the author\n#  Ivan Kohler,Chess room,888-670-SISD,215-996-0824 <ivan\@rootwood.haze.st>
#
#==============================================================================
# This perl source file was automatically generated by 
# Glade::PerlGenerate version 0.59 - Wed Jun 20 14:48:25 BST 2001
# Copyright (c) Author Dermot Musgrove <dermot.musgrove\@virgin.net>
#
# from Glade file /home/ivan/gtkdbi/gtkdbi.glade
# Thu Jan 10 08:02:21 PST 2002
#==============================================================================

BEGIN {
    # Run-time utilities and vars
    use Glade::PerlRun; 
    # Existing signal handler modules
    use vars qw( 
                 @ISA
                 %fields
                 %stubs
                 $PACKAGE
                 $VERSION
                 $AUTHOR
                 $DATE
                 $AUTOLOAD
                 $permitted_fields
             );
    # Tell interpreter who we are inheriting from
    @ISA     = qw( Glade::PerlRun );
    $PACKAGE = 'gtkdbi';
    $VERSION = '0.01';
    $AUTHOR  = 'Ivan Kohler,Chess room,888-670-SISD,215-996-0824 <ivan\@rootwood.haze.st>';
    $DATE    = 'Tue Oct 23 01:49:12 PDT 2001';
    $permitted_fields = '_permitted_fields';             
} # End of sub BEGIN

    $Glade::PerlRun::pixmaps_directory ||= '/home/ivan/gtkdbi/pixmaps';

%fields = (
    # These are the data fields that you can set/get using the dynamic
    # calls provided by AUTOLOAD (and their initial values).
    # eg $class->FORM($new_value);      sets the value of FORM
    #    $current_value = $class->FORM; gets the current value of FORM
    TOPLEVEL => undef,
    FORM     => undef,
    PACKAGE  => 'gtkdbi',
    VERSION  => '0.01',
    AUTHOR   => 'Ivan Kohler,Chess room,888-670-SISD,215-996-0824 <ivan\@rootwood.haze.st>',
    DATE     => 'Tue Oct 23 01:49:12 PDT 2001',
    INSTANCE => 'window1',
    CLASS_HIERARCHY => undef,
    WIDGET_HIERARCHY => undef,
);

%stubs = (
    # These are signal handlers that will cause a message_box to be
    # displayed by AUTOLOAD if there is not already a sub of that name
    # in any module specified in 'use_modules'.

    'on_about1_activate' => undef,
    'on_connect1_activate' => undef,
    'on_quit1_activate' => undef,
);

sub AUTOLOAD {
    my $self = shift;
    my $type = ref($self)
        or die "$self is not an object so we cannot '$AUTOLOAD'\n",
            "We were called from ".join(", ", caller)."\n\n";
    my $name = $AUTOLOAD;
    $name =~ s/.*://;       # strip fully-qualified portion

    if (exists $self->{$permitted_fields}->{$name} ) {
        # This allows dynamic data methods - see hash fields above
        # eg $class->UI('new_value');
        # or $current_value = $class->UI;
        if (@_) {
            return $self->{$name} = shift;
        } else {
            return $self->{$name};
        }

    } elsif (exists $stubs{$name} ) {
        # This shows dynamic signal handler stub message_box - see hash stubs above
        __PACKAGE__->show_skeleton_message(
            $AUTOLOAD."\n ("._("AUTOLOADED by")." ".__PACKAGE__.")", 
            [$self, @_], 
            __PACKAGE__, 
            'glade2perl_logo.xpm');
        
    } else {
        die "Can't access method `$name' in class $type\n".
            "We were called from ".join(", ", caller)."\n\n";

    }
} # End of sub AUTOLOAD

sub run {
    my ($class) = @_;
    $class->load_translations('gtkdbi');
    # You can use the line below to load a test .mo file before it is installed in 
    # the normal place (eg /usr/local/share/locale/C/LC_MESSAGES/gtkdbi.mo)
#    $class->load_translations('gtkdbi', 'test', undef, '/home/ivan/gtkdbi/ppo/gtkdbi.mo');
    Gtk->init;
    my $window = $class->new;
    $window->TOPLEVEL->show;
    Gtk->main;
} # End of sub run

sub DESTROY {
    # This sub will be called on object destruction
} # End of sub DESTROY

sub new {
#
# This sub will create the UI window
    my $that  = shift;
    my $class = ref($that) || $that;
    my $self  = {
        $permitted_fields   => \%fields, %fields,
        _permitted_stubs    => \%stubs,  %stubs,
    };
    my ($forms, $widgets, $data, $work);
    my $instance = 1;
    # Get a unique toplevel widget structure
    while (defined $__PACKAGE__::all_forms->{"window1-$instance"}) {$instance++;}


    #
    # Construct a GtkWindow 'window1'
    $widgets->{'window1'} = new Gtk::Window;
    $widgets->{'window1'}->set_title(_('gtkdbi - Not Connected') );
    $widgets->{'window1'}->position('none' );
    $widgets->{'window1'}->set_policy(0, 1, 0 );
    $widgets->{'window1'}->set_modal(0 );
    $widgets->{'window1'}->realize;
    $forms->{'window1'}{'tooltips'} = new Gtk::Tooltips;
    $forms->{'window1'}{'accelgroup'} = new Gtk::AccelGroup;
    $forms->{'window1'}{'accelgroup'}->attach($widgets->{'window1'} );
    $forms->{'window1'}{'window1'} = $widgets->{'window1'};
	#
	# Construct a GtkVBox 'vbox1'
	$widgets->{'vbox1'} = new Gtk::VBox(0, 0 );
	$forms->{'window1'}{'window1'}->add($widgets->{'vbox1'} );
	$widgets->{'vbox1'}->show;
	$forms->{'window1'}{'vbox1'} = $widgets->{'vbox1'};
	    #
	    # Construct a GtkHandleBox 'handlebox1'
	    $widgets->{'handlebox1'} = new Gtk::HandleBox;
	    $widgets->{'handlebox1'}->set_handle_position('left' );
	    $widgets->{'handlebox1'}->set_shadow_type('out' );
	    $widgets->{'handlebox1'}->set_snap_edge('top' );
	    $forms->{'window1'}{'vbox1'}->add($widgets->{'handlebox1'} );
	    $widgets->{'handlebox1'}->show;
	    $forms->{'window1'}{'handlebox1'} = $widgets->{'handlebox1'};
		#
		# Construct a GtkMenuBar 'menubar3'
		$widgets->{'menubar3'} = new Gtk::MenuBar;
		$widgets->{'menubar3'}->set_shadow_type('out' );
		$forms->{'window1'}{'handlebox1'}->add($widgets->{'menubar3'} );
		$widgets->{'menubar3'}->show;
		$forms->{'window1'}{'menubar3'} = $widgets->{'menubar3'};
		    #
		    # Construct a GtkMenuItem 'file1'
		    $widgets->{'file1'} = new Gtk::MenuItem(_('File'));
		    $forms->{'window1'}{'menubar3'}->append($widgets->{'file1'} );
		    $widgets->{'file1'}->show;
		    $forms->{'window1'}{'file1'} = $widgets->{'file1'};
			#
			# Construct a GtkMenu 'file1_menu'
			$widgets->{'file1_menu'} = new Gtk::Menu;
			$forms->{'window1'}{'file1'}->set_submenu($widgets->{'file1_menu'} );
			$forms->{'window1'}{'file1_menu'} = $widgets->{'file1_menu'};
			    #
			    # Construct a GtkMenuItem 'connect1'
			    $widgets->{'connect1'} = new Gtk::MenuItem(_('Connect'));
			    $forms->{'window1'}{'file1_menu'}->append($widgets->{'connect1'} );
			    $widgets->{'connect1'}->show;
			    $forms->{'window1'}{'connect1'} = $widgets->{'connect1'};
			    #
			    # Construct a GtkMenuItem 'separator1'
			    $widgets->{'separator1'} = new Gtk::MenuItem;
			    $forms->{'window1'}{'file1_menu'}->append($widgets->{'separator1'} );
			    $widgets->{'separator1'}->show;
			    $forms->{'window1'}{'separator1'} = $widgets->{'separator1'};
			    #
			    # Construct a GtkMenuItem 'quit1'
			    $widgets->{'quit1'} = new Gtk::MenuItem(_('Quit'));
			    $forms->{'window1'}{'file1_menu'}->append($widgets->{'quit1'} );
			    $widgets->{'quit1'}->show;
			    $forms->{'window1'}{'quit1'} = $widgets->{'quit1'};
		    #
		    # Construct a GtkMenuItem 'help1'
		    $widgets->{'help1'} = new Gtk::MenuItem(_('Help'));
		    $widgets->{'help1'}->right_justify;
		    $forms->{'window1'}{'menubar3'}->append($widgets->{'help1'} );
		    $widgets->{'help1'}->show;
		    $forms->{'window1'}{'help1'} = $widgets->{'help1'};
			#
			# Construct a GtkMenu 'help1_menu'
			$widgets->{'help1_menu'} = new Gtk::Menu;
			$forms->{'window1'}{'help1'}->set_submenu($widgets->{'help1_menu'} );
			$forms->{'window1'}{'help1_menu'} = $widgets->{'help1_menu'};
			    #
			    # Construct a GtkMenuItem 'about1'
			    $widgets->{'about1'} = new Gtk::MenuItem(_('About'));
			    $forms->{'window1'}{'help1_menu'}->append($widgets->{'about1'} );
			    $widgets->{'about1'}->show;
			    $forms->{'window1'}{'about1'} = $widgets->{'about1'};
	    $forms->{'window1'}{'vbox1'}->set_child_packing($forms->{'window1'}{'handlebox1'}, 0, 1, 0, 'start' );
	    #
	    # Construct a GtkNotebook 'notebook1'
	    $widgets->{'notebook1'} = new Gtk::Notebook;
	    $forms->{'window1'}{'vbox1'}->add($widgets->{'notebook1'} );
	    $widgets->{'notebook1'}->show;
	    $forms->{'window1'}{'notebook1'} = $widgets->{'notebook1'};
	    $forms->{'window1'}{'notebook1'}->can_focus(1 );
	    $forms->{'window1'}{'notebook1'}->set_tab_pos('top' );
	    $forms->{'window1'}{'notebook1'}->set_show_tabs(1 );
	    $forms->{'window1'}{'notebook1'}->set_show_border(1 );
	    $forms->{'window1'}{'notebook1'}->set_scrollable(1 );
	    $forms->{'window1'}{'notebook1'}->set_tab_hborder(2 );
	    $forms->{'window1'}{'notebook1'}->set_tab_vborder(2 );
		#
		# Construct a GtkScrolledWindow 'scrolledwindow1'
		$widgets->{'scrolledwindow1'} = new Gtk::ScrolledWindow( undef, undef);
		$widgets->{'scrolledwindow1'}->set_policy('always', 'always' );
		$widgets->{'scrolledwindow1'}->border_width(0 );
		$widgets->{'scrolledwindow1'}->hscrollbar->set_update_policy('continuous' );
		$widgets->{'scrolledwindow1'}->vscrollbar->set_update_policy('continuous' );
		$widgets->{'scrolledwindow1'}->show;
		$forms->{'window1'}{'scrolledwindow1'} = $widgets->{'scrolledwindow1'};
		    #
		    # Construct a GtkViewport 'viewport1'
		    $widgets->{'viewport1'} = new Gtk::Viewport(new Gtk::Adjustment( 0.0, 0.0, 101.0, 0.1, 1.0, 1.0), new Gtk::Adjustment( 0.0, 0.0, 101.0, 0.1, 1.0, 1.0) );
		    $widgets->{'viewport1'}->set_shadow_type('in' );
		    $forms->{'window1'}{'scrolledwindow1'}->add_with_viewport($widgets->{'viewport1'} );
		    $widgets->{'viewport1'}->show;
		    $forms->{'window1'}{'viewport1'} = $widgets->{'viewport1'};
			#
			# Construct a GtkHBox 'hbox1'
			$widgets->{'hbox1'} = new Gtk::HBox(0, 0 );
			$forms->{'window1'}{'viewport1'}->add($widgets->{'hbox1'} );
			$widgets->{'hbox1'}->show;
			$forms->{'window1'}{'hbox1'} = $widgets->{'hbox1'};
			    #
			    # Construct a GtkVBox 'vbox2'
			    $widgets->{'vbox2'} = new Gtk::VBox(0, 0 );
			    $forms->{'window1'}{'hbox1'}->add($widgets->{'vbox2'} );
			    $widgets->{'vbox2'}->show;
			    $forms->{'window1'}{'vbox2'} = $widgets->{'vbox2'};
				#
				# Construct a GtkButton 'button1'
				$widgets->{'button1'} = new Gtk::Button(_('button1'));
				$forms->{'window1'}{'vbox2'}->add($widgets->{'button1'} );
				$widgets->{'button1'}->show;
				$forms->{'window1'}{'button1'} = $widgets->{'button1'};
				$forms->{'window1'}{'button1'}->can_focus(1 );
				$forms->{'window1'}{'vbox2'}->set_child_packing($forms->{'window1'}{'button1'}, 0, 0, 0, 'start' );
				#
				# Construct a GtkEntry 'entry2'
				$widgets->{'entry2'} = new Gtk::Entry;
				$forms->{'window1'}{'vbox2'}->add($widgets->{'entry2'} );
				$widgets->{'entry2'}->show;
				$forms->{'window1'}{'entry2'} = $widgets->{'entry2'};
				$forms->{'window1'}{'entry2'}->can_focus(1 );
				$forms->{'window1'}{'entry2'}->set_text(_('') );
				$forms->{'window1'}{'entry2'}->set_max_length(0 );
				$forms->{'window1'}{'entry2'}->set_visibility(1 );
				$forms->{'window1'}{'entry2'}->set_editable(1 );
				$forms->{'window1'}{'vbox2'}->set_child_packing($forms->{'window1'}{'entry2'}, 0, 0, 0, 'start' );
			    $forms->{'window1'}{'hbox1'}->set_child_packing($forms->{'window1'}{'vbox2'}, 1, 1, 0, 'start' );
			    #
			    # Construct a GtkVBox 'vbox3'
			    $widgets->{'vbox3'} = new Gtk::VBox(0, 0 );
			    $forms->{'window1'}{'hbox1'}->add($widgets->{'vbox3'} );
			    $widgets->{'vbox3'}->show;
			    $forms->{'window1'}{'vbox3'} = $widgets->{'vbox3'};
				#
				# Construct a GtkButton 'button2'
				$widgets->{'button2'} = new Gtk::Button(_('button2'));
				$forms->{'window1'}{'vbox3'}->add($widgets->{'button2'} );
				$widgets->{'button2'}->show;
				$forms->{'window1'}{'button2'} = $widgets->{'button2'};
				$forms->{'window1'}{'button2'}->can_focus(1 );
				$forms->{'window1'}{'vbox3'}->set_child_packing($forms->{'window1'}{'button2'}, 0, 0, 0, 'start' );
				#
				# Construct a GtkEntry 'entry3'
				$widgets->{'entry3'} = new Gtk::Entry;
				$forms->{'window1'}{'vbox3'}->add($widgets->{'entry3'} );
				$widgets->{'entry3'}->show;
				$forms->{'window1'}{'entry3'} = $widgets->{'entry3'};
				$forms->{'window1'}{'entry3'}->can_focus(1 );
				$forms->{'window1'}{'entry3'}->set_text(_('') );
				$forms->{'window1'}{'entry3'}->set_max_length(0 );
				$forms->{'window1'}{'entry3'}->set_visibility(1 );
				$forms->{'window1'}{'entry3'}->set_editable(1 );
				$forms->{'window1'}{'vbox3'}->set_child_packing($forms->{'window1'}{'entry3'}, 0, 0, 0, 'start' );
			    $forms->{'window1'}{'hbox1'}->set_child_packing($forms->{'window1'}{'vbox3'}, 1, 1, 0, 'start' );
		#
		# Construct a GtkLabel 'tablelabel1'
		$widgets->{'tablelabel1'} = new Gtk::Label(_('tabletable1'));
		$widgets->{'tablelabel1'}->set_justify('center' );
		$widgets->{'tablelabel1'}->set_line_wrap(0 );
		$forms->{'window1'}{'notebook1'}->append_page($forms->{'window1'}{'scrolledwindow1'}, $widgets->{'tablelabel1'} );
		$widgets->{'tablelabel1'}->show;
		$forms->{'window1'}{'tablelabel1'} = $widgets->{'tablelabel1'};
		$forms->{'window1'}{'tablelabel1'}->set_alignment(0.5, 0.5 );
	    $forms->{'window1'}{'vbox1'}->set_child_packing($forms->{'window1'}{'notebook1'}, 1, 1, 0, 'start' );
	    #
	    # Construct a GtkEntry 'entry1'
	    $widgets->{'entry1'} = new Gtk::Entry;
	    $forms->{'window1'}{'vbox1'}->add($widgets->{'entry1'} );
	    $widgets->{'entry1'}->show;
	    $forms->{'window1'}{'entry1'} = $widgets->{'entry1'};
	    $forms->{'window1'}{'entry1'}->can_focus(1 );
	    $forms->{'window1'}{'entry1'}->set_text(_('Not Connected') );
	    $forms->{'window1'}{'entry1'}->set_max_length(0 );
	    $forms->{'window1'}{'entry1'}->set_visibility(1 );
	    $forms->{'window1'}{'entry1'}->set_editable(1 );
	    $forms->{'window1'}{'vbox1'}->set_child_packing($forms->{'window1'}{'entry1'}, 0, 0, 0, 'end' );
    #
    # Connect all signals now that widgets are constructed
    $forms->{'window1'}{'connect1'}->signal_connect( 'activate', "$class\::on_connect1_activate", '', 'connect1', "window1-$instance" );
    $forms->{'window1'}{'quit1'}->signal_connect( 'activate', "$class\::on_quit1_activate", '', 'quit1', "window1-$instance" );
    $forms->{'window1'}{'about1'}->signal_connect( 'activate', "$class\::on_about1_activate", '', 'about1', "window1-$instance" );


    #
    # Return the constructed UI
    bless $self, $class;
    $self->FORM($forms->{'window1'});
    $self->TOPLEVEL($self->FORM->{'window1'});
    $self->FORM->{'TOPLEVEL'} = ($self->TOPLEVEL);
    $self->INSTANCE("window1-$instance");
    $self->CLASS_HIERARCHY($self->FORM->{'__WH'});
    $self->WIDGET_HIERARCHY($self->FORM->{'__CH'});
    $__PACKAGE__::all_forms->{$self->INSTANCE} = $self->FORM;
    
    return $self;
} # End of sub new










1;

__END__

#===============================================================================
#==== Documentation
#===============================================================================
=pod

=head1 NAME

gtkdbi - version 0.01 Tue Oct 23 01:49:12 PDT 2001

No description

=head1 SYNOPSIS

 use gtkdbi;

 To construct the window object and show it call
 
 Gtk->init;
 my $window = window1->new;
 $window->TOPLEVEL->show;
 Gtk->main;
 
 OR use the shorthand for the above calls
 
 window1->app_run;

=head1 DESCRIPTION

Unfortunately, the author has not yet written any documentation :-(

=head1 AUTHOR

Ivan Kohler,Chess room,888-670-SISD,215-996-0824 <ivan\@rootwood.haze.st>

=cut
