private static void ApplyLayoutElement <T>(ElementStyleData style, UIReference <T> reference) where T : MonoBehaviour { var minWidth = style.minWidth; var minHeight = style.minHeight; var preferredWidth = style.preferredWidth; var preferredHeight = style.preferredHeight; var flexibleWidth = style.flexibleWidth; var flexibleHeight = style.flexibleHeight; // LayoutElement uses -1 values as disabled var useLayout = minWidth >= 0 || minHeight >= 0 || preferredWidth >= 0 || preferredHeight >= 0 || flexibleWidth >= 0 || flexibleHeight >= 0; if (UpdateComponent(reference.value, ref reference.layoutElement, useLayout)) { reference.layoutElement.minWidth = minWidth; reference.layoutElement.minHeight = minHeight; reference.layoutElement.preferredWidth = preferredWidth; reference.layoutElement.preferredHeight = preferredHeight; reference.layoutElement.flexibleWidth = flexibleWidth; reference.layoutElement.flexibleHeight = flexibleHeight; } }
private static void ApplyLayout <T>(ElementStyleData style, UIReference <T> behaviour) where T : MonoBehaviour { if (behaviour.value && visitedObjectsSet.Add(behaviour.value.gameObject)) { ApplyLayoutElement(style, behaviour); ApplyContentSizeFitter(style, behaviour); } }
private static void ApplyContentSizeFitter <T>(ElementStyleData style, UIReference <T> reference) where T : MonoBehaviour { var horizontalFit = style.horizontalFit; var verticalFit = style.verticalFit; var useFitter = horizontalFit != ContentSizeFitter.FitMode.Unconstrained || verticalFit != ContentSizeFitter.FitMode.Unconstrained; if (UpdateComponent(reference.value, ref reference.sizeFitter, useFitter)) { reference.sizeFitter.horizontalFit = horizontalFit; reference.sizeFitter.verticalFit = verticalFit; } }