I don't know much about reactors. in doing some research on them I can see how this could work. This is what I was trying to no avail: (vlr-object-reactor e1 "Run Code Eval" '((:vlr-modified . code_eval1))). e1 was set by doing an ssget on my title block but I do not believe this is the correct "Owner" to go here. I'm trying to run the code_eval1 program every time someone finishes editing the title block.
Object reactors can be a little tricky. For one, you can't use the code called by the reactor to modify the object which fired the reactor (insert "Who's on First?" sketch here!
). The second problem is the reactor must be loaded when the drawing is opened, which can present certain logistical problems. Fallout from that, is that you can't do anything about a drawing that leaves your control, either.
What the object reactor would have to do is log the object ID which called the reactor (typically as an entity reference or handle), enable a second reactor to handle the command-ended event which would process the logged items to restore the field(s) then disable the second reactor (PITA - I've investigated this). In terms of work involved, you *might* be better off putting those attributes on a locked layer and requiring users to use your own code to modify the attribute information.