I've gotta do this really fast this weekend.
What is the fastest way to subclass the VFP 6.0 base classes?
happy Dae.
CREATE CLASS txtBase OF YourClassLib AS textbox NOWAIT
=2E=2E=2Efor each one=2E I have done this already and have a base class lib=2E =20=
If
you'd like me to send you a copy, email me privately=2E
HTH,
--Mike
>>> "DaePowell@aol=2Ecom" 07/28/00 06:02AM >>>
I've gotta do this really fast this weekend=2E
What is the fastest way to subclass the VFP 6=2E0 base classes?
happy Dae=2E
----------------------------------------
Subscription maintenance at:
http://leafe=2Ecom/mailListMaint=2Ehtml =20=
=20=
=20=
=20=
=20=
=20=
=20=
=20=
=20=
=20=
=20=
=20=
=20=
=20=
=20=
=20=
=20=
=20=
********************************
Michael Babcock
KePRO, Inc=2E
Tel: 717-564-8288
Fax: 717-564-4188
Internet Address: mbabcock@kepro=2Eorg
Home Page: http://www=2Ekepro=2Eorg
********************************
Mike,
What a cool idea. Can you email me a copy as well?
Thanks!
Malcolm Greene
Brooks-Durham
mgreene@bdurham.com
-----Original Message-----
From: profox@leafe.com [mailto:profox@leafe.com]On Behalf Of Michael
Babcock
Sent: Friday, July 28, 2000 8:25 AM
To: Multiple recipients of ProFox
Subject: Re: Subclassing Base Classes
CREATE CLASS txtBase OF YourClassLib AS textbox NOWAIT
...for each one. I have done this already and have a base class lib. If
you'd like me to send you a copy, email me privately.
HTH,
--Mike
>>> "DaePowell@aol.com" 07/28/00 06:02AM >>>
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
********************************
Michael Babcock
KePRO, Inc.
Tel: 717-564-8288
Fax: 717-564-4188
Internet Address: mbabcock@kepro.org
Home Page: http://www.kepro.org
********************************
----------------------------------------
Subscription maintenance at:
Thanks Malcolm=2E Actually, we got the idea from watching AppDev's VFP vid=
eo
series (starring Jim Booth as "Jim Booth")=2E (I don't think Jim frequents this
list, but just in case, =2E=2E=2E <g>) --Mike
>>> "mgreene@bdurham=2Ecom" 07/28/00 10:40AM >>>
Mike,
What a cool idea=2E Can you email me a copy as well?
Thanks!
Malcolm Greene
Brooks-Durham
mgreene@bdurham=2Ecom -----Original Message-----
From: profox@leafe=2Ecom [mailto:profox@leafe=2Ecom]On Behalf Of Michael
Babcock
Sent: Friday, July 28, 2000 8:25 AM
To: Multiple recipients of ProFox
Subject: Re: Subclassing Base Classes
CREATE CLASS txtBase OF YourClassLib AS textbox NOWAIT
=2E=2E=2E=2Efor each one=2E I have done this already and have a base class lib=2E=
If
you'd like me to send you a copy, email me privately=2E
HTH,
--Mike
>>> "DaePowell@aol=2Ecom" 07/28/00 06:02AM >>>
I've gotta do this really fast this weekend=2E
What is the fastest way to subclass the VFP 6=2E0 base classes?
happy Dae=2E
----------------------------------------
Subscription maintenance at:
http://leafe=2Ecom/mailListMaint=2Ehtml ********************************
Michael Babcock
KePRO, Inc=2E
Tel: 717-564-8288
Fax: 717-564-4188
Internet Address: mbabcock@kepro=2Eorg Home Page: http://www=2Ekepro=2Eorg=20=
********************************
----------------------------------------
Subscription maintenance at:
http://leafe=2Ecom/mailListMaint=2Ehtml ----------------------------------------
Subscription maintenance at:
http://leafe=2Ecom/mailListMaint=2Ehtml =20=
=20=
=20=
=20=
=20=
=20=
=20=
=20=
=20=
=20=
=20=
=20=
=20=
=20=
=20=
=20=
=20=
=20=
=20=
=20=
=20=
=20=
=20=
=20=
=20=
=20=
=20=
=20=
=20=
=20=
=20=
=20=
=20=
=20=
=20=
=20=
=20=
=20=
=20=
=20=
=20=
=20=
=20=
=20=
=20=
=20=
=20=
********************************
Michael Babcock
KePRO, Inc=2E
Tel: 717-564-8288
Fax: 717-564-4188
Internet Address: mbabcock@kepro=2Eorg
Home Page: http://www=2Ekepro=2Eorg
********************************
Mike, Greg, and Fred:
Thank you all for you ideas and samples on creating a full set of VFP base
classes.
I'm constantly surprised on how much I learn from everyone's contributions.
This list is great!
Regards,
Malcolm Greene
Brooks-Durham
mgreene@bdurham.com
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
>
>
>
Very nice, Fred.
Between you and Greg, I'm sure I'll get this weekend stint completed!
Happy Dae.
This is code written by Fred Taylor. I wanted to expand it's availability to
more "newbies" and to see if you are interested in examining it to make sure
it's OK for redistribution. Is FT around? :). As a professional newbie
myself, I know this is very helpful to us. ;)
*
** Begin Code
* MakeBase.prg
* By Fred Taylor
* Updated for VFP9 April 2005 with help from Profox List members
*
* Fred Taylor 2/9/99 - just so you know where it came from!
* Define base classes into xxxBase.VCX
*
LOCAL cRoot, cBase
cRoot = 'ft' && Change these characters to what ever you want ie:
'pr'...
&& If you don't change them you will get classes named:
&& ftTextBox, etc in a ftBase9.VCX
cBase = cRoot + 'Base9'
*
* aBaseClass[x,2]
* [x,1] = VFP Base Class name
* [x,2] = .T. - Create subclass
*
LOCAL aBaseClass[41,2] && When VFP defines new baseclasses, add them here
aBaseClass[1,1] = 'CheckBox'
aBaseClass[1,2] = .T.
aBaseClass[2,1] = 'Collection'
aBaseClass[2,2] = .T.
aBaseClass[3,1] = 'ComboBox'
aBaseClass[3,2] = .T.
aBaseClass[4,1] = 'CommandButton'
aBaseClass[4,2] = .T.
aBaseClass[5,1] = 'CommandGroup'
aBaseClass[5,2] = .T.
aBaseClass[6,1] = 'Container'
aBaseClass[6,2] = .T.
aBaseClass[7,1] = 'Control'
aBaseClass[7,2] = .T.
aBaseClass[8,1] = 'Cursor'
aBaseClass[8,2] = .T.
aBaseClass[9,1] = 'CursorAdapter'
aBaseClass[9,2] = .T.
aBaseClass[10,1] = 'Custom'
aBaseClass[10,2] = .T.
aBaseClass[11,1] = 'DataEnvironment'
aBaseClass[11,2] = .T.
aBaseClass[12,1] = 'EditBox'
aBaseClass[12,2] = .T.
aBaseClass[13,1] = 'Exception'
aBaseClass[13,2] = .T.
aBaseClass[14,1] = 'Form'
aBaseClass[14,2] = .T.
aBaseClass[15,1] = 'FormSet'
aBaseClass[15,2] = .T.
aBaseClass[16,1] = 'Grid'
aBaseClass[16,2] = .T.
aBaseClass[17,1] = 'HyperLink'
aBaseClass[17,2] = .T.
aBaseClass[18,1] = 'Image'
aBaseClass[18,2] = .T.
aBaseClass[19,1] = 'Label'
aBaseClass[19,2] = .T.
aBaseClass[20,1] = 'Line'
aBaseClass[20,2] = .T.
aBaseClass[21,1] = 'ListBox'
aBaseClass[21,2] = .T.
aBaseClass[22,1] = 'OleContainer' && Something wrong?
aBaseClass[22,2] = .F.
aBaseClass[23,1] = 'OptionButton'
aBaseClass[23,2] = .T.
aBaseClass[24,1] = 'OptionGroup'
aBaseClass[24,2] = .T.
aBaseClass[25,1] = 'OleBoundControl' && OLE controls need to be manually
done
aBaseClass[25,2] = .F.
aBaseClass[26,1] = 'OleControl' && OLE controls need to be manually done
aBaseClass[26,2] = .F.
aBaseClass[27,1] = 'Page'
aBaseClass[27,2] = .T.
aBaseClass[28,1] = 'PageFrame'
aBaseClass[28,2] = .T.
aBaseClass[29,1] = 'ProjectHook'
aBaseClass[29,2] = .T.
aBaseClass[30,1] = 'Relation'
aBaseClass[30,2] = .T.
aBaseClass[31,1] = 'ReportListener'
aBaseClass[31,2] = .T.
aBaseClass[32,1] = 'Separator'
aBaseClass[32,2] = .T.
aBaseClass[33,1] = 'Session'
aBaseClass[33,2] = .T.
aBaseClass[34,1] = 'Shape'
aBaseClass[34,2] = .T.
aBaseClass[35,1] = 'Spinner'
aBaseClass[35,2] = .T.
aBaseClass[36,1] = 'TextBox'
aBaseClass[36,2] = .T.
aBaseClass[37,1] = 'Timer'
aBaseClass[37,2] = .T.
aBaseClass[38,1] = 'Toolbar'
aBaseClass[38,2] = .T.
aBaseClass[39,1] = 'XMLAdapter'
aBaseClass[39,2] = .T.
aBaseClass[40,1] = 'XMLField'
aBaseClass[40,2] = .T.
aBaseClass[41,1] = 'XMLTable'
aBaseClass[41,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.
** End Code
Best regards.
PabloSr
Still Learning.
That which I value!
==============
Pablo Rivera Sr wrote:
>As a professional newbie myself, I know this is very helpful to us. ;)
>*
>
>
A professional newbie? Is there such as thing as an amateur newbie?
Perhaps a professional has been around a bit longer ;-)
Peter
Peter Cushing wrote on Tuesday, April 05, 2005 9:08 AM:
>Pablo Rivera Sr wrote:
>>As a professional newbie myself, I know this is very helpful to us. ;)
>>*
>>
>>
>A professional newbie? Is there such as thing as an amateur newbie?
>Perhaps a professional has been around a bit longer ;-)
A professional usually gets paid to do the work. I remember many years
ago as a photographer if you earn more than $25 then you were a pro.
David L. Crooks, Senior Software Engineer
Anteon Corporation
"Use the Right Tool for the job!"