Clarification - the public variable I was talking about was oApp. Sorry if I phrased it badly.
>I want to reconciliate these two points. It's natural reflection to have some kind of application hierarchy, and AddObject looks, first time only :), as better way, i.e. after you Add(object) something to oApp, you can refer it easily throughhout the application as oApp.MyObject1.... Also, using public variables as a way to promote CreateObject as alternative to AddObject, looks not so good, just because public variable is something out of OO world. However, if you instanciate objects linking them to properties of higher-level object (e.g. oApp.MyObject1=CreateObject("MyClass1")) then you can have both advantages: universality of CreateObject and OO application hierarchy.
>
***************************
Bruce Gilmour
"Two things are infinite, the Universe and human stupidity. And I am not sure about the Universe."
- Albert Einstein