Scripting - Fixed broken scripts being applied to profiles in an invalid state

UI - Updated about tab link
This commit is contained in:
Robert committed 2021-08-30 16:05:11 +02:00
1 parent fcdfbe61bb
commit 7ad7eaad89
7 files changed
+97 -43

No files matched your search

@@ -305,10 +305,17 @@ namespace Artemis.Core.Services
}
}
public bool IsKeyDown(KeyboardKey key)
{
return _pressedKeys.Any(p => p.Value.Contains(key));
}
#endregion
#region Mouse
private readonly HashSet<MouseButton> _pressedButtons = new();
private void InputProviderOnMouseButtonDataReceived(object? sender, InputProviderMouseButtonEventArgs e)
{
bool foundLedId = InputKeyUtilities.MouseButtonLedIdMap.TryGetValue(e.Button, out LedId ledId);
@@ -320,9 +327,17 @@ namespace Artemis.Core.Services
ArtemisMouseButtonUpDownEventArgs eventArgs = new(e.Device, led, e.Button, e.IsDown);
OnMouseButtonUpDown(eventArgs);
if (e.IsDown)
{
if (!_pressedButtons.Contains(e.Button))
_pressedButtons.Add(e.Button);
OnMouseButtonDown(eventArgs);
}
else
{
if (_pressedButtons.Contains(e.Button))
_pressedButtons.Remove(e.Button);
OnMouseButtonUp(eventArgs);
}
// _logger.Verbose("Mouse button data: LED ID: {ledId}, button: {button}, is down: {isDown}, device: {device} ", ledId, e.Button, e.IsDown, e.Device);
}
@@ -339,6 +354,11 @@ namespace Artemis.Core.Services
// _logger.Verbose("Mouse move data: XY: {X},{Y} - delta XY: {deltaX},{deltaY} - device: {device} ", e.CursorX, e.CursorY, e.DeltaX, e.DeltaY, e.Device);
}
public bool IsButtonDown(MouseButton button)
{
return _pressedButtons.Contains(button);
}
#endregion
#region Events
@@ -40,7 +40,19 @@ namespace Artemis.Core.Services
/// </summary>
void ReleaseAll();
#region Events
/// <summary>
/// Determines whether the provided key is pressed by any device
/// </summary>
/// <param name="key">The key to check</param>
/// <returns><see langword="true" /> if the key is pressed; otherwise <see langword="false" /></returns>
bool IsKeyDown(KeyboardKey key);
/// <summary>
/// Determines whether the button key is pressed by any device
/// </summary>
/// <param name="button">The button to check</param>
/// <returns><see langword="true" /> if the button is pressed; otherwise <see langword="false" /></returns>
bool IsButtonDown(MouseButton button);
/// <summary>
/// Occurs whenever a key on a keyboard was pressed or released
@@ -92,8 +104,6 @@ namespace Artemis.Core.Services
/// </summary>
public event EventHandler DeviceIdentified;
#endregion
#region Identification
/// <summary>