diff options
Diffstat (limited to 'src/python.hh')
| -rw-r--r-- | src/python.hh | 32 |
1 files changed, 23 insertions, 9 deletions
diff --git a/src/python.hh b/src/python.hh index c3dabeb8..c5e566f4 100644 --- a/src/python.hh +++ b/src/python.hh @@ -6,15 +6,13 @@ @brief wee */ -#include "actions.hh" -#include "widget.hh" -#include "bindings.hh" - extern "C" { +#include <X11/Xlib.h> #include <Python.h> } #include <string> +#include <vector> namespace ob { @@ -29,22 +27,30 @@ enum MouseContext { MC_Grip, MC_Root, MC_MenuItem, - MC_All, NUM_MOUSE_CONTEXT -} +}; + +enum MouseAction { + MousePress, + MouseClick, + MouseDoubleClick, + MouseMotion, + NUM_MOUSE_ACTION +}; + enum KeyContext { KC_Menu, KC_All, NUM_KEY_CONTEXT -} +}; #ifndef SWIG void python_init(char *argv0); void python_destroy(); bool python_exec(const std::string &path); -void python_callback(PyObject *func, OBActions::ActionType action, - Window window, OBWidget::WidgetType type, +void python_callback(PyObject *func, MouseAction action, + Window window, MouseContext context, unsigned int state, unsigned int button, int xroot, int yroot, Time time); @@ -56,6 +62,14 @@ bool python_get_string(const char *name, std::string *value); bool python_get_stringlist(const char *name, std::vector<std::string> *value); #endif +PyObject * mbind(const std::string &button, ob::MouseContext context, + ob::MouseAction action, PyObject *func); + +PyObject * kbind(PyObject *keylist, ob::KeyContext context, PyObject *func); +PyObject * kunbind(PyObject *keylist); +void kunbind_all(); +void set_reset_key(const std::string &key); + } #endif // __python_hh |
