From c4c9e56b2c52f44f0fc61be30eb284e11acb53c2 Mon Sep 17 00:00:00 2001 From: karim Date: Tue, 19 May 2026 00:02:26 +0200 Subject: [PATCH] Beide Ebenen-Panels: Section-Header raus, Action-Buttons in Sichtbarkeit-Row MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit Der Section-Header mit dem Panel-Namen ("Ebenen" / "Zeichnungsebenen") war redundant — der Panel-Tab in Rhino hat den Namen schon. Stattdessen direkt mit der Sichtbarkeit-Dropdown beginnen. EbenenManager: - `
`-Wrapper entfernt, Section-Import raus. - "+"-Button neben der Sichtbarkeit-Dropdown (flex: 1). GeschossManager: - Gleich. "+"- und Edit-Buttons (Bleistift) neben der Sichtbarkeit- Dropdown. Co-Authored-By: Claude Opus 4.7 --- src/components/EbenenManager.jsx | 26 +++++---- src/components/GeschossManager.jsx | 90 +++++++++++++++--------------- 2 files changed, 58 insertions(+), 58 deletions(-) diff --git a/src/components/EbenenManager.jsx b/src/components/EbenenManager.jsx index 7344dc8..c411d9e 100644 --- a/src/components/EbenenManager.jsx +++ b/src/components/EbenenManager.jsx @@ -1,5 +1,4 @@ import { useState, useRef, useMemo, useEffect } from 'react' -import Section from './Section' import Icon from './Icon' import ConfirmDeleteEbene from './ConfirmDeleteEbene' import ContextMenu from './ContextMenu' @@ -407,14 +406,8 @@ export default function EbenenManager({ disabled: ebenen.length <= 1 }, ] - const actionBtns = ( - - ) - return ( -
+ <> {/* Ebenenkombinationen — Label + Dropdown + Save-As-Plus */}
Sichtbarkeit - +
+ + +
) })()} -
+ ) } diff --git a/src/components/GeschossManager.jsx b/src/components/GeschossManager.jsx index a435b23..81a4f93 100644 --- a/src/components/GeschossManager.jsx +++ b/src/components/GeschossManager.jsx @@ -1,5 +1,4 @@ import { useState } from 'react' -import Section from './Section' import Icon from './Icon' import GeschossDialog from './GeschossDialog' import GeschossSettingsDialog from './GeschossSettingsDialog' @@ -104,64 +103,63 @@ export default function GeschossManager({ onChange([...zeichnungsebenen, newZ]) } - const actions = ( -
- - -
- ) - const toggleVisible = (id) => { onChange(zeichnungsebenen.map(z => z.id === id ? { ...z, visible: !(z.visible !== false) } : z)) } return ( <> -
-
- Sichtbarkeit - onModeChange(ev.target.value)} + style={{ flex: 1, minWidth: 0 }} + > {MODES.map(m => ( ))} + +
+ -
- Gebäudehöhe - - {gesamthoehe.toFixed(2)} m - -
+
+ Gebäudehöhe + + {gesamthoehe.toFixed(2)} m + +
-
- {sorted.map(z => ( - onActiveChange(z.id)} - onToggleVisible={() => toggleVisible(z.id)} - onSettings={() => setSettingsFor(z)} - /> - ))} -
-
+
+ {sorted.map(z => ( + onActiveChange(z.id)} + onToggleVisible={() => toggleVisible(z.id)} + onSettings={() => setSettingsFor(z)} + /> + ))} +
{dialogOpen && (