Phase 5 vollständig planen und native Exporte abgrenzen

This commit is contained in:
2026-09-06 12:48:22 +02:00
parent 024336e29c
commit 747ec34c6a
42 changed files with 1304 additions and 2 deletions

View File

@@ -0,0 +1,29 @@
## Why
tb-ide zeigt bisher nur einen Platzhalter. Ohne einen gemeinsamen Terminalbesitzer, Fensterverwaltung und eindeutige Tastenverteilung lassen sich Editor, Designer und Debugger nicht verlässlich integrieren.
## What Changes
- IDE-Ereignisschleife, Menüs und Dialoge mit Environment- und Designer-Modus gemäß docs/ide-referenz.md.
- MDI-Fenster, Projektansicht, Fokus, Fensterbefehle, klickbare Statuszeile und klassische konfigurierbare Farben.
- Persistente Display-, Pfad-, Rechtsklick- und Syntax-Checking-Einstellungen; sichere Behandlung kleiner Terminals und Terminalwiederherstellung.
- Gemeinsame Befehlsverteilung für Tastatur, Maus und Menü; kontextabhängige Verfügbarkeit fachlicher Befehle. Fachlogik liefern die nachfolgenden Changes.
- Vollständige IDE-Dialoge für Make EXE File und Make Library mit Zielsystem/-architektur, Ausgabepfad, Prüfung und Ergebnis-/Fehlerdarstellung. Die native Erzeugung und reale Backend-Anbindung folgen in Phase 6; bis dahin bleibt der fehlende Erzeugungsdienst ausdrücklich sichtbar.
## Capabilities
### New Capabilities
- `ide-oberflaeche`: IDE-Ereignisschleife, Menüs und Dialoge mit Environment- und Designer-Modus gemäß docs/ide-referenz.md.
### Modified Capabilities
Keine bestehenden Anforderungen werden ersetzt; die neue IDE-Fähigkeit ergänzt die vorhandenen Laufzeit- und Dateiformatverträge.
## Impact
crates/tb-ide/src/main.rs sowie IDE-interne App-, Fenster- und Dialogmodule; vorhandenes ratatui/crossterm und tb-ui-Rendering. Der BASIC-Tastenpfad bleibt von IDE-Kürzeln getrennt.
**Abhängigkeiten:** [phase-5-01-projekt-und-dokumentmodell](../phase-5-01-projekt-und-dokumentmodell/proposal.md).
**Gesamtplanung:** [Phase-5-Übersicht](../phase-5-01-projekt-und-dokumentmodell/phase-5-uebersicht.md). Die Nummern geben eine gültige Umsetzungsreihenfolge an; OpenSpec erzwingt Change-Abhängigkeiten nicht automatisch.