コード例 #1
0
ファイル: Accordion.cs プロジェクト: RockfFestival/Rock
        /// <summary>
        /// Hide coroutine.
        /// </summary>
        /// <returns>The coroutine.</returns>
        /// <param name="item">Item.</param>
        protected virtual IEnumerator HideCoroutine(AccordionItem item)
        {
            if (ResizeMethod == ResizeMethods.Size)
            {
                yield return(StartCoroutine(Animations.Collapse(item.ContentObjectRect, AnimationDuration, IsHorizontal(), UnscaledTime, () => {
                    if (IsHorizontal())
                    {
                        item.ContentLayoutElement.preferredWidth = -1;
                    }
                    else
                    {
                        item.ContentLayoutElement.preferredHeight = -1;
                    }
                })));
            }
            else if (ResizeMethod == ResizeMethods.Flexible)
            {
                yield return(StartCoroutine(Animations.CollapseFlexible(item.ContentObjectRect, AnimationDuration, IsHorizontal())));
            }

            item.Open = false;
            if (DisableClosed)
            {
                item.ContentObject.SetActive(false);
            }
            else
            {
                var axis = IsHorizontal() ? RectTransform.Axis.Horizontal : RectTransform.Axis.Vertical;
                item.ContentObjectRect.SetSizeWithCurrentAnchors(axis, 0f);
            }

            UpdateLayout();

            OnToggleItem.Invoke(item);
        }
コード例 #2
0
ファイル: Accordion.cs プロジェクト: Risu-swift/Deliverance
        /// <summary>
        /// Adds the callback.
        /// </summary>
        /// <param name="item">Item.</param>
        protected virtual void AddCallback(AccordionItem item)
        {
            if (item.Open)
            {
                Open(item, false);
            }
            else
            {
                Close(item, false);
            }

            UnityAction callback = () => ToggleItem(item);

            var component = Utilites.GetOrAddComponent <AccordionItemComponent>(item.ToggleObject);

            component.OnClick.AddListener(callback);

            item.ContentObjectRect    = item.ContentObject.transform as RectTransform;
            item.ContentLayoutElement = Utilites.GetOrAddComponent <LayoutElement>(item.ContentObject);
            if (IsHorizontal())
            {
                item.ContentLayoutElement.minWidth = 0f;
            }
            else
            {
                item.ContentLayoutElement.minHeight = 0f;
            }

            UpdateItemSize(item);

            Components.Add(component);
            Callbacks.Add(callback);
        }
コード例 #3
0
ファイル: Accordion.cs プロジェクト: RockfFestival/Rock
        /// <summary>
        /// Adds the callback.
        /// </summary>
        /// <param name="item">Item.</param>
        protected virtual void AddCallback(AccordionItem item)
        {
            if (item.Open)
            {
                Open(item, false);
            }
            else
            {
                Close(item, false);
            }
            UnityAction callback = () => ToggleItem(item);

            var component = Utilites.GetOrAddComponent <AccordionItemComponent>(item.ToggleObject);

            component.OnClick.AddListener(callback);

            item.ContentObjectRect    = item.ContentObject.transform as RectTransform;
            item.ContentLayoutElement = Utilites.GetOrAddComponent <LayoutElement>(item.ContentObject);
            item.ContentObjectHeight  = item.ContentObjectRect.rect.height;
            if (item.ContentObjectHeight == 0f)
            {
                item.ContentObjectHeight = LayoutUtility.GetPreferredHeight(item.ContentObjectRect);
            }
            item.ContentObjectWidth = item.ContentObjectRect.rect.width;
            if (item.ContentObjectWidth == 0f)
            {
                item.ContentObjectWidth = LayoutUtility.GetPreferredWidth(item.ContentObjectRect);
            }

            Components.Add(component);
            Callbacks.Add(callback);
        }
