I have to say, thank you very much for the help!! I must be missing something cause it still is not displaying any lines at all I can't figure why. Its probably something I have overlooked and it may take another pair of eyes to remedy this.
#!/usr/bin/perl -w
use strict;
use Glib qw/TRUE FALSE/;
use Gtk2 -init;
use Goo::Canvas;
#variables
my $ellipsoid = 23; #static WSG83
my $zone;
my @mtp;
my @ps;
my @cs;
my $count = 1;
my $way_ref = [340, 170,340, 230];
#Create Window
my $window = new Gtk2::Window ( "toplevel" );
$window->signal_connect ("delete_event", sub { Gtk2->main_quit; });
$window->set_border_width (10);
$window->set_size_request(640,480);
$window->set_position('center');
#Create Scrolled Window
my $scwin = Gtk2::ScrolledWindow->new();
$scwin->set_policy('always','always');
$window->add($scwin);
#add canvas
my $canvas = Goo::Canvas->new();
$scwin->add($canvas);
my $root = $canvas->get_root_item();
#waypoint lines group
my $way_group = Goo::Canvas::Group->new($root);
#add Background image
my $pixbuf = Gtk2::Gdk::Pixbuf->new_from_file ($filename);
my $image = Goo::Canvas::Image->new($root, $pixbuf, 0, 0,
'width' => $pixbuf->get_width,
'height' => $pixbuf->get_height);
#handle the events
$canvas->signal_connect (event => \&event_handler);
#Start the waypoint connector
my $way_lines = Goo::Canvas::Polyline->new($way_group,TRUE,undef,
stroke_color => 'black',
line_width => 3,
);
$window->show_all;
Gtk2->main;
#------------------------------------------------
#handle the mosue events
sub event_handler {
my ( $widget, $event ) = @_;
#on 2 mouse presses
if ( $event->type eq "2button-press" ) {
my ($x,$y) = ($event->x,$event->y);
print 'x->',$x,' ','y->',$y;
#Drop waypoint icon
my $tgroup = Goo::Canvas::Group->new ($root);
Goo::Canvas::Ellipse->new($tgroup,$x,$y,7.5,7.5,
fill_color => 'purple',
stroke_color => 'black');
Goo::Canvas::Text->new ($tgroup,$count,$x,$y,-1,'GTK_ANCHOR_CE
+NTER',
font => 'Sans Bold 15',
fill_color => 'pink',
);
print " $count\n";
push @$way_ref,$x,$y;
my $points = Goo::Canvas::Points->new($way_ref);
$way_lines->set(points => $points);
$count++;
print "$way_lines\n";
return;
}
}
#------------------------------------------------
|