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 |