Exemple #1
0
 private void ClickSelect()
 {
     _texturePicker.Show(tex =>
     {
         _propTexture.sprite = Utilities.LoadSpriteFromTexture(tex);
         OnChangeCallback?.Invoke(tex);
     });
 }
Exemple #2
0
 public static void UnregisterChangeEventCallback(OnChangeCallback callback)
 {
     onChangeCallbacks.Remove(callback);
 }
Exemple #3
0
 public static void RegisterChangeEventCallback(OnChangeCallback callback)
 {
     onChangeCallbacks.Add(callback);
 }
Exemple #4
0
 private void BoolChanged(bool val)
 {
     OnChangeCallback?.Invoke(val);
 }
Exemple #5
0
 private void SliderChanged(float val)
 {
     OnChangeCallback?.Invoke(val);
 }
 private void ColorChanged(Color color)
 {
     OnChangeCallback?.Invoke(color);
 }
 public static void UnregisterChangeEventCallback(OnChangeCallback callback)
 {
     onChangeCallbacks.Remove(callback);
 }
 public static void RegisterChangeEventCallback(OnChangeCallback callback)
 {
     onChangeCallbacks.Add(callback);
 }
Exemple #9
0
        public bool ProcessKey(Keys key)
        {
            string left  = Text.Substring(0, caretPosition);
            string right = Text.Substring(caretPosition);
            string s     = "";
            int    i     = 0;

            switch (key)
            {
            case Keys.Left:
                caretPosition = Math.Min(Text.Length, Math.Max(0, caretPosition - 1));
                break;

            case Keys.Right:
                caretPosition = Math.Min(Text.Length, Math.Max(0, caretPosition + 1));
                break;

            case Keys.A:
            case Keys.B:
            case Keys.C:
            case Keys.D:
            case Keys.E:
            case Keys.F:
            case Keys.G:
            case Keys.H:
            case Keys.I:
            case Keys.J:
            case Keys.K:
            case Keys.L:
            case Keys.M:
            case Keys.N:
            case Keys.O:
            case Keys.P:
            case Keys.Q:
            case Keys.R:
            case Keys.S:
            case Keys.T:
            case Keys.U:
            case Keys.V:
            case Keys.W:
            case Keys.X:
            case Keys.Y:
            case Keys.Z:
                s = key.ToString();
                if (!Main.KeyboardState.IsKeyDown(Keys.LeftShift) && !Main.KeyboardState.IsKeyDown(Keys.RightShift))
                {
                    s = s.ToLower();
                }

                Text = left + s + right;
                OnChangeCallback?.Invoke(this);
                caretPosition += 1;
                break;

            case Keys.Space:
                Text = left + " " + right;
                OnChangeCallback?.Invoke(this);
                caretPosition += 1;
                break;

            case Keys.Add:
            case Keys.OemPlus:
                Text = left + "+" + right;
                OnChangeCallback?.Invoke(this);
                caretPosition += 1;
                break;

            case Keys.Subtract:
            case Keys.OemMinus:
                Text = left + "-" + right;
                OnChangeCallback?.Invoke(this);
                caretPosition += 1;
                break;

            case Keys.Decimal:
            case Keys.OemComma:
                Text = left + "," + right;
                OnChangeCallback?.Invoke(this);
                caretPosition += 1;
                break;

            case Keys.OemPeriod:
                Text = left + "." + right;
                OnChangeCallback?.Invoke(this);
                caretPosition += 1;
                break;

            case Keys.Multiply:
                Text = left + "*" + right;
                OnChangeCallback?.Invoke(this);
                caretPosition += 1;
                break;

            case Keys.Divide:
                Text = left + "/" + right;
                OnChangeCallback?.Invoke(this);
                caretPosition += 1;
                break;

            case Keys.D1:
            case Keys.D2:
            case Keys.D3:
            case Keys.D4:
            case Keys.D5:
            case Keys.D6:
            case Keys.D7:
            case Keys.D8:
            case Keys.D9:
            case Keys.D0:
            case Keys.NumPad1:
            case Keys.NumPad2:
            case Keys.NumPad3:
            case Keys.NumPad4:
            case Keys.NumPad5:
            case Keys.NumPad6:
            case Keys.NumPad7:
            case Keys.NumPad8:
            case Keys.NumPad9:
            case Keys.NumPad0:
                s = key.ToString().Substring(key.ToString().Length - 1);
                i = int.Parse(s);

                if (Main.KeyboardState.IsKeyDown(Keys.LeftShift) || Main.KeyboardState.IsKeyDown(Keys.RightShift))
                {
                    switch (i)
                    {
                    case 1: s = "!"; break;

                    case 2: s = "\""; break;

                    //case 3: s = "§"; break;
                    case 4: s = "$"; break;

                    case 5: s = "%"; break;

                    case 6: s = "&"; break;

                    case 7: s = "/"; break;

                    case 8: s = "("; break;

                    case 9: s = ")"; break;

                    case 0: s = "="; break;
                    }
                }

                Text = left + s + right;
                OnChangeCallback?.Invoke(this);
                caretPosition += 1;
                break;

            case Keys.Delete:
                if (right.Length > 0)
                {
                    Text = left + right.Substring(1);
                    OnChangeCallback?.Invoke(this);
                }
                break;

            case Keys.Back:
                if (left.Length > 0)
                {
                    Text = left.Substring(0, left.Length - 1) + right;
                    OnChangeCallback?.Invoke(this);
                    caretPosition -= 1;
                }
                break;

            case Keys.Enter:
                OnSubmitCallback?.Invoke(this);
                Main.SetFocus(null);
                break;

            default:
                return(false);
            }

            return(true);
        }