コード例 #4
0
ファイル: Accordion.cs プロジェクト: RockfFestival/Rock
        /// <summary>
        /// Open coroutine.
        /// </summary>
        /// <param name="item">Item.</param>
        /// <returns>The coroutine.</returns>
        protected virtual IEnumerator OpenCoroutine(AccordionItem item)
        {
            item.ContentObject.SetActive(true);
            item.Open = true;

            if (ResizeMethod == ResizeMethods.Size)
            {
                yield return(StartCoroutine(Animations.Open(item.ContentObjectRect, AnimationDuration, IsHorizontal(), UnscaledTime, () => {
                    if (IsHorizontal())
                    {
                        item.ContentLayoutElement.preferredWidth = -1;
                    }
                    else
                    {
                        item.ContentLayoutElement.preferredHeight = -1;
                    }
                    LayoutUtilites.UpdateLayout(item.ContentObjectRect.parent.GetComponent <LayoutGroup>());
                    item.ContentObjectWidth = item.ContentObjectRect.rect.width;
                    item.ContentObjectHeight = item.ContentObjectRect.rect.height;
                })));
            }
            else if (ResizeMethod == ResizeMethods.Flexible)
            {
                yield return(StartCoroutine(Animations.OpenFlexible(item.ContentObjectRect, AnimationDuration, IsHorizontal())));
            }

            UpdateLayout();

            OnToggleItem.Invoke(item);
        }
コード例 #5
0
        /// <summary>
        /// Adds the callback.
        /// </summary>
        /// <param name="item">Item.</param>
        protected virtual void AddCallback(AccordionItem item)
        {
            if (item.Open)
            {
                Open(item, false);
            }
            else
            {
                Close(item, false);
            }
            UnityAction callback = () => ToggleItem(item);

            item.ToggleObject.AddComponent <AccordionItemComponent>().OnClick.AddListener(callback);
            item.ContentObjectRect    = item.ContentObject.transform as RectTransform;
            item.ContentLayoutElement = item.ContentObject.GetComponent <LayoutElement>() ?? item.ContentObject.AddComponent <LayoutElement>();
            item.ContentObjectHeight  = item.ContentObjectRect.rect.height;
            if (item.ContentObjectHeight == 0f)
            {
                item.ContentObjectHeight = item.ContentLayoutElement.preferredHeight;
            }
            item.ContentObjectWidth = item.ContentObjectRect.rect.width;
            if (item.ContentObjectWidth == 0f)
            {
                item.ContentObjectWidth = item.ContentLayoutElement.preferredWidth;
            }

            callbacks.Add(callback);
        }
コード例 #6
0
        /// <summary>
        /// Close the specified item and animate.
        /// </summary>
        /// <param name="item">Item.</param>
        /// <param name="animate">If set to <c>true</c> animate.</param>
        protected virtual void Close(AccordionItem item, bool animate)
        {
            if (item.CurrentCorutine != null)
            {
                StopCoroutine(item.CurrentCorutine);
                item.ContentObject.SetActive(true);
                if (IsHorizontal())
                {
                    item.ContentObjectRect.SetSizeWithCurrentAnchors(RectTransform.Axis.Horizontal, item.ContentObjectWidth);
                    item.ContentLayoutElement.preferredWidth = item.ContentObjectWidth;
                }
                else
                {
                    item.ContentObjectRect.SetSizeWithCurrentAnchors(RectTransform.Axis.Vertical, item.ContentObjectHeight);
                    item.ContentLayoutElement.preferredHeight = item.ContentObjectHeight;
                }
            }
            if (item.ContentObjectRect != null)
            {
                item.ContentObjectHeight = item.ContentObjectRect.rect.height;
                item.ContentObjectWidth  = item.ContentObjectRect.rect.width;
            }

            if (animate)
            {
                item.CurrentCorutine = StartCoroutine(HideCorutine(item));
            }
            else
            {
                item.ContentObject.SetActive(false);
                item.Open = false;
                OnToggleItem.Invoke(item);
            }
        }
コード例 #7
0
ファイル: Accordion.cs プロジェクト: Risu-swift/Deliverance
        /// <summary>
        /// Function called when animation ended.
        /// </summary>
        /// <param name="item">Animated item.</param>
        /// <param name="isOpen">Is open?</param>
        protected virtual void AnimationEnded(AccordionItem item, bool isOpen)
        {
            item.CurrentCoroutine = null;

            if (ResizeMethod == ResizeMethods.Size)
            {
                if (IsHorizontal())
                {
                    item.ContentLayoutElement.preferredWidth = -1f;
                }
                else
                {
                    item.ContentLayoutElement.preferredHeight = -1f;
                }
            }

            if (!isOpen)
            {
                item.Open = false;

                if (DisableClosed)
                {
                    item.ContentObject.SetActive(false);
                }
                else
                {
                    var axis = IsHorizontal() ? RectTransform.Axis.Horizontal : RectTransform.Axis.Vertical;
                    item.ContentObjectRect.SetSizeWithCurrentAnchors(axis, 0f);
                }
            }

            UpdateLayout();

            OnToggleItem.Invoke(item);
        }
