HI Dave,
I have created my own class and I am happy I did that way, since the whole behaviour of the project is well under my control and to my liking.
The 1st thing is n-tier thinking...
SO create a base class for every probable VFP class you will be using. That is the 1st thing, though you may never modify these base class. The [point is that incase you want a intermediary, you can always introduce that. Example..
myBaseClass
myBaseForm && of VFPs BaseForm class
myBaseForm1
myBaseFormMaster
myBaseFormData
May be Form Master has a navigationClass added to that and some basic functions like... checkMaster() or whatever functions and related properties. So when you need to create a form for a master.. say customer master... you shall be able to subclass myBaseFormMaster, add the AcMas Table to its DE, draw the fields into the form, set few properties.. such as the report form name, alias name, view name or whatever and the form shall be ready.
Now you want to add a helpclass, tooltip class, you can go back and add them to myBaseForm1 or myBaseForm Class, and there it will get implemented everywhere.
If you need a intermediary form.. you can introduce..
myBaseForm0 and redefine myBaseForm1 to be based on this.
So you dont have to redefine all forms etc.
SO the reason, to have a free spacing of classes (as I call it) and not use the Base Classes directly. Some one could argue, that I can still redefine my BaseForm as based on Form1.. But I keep up a naming convention..1,2,3 and 10, 11 as probable levels to think of them in ease on a later date, if need arise to introduce something.
Just some of my thoughts... If that helps you..
Just a coincidence, I was thinking about my own textbox class, where I want the mouse to get a positioning without a click at the place where I key in something. If you think about it, may be this can be raised in the forum where others can contribute also on this. The point is.. when ever a mouse click is made on a text box, the cursor is positioned there. Same way, I want the mouse to get positioned wherever the cursor is placed. But I dont want the mouse to do a click when that is done. The result is .. a mouse over event will take place.. the tool tip will get activated.. and can indirectly provide a help on that. I have a version of my own ToolTip, which provides the help without removing the display.. so long the mouse is over the object. This type of functionals can be added, on a later date, if we use our own classes derived from base classes.
Best of luck.. Dave

ramani :-9
(Subramanian.G),FoxAcc, ramani_g@yahoo.com