도면에서 표 추출
This commit is contained in:
109
Views/TableCellVisualizationWindow.xaml
Normal file
109
Views/TableCellVisualizationWindow.xaml
Normal file
@@ -0,0 +1,109 @@
|
||||
<Window x:Class="DwgExtractorManual.Views.TableCellVisualizationWindow"
|
||||
xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation"
|
||||
xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml"
|
||||
xmlns:controls="clr-namespace:DwgExtractorManual.Controls"
|
||||
Title="테이블 셀 시각화" Height="800" Width="1200"
|
||||
WindowStartupLocation="CenterOwner"
|
||||
MinHeight="600" MinWidth="800">
|
||||
|
||||
<Grid>
|
||||
<Grid.RowDefinitions>
|
||||
<RowDefinition Height="Auto"/>
|
||||
<RowDefinition Height="*"/>
|
||||
<RowDefinition Height="Auto"/>
|
||||
</Grid.RowDefinitions>
|
||||
|
||||
<!-- 헤더 -->
|
||||
<Border Grid.Row="0" Background="#34495E" Padding="15">
|
||||
<StackPanel>
|
||||
<TextBlock Text="테이블 셀 시각화"
|
||||
FontSize="20" FontWeight="Bold"
|
||||
Foreground="White" HorizontalAlignment="Center"/>
|
||||
<TextBlock Text="추출된 테이블 셀들의 경계를 시각적으로 확인할 수 있습니다"
|
||||
FontSize="12" Foreground="LightGray"
|
||||
HorizontalAlignment="Center" Margin="0,5,0,0"/>
|
||||
</StackPanel>
|
||||
</Border>
|
||||
|
||||
<!-- 메인 영역 -->
|
||||
<Grid Grid.Row="1">
|
||||
<Grid.ColumnDefinitions>
|
||||
<ColumnDefinition Width="250"/>
|
||||
<ColumnDefinition Width="*"/>
|
||||
</Grid.ColumnDefinitions>
|
||||
|
||||
<!-- 좌측 패널: 파일 목록 및 설정 -->
|
||||
<Border Grid.Column="0" Background="#ECF0F1" BorderBrush="#BDC3C7" BorderThickness="0,0,1,0">
|
||||
<StackPanel Margin="10">
|
||||
<TextBlock Text="파일 목록" FontWeight="Bold" FontSize="14" Margin="0,0,0,10"/>
|
||||
|
||||
<ListBox x:Name="lstFiles" Height="200"
|
||||
SelectionChanged="LstFiles_SelectionChanged"
|
||||
Background="White" BorderBrush="#BDC3C7">
|
||||
<ListBox.ItemTemplate>
|
||||
<DataTemplate>
|
||||
<StackPanel>
|
||||
<TextBlock Text="{Binding FileName}" FontWeight="Bold" FontSize="12"/>
|
||||
<TextBlock Text="{Binding NoteText}" FontSize="10" Foreground="Gray" TextTrimming="CharacterEllipsis"/>
|
||||
<TextBlock FontSize="10" Foreground="DarkBlue">
|
||||
<Run Text="셀: "/>
|
||||
<Run Text="{Binding Path=Cells.Count, Mode=OneWay}"/>
|
||||
<Run Text="개"/>
|
||||
</TextBlock>
|
||||
</StackPanel>
|
||||
</DataTemplate>
|
||||
</ListBox.ItemTemplate>
|
||||
</ListBox>
|
||||
|
||||
<Separator Margin="0,10"/>
|
||||
|
||||
<TextBlock Text="표시 옵션" FontWeight="Bold" FontSize="14" Margin="0,0,0,10"/>
|
||||
|
||||
<CheckBox x:Name="chkShowCells" Content="셀 경계 표시 (기존)" IsChecked="False"
|
||||
Checked="RefreshVisualization" Unchecked="RefreshVisualization"/>
|
||||
<CheckBox x:Name="chkShowCellBoundaries" Content="정확한 셀 경계 표시" IsChecked="True" Margin="0,5,0,0"
|
||||
Checked="RefreshVisualization" Unchecked="RefreshVisualization"/>
|
||||
<CheckBox x:Name="chkShowSegments" Content="선분 표시" IsChecked="True" Margin="0,5,0,0"
|
||||
Checked="RefreshVisualization" Unchecked="RefreshVisualization"/>
|
||||
<CheckBox x:Name="chkShowTexts" Content="텍스트 표시" IsChecked="True" Margin="0,5,0,0"
|
||||
Checked="RefreshVisualization" Unchecked="RefreshVisualization"/>
|
||||
<CheckBox x:Name="chkShowIntersections" Content="교차점 표시" IsChecked="True" Margin="0,5,0,0"
|
||||
Checked="RefreshVisualization" Unchecked="RefreshVisualization"/>
|
||||
<CheckBox x:Name="chkShowDiagonals" Content="셀 대각선 표시" IsChecked="True" Margin="0,5,0,0"
|
||||
Checked="RefreshVisualization" Unchecked="RefreshVisualization"/>
|
||||
<CheckBox x:Name="chkShowNoteBounds" Content="Note 경계 표시" IsChecked="False" Margin="0,5,0,0"
|
||||
Checked="RefreshVisualization" Unchecked="RefreshVisualization"/>
|
||||
|
||||
<Separator Margin="0,10"/>
|
||||
|
||||
<TextBlock Text="확대/축소" FontWeight="Bold" FontSize="14" Margin="0,0,0,10"/>
|
||||
<Button x:Name="btnZoomFit" Content="초기화 (마우스 우클릭)" Click="BtnZoomFit_Click" Margin="0,2"/>
|
||||
|
||||
<Separator Margin="0,10"/>
|
||||
|
||||
<TextBlock x:Name="txtInfo" Text="파일을 선택하세요" FontSize="11"
|
||||
Foreground="DarkGray" TextWrapping="Wrap"/>
|
||||
</StackPanel>
|
||||
</Border>
|
||||
|
||||
<!-- 우측 패널: 시각화 영역 -->
|
||||
<Border Grid.Column="1" Background="White">
|
||||
<controls:ZoomBorder x:Name="svViewer" ClipToBounds="True">
|
||||
<Canvas x:Name="cnvVisualization" Background="White"
|
||||
Width="800" Height="600"
|
||||
MouseMove="CnvVisualization_MouseMove"/>
|
||||
</controls:ZoomBorder>
|
||||
</Border>
|
||||
</Grid>
|
||||
|
||||
<!-- 상태바 -->
|
||||
<StatusBar Grid.Row="2" Background="#95A5A6">
|
||||
<StatusBarItem>
|
||||
<TextBlock x:Name="txtStatus" Text="준비됨"/>
|
||||
</StatusBarItem>
|
||||
<StatusBarItem HorizontalAlignment="Right">
|
||||
<TextBlock x:Name="txtMousePos" Text="마우스: (0, 0)"/>
|
||||
</StatusBarItem>
|
||||
</StatusBar>
|
||||
</Grid>
|
||||
</Window>
|
||||
Reference in New Issue
Block a user