00001 // This is core/vgui/vgui_quit_tableau.cxx 00002 #include "vgui_quit_tableau.h" 00003 //: 00004 // \file 00005 // \author fsm 00006 // \brief See vgui_quit_tableau.h for a description of this file. 00007 00008 #include <vgui/vgui.h> 00009 #include <vgui/vgui_event.h> 00010 #include <vgui/vgui_adaptor.h> 00011 #include <vcl_iostream.h> 00012 00013 bool vgui_quit_tableau::handle(vgui_event const &e) 00014 { 00015 if (e.type==vgui_KEY_PRESS) { 00016 if ((e.key=='q' && (e.modifier & vgui_META || e.modifier & vgui_ALT)) || e.key==vgui_ESCAPE) { 00017 vcl_cerr << __FILE__ " : quit\n"; 00018 e.origin->post_destroy(); 00019 vgui::quit(); 00020 return true; 00021 } else if (e.key=='w' && (e.modifier & vgui_META || e.modifier & vgui_ALT)) { 00022 e.origin->post_destroy(); 00023 return true; 00024 } else 00025 return false; 00026 } else 00027 return false; 00028 } 00029 00030 vcl_string vgui_quit_tableau::type_name() const 00031 { 00032 return "vgui_quit_tableau"; 00033 }