コード例 #8
0
ファイル: Accordion.cs プロジェクト: RockfFestival/Rock
 /// <summary>
 /// Close the specified item.
 /// </summary>
 /// <param name="item">Item.</param>
 public virtual void Close(AccordionItem item)
 {
     if (!item.Open)
     {
         return;
     }
     Close(item, Animate);
 }
コード例 #9
0
ファイル: Accordion.cs プロジェクト: Risu-swift/Deliverance
        /// <summary>
        /// Close the specified item without animation.
        /// </summary>
        /// <param name="item">Item.</param>
        public virtual void ForceClose(AccordionItem item)
        {
            if (!item.Open)
            {
                return;
            }

            Close(item, false);
        }
コード例 #10
0
ファイル: Accordion.cs プロジェクト: pmindek/cellVIEWcut
        /// <summary>
        /// Hides the corutine.
        /// </summary>
        /// <returns>The corutine.</returns>
        /// <param name="item">Item.</param>
        IEnumerator HideCorutine(AccordionItem item)
        {
            yield return(StartCoroutine(Animations.Collapse(item.ContentObjectRect)));

            item.Open = false;
            item.ContentObject.SetActive(false);

            OnToggleItem.Invoke(item);
        }
コード例 #11
0
ファイル: Accordion.cs プロジェクト: pmindek/cellVIEWcut
        /// <summary>
        /// Opens the corutine.
        /// </summary>
        /// <returns>The corutine.</returns>
        /// <param name="item">Item.</param>
        IEnumerator OpenCorutine(AccordionItem item)
        {
            item.ContentObject.SetActive(true);
            item.Open = true;

            yield return(StartCoroutine(Animations.Open(item.ContentObjectRect)));

            OnToggleItem.Invoke(item);
        }
コード例 #12
0
        // Token: 0x06004632 RID: 17970 RVA: 0x0017DA10 File Offset: 0x0017BE10
        private IEnumerator HideCorutine(AccordionItem item)
        {
            yield return(base.StartCoroutine(Animations.Collapse(item.ContentObjectRect, 0.5f)));

            item.Open = false;
            item.ContentObject.SetActive(false);
            this.OnToggleItem.Invoke(item);
            yield break;
        }
コード例 #13
0
        // Token: 0x06004631 RID: 17969 RVA: 0x0017D9EC File Offset: 0x0017BDEC
        private IEnumerator OpenCorutine(AccordionItem item)
        {
            item.ContentObject.SetActive(true);
            item.Open = true;
            yield return(base.StartCoroutine(Animations.Open(item.ContentObjectRect, 0.5f)));

            this.OnToggleItem.Invoke(item);
            yield break;
        }
コード例 #14
0
        /// <summary>
        /// Opens the corutine.
        /// </summary>
        /// <returns>The corutine.</returns>
        /// <param name="item">Item.</param>
        protected virtual IEnumerator OpenCorutine(AccordionItem item)
        {
            item.ContentObject.SetActive(true);
            item.Open = true;

            yield return(StartCoroutine(Animations.Open(item.ContentObjectRect, AnimationDuration, IsHorizontal())));

            UpdateLayout();

            OnToggleItem.Invoke(item);
        }
コード例 #15
0
        /// <summary>
        /// Hides the corutine.
        /// </summary>
        /// <returns>The corutine.</returns>
        /// <param name="item">Item.</param>
        protected virtual IEnumerator HideCorutine(AccordionItem item)
        {
            yield return(StartCoroutine(Animations.Collapse(item.ContentObjectRect, AnimationDuration, IsHorizontal())));

            item.Open = false;
            item.ContentObject.SetActive(false);

            UpdateLayout();

            OnToggleItem.Invoke(item);
        }
コード例 #16
0
ファイル: Accordion.cs プロジェクト: RockfFestival/Rock
 /// <summary>
 /// Open the specified item.
 /// </summary>
 /// <param name="item">Item.</param>
 public virtual void Open(AccordionItem item)
 {
     if (item.Open)
     {
         return;
     }
     if (OnlyOneOpen)
     {
         DataSource.Where(IsOpen).ForEach(Close);
     }
     Open(item, Animate);
 }
