X-Git-Url: https://git.decadent.org.uk/gitweb/?a=blobdiff_plain;f=videolink.cpp;h=f20f71bf4cdba0b49c5299d35a07fde8f291c5bc;hb=c24cac1849f737699ac3342d24982b9a16c854d9;hp=4e9fa6b3c27057a7f64f9ae3b0061f274e3da2c7;hpb=4d7a55ea4a24ea85d168d639c6f95c0f2dd23dc5;p=videolink.git diff --git a/videolink.cpp b/videolink.cpp index 4e9fa6b..f20f71b 100644 --- a/videolink.cpp +++ b/videolink.cpp @@ -15,6 +15,7 @@ #include +#include #include #include #include @@ -120,6 +121,7 @@ namespace {".vob", video_format_mpeg2_ps}, {".mpeg", video_format_mpeg2_ps}, {".mpeg2", video_format_mpeg2_ps}, + {".mpg", video_format_mpeg2_ps}, {".voblist", video_format_vob_list} }; for (std::size_t i = 0; @@ -159,7 +161,8 @@ namespace add(browser_widget_); browser_widget_.show(); - Glib::signal_idle().connect(SigC::slot(*this, &base_window::on_idle)); + Glib::signal_idle().connect( + sigc::mem_fun(this, &base_window::on_idle)); } bool base_window::on_idle() @@ -176,6 +179,7 @@ namespace private: virtual void do_late_initialisation(); + bool on_key_press(GdkEventKey *); std::string main_page_uri_; }; @@ -185,13 +189,30 @@ namespace : base_window(frame_params), main_page_uri_(main_page_uri) { + signal_key_press_event().connect( + sigc::mem_fun(this, &preview_window::on_key_press)); } void preview_window::do_late_initialisation() { browser_widget_.load_uri(main_page_uri_); } - + + bool preview_window::on_key_press(GdkEventKey * event) + { + switch (event->keyval) + { + case GDK_t: // = top menu + browser_widget_.load_uri(main_page_uri_); + return true; + case GDK_q: // = quit + Gtk::Main::quit(); + return true; + default: + return false; + } + } + class conversion_window : public base_window { public: @@ -258,7 +279,7 @@ namespace finished_(false) { browser_widget_.signal_net_state().connect( - SigC::slot(*this, &conversion_window::on_net_state_change)); + sigc::mem_fun(this, &conversion_window::on_net_state_change)); add_menu(main_page_uri); } @@ -945,7 +966,7 @@ int main(int argc, char ** argv) { preview_window window(frame_params, menu_url); window.show(); - window.signal_hide().connect(SigC::slot(&Gtk::Main::quit)); + window.signal_hide().connect(sigc::ptr_fun(Gtk::Main::quit)); Gtk::Main::run(); return EXIT_SUCCESS; } @@ -953,7 +974,7 @@ int main(int argc, char ** argv) { conversion_window window(frame_params, menu_url, output_dir, encoder); window.show(); - window.signal_hide().connect(SigC::slot(&Gtk::Main::quit)); + window.signal_hide().connect(sigc::ptr_fun(Gtk::Main::quit)); Gtk::Main::run(); return window.is_finished() ? EXIT_SUCCESS : EXIT_FAILURE; }