-----Original Message----- From: James W. Howe [mailto:jwh@allencreek.com] Sent: Wednesday, January 19, 2000 11:12 AM To: zope@zope.org Subject: [Zope] Extending Image via ZClass
I'm working on creating an extension to Image which will allow a person to include caption and attribution information for an image. I'm calling this a CaptionedImage for lack of a better name. I've created the ZClass and added property sheets and defined some methods for my views. What I don't know how to do, however, is modify the way the object renders itself by default. For example, if I use the following:
<dtml-var CaptionedImageObjectInstance>
I get an img tag for the image associated with my object. What I want to be able to do is generate my own tags so as to include caption and attribution information in a standard format. How can I do this?
Overload the __str__ method. Unless there is some other product or ZClass someone has made that allready does this, you will need to create a Python base class and override __str__ there. It's not a bad idea to have a P Base class anyway.
Relatedly, does Zope support the notion of "super" in determine which code to evaluate. For example, in my CaptionedImage object, I would like to override the default behavior of view_image_or_file, but only if caption information was specified. If no caption information was specified, I would like to let the superclass version of the method be executed. Is there a way to do this?
In Python, yes: if caption: return self.view_image_or_file() else: return Image.view_image_or_file(self) In this case, you are explicitly saying you want to use the Image base class's method. -Michel
participants (1)
-
Michel Pelletier