////REVIEW: the binding may come from anywhere; method assumes we get passed some state we actually own public bool BindControl(IEndBinding binding, InputControl control, bool restrictToExistingDevices) { if (restrictToExistingDevices) { bool existingDevice = false; for (int i = 0; i < m_DeviceStates.Count; i++) { if (control.provider == m_DeviceStates[i].controlProvider) { existingDevice = true; break; } } if (!existingDevice) { return(false); } } if (!binding.TryBindControl(control, this)) { return(false); } m_ControlScheme.customized = true; RefreshBindings(); return(true); }
void ChangeBinding(LabeledBinding labeledBinding, ControlScheme scheme, Text label) { m_BindingToBeAssigned = labeledBinding.binding; InputSystem.ListenForBinding(BindInputControl); label.text = "..."; StartCoroutine(BindingLabelUpdater(label, labeledBinding, scheme)); }
bool BindInputControl(InputControl control) { if (!m_ActionMapInput.BindControl(m_BindingToBeAssigned, control, true)) { return(false); } m_BindingToBeAssigned = null; return(true); }
public LabeledBinding(string label, IEndBinding binding) { this.label = label; this.binding = binding; }