More for my exercise....
Couldn't you create a custom class in your baseclass for these universal methods/properties, call it oUniversal, and then in the init of all your baseclasses for each class type (checkbox, texbox, etc.) do a this.oUniversal=newobject('oUniversal','mybaseclass') or similar. In that manner you have one place to maintain all your universal properties and methods and they automatically propogate to all your baseclasses. so to get to the universal stuff you just call thisform.mycheckbox.ouniversal.myuniversalproperty=something or thisform.mycheckbox.ouniversal.myuniversalmethod()
Brandon Harker
Sebae Data Solutions