Zum Inhalt

McduMenuIlsPage (IPage)

Eigenschaft Wert
Modul Mcdu/Pages
Klasse McduMenuIlsPage
Typ IPage Implementation
Sichtbarkeit Public
Datei Mcdu/Pages/McduMenuPages.vb

Beschreibung

ILS CORRECTION Seite — zweistufige Anzeige zur Korrektur von ILS-Frequenz und -Kurs. State A (kein ICAO eingegeben): zeigt ein amber Eingabefeld fuer den Flughafen-ICAO-Code. State B (ICAO eingegeben): zeigt eine Runway-Liste mit AIRAC-Frequenz/-Kurs vs. SIM-Frequenz/-Kurs, navigierbar ueber PREVIOUS (L6) und NEXT (R6). Der Pilot kann SIM FREQ (R2) und SIM CRS (R3) ueber das Scratchpad korrigieren. Portiert aus VB6 CreateMCDUMENUILS / ProcessMCDUMENUILS.

Implementierte Methoden

Render

Public Sub Render(ctx As McduContext, buffer As Inet.Arinc429ScreenBuffer) Implements IPage.Render
Name Typ Beschreibung Standard
ctx McduContext MCDU-Kontextdaten (IlsCorrectionIcao, IlsCorrectionRunways, IlsCorrectionRwyIndex)
buffer Inet.Arinc429ScreenBuffer Zielpuffer fuer die gerenderten ARINC-429-Bildschirmdaten

HandleLsk

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

Rückgabewert (HandleLsk)

Typ Beschreibung
McduCommand UpdateIlsCorrectionIcao bei L1, UpdateIlsSimFreq/SimCrs bei R2/R3, DecrementIlsRwyIndex bei L6, IncrementIlsRwyIndex bei R6, NavigateTo(McduMenu2) bei RETURN

Ablaufdiagramm

flowchart TD
    A[Start Render] --> B[LISTCLEAR senden]
    B --> C[Titel ILS CORRECTION]
    C --> D{ICAO eingegeben?}
    D -- Nein --> E[State A: Airport Eingabefeld amber]
    D -- Ja --> F[State B: Runway-Daten anzeigen]
    F --> G[IDENT / RWY IDENT]
    G --> H[AIRAC FREQ vs SIM FREQ]
    H --> I[AIRAC CRS vs SIM CRS]
    I --> J[L6: PREVIOUS / R6: NEXT]
    E --> K[R6: RETURN]
    J --> L[ParseAndRender]
    K --> L
    L --> M[Ende]

Aufgerufen von

Modul Sub/Function Kontext
McduActor RenderActivePage Seitenrendering bei aktivem PageType.McduMenuIls

Ruft auf

Modul Sub/Function Kontext
McduCommandParser ParseAndRender Kommandoliste in Bildschirmpuffer rendern

Beispiel

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

' L1 druecken mit "EDDF" im Scratchpad → ICAO setzen
Dim cmd = page.HandleLsk(McduLskKey.L1, ctx)
' cmd ist UpdateIlsCorrectionIcao

Änderungshistorie

Version Datum Änderung
1.0 2026-04-16 Erstdokumentation