Inheritance: UnityEngine.EventSystems.UIBehaviour, ICanvasRaycastFilter, IMaterialModifier
コード例 #1
0
 static public int get_graphic(IntPtr l)
 {
     try {
                     #if DEBUG
         var    method     = System.Reflection.MethodBase.GetCurrentMethod();
         string methodName = GetMethodName(method);
                     #if UNITY_5_5_OR_NEWER
         UnityEngine.Profiling.Profiler.BeginSample(methodName);
                     #else
         Profiler.BeginSample(methodName);
                     #endif
                     #endif
         UnityEngine.UI.Mask self = (UnityEngine.UI.Mask)checkSelf(l);
         pushValue(l, true);
         pushValue(l, self.graphic);
         return(2);
     }
     catch (Exception e) {
         return(error(l, e));
     }
             #if DEBUG
     finally {
                     #if UNITY_5_5_OR_NEWER
         UnityEngine.Profiling.Profiler.EndSample();
                     #else
         Profiler.EndSample();
                     #endif
     }
             #endif
 }
コード例 #2
0
 static public int GetModifiedMaterial(IntPtr l)
 {
     try {
                     #if DEBUG
         var    method     = System.Reflection.MethodBase.GetCurrentMethod();
         string methodName = GetMethodName(method);
                     #if UNITY_5_5_OR_NEWER
         UnityEngine.Profiling.Profiler.BeginSample(methodName);
                     #else
         Profiler.BeginSample(methodName);
                     #endif
                     #endif
         UnityEngine.UI.Mask  self = (UnityEngine.UI.Mask)checkSelf(l);
         UnityEngine.Material a1;
         checkType(l, 2, out a1);
         var ret = self.GetModifiedMaterial(a1);
         pushValue(l, true);
         pushValue(l, ret);
         return(2);
     }
     catch (Exception e) {
         return(error(l, e));
     }
             #if DEBUG
     finally {
                     #if UNITY_5_5_OR_NEWER
         UnityEngine.Profiling.Profiler.EndSample();
                     #else
         Profiler.EndSample();
                     #endif
     }
             #endif
 }
コード例 #3
0
    // Construct and display
    public LogWindow()
    {
        Game game = Game.Get();

        // If a dialog window is open we force it closed (this shouldn't happen)
        foreach (GameObject go in GameObject.FindGameObjectsWithTag("dialog"))
        {
            Object.Destroy(go);
        }

        // white background because font rendering is broken
        string log = "";

        foreach (Quest.LogEntry e in game.quest.log)
        {
            log += e.GetEntry();
        }
        log.Trim('\n');
        DialogBox db = new DialogBox(new Vector2(UIScaler.GetHCenter(-14f), 0.5f), new Vector2(28, 24.5f), log, Color.black, new Color(1, 1, 1, 0.9f));

        db.AddBorder();
        // This material works for the mask, but only renders in black
        db.textObj.GetComponent <UnityEngine.UI.Text>().material = (Material)Resources.Load("Fonts/FontMaterial");
        UnityEngine.UI.ScrollRect scrollRect = db.background.AddComponent <UnityEngine.UI.ScrollRect>();
        scrollRect.content    = db.textObj.GetComponent <RectTransform>();
        scrollRect.horizontal = false;
        RectTransform textRect = db.textObj.GetComponent <RectTransform>();

        textRect.sizeDelta = new Vector2(textRect.rect.width, db.textObj.GetComponent <UnityEngine.UI.Text>().preferredHeight);
        scrollRect.verticalNormalizedPosition = 0f;

        UnityEngine.UI.Mask mask = db.background.AddComponent <UnityEngine.UI.Mask>();

        new TextButton(new Vector2(UIScaler.GetHCenter(-3f), 25f), new Vector2(6, 2), "Close", delegate { Destroyer.Dialog(); });
    }
コード例 #4
0
    static public int set_showMaskGraphic(IntPtr l)
    {
        UnityEngine.UI.Mask o = (UnityEngine.UI.Mask)checkSelf(l);
        bool v;

        checkType(l, 2, out v);
        o.showMaskGraphic = v;
        return(0);
    }
コード例 #5
0
 static public int get_rectTransform(IntPtr l)
 {
     try {
         UnityEngine.UI.Mask self = (UnityEngine.UI.Mask)checkSelf(l);
         pushValue(l, self.rectTransform);
         return(1);
     }
     catch (Exception e) {
         return(error(l, e));
     }
 }
コード例 #6
0
 static public int get_graphic(IntPtr l)
 {
     try {
         UnityEngine.UI.Mask self = (UnityEngine.UI.Mask)checkSelf(l);
         pushValue(l, self.graphic);
         return(1);
     }
     catch (Exception e) {
         return(error(l, e));
     }
 }
コード例 #7
0
 static public int OnSiblingGraphicEnabledDisabled(IntPtr l)
 {
     try{
         UnityEngine.UI.Mask self = (UnityEngine.UI.Mask)checkSelf(l);
         self.OnSiblingGraphicEnabledDisabled();
         return(0);
     }
     catch (Exception e) {
         LuaDLL.luaL_error(l, e.ToString());
         return(0);
     }
 }
