5.0 KiB
5.0 KiB
1. Festlegungen vorab
- 1.1 Optik je Klasse und Zustand (normal, fokussiert, deaktiviert) als Zeichenbild in
docs/forms-referenz.mdfesthalten, aus den Original-Screenshots abgeleitet (D3); verifiziert durch je ein Zeichenbild pro Klasse und Zustand - 1.2 Z-Reihenfolge und Timer-Reihenfolge festlegen und als unsere Festlegung kennzeichnen (D3); verifiziert durch die beiden Abschnitte in der Forms-Referenz
2. Darstellung und Eingabekette
- 2.1 Zeichnen je Klasse aus dem Eigenschaftszustand in den Zellenpuffer (D1); verifiziert durch Snapshot-Tests je Klasse, darunter die drei Höhenformen des CommandButton
- 2.2 Eingabekette für Tastatur und Maus (D2); verifiziert durch Unit-Tests, die je Station den Vorrang prüfen
- 2.3 Trefferprüfung über die Z-Reihenfolge; verifiziert durch einen Test mit überlappenden Steuerelementen und einem Klick ins Formular
3. Fokus und Tastatur
- 3.1 Tabreihenfolge über
TabIndex/TabStopvorwärts und rückwärts, deaktivierte Elemente überspringen; verifiziert durch Unit-Tests je Fall - 3.2 Access-Keys aus
&,Defaultfür Enter,Cancelfür Esc; verifiziert durch Unit-Tests je Auslöser - 3.3
SETFOCUS,GotFocus/LostFocusin der festgelegten Reihenfolge; verifiziert durch einen Test, der die Reihenfolge der beiden Ereignisse prüft
4. Steuerelementklassen
- 4.1 CommandButton, Label, Frame, CheckBox, OptionButton (inkl. Gruppierung im Container); verifiziert durch Snapshot- und Verhaltenstests je Klasse
- 4.2 TextBox mit
Text,SelStart/SelLength/SelText,MultiLine,ScrollBars, EreignisChange; verifiziert durch Tests für Eingabe, Auswahl und Umbruch - 4.3 ListBox und ComboBox mit
ADDITEM/REMOVEITEM,List/ListCount/ListIndex,Sorted, den drei ComboBox-Stilarten; verifiziert durch Tests für Einfügen, Sortierung und „keine Auswahl" - 4.4 HScrollBar/VScrollBar mit
Min/Max/Value/SmallChange/LargeChange/Attachedund EreignisChange; verifiziert durch Tests für Tastatur- und Mausbedienung - 4.5 PictureBox als Textzeichenfläche (
PRINT,CLS,CurrentX/CurrentY,TEXTWIDTH/TEXTHEIGHT) und als Container; verifiziert durch Snapshot-Tests - 4.6 Timer auf der Zeitquelle der Ereignisschleife, Reihenfolge nach 1.2; verifiziert durch Tests mit virtueller Zeit für Abstand,
Interval = 0und zwei gleichzeitig fällige Timer - 4.7 DirListBox, DriveListBox, FileListBox plattformneutral (D6) mit
Path/Drive/FileName/Patternund ihren Ereignissen; verifiziert durch Tests auf einem angelegten Verzeichnisbaum - 4.8 Ziehen und Ablegen:
DragMode,DRAG action%,DragOvermit Zustand,DragDropmit Quelle; verifiziert durch Tests für automatisches und manuelles Ziehen sowie Abbruch
5. Menüs und Dialoge
- 5.1 Menüleiste mit bis zu sechs Ebenen, Access-Keys, Shortcuts,
Checked/Enabled/Visible/Separator, Menü-Arrays; verifiziert durch Snapshot- und Verhaltenstests, darunter die Regelverstöße (Separator mit Shortcut) - 5.2 Ereigniszustellung ruht im geöffneten Menü über den vorhandenen
STOP-Zustand (D5); verifiziert durch einen Test mit fälligem Zeit-Trap bei offenem Menü - 5.3
MSGBOXals Anweisung und Funktion mit Schaltflächengruppen, Vorgabeschaltfläche und Rückgabewerten; verifiziert durch Tests je Gruppe und Rückgabewert - 5.4
INPUTBOX$mit fester Größe 46×16, Positionierung in Zeichen, leerem String bei Abbruch; verifiziert durch Snapshot-Test und Abbruchtest - 5.5 Frontend-Signaturen für
MSGBOX(Anweisung und Funktion) undINPUTBOX$,Unsupported-Absenkung entfernen; verifiziert durchcargo test -p tb-frontend
6. Korpus und Kompatibilität
- 6.1 Ereignisfolge-Direktive im Programmkopf und ihre Einspeisung durch den Harness; verifiziert durch einen Harness-Test mit deklarierten Tasten-, Maus- und Zeitereignissen
- 6.2 Formular-Korpusprogramme für Fokus/Tab, Access-Key, Mausklick, Menüauswahl, Liste, Timer und modalen Dialog; verifiziert durch
cargo test -p tb-cligegen die Sollausgaben - 6.3 Meilenstein: die Formularprogramme aus
github.com/cout/vbdosübersetzen und bedienen, jeden Befund festhalten; verifiziert durch den Lauf über den Bestand mit Befundliste - 6.4 Meilenstein: die Beispiel-Formularprogramme des Korpus laufen; verifiziert durch den grünen Korpuslauf
7. Inventar, Dokumentation, Abschluss
- 7.1
docs/inventar.md: Einträge dieses Changes aufimplementiert; verifiziert durchinventar_stimmt_mit_code_uebereinmit Abdeckung 0 offen für Phase 4 - 7.2 Abweichungen (Dateisystem-Steuerelemente, festgelegte Optik, Z- und Timer-Reihenfolge) in
docs/sprachreferenz.mdeintragen; verifiziert durch den Abschnitt „Abweichungen" - 7.3 PLAN.md: die verbleibenden Phase-4-Punkte abhaken und die Befunde der Phase festhalten; verifiziert durch die abgeschlossene Phase-4-Liste
- 7.4
cargo testgrün undopenspec validate phase-4-steuerelemente --strictohne Befund; verifiziert durch beide Kommandos