Commit 9f3e22e3 by 鲁志-悦动

自动模式下当有开始区域没有结束区域或相反情况弹窗 And 一键恢复默认快捷键 And 修复空格键bug And 回放失败时弹窗提示 And…

自动模式下当有开始区域没有结束区域或相反情况弹窗 And 一键恢复默认快捷键 And 修复空格键bug And 回放失败时弹窗提示 And 自动模式下,点击回放后自动抛弃 And 二次确认自动发送倒计时,一键开启、关闭
parent fd852c04
......@@ -69,4 +69,5 @@
<sys:String x:Key="SendHotkey">Send</sys:String>
<sys:String x:Key="AbandonHotkey">Abandon</sys:String>
<sys:String x:Key="Delete">DeleteMark</sys:String>
</ResourceDictionary>
\ No newline at end of file
<sys:String x:Key="DefaultHotkey">RestoreDefault</sys:String>
</ResourceDictionary>
......@@ -68,4 +68,5 @@
<sys:String x:Key="SendHotkey">二次确认(发送)</sys:String>
<sys:String x:Key="AbandonHotkey">二次确认(抛弃)</sys:String>
<sys:String x:Key="Delete">删除标记</sys:String>
<sys:String x:Key="DefaultHotkey">恢复默认</sys:String>
</ResourceDictionary>
\ No newline at end of file
......@@ -691,7 +691,6 @@
<CheckBox
Width="100"
Height="40"
Margin="0,00,0,0"
VerticalContentAlignment="Center"
Command="{Binding SaveMatImageCommand}"
Content="{DynamicResource SaveMatImage}"
......@@ -785,13 +784,23 @@
Command="{Binding Path=SendCommand}"
Content="{DynamicResource Send}"
Style="{StaticResource ButtonStyle}" />
<TextBlock
<!--<TextBlock
Margin="110,0,0,0"
HorizontalAlignment="Center"
VerticalAlignment="Center"
FontSize="14"
Foreground="White"
Text="{DynamicResource AutoSend}" />
Text="{DynamicResource AutoSend}" />-->
<CheckBox
Width="110"
Height="40"
Margin="110,0,0,0"
VerticalContentAlignment="Center"
Command="{Binding AutoSendCommand}"
Content="{DynamicResource AutoSend}"
Foreground="White"
IsChecked="{Binding IsAutoSend, Mode=TwoWay}"
Style="{StaticResource CheckBox_RaidoButtonStyle}" />
<TextBox
x:Name="_AutoSendIntervalTime_"
Width="30"
......@@ -801,7 +810,8 @@
InputMethod.IsInputMethodEnabled="False"
PreviewTextInput="AutoSendIntervalTime_OnPreviewTextInput"
Style="{StaticResource TextBoxStyle}"
Text="{Binding AutoSendIntervalTime, Mode=TwoWay}">
Text="{Binding AutoSendIntervalTime, Mode=TwoWay}"
Visibility="{Binding AutoSendVisibility}">
<b:Interaction.Triggers>
<b:EventTrigger EventName="TextChanged">
<b:InvokeCommandAction Command="{Binding AutoSendIntervalTimeChangedCommand}" PassEventArgsToCommand="True" />
......@@ -1549,7 +1559,8 @@
Foreground="Black"
IsEnabled="False"
Style="{StaticResource TextBoxStyle}"
Text="{Binding AutoSendCount, Mode=TwoWay}" />
Text="{Binding AutoSendCount, Mode=TwoWay}"
Visibility="{Binding AutoSendVisibility}" />
<!--<Canvas
Grid.Row="2"
......
......@@ -165,6 +165,7 @@ namespace VIZ.FGOUT.Module
this.SendPlaceCommand = new VCommand(this.SendPlace);
this.SavePalceCommand = new VCommand(this.SavePlace);
this.SaveMatImageCommand = new VCommand(this.MatImageCommand);
this.AutoSendCommand = new VCommand(this.OnAutoSend);
// replay
this.ReplayCommand = new VCommand(this.Replay);
this.ReplayCheckedCommand = new VCommand(this.ReplayChecked);
......@@ -233,7 +234,7 @@ namespace VIZ.FGOUT.Module
//ApplicationDomain.MessageManager.Register<ReplayEndValueModel>(this, this.ReplayEndValueFromNDIViewModel);
//接收自动发送消息,触发倒计时
ApplicationDomain.MessageManager.Register<AutoSendModel>(this, this.AutoSendIntervalTimeChanged);
//ApplicationDomain.MessageManager.Register<AutoSendModel>(this, this.AutoSendIntervalTimeChanged);
//接收更新主页面Title体育项目名和位置标记消息和三个常用算法参数信息
ApplicationDomain.MessageManager.Register<UpdateTitleAndPositionMarkModel>(this, this.UpdateTitleAndPositionMarkMethod);
......@@ -259,12 +260,15 @@ namespace VIZ.FGOUT.Module
}
else if(msg?.data?.status == 3)
{
WPFHelper.BeginInvoke(() =>
if (IsAutoSend)
{
AutoSendCount = AutoSendIntervalTime - 1;
_autoSend_Timer.Stop();
_autoSend_Timer.Start();
});
WPFHelper.BeginInvoke(() =>
{
AutoSendCount = AutoSendIntervalTime - 1;
_autoSend_Timer.Stop();
_autoSend_Timer.Start();
});
}
}
}
......@@ -293,7 +297,7 @@ namespace VIZ.FGOUT.Module
/// <summary>
/// 算法二次确认自动发送时间
/// </summary>
protected int ALGORITHM_ReconfirmAutoSend_TIME = ApplicationDomain.IniStorage.GetValue<AlgorithmConfig, int>(p => p.ALGORITHM_ReconfirmAutoSend_TIME);
//protected int ALGORITHM_ReconfirmAutoSend_TIME = ApplicationDomain.IniStorage.GetValue<AlgorithmConfig, int>(p => p.ALGORITHM_ReconfirmAutoSend_TIME);
/// <summary>
/// 算法落盘开始、结束时间戳消息
......@@ -316,31 +320,31 @@ namespace VIZ.FGOUT.Module
InitAlgorithmData();
}
private void AutoSendIntervalTimeChanged(AutoSendModel model)
{
WPFHelper.BeginInvoke(() =>
{
AutoSendCount = AutoSendIntervalTime;
//_tempAutoSendCount = AutoSendCount = AutoSendIntervalTime - 1;
//AutoSendCount = (model.Interval / 1000);
_autoSend_Timer.Stop();
_autoSend_Timer.Start();
});
//WPFHelper.BeginInvoke(() =>
//{
// this.GetWindow().WindowState = WindowState.Minimized;
// this.GetWindow().WindowState = WindowState.Normal;
//});
//private void AutoSendIntervalTimeChanged(AutoSendModel model)
//{
// WPFHelper.BeginInvoke(() =>
// {
// AutoSendCount = AutoSendIntervalTime;
// //_tempAutoSendCount = AutoSendCount = AutoSendIntervalTime - 1;
// //AutoSendCount = (model.Interval / 1000);
// _autoSend_Timer.Stop();
// _autoSend_Timer.Start();
// });
// //WPFHelper.BeginInvoke(() =>
// //{
// // this.GetWindow().WindowState = WindowState.Minimized;
// // this.GetWindow().WindowState = WindowState.Normal;
// //});
//Refresh();
// //Refresh();
//WPFHelper.BeginInvoke(() =>
//{
// TimeCountActVisibility = Visibility.Visible;
// TimeCountDefaultVisibility = Visibility.Collapsed;
//});
}
// //WPFHelper.BeginInvoke(() =>
// //{
// // TimeCountActVisibility = Visibility.Visible;
// // TimeCountDefaultVisibility = Visibility.Collapsed;
// //});
//}
/// <summary>
/// 更新算法是否拥有目标框
......@@ -418,8 +422,9 @@ namespace VIZ.FGOUT.Module
_autoSend_Timer.Elapsed += UpdateAutoSendTimer_Tick;
}
int _count = 0;
int _tempAutoSendCount = 3;
//int _count = 0;
//int _tempAutoSendCount = 3;
//private void StartAutoSendTimer()
//{
// _tempAutoSendCount = AutoSendCount = AutoSendIntervalTime - 1;
......@@ -1206,14 +1211,19 @@ namespace VIZ.FGOUT.Module
ApplicationDomain.MessageManager.Send(_reconfirmAbandonModel);
//_autoSend_Timer.Stop();
TimeCountActVisibility = Visibility.Collapsed;
TimeCountDefaultVisibility = Visibility.Visible;
//TimeCountActVisibility = Visibility.Collapsed;
//TimeCountDefaultVisibility = Visibility.Visible;
MessageBoxEx.ShowDialog("二次确认抛弃完成。");
AutoSendCount = AutoSendIntervalTime;
}
private void AutoAbandon()
{
ApplicationDomain.MessageManager.Send(_reconfirmAbandonModel);
}
public VCommand SendCommand { get; set; }
public ReconfirmSendModel _reconfirmSendModel = new ReconfirmSendModel();
/// <summary>
......@@ -1290,7 +1300,7 @@ namespace VIZ.FGOUT.Module
}
}
public ReconfirmAutoSendIntervalTimeModel _reconfirmAutoSendIntervalTimeModel = new ReconfirmAutoSendIntervalTimeModel();
//public ReconfirmAutoSendIntervalTimeModel _reconfirmAutoSendIntervalTimeModel = new ReconfirmAutoSendIntervalTimeModel();
public VCommand<RoutedEventArgs> AutoSendIntervalTimeChangedCommand { get; set; }
private void AutoSendIntervalTimeChanged(RoutedEventArgs e)
{
......@@ -1299,8 +1309,9 @@ namespace VIZ.FGOUT.Module
var text = tb.Text;
if (int.TryParse(text, out var value) && value > 0)
{
AutoSendCount = _reconfirmAutoSendIntervalTimeModel.IntervalTime = value;
ApplicationDomain.MessageManager.Send(_reconfirmAutoSendIntervalTimeModel);
//AutoSendCount = _reconfirmAutoSendIntervalTimeModel.IntervalTime = value;
//ApplicationDomain.MessageManager.Send(_reconfirmAutoSendIntervalTimeModel);
AutoSendCount = value;
}
}
}
......@@ -1308,13 +1319,13 @@ namespace VIZ.FGOUT.Module
public VCommand<KeyEventArgs> Matting_intervalKeyDownCommand { get; set; }
private void Matting_intervalKeyDown(KeyEventArgs e)
{
//TextBoxTextCommon(e);
TextBoxTextCommon(e);
}
public VCommand<KeyEventArgs> Moving_pixelKeyDownCommand { get; set; }
private void Moving_pixelKeyDown(KeyEventArgs e)
{
//TextBoxTextCommon(e);
TextBoxTextCommon(e);
}
private void TextBoxTextCommon(KeyEventArgs e)
......@@ -1336,7 +1347,7 @@ namespace VIZ.FGOUT.Module
private void BigModel()
{
//AlgorithmSendCommon();
AlgorithmSendCommon();
}
......@@ -1501,15 +1512,21 @@ namespace VIZ.FGOUT.Module
replayModel.IsReplay = true;
replayModel.IsReplayStarted = true;
//自动模式下,取算法发过来的Start、EndTime
//自动模式下
if (isAutoEnable)
{
var config = ApplicationDomainEx.LiteDbContext.AlgorithmSaveMatImage.FindAll().FirstOrDefault();
if (config != null)
{
replayModel.InPointStartTime = config.start;
replayModel.OutPointEndTime = config.end;
}
//现在改由存音视频发一个开始贴图的时间戳
//var config = ApplicationDomainEx.LiteDbContext.AlgorithmSaveMatImage.FindAll().FirstOrDefault();
//if (config != null)
//{
// //取算法发过来的Start、EndTime
// replayModel.InPointStartTime = config.start;
// replayModel.OutPointEndTime = config.end;
//}
//发送抛弃命令
AutoAbandon();
_autoSend_Timer.Stop();
}
ApplicationDomain.MessageManager.Send(replayModel);
......@@ -1839,7 +1856,7 @@ namespace VIZ.FGOUT.Module
//replayPackage.data = data;
}
private bool _isMatImage = false;
private bool _isMatImage;
public bool IsMatImage
{
get
......@@ -1855,6 +1872,49 @@ namespace VIZ.FGOUT.Module
#endregion
#region 自动发送开关
public VCommand AutoSendCommand { get; set; }
/// <summary>
/// 是否自动发送
/// </summary>
private void OnAutoSend()
{
if (IsAutoSend)
{
AutoSendVisibility = Visibility.Visible;
AutoSendCount = AutoSendIntervalTime;
}
else
{
AutoSendVisibility = Visibility.Hidden;
}
}
private bool _isAutoSend = true;
public bool IsAutoSend
{
get => _isAutoSend;
set
{
_isAutoSend = value;
this.RaisePropertyChanged(nameof(IsAutoSend));
}
}
private Visibility _autoSendVisibility = Visibility.Visible;
public Visibility AutoSendVisibility
{
get => _autoSendVisibility;
set
{
_autoSendVisibility = value;
this.RaisePropertyChanged(nameof(AutoSendVisibility));
}
}
#endregion
#region Live
public VCommand LiveCommand { get; set; }
......@@ -2458,9 +2518,11 @@ namespace VIZ.FGOUT.Module
//MessageBox.Show(HotkeyHelper.GetHotkey(e));
// 除Replay情况下屏蔽空格键
// 屏蔽空格键
if (e.KeyCode == System.Windows.Forms.Keys.Space && !ReplayIsChecked)
if (e.KeyCode == System.Windows.Forms.Keys.Space)
e.Handled = true;
// 屏蔽回车键
else if (e.KeyCode == System.Windows.Forms.Keys.Return || e.KeyCode == System.Windows.Forms.Keys.Enter)
e.Handled = true;
WPFHelper.BeginInvoke(() =>
......@@ -2597,6 +2659,34 @@ namespace VIZ.FGOUT.Module
//_startDt = DateTime.Now;
_endDt = DateTime.Now;
}
////加速左
//else if (context.hotkey.Equals("Shift + Left"))
//{
// if (_isDown)
// {
// NDIViewModel.SliderEndValue = --SliderEndValue;
// _endDt = DateTime.Now;
// }
// else
// {
// NDIViewModel.SliderStartValue = --SliderStartValue;
// _startDt = DateTime.Now;
// }
//}
////加速右
//else if (context.hotkey.Equals("Shift + Right"))
//{
// if (_isDown)
// {
// NDIViewModel.SliderEndValue = ++SliderEndValue;
// _endDt = DateTime.Now;
// }
// else
// {
// NDIViewModel.SliderStartValue = ++SliderStartValue;
// _startDt = DateTime.Now;
// }
//}
//左
else if (context.hotkey.Equals(NDIMainViewHotkeys.Left))
{
......
......@@ -250,28 +250,28 @@ namespace VIZ.FGOUT.Module
#region 二次确认自动发送定时器
private System.Timers.Timer _autoSend_Timer = new System.Timers.Timer();
public void InitAutoSendTimer()
{
//_autoSend_Timer.AutoReset = true;
//_autoSend_Timer.Enabled = true;
_autoSend_Timer.Interval = ALGORITHM_ReconfirmAutoSend_TIME;
_autoSend_Timer.Elapsed += UpdateAutoSendTimer_Tick;
}
private void UpdateAutoSendTimer_Tick(object sender, EventArgs e)
{
if (this.ViewKey != NDIViewKeys.CAM_1)
return;
try
{
ReconfirmSendParamsCommon(ReconfirmStatus.Send);
}
catch (Exception ex)
{
log.Error(ex);
}
}
//private System.Timers.Timer _autoSend_Timer = new System.Timers.Timer();
//public void InitAutoSendTimer()
//{
// //_autoSend_Timer.AutoReset = true;
// //_autoSend_Timer.Enabled = true;
// _autoSend_Timer.Interval = ALGORITHM_ReconfirmAutoSend_TIME;
// _autoSend_Timer.Elapsed += UpdateAutoSendTimer_Tick;
//}
//private void UpdateAutoSendTimer_Tick(object sender, EventArgs e)
//{
// if (this.ViewKey != NDIViewKeys.CAM_1) return;
// try
// {
// ReconfirmSendParamsCommon(ReconfirmStatus.Send);
// }
// catch (Exception ex)
// {
// log.Error(ex);
// }
//}
#endregion
......
......@@ -71,11 +71,11 @@ namespace VIZ.FGOUT.Module
//初始化算法
// this.InitAlgorithm();
// 初始化计时器
// 初始化清除跟踪框计时器
InitTimer();
// 初始化二次确认自动发送定时器
InitAutoSendTimer();
//InitAutoSendTimer();
}
/// <summary>
......@@ -208,7 +208,7 @@ namespace VIZ.FGOUT.Module
ApplicationDomain.MessageManager.Register<ReconfirmSendModel>(this, this.ReconfirmSend);
//二次确认自动发送间隔时间
ApplicationDomain.MessageManager.Register<ReconfirmAutoSendIntervalTimeModel>(this, this.ReconfirmAutoSendIntervalTime);
//ApplicationDomain.MessageManager.Register<ReconfirmAutoSendIntervalTimeModel>(this, this.ReconfirmAutoSendIntervalTime);
}
private void ReplayOutPort(ReplayOutPointModel replayOutPointModel)
......@@ -353,7 +353,7 @@ namespace VIZ.FGOUT.Module
{
if (this.ViewKey != NDIViewKeys.CAM_1) return;
ReconfirmSendParamsCommon(ReconfirmStatus.Abandon);
_autoSend_Timer.Stop();
//_autoSend_Timer.Stop();
}
private void ReconfirmSend(ReconfirmSendModel reconfirmSendModel)
......@@ -364,11 +364,11 @@ namespace VIZ.FGOUT.Module
//_autoSend_Timer.Start();
}
private void ReconfirmAutoSendIntervalTime(ReconfirmAutoSendIntervalTimeModel reconfirmAutoSendIntervalTimeModel)
{
if (this.ViewKey != NDIViewKeys.CAM_1) return;
_autoSend_Timer.Interval = ALGORITHM_ReconfirmAutoSend_TIME = reconfirmAutoSendIntervalTimeModel.IntervalTime * 1000;
}
//private void ReconfirmAutoSendIntervalTime(ReconfirmAutoSendIntervalTimeModel reconfirmAutoSendIntervalTimeModel)
//{
// if (this.ViewKey != NDIViewKeys.CAM_1) return;
// _autoSend_Timer.Interval = ALGORITHM_ReconfirmAutoSend_TIME = reconfirmAutoSendIntervalTimeModel.IntervalTime * 1000;
//}
private void ReconfirmSendParamsCommon(ReconfirmStatus reconfirmStatus)
{
......@@ -454,9 +454,12 @@ namespace VIZ.FGOUT.Module
IsSliderValueChanged = replayModel.IsSliderValueChanged;
SliderValue = replayModel.SliderValue;
//只在清除选区按钮的时候IsReplay不赋值,默认为false
if (IsReplay)
_autoSend_Timer.Stop();//自动发送计时器取消
else
//if (IsReplay)
//{
// _autoSend_Timer.Stop();//自动发送计时器取消
//}
//else
if(!IsReplay)
{
if(this.ViewKey == NDIViewKeys.CAM_3)
{
......@@ -632,8 +635,7 @@ namespace VIZ.FGOUT.Module
if (!cleanPlaceModel.IsRefreshPosition)
{
MessageBoxExResult result = MessageBoxEx.ShowDialog("提示", "确定清空位置?", MessageBoxExButtons.YES_CANCEL, this.GetWindow());
if (result != MessageBoxExResult.YES)
return;
if (result != MessageBoxExResult.YES) return;
}
var ndiView = this.GetView<NDIView>();
......@@ -662,11 +664,9 @@ namespace VIZ.FGOUT.Module
private void ShowInvalidPlace(ShowInvalidPlaceModel showInvalidPlaceModel)
{
if (this.ViewKey != NDIViewKeys.CAM_1)
return;
if (this.ViewKey != NDIViewKeys.CAM_1) return;
var ndiView = this.GetView<NDIView>();
if (ndiView == null)
return;
if (ndiView == null) return;
IsDrawStartPlace = false;
IsDrawEndPlace = false;
......@@ -697,25 +697,25 @@ namespace VIZ.FGOUT.Module
/// <param name="sendPlaceModel"></param>
private void SaveAndSendPlace(SendPlaceModel sendPlaceModel)
{
if (this.ViewKey != NDIViewKeys.CAM_1)
return;
if (this.ViewKey != NDIViewKeys.CAM_1) return;
NDIView nDIView = this.GetView<NDIView>();
//自动模式下验证开始、结束标记
//if (sendPlaceModel.IsAuto)
//{
// if (nDIView.polygonsStart.Count < 2)
// {
// MessageBoxEx.ShowDialog("开始标记不足2个,是不是没按右键保存?");
// return;
// }
// if (nDIView.polygonsEnd.Count < 1)
// {
// MessageBoxEx.ShowDialog("结束标记没有数据,是不是没按右键保存?");
// return;
// }
//}
if (sendPlaceModel.IsAuto)
{
var message = "是不是没按鼠标右键保存?";
if (nDIView.polygonsEnd.Count < 1)
{
MessageBoxEx.ShowDialog("结束标记没有数据," + message);
return;
}
if (nDIView.polygonsStart.Count < 2)
{
MessageBoxEx.ShowDialog("开始标记不足2个," + message);
return;
}
}
#region 保存位置部分
......@@ -735,8 +735,7 @@ namespace VIZ.FGOUT.Module
#region 发送位置部分
UdpEndpointManager manager = ConnectionManager.UdpConnection.GetEndpointManager(NDIViewKeys.CAM_1);
if (manager == null)
return;
if (manager == null) return;
var srcWidth = nDIView.video.ActualWidth;
var srcHeight = nDIView.video.ActualHeight;
......
......@@ -35,7 +35,7 @@
<Grid Margin="45,60,40,0">
<Grid.RowDefinitions>
<RowDefinition Height="60" />
<RowDefinition Height="450" />
<RowDefinition Height="500" />
</Grid.RowDefinitions>
<!-- 算法裁切快捷键 -->
<!--<TextBlock
......@@ -63,6 +63,7 @@
<RowDefinition Height="50" />
<RowDefinition Height="50" />
<RowDefinition Height="50" />
<RowDefinition Height="50" />
</Grid.RowDefinitions>
<Grid.ColumnDefinitions>
<ColumnDefinition Width="120" />
......@@ -346,6 +347,18 @@
InputMethod.IsInputMethodEnabled="False"
Style="{StaticResource HotkeyBox_Setting}" />
<Button
Grid.Row="9"
Grid.Column="2"
Grid.ColumnSpan="2"
Width="105"
Height="40"
Margin="0,0,20,0"
HorizontalAlignment="Right"
Command="{Binding Path=ResetCommand}"
Content="{DynamicResource DefaultHotkey}"
Style="{StaticResource ButtonStyle}" />
<!-- CAM 3 -->
<!--<TextBlock Text="CAM 3" Foreground="White" FontSize="18" VerticalAlignment="Center" Grid.Row="1"></TextBlock>
......
......@@ -17,6 +17,7 @@ namespace VIZ.FGOUT.Module
public HotkeySettingPanelViewModel()
{
this.LoadedCommand = new VCommand(this.Loaded);
this.ResetCommand = new VCommand(this.Reset);
}
// ======================================================================================
......@@ -439,6 +440,36 @@ namespace VIZ.FGOUT.Module
#endregion
#region 默认快捷键命令
public VCommand ResetCommand { get; set; }
private void Reset()
{
this.StartCmd = "S";
this.EndCmd = "D";
this.InPointCmd = "I";
this.OutPointCmd = "O";
this.UpCmd = "Up";
this.DownCmd = "Down";
this.LeftCmd = "Left";
this.RightCmd = "Right";
this.ReplayCmd = "Q";
this.ReplayStopCmd = "E";
this.ReplayStartCmd = "W";
this.CleanInPointCmd = "J";
this.AbandonCmd = "P";
this.SendCmd = "M";
this.GoOnCmd = "G";
this.HoldOnCmd = "H";
this.ResetCmd = "F";
this.DeleteCmd = "Delete";
Save();
}
#endregion
/// <summary>
/// 是否需要保存
/// </summary>
......@@ -451,7 +482,7 @@ namespace VIZ.FGOUT.Module
if (this.EndCmd != this.HotkeyConfig.EndCmd)
return true;
if(this.InPointCmd != this.HotkeyConfig.I)
if (this.InPointCmd != this.HotkeyConfig.I)
return true;
if (this.OutPointCmd != this.HotkeyConfig.O)
......@@ -466,7 +497,7 @@ namespace VIZ.FGOUT.Module
if (this.LeftCmd != this.HotkeyConfig.Left)
return true;
if (this.RightCmd!= this.HotkeyConfig.Right)
if (this.RightCmd != this.HotkeyConfig.Right)
return true;
if (this.ReplayCmd != this.HotkeyConfig.Replay)
......@@ -481,22 +512,22 @@ namespace VIZ.FGOUT.Module
if (this.CleanInPointCmd != this.HotkeyConfig.CleanInPoint)
return true;
if(this.AbandonCmd != this.HotkeyConfig.Abandon)
if (this.AbandonCmd != this.HotkeyConfig.Abandon)
return true;
if(this.SendCmd != this.HotkeyConfig.Send)
if (this.SendCmd != this.HotkeyConfig.Send)
return true;
if(this.HoldOnCmd != this.HotkeyConfig.HoldOn)
if (this.HoldOnCmd != this.HotkeyConfig.HoldOn)
return true;
if(this.ResetCmd != this.HotkeyConfig.Reset)
if (this.ResetCmd != this.HotkeyConfig.Reset)
return true;
if(this.GoOnCmd != this.HotkeyConfig.GoOn)
if (this.GoOnCmd != this.HotkeyConfig.GoOn)
return true;
if(this.DeleteCmd != this.HotkeyConfig.Delete)
if (this.DeleteCmd != this.HotkeyConfig.Delete)
return true;
//// 算法裁切
......
#pragma checksum "..\..\..\..\..\NDIMainView\View\NDIMainView.xaml" "{8829d00f-11b8-4213-878b-770e8597ac16}" "54735C6DF9304DF1892FA35EF7D9D5B4D53628D9B6994590A46ED491D9FDA26E"
#pragma checksum "..\..\..\..\..\NDIMainView\View\NDIMainView.xaml" "{8829d00f-11b8-4213-878b-770e8597ac16}" "FB363BFA72333ACE197297FF9CD1AF8CE9ABE233154A3E62ABDD03395037B1A5"
//------------------------------------------------------------------------------
// <auto-generated>
// 此代码由工具生成。
......@@ -74,7 +74,7 @@ namespace VIZ.FGOUT.Module {
#line hidden
#line 796 "..\..\..\..\..\NDIMainView\View\NDIMainView.xaml"
#line 805 "..\..\..\..\..\NDIMainView\View\NDIMainView.xaml"
[System.Diagnostics.CodeAnalysis.SuppressMessageAttribute("Microsoft.Performance", "CA1823:AvoidUnusedPrivateFields")]
internal System.Windows.Controls.TextBox _AutoSendIntervalTime_;
......@@ -82,7 +82,7 @@ namespace VIZ.FGOUT.Module {
#line hidden
#line 933 "..\..\..\..\..\NDIMainView\View\NDIMainView.xaml"
#line 943 "..\..\..\..\..\NDIMainView\View\NDIMainView.xaml"
[System.Diagnostics.CodeAnalysis.SuppressMessageAttribute("Microsoft.Performance", "CA1823:AvoidUnusedPrivateFields")]
internal System.Windows.Controls.TextBox _Matting_interval_;
......@@ -90,7 +90,7 @@ namespace VIZ.FGOUT.Module {
#line hidden
#line 958 "..\..\..\..\..\NDIMainView\View\NDIMainView.xaml"
#line 968 "..\..\..\..\..\NDIMainView\View\NDIMainView.xaml"
[System.Diagnostics.CodeAnalysis.SuppressMessageAttribute("Microsoft.Performance", "CA1823:AvoidUnusedPrivateFields")]
internal System.Windows.Controls.TextBox _Moving_pixel_;
......@@ -98,7 +98,7 @@ namespace VIZ.FGOUT.Module {
#line hidden
#line 1331 "..\..\..\..\..\NDIMainView\View\NDIMainView.xaml"
#line 1341 "..\..\..\..\..\NDIMainView\View\NDIMainView.xaml"
[System.Diagnostics.CodeAnalysis.SuppressMessageAttribute("Microsoft.Performance", "CA1823:AvoidUnusedPrivateFields")]
internal VIZ.FGOUT.Module.NDIView cam1;
......@@ -106,7 +106,7 @@ namespace VIZ.FGOUT.Module {
#line hidden
#line 1516 "..\..\..\..\..\NDIMainView\View\NDIMainView.xaml"
#line 1526 "..\..\..\..\..\NDIMainView\View\NDIMainView.xaml"
[System.Diagnostics.CodeAnalysis.SuppressMessageAttribute("Microsoft.Performance", "CA1823:AvoidUnusedPrivateFields")]
internal VIZ.FGOUT.Module.NDIView cam2;
......@@ -114,7 +114,7 @@ namespace VIZ.FGOUT.Module {
#line hidden
#line 1531 "..\..\..\..\..\NDIMainView\View\NDIMainView.xaml"
#line 1541 "..\..\..\..\..\NDIMainView\View\NDIMainView.xaml"
[System.Diagnostics.CodeAnalysis.SuppressMessageAttribute("Microsoft.Performance", "CA1823:AvoidUnusedPrivateFields")]
internal VIZ.FGOUT.Module.NDIView cam3;
......@@ -182,7 +182,7 @@ namespace VIZ.FGOUT.Module {
case 4:
this._AutoSendIntervalTime_ = ((System.Windows.Controls.TextBox)(target));
#line 802 "..\..\..\..\..\NDIMainView\View\NDIMainView.xaml"
#line 811 "..\..\..\..\..\NDIMainView\View\NDIMainView.xaml"
this._AutoSendIntervalTime_.PreviewTextInput += new System.Windows.Input.TextCompositionEventHandler(this.AutoSendIntervalTime_OnPreviewTextInput);
#line default
......@@ -191,7 +191,7 @@ namespace VIZ.FGOUT.Module {
case 5:
this._Matting_interval_ = ((System.Windows.Controls.TextBox)(target));
#line 937 "..\..\..\..\..\NDIMainView\View\NDIMainView.xaml"
#line 947 "..\..\..\..\..\NDIMainView\View\NDIMainView.xaml"
this._Matting_interval_.PreviewTextInput += new System.Windows.Input.TextCompositionEventHandler(this.Matting_interval_OnPreviewTextInput);
#line default
......@@ -200,7 +200,7 @@ namespace VIZ.FGOUT.Module {
case 6:
this._Moving_pixel_ = ((System.Windows.Controls.TextBox)(target));
#line 962 "..\..\..\..\..\NDIMainView\View\NDIMainView.xaml"
#line 972 "..\..\..\..\..\NDIMainView\View\NDIMainView.xaml"
this._Moving_pixel_.PreviewTextInput += new System.Windows.Input.TextCompositionEventHandler(this.Moving_pixel_OnPreviewTextInput);
#line default
......
#pragma checksum "..\..\..\..\..\NDIMainView\View\NDIMainView.xaml" "{8829d00f-11b8-4213-878b-770e8597ac16}" "54735C6DF9304DF1892FA35EF7D9D5B4D53628D9B6994590A46ED491D9FDA26E"
#pragma checksum "..\..\..\..\..\NDIMainView\View\NDIMainView.xaml" "{8829d00f-11b8-4213-878b-770e8597ac16}" "FB363BFA72333ACE197297FF9CD1AF8CE9ABE233154A3E62ABDD03395037B1A5"
//------------------------------------------------------------------------------
// <auto-generated>
// 此代码由工具生成。
......@@ -74,7 +74,7 @@ namespace VIZ.FGOUT.Module {
#line hidden
#line 796 "..\..\..\..\..\NDIMainView\View\NDIMainView.xaml"
#line 805 "..\..\..\..\..\NDIMainView\View\NDIMainView.xaml"
[System.Diagnostics.CodeAnalysis.SuppressMessageAttribute("Microsoft.Performance", "CA1823:AvoidUnusedPrivateFields")]
internal System.Windows.Controls.TextBox _AutoSendIntervalTime_;
......@@ -82,7 +82,7 @@ namespace VIZ.FGOUT.Module {
#line hidden
#line 933 "..\..\..\..\..\NDIMainView\View\NDIMainView.xaml"
#line 943 "..\..\..\..\..\NDIMainView\View\NDIMainView.xaml"
[System.Diagnostics.CodeAnalysis.SuppressMessageAttribute("Microsoft.Performance", "CA1823:AvoidUnusedPrivateFields")]
internal System.Windows.Controls.TextBox _Matting_interval_;
......@@ -90,7 +90,7 @@ namespace VIZ.FGOUT.Module {
#line hidden
#line 958 "..\..\..\..\..\NDIMainView\View\NDIMainView.xaml"
#line 968 "..\..\..\..\..\NDIMainView\View\NDIMainView.xaml"
[System.Diagnostics.CodeAnalysis.SuppressMessageAttribute("Microsoft.Performance", "CA1823:AvoidUnusedPrivateFields")]
internal System.Windows.Controls.TextBox _Moving_pixel_;
......@@ -98,7 +98,7 @@ namespace VIZ.FGOUT.Module {
#line hidden
#line 1331 "..\..\..\..\..\NDIMainView\View\NDIMainView.xaml"
#line 1341 "..\..\..\..\..\NDIMainView\View\NDIMainView.xaml"
[System.Diagnostics.CodeAnalysis.SuppressMessageAttribute("Microsoft.Performance", "CA1823:AvoidUnusedPrivateFields")]
internal VIZ.FGOUT.Module.NDIView cam1;
......@@ -106,7 +106,7 @@ namespace VIZ.FGOUT.Module {
#line hidden
#line 1516 "..\..\..\..\..\NDIMainView\View\NDIMainView.xaml"
#line 1526 "..\..\..\..\..\NDIMainView\View\NDIMainView.xaml"
[System.Diagnostics.CodeAnalysis.SuppressMessageAttribute("Microsoft.Performance", "CA1823:AvoidUnusedPrivateFields")]
internal VIZ.FGOUT.Module.NDIView cam2;
......@@ -114,7 +114,7 @@ namespace VIZ.FGOUT.Module {
#line hidden
#line 1531 "..\..\..\..\..\NDIMainView\View\NDIMainView.xaml"
#line 1541 "..\..\..\..\..\NDIMainView\View\NDIMainView.xaml"
[System.Diagnostics.CodeAnalysis.SuppressMessageAttribute("Microsoft.Performance", "CA1823:AvoidUnusedPrivateFields")]
internal VIZ.FGOUT.Module.NDIView cam3;
......@@ -182,7 +182,7 @@ namespace VIZ.FGOUT.Module {
case 4:
this._AutoSendIntervalTime_ = ((System.Windows.Controls.TextBox)(target));
#line 802 "..\..\..\..\..\NDIMainView\View\NDIMainView.xaml"
#line 811 "..\..\..\..\..\NDIMainView\View\NDIMainView.xaml"
this._AutoSendIntervalTime_.PreviewTextInput += new System.Windows.Input.TextCompositionEventHandler(this.AutoSendIntervalTime_OnPreviewTextInput);
#line default
......@@ -191,7 +191,7 @@ namespace VIZ.FGOUT.Module {
case 5:
this._Matting_interval_ = ((System.Windows.Controls.TextBox)(target));
#line 937 "..\..\..\..\..\NDIMainView\View\NDIMainView.xaml"
#line 947 "..\..\..\..\..\NDIMainView\View\NDIMainView.xaml"
this._Matting_interval_.PreviewTextInput += new System.Windows.Input.TextCompositionEventHandler(this.Matting_interval_OnPreviewTextInput);
#line default
......@@ -200,7 +200,7 @@ namespace VIZ.FGOUT.Module {
case 6:
this._Moving_pixel_ = ((System.Windows.Controls.TextBox)(target));
#line 962 "..\..\..\..\..\NDIMainView\View\NDIMainView.xaml"
#line 972 "..\..\..\..\..\NDIMainView\View\NDIMainView.xaml"
this._Moving_pixel_.PreviewTextInput += new System.Windows.Input.TextCompositionEventHandler(this.Moving_pixel_OnPreviewTextInput);
#line default
......
#pragma checksum "..\..\..\..\..\SystemSetting\View\HotkeySettingPanelView.xaml" "{8829d00f-11b8-4213-878b-770e8597ac16}" "D2A39C4E80CBC1C5D76B89DF515292F5E6BC7DD718FA6F7188D90FB9CBC437A9"
#pragma checksum "..\..\..\..\..\SystemSetting\View\HotkeySettingPanelView.xaml" "{8829d00f-11b8-4213-878b-770e8597ac16}" "6CCD4CB7A2AF36A739B4773C02A62562ED65DC2B793D9E996B687AA117DC0E2A"
//------------------------------------------------------------------------------
// <auto-generated>
// 此代码由工具生成。
......
#pragma checksum "..\..\..\..\..\SystemSetting\View\HotkeySettingPanelView.xaml" "{8829d00f-11b8-4213-878b-770e8597ac16}" "D2A39C4E80CBC1C5D76B89DF515292F5E6BC7DD718FA6F7188D90FB9CBC437A9"
#pragma checksum "..\..\..\..\..\SystemSetting\View\HotkeySettingPanelView.xaml" "{8829d00f-11b8-4213-878b-770e8597ac16}" "6CCD4CB7A2AF36A739B4773C02A62562ED65DC2B793D9E996B687AA117DC0E2A"
//------------------------------------------------------------------------------
// <auto-generated>
// 此代码由工具生成。
......
......@@ -51,11 +51,11 @@
public string Down { get; set; } = "Down";
public string Replay { get; set; } = "R";
public string Replay { get; set; } = "Q";
public string ReplayStart { get; set; } = "K";
public string ReplayStart { get; set; } = "W";
public string ReplayStop { get; set; } = "L";
public string ReplayStop { get; set; } = "E";
public string CleanInPoint { get; set; } = "J";
......
......@@ -55,5 +55,5 @@ using System.Windows;
//可以指定所有这些值,也可以使用“生成号”和“修订号”的默认值
//通过使用 "*",如下所示:
// [assembly: AssemblyVersion("1.0.*")]
[assembly: AssemblyVersion("1.0.7.0")]
[assembly: AssemblyFileVersion("1.0.7.0")]
[assembly: AssemblyVersion("1.0.8.0")]
[assembly: AssemblyFileVersion("1.0.8.0")]
......@@ -72,11 +72,20 @@ namespace VIZ.Framework.Common
}
// Return回车
if (e.SystemKey == Key.Return)
//if (e.SystemKey == Key.Return)
//{
// sb.Append($"{e.SystemKey}");
//}
//if (e.Key == Key.Return)
//{
// sb.Append($"{e.Key}");
//}
if (e.SystemKey == Key.Enter)
{
sb.Append($"{e.SystemKey}");
}
if (e.Key == Key.Return)
if (e.Key == Key.Enter)
{
sb.Append($"{e.Key}");
}
......@@ -165,6 +174,10 @@ namespace VIZ.Framework.Common
{
sb.Append("Shift + ");
}
//if (e.KeyCode == System.Windows.Forms.Keys.LShiftKey || e.KeyCode == System.Windows.Forms.Keys.RShiftKey)
//{
// sb.Append("Shift + ");
//}
// D0 - D9
if (e.KeyCode >= System.Windows.Forms.Keys.D0 && e.KeyCode <= System.Windows.Forms.Keys.D9)
{
......@@ -198,6 +211,20 @@ namespace VIZ.Framework.Common
return sb.ToString();
}
//Enter
if (e.KeyCode == System.Windows.Forms.Keys.Enter)
{
sb.Append($"{e.KeyCode}");
return sb.ToString();
}
//Esc
if (e.KeyCode == System.Windows.Forms.Keys.Escape)
{
sb.Append($"{e.KeyCode}");
return sb.ToString();
}
if (e.KeyCode == System.Windows.Forms.Keys.Left
|| e.KeyCode == System.Windows.Forms.Keys.Right
|| e.KeyCode == System.Windows.Forms.Keys.Up
......

//------------------------------------------------------------------------------
// <auto-generated>
// 此代码由工具生成。
// 运行时版本:4.0.30319.42000
//
// 对此文件的更改可能会导致不正确的行为,并且如果
// 重新生成代码,这些更改将会丢失。
// </auto-generated>
//------------------------------------------------------------------------------
namespace XamlGeneratedNamespace {
/// <summary>
/// GeneratedInternalTypeHelper
/// </summary>
[System.Diagnostics.DebuggerNonUserCodeAttribute()]
[System.CodeDom.Compiler.GeneratedCodeAttribute("PresentationBuildTasks", "4.0.0.0")]
[System.ComponentModel.EditorBrowsableAttribute(System.ComponentModel.EditorBrowsableState.Never)]
public sealed class GeneratedInternalTypeHelper : System.Windows.Markup.InternalTypeHelper {
/// <summary>
/// CreateInstance
/// </summary>
protected override object CreateInstance(System.Type type, System.Globalization.CultureInfo culture) {
return System.Activator.CreateInstance(type, ((System.Reflection.BindingFlags.Public | System.Reflection.BindingFlags.NonPublic)
| (System.Reflection.BindingFlags.Instance | System.Reflection.BindingFlags.CreateInstance)), null, null, culture);
}
/// <summary>
/// GetPropertyValue
/// </summary>
protected override object GetPropertyValue(System.Reflection.PropertyInfo propertyInfo, object target, System.Globalization.CultureInfo culture) {
return propertyInfo.GetValue(target, System.Reflection.BindingFlags.Default, null, null, culture);
}
/// <summary>
/// SetPropertyValue
/// </summary>
protected override void SetPropertyValue(System.Reflection.PropertyInfo propertyInfo, object target, object value, System.Globalization.CultureInfo culture) {
propertyInfo.SetValue(target, value, System.Reflection.BindingFlags.Default, null, null, culture);
}
/// <summary>
/// CreateDelegate
/// </summary>
protected override System.Delegate CreateDelegate(System.Type delegateType, object target, string handler) {
return ((System.Delegate)(target.GetType().InvokeMember("_CreateDelegate", (System.Reflection.BindingFlags.InvokeMethod
| (System.Reflection.BindingFlags.NonPublic | System.Reflection.BindingFlags.Instance)), null, target, new object[] {
delegateType,
handler}, null)));
}
/// <summary>
/// AddEventHandler
/// </summary>
protected override void AddEventHandler(System.Reflection.EventInfo eventInfo, object target, System.Delegate handler) {
eventInfo.AddEventHandler(target, handler);
}
}
}
C:\Projects\FGOUT\VIZ.Framework\VIZ.Framework.Common\obj\x64\Debug\GeneratedInternalTypeHelper.g.cs

FC:\Projects\FGOUT\VIZ.Framework\VIZ.Framework.Common\MessageBox\MessageBoxEx.xaml;;
FC:\Projects\FGOUT\VIZ.Framework\VIZ.Framework.Common\MessageBox\MessageBoxExWindow.xaml;;
......
......@@ -159,6 +159,13 @@ namespace VIZ.Framework.Connection
{
try
{
#region 在开始调用UDPClientReceive方法之前对UDPClient.Available属性进行判断,Available属性大于0时才开始从缓冲区读取网络数据
if (this.UdpClient.Available <= 0) continue;
if (this.UdpClient.Client == null) return;
#endregion
IPEndPoint endport = new IPEndPoint(IPAddress.Any, 8100);
byte[] buffer = this.UdpClient.Receive(ref endport);
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment