示例#1
0
    // Token: 0x06002C44 RID: 11332 RVA: 0x00488940 File Offset: 0x00486B40
    protected override void OnDisable()
    {
        base.OnDisable();
        uButtonScale component = base.gameObject.GetComponent <uButtonScale>();

        if (component != null)
        {
            component.Reset();
        }
    }
示例#2
0
    // Token: 0x06002D2D RID: 11565 RVA: 0x0048EA5C File Offset: 0x0048CC5C
    public void ReLinkScale()
    {
        uButtonScale component = base.gameObject.GetComponent <uButtonScale>();

        if (component != null)
        {
            component.m_Handler = this;
            this.m_EffectType   = e_EffectType.e_Scale;
        }
    }
示例#3
0
    // Token: 0x06002C43 RID: 11331 RVA: 0x00488908 File Offset: 0x00486B08
    private void AddScaleComp()
    {
        uButtonScale uButtonScale = base.gameObject.GetComponent <uButtonScale>();

        if (uButtonScale == null)
        {
            uButtonScale = base.gameObject.AddComponent <uButtonScale>();
        }
        uButtonScale.m_Handler = this;
    }
示例#4
0
        // Token: 0x0600297B RID: 10619 RVA: 0x00459C2C File Offset: 0x00457E2C
        public virtual void OnDrag(PointerEventData eventData)
        {
            if (eventData.button != PointerEventData.InputButton.Left)
            {
                return;
            }
            if (!this.IsActive())
            {
                return;
            }
            if (this.m_bInitViewState && this.CheckBeLoad())
            {
                return;
            }
            if (this.startPos != Vector2.zero)
            {
                float num  = Vector2.Distance(this.startPos, eventData.position);
                float num2 = Screen.dpi / 2.54f;
                if (eventData.pointerPressRaycast.gameObject != null && num > num2 * 0.15f)
                {
                    uButtonScale uButtonScale = eventData.pointerPressRaycast.gameObject.GetComponent(typeof(uButtonScale)) as uButtonScale;
                    if (uButtonScale != null)
                    {
                        uButtonScale.OnPointerExit(eventData);
                    }
                }
            }
            if (this.bPageMove)
            {
                this._pos2  = this._pos1;
                this._time2 = this._time1;
                this._pos1  = eventData.position;
                this._time1 = Time.realtimeSinceStartup;
            }
            Vector2 a;

            if (!RectTransformUtility.ScreenPointToLocalPointInRectangle(this.viewRect, eventData.position, eventData.pressEventCamera, out a))
            {
                return;
            }
            this.UpdateBounds();
            Vector2 b      = a - this.m_PointerStartLocalCursor;
            Vector2 vector = this.m_ContentStartPosition + b;
            Vector2 b2     = this.CalculateOffset(vector - this.m_Content.anchoredPosition);

            vector += b2;
            if (this.m_MovementType == CScrollRect.MovementType.Elastic)
            {
                if (b2.x != 0f)
                {
                    vector.x -= CScrollRect.RubberDelta(b2.x, this.m_ViewBounds.size.x);
                }
                if (b2.y != 0f)
                {
                    vector.y -= CScrollRect.RubberDelta(b2.y, this.m_ViewBounds.size.y);
                }
            }
            this.SetContentAnchoredPosition(vector);
            if (this.m_Vertical && this.m_Inertia)
            {
                if (!this.m_bStopViewState && b2.y > 0f)
                {
                    switch (this.m_ViewState)
                    {
                    case ListViewState.LVS_NORMAL:
                        this.SwitchViewState(ListViewState.LVS_PULL_REFRESH);
                        break;

                    case ListViewState.LVS_PULL_REFRESH:
                        if (b2.y > this.m_HeadContentHeight)
                        {
                            this.SwitchViewState(ListViewState.LVS_RELEASE_REFRESH);
                        }
                        break;

                    case ListViewState.LVS_RELEASE_REFRESH:
                        if (b2.y <= this.m_HeadContentHeight)
                        {
                            this.m_Back = true;
                            this.SwitchViewState(ListViewState.LVS_PULL_REFRESH);
                        }
                        break;
                    }
                }
                else if (!this.m_bStopViewState_Up && b2.y < 0f)
                {
                    ListViewState viewState = this.m_ViewState;
                    if (viewState != ListViewState.LVS_PULL_REFRESH_UP)
                    {
                        if (viewState != ListViewState.LVS_RELEASE_REFRESH_UP)
                        {
                            if (viewState == ListViewState.LVS_NORMAL)
                            {
                                this.SwitchViewState(ListViewState.LVS_PULL_REFRESH_UP);
                            }
                        }
                        else if (b2.y >= -this.m_HeadContentHeight)
                        {
                            this.m_Back = true;
                            this.SwitchViewState(ListViewState.LVS_PULL_REFRESH_UP);
                        }
                    }
                    else if (b2.y < -this.m_HeadContentHeight)
                    {
                        this.SwitchViewState(ListViewState.LVS_RELEASE_REFRESH_UP);
                    }
                }
                else
                {
                    this.SwitchViewState(ListViewState.LVS_NORMAL);
                }
            }
        }
