00001 #include "videx_menus.h"
00002 #include <vgui/vgui.h>
00003 #include <vgui/vgui_key.h>
00004 #include <vgui/vgui_menu.h>
00005 #include <vvid/vvid_live_video_manager.h>
00006
00007
00008
00009 void videx_menus::quit_callback()
00010 {
00011 vvid_live_video_manager::instance()->quit();
00012 }
00013
00014
00015 void videx_menus::set_camera_params_callback()
00016 {
00017 vvid_live_video_manager::instance()->set_camera_params();
00018 }
00019
00020 void videx_menus::set_detection_params_callback()
00021 {
00022 vvid_live_video_manager::instance()->set_detection_params();
00023 }
00024
00025 void videx_menus::no_op_callback()
00026 {
00027 vvid_live_video_manager::instance()->no_op();
00028 }
00029
00030 void videx_menus::start_live_video_callback()
00031 {
00032 vvid_live_video_manager::instance()->start_live_video();
00033 }
00034
00035 void videx_menus::stop_live_video_callback()
00036 {
00037 vvid_live_video_manager::instance()->stop_live_video();
00038 }
00039
00040 void videx_menus::toggle_histogram_callback()
00041 {
00042 vvid_live_video_manager::instance()->toggle_histogram();
00043 }
00044
00045 void videx_menus::capture_sequence_callback()
00046 {
00047 vvid_live_video_manager::instance()->capture_sequence();
00048 }
00049
00050 void videx_menus::init_capture_callback()
00051 {
00052 vvid_live_video_manager::instance()->init_capture();
00053 }
00054
00055 void videx_menus::stop_capture_callback()
00056 {
00057 vvid_live_video_manager::instance()->stop_capture();
00058 }
00059
00060
00061
00062 vgui_menu videx_menus::get_menu()
00063 {
00064 vgui_menu menubar;
00065 vgui_menu menufile;
00066 vgui_menu menuview;
00067 vgui_menu menuedit;
00068
00069 menufile.add( "Quit", quit_callback,(vgui_key)'q', vgui_CTRL);
00070 menufile.add( "Capture(old)", capture_sequence_callback);
00071 menufile.add( "Init Capture", init_capture_callback, (vgui_key)'i');
00072 menufile.add( "Stop Capture", stop_capture_callback, (vgui_key)'e');
00073
00074
00075 menuview.add( "Start Live Video", start_live_video_callback, (vgui_key)'s');
00076 menuview.add( "Stop Live Video", stop_live_video_callback, (vgui_key)'s', vgui_CTRL);
00077 menuview.add( "Toggle Histogram", toggle_histogram_callback, (vgui_key)'h');
00078
00079
00080 menuedit.add("Camera Settings", set_camera_params_callback, (vgui_key)'p', vgui_CTRL);
00081 menuedit.add("Edge Detection Settings", set_detection_params_callback);
00082 menuedit.add("No Live Operation", no_op_callback);
00083
00084
00085 menubar.add( "File", menufile);
00086 menubar.add( "View", menuview);
00087 menubar.add( "Edit", menuedit);
00088 return menubar;
00089 }
00090