00001 // -*- mode: C++; indent-tabs-mode: nil; c-basic-offset: 2; -*- 00002 #ifndef __application_hh 00003 #define __application_hh 00004 00005 #include "eventdispatcher.hh" 00006 #include "display.hh" 00007 #include "renderstyle.hh" 00008 00009 namespace otk { 00010 00011 class AppWidget; 00012 00013 class Application : public EventDispatcher { 00014 00015 public: 00016 00017 Application(int argc, char **argv); 00018 virtual ~Application(); 00019 00020 virtual void run(void); 00021 // more bummy cool functionality 00022 00023 void setDockable(bool dockable) { _dockable = dockable; } 00024 inline bool isDockable(void) const { return _dockable; } 00025 00026 inline RenderStyle *getStyle(void) const { return _style; } 00027 // more accessors 00028 00029 private: 00030 void loadStyle(void); 00031 00032 Display _display; 00033 RenderStyle *_style; 00034 bool _dockable; 00035 00036 int _appwidget_count; 00037 00038 friend class AppWidget; 00039 }; 00040 00041 } 00042 00043 #endif