コード例 #8
0
 static public int OnSiblingGraphicEnabledDisabled(IntPtr l)
 {
     try {
         UnityEngine.UI.Mask self = (UnityEngine.UI.Mask)checkSelf(l);
         self.OnSiblingGraphicEnabledDisabled();
         pushValue(l, true);
         return(1);
     }
     catch (Exception e) {
         return(error(l, e));
     }
 }
コード例 #9
0
 static public int MaskEnabled(IntPtr l)
 {
     try {
         UnityEngine.UI.Mask self = (UnityEngine.UI.Mask)checkSelf(l);
         var ret = self.MaskEnabled();
         pushValue(l, ret);
         return(1);
     }
     catch (Exception e) {
         return(error(l, e));
     }
 }
コード例 #10
0
 static public int get_showMaskGraphic(IntPtr l)
 {
     try {
         UnityEngine.UI.Mask self = (UnityEngine.UI.Mask)checkSelf(l);
         pushValue(l, self.showMaskGraphic);
         return(1);
     }
     catch (Exception e) {
         LuaDLL.luaL_error(l, e.ToString());
         return(0);
     }
 }
コード例 #11
0
 static public int MaskEnabled(IntPtr l)
 {
     try{
         UnityEngine.UI.Mask self = (UnityEngine.UI.Mask)checkSelf(l);
         System.Boolean      ret  = self.MaskEnabled();
         pushValue(l, ret);
         return(1);
     }
     catch (Exception e) {
         LuaDLL.luaL_error(l, e.ToString());
         return(0);
     }
 }
コード例 #12
0
 static public int set_showMaskGraphic(IntPtr l)
 {
     try {
         UnityEngine.UI.Mask self = (UnityEngine.UI.Mask)checkSelf(l);
         bool v;
         checkType(l, 2, out v);
         self.showMaskGraphic = v;
         return(0);
     }
     catch (Exception e) {
         return(error(l, e));
     }
 }
コード例 #13
0
ファイル: LogWindow.cs プロジェクト: philipNoonan/valkyrie
    public void Update(bool toggle = false)
    {
        Destroyer.Dialog();

        developerToggle ^= toggle;
        Game game = Game.Get();

        game.logWindow     = this;
        game.cc.panDisable = true;
        // white background because font rendering is broken
        string log = "";

        foreach (Quest.LogEntry e in game.quest.log)
        {
            log += e.GetEntry(developerToggle);
        }
        log.Trim('\n');

        DialogBox db = null;

        if (developerToggle)
        {
            db = new DialogBox(new Vector2(UIScaler.GetHCenter(-18f), 0.5f), new Vector2(20, 24.5f),
                               new StringKey(null, log, false), Color.black, new Color(1, 1, 1, 0.9f));
        }
        else
        {
            db = new DialogBox(new Vector2(UIScaler.GetHCenter(-14f), 0.5f), new Vector2(28, 24.5f),
                               new StringKey(null, log, false), Color.black, new Color(1, 1, 1, 0.9f));
        }

        db.AddBorder();
        // This material works for the mask, but only renders in black
        db.textObj.GetComponent <UnityEngine.UI.Text>().material = (Material)Resources.Load("Fonts/FontMaterial");
        UnityEngine.UI.ScrollRect scrollRect = db.background.AddComponent <UnityEngine.UI.ScrollRect>();
        scrollRect.content    = db.textObj.GetComponent <RectTransform>();
        scrollRect.horizontal = false;
        RectTransform textRect = db.textObj.GetComponent <RectTransform>();

        textRect.sizeDelta = new Vector2(textRect.rect.width, db.textObj.GetComponent <UnityEngine.UI.Text>().preferredHeight);
        scrollRect.verticalNormalizedPosition = 0f;

        UnityEngine.UI.Mask mask = db.background.AddComponent <UnityEngine.UI.Mask>();

        new TextButton(new Vector2(UIScaler.GetHCenter(-3f), 25f), new Vector2(6, 2), CommonStringKeys.CLOSE, delegate { Destroyer.Dialog(); });

        if (developerToggle)
        {
            DrawVarList();
        }
    }
コード例 #14
0
 static public int GetModifiedMaterial(IntPtr l)
 {
     try {
         UnityEngine.UI.Mask  self = (UnityEngine.UI.Mask)checkSelf(l);
         UnityEngine.Material a1;
         checkType(l, 2, out a1);
         var ret = self.GetModifiedMaterial(a1);
         pushValue(l, ret);
         return(1);
     }
     catch (Exception e) {
         return(error(l, e));
     }
 }
コード例 #15
0
 static int MaskEnabled(IntPtr L)
 {
     try
     {
         ToLua.CheckArgsCount(L, 1);
         UnityEngine.UI.Mask obj = (UnityEngine.UI.Mask)ToLua.CheckObject(L, 1, typeof(UnityEngine.UI.Mask));
         bool o = obj.MaskEnabled();
         LuaDLL.lua_pushboolean(L, o);
         return(1);
     }
     catch (Exception e)
     {
         return(LuaDLL.toluaL_exception(L, e));
     }
 }
コード例 #16
0
 static public int IsRaycastLocationValid(IntPtr l)
 {
     try {
         UnityEngine.UI.Mask self = (UnityEngine.UI.Mask)checkSelf(l);
         UnityEngine.Vector2 a1;
         checkType(l, 2, out a1);
         UnityEngine.Camera a2;
         checkType(l, 3, out a2);
         var ret = self.IsRaycastLocationValid(a1, a2);
         pushValue(l, ret);
         return(1);
     }
     catch (Exception e) {
         return(error(l, e));
     }
 }
