103 lines
3.7 KiB
C#
103 lines
3.7 KiB
C#
using AuroraUIComponent.Util;
|
|
using System;
|
|
using System.Collections.Generic;
|
|
using System.Linq;
|
|
using System.Text;
|
|
using System.Threading.Tasks;
|
|
using System.Windows;
|
|
using System.Windows.Controls;
|
|
using System.Windows.Data;
|
|
using System.Windows.Documents;
|
|
using System.Windows.Input;
|
|
using System.Windows.Media;
|
|
using System.Windows.Media.Imaging;
|
|
using System.Windows.Navigation;
|
|
using System.Windows.Shapes;
|
|
using static WeldingCommon.Views.UCCameraPixelResolutionViewModel;
|
|
|
|
namespace WeldingCommon.Views
|
|
{
|
|
/// <summary>
|
|
/// Interaction logic for UCCameraPixelResolution.xaml
|
|
/// </summary>
|
|
public partial class UCCameraPixelResolution : UserControl
|
|
{
|
|
private UCCameraPixelResolutionViewModel _ViewModel;
|
|
|
|
public UCCameraPixelResolution(UCCameraPixelResolutionViewModel viewModel)
|
|
{
|
|
InitializeComponent();
|
|
|
|
_ViewModel = viewModel;
|
|
DataContext = _ViewModel;
|
|
}
|
|
|
|
#region Grid VisionCrossLineCoordinateList
|
|
private void GridEditorVisionCrossLineCoordinateList_MouseDoubleClick(object sender, MouseButtonEventArgs e)
|
|
{
|
|
int nRow = GridEditorVisionCrossLineCoordinateList.SelectedIndex;
|
|
_ViewModel.ReDrawIntersections(nRow);
|
|
}
|
|
|
|
private void GridEditorVisionCrossLineCoordinateList_RowDeleteClick(object sender, RoutedEventArgs e)
|
|
{
|
|
int nRow = GridEditorVisionCrossLineCoordinateList.SelectedIndex;
|
|
_ViewModel.DataGridItemDelete(nRow);
|
|
}
|
|
|
|
private void PasteCommand_Executed_VisionCrossLineCoordinateList(object sender, ExecutedRoutedEventArgs e)
|
|
{
|
|
if (GridEditorVisionCrossLineCoordinateList.PasteFromClipboard(null)) {
|
|
GridEditorVisionCrossLineCoordinateList.CommitEdit();
|
|
GridEditorVisionCrossLineCoordinateList.Items.Refresh();
|
|
}
|
|
}
|
|
|
|
private void GridEditorVisionCrossLineCoordinateList_SelectedCellsChanged(object sender, SelectedCellsChangedEventArgs e)
|
|
{
|
|
if (_ViewModel != null) {
|
|
foreach (var item in e.RemovedCells) {
|
|
if (item.Item is CrossCoordinate) {
|
|
_ViewModel.SelectedVisionCrossLineCoordinateList.Remove(item.Item as CrossCoordinate);
|
|
}
|
|
}
|
|
foreach (var item in e.AddedCells) {
|
|
if (item.Item is CrossCoordinate) {
|
|
var newItem = item.Item as CrossCoordinate;
|
|
if (!_ViewModel.SelectedVisionCrossLineCoordinateList.Contains(newItem)) {
|
|
_ViewModel.SelectedVisionCrossLineCoordinateList.Add(newItem);
|
|
}
|
|
|
|
}
|
|
}
|
|
}
|
|
}
|
|
|
|
private void GridEditorVisionCrossLineCoordinateList_IsVisibleChanged(object sender, DependencyPropertyChangedEventArgs e)
|
|
{
|
|
if (!IsVisible) {
|
|
_ViewModel.SelectedVisionCrossLineCoordinateList.Clear();
|
|
GridEditorVisionCrossLineCoordinateList.UnselectAllCells();
|
|
} else {
|
|
|
|
}
|
|
}
|
|
|
|
private void GridEditorVisionCrossLineCoordinateList_KeyDown(object sender, KeyEventArgs e)
|
|
{
|
|
if (e.Key == Key.Escape) {
|
|
if (sender is DataGrid dg) {
|
|
dg.SelectedItem = null;
|
|
}
|
|
if (sender is ListBox lb) {
|
|
lb.SelectedItem = null;
|
|
}
|
|
} else if (e.Key == Key.Delete) {
|
|
int nRow = GridEditorVisionCrossLineCoordinateList.SelectedIndex;
|
|
_ViewModel.DataGridItemDelete(nRow);
|
|
}
|
|
}
|
|
#endregion
|
|
}
|
|
}
|