00001 #include <vgui/vgui.h>
00002 #include <vgui/vgui_key.h>
00003 #include <vgui/vgui_menu.h>
00004 #include <bmvv/bmvv_tomography_manager.h>
00005 #include <bmvv/bmvv_tomg_menus.h>
00006
00007
00008
00009 void bmvv_tomg_menus::quit_callback()
00010 {
00011 bmvv_tomography_manager::instance()->quit();
00012 }
00013
00014
00015 void bmvv_tomg_menus::load_image_callback()
00016 {
00017 bmvv_tomography_manager::instance()->load_image();
00018 }
00019
00020 void bmvv_tomg_menus::save_sinogram_callback()
00021 {
00022 bmvv_tomography_manager::instance()->save_sinogram();
00023 }
00024
00025 void bmvv_tomg_menus::clear_display_callback()
00026 {
00027 bmvv_tomography_manager::instance()->clear_display();
00028 }
00029
00030 void bmvv_tomg_menus::clear_selected_callback()
00031 {
00032 bmvv_tomography_manager::instance()->clear_selected();
00033 }
00034
00035 void bmvv_tomg_menus::sinogram_callback()
00036 {
00037 bmvv_tomography_manager::instance()->sinogram();
00038 }
00039
00040
00041 vgui_menu bmvv_tomg_menus::get_menu()
00042 {
00043 vgui_menu menubar;
00044 vgui_menu menufile;
00045 vgui_menu menuview;
00046 vgui_menu menuedit;
00047
00048 menufile.add( "Quit", quit_callback,(vgui_key)'q', vgui_CTRL);
00049 menufile.add( "Load Image", load_image_callback,(vgui_key)'l', vgui_CTRL);
00050 menufile.add( "Save Sinogram", save_sinogram_callback);
00051
00052
00053 menuview.add("Clear Display", clear_display_callback);
00054 menuview.add("Clear Selected", clear_selected_callback);
00055
00056
00057 menuedit.add("Gaussian Sinogram", sinogram_callback);
00058
00059 menubar.add( "File", menufile);
00060 menubar.add( "View", menuview);
00061 menubar.add( "Edit", menuedit);
00062 return menubar;
00063 }
00064