Zum Inhalt

MoveLinesPage (IPage)

Eigenschaft Wert
Modul Mcdu/Pages
Klasse MoveLinesPage
Typ IPage Implementation
Sichtbarkeit Public
Datei Mcdu/Pages/DisplayAdjustPages.vb

Beschreibung

SETUP LINES Seite — Y-Position (vertikal) und X-Position (horizontal) der MCDU-Anzeigezeilen anpassen. Linke LSK-Tasten (L1-L6) waehlen eine der sechs Zeilen aus (gruen bei Auswahl). Rechte Tasten steuern die Positionsaenderung: R1/R2 Y-POS MAIN INC/DEC, R3/R4 Y-POS HEADER INC/DEC, R5 wechselt zur X-POS-Seite (MoveLinesX), R6 kehrt zu McduMenuVisual zurueck. Positionsaenderungen senden Register 2233 per INET mit 4-stelligem Compound-Wert. Portiert aus VB6 CreateMOVELINES / ProcessMOVELINES.

Implementierte Methoden

Render

Public Sub Render(ctx As McduContext, buffer As Inet.Arinc429ScreenBuffer) Implements IPage.Render
Name Typ Beschreibung Standard
ctx McduContext MCDU-Kontextdaten (SetupSelectedLsk fuer aktive Zeilenauswahl)
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 SetSetupSelectedLsk bei L1-L6, SendDisplayRegister(2233) bei R1-R4, NavigateTo bei R5/R6

Ablaufdiagramm

flowchart TD
    A[Start Render] --> B[LISTCLEAR senden]
    B --> C[Titel SETUP LINES]
    C --> D[L1-L6: Zeilenauswahl mit Farbcodierung]
    D --> E[R1/R2: Y-POS MAIN INC/DEC]
    E --> F[R3/R4: Y-POS HEADER INC/DEC]
    F --> G[R5: X-POS ADJUST]
    G --> H[R6: RETURN]
    H --> I[ParseAndRender]
    I --> J[Ende]

Aufgerufen von

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

Ruft auf

Modul Sub/Function Kontext
McduCommandParser ParseAndRender Kommandoliste in Bildschirmpuffer rendern
SendDisplayRegister (McduCommand) Register 2233 mit Positionswert senden

Beispiel

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

' L2 druecken → Zeile 2 auswaehlen
Dim cmd1 = page.HandleLsk(McduLskKey.L2, ctx)
' cmd1 ist SetSetupSelectedLsk(1)

' R1 druecken → Y-POS MAIN INC fuer gewaehlte Zeile
Dim cmd2 = page.HandleLsk(McduLskKey.R1, ctx)
' cmd2 ist SendDisplayRegister(2233, "0022")

Änderungshistorie

Version Datum Änderung
1.0 2026-04-16 Erstdokumentation