Exemple #1
0
        private void OnChatKeyDown(UIComponent component, UIKeyEventParameter eventParam)
        {
            // Reset chat timeout
            _timeoutCounter = 0;

            // Run this code when the user presses the enter key
            if (eventParam.keycode == KeyCode.Return || eventParam.keycode == KeyCode.KeypadEnter)
            {
                eventParam.Use();

                if (string.IsNullOrEmpty(_chatText.text))
                {
                    isVisible = false;
                    base.Update();
                    return;
                }

                string text = _chatText.text;
                _chatText.text = string.Empty;
                SubmitText(text);
            }
            else if (eventParam.keycode == KeyCode.Escape)
            {
                eventParam.Use();

                isVisible      = false;
                _chatText.text = string.Empty;
            }

            base.Update();
        }
Exemple #2
0
        private void OnChatKeyDown(UIComponent component, UIKeyEventParameter eventParam)
        {
            // Reset chat timeout
            _timeoutCounter = 0;

            // Run this code when the user presses the enter key
            if (eventParam.keycode == KeyCode.Return || eventParam.keycode == KeyCode.KeypadEnter)
            {
                eventParam.Use();

                string text = UseChirper ? _chatTextChirper.text : _chatText.text;

                if (string.IsNullOrEmpty(text))
                {
                    isVisible = false;
                    base.Update();
                    return;
                }

                if (UseChirper)
                {
                    _chatTextChirper.text = string.Empty;
                    _chatTextChirper.Hide();
                    ReflectionHelper.SetAttr(ChirpPanel.instance, "m_Timeout", 6f);
                }
                else
                {
                    _chatText.text = string.Empty;
                }

                SubmitText(text);
            }
            else if (eventParam.keycode == KeyCode.Escape)
            {
                eventParam.Use();

                if (UseChirper)
                {
                    _chatTextChirper.text = string.Empty;
                    ChirpPanel.instance.Hide();
                    _chatTextChirper.Hide();
                }
                else
                {
                    _chatText.text = string.Empty;
                    isVisible      = false;
                }
            }

            base.Update();
        }
        private void OnBindingKeyDown(UIComponent comp, UIKeyEventParameter p)
        {
            if (EditingBinding == null || IsModifierKey(p.keycode))
            {
                return;
            }

            p.Use();
            UIView.PopModal();

            switch (p.keycode)
            {
            case KeyCode.Escape:
                break;

            case KeyCode.Backspace:
                EditingBinding.value = SavedInputKey.Empty;
                break;

            default:
                EditingBinding.value = SavedInputKey.Encode(p.keycode, p.control, p.shift, p.alt);
                break;
            }

            var uITextComponent = p.source as UITextComponent;

            uITextComponent.text = EditingBinding.ToLocalizedString("KEYNAME");

            EditingBinding = null;
        }
Exemple #4
0
        private void OnBindingKeyDown(UIComponent component, UIKeyEventParameter evParam)
        {
            try {
                if (IsModifierKey(evParam.keycode))
                {
                    return;
                }

                evParam.Use();
                var editedBinding = _currentlyEditingBinding;
                UIView.PopModal();

                var keybindButton = evParam.source as UIButton;
                var inputKey      = SavedInputKey.Encode(evParam.keycode, evParam.control, evParam.shift, evParam.alt);

                if (evParam.keycode != KeyCode.Escape)
                {
                    editedBinding.value = inputKey;
                }

                keybindButton.text       = ToLocalizedString(editedBinding);
                _currentlyEditingBinding = null;
                ModService.Instance.FinishKeybindEdit();
            } catch (Exception e) {
                Debug.LogError($"{e}");
            }
        }
Exemple #5
0
        /// <summary>
        /// KeyDown event handler to record the new hotkey.
        /// </summary>
        /// <param name="keyEvent">Keypress event parameter</param>
        public void OnKeyDown(UIKeyEventParameter keyEvent)
        {
            Logging.Message("keydown ", isPrimed.ToString());

            // Only do this if we're primed and the keypress isn't a modifier key.
            if (isPrimed && !IsModifierKey(keyEvent.keycode))
            {
                // Variables.
                InputKey inputKey;

                // Use the event.
                keyEvent.Use();

                // If escape was entered, we don't change the code.
                if (keyEvent.keycode == KeyCode.Escape)
                {
                    inputKey = ModSettings.CurrentHotkey;
                }
                else
                {
                    // If backspace was pressed, then we blank the input; otherwise, encode the keypress.
                    inputKey = (keyEvent.keycode == KeyCode.Backspace) ? SavedInputKey.Empty : SavedInputKey.Encode(keyEvent.keycode, keyEvent.control, keyEvent.shift, keyEvent.alt);
                }

                // Apply our new key.
                ApplyKey(inputKey);
            }
        }
