1 // -*- mode: C++; indent-tabs-mode: nil; c-basic-offset: 2; -*-
9 #include "otk/point.hh"
10 #include "otk/rect.hh"
11 #include "otk/property.hh"
66 // *** MotionData can be (and is) cast ButtonData!! (in actions.cc) *** //
82 int press_clientwidth;
83 int press_clientheight;
86 // *** MotionData can be (and is) cast ButtonData!! (in actions.cc) *** //
115 void python_init(char *argv0);
116 void python_destroy();
117 bool python_exec(const std::string &path);
119 MotionData *new_motion_data(int screen, Window window, Time time,
120 unsigned int state, unsigned int button,
121 MouseContext context, MouseAction action,
122 int xroot, int yroot, const otk::Point &initpos,
123 const otk::Rect &initarea);
124 ButtonData *new_button_data(int screen, Window window, Time time,
125 unsigned int state, unsigned int button,
126 MouseContext context, MouseAction action);
127 EventData *new_event_data(int screen, Window window, EventAction action,
129 KeyData *new_key_data(int screen, Window window, Time time, unsigned int state,
132 void python_callback(PyObject *func, PyObject *data);
134 bool python_get_long(const char *name, long *value);
135 bool python_get_string(const char *name, std::string *value);
136 bool python_get_stringlist(const char *name, std::vector<std::string> *value);
139 PyObject *mbind(const std::string &button, ob::MouseContext context,
140 ob::MouseAction action, PyObject *func);
142 PyObject *kbind(PyObject *keylist, ob::KeyContext context, PyObject *func);
144 PyObject *ebind(ob::EventAction action, PyObject *func);
146 void set_reset_key(const std::string &key);
148 PyObject *send_client_msg(Window target, int type, Window about,
149 long data, long data1 = 0, long data2 = 0,
150 long data3 = 0, long data4 = 0);
154 #endif // __python_hh