레이어 패널: 컨트롤 이름 병기 + 더블클릭으로 캔버스 이동

레이어 목록이 Text 만 보여줘서 chkOrientation1~5 처럼 문구가 같은
컨트롤들이 전부 같은 줄로 보였다. 두 줄로 나눠 아래에 Id 를 병기한다
(Text 가 없어 LayerName 이 곧 Id 인 경우는 중복이라 숨긴다).

그리고 컨트롤이 수백 개인 서식에서는 목록에서 이름을 찾아도 종이
어디에 있는지 알 수 없었다 — 더블클릭하면 해당 페이지로 전환 + 선택 +
캔버스 스크롤. 이미 전부 보이면 스크롤하지 않는다.

Co-Authored-By: Claude Opus 5 <noreply@anthropic.com>
This commit is contained in:
Msystech
2026-08-12 15:08:19 +09:00
co-authored by Claude Opus 5
parent e18ad87100
commit d09bd90c8e
6 changed files with 122 additions and 9 deletions
@@ -38,6 +38,20 @@ public partial class MainView : Window
}
}
/// <summary>
/// 레이어 더블클릭 → 캔버스를 그 컨트롤로 이동.
/// 컨트롤이 수백 개인 서식에서는 목록에서 이름을 찾아도 종이 어디에 있는지 알 수 없었다.
/// (ListBox 더블클릭은 InputBinding 을 지원하지 않아 코드비하인드로 위임한다 — 서식 목록과 같은 이유)
/// </summary>
private void OnLayerDoubleClick(object sender, System.Windows.Input.MouseButtonEventArgs e)
{
if (DataContext is MainViewModel { CurrentDesigner: { } designer }
&& LayerListBox.SelectedItem is ViewModels.Controls.ControlViewModel target)
{
designer.RevealControl(target);
}
}
private void OnThemeToggleClick(object sender, RoutedEventArgs e)
{
ThemeManager.Toggle();