Hi Cary,
I might approach it like this:
- [b][color=RED]([/color][/b][b][color=BLUE]defun[/color][/b] CloseReactor [b][color=BLUE]nil[/color][/b] [b][color=RED]([/color][/b][b][color=BLUE]vl-load-com[/color][/b][b][color=RED])[/color][/b] [i][color=#990099];; Lee Mac ~ 14.04.10[/color][/i] [b][color=RED]([/color][/b] [b][color=RED]([/color][/b][b][color=BLUE]lambda[/color][/b] [b][color=RED]([/color][/b] data [b][color=BLUE]/[/color][/b] react [b][color=RED])[/color][/b] [b][color=RED]([/color][/b][b][color=BLUE]if[/color][/b] [b][color=RED]([/color][/b][b][color=BLUE]setq[/color][/b] react [b][color=RED]([/color][/b][b][color=BLUE]vl-some[/color][/b] [b][color=RED]([/color][/b][b][color=BLUE]function[/color][/b] [b][color=RED]([/color][/b][b][color=BLUE]lambda[/color][/b] [b][color=RED]([/color][/b] reactor [b][color=RED])[/color][/b] [b][color=RED]([/color][/b][b][color=BLUE]if[/color][/b] [b][color=RED]([/color][/b][b][color=BLUE]eq[/color][/b] data [b][color=RED]([/color][/b][b][color=BLUE]vlr-data[/color][/b] reactor[b][color=RED])[/color][/b][b][color=RED])[/color][/b] reactor[b][color=RED])[/color][/b] [b][color=RED])[/color][/b] [b][color=RED])[/color][/b] [b][color=RED]([/color][/b][b][color=BLUE]cdar[/color][/b] [b][color=RED]([/color][/b][b][color=BLUE]vlr-reactors[/color][/b] [b][color=Blue]:vlr-editor-reactor[/color][color=RED])[/color][/b] [b][color=RED])[/color][/b] [b][color=RED])[/color][/b] [b][color=RED])[/color][/b] [b][color=RED]([/color][/b][b][color=BLUE]if[/color][/b] [b][color=RED]([/color][/b][b][color=BLUE]vlr-added-p[/color][/b] react[b][color=RED])[/color][/b] [b][color=RED]([/color][/b][b][color=BLUE]vlr-remove[/color][/b] react[b][color=RED])[/color][/b] [b][color=RED]([/color][/b][b][color=BLUE]vlr-add[/color][/b] react[b][color=RED])[/color][/b] [b][color=RED])[/color][/b] [b][color=RED]([/color][/b][b][color=BLUE]setq[/color][/b] react [b][color=RED]([/color][/b][b][color=BLUE]vlr-editor-reactor[/color][/b] data [b][color=RED]([/color][/b][b][color=BLUE]list[/color][/b] [b][color=RED]([/color][/b][b][color=BLUE]cons[/color][/b] [b][color=Blue]:vlr-beginclose[/color][/b] [b][color=DARKRED]'[/color][/b]CloseCallBack[b][color=RED])[/color][/b] [b][color=RED])[/color][/b] [b][color=RED])[/color][/b] [b][color=RED])[/color][/b] [b][color=RED])[/color][/b] [b][color=RED]([/color][/b][b][color=BLUE]princ[/color][/b] [b][color=RED]([/color][/b][b][color=BLUE]if[/color][/b] [b][color=RED]([/color][/b][b][color=BLUE]vlr-added-p[/color][/b] react[b][color=RED])[/color][/b] [b][color=#a52a2a]"\n** Reactor Activated **"[/color][/b] [b][color=#a52a2a]"\n** Reactor Deactivated **"[/color][/b] [b][color=RED])[/color][/b] [b][color=RED])[/color][/b] react [b][color=RED])[/color][/b] [b][color=#a52a2a]"Close-Reactor"[/color][/b] [b][color=RED])[/color][/b] [b][color=RED]([/color][/b][b][color=BLUE]princ[/color][/b][b][color=RED])[/color][/b][b][color=RED])[/color][/b][b][color=RED]([/color][/b][b][color=BLUE]defun[/color][/b] CloseCallBack [b][color=RED]([/color][/b]reactor arguments[b][color=RED])[/color][/b] [b][color=RED]([/color][/b][b][color=BLUE]vla-put-ActiveSpace[/color][/b] [b][color=RED]([/color][/b][b][color=BLUE]setq[/color][/b] doc [b][color=RED]([/color][/b][b][color=BLUE]vla-get-ActiveDocument[/color][/b] [b][color=RED]([/color][/b][b][color=BLUE]setq[/color][/b] acad [b][color=RED]([/color][/b][b][color=BLUE]vlax-get-acad-object[/color][/b][b][color=RED])[/color][/b][b][color=RED])[/color][/b] [b][color=RED])[/color][/b] [b][color=RED])[/color][/b] [color=Blue][b]acModelSpace[/b][/color] [b][color=RED])[/color][/b] [b][color=RED]([/color][/b][b][color=BLUE]vla-ZoomExtents[/color][/b] acad[b][color=RED])[/color][/b] [b][color=RED]([/color][/b][b][color=BLUE]vla-put-ActiveLayer[/color][/b] doc [b][color=RED]([/color][/b][b][color=BLUE]vla-item[/color][/b] [b][color=RED]([/color][/b][b][color=BLUE]vla-get-layers[/color][/b] doc[b][color=RED])[/color][/b] [b][color=#a52a2a]"0"[/color][/b] [b][color=RED])[/color][/b] [b][color=RED])[/color][/b] [b][color=RED]([/color][/b][b][color=BLUE]vla-put-ActiveUCS[/color][/b] doc [b][color=RED]([/color][/b][b][color=BLUE]vla-add[/color][/b] [b][color=RED]([/color][/b][b][color=BLUE]vla-get-usercoordinatesystems[/color][/b] doc[b][color=RED])[/color][/b] [b][color=RED]([/color][/b][b][color=BLUE]vlax-3D-point[/color][/b] [b][color=DARKRED]'[/color][/b][b][color=RED]([/color][/b][b][color=#009999]0.[/color][/b] [b][color=#009999]0.[/color][/b] [b][color=#009999]0.[/color][/b][b][color=RED])[/color][/b][b][color=RED])[/color][/b] [b][color=RED]([/color][/b][b][color=BLUE]vlax-3D-point[/color][/b] [b][color=DARKRED]'[/color][/b][b][color=RED]([/color][/b][b][color=#009999]1.[/color][/b] [b][color=#009999]0.[/color][/b] [b][color=#009999]0.[/color][/b][b][color=RED])[/color][/b][b][color=RED])[/color][/b] [b][color=RED]([/color][/b][b][color=BLUE]vlax-3D-point[/color][/b] [b][color=DARKRED]'[/color][/b][b][color=RED]([/color][/b][b][color=#009999]0.[/color][/b] [b][color=#009999]1.[/color][/b] [b][color=#009999]0.[/color][/b][b][color=RED])[/color][/b][b][color=RED])[/color][/b] [b][color=#a52a2a]"TempWord_UCS"[/color][/b] [b][color=RED])[/color][/b] [b][color=RED])[/color][/b] [b][color=RED]([/color][/b][b][color=BLUE]if[/color][/b] [b][color=RED]([/color][/b][b][color=BLUE]not[/color][/b] [b][color=RED]([/color][/b][b][color=BLUE]eq[/color][/b] [b][color=#a52a2a]""[/color][/b] [b][color=RED]([/color][/b][b][color=BLUE]vla-get-FullName[/color][/b] doc[b][color=RED])[/color][/b][b][color=RED])[/color][/b][b][color=RED])[/color][/b] [b][color=RED]([/color][/b][b][color=BLUE]vla-saveas[/color][/b] doc [b][color=RED]([/color][/b][b][color=BLUE]vla-get-FullName[/color][/b] doc[b][color=RED])[/color][/b][b][color=RED])[/color][/b] [b][color=RED])[/color][/b] [b][color=RED]([/color][/b][b][color=BLUE]princ[/color][/b][b][color=RED])[/color][/b][b][color=RED])[/color][/b]
Here, the reactor function is a toggle, and can be toggled on and off whilst the drawing is open. The reactor will only save the drawing if the drawing has been saved previously.
Its untested, but hopefully should work for you.
Lee |