Zum Inhalt

SecIndexPage (IPage)

Eigenschaft Wert
Modul Mcdu/Pages
Klasse SecIndexPage
Typ IPage Implementation
Sichtbarkeit Public
Datei Mcdu/Pages/SecFplnPages.vb

Beschreibung

SEC INDEX Seite — Navigationshub fuer den sekundaeren Flugplan. Zeigt COPY ACTIVE (L1, cyan) zum Kopieren des aktiven Flugplans, SEC F-PLN (L2, weiss) zur Anzeige des sekundaeren Plans, INIT (R1) zur Initialisierung wenn noch kein SEC FPLN vorhanden, PERF (R2) nur wenn SecfplnInSequence aktiv. Bei vorhandenem SEC FPLN: DELETE SEC (L3, blau) und ACTIVATE SEC (L4, amber mit Asterisk). Portiert aus VB6 CreateSECINDEX / ProcessSECINDEX.

Implementierte Methoden

Render

Public Sub Render(ctx As McduContext, buffer As Inet.Arinc429ScreenBuffer) Implements IPage.Render
Name Typ Beschreibung Standard
ctx McduContext MCDU-Kontextdaten (SecfplnAvail, SecfplnFromActive, SecfplnInSequence)
buffer Inet.Arinc429ScreenBuffer Zielpuffer

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 CopyActiveFplnToSec bei L1, NavigateTo(SecFpln) bei L2, DeleteSecondaryFpln bei L3, ActivateSecondaryFpln bei L4, NavigateTo(SecInitA) bei R1, NavigateTo(Perf1) bei R2

Ablaufdiagramm

flowchart TD
    A[Start Render] --> B[LISTCLEAR]
    B --> C[Titel SEC INDEX]
    C --> D[L1: COPY ACTIVE cyan]
    D --> E[L2: SEC F-PLN weiss]
    E --> F{SecfplnAvail oder nicht FromActive?}
    F -- Ja --> G[R1: INIT]
    F -- Nein --> H[Kein INIT]
    G --> I{SecfplnAvail?}
    H --> I
    I -- Ja --> J[R2: PERF wenn InSequence]
    I -- Ja --> K[L3: DELETE SEC blau]
    I -- Ja --> L[L4: ACTIVATE SEC amber]
    I -- Nein --> M[Keine weiteren Optionen]
    J --> N[ParseAndRender]
    K --> N
    L --> N
    M --> N
    N --> O[Ende]

Aufgerufen von

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

Ruft auf

Modul Sub/Function Kontext
McduCommandParser ParseAndRender Kommandoliste in Bildschirmpuffer rendern

Beispiel

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

' L1 druecken → aktiven Flugplan in sekundaeren kopieren
Dim cmd = page.HandleLsk(McduLskKey.L1, ctx)
' cmd ist CopyActiveFplnToSec

Änderungshistorie

Version Datum Änderung
1.0 2026-04-16 Erstdokumentation