Пример #1
0
        static public void drawText(Rect rect, string text, bool background, Color color, Color backgroundColor, float fontSize, bool bold, int mode)
        {
            Vector2   vector    = new Vector2();
            int       fontSize2 = GUI.skin.label.fontSize;
            FontStyle fontStyle = GUI.skin.label.fontStyle;
            Color     color2    = GUI.color;
            Vector2   size      = new Vector2();

            if (background)
            {
                GUI.color = backgroundColor;
                EditorGUI.DrawPreviewTexture(new Rect(vector.x, vector.y, size.x, size.y), tex2);
            }
            GUI.color = color;
            GUI.skin.label.fontSize = (int)fontSize;
            if (bold)
            {
                GUI.skin.label.fontStyle = FontStyle.Bold;
            }
            else
            {
                GUI.skin.label.fontStyle = FontStyle.Normal;
            }
            size   = GUI.skin.GetStyle("Label").CalcSize(new GUIContent(text));
            vector = Mathw.calc_rect_allign(rect, size, mode);
            GUI.Label(new Rect(vector.x, vector.y, size.x, size.y), text);
            GUI.skin.label.fontSize  = fontSize2;
            GUI.skin.label.fontStyle = fontStyle;
            GUI.color = color2;
        }
Пример #2
0
        static public bool drawText(Rect rect, edit_class edit, bool background, Color color, Color backgroundColor, float fontSize, bool bold, int mode)
        {
            Vector2   vector = new Vector2();
            int       fontSize2;
            FontStyle fontStyle;
            Color     color2 = GUI.color;
            Vector2   size   = new Vector2();

            if (background)
            {
                GUI.color = backgroundColor;
                EditorGUI.DrawPreviewTexture(new Rect(vector.x, vector.y, size.x, size.y), tex2);
            }
            GUI.color = color;
            if (!edit.edit)
            {
                fontSize2 = GUI.skin.label.fontSize;
                fontStyle = GUI.skin.label.fontStyle;
                GUI.skin.label.fontSize = (int)fontSize;
                if (bold)
                {
                    GUI.skin.label.fontStyle = FontStyle.Bold;
                }
                else
                {
                    GUI.skin.label.fontStyle = FontStyle.Normal;
                }
                size   = GUI.skin.GetStyle("Label").CalcSize(new GUIContent(edit.default_text));
                vector = Mathw.calc_rect_allign(rect, size, mode);
                GUI.Label(new Rect(vector.x, vector.y, size.x, size.y), edit.default_text);
                GUI.skin.label.fontSize  = fontSize2;
                GUI.skin.label.fontStyle = fontStyle;
            }
            else
            {
                fontSize2 = GUI.skin.textField.fontSize;
                fontStyle = GUI.skin.textField.fontStyle;
                GUI.skin.textField.fontSize = (int)fontSize;
                if (bold)
                {
                    GUI.skin.textField.fontStyle = FontStyle.Bold;
                }
                else
                {
                    GUI.skin.textField.fontStyle = FontStyle.Normal;
                }
                size = GUI.skin.GetStyle("TextField").CalcSize(new GUIContent(edit.text));
                if (size.x < rect.width)
                {
                    size.x = rect.width;
                }
                size.x   += 10;
                vector    = Mathw.calc_rect_allign(rect, size, mode);
                edit.text = GUI.TextField(new Rect(vector.x, vector.y, size.x, size.y), edit.text);
                GUI.skin.textField.fontSize  = fontSize2;
                GUI.skin.textField.fontStyle = fontStyle;
            }
            if (Event.current.button == 0 && Event.current.clickCount == 2 && Event.current.type == 0 && new Rect(vector.x, vector.y, size.x, size.y).Contains(Event.current.mousePosition))
            {
                edit.edit = !edit.edit;
            }
            bool arg_330_0;

            if (Event.current.keyCode == KeyCode.Return || Event.current.keyCode == KeyCode.Escape)
            {
                edit.edit = false;
                GUI.color = color2;
                arg_330_0 = true;
            }
            else
            {
                GUI.color = color2;
                arg_330_0 = false;
            }
            return(arg_330_0);
        }