Yet another Object Reactor anomaly it seems
Using the following test code to monitor the
:vlr-copied event:
(defun c:addreactor
( / en
) '((:vlr-copied . mycallback))
)
)
)
)
(defun mycallback
( owner reactor params
) (princ "\nCallback Evaluated.") )
I get the following output to the command-line when I copy the notifying object of the Object Reactor:
Current settings: Copy mode = Single
Specify base point
or [Displacement
/mOde
/Multiple
] <Displacement
>: Specify
second point
or <use first point as displacement
>:
Callback Evaluated.
Callback Evaluated.
Callback Evaluated.
Callback Evaluated.
Callback Evaluated.
Callback Evaluated.
Callback Evaluated.
Callback Evaluated.
Callback Evaluated.
Callback Evaluated.
... you get the picture
It seems that the callback for the
:vlr-copied event is evaluated continuously whilst the copy command is running.
Before the object is copied (i.e. whilst the user is choosing a point to copy to; or more importantly, whilst the object is 'ghosted' on the screen [perhaps this is registering as a copy operation]), the
params argument of the above callback function will return
(0), and then
(<entity name of copied object>) when the user has chosen a point and the object is copied.
I get the same result for both
COPYMODE=0 and
COPYMODE=1.
Of course, the simple solution is to test the third argument of the callback function until it returns an entity name, but this seems like a lot of unnecessary processing whilst the user is choosing a copy point and so I'd hopefully like to avoid it.
Can anyone else replicate this behaviour?