Level Extreme platform
Subscription
Corporate profile
Products & Services
Support
Legal
Français
VFP7 Events
Message
From
02/01/2001 16:54:53
 
 
General information
Forum:
Visual FoxPro
Category:
Other
Title:
Miscellaneous
Thread ID:
00458642
Message ID:
00458660
Views:
30
Hi!

Obviously, the Parent's code executes first and then the Child's code but if we want to change that behavior then we have a few choices.

1] Parent's Code first then Child's Code (Default behavoir)

2] Child's Code first then Parent's Code

*--In your Child's Code

NoDefault && Don't execute the Parent's Code

*--
*--Child's Code here
*--

*-- Call the Parent's Code
DoDefault() && Execute Parent's Code (one Level above)

*-- or --

cClassName::cMethod && Execute Parent's Code (any Level above)

return

3] Child's Code Only
*--In your Child's Code

NoDefault && Don't execute the Parent's Code

*--
*--Child's Code here
*--

return

In most cases we want the parent's code to execute first (that's why we subclassed it!) and that's why I think Extend should be the default processing behavoir - it's much cleaner.

Sarosh

>>Hi!
>>
>>Does any one know if in VFP7 the default behavior of processing Events/Methods has changed from "Override" to "Extend"?
>>
>>What I mean by that is, the default behavior in VFP6 is to Override the parent's Event/Method by default. If we want to Extend the behavior we have to execute "DoDefault()" every time in every child's Event/Method if we want the parent's Event/Method to fire, which I think is really a pain in the a##.
>>
>>I think we should have a menu option (or some other way) to specify whether we want to Extend the parents behavior or Override it.
>>
>>i.e. Every Event/Method should have a property that could be either “Extend” or "Override" and "Extend" should be the default.
>>
>>What are your thoughts on this?
>>
>>
>>Sarosh
>
>OK, then tell me when would you have the parent method code execute? Before your code, after your code, in the middle of your code? THAT'S why we have the DODEFAULT(), so we can control when that code executes (if at all).
Previous
Next
Reply
Map
View

Click here to load this message in the networking platform