(defun load__command_reactors ()
(vl-load-com)
(if _reactor_start
(vlr-remove _reactor_start)
)
(if _reactor_end
(vlr-remove _reactor_end)
)
(if _reactor_cancel
(vlr-remove _reactor_cancel)
)
(if _reactor_Close
(vlr-remove _reactor_Close)
)
(setq _reactor_start (vlr-command-reactor nil
'((:vlr-commandWillStart . start_command)))
_reactor_end (vlr-command-reactor nil
'((:vlr-commandEnded . end_command)))
_reactor_cancel (vlr-command-reactor nil
'((:vlr-commandCancelled . cancel_command)))
)
(princ "\nLoading My reactors ")
)
;;;-==-==-==-==-==-==-==-==-==-==-==-==-==-==-==-==-==-=-==
(load__command_reactors)
;;;-==-==-==-==-==-==-==-==-==-==-==-==-==-==-==-==-==-=-==
(defun start_command
(calling-reactor start_command_info / the_command_start)
(setq *Current_Layer_setting* (getvar "CLAYER")
the_command_start (car start_command_info)
)
(cond ;// change the layer
((= the_command_start "INSERT")
(setvar "CLAYER" "0")
)
((= the_command_start "TEXT")
(setvar "CLAYER" "TEXT")
)
((= the_command_start "MTEXT")
(setvar "CLAYER" "TEXT")
)
((= the_command_start "DTEXT")
(setvar "CLAYER" "TEXT")
)
((= the_command_start "QLEADER")
(setvar "CLAYER" "TEXT")
)
((= the_command_start "DIMALIGNED")
(setvar "CLAYER" "DIM")
)
((= the_command_start "DIMLINEAR")
(setvar "CLAYER" "DIM")
)
)
(princ)
)
;;;-==-==-==-==-==-==-==-==-==-==-==-==-==-==-==-==-==
(defun end_command
(calling-reactor end_command_info / the_command_end)
(setq the_command_end (car end_command_info))
(cond ;// set the layer back if the command ended
((= the_command_end "INSERT")
(setvar "CLAYER" *Current_Layer_setting*)
)
((= the_command_end "TEXT")
(setvar "CLAYER" *Current_Layer_setting*)
)
((= the_command_end "MTEXT")
(setvar "CLAYER" *Current_Layer_setting*)
)
((= the_command_end "DTEXT")
(setvar "CLAYER" *Current_Layer_setting*)
)
((= the_command_end "QLEADER")
(setvar "CLAYER" *Current_Layer_setting*)
)
((= the_command_end "DIMALIGNED")
(setvar "CLAYER" *Current_Layer_setting*)
)
((= the_command_end "DIMLINEAR")
(setvar "CLAYER" *Current_Layer_setting*)
)
)
(princ)
)
;;;-==-==-==-==-==-==-==-==-==-==-==-==-==-==-==-==-==-=-=
(defun cancel_command
(calling-reactor cancel_command_info / the_command_cancel)
(setq the_command_cancel (car cancel_command_info))
(cond ;// set the layer back if the command was canceled
((= the_command_cancel "INSERT")
(setvar "CLAYER" *Current_Layer_setting*)
)
((= the_command_cancel "TEXT")
(setvar "CLAYER" *Current_Layer_setting*)
)
((= the_command_cancel "MTEXT")
(setvar "CLAYER" *Current_Layer_setting*)
)
((= the_command_cancel "DTEXT")
(setvar "CLAYER" *Current_Layer_setting*)
)
((= the_command_cancel "QLEADER")
(setvar "CLAYER" *Current_Layer_setting*)
)
((= the_command_cancel "DIMALIGNED")
(setvar "CLAYER" *Current_Layer_setting*)
)
((= the_command_cancel "DIMLINEAR")
(setvar "CLAYER" *Current_Layer_setting*)
)
)
(princ)
)
;;;-==-==-==-==-==-==-==-==-==-==-==-==-==-==-==-==-==-=
Tags: Bricscad
Comment
© 2010 Created by Deelip Menezes.
Powered by
.
You need to be a member of IntelliCAD.net to add comments!
Join IntelliCAD.net