ObjectARX
cancel
Showing results for 
Show  only  | Search instead for 
Did you mean: 

openedForModify

5 REPLIES 5
Reply
Message 1 of 6
Anonymous
285 Views, 5 Replies

openedForModify

In my application I have occasion to insert some custom blocks w/attributes. I want to prevent users from modifying these through any means other than the interface I provide. At first it seemed obvious that I needed to attach an object reactor to them and trap any mofifications. However I ran into the same situation as was posted here some time ago, namely that I couldnt modify the blocks during the reactor call because there is always an "eOpenforNotify". After reading some more posts I realized that the object reactor needs only to save the objectid of the block, then I would use an editor reactor to see if this objectid has been modified and make my changes there. However, it seems there must be a better way, since I want to prevent ANY modification, I thought I would use the "Reactor::openedForModify" event and simply do a return and skip the base class function. This didnt work 😞 and Acad definately didnt like it when I tried to close the object during this call! So, my question is, how do I prevent any and all modifications to an entity? Thanks, Perry
5 REPLIES 5
Message 2 of 6
Anonymous
in reply to: Anonymous

"perry" wrote > So, my question is, how do I prevent any and all modifications to an entity? Put them on a locked layer. There is no other rational way to do it. -- http://www.caddzone.com AcadXTabs: MDI Document Tabs for AutoCAD 2004/2005/2006 http://www.acadxtabs.com
Message 3 of 6
Anonymous
in reply to: Anonymous

Tony Tanzillo wrote: > "perry" wrote > > >>So, my question is, how do I prevent any and all modifications to an entity? > > > Put them on a locked layer. There is no other rational way > to do it. A locked layer can be easily unlocked. Guess I will try calling "Undo" from the editor reactor... Perry
Message 4 of 6
Anonymous
in reply to: Anonymous

> Guess I will try calling "Undo" from the editor reactor... I already told you that there is no way to do it, which takes into account the kludge you mention above. -- http://www.caddzone.com AcadXTabs: MDI Document Tabs for AutoCAD 2004/2005/2006 http://www.acadxtabs.com "perry" wrote in message news:425421e6$1_3@newsprd01... > Tony Tanzillo wrote: >> "perry" wrote >> >> >>>So, my question is, how do I prevent any and all modifications to an entity? >> >> >> Put them on a locked layer. There is no other rational way >> to do it. > > A locked layer can be easily unlocked.
Message 5 of 6
Anonymous
in reply to: Anonymous

Tony Tanzillo wrote: >>Guess I will try calling "Undo" from the editor reactor... > > > I already told you that there is no way to do it, > which takes into account the kludge you mention > above. > > Kludge is my middle name! I was able to do something similiar in VB, using events, moving objects back into place if they had been moved by a user... Oh well. Thanks again Tony
Message 6 of 6
Anonymous
in reply to: Anonymous

You can't do that in VB either. If the user runs a script or some LISP, and it attempts to do something after it modifies the entity, the script/lisp breaks. In 2004 or later, this will not only not work consistently, it will completely disable the ability to undo/redo. -- http://www.caddzone.com AcadXTabs: MDI Document Tabs for AutoCAD 2004/2005/2006 http://www.acadxtabs.com "perry" wrote in message news:42549e50$1_2@newsprd01... > Tony Tanzillo wrote: >>>Guess I will try calling "Undo" from the editor reactor... >> >> >> I already told you that there is no way to do it, >> which takes into account the kludge you mention >> above. >> >> > Kludge is my middle name! > I was able to do something similiar in VB, using events, moving objects back into place if they had been moved by a > user... > Oh well. > Thanks again Tony

Can't find what you're looking for? Ask the community or share your knowledge.

Post to forums  

AutoCAD Inside the Factory


Autodesk Design & Make Report