On Fri, 2006-11-24 at 10:33 +0100, Murray Cumming wrote:> On Thu, 2006-11-23 at 12:27 +0100, Hrvoje Nikšić wrote: > [snip] > > The problem is that the fields of XyzClass and its descendants are> C > > struct members, as inaccessible to Python code as any field of a C > > struct, at least without heavy ctypes hackery. > [snip]> > But I guess that pygtk (like other bindings) has a standard way of > wrapping these, because they are needed in order to implement custom > GtkTreeModels or GtkCellRenderers, among other things. As far as I can tell by looking at gtk/pygtkcellrenderer.c, PyGTK allowsoverriding by creating a "stub class" PyGtkGenericCellRenderer thatinherits GtkCellRenderer and overrides its C methods with its ownmethods that call into Python. GtkTreeModel is handled exactly thesame. While this approach works for a specific class, it requires writingnon-trivial glue code for each class that needs to be subclassed. Itdoesn't allow a Python programmer to subclass a given GObject classdirectly from Python. _______________________________________________gtk-list mailing listgtk-list@xxxxxxxxxxxxx://mail.gnome.org/mailman/listinfo/gtk-list