#!/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 'pick_window' class                              
#==============================================================================
package pick_window;
require 5.000; use strict 'vars', 'refs', 'subs';
# UI class 'pick_window' (version 0.01)
# 
# Copyright (c) Date Mon Feb  9 16:56:06 CST 2004
# Author Brian Hackbarth <hackbart@llama.cs.wisc.edu>
#
# Unspecified copying policy, please contact the author
# Brian Hackbarth <hackbart@llama.cs.wisc.edu>
#
#==============================================================================
# This perl source file was automatically generated by 
# Glade::PerlGenerate version 0.61 - Sun Nov 17 03:21:11 GMT 2002
# Copyright (c) Author Dermot Musgrove <dermot.musgrove@virgin.net>
#
# from Glade file /afs/.cs.wisc.edu/s/lab-1/src/mchange/mcheck/mcheck.glade
# Mon Feb  9 16:56:06 CST 2004
#==============================================================================

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 = 'Mcheck';
    $VERSION = '0.01';
    $AUTHOR  = 'Brian Hackbarth <hackbart@llama.cs.wisc.edu>';
    $DATE    = 'Mon Feb  9 16:56:06 CST 2004';
    $permitted_fields = '_permitted_fields';             
} # End of sub BEGIN

    $Glade::PerlRun::pixmaps_directory ||= '/afs/.cs.wisc.edu/s/lab-1/src/mchange/mcheck/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  => 'Mcheck',
    VERSION  => '0.01',
    AUTHOR   => 'Brian Hackbarth <hackbart@llama.cs.wisc.edu>',
    DATE     => 'Mon Feb  9 16:56:06 CST 2004',
    INSTANCE => 'recurse_window',
    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_cancel_clicked' => undef,
    'on_ok_clicked' => undef,
    'on_pick_window_destroy' => 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__, 
            '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('Mcheck');
    # 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/en_US.UTF-8/LC_MESSAGES/Mcheck.mo)
