public void RemoveHandler(VariableInputEventHandler handler) { OnVariableInputEvent -= handler; }
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; } } }
public void AddHandler(VariableInputEventHandler handler) { OnVariableInputEvent += handler; }
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); } }