diff options
author | James Henstridge <james@daa.com.au> | 2001-05-29 10:40:08 +0000 |
---|---|---|
committer | James Henstridge <jamesh@src.gnome.org> | 2001-05-29 10:40:08 +0000 |
commit | 2dfc134d2a28b542a6157f36144569706bd38df8 (patch) | |
tree | df51a5920156e963d6d20f96362a6e3c21dccd21 | |
parent | 4a55f849dd5f72163be3e30f5ff6df3bba95c185 (diff) | |
download | pygtk-2dfc134d2a28b542a6157f36144569706bd38df8.tar.gz |
install the code generator
2001-05-29 James Henstridge <james@daa.com.au>
* codegen/Makefile.am: install the code generator
* gtk/Makefile.am: install the pygtk.h header
* Makefile.am: install the pygobject.h header
* gtk/gdk.defs, gtk/gtk.defs, gtk/gtk-types.c: changes to make
things compile.
-rw-r--r-- | ChangeLog | 17 | ||||
-rw-r--r-- | Makefile.am | 2 | ||||
-rw-r--r-- | codegen/Makefile.am | 4 | ||||
-rw-r--r-- | codegen/codegen.py | 21 | ||||
-rw-r--r-- | gtk/Makefile.am | 21 | ||||
-rw-r--r-- | gtk/gdk.defs | 70 | ||||
-rw-r--r-- | gtk/gtk-types.c | 8 | ||||
-rw-r--r-- | gtk/gtk.defs | 14 |
8 files changed, 86 insertions, 71 deletions
@@ -1,3 +1,20 @@ +2001-05-29 James Henstridge <james@daa.com.au> + + * codegen/Makefile.am: install the code generator + + * gtk/Makefile.am: install the pygtk.h header + + * Makefile.am: install the pygobject.h header + + * gtk/gdk.defs, gtk/gtk.defs, gtk/gtk-types.c: changes to make + things compile. + +2001-05-28 James Henstridge <james@daa.com.au> + + * codegen/codegen.py (write_source): add code to reorder object + definitions if necessary. To catch ordering problems in .defs + file. + 2001-05-27 James Henstridge <james@daa.com.au> * codegen/codegen.py (write_source): interfaces don't have diff --git a/Makefile.am b/Makefile.am index 047aba4e..7bd8b600 100644 --- a/Makefile.am +++ b/Makefile.am @@ -20,6 +20,8 @@ gobjectmodule_la_SOURCES = \ pygobject.h gobjectmodule_la_LIBADD = $(GLIB_LIBS) +pkginclude_HEADERS = pygobject.h + noinst_PYTHON = ltihooks.py EXTRA_DIST = \ diff --git a/codegen/Makefile.am b/codegen/Makefile.am index dd11f4b6..050cf1cd 100644 --- a/codegen/Makefile.am +++ b/codegen/Makefile.am @@ -1,5 +1,7 @@ -noinst_PYTHON = \ +codegendir = $(pkgdatadir)/2.0/codegen + +codegen_PYTHON = \ __init__.py \ argtypes.py \ codegen.py \ diff --git a/codegen/codegen.py b/codegen/codegen.py index 1361eba1..47ec44d0 100644 --- a/codegen/codegen.py +++ b/codegen/codegen.py @@ -452,7 +452,20 @@ def write_source(parser, overrides, prefix, fp=sys.stdout): for interface in parser.interfaces: fp.write(' PyExtensionClass_Export(d, "' + interface.c_name + '", Py' + interface.c_name + '_Type);\n') - for obj in parser.objects: + objects = parser.objects[:] + pos = 0 + while pos < len(objects): + parent = None + if objects[pos].parent != (None, None): + parent = objects[pos].parent[1] + objects[pos].parent[0] + for i in range(pos+1, len(objects)): + if objects[i].c_name == parent: + objects.insert(i+1, objects[pos]) + del objects[pos] + break + else: + pos = pos + 1 + for obj in objects: bases = [] if obj.parent != (None, None): bases.append(obj.parent[1] + obj.parent[0]) @@ -478,11 +491,7 @@ def register_types(parser): else: argtypes.matcher.register_object(obj.c_name, None) for obj in parser.interfaces: - if obj.parent != (None, None): - argtypes.matcher.register_object(obj.c_name, - obj.parent[1] + obj.parent[0]) - else: - argtypes.matcher.register_object(obj.c_name, None) + argtypes.matcher.register_object(obj.c_name, None) for enum in parser.enums: if enum.deftype == 'flags': argtypes.matcher.register_flag(enum.c_name) diff --git a/gtk/Makefile.am b/gtk/Makefile.am index d483016f..2522073c 100644 --- a/gtk/Makefile.am +++ b/gtk/Makefile.am @@ -2,18 +2,11 @@ INCLUDES = -I$(top_srcdir) $(PYTHON_INCLUDES) $(GTK_CFLAGS) \ $(GDK_IMLIB_CFLAGS) $(LIBGLADE_CFLAGS) $(GTKGL_CFLAGS) -Wall -#if BUILD_LIBGLADE -#libglademodule = libglademodule.la -#endif -#if BUILD_GTKGL -#glmodule = glmodule.la -#endif - pygtkdir = $(pythondir)/gtk pygtk_PYTHON = __init__.py GTK.py GDK.py pygtkexecdir = $(pyexecdir)/gtk -pygtkexec_LTLIBRARIES = _gtkmodule.la #$(libglademodule) $(glmodule) +pygtkexec_LTLIBRARIES = _gtkmodule.la _gtkmodule_la_LDFLAGS = -module -avoid-version -export-symbols-regex init_gtk _gtkmodule_la_LIBADD = $(GTK_LIBS) @@ -27,17 +20,7 @@ _gtkmodule_la_SOURCES = \ pygtktreemodel.c \ gtk.c -#libglademodule_la_LDFLAGS = -module -avoid-version -#libglademodule_la_LIBADD = $(LIBGLADE_LIBS) -#libglademodule_la_SOURCES = \ -# libglademodule.c \ -# libglade.c - -#glmodule_la_LDFLAGS = -module -avoid-version -#glmodule_la_LIBADD = $(GTKGL_LIBS) $(GTK_LIBS) -#glmodule_la_SOURCES = \ -# gtkglmodule.c \ -# gtkgl.c +pkginclude_HEADERS = pygtk.h # chmod hack here is because automake guys decided distdir should be # read only for the next version :( diff --git a/gtk/gdk.defs b/gtk/gdk.defs index 561267aa..8de261b4 100644 --- a/gtk/gdk.defs +++ b/gtk/gdk.defs @@ -64,6 +64,12 @@ (c-name GdkPixbufAnimation) ) +(object PixbufAnimationIter + (in-module Gdk) + (parent Object (G)) + (c-name GdkPixbufAnimationIter) +) + ;; Enumerations and flags ... (enum ColorContextMode @@ -1837,63 +1843,55 @@ (return-type int) ) -(method get_frames +(method is_static_image (of-object PixbufAnimation (Gdk)) - (c-name gdk_pixbuf_animation_get_frames) - (return-type GList*) + (c-name gdk_pixbuf_animation_is_static_image) + (return-type gboolean) ) -(method get_num_frames +(method get_static_image (of-object PixbufAnimation (Gdk)) - (c-name gdk_pixbuf_animation_get_num_frames) - (return-type int) -) - -(method get_pixbuf - (of-object PixbufFrame (Gdk)) - (c-name gdk_pixbuf_frame_get_pixbuf) + (c-name gdk_pixbuf_animation_get_static_image) (return-type GdkPixbuf*) ) -(method get_x_offset - (of-object PixbufFrame (Gdk)) - (c-name gdk_pixbuf_frame_get_x_offset) - (return-type int) +(method get_iter + (of-object PixbufAnimation (Gdk)) + (c-name gdk_pixbuf_animation_get_iter) + (return-type GdkPixbufAnimationIter*) + (parameter (type-and-name const-GTimeVal* start_time)) ) -(method get_y_offset - (of-object PixbufFrame (Gdk)) - (c-name gdk_pixbuf_frame_get_y_offset) - (return-type int) +(function pixbuf_animation_iter_get_type + (c-name gdk_pixbuf_animation_iter_get_type) + (return-type GType) ) (method get_delay_time - (of-object PixbufFrame (Gdk)) - (c-name gdk_pixbuf_frame_get_delay_time) + (of-object PixbufAnimationIter (Gdk)) + (c-name gdk_pixbuf_animation_iter_get_delay_time) (return-type int) ) -(method get_action - (of-object PixbufFrame (Gdk)) - (c-name gdk_pixbuf_frame_get_action) - (return-type GdkPixbufFrameAction) +(method get_pixbuf + (of-object PixbufAnimationIter (Gdk)) + (c-name gdk_pixbuf_animation_iter_get_pixbuf) + (return-type GdkPixbuf*) ) -(function gdk_pixbuf_preinit - (c-name gdk_pixbuf_preinit) - (return-type none) - (parameter (type-and-name gpointer app)) - (parameter (type-and-name gpointer modinfo)) +(method on_currently_loading_frame + (of-object PixbufAnimationIter (Gdk)) + (c-name gdk_pixbuf_animation_iter_on_currently_loading_frame) + (return-type gboolean) ) -(function gdk_pixbuf_postinit - (c-name gdk_pixbuf_postinit) - (return-type none) - (parameter (type-and-name gpointer app)) - (parameter (type-and-name gpointer modinfo)) +(method advance + (of-object PixbufAnimationIter (Gdk)) + (c-name gdk_pixbuf_animation_iter_advance) + (return-type gboolean) + (parameter (type-and-name const-GTimeVal* current_time)) ) - ;; From /opt/pango/include/gtk-2.0/gdk/gdkpixbuf.h (method render_to_drawable diff --git a/gtk/gtk-types.c b/gtk/gtk-types.c index 8a4985d4..36d564cf 100644 --- a/gtk/gtk-types.c +++ b/gtk/gtk-types.c @@ -3189,11 +3189,11 @@ pygtk_text_iter_is_end(PyGtkTextIter_Object *self, PyObject *args) } static PyObject * -pygtk_text_iter_is_first(PyGtkTextIter_Object *self, PyObject *args) +pygtk_text_iter_is_start(PyGtkTextIter_Object *self, PyObject *args) { - if (!PyArg_ParseTuple(args, ":GtkTextIter.is_first")) + if (!PyArg_ParseTuple(args, ":GtkTextIter.is_start")) return NULL; - return PyInt_FromLong(gtk_text_iter_is_first(&self->iter)); + return PyInt_FromLong(gtk_text_iter_is_start(&self->iter)); } static PyObject * @@ -3487,7 +3487,7 @@ static PyMethodDef pygtk_text_iter_methods[] = { { "ends_line", (PyCFunction)pygtk_text_iter_ends_line, METH_VARARGS }, { "get_chars_in_line", (PyCFunction)pygtk_text_iter_get_chars_in_line, METH_VARARGS }, { "is_end", (PyCFunction)pygtk_text_iter_is_end, METH_VARARGS }, - { "is_first", (PyCFunction)pygtk_text_iter_is_first, METH_VARARGS }, + { "is_start", (PyCFunction)pygtk_text_iter_is_start, METH_VARARGS }, { "forward_char", (PyCFunction)pygtk_text_iter_forward_char, METH_VARARGS }, { "backward_char", (PyCFunction)pygtk_text_iter_backward_char, METH_VARARGS }, { "forward_chars", (PyCFunction)pygtk_text_iter_forward_chars, METH_VARARGS }, diff --git a/gtk/gtk.defs b/gtk/gtk.defs index 7462bd32..dfcacd42 100644 --- a/gtk/gtk.defs +++ b/gtk/gtk.defs @@ -5578,7 +5578,11 @@ (function gtk_image_menu_item_new (c-name gtk_image_menu_item_new) (return-type GtkWidget*) - (parameter (type-and-name GtkWidget* widget)) +) + +(function gtk_image_menu_item_new_with_label + (c-name gtk_image_menu_item_new_with_label) + (return-type GtkWidget*) (parameter (type-and-name const-gchar* label)) ) @@ -5589,9 +5593,9 @@ (parameter (type-and-name GtkAccelGroup* accel_group)) ) -(method add_image +(method set_image (of-object ImageMenuItem (Gtk)) - (c-name gtk_image_menu_item_add_image) + (c-name gtk_image_menu_item_set_image) (return-type none) (parameter (type-and-name GtkWidget* child)) ) @@ -12627,9 +12631,9 @@ (return-type none) ) -(method set_cell_data +(method cell_set_cell_data (of-object TreeViewColumn (Gtk)) - (c-name gtk_tree_view_column_set_cell_data) + (c-name gtk_tree_view_column_cell_set_cell_data) (return-type none) (parameter (type-and-name GtkTreeModel* tree_model)) (parameter (type-and-name GtkTreeIter* iter)) |