Exemple #6
0
 private static void EventKeyPressedHandler(UIComponent component, UIKeyEventParameter eventParam)
 {
     if (!char.IsControl(eventParam.character) && !char.IsDigit(eventParam.character))
     {
         eventParam.Use();
     }
 }
Exemple #7
0
 public void OnKeyDown(UIComponent comp, UIKeyEventParameter p)
 {
     if (!p.used)
     {
         if (p.keycode == KeyCode.Escape)
         {
             this.OnClosed();
             p.Use();
         }
         else if (p.keycode == KeyCode.Return)
         {
             p.Use();
             this.OnLoad();
         }
     }
 }
 private void OnPopupKeyDown(UIComponent component, UIKeyEventParameter p)
 {
     if (p.keycode == KeyCode.Escape)
     {
         ClosePopup();
         p.Use();
     }
 }
Exemple #9
0
        private void OnTextfieldKeyPress(UIComponent component, UIKeyEventParameter eventParam)
        {
            if (_ignoreEvents)
            {
                return;
            }
            char ch = eventParam.character;

            if (!char.IsControl(ch) && !char.IsDigit(ch) && (ch != '.' || (ch == '.' && _textfield.text.Contains("."))) && (ch != ',' || (ch == ',' && _textfield.text.Contains(","))))
            {
                eventParam.Use();
            }
            if (eventParam.keycode == KeyCode.Escape)
            {
                _textfield.Unfocus();
                eventParam.Use();
            }
        }
Exemple #10
0
 protected override void OnKeyDown(UIKeyEventParameter p)
 {
     if (p.keycode == KeyCode.Escape || p.keycode == KeyCode.Return)
     {
         p.Use();
         EventPanelClosing?.Invoke(this, new ThemesPanelClosingEventArgs(Category, Part));
     }
     base.OnKeyDown(p);
 }
        protected override void OnKeyDown(UIKeyEventParameter p)
        {
            if (p.used || OptionsKeymapping.isCapturing)
            {
                return;
            }

            if (p.keycode == KeyCode.Escape)
            {
                p.Use();
                m_cancel.SimulateClick();
            }
            else if (p.keycode == KeyCode.Return)
            {
                p.Use();
                m_ok.SimulateClick();
            }
        }
Exemple #12
0
        private void OnKeyPress(UIComponent component, UIKeyEventParameter parameter)
        {
            char ch = parameter.character;

            if (!char.IsControl(ch) && !char.IsDigit(ch))
            {
                parameter.Use();
            }
        }
 /// <summary>
 /// Called when a key is pressed.
 /// </summary>
 /// <param name="p">The event parameter.</param>
 protected override void OnKeyDown(UIKeyEventParameter p)
 {
     if (!p.used && p.keycode == KeyCode.Escape)
     {
         this.Close();
         p.Use();
     }
     base.OnKeyDown(p);
 }
        //TODO add more key bindings or refactor to mod key shortcut manager

        public void OnKeyDown(UIComponent comp, UIKeyEventParameter p)
        {
            if (p.used || p.keycode != KeyCode.Escape)
            {
                return;
            }
            Log._Debug("CustomKeyHandler::OnKeyDown(KeyCode.Escape) call");
            p.Use();
        }
Exemple #15
0
        private static void OnTextfieldKeyPress(UIComponent component, UIKeyEventParameter eventParam)
        {
            var  textfield = component as UITextField;
            char ch        = eventParam.character;

            if (!char.IsControl(ch) && !char.IsLetterOrDigit(ch) && !char.IsWhiteSpace(ch))
            {
                eventParam.Use();
            }
            if (eventParam.keycode != KeyCode.Escape)
            {
                return;
            }
            if (textfield != null)
            {
                textfield.Unfocus();
            }
            eventParam.Use();
        }
Exemple #16
0
        protected override void OnKeyDown(UIKeyEventParameter p)
        {
            if (Input.GetKey(KeyCode.Escape))
            {
                p.Use();
                Close();
            }

            base.OnKeyDown(p);
        }
 private static void KeyChange(UIComponent comp, UIKeyEventParameter eventParam)
 {
     if (eventParam.keycode != KeyCode.None)
     {
         hotkey = eventParam.keycode;
         eventParam.Use();
         SaveOptions();
     }
     UpdateText();
 }
        protected override void OnKeyDown(UIKeyEventParameter p)
        {
            if (Input.GetKey(KeyCode.Escape) || Input.GetKey(KeyCode.Return))
            {
                p.Use();
                UIView.PopModal();
                Hide();
            }

            base.OnKeyDown(p);
        }
