I'm going to keep this report brief since most of what I'm doing at the moment is framework and GUI coding. I hope everyone had a good Easter break. I've spent the last 2 weeks recoding the application/applet GUI classes which provide the user's front-end to OOA Tool 2. The overriding priorities for the new code is that it be seriously scalable and easily maintainable. I'm also putting all UI text in a resource bundle that will allow users to override for their locale (I might even have a go at producing a French resource bundle). In the original code, I was trying to be too clever in certain areas which was fine initially but as requirements grew some of this code resulted in unnecessary rework.
One example here regards various colour-coded text editors where I created my own StyledDocument
s allowing the user to edit multi-colour text, e.g. for Pattern/Action/Archetype Language code. The problem here is that the underlying Java classes are pretty fragile and I'm being nice here! Whenever any of the various syntaxes changed I would have to rework these classes. A simpler approach is to use a split pane with plain text in the top for user editing and in the bottom HTML text providing optional colour highlighting. When the syntaxes become final I can then invest some time in creating custom StyledDocument
s if necessary. Furthermore, the HTML text can be generated using templates which allows for user customization which is a nice extra feature.
Well that's all for now.