コード例 #1
0
ファイル: InputUtils.cs プロジェクト: vkDreamInCode/Keycap
        public static void removeKeyCombination(KeyCode[] keys)
        {
            bool repeat = false;

            for (int v = 0; v < registerdCombs.Count; v++)
            {
                KeyComObj obj = registerdCombs[v];
                if (keys.Length == obj.getList().Count)
                {
                    bool remove = true;
                    for (int i = 0; i < keys.Length; i++)
                    {
                        if (keys[i] != obj.getList()[i])
                        {
                            remove = false;
                            break;
                        }
                    }
                    if (remove)
                    {
                        repeat = true;
                        registerdCombs.Remove(obj);
                    }
                }
            }
            if (repeat)
            {
                removeKeyCombination(keys);
            }
        }
コード例 #2
0
ファイル: InputUtils.cs プロジェクト: vkDreamInCode/Keycap
        public static void refreshMultipleCallbacks()
        {
            bool repeat = false;

            for (int i = 0; i < registerdCombs.Count; i++)
            {
                KeyComObj obj = registerdCombs[i];
                if (checkCombination(obj.getList()))
                {
                    if (obj.isActive())
                    {
                        obj.Invoke();
                        obj.setWaitForChange(true);
                        if (!obj.getRepeat())
                        {
                            repeat = true;
                            registerdCombs.Remove(obj);
                            break;
                        }
                    }
                }
            }
            if (repeat)
            {
                refreshMultipleCallbacks();
            }
        }