示例#5
0
        // Token: 0x0600297A RID: 10618 RVA: 0x004598A0 File Offset: 0x00457AA0
        public virtual void OnEndDrag(PointerEventData eventData)
        {
            if (eventData.button != PointerEventData.InputButton.Left)
            {
                return;
            }
            float num  = Vector2.Distance(this.startPos, eventData.position);
            float num2 = Screen.dpi / 2.54f;

            if (num < num2 * 0.15f)
            {
                uButtonScale uButtonScale = eventData.pointerPressRaycast.gameObject.GetComponent(typeof(uButtonScale)) as uButtonScale;
                if (uButtonScale != null)
                {
                    uButtonScale.OnPointerClick(eventData);
                }
                else
                {
                    IPointerClickHandler pointerClickHandler = eventData.pointerPressRaycast.gameObject.GetComponent(typeof(IPointerClickHandler)) as IPointerClickHandler;
                    if (pointerClickHandler != null)
                    {
                        pointerClickHandler.OnPointerClick(eventData);
                    }
                    else
                    {
                        byte      b         = 3;
                        Transform transform = eventData.pointerPressRaycast.gameObject.transform;
                        while (b > 0 && transform.parent)
                        {
                            ScrollPanelItem component = transform.parent.GetComponent <ScrollPanelItem>();
                            if (component)
                            {
                                pointerClickHandler = (transform.parent.GetComponent(typeof(IPointerClickHandler)) as IPointerClickHandler);
                                if (pointerClickHandler != null)
                                {
                                    pointerClickHandler.OnPointerClick(eventData);
                                }
                                break;
                            }
                            b        -= 1;
                            transform = transform.parent;
                        }
                    }
                }
                this.startPos = Vector2.zero;
            }
            if (this.m_bInitViewState && (this.ViewState == ListViewState.LVS_PULL_REFRESH || this.ViewState == ListViewState.LVS_PULL_REFRESH_UP))
            {
                this.SwitchViewState(ListViewState.LVS_NORMAL);
            }
            if (this.bPageMove)
            {
                float num3 = Time.realtimeSinceStartup - this._time2;
                float num4 = eventData.position.x - this._pos2.x;
                float num5 = num4 / num3;
                if (GUIManager.Instance.IsArabic)
                {
                    if (this.NowPageIndex > 0 && (num5 < -500f || (double)(this.m_Content.anchoredPosition.x - this.m_ContentStartPosition.x) >= (double)this.PageWidth * 0.5))
                    {
                        this.setCurrentIndex(this.NowPageIndex - 1, false);
                    }
                    else if (this.NowPageIndex < this.PageQuantity - 1 && (num5 > 500f || (double)(-(double)(this.m_Content.anchoredPosition.x - this.m_ContentStartPosition.x)) >= (double)this.PageWidth * 0.5))
                    {
                        this.setCurrentIndex(this.NowPageIndex + 1, false);
                    }
                    else
                    {
                        this.setCurrentIndex(this.NowPageIndex, false);
                    }
                }
                else if (this.NowPageIndex > 0 && (num5 > 500f || (double)(this.m_Content.anchoredPosition.x - this.m_ContentStartPosition.x) >= (double)this.PageWidth * 0.5))
                {
                    this.setCurrentIndex(this.NowPageIndex - 1, false);
                }
                else if (this.NowPageIndex < this.PageQuantity - 1 && (num5 < -500f || (double)(-(double)(this.m_Content.anchoredPosition.x - this.m_ContentStartPosition.x)) >= (double)this.PageWidth * 0.5))
                {
                    this.setCurrentIndex(this.NowPageIndex + 1, false);
                }
                else
                {
                    this.setCurrentIndex(this.NowPageIndex, false);
                }
            }
            this.m_Dragging = false;
        }