1 from Components.HTMLSkin import *
2 from Components.GUISkin import *
6 class Screen(dict, HTMLSkin, GUISkin):
9 def __init__(self, session):
10 self.skinName = self.__class__.__name__
11 self.session = session
12 GUISkin.__init__(self)
15 self.onExecBegin = [ ]
18 # in order to support screens *without* a help,
19 # we need the list in every screen. how ironic.
23 for x in self.onExecBegin:
25 # assert self.session == None, "a screen can only exec one per time"
26 # self.session = session
27 for (name, val) in self.items():
30 for x in self.onShown:
34 for (name, val) in self.items():
36 # assert self.session != None, "execEnd on non-execing screen!"
39 # never call this directly - it will be called from the session!
41 for x in self.onClose:
44 # fixup circular references
49 for (name, val) in self.items():
52 def close(self, *retval):
53 self.session.close(*retval)
55 def setFocus(self, o):
56 self.instance.setFocus(o.instance)