예제 #1
0
    public void BlankSet(ScrollCylinderNode Node, bool AddLast = false)
    {
        if (!AddLast)
        {
            this.lstBlankNodes.Clear();
        }
        if (Object.op_Equality((Object)this.blankObject, (Object)null))
        {
            return;
        }
        Vector2       sizeDelta = ((RectTransform)((Component)Node).GetComponent <RectTransform>()).get_sizeDelta();
        RectTransform component = (RectTransform)((Component)((Component)this).get_transform()).GetComponent <RectTransform>();

        int[] numArray1 = new int[2];
        Rect  rect1     = component.get_rect();

        numArray1[0] = (int)((double)((Rect) ref rect1).get_height() / sizeDelta.y);
        Rect rect2 = component.get_rect();

        numArray1[1] = (int)((double)((Rect) ref rect2).get_width() / sizeDelta.x);
        int[] numArray2 = numArray1;
        int   num       = Mathf.Max(numArray2[0], numArray2[1]);

        if (this.lstBlankNodes.Count == (num % 2 == 0 ? num : num - 1))
        {
            return;
        }
        numArray2[0] /= 2;
        numArray2[1] /= 2;
        for (int index1 = 0; index1 < numArray2.Length; ++index1)
        {
            for (int index2 = 0; index2 < numArray2[index1]; ++index2)
            {
                ScrollCylinderNode scrollCylinderNode = (ScrollCylinderNode)Object.Instantiate <ScrollCylinderNode>((M0)this.blankObject);
                ((Component)scrollCylinderNode).get_transform().SetParent(this.Contents.get_transform(), false);
                ((Component)scrollCylinderNode).get_gameObject().SetActive(true);
                this.lstBlankNodes.Add(scrollCylinderNode);
            }
        }
    }
예제 #2
0
    public void SetTarget(ScrollCylinderNode target)
    {
        RectTransform component1 = (RectTransform)this.Contents.GetComponent <RectTransform>();
        Vector3       vector3    = Vector2.op_Implicit(component1.get_anchoredPosition());

        for (int index1 = 0; index1 < this.lstNodes.Count; ++index1)
        {
            int index2 = index1;
            if (!Object.op_Inequality((Object)this.lstNodes[index2], (Object)target))
            {
                RectTransform component2 = (RectTransform)((Component)this.lstNodes[index2]).GetComponent <RectTransform>();
                Vector2       vector2;
                ref Vector2   local1 = ref vector2;
                // ISSUE: variable of the null type
                __Null x     = component1.get_anchoredPosition().x;
                Rect   rect1 = component1.get_rect();
                double num1  = (double)((Rect) ref rect1).get_width() / 2.0;
                double num2  = x - num1 + component2.get_anchoredPosition().x;
                local1.x = (__Null)num2;
                ref Vector2 local2 = ref vector2;
                // ISSUE: variable of the null type
                __Null y     = component1.get_anchoredPosition().y;
                Rect   rect2 = component1.get_rect();
                double num3  = (double)((Rect) ref rect2).get_height() / 2.0;
                double num4  = y + num3 + component2.get_anchoredPosition().y;
                local2.y        = (__Null)num4;
                vector2.x       = vector3.x - vector2.x;
                vector2.y       = vector3.y - vector2.y;
                this.targetNode = new ValueTuple <int, Vector2, ScrollCylinderNode>(index2, vector2, target);
                if (this._onValueChange == null)
                {
                    break;
                }
                this._onValueChange.OnNext(index2);
                break;
            }
예제 #3
0
 private void Start()
 {
     this.toggle = (Toggle)((Component)this).get_gameObject().GetComponent <Toggle>();
     this.node   = (ScrollCylinderNode)((Component)this).get_gameObject().GetComponent <ScrollCylinderNode>();
 }