(vl-load-com)
(defun change-layer-lock (doc name status / layer)
;|
doc - документ, в котором выполняется работа. nil -> текущий
name - имя слоя
status - заблокировать (t) или разблокировать (nil)
* Примеры вызова:
(change-layer-lock nil "SomeLayer" t)
(change-layer-lock nil "SomeLayer" nil)
|;
(if (not doc)
(setq doc (vla-get-activedocument (vlax-get-acad-object)))
) ;_ end of if
(if (= (type (setq layer (vl-catch-all-apply (function (lambda () (vla-item (vla-get-layers doc) name))))))
'vla-object
) ;_ end of =
(vla-put-lock
layer
(if status
:vlax-true
:vlax-false
) ;_ end of if
) ;_ end of vla-put-lock
) ;_ end of if
) ;_ end of defun
(defun change-layer-freeze (doc name status / layer)
;|
doc - документ, в котором выполняется работа. nil -> текущий
name - имя слоя
status - заблокировать (t) или разблокировать (nil)
* Примеры вызова:
(change-layer-freeze nil "SomeLayer" t)
(change-layer-freeze nil "SomeLayer" nil)
|;
(if (not doc)
(setq doc (vla-get-activedocument (vlax-get-acad-object)))
) ;_ end of if
(if (= (type (setq layer (vl-catch-all-apply (function (lambda () (vla-item (vla-get-layers doc) name))))))
'vla-object
) ;_ end of =
(vl-catch-all-apply
(function (lambda ()
(vla-put-freeze
layer
(if status
:vlax-true
:vlax-false
) ;_ end of if
) ;_ end of vla-put-freeze
) ;_ end of lambda
) ;_ end of function
) ;_ end of vl-catch-all-apply
) ;_ end of if
) ;_ end of defun