summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorJames Henstridge <james@daa.com.au>2001-04-23 04:58:06 +0000
committerJames Henstridge <jamesh@src.gnome.org>2001-04-23 04:58:06 +0000
commitade115edfc57e551537cff112454016d9a24cab3 (patch)
treefc961f1013d6547b5b824243b6acb8d542fc27e1
parentcf75f6412fe7b20dd49daa6c60c978df11f9cd0a (diff)
downloadpygtk-ade115edfc57e551537cff112454016d9a24cab3.tar.gz
update news file.
2001-04-23 James Henstridge <james@daa.com.au> * NEWS: update news file. * gnome-python.spec: up version number. * configure.in: up version number to 1.4.1 2001-04-23 James Henstridge <james@daa.com.au> * Makefile.am (python_PYTHON): don't install Gtkinter anymore. The warning not to use this has been there long enough. * gtk.py: add support for functions added by Fabien's patch Patch from Fabien COUTANT <fcoutant@freesurf.fr> * gtkmodule.c: add {append,prepend,insert}_element methods for GtkToolbar. This isn't implemented quite like in Fabien's patch. * generate/gtkranges.defs (GtkRuler): add field position. * generate/gtkmenus.defs (gtk_menu_ensure_uline_accel_group): add function wrapper. * generate/gtkcontainers.defs (GtkScrolledWindow): add fields hscrollbar and vscrollbar. * gtkmodule.c (PyGdkEvent_GetAttr): implement __members__ attribute. * pygtk.spec: up version. * configure.in: up version number to 0.6.8
-rw-r--r--ChangeLog29
-rw-r--r--Gtkinter.py8
-rw-r--r--Makefile.am2
-rw-r--r--NEWS7
-rw-r--r--configure.in2
-rw-r--r--generate/gtkcontainers.defs5
-rw-r--r--generate/gtkmenus.defs4
-rw-r--r--generate/gtkranges.defs4
-rw-r--r--gtk.py56
-rw-r--r--gtkmodule.c118
-rw-r--r--pygtk.spec3
11 files changed, 218 insertions, 20 deletions
diff --git a/ChangeLog b/ChangeLog
index f079a1d8..2b5f8ae0 100644
--- a/ChangeLog
+++ b/ChangeLog
@@ -1,3 +1,32 @@
+2001-04-23 James Henstridge <james@daa.com.au>
+
+ * Makefile.am (python_PYTHON): don't install Gtkinter anymore.
+ The warning not to use this has been there long enough.
+
+ * gtk.py: add support for functions added by Fabien's patch
+
+ Patch from Fabien COUTANT <fcoutant@freesurf.fr>
+
+ * gtkmodule.c: add {append,prepend,insert}_element methods for
+ GtkToolbar. This isn't implemented quite like in Fabien's patch.
+
+ * generate/gtkranges.defs (GtkRuler): add field position.
+
+ * generate/gtkmenus.defs (gtk_menu_ensure_uline_accel_group): add
+ function wrapper.
+
+ * generate/gtkcontainers.defs (GtkScrolledWindow): add fields
+ hscrollbar and vscrollbar.
+
+
+
+ * gtkmodule.c (PyGdkEvent_GetAttr): implement __members__
+ attribute.
+
+ * pygtk.spec: up version.
+
+ * configure.in: up version number to 0.6.8
+
2001-04-22 James Henstridge <james@daa.com.au>
* gtk.py (GtkWidget): add here as well.
diff --git a/Gtkinter.py b/Gtkinter.py
deleted file mode 100644
index 65f70b56..00000000
--- a/Gtkinter.py
+++ /dev/null
@@ -1,8 +0,0 @@
-
-#This is for compatibility.
-
-print "importing Gtkinter is deprecated -- use 'from gtk import *'"
-
-from gtk import *
-from gtk import _name2cls,_obj2inst
-
diff --git a/Makefile.am b/Makefile.am
index c53a2177..45cdafd2 100644
--- a/Makefile.am
+++ b/Makefile.am
@@ -58,7 +58,7 @@ gdkpixbufmodule_la_LIBADD = $(GDK_PIXBUF_LIBS)
pkginclude_HEADERS = pygtk.h pygdkimlib.h pygdkpixbuf.h
-python_PYTHON = gtk.py Gtkinter.py GTK.py GDK.py GtkExtra.py \
+python_PYTHON = gtk.py GTK.py GDK.py GtkExtra.py \
$(imlib_mods) $(gtkgl_mods) $(libglade_mods)
noinst_PYTHON = mkgtk.py description.py
diff --git a/NEWS b/NEWS
index 84341f73..b37689a9 100644
--- a/NEWS
+++ b/NEWS
@@ -1,3 +1,10 @@
+pygtk-0.6.8: 23-April-2001
+ - bug fixes to GtkNotebook, GtkCList.
+ - add some missing methods to GtkWidget
+ - a gdk-pixbuf wrapper module.
+ - install the code generator, so that other wrappers can use
+ it as well.
+
pygtk-0.6.7: 16-February-2001
- added --disable-thread configure argument to turn off thread
support even when compiling with a threaded python.
diff --git a/configure.in b/configure.in
index 5bb343fd..67f2b03a 100644
--- a/configure.in
+++ b/configure.in
@@ -1,7 +1,7 @@
AC_INIT(gtkmodule.c)
AM_CONFIG_HEADER(config.h)
-AM_INIT_AUTOMAKE(pygtk, 0.6.7)
+AM_INIT_AUTOMAKE(pygtk, 0.6.8)
AC_DISABLE_STATIC
AC_PROG_LIBTOOL
diff --git a/generate/gtkcontainers.defs b/generate/gtkcontainers.defs
index 2eae8bb3..c32a9df2 100644
--- a/generate/gtkcontainers.defs
+++ b/generate/gtkcontainers.defs
@@ -636,7 +636,10 @@
;; ScrolledWidow
-(define-object GtkScrolledWindow (GtkContainer))
+(define-object GtkScrolledWindow (GtkContainer)
+ (fields
+ (GtkWidget hscrollbar)
+ (GtkWidget vscrollbar)))
(define-func gtk_scrolled_window_new
GtkWidget
diff --git a/generate/gtkmenus.defs b/generate/gtkmenus.defs
index 1e4f391d..d3e3563b 100644
--- a/generate/gtkmenus.defs
+++ b/generate/gtkmenus.defs
@@ -118,6 +118,10 @@
GtkAccelGroup
((GtkMenu menu)))
+(define-func gtk_menu_ensure_uline_accel_group
+ GtkAccelGroup
+ ((GtkMenu menu)))
+
;; gtk_menu_attach_to_widget
(define-func gtk_menu_get_attach_widget
diff --git a/generate/gtkranges.defs b/generate/gtkranges.defs
index 202d5f0f..cfb1b6e8 100644
--- a/generate/gtkranges.defs
+++ b/generate/gtkranges.defs
@@ -108,7 +108,9 @@
;; Ruler
-(define-object GtkRuler (GtkWidget))
+(define-object GtkRuler (GtkWidget)
+ (fields
+ (float position)))
(define-func gtk_ruler_set_metric
none
diff --git a/gtk.py b/gtk.py
index be2e4834..10f9e12c 100644
--- a/gtk.py
+++ b/gtk.py
@@ -1636,6 +1636,9 @@ class GtkMenu(GtkMenuShell):
_gtk.gtk_menu_set_title(self._o, title)
def reorder_child(self, child, position):
_gtk.gtk_menu_reorder_child(self._o, child._o, position)
+ def ensure_uline_accel_group(self):
+ return GtkAccelGroup(
+ _obj=_gtk.gtk_menu_ensure_uline_accel_group(self._o))
class GtkNotebook(GtkContainer):
get_type = _gtk.gtk_notebook_get_type
@@ -1827,6 +1830,15 @@ class GtkScrolledWindow(GtkBin):
if hadj: hadj = hadj._o
if vadj: vadj = vadj._o
self._o = _gtk.gtk_scrolled_window_new(hadj, vadj)
+ def __getattr__(self, attr):
+ attrs = {
+ 'hscrollbar': _gtk.gtk_scrolled_window_get_hscrollbar,
+ 'vscrollbar': _gtk.gtk_scrolled_window_get_vscrollbar
+ }
+ if attrs.has_attr(attr):
+ return _obj2inst(attrs[attr](self._o))
+ else:
+ return GtkBin.__getattr__(self, attr)
def get_hadjustment(self):
return _obj2inst(_gtk.gtk_scrolled_window_get_hadjustment(
self._o))
@@ -1924,26 +1936,53 @@ class GtkToolbar(GtkContainer):
style=TOOLBAR_ICONS, _obj=None):
if _obj: self._o = _obj; return
self._o = _gtk.gtk_toolbar_new(orientation, style)
+ def append_element(self, type, widget, text, tooltip, tp, icon,
+ callback):
+ if widget: widget = widget._o
+ if icon: icon = icon._o
+ if callback: callback = self.__wrap_cb(callback)
+ return _obj2inst(_gtk.gtk_toolbar_append_element(
+ self._o, type, widget, text, tooltip, tp, icon,
+ callback))
def append_item(self, text, tooltip, tp, icon, callback):
+ if icon: icon = icon._o
+ if callback: callback = self.__wrap_cb(callback)
return _obj2inst(_gtk.gtk_toolbar_append_item(
- self._o, text, tooltip, tp, icon._o,
- self.__wrap_cb(callback)))
+ self._o, text, tooltip, tp, icon, callback))
def append_space(self):
_gtk.gtk_toolbar_append_space(self._o)
def append_widget(self, w, tooltip, tp):
_gtk.gtk_toolbar_append_widget(self._o, w._o, tooltip, tp)
+ def insert_element(self, type, widget, text, tooltip, tp, icon,
+ callback, pos):
+ if widget: widget = widget._o
+ if icon: icon = icon._o
+ if callback: callback = self.__wrap_cb(callback)
+ return _obj2inst(_gtk.gtk_toolbar_insert_element(
+ self._o, type, widget, text, tooltip, tp, icon,
+ callback, pos))
def insert_item(self, text, tooltip, tp, icon, callback, pos):
+ if icon: icon = icon._o
+ if callback: callback = self.__wrap_cb(callback)
return _obj2inst(_gtk.gtk_toolbar_insert_item(
- self._o, text, tooltip, tp, icon._o,
- self.__wrap_cb(callback), pos))
+ self._o, text, tooltip, tp, icon, callback, pos))
def insert_space(self, pos):
_gtk.gtk_toolbar_insert_space(self._o, pos)
def insert_widget(self, w, tooltip, tp, pos):
_gtk.gtk_toolbar_insert_widget(self._o, w._o, tooltip, tp, pos)
+ def prepend_element(self, type, widget, text, tooltip, tp, icon,
+ callback):
+ if widget: widget = widget._o
+ if icon: icon = icon._o
+ if callback: callback = self.__wrap_cb(callback)
+ return _obj2inst(_gtk.gtk_toolbar_prepend_element(
+ self._o, type, widget, text, tooltip, tp, icon,
+ callback))
def prepend_item(self, text, tooltip, tp, icon, callback):
+ if icon: icon = icon._o
+ if callback: callback = self.__wrap_cb(callback)
return _obj2inst(_gtk.gtk_toolbar_prepend_item(
- self._o, text, tooltip, tp, icon._o,
- self.__wrap_cb(callback)))
+ self._o, text, tooltip, tp, icon, callback))
def prepend_space(self):
_gtk.gtk_toolbar_prepend_space(self._o)
def prepend_widget(self, w, tooltip, tp):
@@ -2444,6 +2483,11 @@ class GtkRuler(GtkWidget):
get_type = _gtk.gtk_ruler_get_type
def __init__(self, _obj=None):
if _obj: self._o = _obj; return
+ def __getattr__(self, attr):
+ if attr == 'position':
+ return _gtk.gtk_ruler_get_position(self._o)
+ else:
+ return GtkWidget.__getattr__(self, attr)
def set_metric(self, metric):
_gtk.gtk_ruler_set_metric(self._o, metric)
def set_range(self, lo, up, pos, max):
diff --git a/gtkmodule.c b/gtkmodule.c
index a05b8e0c..3c7eca21 100644
--- a/gtkmodule.c
+++ b/gtkmodule.c
@@ -1288,6 +1288,12 @@ PyGdkEvent_GetAttr(PyGdkEvent_Object *self, char *attr) {
Py_INCREF(ret);
return ret;
}
+ if (!strcmp(attr, "__members__")) {
+ PyObject *members = PyDict_Keys(self->attrs);
+
+ PyList_Sort(members);
+ return members;
+ }
PyErr_SetString(PyExc_AttributeError, attr);
return NULL;
}
@@ -5241,6 +5247,115 @@ static PyObject *_wrap_gtk_toolbar_insert_item(PyObject *self, PyObject *args) {
return PyGtk_New((GtkObject *)ret);
}
+static PyObject *
+_wrap_gtk_toolbar_append_element(PyObject *self, PyObject *args)
+{
+ PyGtk_Object *t, *icon;
+ GtkToolbarChildType type;
+ char *text, *tooltip, *tip_private;
+ GtkWidget *widget = NULL, *ret;
+ PyObject *py_widget, *callback;
+
+ if (!PyArg_ParseTuple(args, "O!iOzzzO!O:gtk_toolbar_append_element",
+ &PyGtk_Type, &t, &type, &py_widget, &text,
+ &tooltip, &tip_private, &PyGtk_Type, &icon,
+ &callback))
+ return NULL;
+ if (PyGtk_Check(py_widget))
+ widget = GTK_WIDGET(PyGtk_Get(py_widget));
+ else if (py_widget != Py_None) {
+ PyErr_SetString(PyExc_TypeError, "third argument not a GtkWidget or None");
+ return NULL;
+ }
+ if (!PyCallable_Check(callback) && callback != Py_None) {
+ PyErr_SetString(PyExc_TypeError, "seventh argument not callable");
+ return NULL;
+ }
+ if (callback != Py_None) Py_INCREF(callback);
+ ret = gtk_toolbar_append_element(GTK_TOOLBAR(PyGtk_Get(t)), type, widget,
+ text, tooltip, tip_private,
+ GTK_WIDGET(PyGtk_Get(icon)), NULL, NULL);
+ if (callback != Py_None) {
+ gtk_signal_connect_full(GTK_OBJECT(ret), "clicked", NULL,
+ PyGtk_CallbackMarshal, callback,
+ PyGtk_DestroyNotify, FALSE, FALSE);
+ }
+ return PyGtk_New((GtkObject *)ret);
+}
+
+static PyObject *
+_wrap_gtk_toolbar_prepend_element(PyObject *self, PyObject *args)
+{
+ PyGtk_Object *t, *icon;
+ GtkToolbarChildType type;
+ char *text, *tooltip, *tip_private;
+ GtkWidget *widget = NULL, *ret;
+ PyObject *py_widget, *callback;
+
+ if (!PyArg_ParseTuple(args, "O!iOzzzO!Oi:gtk_toolbar_prepend_element",
+ &PyGtk_Type, &t, &type, &py_widget, &text,
+ &tooltip, &tip_private, &PyGtk_Type, &icon,
+ &callback))
+ return NULL;
+ if (PyGtk_Check(py_widget))
+ widget = GTK_WIDGET(PyGtk_Get(py_widget));
+ else if (py_widget != Py_None) {
+ PyErr_SetString(PyExc_TypeError, "third argument not a GtkWidget or None");
+ return NULL;
+ }
+ if (!PyCallable_Check(callback) && callback != Py_None) {
+ PyErr_SetString(PyExc_TypeError, "seventh argument not callable");
+ return NULL;
+ }
+ if (callback != Py_None) Py_INCREF(callback);
+ ret = gtk_toolbar_prepend_element(GTK_TOOLBAR(PyGtk_Get(t)), type, widget,
+ text, tooltip, tip_private,
+ GTK_WIDGET(PyGtk_Get(icon)), NULL, NULL);
+ if (callback != Py_None) {
+ gtk_signal_connect_full(GTK_OBJECT(ret), "clicked", NULL,
+ PyGtk_CallbackMarshal, callback,
+ PyGtk_DestroyNotify, FALSE, FALSE);
+ }
+ return PyGtk_New((GtkObject *)ret);
+}
+
+static PyObject *
+_wrap_gtk_toolbar_insert_element(PyObject *self, PyObject *args)
+{
+ PyGtk_Object *t, *icon;
+ GtkToolbarChildType type;
+ char *text, *tooltip, *tip_private;
+ GtkWidget *widget = NULL, *ret;
+ PyObject *py_widget, *callback;
+ int pos;
+ if (!PyArg_ParseTuple(args, "O!iOzzzO!Oi:gtk_toolbar_insert_element",
+ &PyGtk_Type, &t, &type, &py_widget, &text,
+ &tooltip, &tip_private, &PyGtk_Type, &icon,
+ &callback, &pos))
+ return NULL;
+ if (PyGtk_Check(py_widget))
+ widget = GTK_WIDGET(PyGtk_Get(py_widget));
+ else if (py_widget != Py_None) {
+ PyErr_SetString(PyExc_TypeError, "third argument not a GtkWidget or None");
+ return NULL;
+ }
+ if (!PyCallable_Check(callback) && callback != Py_None) {
+ PyErr_SetString(PyExc_TypeError, "seventh argument not callable");
+ return NULL;
+ }
+ if (callback != Py_None) Py_INCREF(callback);
+ ret = gtk_toolbar_insert_element(GTK_TOOLBAR(PyGtk_Get(t)), type, widget,
+ text, tooltip, tip_private,
+ GTK_WIDGET(PyGtk_Get(icon)), NULL, NULL,
+ pos);
+ if (callback != Py_None) {
+ gtk_signal_connect_full(GTK_OBJECT(ret), "clicked", NULL,
+ PyGtk_CallbackMarshal, callback,
+ PyGtk_DestroyNotify, FALSE, FALSE);
+ }
+ return PyGtk_New((GtkObject *)ret);
+}
+
static PyObject *_wrap_gtk_drag_dest_set(PyObject *self, PyObject *args) {
PyObject *widget, *py_flags, *py_actions, *py_list;
GtkDestDefaults flags;
@@ -6800,6 +6915,9 @@ static PyMethodDef _gtkmoduleMethods[] = {
{ "gtk_toolbar_append_item", _wrap_gtk_toolbar_append_item, 1 },
{ "gtk_toolbar_prepend_item", _wrap_gtk_toolbar_prepend_item, 1 },
{ "gtk_toolbar_insert_item", _wrap_gtk_toolbar_insert_item, 1 },
+ { "gtk_toolbar_append_element", _wrap_gtk_toolbar_append_element, 1 },
+ { "gtk_toolbar_prepend_element", _wrap_gtk_toolbar_prepend_element, 1 },
+ { "gtk_toolbar_insert_element", _wrap_gtk_toolbar_insert_element, 1 },
{ "gtk_label_get", _wrap_gtk_label_get, 1 },
{ "gtk_color_selection_get_color", _wrap_gtk_color_selection_get_color,1 },
{ "gtk_color_selection_set_color", _wrap_gtk_color_selection_set_color,1 },
diff --git a/pygtk.spec b/pygtk.spec
index 51afd575..44ecdc68 100644
--- a/pygtk.spec
+++ b/pygtk.spec
@@ -1,7 +1,7 @@
%define py_prefix /usr
# py_ver should only be 3 characters (1.5.1 == 1.5)
%define py_ver 1.5
-%define ver 0.6.7
+%define ver 0.6.8
# you may want to remove some of the sub packages depending on what you
# have installed on your system when building this package.
@@ -66,7 +66,6 @@ make DESTDIR=$RPM_BUILD_ROOT install
%files
%{py_prefix}/lib/python%{py_ver}/site-packages/gtk.py*
-%{py_prefix}/lib/python%{py_ver}/site-packages/Gtkinter.py*
%{py_prefix}/lib/python%{py_ver}/site-packages/GtkExtra.py*
%{py_prefix}/lib/python%{py_ver}/site-packages/GTK.py*
%{py_prefix}/lib/python%{py_ver}/site-packages/GDK.py*