From 8e518a558d12a51c79d5f53e311ed14f104dd8fd Mon Sep 17 00:00:00 2001 From: Michael Stangl Date: Fri, 9 Oct 2026 16:53:23 +0200 Subject: [PATCH] [FIX] Stueckliste: fehlende lang-Keys wiederhergestellt + Spaltenlinien ergaenzt Die sl-*-Keys (Tabellenkoepfe, Prompts, Elementklassen) fehlten komplett in lang/de_DE.json und lang/en_GB.json: sie standen beim vorangegangenen Merge-Konflikt-Fix noch unstaged im Working Tree (nicht committed) und wurden dabei versehentlich durch die reparierte, aber auf dem alten HEAD basierende Version ueberschrieben. ssg-text lieferte dadurch den rohen Key statt des uebersetzten Textes zurueck ("sl-stkl-kopf-menge" statt "MENGE" usw.). Zusaetzlich: ssg-sl-tabelle-zeichnen zeichnete nur den Aussenrahmen und horizontale Zeilentrenner, keine vertikalen Spaltenlinien - ergaenzt an den vier Spaltengrenzen (400/1000/1900/3000 relativ zum linken Rahmen), von der Kopfzeilen-Oberkante bis zur letzten Zeilenlinie. Co-Authored-By: Claude Sonnet 5 --- Lisp/ssg_stueckliste.lsp | 15 ++++++++++++--- lang/de_DE.json | 21 ++++++++++++++++++++- lang/en_GB.json | 21 ++++++++++++++++++++- 3 files changed, 52 insertions(+), 5 deletions(-) diff --git a/Lisp/ssg_stueckliste.lsp b/Lisp/ssg_stueckliste.lsp index ad3065a..2960799 100644 --- a/Lisp/ssg_stueckliste.lsp +++ b/Lisp/ssg_stueckliste.lsp @@ -93,7 +93,7 @@ ;; alle Felder als String. Layer muss bereits aktiv sein. Rueckgabe: Anzahl ;; gezeichneter Zeilen. Spaltenraster aus der Walz-Vorlage (stcklimp). (defun ssg-sl-tabelle-zeichnen (p1 zeilen / p11 p12 p91 p92 p93 p94 p95 - tsize lspace daten n) + tsize lspace spalten-x oben unten sx daten n) (setq tsize 100.0 lspace 200.0) (setq p11 (list (- (car p1) 100.0) (+ (cadr p1) 250.0))) @@ -111,6 +111,11 @@ (ssg-sl-text-machen p93 tsize (ssg-text "sl-stkl-kopf-laenge")) (ssg-sl-text-machen p94 tsize (ssg-text "sl-stkl-kopf-artikel")) (ssg-sl-text-machen p95 tsize (ssg-text "sl-stkl-kopf-bezeichnung")) + ;; Spaltentrennlinien bei jeder Spaltenstart-X (ausser der ersten, die faellt + ;; mit dem linken Aussenrahmen zusammen) - oben am Kopfrahmen, unten an der + ;; letzten Zeile; die Hoehe steht erst nach der foreach-Schleife fest. + (setq spalten-x (list 400.0 1000.0 1900.0 3000.0)) + (setq oben (+ (cadr p11) 350.0)) (setq n 0) (foreach daten zeilen (ssg-sl-text-machen p1 tsize (nth 0 daten)) @@ -123,9 +128,13 @@ (setq p1 (list (car p1) (- (cadr p1) lspace))) (setq n (1+ n)) ) + (setq unten (- (cadr p1) 50.0)) (command "_line" p11 p12 - (list (+ (car p1) 9000.0) (- (cadr p1) 50.0)) - (list (- (car p1) 100.0) (- (cadr p1) 50.0)) p11 "") + (list (+ (car p1) 9000.0) unten) + (list (- (car p1) 100.0) unten) p11 "") + (foreach sx spalten-x + (command "_line" (list (+ (car p11) sx) oben) (list (+ (car p11) sx) unten) "") + ) n ) diff --git a/lang/de_DE.json b/lang/de_DE.json index 8b0bc08..cf28e5a 100644 --- a/lang/de_DE.json +++ b/lang/de_DE.json @@ -1073,6 +1073,25 @@ "dinformate-sprache-de": "Deutsch", "dinformate-sprache-en": "Englisch", "dinformate-sprache-fr": "Franzoesisch", - "dinformate-sprache-it": "Italienisch" + "dinformate-sprache-it": "Italienisch", + "sl-pos-layer": "\nZiel-Layer", + "sl-pos-faktor": "\nSkalierungsfaktor", + "sl-pos-umrand": "\nForm des Positionsrahmens", + "sl-stkl-einfuegepunkt": "\nObere linke Ecke der Stueckliste waehlen", + "sl-stkl-kopf-pos": "POS", + "sl-stkl-kopf-menge": "MENGE", + "sl-stkl-kopf-laenge": "LAENGE", + "sl-stkl-kopf-artikel": "ARTIKEL-NR", + "sl-stkl-kopf-bezeichnung": "BEZEICHNUNG", + "sl-erk-titel": "Faehnchen + Stueckliste aus Zeichnung", + "sl-erk-auswahl": "\nElemente waehlen : ", + "sl-erk-keine": "\nKeine ILS-/Omniflo-/Geruest-Elemente gefunden.", + "sl-erk-ergebnis": "\n%1 Element(e) erkannt, %2 Stuecklistenzeile(n) geschrieben.", + "sl-erk-kreisel": "ILS Kreisel/Eckrad", + "sl-erk-strecke": "ILS Streckengruppe (VarioFoerderer/Gefaellestrecke)", + "sl-erk-geruest": "Rohrgeruest", + "sl-erk-ap60": "Omniflo Gerade AP60", + "sl-erk-ap110": "Omniflo Gerade AP110", + "sl-erk-apg110": "Omniflo Gerade APG110" } } diff --git a/lang/en_GB.json b/lang/en_GB.json index a37b090..fcb3a42 100644 --- a/lang/en_GB.json +++ b/lang/en_GB.json @@ -1073,6 +1073,25 @@ "dinformate-sprache-de": "German", "dinformate-sprache-en": "English", "dinformate-sprache-fr": "French", - "dinformate-sprache-it": "Italian" + "dinformate-sprache-it": "Italian", + "sl-pos-layer": "\nTarget layer", + "sl-pos-faktor": "\nScale factor", + "sl-pos-umrand": "\nPosition flag shape", + "sl-stkl-einfuegepunkt": "\nSelect upper left corner of the bill of materials", + "sl-stkl-kopf-pos": "POS", + "sl-stkl-kopf-menge": "QTY", + "sl-stkl-kopf-laenge": "LENGTH", + "sl-stkl-kopf-artikel": "PART NO", + "sl-stkl-kopf-bezeichnung": "DESCRIPTION", + "sl-erk-titel": "Flags + bill of materials from drawing", + "sl-erk-auswahl": "\nSelect elements : ", + "sl-erk-keine": "\nNo ILS/Omniflo/scaffold elements found.", + "sl-erk-ergebnis": "\n%1 element(s) recognised, %2 bill of materials line(s) written.", + "sl-erk-kreisel": "ILS roundabout/corner wheel", + "sl-erk-strecke": "ILS conveyor section (VarioFoerderer/gravity conveyor)", + "sl-erk-geruest": "Pipe scaffold", + "sl-erk-ap60": "Omniflo straight AP60", + "sl-erk-ap110": "Omniflo straight AP110", + "sl-erk-apg110": "Omniflo straight APG110" } }