[REFACTOR] VF: 10-Feld-Eingabe-Entpackblock zentralisiert
Der identische (setq deltaL (nth 0 eingabe) ...)-Block mit 10 Feldern stand 4x (vf_standard: vfs-standard-dialog-ablauf + c:VARIOFOERDERER_EDIT, vf_etage: vfe-etage-dialog-ablauf + vfe-edit-ent). Neu in vf_core.lsp: *vf-basis-eingabe-felder* (zentrale Feldreihenfolge) + vf-basis-eingabe-entpacken (set 'sym wert auf die dyn.-skopten Aufrufer-Locals). Alle 4 Aufrufer deklarieren die 10 Namen weiterhin in ihrer /-Liste. Reines Refactoring, identisches Verhalten. Paren-Balance geprueft. Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>
This commit is contained in:
@@ -949,6 +949,24 @@
|
||||
;; ============================================================
|
||||
;; TEIL 9: GEMEINSAME EINGABE-ABFRAGE
|
||||
;; ============================================================
|
||||
|
||||
;; Feld-Reihenfolge der Basis-Dialog-Ergebnisliste (vfs-dialog-eingabe-basis).
|
||||
;; EINE zentrale Definition statt vierfach denselben (nth i eingabe)-Block.
|
||||
(setq *vf-basis-eingabe-felder*
|
||||
'(deltaL deltaH richtung z-start hz seite dim geruest-einzelmodul geruest-typ motorseite))
|
||||
|
||||
;; Entpackt die Basis-Dialog-Ergebnisliste in die gleichnamigen (dynamisch
|
||||
;; skopten) Lokalvariablen des Aufrufers. Ersetzt den 10-zeiligen
|
||||
;; (setq deltaL (nth 0 eingabe) ...)-Block. Nutzt (set 'sym wert): die Symbole
|
||||
;; sind in der /-Deklaration des aufrufenden defun als Locals gebunden, daher
|
||||
;; wirkt das Setzen nur dort (AutoLISP dynamic scoping).
|
||||
(defun vf-basis-eingabe-entpacken (eingabe / i)
|
||||
(setq i 0)
|
||||
(foreach feld *vf-basis-eingabe-felder*
|
||||
(set feld (nth i eingabe))
|
||||
(setq i (1+ i)))
|
||||
eingabe)
|
||||
|
||||
(defun vf-eingabe-abfragen ( / eingabe-modus line-points startpunkt endpunkt differenz
|
||||
deltaL deltaH deltaX deltaY richtung antwort hz-winkel)
|
||||
(princ (ssg-text "vfc-eingabemodus-header"))
|
||||
|
||||
Reference in New Issue
Block a user