Hello George,
I meant cowboy in the "Work hard Play hard" sense, I've come up a method ( probably overly complex ) to achieve what I'm after, after all my DB's last night I had a very lucid moment on the train this morning and came up with this ( only for this project ).
For every form in the project, I extract the object names into a common table ( project master ) with adjacent ro/enabled fields set to the default values of the said properties.
For every user class, I create a new table based on the project master ( we're only talking a couple of hundred controls here ), and set the individual properties for each control ( security maintenance form eventually )in the relevant user class' table, I can then subclass user classes using tables instead of classes ( no need to recompile etc,etc.. ) if permissions change.
In the refresh of the base control classes affected, I call my application security object ( you can toggle this - off by default ), which in turn sets the properties, Bingo!, only played with it so far, but it's looking good, just got to remember to add any new controls to the table, I think I'll hook a routine into the projecthook that does all this when flagged
Take care
Pete
Regards,
Peter J. Kane
Pete