1 // -*- mode: C++; indent-tabs-mode: nil; c-basic-offset: 2; -*-
9 #include "otk/point.hh"
10 #include "otk/rect.hh"
61 // *** MotionData can be (and is) cast ButtonData!! (in actions.cc) *** //
76 int press_clientwidth;
77 int press_clientheight;
80 // *** MotionData can be (and is) cast ButtonData!! (in actions.cc) *** //
106 void python_init(char *argv0);
107 void python_destroy();
108 bool python_exec(const std::string &path);
110 MotionData *new_motion_data(Window window, Time time, unsigned int state,
111 unsigned int button, MouseContext context,
112 MouseAction action, int xroot, int yroot,
113 const otk::Point &initpos,
114 const otk::Rect &initarea);
115 ButtonData *new_button_data(Window window, Time time, unsigned int state,
116 unsigned int button, MouseContext context,
118 EventData *new_event_data(Window window, EventAction action,
120 KeyData *new_key_data(Window window, Time time, unsigned int state,
123 void python_callback(PyObject *func, PyObject *data);
125 bool python_get_long(const char *name, long *value);
126 bool python_get_string(const char *name, std::string *value);
127 bool python_get_stringlist(const char *name, std::vector<std::string> *value);
130 PyObject *mbind(const std::string &button, ob::MouseContext context,
131 ob::MouseAction action, PyObject *func);
133 PyObject *kbind(PyObject *keylist, ob::KeyContext context, PyObject *func);
135 PyObject *ebind(ob::EventAction action, PyObject *func);
137 void set_reset_key(const std::string &key);
141 #endif // __python_hh