AcarsCreateCompanyMsgPage (IPage)
| Eigenschaft |
Wert |
| Modul |
Mcdu/Pages |
| Klasse |
AcarsCreateCompanyMsgPage |
| Typ |
IPage Implementation |
| Sichtbarkeit |
Public |
| Datei |
Mcdu/Pages/AcarsMessagePages.vb |
Beschreibung
ACARS CREATE COMPANY MESSAGE Seite -- scrollbares Zeilenarray zum Erstellen einer Company-Nachricht. Identische Struktur wie AcarsCreateMessagePage, aber mit eigenem Zeilenarray fuer firmenspezifische Nachrichten. Titel: "CREATE CMP MSG P/T". 8 Textzeilen auf 2 Seiten (4 pro Seite), leere Zeilen als cyan Klammer-Platzhalter. L1-L4 uebernehmen Scratchpad-Text, R5 sendet als "COMPANY"-Nachricht, L6 kehrt zum 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 ZuluTimeHhmm |
-- |
| 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, R5, L6) |
-- |
| ctx |
McduContext |
MCDU-Kontext mit Scratchpad-Inhalt |
-- |
Rueckgabewert (HandleLsk)
| Typ |
Beschreibung |
| McduCommand |
ClearScratchpad fuer L1-L4, SendAcarsMessage("COMPANY") fuer R5, NavigateTo(AcarsMainIndex) fuer L6, NoOp sonst |
Ablaufdiagramm
flowchart TD
A[Start Render] --> B[LISTCLEAR]
B --> C["Row 01: UTC-Zeit + CREATE CMP MSG + P/T"]
C --> D{4 Zeilen pro Seite}
D -->|Zeile leer| E["Cyan Platzhalter anzeigen"]
D -->|Zeile gefuellt| F[Zeilentext anzeigen]
E --> D
F --> D
D -->|Alle Zeilen| G["Row 11: SEND>"]
G --> H["Row 13: RETURN"]
H --> I[ParseAndRender]
I --> J[Ende]
Aufgerufen von
| Modul |
Sub/Function |
Kontext |
| McduActor |
Render-Dispatch |
Wenn McduPageType.AcarsCreateCompanyMsg aktiv ist |
Ruft auf
| Modul |
Sub/Function |
Kontext |
| McduCommandParser |
ParseAndRender |
Uebergibt die Befehlsliste an den Screen-Buffer |
| ClearScratchpad |
Konstruktor |
L1-L4 nach Texteingabe |
| SendAcarsMessage |
Konstruktor |
R5 sendet "COMPANY"-Nachricht mit zusammengefuegtem Body |
| NavigateTo |
Konstruktor |
L6 -> AcarsMainIndex |
Beispiel
Dim page As New AcarsCreateCompanyMsgPage()
page.Render(ctx, buffer)
' Text eingeben:
Dim cmd = page.HandleLsk(McduLskKey.L1, ctx) ' -> ClearScratchpad (Text in Zeile 0)
' Company-Nachricht senden:
Dim cmd2 = page.HandleLsk(McduLskKey.R5, ctx) ' -> SendAcarsMessage("COMPANY", "", body)
Aenderungshistorie
| Version |
Datum |
Aenderung |
| 1.0 |
2026-04-16 |
Erstdokumentation |