Übersicht: Spaltenüberschriften auch im Fokus-Popup

focusPanel nutzte dieselbe Spalten-Layout-Logik wie das Hauptdiagramm,
hatte aber nie deren Header-Zeile (Interfaces/IP-Adressen/...) übernommen.

Co-Authored-By: Claude Sonnet 5 <noreply@anthropic.com>
This commit is contained in:
Kay
2026-09-17 15:23:40 +02:00
co-authored by Claude Sonnet 5
parent 6f29bbcb2b
commit a2c2be0730
2 changed files with 19 additions and 0 deletions
@@ -371,6 +371,16 @@ struct OverviewView: View {
)
.frame(width: subLayout.canvasSize.width, height: subLayout.canvasSize.height)
ForEach(Array(OverviewLayout.columnOrder.enumerated()), id: \.offset) { index, category in
Text(L10n.t(category.rawValue, appLanguage))
.appFont(.headline)
.foregroundStyle(.secondary)
.position(
x: OverviewLayout.leftInset + CGFloat(index) * OverviewLayout.columnWidth + OverviewLayout.nodeWidth / 2,
y: 14
)
}
ForEach(subGraph.nodes) { node in
if let point = subLayout.positions[node.id] {
NodeCardView(
+9
View File
@@ -157,6 +157,15 @@ Nachbesserung 4 (Log zeigte nach Tastendruck: `script,error executing script But
Mode-Taste (Fund #6) ist damit vollständig live verifiziert: Anlegen über App → Skript korrekt zugewiesen → Speichern ohne Fehler → Tastendruck löst Skript korrekt aus.
### 9. Übersicht: Spaltenüberschriften fehlten im Fokus-Popup
**Status:** fixed (live bestätigt)
Wunsch: Fokus-Popup (Klick auf Knoten in der Übersicht) soll dieselben Spaltenüberschriften (Interfaces, IP-Adressen, Pools & DHCP, Routen, Firewall & NAT) über den Knoten zeigen wie das Hauptdiagramm.
Ursache: `focusPanel(subGraph:subLayout:)` in `OverviewView.swift` rendert Kanten+Knoten der Kette per `OverviewLayout.layout(for:)` (gleiche Spalten-Logik wie oben), hatte aber nie den Header-`ForEach` über `OverviewLayout.columnOrder` übernommen, der im Hauptdiagramm dafür sorgt. `OverviewLayout.topInset` (44pt) reserviert bereits ausreichend Platz oberhalb der Knoten — Header-Block 1:1 aus dem Hauptdiagramm übernommen, keine Größenanpassung nötig.
Build+alle 99 Unit-Tests grün, live bestätigt.
### 7. Manual direkt in die App integrieren
**Status:** offen