X-Git-Url: https://git.dogcows.com/gitweb?a=blobdiff_plain;f=wrap%2Fob.i;h=b6c9461e7cd23adab3edcf7eb1b6ebb9d54a4edd;hb=4ed3fb89150d05e6fa134798315269c62de1bed9;hp=19360a4308e3193507afc23fc44b5f1ee8b3a879;hpb=8cc271604190c5200f34ffc8fee6100759c2fc60;p=chaz%2Fopenbox diff --git a/wrap/ob.i b/wrap/ob.i index 19360a43..b6c9461e 100644 --- a/wrap/ob.i +++ b/wrap/ob.i @@ -3,70 +3,8 @@ %module ob %{ -#ifdef HAVE_CONFIG_H -# include "../config.h" -#endif - -#include "frame.hh" -#include "openbox.hh" -#include "screen.hh" -#include "client.hh" -#include "bindings.hh" -#include "actions.hh" -#include "python.hh" -#include "otk/otk.hh" -%} - -%include "stl.i" -//%include std_list.i -//%template(ClientList) std::list; -%include "callback.i" - -%immutable ob::openbox; -/* -%ignore ob::openbox; -%inline %{ - ob::Openbox *Openbox_instance() { return ob::openbox; } -%}; -*/ - -%ignore ob::Screen::clients; -%{ - #include -%} -%extend ob::Screen { - Client *client(int i) { - if (i < 0 || i >= (int)self->clients.size()) - return NULL; - ob::Client::List::iterator it = self->clients.begin(); - std::advance(it,i); - return *it; - } - int clientCount() const { - return (int) self->clients.size(); - } -}; - -%import "otk.i" - -%import "widgetbase.hh" -%import "actions.hh" - -%include "openbox.hh" -%include "screen.hh" -%include "client.hh" -%include "frame.hh" -%include "python.hh" - -// for Window etc -%import "X11/X.h" - -%inline %{ -void set_reset_key(const std::string &key) -{ - ob::openbox->bindings()->setResetKey(key); -} - +#include +#include "otk/display.hh" void send_client_msg(Window target, Atom type, Window about, long data=0, long data1=0, long data2=0, long data3=0, long data4=0) @@ -87,6 +25,30 @@ void send_client_msg(Window target, Atom type, Window about, &e); } +%} + +%include "ob_openbox.i" +%include "ob_screen.i" +%include "ob_client.i" +%include "ob_frame.i" +%include "ob_python.i" +%include "ob_callback.i" + +// for Window etc +%import "X11/X.h" + +%inline %{ +#include +#include "bindings.hh" +#include "otk/display.hh" +#include "otk/screeninfo.hh" +#include "otk/util.hh" + +void set_reset_key(const std::string &key) +{ + ob::openbox->bindings()->setResetKey(key); +} + void execute(const std::string &bin, int screen=0) { if (screen >= ScreenCount(**otk::display))