コード例 #17
0
 static int GetModifiedMaterial(IntPtr L)
 {
     try
     {
         ToLua.CheckArgsCount(L, 2);
         UnityEngine.UI.Mask  obj  = (UnityEngine.UI.Mask)ToLua.CheckObject(L, 1, typeof(UnityEngine.UI.Mask));
         UnityEngine.Material arg0 = (UnityEngine.Material)ToLua.CheckUnityObject(L, 2, typeof(UnityEngine.Material));
         UnityEngine.Material o    = obj.GetModifiedMaterial(arg0);
         ToLua.Push(L, o);
         return(1);
     }
     catch (Exception e)
     {
         return(LuaDLL.toluaL_exception(L, e));
     }
 }
コード例 #18
0
 static int IsRaycastLocationValid(IntPtr L)
 {
     try
     {
         ToLua.CheckArgsCount(L, 3);
         UnityEngine.UI.Mask obj  = (UnityEngine.UI.Mask)ToLua.CheckObject(L, 1, typeof(UnityEngine.UI.Mask));
         UnityEngine.Vector2 arg0 = ToLua.ToVector2(L, 2);
         UnityEngine.Camera  arg1 = (UnityEngine.Camera)ToLua.CheckUnityObject(L, 3, typeof(UnityEngine.Camera));
         bool o = obj.IsRaycastLocationValid(arg0, arg1);
         LuaDLL.lua_pushboolean(L, o);
         return(1);
     }
     catch (Exception e)
     {
         return(LuaDLL.toluaL_exception(L, e));
     }
 }
コード例 #19
0
 static public int IsRaycastLocationValid(IntPtr l)
 {
     try{
         UnityEngine.UI.Mask self = (UnityEngine.UI.Mask)checkSelf(l);
         UnityEngine.Vector2 a1;
         checkType(l, 2, out a1);
         UnityEngine.Camera a2;
         checkType(l, 3, out a2);
         System.Boolean ret = self.IsRaycastLocationValid(a1, a2);
         pushValue(l, ret);
         return(1);
     }
     catch (Exception e) {
         LuaDLL.luaL_error(l, e.ToString());
         return(0);
     }
 }
コード例 #20
0
    static int get_rectTransform(IntPtr L)
    {
        object o = null;

        try
        {
            o = ToLua.ToObject(L, 1);
            UnityEngine.UI.Mask       obj = (UnityEngine.UI.Mask)o;
            UnityEngine.RectTransform ret = obj.rectTransform;
            ToLua.Push(L, ret);
            return(1);
        }
        catch (Exception e)
        {
            return(LuaDLL.toluaL_exception(L, e, o == null ? "attempt to index rectTransform on a nil value" : e.Message));
        }
    }
コード例 #21
0
    static int get_graphic(IntPtr L)
    {
        object o = null;

        try
        {
            o = ToLua.ToObject(L, 1);
            UnityEngine.UI.Mask    obj = (UnityEngine.UI.Mask)o;
            UnityEngine.UI.Graphic ret = obj.graphic;
            ToLua.Push(L, ret);
            return(1);
        }
        catch (Exception e)
        {
            return(LuaDLL.toluaL_exception(L, e, o == null ? "attempt to index graphic on a nil value" : e.Message));
        }
    }
コード例 #22
0
    static int set_showMaskGraphic(IntPtr L)
    {
        object o = null;

        try
        {
            o = ToLua.ToObject(L, 1);
            UnityEngine.UI.Mask obj = (UnityEngine.UI.Mask)o;
            bool arg0 = LuaDLL.luaL_checkboolean(L, 2);
            obj.showMaskGraphic = arg0;
            return(0);
        }
        catch (Exception e)
        {
            return(LuaDLL.toluaL_exception(L, e, o == null ? "attempt to index showMaskGraphic on a nil value" : e.Message));
        }
    }
コード例 #23
0
    static int get_showMaskGraphic(IntPtr L)
    {
        object o = null;

        try
        {
            o = ToLua.ToObject(L, 1);
            UnityEngine.UI.Mask obj = (UnityEngine.UI.Mask)o;
            bool ret = obj.showMaskGraphic;
            LuaDLL.lua_pushboolean(L, ret);
            return(1);
        }
        catch (Exception e)
        {
            return(LuaDLL.toluaL_exception(L, e, o == null ? "attempt to index showMaskGraphic on a nil value" : e.Message));
        }
    }
コード例 #24
0
 static public int get_rectTransform(IntPtr l)
 {
     UnityEngine.UI.Mask o = (UnityEngine.UI.Mask)checkSelf(l);
     pushValue(l, o.rectTransform);
     return(1);
 }
