コード例 #1
0
ファイル: InputMgr.cs プロジェクト: endy/IvyXNA
 public void RemoveHandler(VariableInputEventHandler handler)
 {
     OnVariableInputEvent -= handler;
 }
コード例 #2
0
ファイル: InputMgr.cs プロジェクト: endy/IvyXNA
        public void UnregisterVariableInput(VariableInputType inputType, VariableInputEventHandler eventHandler)
        {
            for (int idx = 0; idx < m_registeredVariableInput.Count; ++idx)
            {
                if (m_registeredVariableInput[idx].InputType == inputType)
                {
                    m_registeredVariableInput[idx].RemoveHandler(eventHandler);

                    if (m_registeredVariableInput[idx].Empty)
                    {
                        m_registeredVariableInput.RemoveAt(idx);
                    }

                    break;
                }
            }
        }
コード例 #3
0
ファイル: InputMgr.cs プロジェクト: endy/IvyXNA
 public void AddHandler(VariableInputEventHandler handler)
 {
     OnVariableInputEvent += handler;
 }
コード例 #4
0
ファイル: InputMgr.cs プロジェクト: endy/IvyXNA
        public void RegisterVariableInput(VariableInputType inputType, VariableInputEventHandler eventHandler)
        {
            int viIdx = 0;
            foreach (RegisteredVariableInput rvi in m_registeredVariableInput)
            {
                if (rvi.InputType != inputType)
                {
                    viIdx++;
                }
                else
                {
                    break;
                }
            }

            if (viIdx == m_registeredVariableInput.Count)
            {
                // Register new input type
                RegisteredVariableInput rvi = new RegisteredVariableInput(inputType);
                rvi.AddHandler(eventHandler);

                m_registeredVariableInput.Add(rvi);
            }
            else
            {
                // Add handler to previously registered input type
                m_registeredVariableInput[viIdx].AddHandler(eventHandler);
            }
        }