#!/usr/bin/perl -w use strict; use Gtk2 '-init'; use Glib qw/TRUE FALSE/; #shared variables my $active_interface: shared; #create dummy main window my $main_window = Gtk2::Window->new('toplevel'); $main_window->signal_connect(delete_event=> sub{Gtk2->main_quit}); my $label = Gtk2::Label->new('TEST '); my $main_table = Gtk2::Table->new(2, 1, FALSE); $main_table->attach_defaults($label, 0, 1, 0, 1); $main_window->add($main_table); $main_window->show_all; &start_up; Gtk2->main; #The start up askng the user what position they are in sub start_up{ #the User interface select window my $start_up = Gtk2::Window->new('toplevel'); #create table my $job_table = Gtk2::Table->new(3, 1, FALSE); #label my $job_label = Gtk2::Label->new(" Select User Interface "); #Combobox to select user my $job_select = Gtk2::ComboBox->new_text; $job_select->append_text('Spotter'); $job_select->append_text('Tracker'); $job_select->append_text('VC Base'); $job_select->append_text('Met Base'); $job_select->set_active(0); #add the Ok button my $job_button = Gtk2::Button->new('Start'); #add to table $job_table->attach_defaults( $job_label, 0, 1, 0, 1); $job_table->attach_defaults( $job_select, 0, 1, 1, 2); $job_table->attach_defaults( $job_button, 0, 1, 2, 3); #add widgets $start_up->add($job_table); $start_up->show_all; #capture the interface type to use and display in the main window $job_button->signal_connect('button-press-event' => sub { $active_interface = $job_select->get_active_text; my $active_interface_label = Gtk2::Label($active_interface); $main_table->attach_defaults($active_interface_label, 0, 1, 1, 2); $start_up->destroy}); }