#    $class->load_translations('Mcheck', 'test', undef, '/afs/.cs.wisc.edu/s/lab-1/src/mchange/mcheck/ppo/Mcheck.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->{"pick_window-$instance"}) {$instance++;}


    #
    # Construct a GtkWindow 'pick_window'
    $widgets->{'pick_window'} = new Gtk::Window;
    $widgets->{'pick_window'}->set_title(_('mCheck') );
    $widgets->{'pick_window'}->set_position('none' );
    $widgets->{'pick_window'}->set_policy(0, 1, 0 );
    $widgets->{'pick_window'}->set_modal(0 );
    $widgets->{'pick_window'}->realize;
    $forms->{'pick_window'}{'tooltips'} = new Gtk::Tooltips;
    $forms->{'pick_window'}{'accelgroup'} = new Gtk::AccelGroup;
    $forms->{'pick_window'}{'accelgroup'}->attach($widgets->{'pick_window'} );
    $forms->{'pick_window'}{'pick_window'} = $widgets->{'pick_window'};
	#
	# Construct a GtkVBox 'vbox2'
	$widgets->{'vbox2'} = new Gtk::VBox(0, 8 );
	$forms->{'pick_window'}{'pick_window'}->add($widgets->{'vbox2'} );
	$widgets->{'vbox2'}->show;
	$forms->{'pick_window'}{'vbox2'} = $widgets->{'vbox2'};
	$forms->{'pick_window'}{'vbox2'}->border_width(8 );
	    #
	    # Construct a GtkLabel 'label1'
	    $widgets->{'label1'} = new Gtk::Label(_('On !!HOSTNAME!! I can\'t figure out which ethernet interface you\'re using.  Please pick one of the parts on this list.  

If the interface isn\'t on this list you can specify another one (in the format <invnum>:<interfacenum>) as long as you promise to fix the inventory ASAP.'));
	    $widgets->{'label1'}->set_justify('center' );
	    $widgets->{'label1'}->set_line_wrap(1 );
	    $forms->{'pick_window'}{'vbox2'}->add($widgets->{'label1'} );
	    $widgets->{'label1'}->show;
	    $forms->{'pick_window'}{'label1'} = $widgets->{'label1'};
	    $forms->{'pick_window'}{'label1'}->set_alignment(0.5, 0.5 );
	    $forms->{'pick_window'}{'vbox2'}->set_child_packing($forms->{'pick_window'}{'label1'}, 0, 0, 0, 'start' );
	    #
	    # Construct a GtkCombo 'part'
	    $widgets->{'part'} = new Gtk::Combo;
	    $widgets->{'part'}->set_case_sensitive(0 );
	    $widgets->{'part'}->set_use_arrows(1 );
	    $widgets->{'part'}->set_use_arrows_always(0 );
	    $widgets->{'part'}->set_popdown_strings( '' );
	    $forms->{'pick_window'}{'vbox2'}->add($widgets->{'part'} );
	    $widgets->{'part'}->show;
	    $forms->{'pick_window'}{'part'} = $widgets->{'part'};
		#
		# Construct a GtkEntry 'combo-entry1'
		$widgets->{'combo-entry1'} = $forms->{'pick_window'}{'part'}->entry;
		$widgets->{'combo-entry1'}->show;
		$forms->{'pick_window'}{'combo-entry1'} = $widgets->{'combo-entry1'};
		$forms->{'pick_window'}{'combo-entry1'}->can_focus(1 );
		$forms->{'pick_window'}{'combo-entry1'}->set_text(_('') );
		$forms->{'pick_window'}{'combo-entry1'}->set_max_length(0 );
		$forms->{'pick_window'}{'combo-entry1'}->set_visibility(1 );
		$forms->{'pick_window'}{'combo-entry1'}->set_editable(1 );
	    $forms->{'pick_window'}{'vbox2'}->set_child_packing($forms->{'pick_window'}{'part'}, 0, 0, 0, 'start' );
	    #
	    # Construct a GtkHButtonBox 'hbuttonbox2'
	    $widgets->{'hbuttonbox2'} = new Gtk::HButtonBox;
	    $forms->{'pick_window'}{'vbox2'}->add($widgets->{'hbuttonbox2'} );
	    $widgets->{'hbuttonbox2'}->show;
	    $forms->{'pick_window'}{'hbuttonbox2'} = $widgets->{'hbuttonbox2'};
	    $forms->{'pick_window'}{'hbuttonbox2'}->set_layout('spread' );
	    $forms->{'pick_window'}{'hbuttonbox2'}->set_spacing(30 );
	    $forms->{'pick_window'}{'hbuttonbox2'}->set_child_size(85, 27 );
	    $forms->{'pick_window'}{'hbuttonbox2'}->set_child_ipadding(7, 0 );
		#
		# Construct a GtkButton 'ok'
		$widgets->{'ok'} = new Gtk::Button(_('Ok'));
		$forms->{'pick_window'}{'hbuttonbox2'}->add($widgets->{'ok'} );
		$widgets->{'ok'}->show;
		$forms->{'pick_window'}{'ok'} = $widgets->{'ok'};
		$forms->{'pick_window'}{'ok'}->can_default(1 );
		$forms->{'pick_window'}{'ok'}->can_focus(1 );
		#
		# Construct a GtkButton 'cancel'
		$widgets->{'cancel'} = new Gtk::Button(_('Cancel'));
		$forms->{'pick_window'}{'hbuttonbox2'}->add($widgets->{'cancel'} );
		$widgets->{'cancel'}->show;
		$forms->{'pick_window'}{'cancel'} = $widgets->{'cancel'};
		$forms->{'pick_window'}{'cancel'}->can_default(1 );
		$forms->{'pick_window'}{'cancel'}->can_focus(1 );
	    $forms->{'pick_window'}{'vbox2'}->set_child_packing($forms->{'pick_window'}{'hbuttonbox2'}, 0, 0, 0, 'start' );
    #
    # Connect all signals now that widgets are constructed
    $forms->{'pick_window'}{'pick_window'}->signal_connect('destroy', "$class\::on_pick_window_destroy", '', 'pick_window', "pick_window-$instance" );
    $forms->{'pick_window'}{'ok'}->signal_connect('clicked', "$class\::on_ok_clicked", '', 'ok', "pick_window-$instance" );
    $forms->{'pick_window'}{'cancel'}->signal_connect('clicked', "$class\::on_cancel_clicked", '', 'cancel', "pick_window-$instance" );


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









