mirror of
https://github.com/cemu-project/DS4Windows.git
synced 2024-11-25 18:46:58 +01:00
Make sure RecordBox can have focus. Allow extra keys to be usable while recording a macro.
This commit is contained in:
parent
1ce2f50cba
commit
e39cccf279
@ -10,7 +10,7 @@
|
||||
lex:ResxLocalizationProvider.DefaultDictionary="Strings"
|
||||
xmlns:local="clr-namespace:DS4WinWPF.DS4Forms"
|
||||
mc:Ignorable="d"
|
||||
d:DesignHeight="350" d:DesignWidth="800" KeyDown="UserControl_KeyDown" KeyUp="UserControl_KeyUp" MouseDown="UserControl_MouseDown" MouseUp="UserControl_MouseUp" >
|
||||
d:DesignHeight="350" d:DesignWidth="800" KeyDown="UserControl_KeyDown" KeyUp="UserControl_KeyUp" MouseDown="UserControl_MouseDown" MouseUp="UserControl_MouseUp" Focusable="True" >
|
||||
<UserControl.Resources>
|
||||
<DataTemplate x:Key="DisplayTemplate">
|
||||
<StackPanel Orientation="Horizontal">
|
||||
|
@ -62,6 +62,23 @@ namespace DS4WinWPF.DS4Forms
|
||||
private void SetupLateEvents()
|
||||
{
|
||||
macroListBox.SelectionChanged += MacroListBox_SelectionChanged;
|
||||
recordBoxVM.MacroSteps.CollectionChanged += MacroSteps_CollectionChanged;
|
||||
}
|
||||
|
||||
private void MacroSteps_CollectionChanged(object sender,
|
||||
System.Collections.Specialized.NotifyCollectionChangedEventArgs e)
|
||||
{
|
||||
if (e.Action == System.Collections.Specialized.NotifyCollectionChangedAction.Add)
|
||||
{
|
||||
Dispatcher.BeginInvoke((Action)(() =>
|
||||
{
|
||||
int count = recordBoxVM.MacroSteps.Count;
|
||||
if (count > 0)
|
||||
{
|
||||
macroListBox.ScrollIntoView(recordBoxVM.MacroSteps[count - 1]);
|
||||
}
|
||||
}));
|
||||
}
|
||||
}
|
||||
|
||||
private void MacroListBox_SelectionChanged(object sender, SelectionChangedEventArgs e)
|
||||
@ -271,12 +288,14 @@ namespace DS4WinWPF.DS4Forms
|
||||
recordBoxVM.KeysdownMap.Add(value, true);
|
||||
}
|
||||
|
||||
e.Handled = true;
|
||||
//Console.WriteLine(e.Key);
|
||||
//Console.WriteLine(e.SystemKey);
|
||||
}
|
||||
else if (e.Key == Key.Delete && recordBoxVM.MacroStepIndex >= 0)
|
||||
{
|
||||
recordBoxVM.MacroSteps.RemoveAt(recordBoxVM.MacroStepIndex);
|
||||
e.Handled = true;
|
||||
}
|
||||
}
|
||||
|
||||
@ -294,6 +313,7 @@ namespace DS4WinWPF.DS4Forms
|
||||
recordBoxVM.KeysdownMap.Remove(value);
|
||||
}
|
||||
|
||||
e.Handled = true;
|
||||
//Console.WriteLine(e.Key);
|
||||
//Console.WriteLine(e.SystemKey);
|
||||
}
|
||||
@ -499,6 +519,7 @@ namespace DS4WinWPF.DS4Forms
|
||||
DS4Windows.MacroStep.StepType.ActDown, DS4Windows.MacroStep.StepOutput.Button);
|
||||
recordBoxVM.AddMacroStep(step);
|
||||
recordBoxVM.KeysdownMap.Add(value, true);
|
||||
e.Handled = true;
|
||||
}
|
||||
}
|
||||
|
||||
@ -521,6 +542,7 @@ namespace DS4WinWPF.DS4Forms
|
||||
DS4Windows.MacroStep.StepType.ActUp, DS4Windows.MacroStep.StepOutput.Button);
|
||||
recordBoxVM.AddMacroStep(step);
|
||||
recordBoxVM.KeysdownMap.Remove(value);
|
||||
e.Handled = true;
|
||||
}
|
||||
}
|
||||
}
|
||||
|
Loading…
Reference in New Issue
Block a user