コード例 #25
0
ファイル: DefaultControls.cs プロジェクト: shicheju1/ugui
        public static GameObject CreateDropdown(Resources resources)
        {
            GameObject root = CreateUIElementRoot("Dropdown", s_ThickElementSize);

            GameObject label          = CreateUIObject("Label", root);
            GameObject arrow          = CreateUIObject("Arrow", root);
            GameObject template       = CreateUIObject("Template", root);
            GameObject viewport       = CreateUIObject("Viewport", template);
            GameObject content        = CreateUIObject("Content", viewport);
            GameObject item           = CreateUIObject("Item", content);
            GameObject itemBackground = CreateUIObject("Item Background", item);
            GameObject itemCheckmark  = CreateUIObject("Item Checkmark", item);
            GameObject itemLabel      = CreateUIObject("Item Label", item);

            // Sub controls.

            GameObject scrollbar = CreateScrollbar(resources);

            scrollbar.name = "Scrollbar";
            SetParentAndAlign(scrollbar, template);

            Scrollbar scrollbarScrollbar = scrollbar.GetComponent <Scrollbar>();

            scrollbarScrollbar.SetDirection(Scrollbar.Direction.BottomToTop, true);

            RectTransform vScrollbarRT = scrollbar.GetComponent <RectTransform>();

            vScrollbarRT.anchorMin = Vector2.right;
            vScrollbarRT.anchorMax = Vector2.one;
            vScrollbarRT.pivot     = Vector2.one;
            vScrollbarRT.sizeDelta = new Vector2(vScrollbarRT.sizeDelta.x, 0);

            // Setup item UI components.

            Text itemLabelText = itemLabel.AddComponent <Text>();

            SetDefaultTextValues(itemLabelText);
            itemLabelText.alignment = TextAnchor.MiddleLeft;

            Image itemBackgroundImage = itemBackground.AddComponent <Image>();

            itemBackgroundImage.color = new Color32(245, 245, 245, 255);

            Image itemCheckmarkImage = itemCheckmark.AddComponent <Image>();

            itemCheckmarkImage.sprite = resources.checkmark;

            Toggle itemToggle = item.AddComponent <Toggle>();

            itemToggle.targetGraphic = itemBackgroundImage;
            itemToggle.graphic       = itemCheckmarkImage;
            itemToggle.isOn          = true;

            // Setup template UI components.

            Image templateImage = template.AddComponent <Image>();

            templateImage.sprite = resources.standard;
            templateImage.type   = Image.Type.Sliced;

            ScrollRect templateScrollRect = template.AddComponent <ScrollRect>();

            templateScrollRect.content                     = (RectTransform)content.transform;
            templateScrollRect.viewport                    = (RectTransform)viewport.transform;
            templateScrollRect.horizontal                  = false;
            templateScrollRect.movementType                = ScrollRect.MovementType.Clamped;
            templateScrollRect.verticalScrollbar           = scrollbarScrollbar;
            templateScrollRect.verticalScrollbarVisibility = ScrollRect.ScrollbarVisibility.AutoHideAndExpandViewport;
            templateScrollRect.verticalScrollbarSpacing    = -3;

            Mask scrollRectMask = viewport.AddComponent <Mask>();

            scrollRectMask.showMaskGraphic = false;

            Image viewportImage = viewport.AddComponent <Image>();

            viewportImage.sprite = resources.mask;
            viewportImage.type   = Image.Type.Sliced;

            // Setup dropdown UI components.

            Text labelText = label.AddComponent <Text>();

            SetDefaultTextValues(labelText);
            labelText.alignment = TextAnchor.MiddleLeft;

            Image arrowImage = arrow.AddComponent <Image>();

            arrowImage.sprite = resources.dropdown;

            Image backgroundImage = root.AddComponent <Image>();

            backgroundImage.sprite = resources.standard;
            backgroundImage.color  = s_DefaultSelectableColor;
            backgroundImage.type   = Image.Type.Sliced;

            Dropdown dropdown = root.AddComponent <Dropdown>();

            dropdown.targetGraphic = backgroundImage;
            SetDefaultColorTransitionValues(dropdown);
            dropdown.template    = template.GetComponent <RectTransform>();
            dropdown.captionText = labelText;
            dropdown.itemText    = itemLabelText;

            // Setting default Item list.
            itemLabelText.text = "Option A";
            dropdown.options.Add(new Dropdown.OptionData {
                text = "Option A"
            });
            dropdown.options.Add(new Dropdown.OptionData {
                text = "Option B"
            });
            dropdown.options.Add(new Dropdown.OptionData {
                text = "Option C"
            });
            dropdown.RefreshShownValue();

            // Set up RectTransforms.

            RectTransform labelRT = label.GetComponent <RectTransform>();

            labelRT.anchorMin = Vector2.zero;
            labelRT.anchorMax = Vector2.one;
            labelRT.offsetMin = new Vector2(10, 6);
            labelRT.offsetMax = new Vector2(-25, -7);

            RectTransform arrowRT = arrow.GetComponent <RectTransform>();

            arrowRT.anchorMin        = new Vector2(1, 0.5f);
            arrowRT.anchorMax        = new Vector2(1, 0.5f);
            arrowRT.sizeDelta        = new Vector2(20, 20);
            arrowRT.anchoredPosition = new Vector2(-15, 0);

            RectTransform templateRT = template.GetComponent <RectTransform>();

            templateRT.anchorMin        = new Vector2(0, 0);
            templateRT.anchorMax        = new Vector2(1, 0);
            templateRT.pivot            = new Vector2(0.5f, 1);
            templateRT.anchoredPosition = new Vector2(0, 2);
            templateRT.sizeDelta        = new Vector2(0, 150);

            RectTransform viewportRT = viewport.GetComponent <RectTransform>();

            viewportRT.anchorMin = new Vector2(0, 0);
            viewportRT.anchorMax = new Vector2(1, 1);
            viewportRT.sizeDelta = new Vector2(-18, 0);
            viewportRT.pivot     = new Vector2(0, 1);

            RectTransform contentRT = content.GetComponent <RectTransform>();

            contentRT.anchorMin        = new Vector2(0f, 1);
            contentRT.anchorMax        = new Vector2(1f, 1);
            contentRT.pivot            = new Vector2(0.5f, 1);
            contentRT.anchoredPosition = new Vector2(0, 0);
            contentRT.sizeDelta        = new Vector2(0, 28);

            RectTransform itemRT = item.GetComponent <RectTransform>();

            itemRT.anchorMin = new Vector2(0, 0.5f);
            itemRT.anchorMax = new Vector2(1, 0.5f);
            itemRT.sizeDelta = new Vector2(0, 20);

            RectTransform itemBackgroundRT = itemBackground.GetComponent <RectTransform>();

            itemBackgroundRT.anchorMin = Vector2.zero;
            itemBackgroundRT.anchorMax = Vector2.one;
            itemBackgroundRT.sizeDelta = Vector2.zero;

            RectTransform itemCheckmarkRT = itemCheckmark.GetComponent <RectTransform>();

            itemCheckmarkRT.anchorMin        = new Vector2(0, 0.5f);
            itemCheckmarkRT.anchorMax        = new Vector2(0, 0.5f);
            itemCheckmarkRT.sizeDelta        = new Vector2(20, 20);
            itemCheckmarkRT.anchoredPosition = new Vector2(10, 0);

            RectTransform itemLabelRT = itemLabel.GetComponent <RectTransform>();

            itemLabelRT.anchorMin = Vector2.zero;
            itemLabelRT.anchorMax = Vector2.one;
            itemLabelRT.offsetMin = new Vector2(20, 1);
            itemLabelRT.offsetMax = new Vector2(-10, -2);

            template.SetActive(false);

            return(root);
        }
コード例 #26
0
ファイル: DefaultControls.cs プロジェクト: shicheju1/ugui
        public static GameObject CreateScrollView(Resources resources)
        {
            GameObject root = CreateUIElementRoot("Scroll View", new Vector2(200, 200));

            GameObject viewport = CreateUIObject("Viewport", root);
            GameObject content  = CreateUIObject("Content", viewport);

            // Sub controls.

            GameObject hScrollbar = CreateScrollbar(resources);

            hScrollbar.name = "Scrollbar Horizontal";
            SetParentAndAlign(hScrollbar, root);
            RectTransform hScrollbarRT = hScrollbar.GetComponent <RectTransform>();

            hScrollbarRT.anchorMin = Vector2.zero;
            hScrollbarRT.anchorMax = Vector2.right;
            hScrollbarRT.pivot     = Vector2.zero;
            hScrollbarRT.sizeDelta = new Vector2(0, hScrollbarRT.sizeDelta.y);

            GameObject vScrollbar = CreateScrollbar(resources);

            vScrollbar.name = "Scrollbar Vertical";
            SetParentAndAlign(vScrollbar, root);
            vScrollbar.GetComponent <Scrollbar>().SetDirection(Scrollbar.Direction.BottomToTop, true);
            RectTransform vScrollbarRT = vScrollbar.GetComponent <RectTransform>();

            vScrollbarRT.anchorMin = Vector2.right;
            vScrollbarRT.anchorMax = Vector2.one;
            vScrollbarRT.pivot     = Vector2.one;
            vScrollbarRT.sizeDelta = new Vector2(vScrollbarRT.sizeDelta.x, 0);

            // Setup RectTransforms.

            // Make viewport fill entire scroll view.
            RectTransform viewportRT = viewport.GetComponent <RectTransform>();

            viewportRT.anchorMin = Vector2.zero;
            viewportRT.anchorMax = Vector2.one;
            viewportRT.sizeDelta = Vector2.zero;
            viewportRT.pivot     = Vector2.up;

            // Make context match viewpoprt width and be somewhat taller.
            // This will show the vertical scrollbar and not the horizontal one.
            RectTransform contentRT = content.GetComponent <RectTransform>();

            contentRT.anchorMin = Vector2.up;
            contentRT.anchorMax = Vector2.one;
            contentRT.sizeDelta = new Vector2(0, 300);
            contentRT.pivot     = Vector2.up;

            // Setup UI components.

            ScrollRect scrollRect = root.AddComponent <ScrollRect>();

            scrollRect.content                       = contentRT;
            scrollRect.viewport                      = viewportRT;
            scrollRect.horizontalScrollbar           = hScrollbar.GetComponent <Scrollbar>();
            scrollRect.verticalScrollbar             = vScrollbar.GetComponent <Scrollbar>();
            scrollRect.horizontalScrollbarVisibility = ScrollRect.ScrollbarVisibility.AutoHideAndExpandViewport;
            scrollRect.verticalScrollbarVisibility   = ScrollRect.ScrollbarVisibility.AutoHideAndExpandViewport;
            scrollRect.horizontalScrollbarSpacing    = -3;
            scrollRect.verticalScrollbarSpacing      = -3;

            Image rootImage = root.AddComponent <Image>();

            rootImage.sprite = resources.background;
            rootImage.type   = Image.Type.Sliced;
            rootImage.color  = s_PanelColor;

            Mask viewportMask = viewport.AddComponent <Mask>();

            viewportMask.showMaskGraphic = false;

            Image viewportImage = viewport.AddComponent <Image>();

            viewportImage.sprite = resources.mask;
            viewportImage.type   = Image.Type.Sliced;

            return(root);
        }
