Just as a suggestion/observation ...
Coming from a Borland (Delphi) background, this is not an unfamiliar concept. In the Borland products they have what is called a 'DataModule'. A 'visual' container that works much in the same way as a normal 'window/view' editor.
It allows for dropping the so-called 'non-visual' components on. Now, at first, this doesn't seem to provide much of an advantage as many of those 'non-visual' components seem to be trivial, and could easily be coded (or stored) just as code-snippets like the one above, and just added to any piece of software by copy-paste. However... having them available as 'components', just like the visual widgets etc has 1 big advantage ... They become accessible thru the property editor, which gives it a nice touch, and makes the use of them a 'piece of cake' ... It lowers the threshold for people and also the chance of making mistakes in the process of copying them into your software, because of the drag-n-drop nature of widgets/components.
just my 2 cnts.[/img]
Even the smallest person can change the course of the future - Galadriel