core/vgui/impl/glut/vgui_glut_impl.h
Go to the documentation of this file.
00001 #ifndef vgui_glut_impl_h_
00002 #define vgui_glut_impl_h_
00003 // .NAME vgui_glut
00004 // .LIBRARY vgui-glut
00005 // .INCLUDE vgui/impl/glut/vgui_glut.h
00006 // .FILE vgui_glut.cxx
00007 // @author fsm
00008 
00009 #include <vgui/vgui_toolkit.h>
00010 
00011 struct vgui_glut_impl : vgui_toolkit
00012 {
00013   static vgui_glut_impl* instance();
00014 
00015   vgui_glut_impl();
00016   ~vgui_glut_impl();
00017 
00018   void init(int &, char **);
00019   vcl_string name() const;
00020 
00021   vgui_window* produce_window(int width, int height,
00022                               vgui_menu const & menubar,
00023                               char const* title);
00024 
00025   vgui_window* produce_window(int width, int height,
00026                               char const* title);
00027 
00028   void run();
00029   void run_one_event();
00030   void run_till_idle();
00031   void quit();
00032   void flush();
00033 
00034 private:
00035   static int count;
00036 };
00037 
00038 // Call this function to have a command queued for execution
00039 // some time in the future.
00040 struct vgui_command;
00041 struct vgui_glut_adaptor;
00042 void vgui_glut_impl_queue_command(vgui_glut_adaptor *, vgui_command *);
00043 
00044 #endif // vgui_glut_impl_h_