(defun c:removeowner (/ en)
(if (and object-reactor (setq en (car (entsel))))
(print (vlr-owner-remove object-reactor (vlax-ename->vla-object en)))
)
(princ)
)
Good detective work Lee.
But how can you combine reactors or chain them and be sure which is triggered first?
I'm assuming that is how you did it.
(Rather slow here on the weekends 8-) )
One solution I pondered was to delete the object which kills the reactor.
Then recreate it, not sure you can do all this from within the call back reactor.
No time this morning to test it. Getting ready for the coming weather.
Thank you for your time testing it Phil, your results in 2013 and CAB's results in 2006 confirm my suspicions that these are indeed bugs present in most, if not all, versions of AutoCAD and its derivative programs.
Since LISP is no longer in development I very much doubt these issues will be fixed any time soon, though, at least we are now aware of them and can code around them.
Thanks :-)
Saves the rest of us the frustration of discovering it ourselves. :lol:
glad you still having fun with a-vlisp - cheers!
Thank you for your time testing it Phil, your results in 2013 and CAB's results in 2006 confirm my suspicions that these are indeed bugs present in most, if not all, versions of AutoCAD and its derivative programs.
Since LISP is no longer in development I very much doubt these issues will be fixed any time soon, though, at least we are now aware of them and can code around them.
Thanks :-)
Can modifying the reactor status be viewed as modifying the object & therefore not allowed while in the callback function? 8-)
the reactor cannot then be removed by any means other than to close the drawing.You can delete the object and recreate it.
In conclusion:
In conclusion:
if you got some time, maybe try using this:
http://www.theswamp.org/index.php?topic=9441.msg213956#msg213956
or see inside of:
http://www.theswamp.org/index.php?topic=9441.msg213955#msg213955
the reactor cannot then be removed by any means other than to close the drawing.You can delete the object and recreate it.
Good detective work Lee.
In conclusion:
if you got some time, maybe try using this:
http://www.theswamp.org/index.php?topic=9441.msg213956#msg213956
or see inside of:
http://www.theswamp.org/index.php?topic=9441.msg213955#msg213955
just did a quick test nope====does not work: conclusion taken.
Code - Auto/Visual Lisp: [Select]- will disable the reactor(s) only.
and maybe could it be a good idea to test if it is enabled, before doing any work inside of the callback:Code - Auto/Visual Lisp: [Select]
so, inside of the callback, one might want to check if the reactor was disabled?
You might have to remove the reactor from somewhere else. I.e. when it has finished and the locks are released. Though where to do this I'm not sure...