레이어 행 이름 잘림 해소 + 라이트 선택색을 연한 파랑으로

이름이 잘려 행을 구분할 수 없었다
  눈·자물쇠가 48px 를 상시 차지해 이름 칸이 한글 11자로 줄었다. 운영 서식에는
  '입원일 복용약-전립선약' 처럼 앞이 같고 끝에서 갈리는 이름이 흔해 전부
  '입원일 복용약-…' 로 잘렸다 — 목록만 보고는 어느 행인지 알 수 없었다.
  두 토글을 평소엔 숨기고 마우스를 올린 행에서만 띄운다. 잠김·숨김이 켜진 행에서는
  계속 띄운다(거기서까지 숨기면 마우스를 올리기 전에는 상태를 알 방법이 없다).
  [200] 은 항상 띄우지만 여기서만 갈라선다 — 폭이 곧 가독성이라서.

라이트 모드 선택 밴드가 너무 무거웠다
  양 테마 모두 짙은 파랑(#0F6FBF)에 흰 글자를 쓰다 보니, 흰 배경에 짙은 슬라브가
  얹혀 선택 몇 줄이 패널 전체를 짓눌렀다. 라이트만 방향을 뒤집는다 —
  연한 채움(#A8D3F7, 흰 패널 대비 1.58:1) + 진한 글자(10.1:1).
  서브트리도 한 단계 옅게(#DCEBFB) 해서 '폴더가 주인, 멤버는 딸림'이 색 세기로 읽힌다.
  밴드 위 글자색을 B.OnAccent(흰색 고정)에서 신설 토큰 B.OnLayerSel 로 바꿔
  테마별로 갈라지게 했다(다크 흰색 / 라이트 #222222). 보조 텍스트도 라이트만
  #35536C 로(연한 채움 위 5.12:1 — 기존 #E6F1FB 는 라이트에서 사라진다).

회귀: 테스트 124/124, 편집 스모크 실패 0(레이어 검사 45건), DB 왕복 1,271건
diff 0/예외 0, 종이 렌더 P062 바이트 동일.

Co-Authored-By: Claude Opus 5 <noreply@anthropic.com>
This commit is contained in:
Msystech
2026-08-12 18:19:59 +09:00
co-authored by Claude Opus 5
parent c22d84fb61
commit b47c7af8df
7 changed files with 74 additions and 19 deletions
+24 -1
View File
@@ -742,7 +742,8 @@
<DataTrigger Binding="{Binding Highlight}" Value="Blue">
<Setter TargetName="bd" Property="Background" Value="{DynamicResource B.LayerSel}" />
<Setter Property="Foreground" Value="{DynamicResource B.OnAccent}" />
<!-- 흰색 고정이 아니다 — 라이트는 연한 채움이라 진한 글자를 얹는다 -->
<Setter Property="Foreground" Value="{DynamicResource B.OnLayerSel}" />
</DataTrigger>
<DataTrigger Binding="{Binding Highlight}" Value="Navy">
<Setter TargetName="bd" Property="Background" Value="{DynamicResource B.LayerSubtree}" />
@@ -775,6 +776,28 @@
</Setter>
</Style>
<!--
레이어 행의 눈·자물쇠 — 평소엔 숨기고, 마우스를 올렸거나 상태가 켜진 행에서만 보인다.
항상 띄워 두면 두 토글이 48px 를 상시 차지해 이름 칸이 한글 11자로 줄어든다. 운영 서식에는
'입원일 복용약-전립선약' 처럼 앞부분이 같고 끝에서 갈리는 이름이 흔해서, 그 폭에서는
목록만 보고 행을 구분할 수 없다(전부 '입원일 복용약-…' 로 잘린다).
상태가 켜진 행에서는 계속 띄운다 — 거기서까지 숨기면 마우스를 올리기 전에는
무엇이 잠겼는지 알 방법이 없다.
-->
<Style x:Key="LayerRowToggle" TargetType="ToggleButton" BasedOn="{StaticResource MiniToggle}">
<Setter Property="Visibility" Value="Collapsed" />
<Style.Triggers>
<DataTrigger Binding="{Binding IsMouseOver, RelativeSource={RelativeSource AncestorType=ListBoxItem}}" Value="True">
<Setter Property="Visibility" Value="Visible" />
</DataTrigger>
<DataTrigger Binding="{Binding HasLayerFlag}" Value="True">
<Setter Property="Visibility" Value="Visible" />
</DataTrigger>
</Style.Triggers>
</Style>
<!--
접기/펼치기 셰브론 — 켜짐(=펼침)이 기본 상태라 IsChecked 채움이 들어가면 항상 눌린 것처럼 보인다.
방향이 이미 상태를 말해 주므로 채움은 빼고 호버 반응만 남긴다.