diff --git a/ChangeLog b/ChangeLog index 2d342fb728..56997b9197 100644 --- a/ChangeLog +++ b/ChangeLog @@ -1,5 +1,11 @@ 2004-11-29 Johan Dahlin + * gst/interfaces.defs: + * gst/interfaces.override (_wrap_gst_color_balance_list_channels): + Apply patch from Zaheer Abbas Merali to implement this method. Not + that it's not .list_channels() due to conflict with a method of + the same name in the GstTuner interface + * gst/gstmodule.c: * gst/gst.override: Apply patch from Brian Warner to throw a link error when element and pad linking fails. diff --git a/configure.ac b/configure.ac index c3bbcb6c76..9dd7c01013 100644 --- a/configure.ac +++ b/configure.ac @@ -8,7 +8,7 @@ dnl AM_MAINTAINER_MODE only provides the option to configure to enable it AM_MAINTAINER_MODE dnl when going to/from release please set the nano (fourth number) right ! -AS_VERSION(gst-python, PYGST_VERSION, 0, 8, 0, 0, GST_CVS="no", GST_CVS="yes") +AS_VERSION(gst-python, PYGST_VERSION, 0, 8, 1, 0, GST_CVS="no", GST_CVS="yes") AM_INIT_AUTOMAKE($PACKAGE, $VERSION) diff --git a/gst/interfaces.defs b/gst/interfaces.defs index 429d9c77ff..be36da0a46 100644 --- a/gst/interfaces.defs +++ b/gst/interfaces.defs @@ -40,7 +40,7 @@ (return-type "GType") ) -(define-method list_channels +(define-method list_colorbalance_channels (of-object "GstColorBalance") (c-name "gst_color_balance_list_channels") (return-type "const-GList*") @@ -478,6 +478,11 @@ (parent "GstObject") (c-name "GstColorBalanceChannel") (gtype-id "GST_TYPE_COLOR_BALANCE_CHANNEL") + (fields + '("gchar*" "label") + '("gint" "min_value") + '("gint" "max_value") + ) ) (define-interface Mixer diff --git a/gst/interfaces.override b/gst/interfaces.override index 42f34791e4..524fb73ca9 100644 --- a/gst/interfaces.override +++ b/gst/interfaces.override @@ -125,3 +125,23 @@ _wrap_gst_mixer_list_tracks(PyGObject *self) return py_list; } +%% +override gst_color_balance_list_channels noargs +static PyObject * +_wrap_gst_color_balance_list_channels(PyGObject *self) +{ + const GList *l, *list; + PyObject *py_list; + + list = gst_color_balance_list_channels(GST_COLOR_BALANCE(self->obj)); + + py_list = PyList_New(0); + for (l = list; l; l = l->next) { + GstColorBalanceChannel *channel = (GstColorBalanceChannel*)l->data; + PyObject *py_channel = pygobject_new(G_OBJECT(channel)); + PyList_Append(py_list, py_channel); + Py_DECREF(py_channel); + } + + return py_list; +}