#==============================================================================
#=== This is the 'recurse_window' class                              
#==============================================================================
package recurse_window;
require 5.000; use strict 'vars', 'refs', 'subs';
# UI class 'recurse_window' (version 0.01)
# 
# Copyright (c) Date Mon Feb  9 16:56:06 CST 2004
# Author Brian Hackbarth <hackbart@llama.cs.wisc.edu>
#
# Unspecified copying policy, please contact the author
# Brian Hackbarth <hackbart@llama.cs.wisc.edu>
#
#==============================================================================
# This perl source file was automatically generated by 
# Glade::PerlGenerate version 0.61 - Sun Nov 17 03:21:11 GMT 2002
# Copyright (c) Author Dermot Musgrove <dermot.musgrove@virgin.net>
#
# from Glade file /afs/.cs.wisc.edu/s/lab-1/src/mchange/mcheck/mcheck.glade
# Mon Feb  9 16:56:06 CST 2004
#==============================================================================

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 = 'Mcheck';
    $VERSION = '0.01';
    $AUTHOR  = 'Brian Hackbarth <hackbart@llama.cs.wisc.edu>';
    $DATE    = 'Mon Feb  9 16:56:06 CST 2004';
    $permitted_fields = '_permitted_fields';             
} # End of sub BEGIN

    $Glade::PerlRun::pixmaps_directory ||= '/afs/.cs.wisc.edu/s/lab-1/src/mchange/mcheck/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  => 'Mcheck',
    VERSION  => '0.01',
    AUTHOR   => 'Brian Hackbarth <hackbart@llama.cs.wisc.edu>',
    DATE     => 'Mon Feb  9 16:56:06 CST 2004',
    INSTANCE => 'recurse_window',
    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_cancel_clicked' => undef,
    'on_ok_clicked' => undef,
    'on_recurse_window_destroy' => 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__, 
            '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('Mcheck');
    # 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/en_US.UTF-8/LC_MESSAGES/Mcheck.mo)
