--- CV/bin/cv 2005/06/27 18:25:50 1.40 +++ CV/bin/cv 2005/07/17 05:01:30 1.46 @@ -37,19 +37,6 @@ $info->set_label ($label); $viewer->load_image ($_[1]); }); - $s->signal_connect (chdir => sub { - my ($self, $dir) = @_; - - my $path = Cwd::abs_path $dir; - - $self->realize; - $self->window->property_change ( - Gtk2::Gdk::Atom->intern ("_X_CWD", 0), - Gtk2::Gdk::Atom->intern ("UTF8_STRING", 0), - Gtk2::Gdk::CHARS, 'replace', - Encode::encode_utf8 $path, - ); - }); Gtk2::CV::Plugin->call (new_schnauzer => $s); @@ -91,11 +78,10 @@ $help->show_all; } else { - #$mainwin->show_all; - $schnauzer->handle_key ($key, $state); + return 0; } - 1; + 1 } { @@ -103,7 +89,10 @@ $viewer->set_title ("CV: Image"); - $viewer->signal_connect (key_press_event => \&std_keys); + $viewer->signal_connect (key_press_event => sub { + &std_keys + or $schnauzer->signal_emit (key_press_event => $_[1]) + }); $viewer->signal_connect (delete_event => sub { main_quit Gtk2 }); $viewer->signal_connect (button3_press_event => sub { @@ -125,9 +114,11 @@ $vbox->add ($schnauzer); $vbox->pack_end (my $frame = new Gtk2::Frame, 0, 0, 0); $frame->add (my $hbox = new Gtk2::HBox 0, 0); - $hbox->pack_start ((new Gtk2::Label "Info"), 0, 0, 0); - $hbox->pack_start (($info = new Gtk2::Label), 1, 1, 0); - $info->set (wrap => 1); + $hbox->pack_start ((new Gtk2::Label "Info: "), 0, 0, 0); + $hbox->pack_end (my $labelwindow = new Gtk2::EventBox, 1, 1, 0); + $labelwindow->add ($info = new Gtk2::Label); + $labelwindow->signal_connect_after (size_request => sub { $_[1]->width (0); 0 }); + $info->set (selectable => 1, xalign => 0, justify => "left"); $schnauzer->set_geometry_hints; } @@ -135,6 +126,7 @@ if (@ARGV) { $schnauzer->set_paths ([map Glib::filename_to_unicode $_, @ARGV]); $schnauzer->show_all; +$viewer->show_all; $schnauzer->handle_key ($Gtk2::Gdk::Keysyms{space}, []); } else { $schnauzer->set_dir (File::Spec->curdir);