a9f06b5d263aa9210ecdb186c169d220b90c7633
[mikachu/openbox.git] / wrap / otk_widget.i
1 // -*- mode: C++; indent-tabs-mode: nil; c-basic-offset: 2; -*-
2
3 %module otk_widget
4
5 %{
6 #include "config.h"
7 #include "widget.hh"
8 %}
9
10 %include "otk_rendercolor.i"
11
12 %typemap(python,out) const std::list<Widget*>& {
13   std::list<Widget*> *v = $1;
14   unsigned int s = v->size();
15   PyObject *l = PyList_New(s);
16
17   std::list<Widget*>::const_iterator it = v->begin(), end = v->end();
18   for (unsigned int i = 0; i < s; ++i, ++it) {
19     PyObject *pdata = SWIG_NewPointerObj((void*)*it,SWIGTYPE_p_otk__Widget,0);
20     PyList_SET_ITEM(l, i, pdata);
21   }
22   $result = l;
23 }
24
25 namespace otk {
26
27 %ignore Widget::exposeHandler(const XExposeEvent &);
28 %ignore Widget::configureHandler(const XConfigureEvent &);
29 %ignore Widget::styleChanged(const RenderStyle &);
30
31 }
32
33 %import "../otk/eventhandler.hh"
34 %import "../otk/renderstyle.hh"
35 %include "widget.hh"