#    $class->load_translations('Mcheck', 'test', undef, '/afs/.cs.wisc.edu/s/lab-1/src/mchange/mcheck/ppo/Mcheck.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->{"recurse_window-$instance"}) {$instance++;}


    #
    # Construct a GtkWindow 'recurse_window'
    $widgets->{'recurse_window'} = new Gtk::Window;
    $widgets->{'recurse_window'}->set_title(_('mCheck') );
    $widgets->{'recurse_window'}->set_position('none' );
    $widgets->{'recurse_window'}->set_policy(0, 1, 0 );
    $widgets->{'recurse_window'}->set_modal(0 );
    $widgets->{'recurse_window'}->realize;
    $forms->{'recurse_window'}{'tooltips'} = new Gtk::Tooltips;
    $forms->{'recurse_window'}{'accelgroup'} = new Gtk::AccelGroup;
    $forms->{'recurse_window'}{'accelgroup'}->attach($widgets->{'recurse_window'} );
    $forms->{'recurse_window'}{'recurse_window'} = $widgets->{'recurse_window'};
	#
	# Construct a GtkVBox 'vbox1'
	$widgets->{'vbox1'} = new Gtk::VBox(0, 8 );
	$forms->{'recurse_window'}{'recurse_window'}->add($widgets->{'vbox1'} );
	$widgets->{'vbox1'}->show;
	$forms->{'recurse_window'}{'vbox1'} = $widgets->{'vbox1'};
	$forms->{'recurse_window'}{'vbox1'}->border_width(8 );
	    #
	    # Construct a GtkLabel 'label1'
	    $widgets->{'label1'} = new Gtk::Label(_('The new hostname you specified -- !!HOSTNAME!! -- is already in use by another computer.  Please enter the new hostname for that computer.  

If you\'ve already gone through this as part of another mchange, just hit "No Change".'));
	    $widgets->{'label1'}->set_justify('center' );
	    $widgets->{'label1'}->set_line_wrap(1 );
	    $forms->{'recurse_window'}{'vbox1'}->add($widgets->{'label1'} );
	    $widgets->{'label1'}->show;
	    $forms->{'recurse_window'}{'label1'} = $widgets->{'label1'};
	    $forms->{'recurse_window'}{'label1'}->set_alignment(0.5, 0.5 );
	    $forms->{'recurse_window'}{'vbox1'}->set_child_packing($forms->{'recurse_window'}{'label1'}, 0, 0, 0, 'start' );
	    #
	    # Construct a GtkHBox 'hbox1'
	    $widgets->{'hbox1'} = new Gtk::HBox(0, 4 );
	    $forms->{'recurse_window'}{'vbox1'}->add($widgets->{'hbox1'} );
	    $widgets->{'hbox1'}->show;
	    $forms->{'recurse_window'}{'hbox1'} = $widgets->{'hbox1'};
		#
		# Construct a GtkLabel 'label2'
		$widgets->{'label2'} = new Gtk::Label(_('New hostname for !!HOSTNAME!!:'));
		$widgets->{'label2'}->set_justify('center' );
		$widgets->{'label2'}->set_line_wrap(0 );
		$forms->{'recurse_window'}{'hbox1'}->add($widgets->{'label2'} );
		$widgets->{'label2'}->show;
		$forms->{'recurse_window'}{'label2'} = $widgets->{'label2'};
		$forms->{'recurse_window'}{'label2'}->set_alignment(0.5, 0.5 );
		$forms->{'recurse_window'}{'hbox1'}->set_child_packing($forms->{'recurse_window'}{'label2'}, 0, 0, 0, 'start' );
		#
		# Construct a GtkCombo 'hostname'
		$widgets->{'hostname'} = new Gtk::Combo;
		$widgets->{'hostname'}->set_case_sensitive(0 );
		$widgets->{'hostname'}->set_use_arrows(1 );
		$widgets->{'hostname'}->set_use_arrows_always(0 );
		$widgets->{'hostname'}->set_popdown_strings( '' );
		$forms->{'recurse_window'}{'hbox1'}->add($widgets->{'hostname'} );
		$widgets->{'hostname'}->show;
		$forms->{'recurse_window'}{'hostname'} = $widgets->{'hostname'};
		    #
		    # Construct a GtkEntry 'combo-entry2'
		    $widgets->{'combo-entry2'} = $forms->{'recurse_window'}{'hostname'}->entry;
		    $widgets->{'combo-entry2'}->show;
		    $forms->{'recurse_window'}{'combo-entry2'} = $widgets->{'combo-entry2'};
		    $forms->{'recurse_window'}{'combo-entry2'}->can_focus(1 );
		    $forms->{'recurse_window'}{'combo-entry2'}->set_text(_('') );
		    $forms->{'recurse_window'}{'combo-entry2'}->set_max_length(0 );
		    $forms->{'recurse_window'}{'combo-entry2'}->set_visibility(1 );
		    $forms->{'recurse_window'}{'combo-entry2'}->set_editable(1 );
		$forms->{'recurse_window'}{'hbox1'}->set_child_packing($forms->{'recurse_window'}{'hostname'}, 1, 1, 0, 'start' );
	    $forms->{'recurse_window'}{'vbox1'}->set_child_packing($forms->{'recurse_window'}{'hbox1'}, 1, 1, 0, 'start' );
	    #
	    # Construct a GtkHButtonBox 'hbuttonbox1'
	    $widgets->{'hbuttonbox1'} = new Gtk::HButtonBox;
	    $forms->{'recurse_window'}{'vbox1'}->add($widgets->{'hbuttonbox1'} );
	    $widgets->{'hbuttonbox1'}->show;
	    $forms->{'recurse_window'}{'hbuttonbox1'} = $widgets->{'hbuttonbox1'};
	    $forms->{'recurse_window'}{'hbuttonbox1'}->set_layout('spread' );
	    $forms->{'recurse_window'}{'hbuttonbox1'}->set_spacing(30 );
	    $forms->{'recurse_window'}{'hbuttonbox1'}->set_child_size(85, 27 );
	    $forms->{'recurse_window'}{'hbuttonbox1'}->set_child_ipadding(7, 0 );
		#
		# Construct a GtkButton 'ok'
		$widgets->{'ok'} = new Gtk::Button(_('Ok'));
		$forms->{'recurse_window'}{'hbuttonbox1'}->add($widgets->{'ok'} );
		$widgets->{'ok'}->show;
		$forms->{'recurse_window'}{'ok'} = $widgets->{'ok'};
		$forms->{'recurse_window'}{'ok'}->can_default(1 );
		$forms->{'recurse_window'}{'ok'}->can_focus(1 );
		#
		# Construct a GtkButton 'cancel'
		$widgets->{'cancel'} = new Gtk::Button(_('No Change'));
		$forms->{'recurse_window'}{'hbuttonbox1'}->add($widgets->{'cancel'} );
		$widgets->{'cancel'}->show;
		$forms->{'recurse_window'}{'cancel'} = $widgets->{'cancel'};
		$forms->{'recurse_window'}{'cancel'}->can_default(1 );
		$forms->{'recurse_window'}{'cancel'}->can_focus(1 );
	    $forms->{'recurse_window'}{'vbox1'}->set_child_packing($forms->{'recurse_window'}{'hbuttonbox1'}, 0, 0, 0, 'start' );
    #
    # Connect all signals now that widgets are constructed
    $forms->{'recurse_window'}{'recurse_window'}->signal_connect('destroy', "$class\::on_recurse_window_destroy", '', 'recurse_window', "recurse_window-$instance" );
    $forms->{'recurse_window'}{'ok'}->signal_connect('clicked', "$class\::on_ok_clicked", '', 'ok', "recurse_window-$instance" );
    $forms->{'recurse_window'}{'cancel'}->signal_connect('clicked', "$class\::on_cancel_clicked", '', 'cancel', "recurse_window-$instance" );


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









