ViewVC Help
View File | Revision Log | Show Annotations | Download File
/cvs/CV/bin/cv
Revision: 1.8
Committed: Mon Nov 3 16:44:19 2003 UTC (20 years, 8 months ago) by root
Branch: MAIN
Changes since 1.7: +8 -96 lines
Log Message:
*** empty log message ***

File Contents

# User Rev Content
1 root 1.1 #!/opt/bin/perl
2    
3 root 1.2 use Gtk2 -init;
4 root 1.1 use Gtk2::Gdk::Keysyms;
5    
6     use Gtk2::CV::ImageWindow;
7 root 1.2 use Gtk2::CV::Schnauzer;
8 root 1.1
9     my $viewer;
10    
11 root 1.2 sub new_schnauzer {
12     my $w = new Gtk2::Window;
13     $w->add (my $s = new Gtk2::CV::Schnauzer);
14    
15 root 1.6 $s->signal_connect (activate => sub { $viewer->load_image ($_[1]) });
16 root 1.4 $s->signal_connect (key_press_event => \&std_keys);
17    
18 root 1.6 $s->set_dir (".");
19 root 1.2 $w->show_all;
20    
21 root 1.8 $s;
22 root 1.2 }
23 root 1.1
24 root 1.4 sub std_keys {
25     my $key = $_[1]->keyval;
26    
27     my $ctrl = grep $_ eq "control-mask", @{$_[1]->state};
28    
29     if ($key == $Gtk2::Gdk::Keysyms{q}) {
30     main_quit Gtk2;
31     } elsif ($ctrl && $key == $Gtk2::Gdk::Keysyms{v}) {
32     new_schnauzer;
33     } else {
34     return 0;
35     }
36    
37     1;
38     }
39    
40 root 1.1 $viewer = new Gtk2::CV::ImageWindow;
41 root 1.3 $viewer->signal_connect (key_press_event => \&std_keys);
42 root 1.4 $viewer->signal_connect (delete_event => sub { main_quit Gtk2 });
43 root 1.1
44 root 1.8 if (@ARGV) {
45     $viewer->load_image ($ARGV[0]);
46 root 1.1
47 root 1.8 if (@ARGV > 1) {
48     new_schnauzer->set_files (\@ARGV);
49     }
50     }
51 root 1.1
52 root 1.8 $viewer->show_all;
53 root 1.1
54     main Gtk2;
55    
56