]> icculus.org git repositories - mikachu/openbox.git/blob - otk/application.hh
otk using ustring for shit that draws. expended its inferface yet some more.
[mikachu/openbox.git] / otk / application.hh
1 // -*- mode: C++; indent-tabs-mode: nil; c-basic-offset: 2; -*-
2 #ifndef __application_hh
3 #define __application_hh
4
5 #include "eventdispatcher.hh"
6 #include "display.hh"
7 #include "configuration.hh"
8 #include "timerqueuemanager.hh"
9 #include "image.hh"
10 #include "style.hh"
11
12 namespace otk {
13
14 class AppWidget;
15
16 class Application : public EventDispatcher {
17
18 public:
19
20   Application(int argc, char **argv);
21   virtual ~Application();
22
23   virtual void run(void);
24   // more bummy cool functionality
25
26   void setDockable(bool dockable) { _dockable = dockable; }
27   inline bool isDockable(void) const { return _dockable; }
28
29   inline Style *getStyle(void) const { return _style; }
30   // more accessors
31
32 private:
33   void loadStyle(void);
34
35   TimerQueueManager *_timer_manager;
36   ImageControl *_img_ctrl;
37   Configuration *_style_conf;
38   Style *_style;
39   bool _dockable;
40
41   int _appwidget_count;
42
43   friend class AppWidget;
44 };
45
46 }
47
48 #endif