#==============================================================================
#=== This is the 'mac_window' class                              
#==============================================================================
package mac_window;
require 5.000; use strict 'vars', 'refs', 'subs';
# UI class 'mac_window' (version 0.01)
# 
# Copyright (c) Date Mon Feb  9 16:56:06 CST 2004
# Author Brian Hackbarth <hackbart@llama.cs.wisc.edu>
#
# Unspecified copying policy, please contact the author
# Brian Hackbarth <hackbart@llama.cs.wisc.edu>
#
#==============================================================================
# This perl source file was automatically generated by 
# Glade::PerlGenerate version 0.61 - Sun Nov 17 03:21:11 GMT 2002
# Copyright (c) Author Dermot Musgrove <dermot.musgrove@virgin.net>
#
# from Glade file /afs/.cs.wisc.edu/s/lab-1/src/mchange/mcheck/mcheck.glade
# Mon Feb  9 16:56:06 CST 2004
#==============================================================================

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 = 'Mcheck';
    $VERSION = '0.01';
    $AUTHOR  = 'Brian Hackbarth <hackbart@llama.cs.wisc.edu>';
    $DATE    = 'Mon Feb  9 16:56:06 CST 2004';
    $permitted_fields = '_permitted_fields';             
} # End of sub BEGIN

    $Glade::PerlRun::pixmaps_directory ||= '/afs/.cs.wisc.edu/s/lab-1/src/mchange/mcheck/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  => 'Mcheck',
    VERSION  => '0.01',
    AUTHOR   => 'Brian Hackbarth <hackbart@llama.cs.wisc.edu>',
    DATE     => 'Mon Feb  9 16:56:06 CST 2004',
    INSTANCE => 'recurse_window',
    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_cancel_clicked' => undef,
    'on_mac_window_destroy' => undef,
    'on_ok_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__, 
            '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('Mcheck');
    # 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/en_US.UTF-8/LC_MESSAGES/Mcheck.mo)