コード例 #27
0
        // ** Still needs to be implemented **
        //private Camera managerCamera;
        //private TMPro_UpdateManager m_updateManager;
        //private bool isAlreadyScheduled;
        // DEBUG Variables
        //private System.Diagnostics.Stopwatch m_StopWatch;
        //private int frame = 0;
        //private int loopCountA = 0;
        //private int loopCountB = 0;
        //private int loopCountC = 0;
        //private int loopCountD = 0;
        //private int loopCountE = 0;
        protected override void Awake()
        {
            //base.Awake();
            //Debug.Log("***** Awake() *****"); // on Object ID:" + GetInstanceID());

            m_isAwake = true;
            // Cache Reference to the Canvas
            //m_canvas = GetComponentInParent<Canvas>();
            //if (m_canvas == null)
            //    m_canvas = gameObject.AddComponent<Canvas>();

            // Cache Reference to RectTransform.
            m_rectTransform = gameObject.GetComponent<RectTransform>();
            if (m_rectTransform == null)
                m_rectTransform = gameObject.AddComponent<RectTransform>();

            // Cache a reference to the UIRenderer.
            m_uiRenderer = GetComponent<CanvasRenderer>();
            if (m_uiRenderer == null)
                m_uiRenderer = gameObject.AddComponent<CanvasRenderer> ();

            m_uiRenderer.hideFlags = HideFlags.HideInInspector;

            // Determine if the RectTransform is Driven
            m_layoutController = GetComponent(typeof(ILayoutController)) as ILayoutController ?? (transform.parent != null ? transform.parent.GetComponent(typeof(ILayoutController)) as ILayoutController : null);
            if (m_layoutController != null) IsRectTransformDriven = true;

            // Cache reference to Mask Component if one is present
            m_mask = GetComponentInParent<Mask>();

            // Load the font asset and assign material to renderer.
            LoadFontAsset();

            // Allocate our initial buffers.
            m_char_buffer = new int[m_max_characters];
            m_cached_GlyphInfo = new GlyphInfo();
            m_uiVertices = new UIVertex[0]; //
            m_isFirstAllocation = true;

            m_textInfo = new TextInfo();
            m_textInfo.wordInfo = new List<WordInfo>();
            m_textInfo.lineInfo = new LineInfo[m_max_numberOfLines];
            m_textInfo.meshInfo = new TMPro_MeshInfo();

            m_fontAssetArray = new TextMeshProFont[16];

            // Check if we have a font asset assigned. Return if we don't because no one likes to see purple squares on screen.
            if (m_fontAsset == null)
            {
                Debug.LogWarning("Please assign a Font Asset to this " + transform.name + " gameobject.");
                return;
            }

            // Set Defaults for Font Auto-sizing
            if (m_fontSizeMin == 0) m_fontSizeMin = m_fontSize / 2;
            if (m_fontSizeMax == 0) m_fontSizeMax = m_fontSize * 2;

            //// Set flags to cause ensure our text is parsed and text redrawn.
            isInputParsingRequired = true;
            havePropertiesChanged = true;
            m_rectTransformDimensionsChanged = true;
            m_isCalculateSizeRequired = true;

            //m_isNewTextObject = true;
            //LayoutRebuilder.MarkLayoutForRebuild(m_rectTransform);
            ForceMeshUpdate(); // Added to force OnWillRenderObject() to be called in case object is not visible so we get initial bounds for the mesh.
            ///* ScheduleUpdate();
        }
コード例 #28
0
		void Start()
		{
			if (toggleMask)
			{
				if (gameObject.GetComponent<Mask>())
					thisMask = gameObject.GetComponent<Mask>();
				else
				{
					thisMask = gameObject.AddComponent<Mask>();
					thisMask.enabled = false;
				}
			}

			theCanvas = gameObject.GetComponentInParent<Canvas>();

			if (theCanvas.renderMode != RenderMode.ScreenSpaceOverlay)
			{
				if (theCanvas.worldCamera)
				{
					theCamera = theCanvas.worldCamera;
					worldSpace = true;
				}
			}

			Refresh();
		}
コード例 #29
0
 static public int get_showMaskGraphic(IntPtr l)
 {
     UnityEngine.UI.Mask o = (UnityEngine.UI.Mask)checkSelf(l);
     pushValue(l, o.showMaskGraphic);
     return(1);
 }
