Hi,
I would like to talk about cleaning an initialize issue.
I had the problem that Squeak Changesets don't sort the
initialize messages of some classes in the right order and it
happend that after init the subclasses of Structure, the later
init of Structure itself destroyed the inits before. So I propose
to change it to lazy init like:
SWStructure>>initialize
self initializeActions.
self initializePermissions.
SWStructure>>initializeActions
self actions
add: SWLogin;
add: SWLogout;
add: SWSearch;
add: SWTemplateEdit;
add: SWRecentChanges;
add: SWPreviousStructure;
add: SWParentStructure;
add: SWNextStructure.
SWStructure>>permissions
^permissions ifNil: [permissions := Set new]
SWStructure>>actions
^actions ifNil: [actions := Set new]
Also we should change every direct reference to 'actions' or
'permissions' to 'self actions' and 'self permissions' in this
example.
This lazy init would affect Structure, HtmlWriteStream and
Template (AFAIK).
regards
Chris Burkert
--
http://www.chrisburkert.de/