[MERGE] Lager branch in main
This commit is contained in:
@@ -0,0 +1,52 @@
|
||||
// ============================================================
|
||||
// jam_edit.dcl - Staubereich bearbeiten
|
||||
// Aendert Foerderer und laufende Nummer eines JAM_AREA-Blocks, den die
|
||||
// Beschriftung aus sps_skel (lib/tro_annotate.py --anlage) eingefuegt hat.
|
||||
// Aufruf ueber c:JAM_EDIT (Lisp/Jam_Edit.lsp).
|
||||
// ============================================================
|
||||
|
||||
jam_edit : dialog {
|
||||
label = "Staubereich bearbeiten";
|
||||
|
||||
: column {
|
||||
|
||||
: text {
|
||||
key = "bereich";
|
||||
label = "";
|
||||
width = 50;
|
||||
}
|
||||
|
||||
: edit_box {
|
||||
key = "conveyor";
|
||||
label = "Foerderer (NNNN):";
|
||||
edit_width = 8;
|
||||
}
|
||||
|
||||
: edit_box {
|
||||
key = "number";
|
||||
label = "Laufende Nummer:";
|
||||
edit_width = 8;
|
||||
}
|
||||
|
||||
: row {
|
||||
: text {
|
||||
key = "auto";
|
||||
label = "";
|
||||
width = 30;
|
||||
}
|
||||
: button {
|
||||
key = "reset";
|
||||
label = "Abgeleitet uebernehmen";
|
||||
}
|
||||
}
|
||||
|
||||
: text {
|
||||
key = "hinweis";
|
||||
label = "";
|
||||
width = 50;
|
||||
}
|
||||
|
||||
}
|
||||
|
||||
ok_cancel;
|
||||
}
|
||||
@@ -0,0 +1,104 @@
|
||||
// ============================================================
|
||||
// kettenfoerderer.dcl - Kettenfoerderer (Schraegfoerderer Stahl)
|
||||
// Verwendet von KettenFoerderer.lsp (kf-dialog, Befehl KETTENFOERDERER).
|
||||
//
|
||||
// VORLAGE mit Markerzeilen: nur der Varianten-Block ist datenabhaengig und
|
||||
// wird zur Laufzeit an //@VARIANTEN@ eingesetzt (kf-dcl-ersetzungen ->
|
||||
// ssg-dcl-vorlage-fuellen in ssg_core, Temp-Datei). Grund: DCL kann
|
||||
// radio_button-Tiles weder zur Laufzeit erzeugen noch ihre Labels per
|
||||
// set_tile aendern - gleiches Vorgehen wie geruest_traeger.dcl.
|
||||
//
|
||||
// Varianten bewusst als Radiobuttons statt popup_list: es sind nur zwei
|
||||
// Werte (26/30 Grad), beide sollen ohne Aufklappen sichtbar sein.
|
||||
// Die Gruppenbeschriftung steht am boxed_row - ein zusaetzliches Label am
|
||||
// Tile waere doppelt gemoppelt.
|
||||
//
|
||||
// Die Beschriftungen folgen dem Sivas-Merkmalstamm, damit Dialog und
|
||||
// Stueckliste dieselbe Sprache sprechen (Merkmalnummer in Klammern):
|
||||
// Schraegfoerderer Stahl Typ (359) H - Einbauhoehe Schraegfoerderer (360)
|
||||
// Farbe Foerderer (354) Antriebsmotor Foerderer (355)
|
||||
// Antrieb mit Movimot (356) Verbindungselemente (391)
|
||||
// Farbe und Antriebsmotor sind dabei ZWEI eigenstaendige Merkmale
|
||||
// (Attribute FARBE und ANTRIEBSMOTOR), nicht ein kombinierter Text.
|
||||
//
|
||||
// Kein Geruest-Bereich: der Kettenfoerderer traegt sich selbst.
|
||||
// ============================================================
|
||||
|
||||
kettenfoerderer : dialog {
|
||||
label = "Kettenfoerderer";
|
||||
width = 62;
|
||||
|
||||
: boxed_radio_row {
|
||||
key = "variante";
|
||||
label = "Schraegfoerderer Stahl Typ";
|
||||
//@VARIANTEN@
|
||||
}
|
||||
|
||||
: boxed_column {
|
||||
label = "Geometrie";
|
||||
|
||||
: row {
|
||||
: edit_box {
|
||||
key = "hoehe";
|
||||
label = "H - Einbauhoehe Schraegfoerderer [ mm ]:";
|
||||
edit_width = 12;
|
||||
}
|
||||
// Zweite Eingabeart: Hoehe aus zwei gewaehlten Punkten messen.
|
||||
// Der Knopf schliesst den Dialog (done_dialog 2), der Aufrufer pickt
|
||||
// die Punkte und zeigt ihn mit dem Ergebnis erneut - aus einem
|
||||
// action_tile heraus laesst sich kein getpoint aufrufen.
|
||||
: button {
|
||||
key = "hoehe_messen";
|
||||
label = "aus 2 Punkten messen";
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
: boxed_column {
|
||||
label = "Ausfuehrung";
|
||||
|
||||
// Reihenfolge wie im Sivas-Merkmalstamm: 361 vor 354 - Dialog,
|
||||
// Attributschema und Merkmalstamm bleiben damit in derselben Folge.
|
||||
: popup_list {
|
||||
key = "standard_steuerung";
|
||||
label = "mit Standard Steuerung:";
|
||||
width = 40;
|
||||
}
|
||||
|
||||
: popup_list {
|
||||
key = "farbe";
|
||||
label = "Farbe Foerderer:";
|
||||
width = 40;
|
||||
}
|
||||
|
||||
: popup_list {
|
||||
key = "antriebsmotor";
|
||||
label = "Antriebsmotor Foerderer:";
|
||||
width = 40;
|
||||
}
|
||||
|
||||
// Antriebsart (Merkmal 357): Dropdown mit genau EINER Option, die immer
|
||||
// gewaehlt ist - beim Kettenfoerderer ist sie fest 1.1 kW. Als Dropdown
|
||||
// statt als Textzeile, damit alle Merkmale gleich aussehen; kommt spaeter
|
||||
// eine zweite Antriebsart dazu, ist es nur eine weitere Zeile in der JSON.
|
||||
: popup_list {
|
||||
key = "antriebsart";
|
||||
label = "Antriebsart 0,55 / 1,1 kW:";
|
||||
width = 40;
|
||||
}
|
||||
|
||||
: popup_list {
|
||||
key = "movimot";
|
||||
label = "Antrieb mit Movimot:";
|
||||
width = 40;
|
||||
}
|
||||
|
||||
: popup_list {
|
||||
key = "verbindung";
|
||||
label = "Verbindungselemente:";
|
||||
width = 40;
|
||||
}
|
||||
}
|
||||
|
||||
ok_cancel;
|
||||
}
|
||||
@@ -1,38 +0,0 @@
|
||||
// ============================================================
|
||||
// stueckliste.dcl - Optionen fuer Positionen + Stueckliste
|
||||
// Aufruf ueber c:SSG_FAEHNCHEN_STUECKLISTE (Lisp/ssg_stueckliste.lsp,
|
||||
// ssg-sl-dialog). Vorbelegung aus cfg/stueckliste.json bzw. dem letzten Lauf.
|
||||
// ============================================================
|
||||
|
||||
stueckliste : dialog {
|
||||
label = "Positionen + Stueckliste";
|
||||
|
||||
: boxed_column {
|
||||
label = "Layer der Positionen";
|
||||
: radio_column {
|
||||
key = "modus";
|
||||
: radio_button { key = "m_suffix"; label = "Bauteil-Layer + Suffix"; }
|
||||
: radio_button { key = "m_fest"; label = "Fester Layer"; }
|
||||
}
|
||||
: edit_box { key = "suffix"; label = "Suffix:"; edit_width = 20; }
|
||||
: edit_box { key = "fest"; label = "Fester Layer:"; edit_width = 20; }
|
||||
: text { label = "Regeln je Bauteiltyp: cfg/stueckliste.json"; }
|
||||
}
|
||||
|
||||
: boxed_column {
|
||||
label = "Stueckliste";
|
||||
: edit_box { key = "tab_layer"; label = "Tabellen-Layer:"; edit_width = 20; }
|
||||
: edit_box { key = "titel"; label = "Titel:"; edit_width = 30; }
|
||||
}
|
||||
|
||||
: boxed_column {
|
||||
label = "Nummerierung / Darstellung";
|
||||
: edit_box { key = "startnr"; label = "Erste Positionsnummer:"; edit_width = 10; }
|
||||
: edit_box { key = "faktor"; label = "Massstabsfaktor:"; edit_width = 10; }
|
||||
: toggle { key = "alle_pos";
|
||||
label = "Alle Positionen in der Fahne (100|101|...), jede Art.-Nr. nummeriert"; }
|
||||
}
|
||||
|
||||
: errtile { key = "error"; }
|
||||
ok_cancel;
|
||||
}
|
||||
+118
-7
@@ -181,6 +181,84 @@ vflw_as : dialog {
|
||||
}
|
||||
}
|
||||
|
||||
// Wie vflw_as, aber ZUSAETZLICH mit der Zufuehrungsachse (2. Punkt) in
|
||||
// DEMSELBEN Bildschirm - nur fuer das AS-Element am Kettenanfang von Modus 1
|
||||
// (Nutzer-Vorgabe 2026-10-21: "Achse und links/rechts gehoeren in ein
|
||||
// Fenster", beide zusammen legen AS-Lage UND Kettenrichtung fest: der 2.
|
||||
// Punkt gibt die KS_EIN-Achse, links/rechts die AS-Variante und damit die
|
||||
// KS_AUS-Richtung). Eigener Dialog statt einer dauerhaft ausgegrauten
|
||||
// Punkt-Zeile in vflw_as - denselben Dialog nutzt auch das ES-Element am
|
||||
// Kettenende, wo es gar keine Zufuehrungsachse gibt (gleiche Begruendung wie
|
||||
// bei vflw_winkel_seite vs. vflw_winkel_seite_30_90).
|
||||
// Punktwahl-Zeile nach dem Muster von vflw_punkt_zahl: der Button schliesst
|
||||
// den Dialog (done_dialog 2), danach laeuft (getpoint) auf der
|
||||
// Kommandozeile, danach wird der Dialog neu gezeigt - darum nutzt "back"
|
||||
// hier Code 3.
|
||||
vflw_as_achse : dialog {
|
||||
label = "VarioFoerderer Assistent";
|
||||
|
||||
: column {
|
||||
: text {
|
||||
key = "kopf";
|
||||
label = "";
|
||||
width = 60;
|
||||
}
|
||||
: toggle {
|
||||
key = "setzen";
|
||||
label = "Ja, setzen";
|
||||
}
|
||||
: boxed_radio_column {
|
||||
label = "Winkel:";
|
||||
key = "winkel";
|
||||
: radio_button { key = "winkel_90"; label = "90 Grad"; value = "1"; }
|
||||
: radio_button { key = "winkel_30"; label = "30 Grad"; }
|
||||
}
|
||||
// Beschriftungen bewusst NEUTRAL: derselbe Dialog dient dem AS-Element
|
||||
// am Kettenanfang (vorwaerts) UND dem ES-Element am Kettenende
|
||||
// (rueckwaerts bauen, 2026-10-22). Welches Element gemeint ist, sagt die
|
||||
// Kopfzeile ("kopf").
|
||||
: boxed_radio_column {
|
||||
label = "Seite (Element schleust nach):";
|
||||
key = "seite";
|
||||
: radio_button { key = "seite_links"; label = "Links"; value = "1"; }
|
||||
: radio_button { key = "seite_rechts"; label = "Rechts"; }
|
||||
}
|
||||
: boxed_column {
|
||||
label = "Fahrtrichtung (2. Punkt):";
|
||||
// Startpunkt der Kette - er ist der Sitz des AS-Elements UND der
|
||||
// Ausgangspunkt der Achse; waehrend der Punktwahl haengt das
|
||||
// Gummiband an ihm (vfl-getpoint mit Basispunkt).
|
||||
: text {
|
||||
key = "start_anzeige";
|
||||
label = "";
|
||||
width = 46;
|
||||
}
|
||||
: row {
|
||||
: button {
|
||||
key = "pick";
|
||||
label = "2. Punkt waehlen...";
|
||||
fixed_width = true;
|
||||
width = 20;
|
||||
}
|
||||
: text {
|
||||
key = "pt_anzeige";
|
||||
label = "(ohne Achse: Richtung aus dem naechsten Klick)";
|
||||
width = 46;
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
: row {
|
||||
alignment = centered;
|
||||
: button { key = "back"; label = "Zurueck"; fixed_width = true; width = 12; }
|
||||
spacer;
|
||||
: button { key = "accept"; label = "Ok Weiter"; is_default = true; fixed_width = true; width = 12; }
|
||||
spacer;
|
||||
: button { key = "cancel"; label = "Abbrechen"; is_cancel = true; fixed_width = true; width = 12; }
|
||||
}
|
||||
}
|
||||
|
||||
// Winkel (30/60/90) + Seite - fuer GF-Bogen, wo alle drei Winkel geometrisch
|
||||
// gueltig sind. Fuer AS-/ES-Element (wo 60 Grad NIE gueltig ist) stattdessen
|
||||
// vflw_winkel_seite_30_90 verwenden (siehe vflw-gruppe-winkel-seite-impl/
|
||||
@@ -402,6 +480,12 @@ vflw_gf_laenge_modus : dialog {
|
||||
: radio_button { key = "modus_hoehe"; label = "Zielhoehe festlegen (Laenge wird berechnet)"; }
|
||||
: radio_button { key = "modus_steigend"; label = "Steigende GF (Sonderfall, bis 3 Grad)"; }
|
||||
: radio_button { key = "modus_qc"; label = "QC Linie mit GF (automatische Auf-Ab-Berechnung)"; }
|
||||
// Nur am Kettenanfang mit AS-Element UND festgelegter Zufuehrungsachse
|
||||
// waehlbar - sonst fehlt die Bezugsachse fuer den Abstand. Wird in
|
||||
// vflw-gruppe-gf-laenge-modus-impl per mode_tile deaktiviert (anders
|
||||
// als eine NIE waehlbare Kachel ist diese kontextabhaengig, siehe
|
||||
// "sepnach" in vflw_sep_gf).
|
||||
: radio_button { key = "modus_parallel"; label = "Parallel zum Kreisel weiterbauen (Abstand)"; }
|
||||
}
|
||||
}
|
||||
|
||||
@@ -463,9 +547,19 @@ vflw_sep_gf : dialog {
|
||||
key = "sepvor";
|
||||
label = "Separator VOR dieser Gefaellestrecke";
|
||||
}
|
||||
: toggle {
|
||||
key = "sepnach";
|
||||
label = "Separator NACH dieser Gefaellestrecke";
|
||||
// Steht am Kettenende ein ES-Element, ist "Separator NACH" gesperrt -
|
||||
// der Hinweis dahinter sagt warum, in EINER Zeile mit dem Ankreuzfeld
|
||||
// (gleiche Anordnung wie in vflw_seg_linie_m2). Sonst leer (set_tile "").
|
||||
: row {
|
||||
: toggle {
|
||||
key = "sepnach";
|
||||
label = "Separator NACH dieser Gefaellestrecke";
|
||||
}
|
||||
: text {
|
||||
key = "sephinweis";
|
||||
label = "";
|
||||
width = 62;
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
@@ -1006,7 +1100,13 @@ vflw_seg_linie_m2 : dialog {
|
||||
: boxed_column {
|
||||
label = "Separator (nur bei GF):";
|
||||
: toggle { key = "sep_vor"; label = "Separator VOR diesem GF-Stueck"; }
|
||||
: toggle { key = "sep_nach"; label = "Separator NACH diesem GF-Stueck"; }
|
||||
// Begruendung, wenn "NACH" gesperrt ist (ES folgt direkt), in EINER
|
||||
// Zeile hinter dem Ankreuzfeld - sonst liest sie sich wie eine eigene
|
||||
// Aussage statt wie die Erklaerung zu genau diesem Feld. Sonst leer.
|
||||
: row {
|
||||
: toggle { key = "sep_nach"; label = "Separator NACH diesem GF-Stueck"; }
|
||||
: text { key = "sephinweis"; label = ""; width = 62; }
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
@@ -1116,13 +1216,24 @@ vflw_m2_lauf_anfang : dialog {
|
||||
label = "";
|
||||
width = 60;
|
||||
}
|
||||
// Reihenfolge nach Haeufigkeit (Nutzer-Wunsch 2026-10-23): der
|
||||
// Regelfall zuerst, der Sonderfall "offener Anfang" zuletzt. Die
|
||||
// radio_button-KEYS bleiben dabei unveraendert; journalisiert wird der
|
||||
// am Key haengende WERT ("mit-gf1"/"direkt"/"ohne", siehe
|
||||
// vfl-m2-anfang-norm), nicht die Position - Umsortieren und Umnummerieren
|
||||
// sind damit folgenlos fuer bestehende Ketten.
|
||||
: boxed_radio_column {
|
||||
label = "Lauf beginnen mit:";
|
||||
key = "anfang";
|
||||
: radio_button { key = "anfang_offen"; label = "Ohne Umlenkstation (offener Anfang, spaeter fortsetzen)"; }
|
||||
: radio_button { key = "anfang_umlenk"; label = "Umlenkstation direkt (kein GF1/Separator)"; }
|
||||
: radio_button { key = "anfang_umlenk_gf1"; label = "Umlenkstation mit GF1 + Separator"; value = "1"; }
|
||||
// Nummern wie in der Konsolenausgabe, damit Dialog und Protokoll
|
||||
// dieselbe Option gleich benennen.
|
||||
: radio_button { key = "anfang_umlenk_gf1"; label = "1 - Umlenkstation mit GF1 + Separator"; value = "1"; }
|
||||
: radio_button { key = "anfang_umlenk"; label = "2 - Umlenkstation direkt (kein GF1/Separator)"; }
|
||||
: radio_button { key = "anfang_offen"; label = "3 - Ohne Umlenkstation (offener Anfang, spaeter fortsetzen/verschmelzen)"; }
|
||||
}
|
||||
// Begruendung, wenn "Ohne Umlenkstation" gesperrt ist (AS gesetzt).
|
||||
// Breit genug fuer den vollen Satz - bei width = 60 wurde er abgeschnitten.
|
||||
: text { key = "anfanghinweis"; label = ""; width = 76; }
|
||||
}
|
||||
|
||||
ok_cancel;
|
||||
|
||||
Reference in New Issue
Block a user