92 lines
3.2 KiB
C#
92 lines
3.2 KiB
C#
/*
|
|
* Copyright (c) 2025 LG Electronics Inc.
|
|
* SPDX-License-Identifier: LicenseRef-LGE-Proprietary
|
|
*/
|
|
using System.Text;
|
|
using System.Windows;
|
|
using System.Windows.Controls;
|
|
using System.Windows.Input;
|
|
using System;
|
|
using VisionCommon;
|
|
using VisionAligner;
|
|
using System.Threading.Tasks;
|
|
|
|
namespace VisionUI.Aligner {
|
|
/// <summary>얼라인 로그 뷰 AlignLogView.xaml BehindCode</summary>
|
|
public partial class AlignLogView : UserControl {
|
|
private AlignInfo _AlignInfo;
|
|
private AlignRecipe _AlignRecipe;
|
|
/// <summary>
|
|
/// 생성자
|
|
/// </summary>
|
|
/// <param name="alignInfo">얼라인 정보</param>
|
|
public AlignLogView(AlignInfo alignInfo) {
|
|
_AlignInfo = alignInfo;
|
|
_AlignRecipe = VisionRecipeManager.GetAlignRecipe(_AlignInfo);
|
|
|
|
InitializeComponent();
|
|
}
|
|
|
|
public AlignInfo GetAlignInfo() {
|
|
return _AlignInfo;
|
|
}
|
|
|
|
private void listView_KeyDown(object sender, KeyEventArgs e) {
|
|
var listView = (sender as ListView);
|
|
|
|
if (sender != listView) {
|
|
return;
|
|
}
|
|
|
|
if (Keyboard.Modifiers == ModifierKeys.Control && e.Key == Key.C) {
|
|
CopySelectedValuesToClipboard(listView);
|
|
}
|
|
}
|
|
|
|
private void CopySelectedValuesToClipboard(ListView listView) {
|
|
var builder = new StringBuilder();
|
|
|
|
Clipboard.SetText(builder.ToString());
|
|
}
|
|
|
|
private void UserControl_IsVisibleChanged(object sender, DependencyPropertyChangedEventArgs e) {
|
|
bool isVisible = (bool)e.NewValue;
|
|
if (isVisible == true) {
|
|
UpdateVisionRecipes();
|
|
|
|
if ((DataContext as AlignLogViewModel).SelectedDate != DateTime.Now.Date) {
|
|
(DataContext as AlignLogViewModel).SelectedDate = DateTime.Now.Date;
|
|
}
|
|
}
|
|
}
|
|
|
|
private void UpdateVisionRecipes() {
|
|
_AlignRecipe = VisionRecipeManager.GetAlignRecipe(_AlignInfo);
|
|
}
|
|
|
|
public void LoadOverlayImages(DateTime dateTime) {
|
|
//ProcChartViewWindow.Instance.LoadOverlayImages(_SubSysInfo, dateTime);
|
|
}
|
|
|
|
private async void dataGridAlignResultItems_SelectionChanged(object sender, SelectionChangedEventArgs e) {
|
|
if (e.AddedItems.Count > 0) {
|
|
var dataGrid = sender as DataGrid;
|
|
var alignResultItem = e.AddedItems[0] as AlignResultItem;
|
|
|
|
//if (ProcChartViewWindow.Instance.IsLoaded) {
|
|
// await Task.Run(() => {
|
|
// ProcChartViewWindow.Instance.ShowOverlayImage(alignResultItem.Time);
|
|
// });
|
|
// ProcChartViewWindow.Instance.ChangeAlignDeltaAnnotationX(dataGrid.SelectedIndex + 1);
|
|
//}
|
|
}
|
|
}
|
|
|
|
private void btnProcChartOpen_Click(object sender, RoutedEventArgs e) {
|
|
//ProcChartViewWindow.Instance.LoadOverlayImages(_SubSysInfo, (DataContext as AlignLogViewModel).SelectedDate);
|
|
//ProcChartViewWindow.Instance.Owner = Application.Current.MainWindow;
|
|
//ProcChartViewWindow.Instance.Show();
|
|
//ProcChartViewWindow.Instance.Activate();
|
|
}
|
|
}
|
|
} |