AcarsMessageLogPage (IPage)
| Eigenschaft |
Wert |
| Modul |
Mcdu/Pages |
| Klasse |
AcarsMessageLogPage |
| Typ |
IPage Implementation |
| Sichtbarkeit |
Public |
| Datei |
Mcdu/Pages/AcarsMessagePages.vb |
Beschreibung
ACARS MESSAGE LOG Seite -- scrollbare Liste gespeicherter ACARS-Nachrichten. Zeigt 4 Nachrichten pro Seite mit UTC-Zeit, Absender/Betreff und RCD/SNT-Status an. Neue Nachrichten erscheinen in Normalschrift, bereits gelesene in Kleinschrift (@s). Seitenzaehler P/T wird aus der Nachrichtenanzahl berechnet. L1-L4 oeffnen die Detailansicht der jeweiligen Nachricht, R6 loescht alle Nachrichten, L6 kehrt zum ACARS Main Index zurueck.
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.Messages und MessageScrollIndex |
-- |
| 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 (L1-L4, L6, R6) |
-- |
| ctx |
McduContext |
MCDU-Kontext mit AcarsData fuer Nachrichtenzugriff |
-- |
Rueckgabewert (HandleLsk)
| Typ |
Beschreibung |
| McduCommand |
NavigateTo(AcarsViewMessage) fuer L1-L4, EraseAllAcarsMessages fuer R6, NavigateTo(AcarsMainIndex) fuer L6, NoOp sonst |
Ablaufdiagramm
flowchart TD
A[Start Render] --> B[LISTCLEAR]
B --> C[Nachrichten und ScrollIndex laden]
C --> D[TotalPages berechnen]
D --> E["Row 01: UTC-Zeit + MESSAGE LOG + P/T"]
E --> F{4 Slots durchlaufen}
F -->|Nachricht vorhanden| G[Zeit HH:MM formatieren]
G --> H[Sender/Subject auf 14 Zeichen kuerzen]
H --> I{Neu?}
I -->|Ja| J[Normalschrift + RCD/SNT]
I -->|Nein| K["Kleinschrift @s + RCD/SNT"]
J --> F
K --> F
F -->|Alle Slots| L["Row 12: ERASE Label"]
L --> M["Row 13: RETURN + ERASE ALL"]
M --> N[ParseAndRender]
N --> O[Ende]
Aufgerufen von
| Modul |
Sub/Function |
Kontext |
| McduActor |
Render-Dispatch |
Wenn McduPageType.AcarsMessageLog aktiv ist |
Ruft auf
| Modul |
Sub/Function |
Kontext |
| McduCommandParser |
ParseAndRender |
Uebergibt die Befehlsliste an den Screen-Buffer |
| NavigateTo |
Konstruktor |
L1-L4 -> AcarsViewMessage, L6 -> AcarsMainIndex |
| EraseAllAcarsMessages |
Konstruktor |
R6 loescht alle gespeicherten Nachrichten |
Beispiel
Dim page As New AcarsMessageLogPage()
page.Render(ctx, buffer)
' Nachricht anzeigen:
Dim cmd = page.HandleLsk(McduLskKey.L1, ctx) ' -> NavigateTo(AcarsViewMessage)
' Alle loeschen:
Dim cmd2 = page.HandleLsk(McduLskKey.R6, ctx) ' -> EraseAllAcarsMessages()
Aenderungshistorie
| Version |
Datum |
Aenderung |
| 1.0 |
2026-04-16 |
Erstdokumentation |