]> Dogcows Code - chaz/openbox/blobdiff - src/bindings.hh
initialize _modal, its used before the window's type is checked
[chaz/openbox] / src / bindings.hh
index 32f422ff80c43fd64433256405e3ea28c043343c..772b2a40840f57e009609f02b236019a8235c05c 100644 (file)
@@ -51,7 +51,7 @@ typedef struct KeyBindingTree {
 
 typedef struct ButtonBinding {
   Binding binding;
-  CallbackList callbacks[NUM_MOUSE_ACTION];
+  CallbackList callbacks[MouseAction::NUM_MOUSE_ACTION];
   ButtonBinding() : binding(0, 0) {}
 };
 
@@ -77,12 +77,14 @@ private:
   static void resetChains(Bindings *self); // the timer's timeout function
 
   typedef std::list <ButtonBinding*> ButtonBindingList;
-  ButtonBindingList _buttons[NUM_MOUSE_CONTEXT];
+  ButtonBindingList _buttons[MouseContext::NUM_MOUSE_CONTEXT];
 
-  void grabButton(bool grab, const Binding &b, MouseContext context,
+  void grabButton(bool grab, const Binding &b, MouseContext::MC context,
                   Client *client);
 
-  CallbackList _eventlist[NUM_EVENTS];
+  CallbackList _eventlist[EventAction::NUM_EVENTS];
+
+  PyObject *_keybgrab_callback;
   
 public:
   //! Initializes an Bindings object
@@ -101,24 +103,31 @@ public:
   */
   bool addKey(const StringVect &keylist, PyObject *callback);
 
-  //! Removes a key binding
-  /*!
-    @return The callbackid of the binding, or '< 0' if there was no binding to
-            be removed.
-  */
-  bool removeKey(const StringVect &keylist, PyObject *callback);
+  ////! Removes a key binding
+  ///*!
+  //  @return The callbackid of the binding, or '< 0' if there was no binding to
+  //          be removed.
+  //*/
+  //bool removeKey(const StringVect &keylist, PyObject *callback);
 
   //! Removes all key bindings
   void removeAllKeys();
 
-  void fireKey(int screen, unsigned int modifiers,unsigned int key, Time time);
+  void fireKey(int screen, unsigned int modifiers,unsigned int key, Time time,
+               KeyAction::KA action);
 
   void setResetKey(const std::string &key);
 
   void grabKeys(bool grab);
 
-  bool addButton(const std::string &but, MouseContext context,
-                 MouseAction action, PyObject *callback);
+  bool grabKeyboard(int screen, PyObject *callback);
+  void ungrabKeyboard();
+
+  bool grabPointer(int screen);
+  void ungrabPointer();
+
+  bool addButton(const std::string &but, MouseContext::MC context,
+                 MouseAction::MA action, PyObject *callback);
 
   void grabButtons(bool grab, Client *client);
 
@@ -128,10 +137,10 @@ public:
   void fireButton(MouseData *data);
 
   //! Bind a callback for an event
-  bool addEvent(EventAction action, PyObject *callback);
+  bool addEvent(EventAction::EA action, PyObject *callback);
 
   //! Unbind the callback function from an event
-  bool removeEvent(EventAction action, PyObject *callback);
+  bool removeEvent(EventAction::EA action, PyObject *callback);
 
   //! Remove all callback functions
   void removeAllEvents();
This page took 0.021467 seconds and 4 git commands to generate.