>>DEFINE CLASS DateSetting AS Custom >> Value = "" >> PROCEDURE INIT >> THIS.Value = SET("DATE") >> ENDPROC >> PROCEDURE Set >> LPARAMETERS tcValue >> SET DATE &tcValue >> ENDPROC >> PROCEDURE Destroy >> LOCAL lcValue >> lcValue = THIS.Value >> SET DATE &lcValue >> ENDPROC >>ENDDEFINE >>Tom Rettig's envlib.prg does this in .init() - saves the current value to this.oldval, and sets the date (or any other setting, there's a subclass for each) to whatever is passed as parameter to init. Pretty much the same idea, but saves you one line when calling - and that's 50% of the lines you need to write :).