summaryrefslogtreecommitdiff
path: root/libglademodule.c
diff options
context:
space:
mode:
Diffstat (limited to 'libglademodule.c')
-rw-r--r--libglademodule.c72
1 files changed, 72 insertions, 0 deletions
diff --git a/libglademodule.c b/libglademodule.c
index f461048c..293790b9 100644
--- a/libglademodule.c
+++ b/libglademodule.c
@@ -128,9 +128,81 @@ static PyObject *_wrap_glade_xml_signal_autoconnect(PyObject *self, PyObject *ar
return Py_None;
}
+static PyObject *_wrap_glade_xml_get_widget(PyObject *self, PyObject *args) {
+ PyObject *xml;
+ char *name;
+ GtkWidget *widget;
+
+ if (!PyArg_ParseTuple(args, "O!s:glade_xml_get_widget",
+ &PyGtk_Type, &xml, &name))
+ return NULL;
+ widget = glade_xml_get_widget(GLADE_XML(PyGtk_Get(xml)), name);
+ if (widget)
+ return PyGtk_New((GtkObject *)widget);
+ Py_INCREF(Py_None);
+ return Py_None;
+}
+
+static PyObject *_wrap_glade_xml_get_widget_by_long_name(PyObject *self, PyObject *args) {
+ PyObject *xml;
+ char *name;
+ GtkWidget *widget;
+
+ if (!PyArg_ParseTuple(args, "O!s:glade_xml_get_widget_by_long_name",
+ &PyGtk_Type, &xml, &name))
+ return NULL;
+ widget = glade_xml_get_widget_by_long_name(GLADE_XML(PyGtk_Get(xml)),name);
+ if (widget)
+ return PyGtk_New((GtkObject *)widget);
+ Py_INCREF(Py_None);
+ return Py_None;
+}
+
+static PyObject *_wrap_glade_get_widget_name(PyObject *self, PyObject *args) {
+ PyObject *wid;
+ const char *name;
+
+ if (!PyArg_ParseTuple(args, "O!:glade_get_widget_name", &PyGtk_Type, &wid))
+ return NULL;
+ if ((name = glade_get_widget_name(GTK_WIDGET(PyGtk_Get(wid)))) != NULL)
+ return PyString_FromString(name);
+ Py_INCREF(Py_None);
+ return Py_None;
+}
+
+static PyObject *_wrap_glade_get_widget_long_name(PyObject *self, PyObject *args) {
+ PyObject *wid;
+ const char *name;
+
+ if (!PyArg_ParseTuple(args, "O!:glade_get_widget_long_name",
+ &PyGtk_Type, &wid))
+ return NULL;
+ if ((name = glade_get_widget_long_name(GTK_WIDGET(PyGtk_Get(wid))))!=NULL)
+ return PyString_FromString(name);
+ Py_INCREF(Py_None);
+ return Py_None;
+}
+
+static PyObject *_wrap_glade_get_widget_tree(PyObject *self, PyObject *args) {
+ PyObject *wid;
+ GladeXML *xml;
+
+ if (!PyArg_ParseTuple(args, "O!:glade_get_widget_tree", &PyGtk_Type, &wid))
+ return NULL;
+ if ((xml = glade_get_widget_tree(GTK_WIDGET(PyGtk_Get(wid))))!=NULL)
+ return PyGtk_New((GtkObject *)xml);
+ Py_INCREF(Py_None);
+ return Py_None;
+}
+
static PyMethodDef libgladeMethods[] = {
{ "glade_xml_signal_connect", _wrap_glade_xml_signal_connect, 1 },
{ "glade_xml_signal_autoconnect", _wrap_glade_xml_signal_autoconnect, 1 },
+ { "glade_xml_get_widget", _wrap_glade_xml_get_widget, 1 },
+ { "glade_xml_get_widget_by_long_name", _wrap_glade_xml_get_widget_by_long_name, 1 },
+ { "glade_get_widget_name", _wrap_glade_get_widget_name, 1 },
+ { "glade_get_widget_long_name", _wrap_glade_get_widget_long_name, 1 },
+ { "glade_get_widget_tree", _wrap_glade_get_widget_tree, 1 },
#include "libglade_defs.c"
{ NULL, NULL, 0 }
};