src/Carnac.Logic/Models/KeyPress.cs
(开头部分) 3KB这里只显示每个文件的开头 60 行。登录后可以解锁完整代码。
using System.Collections.Generic;
using System.Linq;
using Carnac.Logic.KeyMonitor;
namespace Carnac.Logic.Models
{
public sealed class KeyPress : KeyPressDefinition
{
public KeyPress(ProcessInfo process, InterceptKeyEventArgs interceptKeyEventArgs, bool winkeyPressed, IEnumerable<string> input) :
base(interceptKeyEventArgs.Key, winkeyPressed, interceptKeyEventArgs.ShiftPressed, interceptKeyEventArgs.AltPressed, interceptKeyEventArgs.ControlPressed)
{
Process = process;
InterceptKeyEventArgs = interceptKeyEventArgs;
Input = input;
}
public ProcessInfo Process { get; private set; }
public InterceptKeyEventArgs InterceptKeyEventArgs { get; private set; }
public IEnumerable<string> Input { get; private set; }
public bool HasModifierPressed
{
get
{
return InterceptKeyEventArgs.AltPressed
|| InterceptKeyEventArgs.ControlPressed
|| WinkeyPressed;
}
}
public IEnumerable<string> GetTextParts()
{
var isFirst = true;
foreach (var text in Input)
{
if (!isFirst)
{
yield return " + ";
}
else
{
isFirst = false;
}
yield return Format(text, HasModifierPressed);
}
}
static string Format(string text, bool isShortcut)
{
if (text == "Left")
return GetString(8592);
if (text == "Up")
return GetString(8593);
if (text == "Right")
return GetString(8594);
if (text == "Down")
return GetString(8595);
后面还有 47 行代码,解锁后查看完整代码
24 小时内免费解锁 3 个项目,之后 1 算力/个。 规则说明
AI 解读 AI
登录后可用,每次 10 算力,解读结果公开显示在下面。
还没有人解读过这个文件。