예제 #1
0
 public override bool Animate(float Progress, bool forceHide = false)
 {
     for (int i = 0; i < itemsCahche.Length; i++)
     {
         if (itemsCahche [i].GetType() == typeof(ToolboxBelt))
         {
             ToolboxBelt item = (ToolboxBelt)itemsCahche [i];
             if (item.IsExpanded != IsExpanded)
             {
                 item.Toggle();
             }
         }
         else
         {
             itemsCahche [i].Animate(Progress, true);
         }
     }
     return(layout.childCount > 0);
 }
예제 #2
0
 public void Shrink(bool recurrsive = false)
 {
     if (!IsExpanded)
     {
         return;
     }
     itemsCahche        = GetComponentsInChildrenFirstLevel <ToolboxItem> ();
     IsExpanded         = false;
     animationDirection = -1;
     if (recurrsive)
     {
         for (int i = 0; i < itemsCahche.Length; i++)
         {
             if (itemsCahche [i].GetType() == typeof(ToolboxBelt))
             {
                 ToolboxBelt item = (ToolboxBelt)itemsCahche [i];
                 item.Shrink(recurrsive);
             }
         }
     }
 }
예제 #3
0
    public IEnumerator RebuildLayoutInNextFrame()
    {
        yield return(new WaitForEndOfFrame());

        ToolboxBelt toolbox = null;

        if (parentToolbox != null)
        {
            toolbox = parentToolbox;
        }
        else if (GetType() == typeof(ToolboxBelt))
        {
            toolbox = (ToolboxBelt)this;
        }
        else
        {
            yield return(null);
        }
        while (toolbox.parentToolbox != null)
        {
            toolbox = toolbox.parentToolbox;
        }
        LayoutRebuilder.ForceRebuildLayoutImmediate(toolbox.rectTransform);
    }
예제 #4
0
 protected virtual void Start()
 {
     rectTransform = GetComponent <RectTransform> ();
     startSize     = rectTransform.sizeDelta;
     parentToolbox = transform.parent.GetComponent <ToolboxBelt> ();
 }