On Fri, 2007-03-09 at 08:10 -0700, Jeffrey Barish wrote:
> Gustavo J. A. M. Carneiro wrote:
> 
> > Another, more complex, example can be found here:
> > http://telecom.inescporto.pt/~gjc/higcontainer/higcontainer.py
> 
> Thanks to everyone for the examples.  Is there documentation anywhere on the
> do_ methods that they all contain?  I guess that when a Widget receives a
> size_request call, for example, it calls do_size_request on its children.

My understanding, albeit gleaned only from example code and
experimentation is widget subclassing in pygtk works by the following
method. Instead of overriding a method by creating a new method in the
subclass with the same name as is the normal method of subclass override
in OO languages pygtk appears to operate this way: The name of the
method is prefixed with 'do_' and a method look up is performed on that
name in the subclass, if the do_xxxx method is found it is invoked as
the overridden method. If the override mechanism does not work this way
I'd love to know what actually is going on. I'm also curious as to why
pygtk seems to have this peculiar and undocumented subclassing form.

To the best of my knowledge the 'do_' prefix method of subclassing is
totally undocumented in pygtk other than it appears in the example code.
I searched for hours looking for a clear statement of the subclassing
behavior and I never found it. To my mind this is a serious
documentation omission.
-- 
John Dennis <[EMAIL PROTECTED]>

_______________________________________________
pygtk mailing list   pygtk@daa.com.au
http://www.daa.com.au/mailman/listinfo/pygtk
Read the PyGTK FAQ: http://www.async.com.br/faq/pygtk/

Reply via email to