using System; using System.Runtime.CompilerServices; using System.Runtime.InteropServices; using UnityEngine.Scripting; namespace UnityEngine { // Token: 0x02000254 RID: 596 [StructLayout(LayoutKind.Sequential)] public sealed class Event { // Token: 0x06002867 RID: 10343 RVA: 0x0002E7B0 File Offset: 0x0002C9B0 public Event() { this.Init(0); } // Token: 0x06002868 RID: 10344 RVA: 0x0002E7C0 File Offset: 0x0002C9C0 public Event(int displayIndex) { this.Init(displayIndex); } // Token: 0x06002869 RID: 10345 RVA: 0x0002E7D0 File Offset: 0x0002C9D0 public Event(Event other) { if (other == null) { throw new ArgumentException("Event to copy from is null."); } this.InitCopy(other); } // Token: 0x0600286A RID: 10346 RVA: 0x0002E7F4 File Offset: 0x0002C9F4 private Event(IntPtr ptr) { this.InitPtr(ptr); } // Token: 0x0600286B RID: 10347 RVA: 0x0002E804 File Offset: 0x0002CA04 ~Event() { this.Cleanup(); } // Token: 0x0600286C RID: 10348 RVA: 0x0002E834 File Offset: 0x0002CA34 internal static void CleanupRoots() { Event.s_Current = null; Event.s_MasterEvent = null; } // Token: 0x17000987 RID: 2439 // (get) Token: 0x0600286D RID: 10349 RVA: 0x0002E844 File Offset: 0x0002CA44 // (set) Token: 0x0600286E RID: 10350 RVA: 0x0002E864 File Offset: 0x0002CA64 public Vector2 mousePosition { get { Vector2 vector; this.Internal_GetMousePosition(out vector); return vector; } set { this.Internal_SetMousePosition(value); } } // Token: 0x17000988 RID: 2440 // (get) Token: 0x0600286F RID: 10351 RVA: 0x0002E870 File Offset: 0x0002CA70 // (set) Token: 0x06002870 RID: 10352 RVA: 0x0002E890 File Offset: 0x0002CA90 public Vector2 delta { get { Vector2 vector; this.Internal_GetMouseDelta(out vector); return vector; } set { this.Internal_SetMouseDelta(value); } } // Token: 0x17000989 RID: 2441 // (get) Token: 0x06002871 RID: 10353 RVA: 0x0002E89C File Offset: 0x0002CA9C // (set) Token: 0x06002872 RID: 10354 RVA: 0x0002E8C0 File Offset: 0x0002CAC0 [Obsolete("Use HandleUtility.GUIPointToWorldRay(Event.current.mousePosition);", true)] public Ray mouseRay { get { return new Ray(Vector3.up, Vector3.up); } set { } } // Token: 0x1700098A RID: 2442 // (get) Token: 0x06002873 RID: 10355 RVA: 0x0002E8C4 File Offset: 0x0002CAC4 // (set) Token: 0x06002874 RID: 10356 RVA: 0x0002E8E8 File Offset: 0x0002CAE8 public bool shift { get { return (this.modifiers & EventModifiers.Shift) != EventModifiers.None; } set { if (!value) { this.modifiers &= ~EventModifiers.Shift; } else { this.modifiers |= EventModifiers.Shift; } } } // Token: 0x1700098B RID: 2443 // (get) Token: 0x06002875 RID: 10357 RVA: 0x0002E914 File Offset: 0x0002CB14 // (set) Token: 0x06002876 RID: 10358 RVA: 0x0002E938 File Offset: 0x0002CB38 public bool control { get { return (this.modifiers & EventModifiers.Control) != EventModifiers.None; } set { if (!value) { this.modifiers &= ~EventModifiers.Control; } else { this.modifiers |= EventModifiers.Control; } } } // Token: 0x1700098C RID: 2444 // (get) Token: 0x06002877 RID: 10359 RVA: 0x0002E964 File Offset: 0x0002CB64 // (set) Token: 0x06002878 RID: 10360 RVA: 0x0002E988 File Offset: 0x0002CB88 public bool alt { get { return (this.modifiers & EventModifiers.Alt) != EventModifiers.None; } set { if (!value) { this.modifiers &= ~EventModifiers.Alt; } else { this.modifiers |= EventModifiers.Alt; } } } // Token: 0x1700098D RID: 2445 // (get) Token: 0x06002879 RID: 10361 RVA: 0x0002E9B4 File Offset: 0x0002CBB4 // (set) Token: 0x0600287A RID: 10362 RVA: 0x0002E9D8 File Offset: 0x0002CBD8 public bool command { get { return (this.modifiers & EventModifiers.Command) != EventModifiers.None; } set { if (!value) { this.modifiers &= ~EventModifiers.Command; } else { this.modifiers |= EventModifiers.Command; } } } // Token: 0x1700098E RID: 2446 // (get) Token: 0x0600287B RID: 10363 RVA: 0x0002EA04 File Offset: 0x0002CC04 // (set) Token: 0x0600287C RID: 10364 RVA: 0x0002EA28 File Offset: 0x0002CC28 public bool capsLock { get { return (this.modifiers & EventModifiers.CapsLock) != EventModifiers.None; } set { if (!value) { this.modifiers &= ~EventModifiers.CapsLock; } else { this.modifiers |= EventModifiers.CapsLock; } } } // Token: 0x1700098F RID: 2447 // (get) Token: 0x0600287D RID: 10365 RVA: 0x0002EA54 File Offset: 0x0002CC54 // (set) Token: 0x0600287E RID: 10366 RVA: 0x0002EA78 File Offset: 0x0002CC78 public bool numeric { get { return (this.modifiers & EventModifiers.Numeric) != EventModifiers.None; } set { if (!value) { this.modifiers &= ~EventModifiers.Shift; } else { this.modifiers |= EventModifiers.Shift; } } } // Token: 0x17000990 RID: 2448 // (get) Token: 0x0600287F RID: 10367 RVA: 0x0002EAA4 File Offset: 0x0002CCA4 public bool functionKey { get { return (this.modifiers & EventModifiers.FunctionKey) != EventModifiers.None; } } // Token: 0x17000991 RID: 2449 // (get) Token: 0x06002880 RID: 10368 RVA: 0x0002EAC8 File Offset: 0x0002CCC8 // (set) Token: 0x06002881 RID: 10369 RVA: 0x0002EAE4 File Offset: 0x0002CCE4 public static Event current { get { return Event.s_Current; } set { if (value != null) { Event.s_Current = value; } else { Event.s_Current = Event.s_MasterEvent; } Event.Internal_SetNativeEvent(Event.s_Current.m_Ptr); } } // Token: 0x06002882 RID: 10370 RVA: 0x0002EB14 File Offset: 0x0002CD14 [RequiredByNativeCode] private static void Internal_MakeMasterEventCurrent(int displayIndex) { if (Event.s_MasterEvent == null) { Event.s_MasterEvent = new Event(displayIndex); } Event.s_MasterEvent.displayIndex = displayIndex; Event.s_Current = Event.s_MasterEvent; Event.Internal_SetNativeEvent(Event.s_MasterEvent.m_Ptr); } // Token: 0x17000992 RID: 2450 // (get) Token: 0x06002883 RID: 10371 RVA: 0x0002EB50 File Offset: 0x0002CD50 public bool isKey { get { EventType type = this.type; return type == EventType.KeyDown || type == EventType.KeyUp; } } // Token: 0x17000993 RID: 2451 // (get) Token: 0x06002884 RID: 10372 RVA: 0x0002EB7C File Offset: 0x0002CD7C public bool isMouse { get { EventType type = this.type; return type == EventType.MouseMove || type == EventType.MouseDown || type == EventType.MouseUp || type == EventType.MouseDrag || type == EventType.ContextClick || type == EventType.MouseEnterWindow || type == EventType.MouseLeaveWindow; } } // Token: 0x17000994 RID: 2452 // (get) Token: 0x06002885 RID: 10373 RVA: 0x0002EBCC File Offset: 0x0002CDCC public bool isScrollWheel { get { EventType type = this.type; return type == EventType.ScrollWheel || type == EventType.ScrollWheel; } } // Token: 0x06002886 RID: 10374 RVA: 0x0002EBF8 File Offset: 0x0002CDF8 public static Event KeyboardEvent(string key) { Event @event = new Event(0); @event.type = EventType.KeyDown; Event event2; if (string.IsNullOrEmpty(key)) { event2 = @event; } else { int num = 0; bool flag; do { flag = true; if (num >= key.Length) { break; } char c = key[num]; switch (c) { case '#': @event.modifiers |= EventModifiers.Shift; num++; break; default: if (c != '^') { flag = false; } else { @event.modifiers |= EventModifiers.Control; num++; } break; case '%': @event.modifiers |= EventModifiers.Command; num++; break; case '&': @event.modifiers |= EventModifiers.Alt; num++; break; } } while (flag); string text = key.Substring(num, key.Length - num).ToLower(); switch (text) { case "[0]": @event.character = '0'; @event.keyCode = KeyCode.Keypad0; goto IL_A83; case "[1]": @event.character = '1'; @event.keyCode = KeyCode.Keypad1; goto IL_A83; case "[2]": @event.character = '2'; @event.keyCode = KeyCode.Keypad2; goto IL_A83; case "[3]": @event.character = '3'; @event.keyCode = KeyCode.Keypad3; goto IL_A83; case "[4]": @event.character = '4'; @event.keyCode = KeyCode.Keypad4; goto IL_A83; case "[5]": @event.character = '5'; @event.keyCode = KeyCode.Keypad5; goto IL_A83; case "[6]": @event.character = '6'; @event.keyCode = KeyCode.Keypad6; goto IL_A83; case "[7]": @event.character = '7'; @event.keyCode = KeyCode.Keypad7; goto IL_A83; case "[8]": @event.character = '8'; @event.keyCode = KeyCode.Keypad8; goto IL_A83; case "[9]": @event.character = '9'; @event.keyCode = KeyCode.Keypad9; goto IL_A83; case "[.]": @event.character = '.'; @event.keyCode = KeyCode.KeypadPeriod; goto IL_A83; case "[/]": @event.character = '/'; @event.keyCode = KeyCode.KeypadDivide; goto IL_A83; case "[-]": @event.character = '-'; @event.keyCode = KeyCode.KeypadMinus; goto IL_A83; case "[+]": @event.character = '+'; @event.keyCode = KeyCode.KeypadPlus; goto IL_A83; case "[=]": @event.character = '='; @event.keyCode = KeyCode.KeypadEquals; goto IL_A83; case "[equals]": @event.character = '='; @event.keyCode = KeyCode.KeypadEquals; goto IL_A83; case "[enter]": @event.character = '\n'; @event.keyCode = KeyCode.KeypadEnter; goto IL_A83; case "up": @event.keyCode = KeyCode.UpArrow; @event.modifiers |= EventModifiers.FunctionKey; goto IL_A83; case "down": @event.keyCode = KeyCode.DownArrow; @event.modifiers |= EventModifiers.FunctionKey; goto IL_A83; case "left": @event.keyCode = KeyCode.LeftArrow; @event.modifiers |= EventModifiers.FunctionKey; goto IL_A83; case "right": @event.keyCode = KeyCode.RightArrow; @event.modifiers |= EventModifiers.FunctionKey; goto IL_A83; case "insert": @event.keyCode = KeyCode.Insert; @event.modifiers |= EventModifiers.FunctionKey; goto IL_A83; case "home": @event.keyCode = KeyCode.Home; @event.modifiers |= EventModifiers.FunctionKey; goto IL_A83; case "end": @event.keyCode = KeyCode.End; @event.modifiers |= EventModifiers.FunctionKey; goto IL_A83; case "pgup": @event.keyCode = KeyCode.PageDown; @event.modifiers |= EventModifiers.FunctionKey; goto IL_A83; case "page up": @event.keyCode = KeyCode.PageUp; @event.modifiers |= EventModifiers.FunctionKey; goto IL_A83; case "pgdown": @event.keyCode = KeyCode.PageUp; @event.modifiers |= EventModifiers.FunctionKey; goto IL_A83; case "page down": @event.keyCode = KeyCode.PageDown; @event.modifiers |= EventModifiers.FunctionKey; goto IL_A83; case "backspace": @event.keyCode = KeyCode.Backspace; @event.modifiers |= EventModifiers.FunctionKey; goto IL_A83; case "delete": @event.keyCode = KeyCode.Delete; @event.modifiers |= EventModifiers.FunctionKey; goto IL_A83; case "tab": @event.keyCode = KeyCode.Tab; goto IL_A83; case "f1": @event.keyCode = KeyCode.F1; @event.modifiers |= EventModifiers.FunctionKey; goto IL_A83; case "f2": @event.keyCode = KeyCode.F2; @event.modifiers |= EventModifiers.FunctionKey; goto IL_A83; case "f3": @event.keyCode = KeyCode.F3; @event.modifiers |= EventModifiers.FunctionKey; goto IL_A83; case "f4": @event.keyCode = KeyCode.F4; @event.modifiers |= EventModifiers.FunctionKey; goto IL_A83; case "f5": @event.keyCode = KeyCode.F5; @event.modifiers |= EventModifiers.FunctionKey; goto IL_A83; case "f6": @event.keyCode = KeyCode.F6; @event.modifiers |= EventModifiers.FunctionKey; goto IL_A83; case "f7": @event.keyCode = KeyCode.F7; @event.modifiers |= EventModifiers.FunctionKey; goto IL_A83; case "f8": @event.keyCode = KeyCode.F8; @event.modifiers |= EventModifiers.FunctionKey; goto IL_A83; case "f9": @event.keyCode = KeyCode.F9; @event.modifiers |= EventModifiers.FunctionKey; goto IL_A83; case "f10": @event.keyCode = KeyCode.F10; @event.modifiers |= EventModifiers.FunctionKey; goto IL_A83; case "f11": @event.keyCode = KeyCode.F11; @event.modifiers |= EventModifiers.FunctionKey; goto IL_A83; case "f12": @event.keyCode = KeyCode.F12; @event.modifiers |= EventModifiers.FunctionKey; goto IL_A83; case "f13": @event.keyCode = KeyCode.F13; @event.modifiers |= EventModifiers.FunctionKey; goto IL_A83; case "f14": @event.keyCode = KeyCode.F14; @event.modifiers |= EventModifiers.FunctionKey; goto IL_A83; case "f15": @event.keyCode = KeyCode.F15; @event.modifiers |= EventModifiers.FunctionKey; goto IL_A83; case "[esc]": @event.keyCode = KeyCode.Escape; goto IL_A83; case "return": @event.character = '\n'; @event.keyCode = KeyCode.Return; @event.modifiers &= ~EventModifiers.FunctionKey; goto IL_A83; case "space": @event.keyCode = KeyCode.Space; @event.character = ' '; @event.modifiers &= ~EventModifiers.FunctionKey; goto IL_A83; } if (text.Length != 1) { try { @event.keyCode = (KeyCode)Enum.Parse(typeof(KeyCode), text, true); } catch (ArgumentException) { Debug.LogError(UnityString.Format("Unable to find key name that matches '{0}'", new object[] { text })); } } else { @event.character = text.ToLower()[0]; @event.keyCode = (KeyCode)@event.character; if (@event.modifiers != EventModifiers.None) { @event.character = '\0'; } } IL_A83: event2 = @event; } return event2; } // Token: 0x06002887 RID: 10375 RVA: 0x0002F6A0 File Offset: 0x0002D8A0 public override int GetHashCode() { int num = 1; if (this.isKey) { num = (int)((ushort)this.keyCode); } if (this.isMouse) { num = this.mousePosition.GetHashCode(); } return (num * 37) | (int)this.modifiers; } // Token: 0x06002888 RID: 10376 RVA: 0x0002F6F8 File Offset: 0x0002D8F8 public override bool Equals(object obj) { bool flag; if (obj == null) { flag = false; } else if (object.ReferenceEquals(this, obj)) { flag = true; } else if (obj.GetType() != base.GetType()) { flag = false; } else { Event @event = (Event)obj; if (this.type != @event.type || (this.modifiers & ~EventModifiers.CapsLock) != (@event.modifiers & ~EventModifiers.CapsLock)) { flag = false; } else if (this.isKey) { flag = this.keyCode == @event.keyCode; } else { flag = this.isMouse && this.mousePosition == @event.mousePosition; } } return flag; } // Token: 0x06002889 RID: 10377 RVA: 0x0002F7C0 File Offset: 0x0002D9C0 public override string ToString() { string text; if (this.isKey) { if (this.character == '\0') { text = UnityString.Format("Event:{0} Character:\\0 Modifiers:{1} KeyCode:{2}", new object[] { this.type, this.modifiers, this.keyCode }); } else { text = string.Concat(new object[] { "Event:", this.type, " Character:", (int)this.character, " Modifiers:", this.modifiers, " KeyCode:", this.keyCode }); } } else if (this.isMouse) { text = UnityString.Format("Event: {0} Position: {1} Modifiers: {2}", new object[] { this.type, this.mousePosition, this.modifiers }); } else if (this.type == EventType.ExecuteCommand || this.type == EventType.ValidateCommand) { text = UnityString.Format("Event: {0} \"{1}\"", new object[] { this.type, this.commandName }); } else { text = "" + this.type; } return text; } // Token: 0x0600288A RID: 10378 RVA: 0x0002F93C File Offset: 0x0002DB3C public void Use() { if (this.type == EventType.Repaint || this.type == EventType.Layout) { Debug.LogWarning(UnityString.Format("Event.Use() should not be called for events of type {0}", new object[] { this.type })); } this.Internal_Use(); } // Token: 0x0600288B RID: 10379 [ThreadAndSerializationSafe] [GeneratedByOldBindingsGenerator] [MethodImpl(MethodImplOptions.InternalCall)] private extern void Init(int displayIndex); // Token: 0x0600288C RID: 10380 [ThreadAndSerializationSafe] [GeneratedByOldBindingsGenerator] [MethodImpl(MethodImplOptions.InternalCall)] private extern void Cleanup(); // Token: 0x0600288D RID: 10381 [ThreadAndSerializationSafe] [GeneratedByOldBindingsGenerator] [MethodImpl(MethodImplOptions.InternalCall)] private extern void InitCopy(Event other); // Token: 0x0600288E RID: 10382 [ThreadAndSerializationSafe] [GeneratedByOldBindingsGenerator] [MethodImpl(MethodImplOptions.InternalCall)] private extern void InitPtr(IntPtr ptr); // Token: 0x0600288F RID: 10383 [ThreadAndSerializationSafe] [GeneratedByOldBindingsGenerator] [MethodImpl(MethodImplOptions.InternalCall)] internal extern void CopyFromPtr(IntPtr ptr); // Token: 0x17000995 RID: 2453 // (get) Token: 0x06002890 RID: 10384 public extern EventType rawType { [GeneratedByOldBindingsGenerator] [MethodImpl(MethodImplOptions.InternalCall)] get; } // Token: 0x17000996 RID: 2454 // (get) Token: 0x06002891 RID: 10385 // (set) Token: 0x06002892 RID: 10386 public extern EventType type { [GeneratedByOldBindingsGenerator] [MethodImpl(MethodImplOptions.InternalCall)] get; [GeneratedByOldBindingsGenerator] [MethodImpl(MethodImplOptions.InternalCall)] set; } // Token: 0x06002893 RID: 10387 [GeneratedByOldBindingsGenerator] [MethodImpl(MethodImplOptions.InternalCall)] public extern EventType GetTypeForControl(int controlID); // Token: 0x06002894 RID: 10388 RVA: 0x0002F990 File Offset: 0x0002DB90 private void Internal_SetMousePosition(Vector2 value) { Event.INTERNAL_CALL_Internal_SetMousePosition(this, ref value); } // Token: 0x06002895 RID: 10389 [GeneratedByOldBindingsGenerator] [MethodImpl(MethodImplOptions.InternalCall)] private static extern void INTERNAL_CALL_Internal_SetMousePosition(Event self, ref Vector2 value); // Token: 0x06002896 RID: 10390 [GeneratedByOldBindingsGenerator] [MethodImpl(MethodImplOptions.InternalCall)] private extern void Internal_GetMousePosition(out Vector2 value); // Token: 0x06002897 RID: 10391 RVA: 0x0002F99C File Offset: 0x0002DB9C private void Internal_SetMouseDelta(Vector2 value) { Event.INTERNAL_CALL_Internal_SetMouseDelta(this, ref value); } // Token: 0x06002898 RID: 10392 [GeneratedByOldBindingsGenerator] [MethodImpl(MethodImplOptions.InternalCall)] private static extern void INTERNAL_CALL_Internal_SetMouseDelta(Event self, ref Vector2 value); // Token: 0x06002899 RID: 10393 [GeneratedByOldBindingsGenerator] [MethodImpl(MethodImplOptions.InternalCall)] private extern void Internal_GetMouseDelta(out Vector2 value); // Token: 0x17000997 RID: 2455 // (get) Token: 0x0600289A RID: 10394 // (set) Token: 0x0600289B RID: 10395 public extern int button { [GeneratedByOldBindingsGenerator] [MethodImpl(MethodImplOptions.InternalCall)] get; [GeneratedByOldBindingsGenerator] [MethodImpl(MethodImplOptions.InternalCall)] set; } // Token: 0x17000998 RID: 2456 // (get) Token: 0x0600289C RID: 10396 // (set) Token: 0x0600289D RID: 10397 public extern EventModifiers modifiers { [GeneratedByOldBindingsGenerator] [MethodImpl(MethodImplOptions.InternalCall)] get; [GeneratedByOldBindingsGenerator] [MethodImpl(MethodImplOptions.InternalCall)] set; } // Token: 0x17000999 RID: 2457 // (get) Token: 0x0600289E RID: 10398 // (set) Token: 0x0600289F RID: 10399 public extern float pressure { [GeneratedByOldBindingsGenerator] [MethodImpl(MethodImplOptions.InternalCall)] get; [GeneratedByOldBindingsGenerator] [MethodImpl(MethodImplOptions.InternalCall)] set; } // Token: 0x1700099A RID: 2458 // (get) Token: 0x060028A0 RID: 10400 // (set) Token: 0x060028A1 RID: 10401 public extern int clickCount { [GeneratedByOldBindingsGenerator] [MethodImpl(MethodImplOptions.InternalCall)] get; [GeneratedByOldBindingsGenerator] [MethodImpl(MethodImplOptions.InternalCall)] set; } // Token: 0x1700099B RID: 2459 // (get) Token: 0x060028A2 RID: 10402 // (set) Token: 0x060028A3 RID: 10403 public extern char character { [GeneratedByOldBindingsGenerator] [MethodImpl(MethodImplOptions.InternalCall)] get; [GeneratedByOldBindingsGenerator] [MethodImpl(MethodImplOptions.InternalCall)] set; } // Token: 0x1700099C RID: 2460 // (get) Token: 0x060028A4 RID: 10404 // (set) Token: 0x060028A5 RID: 10405 public extern string commandName { [GeneratedByOldBindingsGenerator] [MethodImpl(MethodImplOptions.InternalCall)] get; [GeneratedByOldBindingsGenerator] [MethodImpl(MethodImplOptions.InternalCall)] set; } // Token: 0x1700099D RID: 2461 // (get) Token: 0x060028A6 RID: 10406 // (set) Token: 0x060028A7 RID: 10407 public extern KeyCode keyCode { [GeneratedByOldBindingsGenerator] [MethodImpl(MethodImplOptions.InternalCall)] get; [GeneratedByOldBindingsGenerator] [MethodImpl(MethodImplOptions.InternalCall)] set; } // Token: 0x060028A8 RID: 10408 [GeneratedByOldBindingsGenerator] [MethodImpl(MethodImplOptions.InternalCall)] private static extern void Internal_SetNativeEvent(IntPtr ptr); // Token: 0x1700099E RID: 2462 // (get) Token: 0x060028A9 RID: 10409 // (set) Token: 0x060028AA RID: 10410 public extern int displayIndex { [GeneratedByOldBindingsGenerator] [MethodImpl(MethodImplOptions.InternalCall)] get; [GeneratedByOldBindingsGenerator] [MethodImpl(MethodImplOptions.InternalCall)] set; } // Token: 0x060028AB RID: 10411 [GeneratedByOldBindingsGenerator] [MethodImpl(MethodImplOptions.InternalCall)] private extern void Internal_Use(); // Token: 0x060028AC RID: 10412 [GeneratedByOldBindingsGenerator] [MethodImpl(MethodImplOptions.InternalCall)] public static extern bool PopEvent(Event outEvent); // Token: 0x060028AD RID: 10413 [GeneratedByOldBindingsGenerator] [MethodImpl(MethodImplOptions.InternalCall)] public static extern int GetEventCount(); // Token: 0x040006FB RID: 1787 [NonSerialized] internal IntPtr m_Ptr; // Token: 0x040006FC RID: 1788 private static Event s_Current; // Token: 0x040006FD RID: 1789 private static Event s_MasterEvent; } }