diff options
Diffstat (limited to 'src/openbox.i')
| -rw-r--r-- | src/openbox.i | 27 |
1 files changed, 21 insertions, 6 deletions
diff --git a/src/openbox.i b/src/openbox.i index bde9a8cb..cf7859d4 100644 --- a/src/openbox.i +++ b/src/openbox.i @@ -12,17 +12,32 @@ #include "client.hh" %} -%immutable ob::Openbox::instance; +%include stl.i +//%include std_list.i +//%template(ClientList) std::list<OBClient*>; + + +%ignore ob::Openbox::instance; +%ignore ob::OBScreen::clients; %include "openbox.hh" %include "screen.hh" %include "client.hh" - -%include stl.i -%include std_list.i +%inline %{ + ob::Openbox *Openbox_instance() { return ob::Openbox::instance; } +%}; %{ -class OBClient; + #include <iterator> %} -%template(ClientList) std::list<OBClient*>; +%extend ob::OBScreen { + OBClient *client(int i) { + ob::OBScreen::ClientList::iterator it = self->clients.begin(); + std::advance(it,i); + return *it; + } + int clientCount() const { + return (int) self->clients.size(); + } +}; |
