aboutsummaryrefslogtreecommitdiff
path: root/Perl/demos/Tk/demos/zinc_lib/zoom.pl
diff options
context:
space:
mode:
Diffstat (limited to 'Perl/demos/Tk/demos/zinc_lib/zoom.pl')
-rw-r--r--Perl/demos/Tk/demos/zinc_lib/zoom.pl180
1 files changed, 0 insertions, 180 deletions
diff --git a/Perl/demos/Tk/demos/zinc_lib/zoom.pl b/Perl/demos/Tk/demos/zinc_lib/zoom.pl
deleted file mode 100644
index a1ad925..0000000
--- a/Perl/demos/Tk/demos/zinc_lib/zoom.pl
+++ /dev/null
@@ -1,180 +0,0 @@
-#!/usr/bin/perl
-# $Id$
-# This simple demo has been developped by C. Schlienger <celine@intuilab.com>
-
-use vars qw( $VERSION );
-($VERSION) = sprintf("%d.%02d", q$Revision$ =~ /(\d+)\.(\d+)/);
-
-
-use Tk;
-use Tk::Zinc;
-use strict;
-
-
-my $defaultfont = '-adobe-helvetica-bold-r-normal--*-120-*-*-*-*-*-*';
-my $mw = MainWindow->new();
-
-###########################################
-# Text zone
-###########################################
-
-my $text = $mw->Text(-relief => 'sunken', -borderwidth => 2, -height => 4);
-$text->pack(qw/-expand yes -fill both/);
-
-$text->insert('0.0',
- 'This toy-appli shows zoom actions on waypoint and curve items.
-The following operations are possible:
- Click "-" to zoom out
- Click "+" to zoom in ' );
-
-###########################################
-# Zinc
-###########################################
-my $zinc_width=600;
-my $zinc_height=500;
-my $zinc = $mw->Zinc(-width => $zinc_width, -height => $zinc_height,
- -font => "10x20",
- -borderwidth => 3, -relief => 'sunken',
- )->pack;
-
-###########################################
-# Waypoints and sector
-###########################################
-
-my $wp_group = $zinc->add('group', 1, -visible => 1);
-
-my $p1=[200, 100];
-my $wp1 = $zinc->add('waypoint',$wp_group, 1,
- -position => $p1,
- -connectioncolor => 'green',
- -symbolcolor => 'blue',
- -labelformat => 'x20x18+0+0',
- -leaderwidth=>'0',
- -labeldx=>'-20'
- );
-$zinc->itemconfigure($wp1, 0,
- -text => "DO",
- );
-
-my $p2=[300, 150];
-my $wp2 = $zinc->add('waypoint',$wp_group, 1,
- -position => $p2,
- -connecteditem => $wp1,
- -connectioncolor => 'blue',
- -symbolcolor => 'blue',
- -labelformat => 'x20x18+0+0',
- -leaderwidth=>'0',
- -labeldx=>'-20',
- );
-
-$zinc->itemconfigure($wp2, 0,
- -text => "RE",
- );
-
-my $p3=[400, 50];
-my $wp3 = $zinc->add('waypoint', $wp_group, 2,
- -position => $p3,
- -connecteditem => $wp2,
- -connectioncolor => 'blue',
- -symbolcolor => 'blue',
- -labelformat => 'x20x18+0+0',
- -leaderwidth=>'0',
- -labeldx=>'20',
- -labeldy=>'+10'
- );
-$zinc->itemconfigure($wp3, 0,
- -text => "MI",
- );
-
-my $p4=[350, 450];
-my $wp4 = $zinc->add('waypoint', $wp_group, 2,
- -position => $p4,
- -connecteditem => $wp2,
- -connectioncolor => 'blue',
- -symbolcolor => 'blue',
- -labelformat => 'x20x18+0+0',
- -leaderwidth=>'0',
- -labeldy=>'-15'
- );
-$zinc->itemconfigure($wp4, 0,
- -text => "FA",
- );
-
-
-my $p5=[300, 250];
-my $wp5 = $zinc->add('waypoint', $wp_group, 2,
- -position => $p5,
- -connectioncolor => 'blue',
- -symbolcolor => 'blue',
- -labelformat => 'x20x18+0+0',
- -leaderwidth=>'0',
- -labeldy=>'-15'
- );
-$zinc->itemconfigure($wp5, 0,
- -text => "SOL",
- );
-
-
-my $p6=[170, 240];
-my $wp6 = $zinc->add('waypoint', $wp_group, 2,
- -position => $p6,
- -connecteditem => $wp5,
- -connectioncolor => 'blue',
- -symbolcolor => 'blue',
- -labelformat => 'x20x18+0+0',
- -leaderwidth=>'0',
- -labeldx=>'-20'
- );
-$zinc->itemconfigure($wp6, 0,
- -text => "LA",
- );
-
-my $p7=[550, 200];
-my $wp7 = $zinc->add('waypoint', $wp_group, 2,
- -position => $p7,
- -connecteditem => $wp5,
- -connectioncolor => 'blue',
- -symbolcolor => 'blue',
- -labelformat => 'x20x18+0+0',
- -leaderwidth=>'0',
- -labeldx=>'20'
- );
-$zinc->itemconfigure($wp7, 0,
- -text => "SI",
- );
-
-
-my $sector = $zinc ->add('curve',$wp_group,[300,0,400,50,500,100,550,200,550,400,350,450,170,240,200,100,300,0]);
-
-###################################################
-# control panel
-###################################################
-my $rc = $mw->Frame()->pack();
-
-#the reference of the scale function is top-left corner of the zinc object
-#so we first translate the group to zoom in order to put its center on top-left corner
-#change the scale of the group
-#translate the group to put it back at the center of the zinc object
-
-my $minus=$rc->Button(-width => 2,
- -height => 2,
- -text => '-',
- -command=>sub{
- $zinc->translate($wp_group,-$zinc_width/2,-$zinc_height/2);
- $zinc->scale($wp_group,0.8,0.8);
- $zinc->translate($wp_group, $zinc_width/2,$zinc_height/2);
- })->pack(-side=>'left');
-
-
-my $plus=$rc->Button(-width => 2,
- -height => 2,
- -text => '+',
- -command=>sub{
- $zinc->translate($wp_group, -$zinc_width/2,-$zinc_height/2);
- $zinc->scale($wp_group,1.2,1.2);
- $zinc->translate($wp_group,$zinc_width/2,$zinc_height/2);
- })->pack(-side => 'right');
-
-
-
-MainLoop;