openbox3_LDADD=../otk/libotk.a @LIBINTL@
-openbox3_SOURCES= client.cc frame.cc openbox.cc screen.cc \
+openbox3_SOURCES= actions.cc client.cc frame.cc openbox.cc screen.cc \
main.cc rootwindow.cc
MAINTAINERCLEANFILES= Makefile.in
--- /dev/null
+// -*- mode: C++; indent-tabs-mode: nil; -*-
+
+#ifdef HAVE_CONFIG_H
+# include "../config.h"
+#endif
+
+#include "actions.hh"
+
+namespace ob {
+
+OBActions::OBActions()
+{
+}
+
+
+OBActions::~OBActions()
+{
+}
+
+}
--- /dev/null
+// -*- mode: C++; indent-tabs-mode: nil; -*-
+#ifndef __actions_hh
+#define __actions_hh
+
+/*! @file actions.hh
+ @brief The action interface for user-available actions
+*/
+
+namespace ob {
+
+//! The action interface for user-available actions
+/*!
+*/
+class OBActions {
+public:
+
+private:
+
+public:
+ OBActions();
+ virtual ~OBActions();
+
+};
+
+}
+
+#endif // __actions_hh
#include "openbox.hh"
#include "client.hh"
#include "screen.hh"
+#include "actions.hh"
#include "otk/property.hh"
#include "otk/display.hh"
#include "otk/assassin.hh"
namespace ob {
-Openbox *Openbox::instance = (Openbox *) 0;
+Openbox *Openbox::instance = (Openbox *) 0;
+OBActions *Openbox::actions = (OBActions *) 0;
void Openbox::signalHandler(int signal)
_property = new otk::OBProperty();
+ Openbox::actions = new OBActions();
+
// create the mouse cursors we'll use
_cursors.session = XCreateFontCursor(otk::OBDisplay::display, XC_left_ptr);
_cursors.move = XCreateFontCursor(otk::OBDisplay::display, XC_fleur);
class OBScreen;
class OBClient;
+class OBActions;
-//! The main class for the Openbox window manager.
+//! The main class for the Openbox window manager
/*!
Only a single instance of the Openbox class may be used in the application. A
pointer to this instance is held in the Openbox::instance static member
class Openbox : public otk::OtkEventDispatcher, public otk::OtkEventHandler
{
public:
- //! The single instance of the Openbox class for the application.
+ //! 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 action interface through which all user-available actions occur
+ static OBActions *actions;
+
//! The posible running states of the window manager
enum RunState {
State_Starting, //!< The window manager is starting up (being created)