Exemple #19
0
 public void OnKeyDown(UIComponent comp, UIKeyEventParameter p)
 {
     if (p.used || p.keycode != KeyCode.Escape)
     {
         return;
     }
     if (ProceduralObjectsLogic.instance != null)
     {
         ProceduralObjectsLogic.instance.EscapePressed();
     }
     p.Use();
 }
Exemple #20
0
        private void RenameBrushTextField_eventKeyPress(UIComponent component, UIKeyEventParameter parameter)
        {
            char ch = parameter.character;

            if (!char.IsControl(ch) && !char.IsWhiteSpace(ch) && !char.IsLetterOrDigit(ch))
            {
                parameter.Use();
            }
            if (parameter.keycode == KeyCode.Escape)
            {
                renameBrushTextField.Unfocus();
            }
        }
        private static void OnBindingKeyDown(UIComponent comp, UIKeyEventParameter p)
        {
            if (m_EditingBinding != null && !IsModifierKey(p.keycode))
            {
                p.Use();
                UIView.PopModal();
                KeyCode  keycode  = p.keycode;
                InputKey inputKey = (p.keycode == KeyCode.Escape) ? (InputKey)m_EditingBinding.inputKey : SavedInputKey.Encode(keycode, p.control, p.shift, p.alt);
                if (p.keycode == KeyCode.Backspace)
                {
                    inputKey = 0;
                }
                List <Shortcut> currentAssigned;
                if (!IsAlreadyBound(m_EditingBinding, inputKey, out currentAssigned))
                {
                    if (m_EditingBinding.inputKey != inputKey)
                    {
                        m_EditingBinding.inputKey = inputKey;
                        Shortcut.SaveShorcuts();
                    }

                    UITextComponent uITextComponent = p.source as UITextComponent;
                    uITextComponent.text = SavedInputKey.ToLocalizedString("KEYNAME", inputKey);
                    m_EditingBinding     = null;
                }
                else
                {
                    string arg     = (currentAssigned.Count <= 1) ? currentAssigned[0].name : Locale.Get("KEYMAPPING_MULTIPLE");
                    string message = string.Format(Locale.Get("CONFIRM_REBINDKEY", "Message"), SavedInputKey.ToLocalizedString("KEYNAME", inputKey), arg);
                    ConfirmPanel.ShowModal(Locale.Get("CONFIRM_REBINDKEY", "Title"), message, delegate(UIComponent c, int ret)
                    {
                        if (ret == 1)
                        {
                            for (int i = 0; i < currentAssigned.Count; i++)
                            {
                                currentAssigned[i].inputKey = 0;
                            }
                        }

                        m_EditingBinding.inputKey = inputKey;
                        Shortcut.SaveShorcuts();
                        RefreshKeyMapping();

                        UITextComponent uITextComponent = p.source as UITextComponent;
                        uITextComponent.text            = SavedInputKey.ToLocalizedString("KEYNAME", m_EditingBinding.inputKey);
                        m_EditingBinding = null;
                    });
                }
            }
        }
 protected override void OnKeyDown(UIKeyEventParameter p)
 {
     if (!p.used && p.keycode == KeyCode.Escape)
     {
         ModLogger.Debug("Hiding WorkshopMonitor window");
         this.Hide();
         if (this.parent != null)
         {
             this.parent.Focus();
         }
         p.Use();
         ModLogger.Debug("WorkshopMonitor window hidden");
     }
     base.OnKeyDown(p);
 }
Exemple #23
0
        private void OnTextfieldKeyPress(UIComponent component, UIKeyEventParameter eventParam)
        {
            if (_ignoreEvents)
            {
                return;
            }
            var  textfield = component as UITextField;
            char ch        = eventParam.character;

            if (textfield != null && (!char.IsControl(ch) && !char.IsDigit(ch) &&
                                      (ch != '.' || (ch == '.' && textfield.text.Contains("."))) &&
                                      (ch != ',' || (ch == ',' && textfield.text.Contains(","))) &&
                                      (ch != '-' || (ch == '-' && textfield.text.Contains("-")))))
            {
                eventParam.Use();
            }

            if (eventParam.keycode != KeyCode.Escape)
            {
                return;
            }
            textfield?.Unfocus();
            eventParam.Use();
        }
