fix: VF-Linienzug 100%-Wiederherstellung aus e76e24e abgeschlossen
Restauriert alles aus e76e24e, das nach dem Reset auf master fehlte oder nur teilweise wiederhergestellt war, und mit dem Kollegen-Umbau abgeglichen: - vf_core.lsp: Radio-Button-Dialoge fuer Anlagen-Typ/Linienzug-Modus (vfc-dialog-typ-waehlen/-linienzug-modus-waehlen) + Zurueck-Schleife im c:VarioFoerderer-Dispatcher - Vario-Kurve/GF-Bogen-Erkennung am Kettenanfang: vfl-eingang-modus-bestimmen threaded durch vfl-vf-eingang-bauen/vfl-vf-einheit/vfl-vf-einheit-abschluss, inkl. Punkt-7-Winkel/Hoehen-Tabelle fuer reduzierten Eingang - Modus 2: Lauf-Anfang/Lauf-Abschluss (offener Anfang/Ende, GF-Verteilung "alles Auslauf", Kletter-zu-kurz-Fallback) + Separator VOR/NACH bei GF-Geraden - Systemischer Bug behoben: mehrere Wizard-Dialogfunktionen nutzten noch start_list/add_list (Dropdown) gegen laengst auf boxed_radio_column umgestellte DCL-Dialoge (vflw-gruppe-as/-gefaelle/-variokurve/ -winkel-seite-impl, vflw-seg-linie-m2/-m3/-bogen-impl, vfl-glied-gf-bogen/-vario/-as-es-dialog) - Zentraler Abbruch-Trigger in vfl-in-value/-value-p wiederhergestellt (ohne ihn wirkte der Zurueck/Abbrechen-Button in keinem Wizard-Dialog) - vfl-frage-ist-endpunkt/-ist-kettenende als eigene Funktionen mit Wizard-Dialog extrahiert (vorher Konsolen-Duplikate ohne Dialog-Hookup) - 3 vfs-vf-entry-Aufrufe mit falscher Argumentzahl gefixt (akute Absturz-Bugs in Modus 2/3) - Tote Funktion vflw-gruppe-horizontal-impl entfernt (Tiles nicht mehr im DCL vorhanden) Co-Authored-By: Claude Sonnet 5 <noreply@anthropic.com>
This commit is contained in:
co-authored by
Claude Sonnet 5
parent
4a444b4858
commit
0a1d21d8c5
+12
-2
@@ -430,6 +430,14 @@ class SpecSchreiber(object):
|
||||
raise ValueError("%s: Feld %r fehlt" % (self.wo, name))
|
||||
return None
|
||||
|
||||
def richtung(self, quelle):
|
||||
# Reine Richtungswahl OHNE Laenge (vfl-in-richtung: nur REAL, kein
|
||||
# DL-Token) - fuer den Kettenanfang-Fall von Linie-GF modus="hoehe"/
|
||||
# "steigend"+"hoehe", wo die Laenge erst aus Hoehe/Winkel berechnet
|
||||
# wird. Nur relevant, wenn dies das erste Segment der Kette ist.
|
||||
self.zahl("REAL", self.feld(quelle, "hz"))
|
||||
self.erster_dl = False
|
||||
|
||||
def linie(self, quelle):
|
||||
self.zahl("DL", self.feld(quelle, "dl"))
|
||||
if self.erster_dl:
|
||||
@@ -516,14 +524,16 @@ class SpecSchreiber(object):
|
||||
or "endpunkt")
|
||||
self.raus("STR", _code(GF_LAENGE_MODUS, smodus,
|
||||
"steigend_modus"))
|
||||
if smodus == "endpunkt" or self.erster_dl:
|
||||
if smodus == "endpunkt":
|
||||
self.linie(sek)
|
||||
elif self.erster_dl:
|
||||
self.richtung(sek)
|
||||
if smodus == "hoehe":
|
||||
self.zahl("REAL", self.feld(sek, "hoehe"))
|
||||
self.zahl("REAL", self.feld(sek, "winkel"))
|
||||
elif modus == "hoehe":
|
||||
if self.erster_dl:
|
||||
self.linie(sek)
|
||||
self.richtung(sek)
|
||||
self.raus("STR", _ja_code(self.feld(sek, "sep_vor",
|
||||
pflicht=False)))
|
||||
self.raus("STR", _ja_code(self.feld(sek, "sep_nach",
|
||||
|
||||
Reference in New Issue
Block a user