Jim Fulton schrieb:
At:
http://www.zope.org/Wikis/DevSite/Projects/ComponentArchitecture/PublicationPostProcessing
I've put doesn some thoughs for discussion on making the publication APIs
more explicit and for supporting post processing tasks like adding
standard look and feel or adding missing page components.
Hi,
as a UI designer I would like to have a page Object (not the context
object) that I can adapt to IPublicationResult.
I would like contracts for HTML pages, e.g something like:
class IHTMLPage(zope.interface.Interface):
Provides information for a generic HTML Page
title = ''
description = ''
class IZMIPage(IHTMLPage):
Provides information for a basic ZMI page
scripts = [] # ordererd List of IZMIScriptFiles
styles = [] # ordered List of IZMIStylesheetFiles
class_names = IZMICSSNames # class names mapping with standard keys
id_names = IZMIIdNames # id names mapping with standard keys
actions = [] # IZMIActions
views = [] # IZMIViews
# ... anything needed by a IZMIPageRenderer
class IHTMLPageRenderer(IPublicationResult):
def render(obj, request, html_page):
Renders a HTML page
class IZMIPageRenderer(IHTMLPageRenderer)
def render(obj, request, zmi_page):
Renders a ZMI page
A renderer should be able to use any template language to do its job,
e.g. ZPT, DTML, PHP, XSLT ... IMHO.
Disclaimer: I guess the code above is garbage, this is just for
discussion, I'm still learning the basics :)
Tonico
___
Zope3-dev mailing list
Zope3-dev@zope.org
Unsub: http://mail.zope.org/mailman/options/zope3-dev/archive%40mail-archive.com