]> icculus.org git repositories - dana/openbox.git/blob - src/python.hh
add an unregister_all for python callbacks
[dana/openbox.git] / src / python.hh
1 // -*- mode: C++; indent-tabs-mode: nil; c-basic-offset: 2; -*-
2 #ifndef   __python_hh
3 #define   __python_hh
4
5 /*! @file python.hh
6   @brief wee
7 */
8
9 #include "actions.hh"
10 #include "widget.hh"
11
12 extern "C" {
13 #include <Python.h>
14 }
15
16 namespace ob {
17
18 //! Add a python callback funtion to the back of the hook list
19 bool python_register(int action, PyObject *callback);
20 //! Add a python callback funtion to the front of the hook list
21 bool python_preregister(int action, PyObject *callback);
22 //! Remove a python callback function from the hook list
23 bool python_unregister(int action, PyObject *callback);
24
25 //! Removes all python callback functions from the hook list
26 bool python_unregister_all(int action);
27
28 //! Fire a python callback function
29 void python_callback(OBActions::ActionType action, Window window,
30                      OBWidget::WidgetType type, unsigned int state,
31                      long d1 = LONG_MIN, long d2 = LONG_MIN,
32                      long d3 = LONG_MIN, long d4 = LONG_MIN);
33
34 }
35
36 #endif // __python_hh