ViewVC Help
View File | Revision Log | Show Annotations | Download File
/cvs/CV/bin/cv
(Generate patch)

Comparing CV/bin/cv (file contents):
Revision 1.71 by root, Thu Oct 4 10:30:12 2007 UTC vs.
Revision 1.75 by root, Sat Mar 1 04:11:26 2008 UTC

1#!/opt/bin/perl 1#!/opt/bin/perl
2 2
3use Cwd (); 3use Cwd ();
4use Encode (); 4use Encode ();
5use File::Glob ();
5 6
6use Gtk2 -init; 7use Gtk2 -init;
7use Gtk2::Gdk::Keysyms; 8use Gtk2::Gdk::Keysyms;
8 9
9use Gtk2::CV; 10use Gtk2::CV;
36 my $s = new Gtk2::CV::Schnauzer; 37 my $s = new Gtk2::CV::Schnauzer;
37 38
38 $s->signal_connect_after (key_press_event => \&std_keys); 39 $s->signal_connect_after (key_press_event => \&std_keys);
39 $s->signal_connect (activate => sub { 40 $s->signal_connect (activate => sub {
40 my $label = sprintf "%s (%d)", 41 my $label = sprintf "%s (%d)",
41 (File::Spec->splitpath ($_[1]))[2], 42 (Glib::filename_display_name +(File::Spec->splitpath ($_[1]))[2]),
42 -s $_[1]; 43 -s $_[1];
43 $info->set_label ($label); 44 $info->set_label ($label);
44 $viewer->load_image ($_[1]) if $viewer; # TODO: error, or chose ANY viewer 45 $viewer->load_image ($_[1]) if $viewer; # TODO: error, or chose ANY viewer
45 }); 46 });
46 47
112 $s->set_geometry_hints; 113 $s->set_geometry_hints;
113 $w->show_all; 114 $w->show_all;
114 115
115 } elsif ($ctrl && $key == $Gtk2::Gdk::Keysyms{h}) { 116 } elsif ($ctrl && $key == $Gtk2::Gdk::Keysyms{h}) {
116 unless ($help) { 117 unless ($help) {
117 require Gtk2::PodViewer; 118 require Gtk2::Ex::PodViewer;
118 119
119 $help = new Gtk2::Window; 120 $help = new Gtk2::Window;
120 $help->set_role ("help"); 121 $help->set_role ("help");
121 $help->set_title ("CV: Help"); 122 $help->set_title ("CV: Help");
122 $help->set_default_size (500, 300); 123 $help->set_default_size (500, 300);
123 $help->signal_connect (delete_event => sub { $help->hide; 1 }); 124 $help->signal_connect (delete_event => sub { $help->hide; 1 });
124 125
125 $help->add (my $sw = new Gtk2::ScrolledWindow); 126 $help->add (my $sw = new Gtk2::ScrolledWindow);
126 $sw->add (my $h = new Gtk2::PodViewer); 127 $sw->add (my $h = new Gtk2::Ex::PodViewer);
127 128
128 #binmode DATA, ":utf8"; 129 #binmode DATA, ":utf8";
129 $h->load_string (do { local $/; <DATA> }); 130 $h->load_string (do { local $/; <DATA> });
130 } 131 }
131 132
168 $viewer->show_all; 169 $viewer->show_all;
169 }; 170 };
170 171
171 if (@ARGV == 1 && $ARGV[0] eq "-0r") { 172 if (@ARGV == 1 && $ARGV[0] eq "-0r") {
172 local $/; 173 local $/;
173 $schnauzer->set_paths ([map Glib::filename_to_unicode $_, split /\x00/, <STDIN>], 1, $show_first); 174 $schnauzer->set_paths ([split /\x00/, <STDIN>], 1, $show_first);
174 } elsif (@ARGV == 1 && -d $ARGV[0]) { 175 } elsif (@ARGV == 1 && -d $ARGV[0]) {
175 $schnauzer->set_dir (Glib::filename_to_unicode shift, $show_first); 176 $schnauzer->set_dir (shift, $show_first);
176 } else { 177 } else {
178 if ($ARGV[0] eq "-g") {
179 shift @ARGV;
180 @ARGV = map +(File::Glob::bsd_glob $_, File::Glob::GLOB_BRACE | File::Glob::GLOB_QUOTE), @ARGV;
181 }
177 $schnauzer->set_paths ([map Glib::filename_to_unicode $_, @ARGV], 1, $show_first); 182 $schnauzer->set_paths ([@ARGV], 1, $show_first);
178 } 183 }
179} else { 184} else {
180 $schnauzer->set_dir (File::Spec->curdir, sub { 185 $schnauzer->set_dir (File::Spec->curdir, sub {
181 $mainwin->show_all; 186 $mainwin->show_all;
182 $viewer->show_all; 187 $viewer->show_all;

Diff Legend

Removed lines
+ Added lines
< Changed lines
> Changed lines