Exemple #24
0
 private void OnBindingKeyDown(UIComponent comp, UIKeyEventParameter p)
 {
     if (this.editingBinding != null && !this.IsModifierKey(p.keycode))
     {
         p.Use();
         UIView.PopModal();
         KeyCode  keycode = p.keycode;
         InputKey value   = (p.keycode == KeyCode.Escape) ? this.editingBinding.value : SavedInputKey.Encode(keycode, p.control, p.shift, p.alt);
         if (p.keycode == KeyCode.Backspace)
         {
             value = SavedInputKey.Empty;
         }
         this.editingBinding.value          = value;
         (p.source as UITextComponent).text = this.editingBinding.ToLocalizedString("KEYNAME");
         this.editingBinding = null;
     }
 }
Exemple #25
0
 private void OnBindingKeyDown(UIComponent comp, UIKeyEventParameter p)
 {
     if (this.m_EditingBinding != null && !this.IsModifierKey(p.keycode))
     {
         p.Use();
         UIView.PopModal();
         KeyCode  keycode  = p.keycode;
         InputKey inputKey = (p.keycode == KeyCode.Escape) ? this.m_EditingBinding.value : SavedInputKey.Encode(keycode, p.control, p.shift, p.alt);
         if (p.keycode == KeyCode.Backspace)
         {
             inputKey = SavedInputKey.Empty;
         }
         List <SavedInputKey> currentAssigned;
         if (!this.IsAlreadyBound(this.m_EditingBinding, inputKey, this.m_EditingBindingCategory, out currentAssigned))
         {
             this.m_EditingBinding.value = inputKey;
             UITextComponent uITextComponent = p.source as UITextComponent;
             uITextComponent.text          = this.m_EditingBinding.ToLocalizedString("KEYNAME");
             this.m_EditingBinding         = null;
             this.m_EditingBindingCategory = string.Empty;
         }
         else
         {
             string arg     = (currentAssigned.Count <= 1) ? Locale.Get("KEYMAPPING", currentAssigned[0].name) : Locale.Get("KEYMAPPING_MULTIPLE");
             string message = string.Format(Locale.Get("CONFIRM_REBINDKEY", "Message"), SavedInputKey.ToLocalizedString("KEYNAME", inputKey), arg);
             ConfirmPanel.ShowModal(Locale.Get("CONFIRM_REBINDKEY", "Title"), message, delegate(UIComponent c, int ret)
             {
                 if (ret == 1)
                 {
                     this.m_EditingBinding.value = inputKey;
                     for (int i = 0; i < currentAssigned.Count; i++)
                     {
                         currentAssigned[i].value = SavedInputKey.Empty;
                     }
                     this.RefreshKeyMapping();
                 }
                 UITextComponent uITextComponent2 = p.source as UITextComponent;
                 uITextComponent2.text            = this.m_EditingBinding.ToLocalizedString("KEYNAME");
                 this.m_EditingBinding            = null;
                 this.m_EditingBindingCategory    = string.Empty;
             });
         }
     }
 }
 protected void OnBindingKeyDown(UIComponent comp, UIKeyEventParameter p)
 {
     if (this.m_EditingBinding != null && !this.IsModifierKey(p.keycode))
     {
         p.Use();
         UIView.PopModal();
         KeyCode  keycode  = p.keycode;
         InputKey inputKey = (p.keycode == KeyCode.Escape) ? this.m_EditingBinding.value : SavedInputKey.Encode(keycode, p.control, p.shift, p.alt);
         if (p.keycode == KeyCode.Backspace)
         {
             inputKey = SavedInputKey.Empty;
         }
         this.m_EditingBinding.value = inputKey;
         UITextComponent uITextComponent = p.source as UITextComponent;
         uITextComponent.text          = this.m_EditingBinding.ToLocalizedString("KEYNAME");
         this.m_EditingBinding         = null;
         this.m_EditingBindingCategory = string.Empty;
     }
 }
Exemple #27
0
        private void ProbabilityTextField_eventKeyPress(UIComponent component, UIKeyEventParameter eventParam)
        {
            char ch = eventParam.character;

            if (!char.IsControl(ch) && !char.IsDigit(ch))
            {
                eventParam.Use();
            }
            if (float.TryParse(probabilityTextField.text, out float result) && result > 100)
            {
                probabilityTextField.eventTextChanged -= ProbabilityTextField_eventTextChanged;
                probabilityTextField.text              = 100.ToString();
                probabilityTextField.eventTextChanged += ProbabilityTextField_eventTextChanged;
            }
            if (eventParam.keycode == KeyCode.Escape)
            {
                probabilityTextField.Unfocus();
            }
        }