コード例 #17
0
ファイル: Accordion.cs プロジェクト: Risu-swift/Deliverance
        /// <summary>
        /// Update item size.
        /// </summary>
        /// <param name="item">Item.</param>
        protected static void UpdateItemSize(AccordionItem item)
        {
            LayoutUtilites.UpdateLayoutsRecursive(item.ContentObjectRect.transform);

            item.ContentObjectWidth = LayoutUtilites.IsWidthControlled(item.ContentObjectRect)
                                ? LayoutUtility.GetPreferredWidth(item.ContentObjectRect)
                                : item.ContentObjectRect.rect.width;

            item.ContentObjectHeight = LayoutUtilites.IsHeightControlled(item.ContentObjectRect)
                                ? LayoutUtility.GetPreferredHeight(item.ContentObjectRect)
                                : item.ContentObjectRect.rect.height;
        }
コード例 #18
0
ファイル: Accordion.cs プロジェクト: Risu-swift/Deliverance
        /// <summary>
        /// Open the specified item.
        /// </summary>
        /// <param name="item">Item.</param>
        public virtual void Open(AccordionItem item)
        {
            if (item.Open)
            {
                return;
            }

            if (OnlyOneOpen)
            {
                CloseAll();
            }

            Open(item, Animate);
        }
コード例 #19
0
ファイル: Accordion.cs プロジェクト: Risu-swift/Deliverance
        /// <summary>
        /// Open the specified item without animation.
        /// </summary>
        /// <param name="item">Item.</param>
        public virtual void ForceOpen(AccordionItem item)
        {
            if (item.Open)
            {
                return;
            }

            if (OnlyOneOpen)
            {
                CloseAll(false);
            }

            Open(item, false);
        }
コード例 #20
0
ファイル: Accordion.cs プロジェクト: Risu-swift/Deliverance
        /// <summary>
        /// Open the specified item and animate.
        /// </summary>
        /// <param name="item">Item.</param>
        /// <param name="animate">If set to <c>true</c> animate.</param>
        protected virtual void Open(AccordionItem item, bool animate)
        {
            StopAnimation(item, true);

            if (animate)
            {
                item.CurrentCoroutine = StartCoroutine(OpenCoroutine(item));
            }
            else
            {
                item.ContentObject.SetActive(true);
                item.Open = true;
                OnToggleItem.Invoke(item);
            }
        }
コード例 #21
0
ファイル: Accordion.cs プロジェクト: Risu-swift/Deliverance
        /// <summary>
        /// Close the specified item and animate.
        /// </summary>
        /// <param name="item">Item.</param>
        /// <param name="animate">If set to <c>true</c> animate.</param>
        protected virtual void Close(AccordionItem item, bool animate)
        {
            StopAnimation(item, false);

            if (animate)
            {
                item.CurrentCoroutine = StartCoroutine(HideCoroutine(item));
            }
            else
            {
                item.ContentObject.SetActive(false);
                item.Open = false;
                OnToggleItem.Invoke(item);
            }
        }
コード例 #22
0
ファイル: Accordion.cs プロジェクト: Risu-swift/Deliverance
        /// <summary>
        /// Hide coroutine.
        /// </summary>
        /// <returns>The coroutine.</returns>
        /// <param name="item">Item.</param>
        protected virtual IEnumerator HideCoroutine(AccordionItem item)
        {
            UpdateItemSize(item);

            if (ResizeMethod == ResizeMethods.Size)
            {
                yield return(StartCoroutine(AnimationClose(item.ContentObjectRect, AnimationDuration, IsHorizontal(), UnscaledTime, DoNothing)));
            }
            else if (ResizeMethod == ResizeMethods.Flexible)
            {
                yield return(StartCoroutine(AnimationCloseFlexible(item.ContentObjectRect, AnimationDuration, IsHorizontal(), UnscaledTime, DoNothing)));
            }

            AnimationEnded(item, false);
        }
コード例 #23
0
ファイル: Accordion.cs プロジェクト: Risu-swift/Deliverance
        /// <summary>
        /// Open coroutine.
        /// </summary>
        /// <param name="item">Item.</param>
        /// <returns>The coroutine.</returns>
        protected virtual IEnumerator OpenCoroutine(AccordionItem item)
        {
            item.ContentObject.SetActive(true);
            item.Open = true;
            UpdateItemSize(item);

            if (ResizeMethod == ResizeMethods.Size)
            {
                yield return(StartCoroutine(AnimationOpen(item.ContentObjectRect, AnimationDuration, IsHorizontal(), UnscaledTime, DoNothing)));
            }
            else if (ResizeMethod == ResizeMethods.Flexible)
            {
                yield return(StartCoroutine(AnimationOpenFlexible(item.ContentObjectRect, AnimationDuration, IsHorizontal(), UnscaledTime, DoNothing)));
            }

            AnimationEnded(item, true);
        }
