67 lines
2.5 KiB
C#
67 lines
2.5 KiB
C#
using Aurora.Api;
|
|
using System;
|
|
using System.ComponentModel;
|
|
using System.Windows;
|
|
using VisionCommon;
|
|
|
|
namespace MilUI {
|
|
/// <summary>
|
|
/// Interaction logic for VisionImageTestWindow.xaml
|
|
/// </summary>
|
|
public partial class VisionImageTestWindow : Window {
|
|
public string WINDOW_TITLE => "Vision Image Test Window";
|
|
|
|
private FovInfo _FovInfo;
|
|
private eVisionTestType _VisionTestType;
|
|
private PatternInfo _PatternInfo;
|
|
private VisionImageTestView visionImageTestSettingView;
|
|
private object _ViewModel;
|
|
|
|
public VisionImageTestWindow(FovInfo fovInfo, eVisionTestType visionTestType, PatternInfo patternInfo = null, Object patternListViewModel = null) {
|
|
_FovInfo = fovInfo;
|
|
_VisionTestType = visionTestType;
|
|
if(patternInfo != null) {
|
|
_PatternInfo = patternInfo;
|
|
}
|
|
if(patternListViewModel != null) {
|
|
_ViewModel = patternListViewModel;
|
|
}
|
|
|
|
InitializeComponent();
|
|
SetTitle();
|
|
CreateView();
|
|
}
|
|
|
|
public void SetTitle() {
|
|
Title = WINDOW_TITLE;
|
|
}
|
|
|
|
private void CreateView() {
|
|
if(_VisionTestType == eVisionTestType.Pattern) {
|
|
visionImageTestSettingView = new VisionImageTestView(_FovInfo, _VisionTestType, _PatternInfo);
|
|
visionImageTestSettingView.DataContext = new VisionImageTestViewModel(_FovInfo, _VisionTestType, _PatternInfo);
|
|
gridVisionImageTestView.Children.Add(visionImageTestSettingView);
|
|
}
|
|
else {
|
|
visionImageTestSettingView = new VisionImageTestView(_FovInfo, _VisionTestType);
|
|
visionImageTestSettingView.DataContext = new VisionImageTestViewModel(_FovInfo, _VisionTestType);
|
|
gridVisionImageTestView.Children.Add(visionImageTestSettingView);
|
|
}
|
|
}
|
|
|
|
public void ResetPosition() {
|
|
Left = WindowUtil.GetLeftWithRatioOnMainWindow(0);
|
|
Top = WindowUtil.GetTopWithRatioOnMainWindow(0);
|
|
}
|
|
|
|
protected override void OnClosing(CancelEventArgs e) {
|
|
visionImageTestSettingView.Dispose();
|
|
if(_VisionTestType == eVisionTestType.Pattern) {
|
|
var param = new Tuple<object, int>(_ViewModel, _PatternInfo.GetPatternId());
|
|
VisionEnv.AuroraEnv.EventPublisher.Publish(
|
|
new EventMessage(string.Empty, VisionEventId.CLOSE_VISION_IMAGE_TEST, param));
|
|
}
|
|
}
|
|
}
|
|
}
|