コード例 #30
0
        public static GameObject CreateDropdown(UIDefaultControls.Resources resources)
        {
            GameObject gameObject   = UIDefaultControls.CreateUIElementRoot("Dropdown", UIDefaultControls.s_ThickElementSize);
            GameObject gameObject2  = UIDefaultControls.CreateUIObject("Label", gameObject);
            GameObject gameObject3  = UIDefaultControls.CreateUIObject("Arrow", gameObject);
            GameObject gameObject4  = UIDefaultControls.CreateUIObject("Template", gameObject);
            GameObject gameObject5  = UIDefaultControls.CreateUIObject("Viewport", gameObject4);
            GameObject gameObject6  = UIDefaultControls.CreateUIObject("Content", gameObject5);
            GameObject gameObject7  = UIDefaultControls.CreateUIObject("Item", gameObject6);
            GameObject gameObject8  = UIDefaultControls.CreateUIObject("Item Background", gameObject7);
            GameObject gameObject9  = UIDefaultControls.CreateUIObject("Item Checkmark", gameObject7);
            GameObject gameObject10 = UIDefaultControls.CreateUIObject("Item Label", gameObject7);
            GameObject gameObject11 = UIDefaultControls.CreateScrollbar(resources);

            gameObject11.name = ("Scrollbar");
            UIDefaultControls.SetParentAndAlign(gameObject11, gameObject4);
            Scrollbar component = gameObject11.GetComponent <Scrollbar> ();

            component.SetDirection(Scrollbar.Direction.BottomToTop, true);
            RectTransform component2 = gameObject11.GetComponent <RectTransform> ();

            component2.anchorMin = (Vector2.right);
            component2.anchorMax = (Vector2.one);
            component2.pivot     = (Vector2.one);
            component2.sizeDelta = (new Vector2(component2.sizeDelta.x, 0));
            UILabel text = gameObject10.AddComponent <UILabel> ();

            UIDefaultControls.SetDefaultTextValues(text);
            text.alignment = TextAnchor.MiddleCenter;
            UISprite image = gameObject8.AddComponent <UISprite> ();

            image.color = new Color32(245, 245, 245, 255);
            UISprite image2 = gameObject9.AddComponent <UISprite> ();

            image2.sprite = resources.checkmark;
            UIToggle toggle = gameObject7.AddComponent <UIToggle> ();

            toggle.targetGraphic = image;
            toggle.graphic       = image2;
            toggle.isOn          = true;
            UISprite image3 = gameObject4.AddComponent <UISprite> ();

            image3.sprite = resources.standard;
            image3.type   = UISprite.Type.Sliced;
            ScrollRect scrollRect = gameObject4.AddComponent <ScrollRect> ();

            scrollRect.content                     = (RectTransform)gameObject6.transform;
            scrollRect.viewport                    = (RectTransform)gameObject5.transform;
            scrollRect.horizontal                  = false;
            scrollRect.movementType                = ScrollRect.MovementType.Clamped;
            scrollRect.verticalScrollbar           = component;
            scrollRect.verticalScrollbarVisibility = ScrollRect.ScrollbarVisibility.AutoHideAndExpandViewport;
            scrollRect.verticalScrollbarSpacing    = -3;
            Mask mask = gameObject5.AddComponent <Mask> ();

            mask.showMaskGraphic = false;
            UISprite image4 = gameObject5.AddComponent <UISprite> ();

            image4.sprite = resources.mask;
            image4.type   = UISprite.Type.Sliced;
            UILabel text2 = gameObject2.AddComponent <UILabel> ();

            UIDefaultControls.SetDefaultTextValues(text2);
            text2.alignment = TextAnchor.MiddleCenter;
            UISprite image5 = gameObject3.AddComponent <UISprite> ();

            image5.sprite = resources.dropdown;
            UISprite image6 = gameObject.AddComponent <UISprite> ();

            image6.sprite = resources.standard;
            image6.color  = UIDefaultControls.s_DefaultSelectableColor;
            image6.type   = UISprite.Type.Sliced;
            UIDropdown dropdown = gameObject.AddComponent <UIDropdown> ();

            dropdown.targetGraphic = image6;
            UIDefaultControls.SetDefaultColorTransitionValues(dropdown);
            dropdown.template    = gameObject4.GetComponent <RectTransform> ();
            dropdown.captionText = text2;
            dropdown.itemText    = text;
            text.text            = "Option A";
            dropdown.options.Add(new Dropdown.OptionData {
                text = "Option A"
            });
            dropdown.options.Add(new Dropdown.OptionData {
                text = "Option B"
            });
            dropdown.options.Add(new Dropdown.OptionData {
                text = "Option C"
            });
            dropdown.RefreshShownValue();
            RectTransform component3 = gameObject2.GetComponent <RectTransform> ();

            component3.anchorMin = (Vector2.zero);
            component3.anchorMax = (Vector2.one);
            component3.offsetMin = (new Vector2(10, 6));
            component3.offsetMax = (new Vector2(-25, -7));
            RectTransform component4 = gameObject3.GetComponent <RectTransform> ();

            component4.anchorMin        = (new Vector2(1, 0.5f));
            component4.anchorMax        = (new Vector2(1, 0.5f));
            component4.sizeDelta        = (new Vector2(20, 20));
            component4.anchoredPosition = (new Vector2(-15, 0));
            RectTransform component5 = gameObject4.GetComponent <RectTransform> ();

            component5.anchorMin        = (new Vector2(0, 0));
            component5.anchorMax        = (new Vector2(1, 0));
            component5.pivot            = (new Vector2(0.5f, 1));
            component5.anchoredPosition = (new Vector2(0, 2));
            component5.sizeDelta        = (new Vector2(0, 150));
            RectTransform component6 = gameObject5.GetComponent <RectTransform> ();

            component6.anchorMin = (new Vector2(0, 0));
            component6.anchorMax = (new Vector2(1, 1));
            component6.sizeDelta = (new Vector2(-18, 0));
            component6.pivot     = (new Vector2(0, 1));
            RectTransform component7 = gameObject6.GetComponent <RectTransform> ();

            component7.anchorMin        = (new Vector2(0, 1));
            component7.anchorMax        = (new Vector2(1, 1));
            component7.pivot            = (new Vector2(0.5f, 1));
            component7.anchoredPosition = (new Vector2(0, 0));
            component7.sizeDelta        = (new Vector2(0, 28));
            RectTransform component8 = gameObject7.GetComponent <RectTransform> ();

            component8.anchorMin = (new Vector2(0, 0.5f));
            component8.anchorMax = (new Vector2(1, 0.5f));
            component8.sizeDelta = (new Vector2(0, 20));
            RectTransform component9 = gameObject8.GetComponent <RectTransform> ();

            component9.anchorMin = (Vector2.zero);
            component9.anchorMax = (Vector2.one);
            component9.sizeDelta = (Vector2.zero);
            RectTransform component10 = gameObject9.GetComponent <RectTransform> ();

            component10.anchorMin        = (new Vector2(0, 0.5f));
            component10.anchorMax        = (new Vector2(0, 0.5f));
            component10.sizeDelta        = (new Vector2(20, 20));
            component10.anchoredPosition = (new Vector2(10, 0));
            RectTransform component11 = gameObject10.GetComponent <RectTransform> ();

            component11.anchorMin = (Vector2.zero);
            component11.anchorMax = (Vector2.one);
            component11.offsetMin = (new Vector2(20, 1));
            component11.offsetMax = (new Vector2(-10, -2));
            gameObject4.SetActive(false);
            return(gameObject);
        }
