X-Git-Url: https://git.dogcows.com/gitweb?a=blobdiff_plain;f=src%2Fopenbox.i;h=edc29ae82303c0081fefc2a62a8b211c2b340b4f;hb=2627b85226b621868a4425f4aea695ed089d7de5;hp=0f54362bd14eda1f3879ae4b1bc8410f5d214963;hpb=345d957e1ea577480f807b892b73c3f52fe913d2;p=chaz%2Fopenbox diff --git a/src/openbox.i b/src/openbox.i index 0f54362b..edc29ae8 100644 --- a/src/openbox.i +++ b/src/openbox.i @@ -13,12 +13,12 @@ #include "bindings.hh" #include "actions.hh" #include "python.hh" -#include "otk/display.hh" +#include "otk/otk.hh" %} %include "stl.i" //%include std_list.i -//%template(ClientList) std::list; +//%template(ClientList) std::list; %ignore ob::Openbox::instance; %inline %{ @@ -27,33 +27,13 @@ %{ namespace ob { -void python_callback(PyObject *func, MotionData *data) +void python_callback(PyObject *func, MouseData *data) { PyObject *arglist; PyObject *result; arglist = Py_BuildValue("(O)", SWIG_NewPointerObj((void *) data, - SWIGTYPE_p_ob__MotionData, - 0)); - - // call the callback - result = PyEval_CallObject(func, arglist); - if (!result || PyErr_Occurred()) { - // an exception occured in the script, display it - PyErr_Print(); - } - - Py_XDECREF(result); - Py_DECREF(arglist); -} - -void python_callback(PyObject *func, ButtonData *data) -{ - PyObject *arglist; - PyObject *result; - - arglist = Py_BuildValue("(O)", SWIG_NewPointerObj((void *) data, - SWIGTYPE_p_ob__ButtonData, + SWIGTYPE_p_ob__MouseData, 0)); // call the callback @@ -110,15 +90,15 @@ void python_callback(PyObject *func, KeyData *data) } %} -%ignore ob::OBScreen::clients; +%ignore ob::Screen::clients; %{ #include %} -%extend ob::OBScreen { - OBClient *client(int i) { +%extend ob::Screen { + Client *client(int i) { if (i >= (int)self->clients.size()) return NULL; - ob::OBClient::List::iterator it = self->clients.begin(); + ob::Client::List::iterator it = self->clients.begin(); std::advance(it,i); return *it; } @@ -127,9 +107,22 @@ void python_callback(PyObject *func, KeyData *data) } }; -%import "../otk/eventdispatcher.hh" -%import "../otk/eventhandler.hh" -%import "widget.hh" +%ignore otk::Display::display; +%inline %{ + Display *Display_display() { return otk::Display::display; } +%}; + +%include "../otk/display.hh" +%include "../otk/point.hh" +%include "../otk/property.hh" +%include "../otk/rect.hh" +%include "../otk/screeninfo.hh" +%include "../otk/strut.hh" + +%include "../otk/eventhandler.hh" +%include "../otk/eventdispatcher.hh" + +%import "widgetbase.hh" %import "actions.hh" %include "openbox.hh"