Exemple #28
0
        private void OnBindingKeyDown(UIComponent comp, UIKeyEventParameter p)
        {
            if (!((SavedValue)this.m_EditingBinding != (SavedValue)null) || this.IsModifierKey(p.keycode))
            {
                return;
            }
            p.Use();
            UIView.PopModal();
            KeyCode  keycode  = p.keycode;
            InputKey inputKey = p.keycode == KeyCode.Escape ? this.m_EditingBinding.value : SavedInputKey.Encode(keycode, p.control, p.shift, p.alt);

            if (p.keycode == KeyCode.Backspace)
            {
                inputKey = SavedInputKey.Empty;
            }
            this.m_EditingBinding.value        = inputKey;
            (p.source as UITextComponent).text = this.m_EditingBinding.ToLocalizedString("KEYNAME");
            this.m_EditingBinding = (SavedInputKey)null;
        }
Exemple #29
0
        private void OnBindingKeyDown(UIComponent comp, UIKeyEventParameter evParam)
        {
            try {
                // This will only work if the user clicked the modify button
                // otherwise no effect
                if (!currentlyEditedBinding_.HasValue || Keybind.IsModifierKey(evParam.keycode))
                {
                    return;
                }

                evParam.Use();                               // Consume the event
                var editedBinding = currentlyEditedBinding_; // will be nulled by closing modal
                UIView.PopModal();

                var keybindButton = evParam.source as UIButton;
                var inputKey      = SavedInputKey.Encode(evParam.keycode, evParam.control, evParam.shift, evParam.alt);
                var editable      = (KeybindSetting.Editable)evParam.source.objectUserData;
                var category      = editable.Target.Category;

                if (evParam.keycode != KeyCode.Escape)
                {
                    // Check the key conflict
                    var maybeConflict = FindConflict(editedBinding.Value, inputKey, category);
                    if (maybeConflict != string.Empty)
                    {
                        var message = Translation.Options.Get("Keybinds.Dialog.Text:Keybind conflict")
                                      + "\n\n" + maybeConflict;
                        Log.Info($"Keybind conflict: {message}");
                        UIView.library
                        .ShowModal <ExceptionPanel>("ExceptionPanel")
                        .SetMessage("Key Conflict", message, false);
                    }
                    else
                    {
                        editedBinding.Value.TargetKey.value = inputKey;
                        editedBinding.Value.Target.NotifyKeyChanged();
                    }
                }

                keybindButton.text      = Keybind.ToLocalizedString(editedBinding.Value.TargetKey);
                currentlyEditedBinding_ = null;
            } catch (Exception e) { Log.Error($"{e}"); }
        }
Exemple #30
0
        private void OnBindingKeyDown(UIComponent comp, UIKeyEventParameter p)
        {
            if (EditBinding != null && !IsModifierKey(p.keycode))
            {
                p.Use();
                UIView.PopModal();

                if (p.keycode == KeyCode.Backspace)
                {
                    EditBinding.value = SavedInputKey.Empty;
                }
                else if (p.keycode != KeyCode.Escape)
                {
                    EditBinding.value = SavedInputKey.Encode(p.keycode, p.control, p.shift, p.alt);
                }

                (p.source as UITextComponent).text = EditBinding.ToLocalizedString("KEYNAME");
                EditBinding = null;
            }
        }
 private void SearchConfirm(UIComponent component, UIKeyEventParameter eventParam)
 {
     if (eventParam.keycode == KeyCode.Return) {
         Debug.Print("Search Confirmed");
         SearchConfirm(null, this.m_textField.text);
         eventParam.Use();
     }
 }
 protected override void OnKeyDown(UIKeyEventParameter p)
 {
     if (!p.used && p.keycode == KeyCode.Escape)
     {
         ModLogger.Debug("Hiding WorkshopMonitor window");
         this.Hide();
         if (this.parent != null)
             this.parent.Focus();
         p.Use();
         ModLogger.Debug("WorkshopMonitor window hidden");
     }
     base.OnKeyDown(p);
 }
        protected override void OnKeyDown(UIKeyEventParameter p)
        {
            if (Input.GetKey(KeyCode.Escape))
            {
                p.Use();
                UIView.PopModal();
                Hide();
            }

            base.OnKeyDown(p);
        }