ViewVC Help
View File | Revision Log | Show Annotations | Download File
/cvs/CV/bin/cv
Revision: 1.9
Committed: Mon Nov 3 23:34:43 2003 UTC (20 years, 7 months ago) by root
Branch: MAIN
Changes since 1.8: +8 -4 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 root 1.9 my $schnauzer;
11 root 1.1
12 root 1.2 sub new_schnauzer {
13     my $w = new Gtk2::Window;
14     $w->add (my $s = new Gtk2::CV::Schnauzer);
15    
16 root 1.6 $s->signal_connect (activate => sub { $viewer->load_image ($_[1]) });
17 root 1.9 $s->signal_connect_after (key_press_event => \&std_keys);
18 root 1.4
19 root 1.6 $s->set_dir (".");
20 root 1.2 $w->show_all;
21    
22 root 1.8 $s;
23 root 1.2 }
24 root 1.1
25 root 1.4 sub std_keys {
26     my $key = $_[1]->keyval;
27 root 1.9 my $state = $_[1]->state;
28 root 1.4
29 root 1.9 my $ctrl = grep $_ eq "control-mask", @$state;
30 root 1.4
31     if ($key == $Gtk2::Gdk::Keysyms{q}) {
32     main_quit Gtk2;
33     } elsif ($ctrl && $key == $Gtk2::Gdk::Keysyms{v}) {
34     new_schnauzer;
35     } else {
36 root 1.9 $schnauzer->handle_key ($key, $state);
37 root 1.4 }
38    
39     1;
40     }
41    
42 root 1.1 $viewer = new Gtk2::CV::ImageWindow;
43 root 1.3 $viewer->signal_connect (key_press_event => \&std_keys);
44 root 1.4 $viewer->signal_connect (delete_event => sub { main_quit Gtk2 });
45 root 1.1
46 root 1.9 $schnauzer = new_schnauzer;
47    
48 root 1.8 if (@ARGV) {
49     $viewer->load_image ($ARGV[0]);
50 root 1.1
51 root 1.8 if (@ARGV > 1) {
52 root 1.9 $schnauzer->set_files (\@ARGV);
53 root 1.8 }
54     }
55 root 1.1
56 root 1.8 $viewer->show_all;
57 root 1.1
58     main Gtk2;
59    
60