#include <vector>
#include <map>
+#include "otk/display.hh"
#include "otk/screeninfo.hh"
-#include "otk/timerqueuemanager.hh"
-#include "otk/property.hh"
#include "otk/configuration.hh"
#include "otk/eventdispatcher.hh"
#include "otk/eventhandler.hh"
Cursor ur_angle; //!< For resizing the right corner of a window
};
+class Openbox;
+
+//! The single instance of the Openbox class for the application
+/*!
+ Since this variable is globally available in the application, the Openbox
+ class does not need to be passed around to any of the other classes.
+*/
+extern Openbox *openbox;
//! The main class for the Openbox window manager
/*!
class Openbox : public otk::EventDispatcher, public otk::EventHandler
{
public:
- //! The single instance of the Openbox class for the application
- /*!
- Since this variable is globally available in the application, the Openbox
- class does not need to be passed around to any of the other classes.
- */
- static Openbox *instance;
-
//! The posible running states of the window manager
enum RunState {
State_Starting, //!< The window manager is starting up (being created)
typedef std::vector<Screen *> ScreenList;
private:
+ //! The display on which Openbox is running
+ otk::Display _display;
+
// stuff that can be passed on the command line
//! Path to the config file to use/in use
/*!
//! A list of all the managed screens
ScreenList _screens;
- //! Manages all timers for the application
- /*!
- Use of the otk::TimerQueueManager::fire funtion in this object ensures
- that all timers fire when their times elapse.
- */
- otk::TimerQueueManager _timermanager;
-
- //! Cached atoms on the display
- /*!
- This is a pointer because the Property class uses otk::Display::display
- in its constructor, so, it needs to be initialized <b>after</b> the display
- is initialized in this class' constructor.
- */
- otk::Property *_property;
-
//! The action interface through which all user-available actions occur
Actions *_actions;
//! Returns the state of the window manager (starting, exiting, etc)
inline RunState state() const { return _state; }
- //! Returns the otk::TimerQueueManager for the application
- /*!
- All otk::Timer objects used in the application should be made to use this
- otk::TimerQueueManager.
- */
- inline otk::TimerQueueManager *timerManager() { return &_timermanager; }
-
- //! Returns the otk::Property instance for the window manager
- inline const otk::Property *property() const { return _property; }
-
//! Returns the Actions instance for the window manager
inline Actions *actions() const { return _actions; }