/* -*- Mode: C; c-basic-offset: 4 -*- * */ %% headers #include "pygobject.h" #include #include #include extern PyTypeObject PyNetkWindow_Type; %% include %% modulename classgroup %% import gobject.GObject as PyGObject_Type import window as PyNetkWindow_Type %% ignore %% ignore-glob *_get_type netk_class_group_get_type %% ignore-win32 %% override netk_class_group_get_windows noargs static PyObject * _wrap_netk_class_group_get_windows(PyGObject *self) { GList *icon_list = NULL; PyObject *pywindow; PyObject *py_list; GList *tmp; if ((icon_list = netk_class_group_get_windows(NETK_CLASS_GROUP(self->obj)))) { if ((py_list = PyList_New(0)) == NULL) { /*g_list_free(icon_list); no */ return NULL; } for (tmp = icon_list; tmp != NULL; tmp = tmp->next) { pywindow = pygobject_new(G_OBJECT(tmp->data)); /* will g_object_ref and sink if applicable */ if (pywindow == NULL) { /*g_list_free(icon_list); no */ Py_DECREF(py_list); return NULL; } PyList_Append(py_list, pywindow); Py_DECREF(pywindow); } /*g_list_free(icon_list); no */ return py_list; } if ((py_list = PyList_New(0)) == NULL) { /* g_list_free(icon_list); no */ return NULL; } return py_list; }