Zum Inhalt

AcarsWxReceivedPage (IPage)

Eigenschaft Wert
Modul Mcdu/Pages
Klasse AcarsWxReceivedPage
Typ IPage Implementation
Sichtbarkeit Public
Datei Mcdu/Pages/AcarsWxPages.vb

Beschreibung

ACARS WEATHER RECEIVED Anzeigeseite -- stellt empfangene Wetterdaten (METAR/TAF) im Kleinschrift-Format (@s~g gruen) dar. Titel: "ACARS RECV WX" mit Stationszaehler "N/T" in Kleinschrift. Der Wettertext wird nach dem VB6-Algorithmus bei 23 Zeichen umgebrochen (Rueckwaerts zum letzten Leerzeichen), maximal 9 Zeilen ab Row 03. Keine LSK-Handler -- Hardkey Up/Down wechseln zwischen bereitstehenden Stationen (wird vom McduActor via Hardkey-Events gesteuert).

Implementierte Methoden

Render

Public Sub Render(ctx As McduContext, buffer As Inet.Arinc429ScreenBuffer) Implements IPage.Render
Name Typ Beschreibung Standard
ctx McduContext MCDU-Kontext mit AcarsData.WxData und WeatherText --
buffer Inet.Arinc429ScreenBuffer Zielpuffer fuer die ARINC-429-Screenausgabe --

HandleLsk

Public Function HandleLsk(key As McduLskKey, ctx As McduContext) As McduCommand Implements IPage.HandleLsk
Name Typ Beschreibung Standard
key McduLskKey Gedrueckte LSK-Taste (keine aktiv) --
ctx McduContext MCDU-Kontext (nicht verwendet) --

Rueckgabewert (HandleLsk)

Typ Beschreibung
McduCommand Immer NoOp -- keine LSK-Interaktion auf dieser Seite

Ablaufdiagramm

flowchart TD
    A[Start Render] --> B[LISTCLEAR]
    B --> C[ReadyFlags zaehlen]
    C --> D["Row 01: ACARS RECV WX"]
    D --> E["Row 01 col22: N/T Zaehler"]
    E --> F[Wettertext laden]
    F --> G{Bis zu 9 Zeilen}
    G -->|Text vorhanden| H[23-Zeichen-Umbruch berechnen]
    H --> I["Row @s~g Textzeile ausgeben"]
    I --> G
    G -->|Text erschoepft oder 9 Zeilen| J[ParseAndRender]
    J --> K[Ende]

Aufgerufen von

Modul Sub/Function Kontext
McduActor Render-Dispatch Wenn McduPageType.AcarsWxReceived aktiv ist

Ruft auf

Modul Sub/Function Kontext
McduCommandParser ParseAndRender Uebergibt die Befehlsliste an den Screen-Buffer

Beispiel

Dim page As New AcarsWxReceivedPage()
page.Render(ctx, buffer)

' Kein LSK-Handler:
Dim cmd = page.HandleLsk(McduLskKey.L1, ctx) ' -> NoOp
' Station-Wechsel erfolgt ueber Hardkey Up/Down via McduActor

Aenderungshistorie

Version Datum Aenderung
1.0 2026-04-16 Erstdokumentation