Beispiel #1
0
    public void OnPointerEnter(PointerEventData eventData)
    {
        if (m_OnUpdate == null)
        {
            m_OnUpdate           = gameObject.AddComponent <OnUpdateCallback>();
            m_OnUpdate.hideFlags = HideFlags.HideInInspector;
            m_LinkID             = -1;

            m_OnUpdate.m_Action = () =>
            {
                var currentLinkID = TMP_TextUtilities.FindIntersectingLink(m_Text, Core.Instance.MouseWorldPosition.ScreenPosition, m_Camera);
                if (currentLinkID == -1)
                {                       // disable tooltip
                    m_LinkID = currentLinkID;
                    m_UITMPLinkTooltip.Hide();
                }

                if (currentLinkID != m_LinkID)
                {                       // show tooltip
                    m_LinkID = currentLinkID;

                    var linkInfo = m_Text.textInfo.linkInfo[currentLinkID];
                    m_UITMPLinkTooltip.Show(linkInfo.GetLinkID());
                }
            };
        }
    }
 private void OnDestroy()
 {
     if (m_OnUpdate != null)
     {
         Destroy(m_OnUpdate);
         m_OnUpdate = null;
     }
 }
 private void implHide()
 {
     if (m_OnUpdate != null)
     {
         Destroy(m_OnUpdate);
         m_OnUpdate = null;
         m_UITMPLinkTooltip.Hide();
     }
 }
Beispiel #4
0
 public void OnPointerExit(PointerEventData eventData)
 {
     if (m_OnUpdate != null)
     {
         Destroy(m_OnUpdate);
         m_OnUpdate = null;
     }
     m_UITMPLinkTooltip.Hide();
 }
Beispiel #5
0
        /// <summary>
        /// Register a function to call on every update loop.
        /// This is a quick method to add per-object functionality without defining a component type.
        /// </summary>
        /// <param name="callback">Callback to call every Update() frame.</param>
        public void DoOnUpdate(OnUpdateCallback callback)
        {
            // if needed, create the on-update callbacks list
            if (_onUpdate == null)
            {
                _onUpdate = new List <OnUpdateCallback>();
            }

            // add callback
            _onUpdate.Add(callback);
        }
    /// <summary>
    /// Add a new fixed update listener.
    /// </summary>

    static public void AddOnUpdate(Component mb, OnUpdateCallback callback)
    {
        ProximityManager pro = GetInstance(mb);

        foreach (UpdateListener p in pro.mOnUpdate)
        {
            if (p.mb == mb && p.callback == callback)
            {
                return;
            }
        }

        UpdateListener ent = new UpdateListener();

        ent.mb       = mb;
        ent.callback = callback;
        pro.mOnUpdate.Add(ent);
    }
        /// <summary>Adds this instance to the update queue.</summary>
        public void enqueue()
        {
            if (enqueued)
            {
                return;
            }

            enqueued = true;
            after    = null;
            before   = last;

            if (first == null)
            {
                first = last = this;

                // Enqueue in the update system:
                updater = OnUpdate.Add(updateAll);
            }
            else
            {
                last.after = this;
                last       = this;
            }
        }
 private void UpdateInner()
 {
     ComputeFft();
     OnUpdateCallback?.Invoke();
 }
Beispiel #9
0
 private void UpdateInner()
 {
     UpdatePlots();
     OnUpdateCallback?.Invoke();
 }
Beispiel #10
0
 public void AddOnUpdateListener(OnUpdateCallback callback)
 {
     onUpdateCallback += callback;
 }
 public void AddStateListener(OnUpdateCallback cb)
 {
     _callback = cb;
 }