82 lines
3.4 KiB
C#
82 lines
3.4 KiB
C#
using System;
|
|
using System.Collections.Generic;
|
|
using System.Diagnostics;
|
|
using System.IO;
|
|
using System.Windows;
|
|
using DwgExtractorManual.Models;
|
|
using DwgExtractorManual.Views;
|
|
using MessageBox = System.Windows.MessageBox;
|
|
|
|
namespace DwgExtractorManual
|
|
{
|
|
/// <summary>
|
|
/// MainWindow의 시각화 관련 기능을 담당하는 partial class
|
|
/// </summary>
|
|
public partial class MainWindow
|
|
{
|
|
// 시각화 데이터 저장
|
|
private static List<TableCellVisualizationData> _visualizationDataCache = new List<TableCellVisualizationData>();
|
|
|
|
/// <summary>
|
|
/// 테이블 셀 시각화 데이터를 저장합니다.
|
|
/// </summary>
|
|
public static void SaveVisualizationData(TableCellVisualizationData data)
|
|
{
|
|
_visualizationDataCache.Add(data);
|
|
Debug.WriteLine($"[VISUALIZATION] 시각화 데이터 저장: {data.FileName}, 셀 수: {data.Cells.Count}");
|
|
}
|
|
|
|
/// <summary>
|
|
/// 저장된 시각화 데이터를 가져옵니다.
|
|
/// </summary>
|
|
public static List<TableCellVisualizationData> GetVisualizationData()
|
|
{
|
|
Debug.WriteLine($"[VISUALIZATION] 시각화 데이터 조회: {_visualizationDataCache.Count}개 항목");
|
|
return new List<TableCellVisualizationData>(_visualizationDataCache);
|
|
}
|
|
|
|
/// <summary>
|
|
/// 시각화 데이터를 초기화합니다.
|
|
/// </summary>
|
|
public static void ClearVisualizationData()
|
|
{
|
|
Debug.WriteLine($"[VISUALIZATION] 시각화 데이터 초기화 (기존 {_visualizationDataCache.Count}개 항목 삭제)");
|
|
_visualizationDataCache.Clear();
|
|
Debug.WriteLine("[VISUALIZATION] 시각화 데이터 초기화 완료");
|
|
}
|
|
|
|
/// <summary>
|
|
/// 테이블 셀 시각화 창을 엽니다.
|
|
/// </summary>
|
|
private void BtnVisualizeCells_Click(object sender, RoutedEventArgs e)
|
|
{
|
|
try
|
|
{
|
|
LogMessage("🎨 테이블 셀 시각화 창을 여는 중...");
|
|
|
|
var visualizationData = GetVisualizationData();
|
|
LogMessage($"[DEBUG] 조회된 시각화 데이터: {visualizationData.Count}개");
|
|
|
|
if (visualizationData.Count == 0)
|
|
{
|
|
MessageBox.Show("시각화할 데이터가 없습니다.\n먼저 'DWG추출(Height정렬)' 버튼을 눌러 데이터를 추출해주세요.",
|
|
"데이터 없음", MessageBoxButton.OK, MessageBoxImage.Information);
|
|
LogMessage("⚠️ 시각화할 데이터가 없습니다. 먼저 추출을 진행해주세요.");
|
|
return;
|
|
}
|
|
|
|
var visualizationWindow = new TableCellVisualizationWindow(visualizationData);
|
|
visualizationWindow.Owner = this;
|
|
visualizationWindow.Show();
|
|
|
|
LogMessage($"✅ 시각화 창 열기 완료 - {visualizationData.Count}개 파일 데이터");
|
|
}
|
|
catch (Exception ex)
|
|
{
|
|
LogMessage($"❌ 시각화 창 열기 중 오류: {ex.Message}");
|
|
MessageBox.Show($"시각화 창을 여는 중 오류가 발생했습니다:\n{ex.Message}",
|
|
"오류", MessageBoxButton.OK, MessageBoxImage.Error);
|
|
}
|
|
}
|
|
}
|
|
} |