Exemple #1
0
            /// <summary>
            /// Calculates the size of the component for the specified item.
            /// </summary>
            /// <returns>The component size.</returns>
            /// <param name="item">Item.</param>
            protected virtual Vector2 CalculateComponentSize(TItem item)
            {
                if (Owner.DefaultItemLayout == null)
                {
                    return(Owner.ItemSize);
                }

                Owner.SetData(Owner.DefaultItemCopy, item);

                LayoutUtilites.UpdateLayoutsRecursive(Owner.Container);

                return(Owner.DefaultItemCopyRect.rect.size);
            }
            /// <summary>
            /// Calculates the size of the component for the specified item.
            /// </summary>
            /// <returns>The component size.</returns>
            /// <param name="item">Item.</param>
            protected virtual Vector2 CalculateComponentSize(TItem item)
            {
                if (Owner.DefaultItemLayout == null)
                {
                    return(Owner.ItemSize);
                }

                Owner.SetData(Owner.DefaultItemCopy, item);

                Owner.DefaultItemNestedLayouts.ForEach(LayoutUtilites.UpdateLayout);

                LayoutUtilites.UpdateLayout(Owner.DefaultItemLayout);

                var size = new Vector2(
                    LayoutUtility.GetPreferredWidth(Owner.DefaultItemCopyRect),
                    LayoutUtility.GetPreferredHeight(Owner.DefaultItemCopyRect));

                return(size);
            }