feat: Omniflo-Fahrstrecke (OMNI_FAHRSTRECKE) + Geruest-Dialoge ueberarbeitet
Fahrstrecke: - Neuer Befehl OMNI_FAHRSTRECKE (+ _BESCHRIFTEN) im Omniflo-Menue, Daten aus data/json/omniflo_fahrstrecke.json, Vorlage dcl/fahrstrecke.dcl - Nutzt die Linien-Logik des Geruest-Traegers (geruest-linien-starten, Dialog/Einfuegen/Beschriftung je Baugruppe parametriert) - Muffen-Dummy wie beim Traeger, farbig nur wo in der JSON gesetzt - Stueckliste: eigene Klasse "Omniflo Fahrstrecke" (GR_Fahrstrecke_*) Geruest-Dialoge: - DCL als statische Vorlagen mit //@NAME@-Platzhaltern (ssg-dcl-vorlage-fuellen in ssg_core), dcl/geruest.dcl neu - Ein Dialog je Bereich (keine Bereichsumschaltung mehr) - Varianten als Radiobuttons mit Artikelnummern im Label, "disabled": true graut Varianten aus - Eine Befestigungsspalte (Gesamtanzahl) + Zeile "Sonstiges", Art.-Nr. unter jedem Anbauteil - Winkel Platte (0/90): Anbauteile gedreht eingefuegt - Kennzeichnung geaenderter Konfiguration, Ueberspeichern per Enter - Traeger: Querstreben nur bei "mit_querstrebe": true Konfigurationen im alten Format (oben/unten) werden beim Laden uebernommen. Unit-Tests ergaenzt (599 gruen).
This commit is contained in:
@@ -0,0 +1,55 @@
|
||||
// ============================================================
|
||||
// geruest.dcl - Geruest-Baugruppe konfigurieren (VORLAGE)
|
||||
// Verwendet von: GERUEST_SAEULEN, GERUEST_ROHRABHAENGER,
|
||||
// GERUEST_WANDBEFESTIGUNG (GeruestInsert.lsp, geruest-dialog)
|
||||
//
|
||||
// Diese Datei wird NICHT direkt geladen: Zeilen der Form //@NAME@ sind
|
||||
// Platzhalter, die GeruestInsert.lsp zur Laufzeit durch datenabhaengige
|
||||
// Bloecke ersetzt (ssg-dcl-vorlage-fuellen, ssg_core.lsp) - DCL kann Tiles
|
||||
// weder zur Laufzeit erzeugen noch ausblenden, und Radiobutton-Labels lassen
|
||||
// sich per set_tile nicht aendern. Das Ergebnis wird als Temp-Datei geladen.
|
||||
//
|
||||
// //@TITEL@ label-Zeile des Dialogs (Bereichsname)
|
||||
// //@VARIANTEN@ ein radio_button je Geometrie-Variante (key v<i>)
|
||||
// //@BEFESTIGUNG@ Spalte "Befestigung oben und unten" (Tile-Keys b<i>/bm<i>,
|
||||
// entfaellt ohne Teile - ein leerer Cluster ist in DCL
|
||||
// unzulaessig)
|
||||
// //@SONSTIGES@ Spalte "Sonstiges" (s<i>/sm<i>, entfaellt ohne Teile)
|
||||
// Je Teil: Mengenfeld, Ankreuzfeld und darunter "Art.-Nr. ..." (sivas_id).
|
||||
// ============================================================
|
||||
|
||||
geruest : dialog {
|
||||
//@TITEL@
|
||||
: row {
|
||||
: popup_list { key = "konfig"; label = "Konfiguration:"; width = 40; }
|
||||
: button { key = "kspeichern"; label = "Speichern..."; fixed_width = true; }
|
||||
: button { key = "kloeschen"; label = "Löschen"; fixed_width = true; }
|
||||
}
|
||||
// Zeigt an, ob der Stand noch der gewaehlten Konfiguration entspricht
|
||||
// (geruest-dlg-aenderung-pruefen).
|
||||
: text { key = "kstatus"; label = ""; width = 64; }
|
||||
|
||||
: boxed_column {
|
||||
label = "Basis";
|
||||
// Radiobuttons statt Liste: alle Varianten sichtbar, Einfachauswahl,
|
||||
// Beschriftung in voller Breite.
|
||||
: radio_column {
|
||||
key = "variante";
|
||||
label = "Variante:";
|
||||
alignment = left;
|
||||
//@VARIANTEN@
|
||||
}
|
||||
: row {
|
||||
: edit_box { key = "laenge"; label = "Laenge (mm):"; edit_width = 10; }
|
||||
: popup_list { key = "farbe"; label = "Farbe:"; width = 25; }
|
||||
: edit_box { key = "farbe_frei"; label = "eigene:"; edit_width = 12; }
|
||||
}
|
||||
// Ausrichtung, in der die Anbauteile mit der Basis zusammengebaut werden
|
||||
: popup_list { key = "winkel"; label = "Winkel Platte:"; width = 22; fixed_width = true; }
|
||||
}
|
||||
|
||||
//@BEFESTIGUNG@
|
||||
//@SONSTIGES@
|
||||
|
||||
ok_cancel;
|
||||
}
|
||||
Reference in New Issue
Block a user