Phase 4: Formularmodell und Objektsprache

This commit is contained in:
2026-09-04 17:30:32 +02:00
parent 5cf5a6582c
commit 54488b5b67
35 changed files with 7195 additions and 627 deletions

View File

@@ -12,10 +12,14 @@ jederzeit prüfen lässt.
### Requirement: Vollständiges Inventar der Original-Hilfe
`docs/inventar.md` SHALL jede in der Original-Hilfe des Vorbilds
dokumentierte Anweisung, Funktion, Metabefehl, Operator-Schlüsselwort und
Klausel als eigenen Eintrag führen. Ein dokumentiertes Element MUST NOT
Klausel als eigenen Eintrag führen. Darüber hinaus SHALL es das
**Forms-Objektmodell** führen: je Klasse ihre Eigenschaften, Methoden und
Ereignisse als eigene Einträge. Ein dokumentiertes Element MUST NOT
fehlen; Vollständigkeit gegenüber der Quelle geht der Kürze vor. Jeder
Eintrag SHALL Name, Art (Anweisung/Funktion/Metabefehl), Themengruppe,
Status und Fundstelle tragen.
Eintrag SHALL Name, Art (Anweisung/Funktion/Metabefehl/Eigenschaft/
Methode/Ereignis), Themengruppe, Status, Fundstelle und Quelle tragen.
Für Einträge des Objektmodells SHALL die Quelle die Forms-Referenz sein,
weil die Themenliste der Original-Hilfe sie nicht führt.
#### Scenario: Dokumentiertes Element ist erfasst
- **WHEN** die Original-Hilfe die Anweisung `VIEW PRINT` dokumentiert
@@ -25,6 +29,14 @@ Status und Fundstelle tragen.
- **WHEN** `PEEK` als Non-Feature deklariert ist
- **THEN** steht `PEEK` mit Status `Non-Feature` im Inventar und die Fundstelle verweist auf den Abschnitt „Abweichungen" der Sprachreferenz
#### Scenario: Eigenschaft einer Steuerelementklasse ist erfasst
- **WHEN** die Forms-Referenz für `TextBox` die Eigenschaft `SelStart` führt
- **THEN** enthält das Inventar einen Eintrag für `TextBox.SelStart` mit Art `Eigenschaft`, Status und Quelle Forms-Referenz
#### Scenario: Ereignis einer Klasse ist erfasst
- **WHEN** die Forms-Referenz für `Form` das Ereignis `Resize` führt
- **THEN** enthält das Inventar einen Eintrag für `Form_Resize` mit Art `Ereignis`
### Requirement: Festes Statusvokabular
Der Status eines Eintrags SHALL genau einen von drei Werten tragen:
`implementiert` (Frontend senkt ab und die Laufzeit führt aus),