diff options
author | John Finlay <finlay@src.gnome.org> | 2006-07-05 20:17:06 +0000 |
---|---|---|
committer | John Finlay <finlay@src.gnome.org> | 2006-07-05 20:17:06 +0000 |
commit | 3280a61fde3a06ac10ba5756ec69b605dec64964 (patch) | |
tree | 3d213edfa36303f7bd1f027234b2b7c2ebb18b4e /atk.override | |
parent | 218218580d24095c6ae2fce611f3d1dd61fe4a0a (diff) | |
download | pygtk-3280a61fde3a06ac10ba5756ec69b605dec64964.tar.gz |
Add. (_wrap_atk_relation_new): Raise ValueError if targets is zero length.
* atk.override (_wrap_atk_relation_get_target): Add.
(_wrap_atk_relation_new): Raise ValueError if targets is zero length.
Diffstat (limited to 'atk.override')
-rw-r--r-- | atk.override | 28 |
1 files changed, 26 insertions, 2 deletions
diff --git a/atk.override b/atk.override index 7d792cf9..58ee788b 100644 --- a/atk.override +++ b/atk.override @@ -50,11 +50,16 @@ _wrap_atk_relation_new (PyGObject *self, PyObject *args, PyObject *kwargs) return -1; if (!PySequence_Check(py_targets)) { - PyErr_SetString(PyExc_TypeError, "targets argument must be a sequence"); + PyErr_SetString(PyExc_TypeError, + "targets argument must be a non-empty sequence"); return -1; } - count = PySequence_Length(py_targets); + if ((count = PySequence_Length(py_targets)) == 0) { + PyErr_SetString(PyExc_ValueError, + "targets argument must be a non-empty sequence"); + return -1; + } targets = g_new(AtkObject *, count); for (i = 0; i < count; i++) { PyObject *item = PySequence_GetItem(py_targets, i); @@ -229,3 +234,22 @@ _wrap_atk_image_get_image_position(PyGObject *self, PyObject *args, atk_image_get_image_position(ATK_IMAGE(self->obj), &x, &y, coord_type); return Py_BuildValue("(ii)", x, y); } +%% +override atk_relation_get_target noargs +static PyObject * +_wrap_atk_relation_get_target (PyGObject *self) +{ + GPtrArray * trgtarray; + AtkObject **targets; + int i; + PyObject *py_targets; + + trgtarray = atk_relation_get_target(ATK_RELATION(self->obj)); + py_targets = PyList_New(trgtarray->len); + targets = (AtkObject**)trgtarray->pdata; + for (i = 0; i < trgtarray->len; i++) { + PyObject *item = pygobject_new((GObject*)targets[i]); + PyList_SetItem(py_targets, i, item); + } + return py_targets; +} |