diff options
| author | Dana Jansens <danakj@orodu.net> | 2003-01-09 22:54:31 +0000 |
|---|---|---|
| committer | Dana Jansens <danakj@orodu.net> | 2003-01-09 22:54:31 +0000 |
| commit | 345d957e1ea577480f807b892b73c3f52fe913d2 (patch) | |
| tree | 489dd8d159f22bbc3828ad094ced5288eb582628 /src/screen.cc | |
| parent | b1739374a61d0c33270bafe84da9d787e79c0686 (diff) | |
new python callbacks data, infrastructure. going to rework bindings code. cvs wont work for shit now. but thats life.
Diffstat (limited to 'src/screen.cc')
| -rw-r--r-- | src/screen.cc | 26 |
1 files changed, 10 insertions, 16 deletions
diff --git a/src/screen.cc b/src/screen.cc index c650872e..e97c05b2 100644 --- a/src/screen.cc +++ b/src/screen.cc @@ -140,9 +140,8 @@ OBScreen::OBScreen(int screen) Openbox::instance->registerHandler(_info->rootWindow(), this); // call the python Startup callbacks - EventData *data = new_event_data(_number, 0, EventShutdown, 0); - Openbox::instance->bindings()->fireEvent(data); - Py_XDECREF((PyObject*)data); + EventData data(_number, 0, EventShutdown, 0); + Openbox::instance->bindings()->fireEvent(&data); } @@ -157,9 +156,8 @@ OBScreen::~OBScreen() unmanageWindow(clients.front()); // call the python Shutdown callbacks - EventData *data = new_event_data(_number, 0, EventShutdown, 0); - Openbox::instance->bindings()->fireEvent(data); - Py_XDECREF((PyObject*)data); + EventData data(_number, 0, EventShutdown, 0); + Openbox::instance->bindings()->fireEvent(&data); XDestroyWindow(otk::OBDisplay::display, _focuswindow); XDestroyWindow(otk::OBDisplay::display, _supportwindow); @@ -497,9 +495,8 @@ void OBScreen::manageWindow(Window window) client->positionRequested())) { // position the window intelligenty .. hopefully :) // call the python PLACEWINDOW binding - EventData *data = new_event_data(_number, window, EventPlaceWindow, 0); - Openbox::instance->bindings()->fireEvent(data); - Py_DECREF((PyObject*)data); + EventData data(_number, client, EventPlaceWindow, 0); + Openbox::instance->bindings()->fireEvent(&data); } // create the decoration frame for the client window @@ -542,9 +539,8 @@ void OBScreen::manageWindow(Window window) Openbox::instance->bindings()->grabButtons(true, client); // call the python NEWWINDOW binding - EventData *data = new_event_data(_number, window, EventNewWindow, 0); - Openbox::instance->bindings()->fireEvent(data); - Py_DECREF((PyObject*)data); + EventData data(_number, client, EventNewWindow, 0); + Openbox::instance->bindings()->fireEvent(&data); #ifdef DEBUG printf("Managed window 0x%lx\n", window); @@ -557,10 +553,8 @@ void OBScreen::unmanageWindow(OBClient *client) OBFrame *frame = client->frame; // call the python CLOSEWINDOW binding - EventData *data = new_event_data(_number, client->window(), - EventCloseWindow, 0); - Openbox::instance->bindings()->fireEvent(data); - Py_DECREF((PyObject*)data); + EventData data(_number, client, EventCloseWindow, 0); + Openbox::instance->bindings()->fireEvent(&data); Openbox::instance->bindings()->grabButtons(false, client); |
