diff --git a/Lisp/ssg_core.lsp b/Lisp/ssg_core.lsp index accbc60..df84901 100644 --- a/Lisp/ssg_core.lsp +++ b/Lisp/ssg_core.lsp @@ -126,12 +126,17 @@ ) ) -;; Layer anlegen (falls nicht vorhanden) und optional setzen +;; Layer anlegen (falls nicht vorhanden) und optional aktivieren ;; lay-name = Name; color = Farbnummer als String z.B. "2"; set-aktiv = T/nil -(defun ssg-make-layer (lay-name color set-aktiv) +;; Farbe wird nur bei Neuanlage gesetzt, bestehende Layer bleiben unveraendert +(defun ssg-make-layer (lay-name color set-aktiv / neu) + (setq neu (not (tblsearch "LAYER" lay-name))) (if set-aktiv - (command "_LAYER" "_M" lay-name "_CO" color lay-name "") - (command "_LAYER" "_N" lay-name "_CO" color lay-name "") + (command "_LAYER" "_M" lay-name "") + (command "_LAYER" "_N" lay-name "") + ) + (if neu + (command "_LAYER" "_CO" color lay-name "") ) )