/// <summary> /// Read the data into the specified value. /// </summary> /// <param name="value">Value.</param> /// <param name="reader">Reader.</param> public override void ReadInto(object value, ISaveGameReader reader) { UnityEngine.EventSystems.EventTrigger eventTrigger = (UnityEngine.EventSystems.EventTrigger)value; foreach (string property in reader.Properties) { switch (property) { case "triggers": eventTrigger.triggers = reader.ReadProperty <System.Collections.Generic.List <UnityEngine.EventSystems.EventTrigger.Entry> > (); break; case "useGUILayout": eventTrigger.useGUILayout = reader.ReadProperty <System.Boolean> (); break; case "enabled": eventTrigger.enabled = reader.ReadProperty <System.Boolean> (); break; case "tag": eventTrigger.tag = reader.ReadProperty <System.String> (); break; case "name": eventTrigger.name = reader.ReadProperty <System.String> (); break; case "hideFlags": eventTrigger.hideFlags = reader.ReadProperty <UnityEngine.HideFlags> (); break; } } }
/// <summary> /// Write the specified value using the writer. /// </summary> /// <param name="value">Value.</param> /// <param name="writer">Writer.</param> public override void Write(object value, ISaveGameWriter writer) { UnityEngine.EventSystems.EventTrigger eventTrigger = (UnityEngine.EventSystems.EventTrigger)value; writer.WriteProperty("triggers", eventTrigger.triggers); writer.WriteProperty("useGUILayout", eventTrigger.useGUILayout); writer.WriteProperty("enabled", eventTrigger.enabled); writer.WriteProperty("tag", eventTrigger.tag); writer.WriteProperty("name", eventTrigger.name); writer.WriteProperty("hideFlags", eventTrigger.hideFlags); }
/// <summary> /// Create an EventTriggerQuick object from a GameObject. /// /// Extension method to GameObject. /// </summary> /// <param name="go">The GameObject to extract the EventTriggerQuick from.</param> /// <returns>The requested EventTriggerQuick object.</returns> /// <remarks>If the GameObject does not have an EventTrigger, one is automatically added.</remarks> public static EventTriggerQuick ETQ(this GameObject go) { UnityEngine.EventSystems.EventTrigger et = go.GetComponent <UnityEngine.EventSystems.EventTrigger>(); if (et == null) { et = go.AddComponent <UnityEngine.EventSystems.EventTrigger>(); } return(new EventTriggerQuick(et)); }
void SetupEvents() { UnityEngine.EventSystems.EventTrigger trigger = this.GetComponent <UnityEngine.EventSystems.EventTrigger>() ?? this.gameObject.AddComponent <UnityEngine.EventSystems.EventTrigger>(); var onDrag = new UnityEngine.EventSystems.EventTrigger.Entry { eventID = UnityEngine.EventSystems.EventTriggerType.Drag }; onDrag.callback.AddListener((e) => OnDrag(e as UnityEngine.EventSystems.PointerEventData)); trigger.triggers.Add(onDrag); }
static int _g_get_triggers(RealStatePtr L) { ObjectTranslator translator = ObjectTranslatorPool.Instance.Find(L); try { UnityEngine.EventSystems.EventTrigger __cl_gen_to_be_invoked = (UnityEngine.EventSystems.EventTrigger)translator.FastGetCSObj(L, 1); translator.Push(L, __cl_gen_to_be_invoked.triggers); } catch (System.Exception __gen_e) { return(LuaAPI.luaL_error(L, "c# exception:" + __gen_e)); } return(1); }
static int _s_set_triggers(RealStatePtr L) { ObjectTranslator translator = ObjectTranslatorPool.Instance.Find(L); try { UnityEngine.EventSystems.EventTrigger __cl_gen_to_be_invoked = (UnityEngine.EventSystems.EventTrigger)translator.FastGetCSObj(L, 1); __cl_gen_to_be_invoked.triggers = (System.Collections.Generic.List <UnityEngine.EventSystems.EventTrigger.Entry>)translator.GetObject(L, 2, typeof(System.Collections.Generic.List <UnityEngine.EventSystems.EventTrigger.Entry>)); } catch (System.Exception __gen_e) { return(LuaAPI.luaL_error(L, "c# exception:" + __gen_e)); } return(0); }
static StackObject *get_triggers_1(ILIntepreter __intp, StackObject *__esp, IList <object> __mStack, CLRMethod __method, bool isNewObj) { ILRuntime.Runtime.Enviorment.AppDomain __domain = __intp.AppDomain; StackObject *ptr_of_this_method; StackObject *__ret = ILIntepreter.Minus(__esp, 1); ptr_of_this_method = ILIntepreter.Minus(__esp, 1); UnityEngine.EventSystems.EventTrigger instance_of_this_method = (UnityEngine.EventSystems.EventTrigger) typeof(UnityEngine.EventSystems.EventTrigger).CheckCLRTypes(StackObject.ToObject(ptr_of_this_method, __domain, __mStack)); __intp.Free(ptr_of_this_method); var result_of_this_method = instance_of_this_method.triggers; return(ILIntepreter.PushObject(__ret, __mStack, result_of_this_method)); }
void SetupEvents() { UnityEngine.EventSystems.EventTrigger trigger = this.GetComponent <UnityEngine.EventSystems.EventTrigger>() ?? this.gameObject.AddComponent <UnityEngine.EventSystems.EventTrigger>(); var onPointerEnter = new UnityEngine.EventSystems.EventTrigger.Entry { eventID = UnityEngine.EventSystems.EventTriggerType.PointerEnter }; var onPointerExit = new UnityEngine.EventSystems.EventTrigger.Entry { eventID = UnityEngine.EventSystems.EventTriggerType.PointerExit }; onPointerEnter.callback.AddListener((e) => OnPointerEnter()); onPointerExit.callback.AddListener((e) => OnPointerExit()); trigger.triggers.Add(onPointerEnter); trigger.triggers.Add(onPointerExit); }
static StackObject *OnCancel_18(ILIntepreter __intp, StackObject *__esp, IList <object> __mStack, CLRMethod __method, bool isNewObj) { CSHotFix.Runtime.Enviorment.AppDomain __domain = __intp.AppDomain; StackObject *ptr_of_this_method; StackObject *__ret = ILIntepreter.Minus(__esp, 2); ptr_of_this_method = ILIntepreter.Minus(__esp, 1); UnityEngine.EventSystems.BaseEventData @eventData = (UnityEngine.EventSystems.BaseEventData) typeof(UnityEngine.EventSystems.BaseEventData).CheckCLRTypes(StackObject.ToObject(ptr_of_this_method, __domain, __mStack)); __intp.Free(ptr_of_this_method); ptr_of_this_method = ILIntepreter.Minus(__esp, 2); UnityEngine.EventSystems.EventTrigger instance_of_this_method = (UnityEngine.EventSystems.EventTrigger) typeof(UnityEngine.EventSystems.EventTrigger).CheckCLRTypes(StackObject.ToObject(ptr_of_this_method, __domain, __mStack)); __intp.Free(ptr_of_this_method); instance_of_this_method.OnCancel(@eventData); return(__ret); }
static StackObject *set_triggers_1(ILIntepreter __intp, StackObject *__esp, IList <object> __mStack, CLRMethod __method, bool isNewObj) { CSHotFix.Runtime.Enviorment.AppDomain __domain = __intp.AppDomain; StackObject *ptr_of_this_method; StackObject *__ret = ILIntepreter.Minus(__esp, 2); ptr_of_this_method = ILIntepreter.Minus(__esp, 1); System.Collections.Generic.List <UnityEngine.EventSystems.EventTrigger.Entry> @value = (System.Collections.Generic.List <UnityEngine.EventSystems.EventTrigger.Entry>) typeof(System.Collections.Generic.List <UnityEngine.EventSystems.EventTrigger.Entry>).CheckCLRTypes(StackObject.ToObject(ptr_of_this_method, __domain, __mStack)); __intp.Free(ptr_of_this_method); ptr_of_this_method = ILIntepreter.Minus(__esp, 2); UnityEngine.EventSystems.EventTrigger instance_of_this_method = (UnityEngine.EventSystems.EventTrigger) typeof(UnityEngine.EventSystems.EventTrigger).CheckCLRTypes(StackObject.ToObject(ptr_of_this_method, __domain, __mStack)); __intp.Free(ptr_of_this_method); instance_of_this_method.triggers = value; return(__ret); }
static StackObject *get_triggers_0(ILIntepreter __intp, StackObject *__esp, IList <object> __mStack, CLRMethod __method, bool isNewObj) { CSHotFix.Runtime.Enviorment.AppDomain __domain = __intp.AppDomain; StackObject *ptr_of_this_method; StackObject *__ret = ILIntepreter.Minus(__esp, 1); ptr_of_this_method = ILIntepreter.Minus(__esp, 1); UnityEngine.EventSystems.EventTrigger instance_of_this_method = (UnityEngine.EventSystems.EventTrigger) typeof(UnityEngine.EventSystems.EventTrigger).CheckCLRTypes(StackObject.ToObject(ptr_of_this_method, __domain, __mStack)); __intp.Free(ptr_of_this_method); var result_of_this_method = instance_of_this_method.triggers; object obj_result_of_this_method = result_of_this_method; if (obj_result_of_this_method is CrossBindingAdaptorType) { return(ILIntepreter.PushObject(__ret, __mStack, ((CrossBindingAdaptorType)obj_result_of_this_method).ILInstance)); } return(ILIntepreter.PushObject(__ret, __mStack, result_of_this_method)); }
static int _m_OnPointerExit(RealStatePtr L) { ObjectTranslator translator = ObjectTranslatorPool.Instance.Find(L); UnityEngine.EventSystems.EventTrigger __cl_gen_to_be_invoked = (UnityEngine.EventSystems.EventTrigger)translator.FastGetCSObj(L, 1); try { { UnityEngine.EventSystems.PointerEventData eventData = (UnityEngine.EventSystems.PointerEventData)translator.GetObject(L, 2, typeof(UnityEngine.EventSystems.PointerEventData)); __cl_gen_to_be_invoked.OnPointerExit(eventData); return(0); } } catch (System.Exception __gen_e) { return(LuaAPI.luaL_error(L, "c# exception:" + __gen_e)); } }
static int _m_OnCancel(RealStatePtr L) { try { ObjectTranslator translator = ObjectTranslatorPool.Instance.Find(L); UnityEngine.EventSystems.EventTrigger gen_to_be_invoked = (UnityEngine.EventSystems.EventTrigger)translator.FastGetCSObj(L, 1); { UnityEngine.EventSystems.BaseEventData _eventData = (UnityEngine.EventSystems.BaseEventData)translator.GetObject(L, 2, typeof(UnityEngine.EventSystems.BaseEventData)); gen_to_be_invoked.OnCancel(_eventData); return(0); } } catch (System.Exception gen_e) { return(LuaAPI.luaL_error(L, "c# exception:" + gen_e)); } }
/// <summary> /// Create a retrieve an EventTrigger.Entry from an EventTrigger. /// /// Extension method to EventTrigger. /// </summary> /// <param name="et">The EventTrigger to process.</param> /// <param name="ty">The type of event to retrieve.</param> /// <returns>The EventTrigger.Entry of event type ty in the EventTrigger.</returns> /// <remarks>If the EventTrigger does not contain the event, one is created.</remarks> public static UnityEngine.EventSystems.EventTrigger.Entry GetEntry( this UnityEngine.EventSystems.EventTrigger et, UnityEngine.EventSystems.EventTriggerType ty) { if (et.triggers == null) { et.triggers = new List <UnityEngine.EventSystems.EventTrigger.Entry>(); } foreach (UnityEngine.EventSystems.EventTrigger.Entry e in et.triggers) { if (e.eventID == ty) { return(e); } } UnityEngine.EventSystems.EventTrigger.Entry ret = new UnityEngine.EventSystems.EventTrigger.Entry(); ret.eventID = ty; et.triggers.Add(ret); return(ret); }
/// <summary> /// Constructor. /// </summary> /// <param name="et">The EventTrigger to focus the methods on.</param> public EventTriggerQuick(UnityEngine.EventSystems.EventTrigger et) { this.trigger = et; }
public void Create(FileBrowseProp prop, FileBrowser browser) { this.prop = prop; this.browser = browser; // // NAV BUTTONS //////////////////////////////////////////////////////////////////////////////// this.backBtn = this.prop.CreateButton(this.transform, ""); if (this.prop.navBackSprite != null) { FileBrowseProp.CreateCenteredImage(this.prop.navBackSprite, backBtn.transform, Vector2.zero); } this.backBtn.onClick.AddListener(() => { this.browser.HistoryGoBack(); }); this.fwdBtn = this.prop.CreateButton(this.transform, ""); if (this.prop.navForwardSprite != null) { FileBrowseProp.CreateCenteredImage(this.prop.navForwardSprite, fwdBtn.transform, Vector2.zero); } this.fwdBtn.onClick.AddListener(() => { this.browser.HistoryGoForward(); }); this.upBtn = this.prop.CreateButton(this.transform, "UpButton"); if (this.prop.navUpSprite != null) { FileBrowseProp.CreateCenteredImage(this.prop.navUpSprite, upBtn.transform, Vector2.zero); } this.upBtn.onClick.AddListener(() => { this.browser.NavigateParent(); }); // // Edit Location //////////////////////////////////////////////////////////////////////////////// GameObject goLoc = new GameObject("EditLoc"); goLoc.transform.SetParent(this.transform); goLoc.transform.localRotation = Quaternion.identity; goLoc.transform.localScale = Vector3.one; UnityEngine.UI.Image editPlate = goLoc.AddComponent <UnityEngine.UI.Image>(); editPlate.sprite = this.prop.inputPlateSprite; editPlate.type = UnityEngine.UI.Image.Type.Sliced; RectTransform rtEditPlate = editPlate.rectTransform; rtEditPlate.anchorMin = Vector2.zero; rtEditPlate.anchorMax = Vector2.one; rtEditPlate.pivot = new Vector2(0.0f, 1.0f); rtEditPlate.offsetMin = Vector2.zero; rtEditPlate.offsetMax = Vector2.zero; this.prop.inputText.Create(goLoc.transform, out this.textInput, "", "InputText"); this.textInput.alignment = TextAnchor.MiddleLeft; RectTransform rtInputTxt = this.textInput.rectTransform; rtInputTxt.anchorMin = Vector2.zero; rtInputTxt.anchorMax = Vector2.one; rtInputTxt.pivot = new Vector2(0.0f, 1.0f); rtInputTxt.offsetMin = new Vector2(this.prop.inputPadding, 0.0f); rtInputTxt.offsetMax = new Vector2(-this.prop.inputPadding, 0.0f); this.editInput = goLoc.AddComponent <UnityEngine.UI.InputField>(); this.editInput.targetGraphic = editPlate; this.editInput.textComponent = this.textInput; this.editInput.onEndEdit.AddListener( (x) => { this.OnInput_PathEndEdit(x); }); this.editInput.lineType = UnityEngine.UI.InputField.LineType.MultiLineSubmit; this.DisableInput(); UnityEngine.EventSystems.EventTrigger et = goLoc.AddComponent <UnityEngine.EventSystems.EventTrigger>(); et.triggers = new List <UnityEngine.EventSystems.EventTrigger.Entry>(); UnityEngine.EventSystems.EventTrigger.Entry evtMDown = new UnityEngine.EventSystems.EventTrigger.Entry(); evtMDown.eventID = UnityEngine.EventSystems.EventTriggerType.PointerClick; evtMDown.callback.AddListener( (x) => { this.OnButton_PathClick((UnityEngine.EventSystems.PointerEventData)x); }); et.triggers.Add(evtMDown); this.created = true; this.RefreshNavigationButtonsInteractivity(); }
/// <summary> /// Retrieve a cached TabAssets for a specific window in the tab system - or /// create and store a new one if none currently exist. /// </summary> /// <param name="tabbedWin">The window to retrive the assets for.</param> /// <param name="rt">The RectTransform to put parent the assets in if they're being created. </param> /// <param name="props">The properties used to give the assets if they're being created.</param> /// <returns></returns> public TabsAssets GetTabAssets(Dock tabbedWin, RectTransform parent, DockProps props) { TabsAssets ret; if (this.assetLookup.TryGetValue(tabbedWin, out ret) == true) { return(ret); } ret = new TabsAssets(); GameObject goTab = new GameObject("Tab asset"); goTab.transform.SetParent(parent); ret.notebookTab = goTab.AddComponent <UnityEngine.UI.Image>(); ret.notebookTab.sprite = props.tabs.tabPlate; ret.notebookTab.type = UnityEngine.UI.Image.Type.Sliced; RectTransform rtTab = ret.notebookTab.rectTransform; rtTab.anchorMin = new Vector2(0.0f, 1.0f); rtTab.anchorMax = new Vector2(0.0f, 1.0f); rtTab.pivot = new Vector2(0.0f, 1.0f); goTab.AddComponent <UnityEngine.UI.Mask>(); ret.notebookButton = goTab.AddComponent <UnityEngine.UI.Button>(); ret.notebookButton.onClick.AddListener( () => { this.dock.activeTab = tabbedWin; this.HandleDock(); }); // Prevent locked windows from being ripped from the tab system. The issue here is // that if it's ripped, then it should turn to a floating window, which locked windows // can't. if (tabbedWin.window.Locked == false) { // If the tag is being dragged, redirect it to the window to // initiate a pull-off. UnityEngine.EventSystems.EventTrigger etTab = goTab.AddComponent <UnityEngine.EventSystems.EventTrigger>(); etTab.triggers = new List <UnityEngine.EventSystems.EventTrigger.Entry>(); UnityEngine.EventSystems.EventTrigger.Entry dragEnt = new UnityEngine.EventSystems.EventTrigger.Entry(); dragEnt.eventID = UnityEngine.EventSystems.EventTriggerType.BeginDrag; dragEnt.callback.AddListener( (x) => { UnityEngine.EventSystems.PointerEventData evt = x as UnityEngine.EventSystems.PointerEventData; // Transform the point from the tab, to the window about to be ripped. Vector2 mouseInTab = goTab.transform.worldToLocalMatrix.MultiplyPoint(evt.position); evt.position = tabbedWin.window.transform.localToWorldMatrix.MultiplyPoint(mouseInTab); // Make sure it's active before handoff. Will be inactive if not the main tab. tabbedWin.window.gameObject.SetActive(true); // Do handoff evt.dragging = true; evt.pointerDrag = tabbedWin.window.gameObject; // Force titlebar drag state Window._StartOutsideDrag(Window.FrameDrag.Position, tabbedWin.window, Vector2.zero); // Make sure it handles OnBeginDrag - certain important drag things are // initialized there. UnityEngine.EventSystems.IBeginDragHandler dragBegin = tabbedWin.window; dragBegin.OnBeginDrag(evt); // Reset styles + shadow this.root.UndockWindow(tabbedWin.window); }); etTab.triggers.Add(dragEnt); } if (tabbedWin.window.Closable == true && tabbedWin.window.Locked == false) { GameObject goCloseBtn = new GameObject("CloseButton"); goCloseBtn.transform.SetParent(rtTab); ret.closeButton = goCloseBtn.AddComponent <UnityEngine.UI.Image>(); ret.closeButton.sprite = props.tabs.innerTabBtn; ret.closeButton.type = UnityEngine.UI.Image.Type.Sliced; RectTransform rtCloseBtn = ret.closeButton.rectTransform; rtCloseBtn.anchorMin = new Vector2(1.0f, 0.0f); rtCloseBtn.anchorMax = new Vector2(1.0f, 1.0f); rtCloseBtn.offsetMin = new Vector2( -this.root.props.tabs.closeBorderRight - this.root.props.tabs.closeWidth, this.root.props.tabs.closeBorderVert); rtCloseBtn.offsetMax = new Vector2( -this.root.props.tabs.closeBorderRight, -this.root.props.tabs.closeBorderVert); UnityEngine.UI.Button closeBtn = goCloseBtn.AddComponent <UnityEngine.UI.Button>(); closeBtn.onClick.AddListener( () => { this.root.CloseWindow(tabbedWin.window); }); if (props.tabs.closeWindowIcon != null) { GameObject goCloseIco = new GameObject("Close"); goCloseIco.transform.SetParent(rtCloseBtn); UnityEngine.UI.Image imgCloseIco = goCloseIco.AddComponent <UnityEngine.UI.Image>(); RectTransform rtClIco = imgCloseIco.rectTransform; imgCloseIco.sprite = props.tabs.closeWindowIcon; rtClIco.anchorMin = new Vector2(0.5f, 0.5f); rtClIco.anchorMax = new Vector2(0.5f, 0.5f); rtClIco.pivot = new Vector2(0.5f, 0.5f); rtClIco.anchoredPosition = Vector2.zero; rtClIco.sizeDelta = props.tabs.closeWindowIcon.rect.size; } } GameObject goText = new GameObject("Text"); goText.transform.SetParent(rtTab); ret.label = goText.AddComponent <UnityEngine.UI.Text>(); ret.label.text = tabbedWin.window.TitlebarText; ret.label.color = props.tabs.tabFontColor; ret.label.fontSize = props.tabs.tabFontSize; ret.label.verticalOverflow = VerticalWrapMode.Truncate; ret.label.horizontalOverflow = HorizontalWrapMode.Wrap; ret.label.alignment = TextAnchor.MiddleCenter; ret.label.font = props.tabs.tabFont; RectTransform rtLabel = ret.label.rectTransform; rtLabel.anchorMin = Vector2.zero; rtLabel.anchorMax = Vector2.one; rtLabel.offsetMin = Vector2.zero; rtLabel.offsetMax = new Vector2(-this.root.props.tabs.closeBorderRight - this.root.props.tabs.closeWidth, 0.0f); rtLabel.pivot = new Vector2(0.5f, 0.5f); this.assetLookup.Add(tabbedWin, ret); return(ret); }
/// <summary> /// Read the data using the reader. /// </summary> /// <param name="reader">Reader.</param> public override object Read(ISaveGameReader reader) { UnityEngine.EventSystems.EventTrigger eventTrigger = SaveGameType.CreateComponent <UnityEngine.EventSystems.EventTrigger> (); ReadInto(eventTrigger, reader); return(eventTrigger); }