#    $class->load_translations('Mcheck', 'test', undef, '/afs/.cs.wisc.edu/s/lab-1/src/mchange/mcheck/ppo/Mcheck.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->{"mac_window-$instance"}) {$instance++;}


    #
    # Construct a GtkWindow 'mac_window'
    $widgets->{'mac_window'} = new Gtk::Window;
    $widgets->{'mac_window'}->set_title(_('mCheck') );
    $widgets->{'mac_window'}->set_position('none' );
    $widgets->{'mac_window'}->set_policy(0, 1, 0 );
    $widgets->{'mac_window'}->set_modal(0 );
    $widgets->{'mac_window'}->realize;
    $forms->{'mac_window'}{'tooltips'} = new Gtk::Tooltips;
    $forms->{'mac_window'}{'accelgroup'} = new Gtk::AccelGroup;
    $forms->{'mac_window'}{'accelgroup'}->attach($widgets->{'mac_window'} );
    $forms->{'mac_window'}{'mac_window'} = $widgets->{'mac_window'};
	#
	# Construct a GtkVBox 'vbox3'
	$widgets->{'vbox3'} = new Gtk::VBox(0, 8 );
	$forms->{'mac_window'}{'mac_window'}->add($widgets->{'vbox3'} );
	$widgets->{'vbox3'}->show;
	$forms->{'mac_window'}{'vbox3'} = $widgets->{'vbox3'};
	$forms->{'mac_window'}{'vbox3'}->border_width(8 );
	    #
	    # Construct a GtkLabel 'label1'
	    $widgets->{'label1'} = new Gtk::Label(_('I\'m afraid I don\'t know the mac address for the part !!INVNUM!!.  Please fill it in below.'));
	    $widgets->{'label1'}->set_justify('center' );
	    $widgets->{'label1'}->set_line_wrap(1 );
	    $forms->{'mac_window'}{'vbox3'}->add($widgets->{'label1'} );
	    $widgets->{'label1'}->show;
	    $forms->{'mac_window'}{'label1'} = $widgets->{'label1'};
	    $forms->{'mac_window'}{'label1'}->set_alignment(0.5, 0.5 );
	    $forms->{'mac_window'}{'vbox3'}->set_child_packing($forms->{'mac_window'}{'label1'}, 0, 0, 0, 'start' );
	    #
	    # Construct a GtkEntry 'mac'
	    $widgets->{'mac'} = new Gtk::Entry;
	    $forms->{'mac_window'}{'vbox3'}->add($widgets->{'mac'} );
	    $widgets->{'mac'}->show;
	    $forms->{'mac_window'}{'mac'} = $widgets->{'mac'};
	    $forms->{'mac_window'}{'mac'}->can_focus(1 );
	    $forms->{'mac_window'}{'mac'}->set_text(_('') );
	    $forms->{'mac_window'}{'mac'}->set_max_length(0 );
	    $forms->{'mac_window'}{'mac'}->set_visibility(1 );
	    $forms->{'mac_window'}{'mac'}->set_editable(1 );
	    $forms->{'mac_window'}{'vbox3'}->set_child_packing($forms->{'mac_window'}{'mac'}, 0, 0, 0, 'start' );
	    #
	    # Construct a GtkHButtonBox 'hbuttonbox3'
	    $widgets->{'hbuttonbox3'} = new Gtk::HButtonBox;
	    $forms->{'mac_window'}{'vbox3'}->add($widgets->{'hbuttonbox3'} );
	    $widgets->{'hbuttonbox3'}->show;
	    $forms->{'mac_window'}{'hbuttonbox3'} = $widgets->{'hbuttonbox3'};
	    $forms->{'mac_window'}{'hbuttonbox3'}->set_layout('spread' );
	    $forms->{'mac_window'}{'hbuttonbox3'}->set_spacing(30 );
	    $forms->{'mac_window'}{'hbuttonbox3'}->set_child_size(85, 27 );
	    $forms->{'mac_window'}{'hbuttonbox3'}->set_child_ipadding(7, 0 );
		#
		# Construct a GtkButton 'ok'
		$widgets->{'ok'} = new Gtk::Button(_('Ok'));
		$forms->{'mac_window'}{'hbuttonbox3'}->add($widgets->{'ok'} );
		$widgets->{'ok'}->show;
		$forms->{'mac_window'}{'ok'} = $widgets->{'ok'};
		$forms->{'mac_window'}{'ok'}->can_default(1 );
		$forms->{'mac_window'}{'ok'}->can_focus(1 );
		#
		# Construct a GtkButton 'cancel'
		$widgets->{'cancel'} = new Gtk::Button(_('Cancel'));
		$forms->{'mac_window'}{'hbuttonbox3'}->add($widgets->{'cancel'} );
		$widgets->{'cancel'}->show;
		$forms->{'mac_window'}{'cancel'} = $widgets->{'cancel'};
		$forms->{'mac_window'}{'cancel'}->can_default(1 );
		$forms->{'mac_window'}{'cancel'}->can_focus(1 );
	    $forms->{'mac_window'}{'vbox3'}->set_child_packing($forms->{'mac_window'}{'hbuttonbox3'}, 0, 0, 0, 'start' );
    #
    # Connect all signals now that widgets are constructed
    $forms->{'mac_window'}{'mac_window'}->signal_connect('destroy', "$class\::on_mac_window_destroy", '', 'mac_window', "mac_window-$instance" );
    $forms->{'mac_window'}{'ok'}->signal_connect('clicked', "$class\::on_ok_clicked", '', 'ok', "mac_window-$instance" );
    $forms->{'mac_window'}{'cancel'}->signal_connect('clicked', "$class\::on_cancel_clicked", '', 'cancel', "mac_window-$instance" );


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










1;

__END__

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

=head1 NAME

Mcheck - version 0.01 Mon Feb  9 16:56:06 CST 2004

No description

=head1 SYNOPSIS

 use Mcheck;

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

=head1 DESCRIPTION

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

=head1 AUTHOR

Brian Hackbarth <hackbart@llama.cs.wisc.edu>

=cut
