public override GameObject CreateTemplate()
        {
            var dropdown = new GameObject("DropDown", typeof(Dropdown), typeof(Image)).GetComponent <Dropdown>();
            var label    = new GameObject("Label", typeof(Text)).GetComponent <Text>();
            var template = new GameObject("Template", typeof(ScrollRect), typeof(Image)).GetComponent <ScrollRect>();
            var viewport = new GameObject("Viewport", typeof(Image), typeof(Mask)).GetComponent <Image>();
            var content  = new GameObject("Content", typeof(RectTransform)).GetComponent <RectTransform>();
            var item     = new GameObject("Item", typeof(Toggle)).GetComponent <Toggle>();
            var item_bg  = new GameObject("Item Background", typeof(Image)).GetComponent <Image>();
            var item_cm  = new GameObject("Item CheckMask", typeof(Image)).GetComponent <Image>();
            var item_lb  = new GameObject("Item Label", typeof(Text)).GetComponent <Text>();

            label.transform.SetParent(dropdown.transform, false);
            template.transform.SetParent(dropdown.transform, false);
            viewport.transform.SetParent(template.transform, false);
            content.transform.SetParent(viewport.transform, false);
            item.transform.SetParent(content.transform, false);
            item_bg.transform.SetParent(item.transform, false);
            item_bg.transform.SetParent(item.transform, false);
            item_cm.transform.SetParent(item.transform, false);
            item_lb.transform.SetParent(item.transform, false);

            dropdown.targetGraphic = dropdown.GetComponent <Image>();
            dropdown.captionText   = label;
            dropdown.template      = template.transform as RectTransform;
            dropdown.itemText      = item_lb;

            template.viewport = viewport.transform as RectTransform;
            template.content  = content;

            item.targetGraphic = item_bg;
            item.graphic       = item_cm;

            PSDImporterUtility.SetNormalAnchor(AnchoType.XStretch | AnchoType.YStretch, dropdown.transform as RectTransform, label.transform as RectTransform);
            PSDImporterUtility.SetNormalAnchor(AnchoType.XCenter | AnchoType.YCenter, dropdown.transform as RectTransform, template.transform as RectTransform);
            PSDImporterUtility.SetNormalAnchor(AnchoType.XStretch | AnchoType.YStretch, template.transform as RectTransform, viewport.transform as RectTransform);
            PSDImporterUtility.SetNormalAnchor(AnchoType.XStretch | AnchoType.Up, viewport.transform as RectTransform, content.transform as RectTransform);
            PSDImporterUtility.SetNormalAnchor(AnchoType.XStretch | AnchoType.YStretch, content.transform as RectTransform, item.transform as RectTransform);
            PSDImporterUtility.SetNormalAnchor(AnchoType.XStretch | AnchoType.YStretch, item.transform as RectTransform, item_bg.transform as RectTransform);
            PSDImporterUtility.SetNormalAnchor(AnchoType.Left | AnchoType.YCenter, item.transform as RectTransform, item_cm.transform as RectTransform);
            PSDImporterUtility.SetNormalAnchor(AnchoType.XStretch | AnchoType.YStretch, item.transform as RectTransform, item_lb.transform as RectTransform);

            (template.transform as RectTransform).pivot = new Vector2(0.5f, 0.5f);
            content.pivot     = new Vector2(0.5f, 1);
            content.sizeDelta = new Vector2(0, content.sizeDelta.y);
            (item_bg.transform as RectTransform).sizeDelta = Vector2.zero;
            (item_cm.transform as RectTransform).sizeDelta = new Vector2(20, 20);
            (item_lb.transform as RectTransform).sizeDelta = Vector2.zero;

            item_lb.alignment = label.alignment = TextAnchor.MiddleCenter;
            viewport.GetComponent <Image>().color = new Color(0, 0, 0, 0.1f);
            item_cm.enabled = false;
            return(dropdown.gameObject);
        }
Example #2
0
        protected void StretchTitle(UGUINode node)
        {
            var texts = node.transform.GetComponentsInChildren <Text>();
            var title = Array.Find(texts, x => MatchAddress(x.name, rule.titleAddress));

            if (title)
            {
                PSDImporterUtility.SetNormalAnchor(AnchoType.XStretch | AnchoType.YStretch, node.transform as RectTransform, title.transform as RectTransform);
                title.rectTransform.anchoredPosition = Vector3.zero;
            }
        }
Example #3
0
        protected void StretchTitle(UGUINode node)
        {
            var texts = node.transform.GetComponentsInChildren <Text>();

            var title = Array.Find(texts, x => MatchAddress(x.name, titleAddress));

            if (title)
            {
                PSDImporterUtility.SetNormalAnchor(AnchoType.XStretch | AnchoType.YStretch, node.transform as RectTransform, title.transform as RectTransform);
                title.rectTransform.anchoredPosition = Vector3.zero;
                title.alignment          = TextAnchor.MiddleCenter;
                title.horizontalOverflow = HorizontalWrapMode.Overflow;
                title.verticalOverflow   = VerticalWrapMode.Truncate;
            }
        }