summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorJohan Dahlin <zilch@src.gnome.org>2003-01-01 22:38:50 +0000
committerJohan Dahlin <zilch@src.gnome.org>2003-01-01 22:38:50 +0000
commit6459f886340bfbd18f56e08e6c982a2ceeb8ba81 (patch)
tree73cd73cba76b7d6880f1e2921cffe7753f0b9ece
parent4453bfdba835f3234d9dc310731262b7ffd89367 (diff)
downloadpygtk-6459f886340bfbd18f56e08e6c982a2ceeb8ba81.tar.gz
Wrap, so you don't have to specify the length of the string. For
* gtk/gtk.override (_wrap_gtk_text_buffer_insert_at_cursor) (_wrap_gtk_text_buffer_insert_at_cursor) (_wrap_gtk_text_buffer_insert_interactive) (_wrap_gtk_text_buffer_insert_interactive_at_cursor): Wrap, so you don't have to specify the length of the string. For consistency. (It's not slower since Python does always store the length inside the PyStringObject struct). Patch (mostly) by John Finlay, fixes #102186.
-rw-r--r--ChangeLog9
-rw-r--r--gtk/gtk.override101
2 files changed, 110 insertions, 0 deletions
diff --git a/ChangeLog b/ChangeLog
index 347c9512..3bdfe6de 100644
--- a/ChangeLog
+++ b/ChangeLog
@@ -1,5 +1,14 @@
2003-01-01 Johan Dahlin <jdahlin@async.com.br>
+ * gtk/gtk.override (_wrap_gtk_text_buffer_insert_at_cursor)
+ (_wrap_gtk_text_buffer_insert_at_cursor)
+ (_wrap_gtk_text_buffer_insert_interactive)
+ (_wrap_gtk_text_buffer_insert_interactive_at_cursor): Wrap, so you
+ don't have to specify the length of the string. For
+ consistency. (It's not slower since Python does always store the
+ length inside the PyStringObject struct). Patch (mostly) by
+ John Finlay, fixes #102186.
+
* gtk/gtk.defs (GtkTreeView.scroll_to_cell): Add default values.
* gtk/gtk.override (_wrap_gtk_tree_selection_get_selected): Check
diff --git a/gtk/gtk.override b/gtk/gtk.override
index 27a24ec6..4ce5e67a 100644
--- a/gtk/gtk.override
+++ b/gtk/gtk.override
@@ -6174,6 +6174,107 @@ _wrap_gtk_text_buffer_get_selection_bounds(PyGObject *self, PyObject *args)
pyg_boxed_new(GTK_TYPE_TEXT_ITER, &end, TRUE, TRUE));
}
%%
+override gtk_text_buffer_insert kwargs
+static PyObject *
+_wrap_gtk_text_buffer_insert(PyGObject *self, PyObject *args,
+ PyObject *kwargs)
+{
+ static char *kwlist[] = { "iter", "text", NULL };
+ PyObject *py_iter;
+ char *text;
+ int len;
+ GtkTextIter *iter = NULL;
+
+ if (!PyArg_ParseTupleAndKeywords(args, kwargs, "Os#:GtkTextBuffer.insert",
+ kwlist, &py_iter, &text, &len)) {
+ return NULL;
+ }
+
+ if (pyg_boxed_check(py_iter, GTK_TYPE_TEXT_ITER)) {
+ iter = pyg_boxed_get(py_iter, GtkTextIter);
+ } else {
+ PyErr_SetString(PyExc_TypeError, "iter should be a GtkTextIter");
+ return NULL;
+ }
+ gtk_text_buffer_insert(GTK_TEXT_BUFFER(self->obj), iter, text, len);
+ Py_INCREF(Py_None);
+ return Py_None;
+}
+%%
+override gtk_text_buffer_insert_at_cursor kwargs
+static PyObject *
+_wrap_gtk_text_buffer_insert_at_cursor(PyGObject *self, PyObject *args,
+ PyObject *kwargs)
+{
+ static char *kwlist[] = { "text", NULL };
+ char *text;
+ int len;
+
+ if (!PyArg_ParseTupleAndKeywords(args, kwargs,
+ "s#:GtkTextBuffer.insert_at_cursor",
+ kwlist, &text, &len)) {
+ return NULL;
+ }
+
+ gtk_text_buffer_insert_at_cursor(GTK_TEXT_BUFFER(self->obj), text, len);
+ Py_INCREF(Py_None);
+ return Py_None;
+}
+%%
+override gtk_text_buffer_insert_interactive kwargs
+static PyObject *
+_wrap_gtk_text_buffer_insert_interactive(PyGObject *self, PyObject *args,
+ PyObject *kwargs)
+{
+ static char *kwlist[] = { "iter", "text", "default_editable", NULL };
+ PyObject *py_iter, *py_ret;
+ char *text;
+ int len, default_editable, ret;
+ GtkTextIter *iter = NULL;
+
+ if (!PyArg_ParseTupleAndKeywords(args, kwargs,
+ "Os#i:GtkTextBuffer.insert_interactive",
+ kwlist, &py_iter, &text, &len,
+ &default_editable)) {
+ return NULL;
+ }
+
+ if (pyg_boxed_check(py_iter, GTK_TYPE_TEXT_ITER)) {
+ iter = pyg_boxed_get(py_iter, GtkTextIter);
+ } else {
+ PyErr_SetString(PyExc_TypeError, "iter should be a GtkTextIter");
+ return NULL;
+ }
+ ret = gtk_text_buffer_insert_interactive(GTK_TEXT_BUFFER(self->obj), iter,
+ text, len, default_editable);
+ py_ret = ret ? Py_True : Py_False;
+ Py_INCREF(py_ret);
+ return py_ret;
+}
+%%
+override gtk_text_buffer_insert_interactive_at_cursor kwargs
+static PyObject *
+_wrap_gtk_text_buffer_insert_interactive_at_cursor(PyGObject *self, PyObject *args,
+ PyObject *kwargs)
+{
+ static char *kwlist[] = { "text", "default_editable", NULL };
+ char *text;
+ int len, default_editable, ret;
+ PyObject *py_ret;
+
+ if (!PyArg_ParseTupleAndKeywords(args, kwargs,
+ "s#i:GtkTextBuffer.insert_interactive_at_cursor",
+ kwlist, &text, &len, &default_editable)) {
+ return NULL;
+ }
+
+ ret = gtk_text_buffer_insert_interactive_at_cursor(GTK_TEXT_BUFFER(self->obj),
+ text, len, default_editable);
+ py_ret = ret ? Py_True : Py_False;
+ Py_INCREF(py_ret);
+ return py_ret;
+}
+%%
override gtk_text_child_anchor_get_widgets noargs
static PyObject *
_wrap_gtk_text_child_anchor_get_widgets(PyGObject *self)