コード例 #24
0
		void RemoveCallback(AccordionItem item, int index)
		{
			if (item==null)
			{
				return ;
			}
			if (item.ToggleObject==null)
			{
				return ;
			}
			
			var component = item.ToggleObject.GetComponent<AccordionItemComponent>();
			if ((component!=null) && (index < callbacks.Count))
			{
				component.OnClick.RemoveListener(callbacks[index]);
			}
		}
コード例 #25
0
ファイル: Accordion.cs プロジェクト: RockfFestival/Rock
        /// <summary>
        /// Open the specified item and animate.
        /// </summary>
        /// <param name="item">Item.</param>
        /// <param name="animate">If set to <c>true</c> animate.</param>
        protected virtual void Open(AccordionItem item, bool animate)
        {
            if (item.CurrentCoroutine != null)
            {
                StopCoroutine(item.CurrentCoroutine);

                if (IsHorizontal())
                {
                    item.ContentObjectRect.SetSizeWithCurrentAnchors(RectTransform.Axis.Horizontal, item.ContentObjectWidth);
                    if (ResizeMethod == ResizeMethods.Size)
                    {
                        item.ContentLayoutElement.preferredWidth = -1f;
                    }
                    else if (ResizeMethod == ResizeMethods.Flexible)
                    {
                        item.ContentLayoutElement.flexibleWidth = 1f;
                    }
                }
                else
                {
                    item.ContentObjectRect.SetSizeWithCurrentAnchors(RectTransform.Axis.Vertical, item.ContentObjectHeight);
                    if (ResizeMethod == ResizeMethods.Size)
                    {
                        item.ContentLayoutElement.preferredHeight = -1f;
                    }
                    else if (ResizeMethod == ResizeMethods.Flexible)
                    {
                        item.ContentLayoutElement.flexibleHeight = 1f;
                    }
                }
                item.ContentObject.SetActive(false);
            }

            if (animate)
            {
                item.CurrentCoroutine = StartCoroutine(OpenCoroutine(item));
            }
            else
            {
                item.ContentObject.SetActive(true);
                OnToggleItem.Invoke(item);
            }

            item.ContentObject.SetActive(true);
            item.Open = true;
        }
コード例 #26
0
		void AddCallback(AccordionItem item)
		{
			if (item.Open)
			{
				Open(item, false);
			}
			else
			{
				Close(item, false);
			}
			UnityAction callback = () => ToggleItem(item);
			
			item.ToggleObject.AddComponent<AccordionItemComponent>().OnClick.AddListener(callback);
			item.ContentObjectRect = item.ContentObject.transform as RectTransform;
			item.ContentObjectHeight = item.ContentObjectRect.rect.height;
			
			callbacks.Add(callback);
		}
コード例 #27
0
        /// <summary>
        /// Removes the callback.
        /// </summary>
        /// <param name="item">Item.</param>
        /// <param name="index">Index.</param>
        protected virtual void RemoveCallback(AccordionItem item, int index)
        {
            if (item == null)
            {
                return;
            }
            if (item.ToggleObject == null)
            {
                return;
            }

            var component = item.ToggleObject.GetComponent <AccordionItemComponent>();

            if ((component != null) && (index < callbacks.Count))
            {
                component.OnClick.RemoveListener(callbacks[index]);
            }
        }
コード例 #28
0
 // Token: 0x06004630 RID: 17968 RVA: 0x0017D974 File Offset: 0x0017BD74
 private void Close(AccordionItem item, bool animate = false)
 {
     if (item.CurrentCorutine != null)
     {
         base.StopCoroutine(item.CurrentCorutine);
         item.ContentObject.SetActive(true);
         item.ContentObjectRect.SetSizeWithCurrentAnchors(RectTransform.Axis.Vertical, item.ContentObjectHeight);
     }
     if (animate)
     {
         item.CurrentCorutine = base.StartCoroutine(this.HideCorutine(item));
     }
     else
     {
         item.ContentObject.SetActive(false);
         this.OnToggleItem.Invoke(item);
     }
 }
