[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:
2026-08-29 07:39:39 +02:00
parent 1e50a9388f
commit 012c5da7f9
3 changed files with 22 additions and 40 deletions
+18
View File
@@ -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"))