Mat, You are correct - there is no base class in VFP. One way around it is to manually code an "Add_New_Functionality(oCalled_Object)" procedure/function in a .prg along with any new method/event code you require. In this procedure/function you can add new properties and also bind new events using Bindevents() in a one off hit and add different code depending on the base class passed to the procedure via the oCalled_Object parameter.
Then, call Add_New_Functionality(This) in the init Method of each of your base classes which will programmatically add the properties and bind the appropriate methods and then call this in the init() of each of your base classes. A bit quirky but it works and is neater than coding each of the base classes with actual code. Obviously it is no use if you want to set up properties and/or custom method overloads visually in the design stage as the new properties/methods won't exist. Dave Crozier -----Original Message----- From: [email protected] [mailto:[email protected]] On Behalf Of Matt Slay Sent: 21 January 2009 15:10 To: 'ProFox Email List' Subject: How to have a true BASE class for all my classes? In VFP, how can I have a structure of my classes wherein I have one class ground-zero from which all other classes, even of different baseclass type, will inherit from? For instance, say I want a method or property to be present in all my classes; every textboxes, every checkbox, every label, containers, etc. Since each class can only be based on a class of the same type, I have no real ground-zero point at which I can add stuff that will be inherited by all my classes. So, apparently, I have to add the property or method to each of my root base classes. Add the new property to my textbox baseclass, add the new property to my checkbox baseclass, add the new property to my label base class, blah, blah, blah. Maintaining them in this manner seems to be a little short of a full OO architecture. >From what little I have learned about C# classes, I think you can indeed have a one ground-zero object class on which even different class types can be based. --- StripMime Report -- processed MIME parts --- multipart/alternative text/plain (text body -- kept) text/html --- [excessive quoting removed by server] _______________________________________________ Post Messages to: [email protected] Subscription Maintenance: http://leafe.com/mailman/listinfo/profox OT-free version of this list: http://leafe.com/mailman/listinfo/profoxtech Searchable Archive: http://leafe.com/archives/search/profox This message: http://leafe.com/archives/byMID/profox/4d32d0ba16034b3fa7c3251855839...@develop ** All postings, unless explicitly stated otherwise, are the opinions of the author, and do not constitute legal or medical advice. This statement is added to the messages for those lawyers who are too stupid to see the obvious.