コード例 #29
0
ファイル: Accordion.cs プロジェクト: pmindek/cellVIEWcut
        void AddCallback(AccordionItem item)
        {
            if (item.Open)
            {
                Open(item, false);
            }
            else
            {
                Close(item, false);
            }
            UnityAction callback = () => ToggleItem(item);

            item.ToggleObject.AddComponent <AccordionItemComponent>().OnClick.AddListener(callback);
            item.ContentObjectRect   = item.ContentObject.transform as RectTransform;
            item.ContentObjectHeight = item.ContentObjectRect.rect.height;

            callbacks.Add(callback);
        }
コード例 #30
0
ファイル: Accordion.cs プロジェクト: pmindek/cellVIEWcut
        /// <summary>
        /// Toggles the item.
        /// </summary>
        /// <param name="item">Item.</param>
        void ToggleItem(AccordionItem item)
        {
            if (item.Open)
            {
                if (!OnlyOneOpen)
                {
                    Close(item);
                }
            }
            else
            {
                if (OnlyOneOpen)
                {
                    Items.Where(IsOpen).ForEach(Close);
                }

                Open(item);
            }
        }
コード例 #31
0
ファイル: Accordion.cs プロジェクト: RockfFestival/Rock
        /// <summary>
        /// Toggles the item.
        /// </summary>
        /// <param name="item">Item.</param>
        public virtual void ToggleItem(AccordionItem item)
        {
            if (item.Open)
            {
                if (!OnlyOneOpen)
                {
                    Close(item);
                }
            }
            else
            {
                if (OnlyOneOpen)
                {
                    DataSource.Where(IsOpen).ForEach(Close);
                }

                Open(item);
            }
        }
コード例 #32
0
ファイル: Accordion.cs プロジェクト: Risu-swift/Deliverance
        /// <summary>
        /// Toggles the item.
        /// </summary>
        /// <param name="item">Item.</param>
        public virtual void ToggleItem(AccordionItem item)
        {
            if (item.Open)
            {
                if (!OnlyOneOpen || AllItemsCanBeClosed)
                {
                    Close(item);
                }
            }
            else
            {
                if (OnlyOneOpen)
                {
                    CloseAll();
                }

                Open(item);
            }
        }
コード例 #33
0
		/// <summary>
		/// Toggles the item.
		/// </summary>
		/// <param name="item">Item.</param>
		void ToggleItem(AccordionItem item)
		{
			if (item.Open)
			{
				if (!OnlyOneOpen)
				{
					Close(item);
				}
			}
			else
			{
				if (OnlyOneOpen)
				{
					Items.Where(IsOpen).ForEach(Close);
				}

				Open(item);
			}
		}
コード例 #34
0
		void Open(AccordionItem item)
		{
			Open(item, Animate);
		}
コード例 #35
0
		void Close(AccordionItem item)
		{
			Close(item, Animate);
		}
コード例 #36
0
		bool IsOpen(AccordionItem item)
		{
			return item.Open;
		}
コード例 #37
0
		/// <summary>
		/// Close the specified item and animate.
		/// </summary>
		/// <param name="item">Item.</param>
		/// <param name="animate">If set to <c>true</c> animate.</param>
		void Close(AccordionItem item, bool animate)
		{
			if (item.CurrentCorutine!=null)
			{
				StopCoroutine(item.CurrentCorutine);
				item.ContentObject.SetActive(true);
				item.ContentObjectRect.SetSizeWithCurrentAnchors(RectTransform.Axis.Vertical, item.ContentObjectHeight);
			}
			if (animate)
			{
				item.CurrentCorutine = StartCoroutine(HideCorutine(item));
			}
			else
			{
				item.ContentObject.SetActive(false);
				item.Open = false;
				OnToggleItem.Invoke(item);
			}

		}
コード例 #38
0
		/// <summary>
		/// Opens the corutine.
		/// </summary>
		/// <returns>The corutine.</returns>
		/// <param name="item">Item.</param>
		IEnumerator OpenCorutine(AccordionItem item)
		{
			item.ContentObject.SetActive(true);
			item.Open = true;

			yield return StartCoroutine(Animations.Open(item.ContentObjectRect));

			OnToggleItem.Invoke(item);
		}
コード例 #39
0
		/// <summary>
		/// Hides the corutine.
		/// </summary>
		/// <returns>The corutine.</returns>
		/// <param name="item">Item.</param>
		IEnumerator HideCorutine(AccordionItem item)
		{
			yield return StartCoroutine(Animations.Collapse(item.ContentObjectRect));

			item.Open = false;
			item.ContentObject.SetActive(false);

			OnToggleItem.Invoke(item);
		}