Author: Fred Taylor
Posted: 2000-07-28 at 11:24:03
Here's a little MAKEBASE.PRG I've whipped up for just such an occassion:
--------------------
*
* Fred Taylor 2/9/99 - just so you know where it came from!
*
* Define base classes into xxxBase.VCX
*
LOCAL cRoot, cBase
cRoot = 'xxx' && Change this to what ever you want ie: 'Mfx'
&& This will give you classes called:
&& MfxTextBox, etc in a MfxBase.VCX
cBase = cRoot + 'Base'
*
* aBaseClass[x,2]
* [x,1] = VFP Base Class name
* [x,2] = .T. - Create subclass
*
LOCAL aBaseClass[26,2] && If VFP ever defines new baseclasses, add them
here
aBaseClass[1,1] = 'CheckBox'
aBaseClass[1,2] = .T.
aBaseClass[2,1] = 'ComboBox'
aBaseClass[2,2] = .T.
aBaseClass[3,1] = 'CommandButton'
aBaseClass[3,2] = .T.
aBaseClass[4,1] = 'CommandGroup'
aBaseClass[4,2] = .T.
aBaseClass[5,1] = 'Container'
aBaseClass[5,2] = .T.
aBaseClass[6,1] = 'Control'
aBaseClass[6,2] = .T.
aBaseClass[7,1] = 'Custom'
aBaseClass[7,2] = .T.
aBaseClass[8,1] = 'EditBox'
aBaseClass[8,2] = .T.
aBaseClass[9,1] = 'Form'
aBaseClass[9,2] = .T.
aBaseClass[10,1] = 'FormSet'
aBaseClass[10,2] = .T.
aBaseClass[11,1] = 'Grid'
aBaseClass[11,2] = .T.
aBaseClass[12,1] = 'Image'
aBaseClass[12,2] = .T.
aBaseClass[13,1] = 'Label'
aBaseClass[13,2] = .T.
aBaseClass[14,1] = 'Line'
aBaseClass[14,2] = .T.
aBaseClass[15,1] = 'ListBox'
aBaseClass[15,2] = .T.
aBaseClass[16,1] = 'OptionButton'
aBaseClass[16,2] = .T.
aBaseClass[17,1] = 'OptionGroup'
aBaseClass[17,2] = .T.
aBaseClass[18,1] = 'OleBoundControl' && OLE controls need to be manually
done
aBaseClass[18,2] = .F.
aBaseClass[19,1] = 'OleControl' && OLE controls need to be manually done
aBaseClass[19,2] = .F.
aBaseClass[20,1] = 'PageFrame'
aBaseClass[20,2] = .T.
aBaseClass[21,1] = 'Separator'
aBaseClass[21,2] = .T.
aBaseClass[22,1] = 'Shape'
aBaseClass[22,2] = .T.
aBaseClass[23,1] = 'Spinner'
aBaseClass[23,2] = .T.
aBaseClass[24,1] = 'TextBox'
aBaseClass[24,2] = .T.
aBaseClass[25,1] = 'Timer'
aBaseClass[25,2] = .T.
aBaseClass[26,1] = 'Toolbar'
aBaseClass[26,2] = .T.
*
* Now lets create the empty subclasses
*
* Delete any existing table
*
ERASE (cBase+'.VC*')
*
* Now add the VFP base classes
*
LOCAL xx
FOR xx=1 TO ALEN(aBaseClass,1)
IF aBaseClass[xx,2]
od = CREATEOBJECT(aBaseClass[xx,1])
od.SaveAsClass(cBase,cRoot+aBaseClass[xx,1])
ENDIF
ENDFOR
od = .NULL.
--------------------
Fred
ftaylor@uswest.net
----- Original Message -----
From: <DaePowell@aol.com>
To: "Multiple recipients of ProFox" <profox@leafe.com>
Sent: Thursday, July 27, 2000 10:51 PM
Subject: Subclassing Base Classes
> I've gotta do this really fast this weekend.
>
> What is the fastest way to subclass the VFP 6.0 base classes?
>
> happy Dae.
>
>
>
> ----------------------------------------
> Subscription maintenance at:
> http://leafe.com/mailListMaint.html
>
>
>