*-- Form Init() IF TYPE( "THIS.oPrefernce.BaseClass")= "C" FOR EACH oControl in THIS.Controls THIS.oPreference.Execute( oControl) ENDFOR ENDIFNow this makes the form class more reusable. Of course, now we need to make the connection between THIS.oPreference and the preference engine itself, which could also be handled in the Init(), but also consider making that an external process. If you do it in the init(), then the usual way to do that is use a cPreferenceEngine property in an expression like
*-- Earlier in the form Init() IF !EMPTY( THIS.cPrefernceEngine) THIS.oPreference= CREATE( THIS.cPrefernceEngine) ENDIFJust kick me if you're there already <s>.