コード例 #31
0
        public GUIContent(Action<GUIObject> callback = null)
            : base(callback)
        {
            _imageMask = _box.AddComponent<Image>();
            _imageMask.color = Color.white;

            _overflowMask = _box.AddComponent<Mask>();
            _overflowMask.enabled = false;
            _overflowMask.showMaskGraphic = false;
        }
コード例 #32
0
        public static GameObject CreateScrollView(UIDefaultControls.Resources resources)
        {
            GameObject gameObject  = UIDefaultControls.CreateUIElementRoot("Scroll View", new Vector2(200, 200));
            GameObject gameObject2 = UIDefaultControls.CreateUIObject("Viewport", gameObject);
            GameObject gameObject3 = UIDefaultControls.CreateUIObject("Content", gameObject2);
            GameObject gameObject4 = UIDefaultControls.CreateScrollbar(resources);

            gameObject4.name = ("Scrollbar Horizontal");
            UIDefaultControls.SetParentAndAlign(gameObject4, gameObject);
            RectTransform component = gameObject4.GetComponent <RectTransform> ();

            component.anchorMin = (Vector2.zero);
            component.anchorMax = (Vector2.right);
            component.pivot     = (Vector2.zero);
            component.sizeDelta = (new Vector2(0, component.sizeDelta.y));
            GameObject gameObject5 = UIDefaultControls.CreateScrollbar(resources);

            gameObject5.name = ("Scrollbar Vertical");
            UIDefaultControls.SetParentAndAlign(gameObject5, gameObject);
            gameObject5.GetComponent <Scrollbar> ().SetDirection(Scrollbar.Direction.BottomToTop, true);
            RectTransform component2 = gameObject5.GetComponent <RectTransform> ();

            component2.anchorMin = (Vector2.right);
            component2.anchorMax = (Vector2.one);
            component2.pivot     = (Vector2.one);
            component2.sizeDelta = (new Vector2(component2.sizeDelta.x, 0));
            RectTransform component3 = gameObject2.GetComponent <RectTransform> ();

            component3.anchorMin = (Vector2.zero);
            component3.anchorMax = (Vector2.one);
            component3.sizeDelta = (Vector2.zero);
            component3.pivot     = (Vector2.up);
            RectTransform component4 = gameObject3.GetComponent <RectTransform> ();

            component4.anchorMin = (Vector2.up);
            component4.anchorMax = (Vector2.one);
            component4.sizeDelta = (new Vector2(0, 300));
            component4.pivot     = (Vector2.up);
            ScrollRect scrollRect = gameObject.AddComponent <ScrollRect> ();

            scrollRect.content                       = component4;
            scrollRect.viewport                      = component3;
            scrollRect.horizontalScrollbar           = gameObject4.GetComponent <Scrollbar> ();
            scrollRect.verticalScrollbar             = gameObject5.GetComponent <Scrollbar> ();
            scrollRect.horizontalScrollbarVisibility = ScrollRect.ScrollbarVisibility.AutoHideAndExpandViewport;
            scrollRect.verticalScrollbarVisibility   = ScrollRect.ScrollbarVisibility.AutoHideAndExpandViewport;
            scrollRect.horizontalScrollbarSpacing    = -3;
            scrollRect.verticalScrollbarSpacing      = -3;
            UISprite image = gameObject.AddComponent <UISprite> ();

            image.sprite = resources.background;
            image.type   = UISprite.Type.Sliced;
            image.color  = UIDefaultControls.s_PanelColor;
            Mask mask = gameObject2.AddComponent <Mask> ();

            mask.showMaskGraphic = false;
            UISprite image2 = gameObject2.AddComponent <UISprite> ();

            image2.sprite = resources.mask;
            image2.type   = UISprite.Type.Sliced;
            return(gameObject);
        }