mirror of
https://github.com/DarthAffe/CUE.NET.git
synced 2025-12-13 00:58:31 +00:00
73 lines
1.8 KiB
C#
73 lines
1.8 KiB
C#
using CUE.NET.Devices.Keyboard.Enums;
|
|
|
|
namespace CUE.NET.Devices.Keyboard.Keys
|
|
{
|
|
public class SimpleKeyGroup : BaseKeyGroup
|
|
{
|
|
#region Constructors
|
|
|
|
public SimpleKeyGroup(CorsairKeyboard keyboard)
|
|
: base(keyboard)
|
|
{ }
|
|
|
|
public SimpleKeyGroup(CorsairKeyboard keyboard, params CorsairKey[] keys)
|
|
: base(keyboard)
|
|
{
|
|
AddKey(keys);
|
|
}
|
|
|
|
public SimpleKeyGroup(CorsairKeyboard keyboard, params CorsairKeyboardKeyId[] keys)
|
|
: base(keyboard)
|
|
{
|
|
AddKey(keys);
|
|
}
|
|
|
|
#endregion
|
|
|
|
#region Methods
|
|
|
|
public void AddKey(params CorsairKey[] keys)
|
|
{
|
|
if (keys != null)
|
|
foreach (CorsairKey key in keys)
|
|
if (key != null && !ContainsKey(key))
|
|
Keys.Add(key);
|
|
|
|
}
|
|
|
|
public void AddKey(params CorsairKeyboardKeyId[] keyIds)
|
|
{
|
|
if (keyIds != null)
|
|
foreach (CorsairKeyboardKeyId keyId in keyIds)
|
|
AddKey(Keyboard[keyId]);
|
|
}
|
|
|
|
public void RemoveKey(params CorsairKey[] keys)
|
|
{
|
|
if (keys != null)
|
|
foreach (CorsairKey key in keys)
|
|
if (key != null)
|
|
Keys.Remove(key);
|
|
}
|
|
|
|
public void RemoveKey(params CorsairKeyboardKeyId[] keyIds)
|
|
{
|
|
if (keyIds != null)
|
|
foreach (CorsairKeyboardKeyId keyId in keyIds)
|
|
RemoveKey(Keyboard[keyId]);
|
|
}
|
|
|
|
public bool ContainsKey(CorsairKey key)
|
|
{
|
|
return key != null && Keys.Contains(key);
|
|
}
|
|
|
|
public bool ContainsKey(CorsairKeyboardKeyId keyId)
|
|
{
|
|
return ContainsKey(Keyboard[keyId]);
|
|
}
|
|
|
|
#endregion
|
|
}
|
|
}
|