Пример #1
0
        protected override void DrawEditors()
        {
            SirenixEditorGUI.DrawSolidRect(new Rect(0, 0, this.position.width, this.position.height), SirenixGUIStyles.DarkEditorBackground);

            // Draw top pager:
            Rect rect = GUIHelper.GetCurrentLayoutRect().AlignTop(34);

            SirenixEditorGUI.DrawSolidRect(rect, SirenixGUIStyles.EditorWindowBackgroundColor);
            SirenixEditorGUI.DrawBorders(rect, 0, 0, 0, 1);
            this.pager.DrawPageNavigation(rect.AlignCenterY(20).HorizontalPadding(10));

            // Draw pages:
            this.pager.BeginGroup();
            int i = 0;

            foreach (SlidePageNavigationHelper <object> .Page page in this.pager.EnumeratePages)
            {
                if (page.BeginPage())
                {
                    GUILayout.BeginVertical(GUILayoutOptions.ExpandHeight(true));
                    GUILayout.Space(30);
                    this.DrawEditor(i);
                    GUILayout.EndVertical();
                }
                page.EndPage();
                i++;
            }
            this.pager.EndGroup();
        }
Пример #2
0
    public Rect Draw(float width, float height, float x = 0, float y = 0)
    {
        Rect allRect = EditorGUILayout.BeginVertical();

        if (EditorGUIUtility.isProSkin)
        {
            EditorGUI.DrawRect(new Rect(x, allRect.yMax, width, height), SirenixGUIStyles.DarkEditorBackground);
        }
        else
        {
            EditorGUI.DrawRect(new Rect(x, y, width, allRect.yMax), SirenixGUIStyles.BoxBackgroundColor);
        }
        Rect rect = GUILayoutUtility.GetRect(0f, 70f);

        GUI.Label(rect.AlignCenterY(45f), this.logoContent,
                  CaomaoGUIStyle.HeaderStyle);
        float versionWidth = SirenixGUIStyles.CenteredGreyMiniLabel.CalcSize(CaomaoGUIContent.VersionContent).x;
        float developWidth = SirenixGUIStyles.CenteredGreyMiniLabel.CalcSize(CaomaoGUIContent.DevelopPlatformContent).x;
        var   maxWidth     = Mathf.Max(versionWidth, developWidth);
        Rect  rightRect    = rect.AlignRight(maxWidth + 10f);

        rightRect.x     -= 10f;
        rightRect.y     += 8f;
        rightRect.height = 17f;
        if (Event.current.type == EventType.Repaint)
        {
            GUI.Label(rightRect, CaomaoGUIContent.VersionContent, SirenixGUIStyles.CenteredGreyMiniLabel);
        }
        rightRect.y += 15f;
        if (Event.current.type == EventType.Repaint)
        {
            GUI.Label(rightRect, CaomaoGUIContent.DevelopPlatformContent, SirenixGUIStyles.CenteredGreyMiniLabel);
        }
        rightRect.y += rightRect.height + 4f;
        if (GUI.Button(rightRect, "版本信息", SirenixGUIStyles.MiniButton))
        {
            Application.OpenURL("https://odininspector.com/patch-notes");
        }
        SirenixEditorGUI.DrawHorizontalLineSeperator(rect.x, rect.y, rect.width, 0.5f);
        SirenixEditorGUI.DrawHorizontalLineSeperator(rect.x, rect.yMax + y, rect.width, 0.5f);
        this.DrawOhterHeader();
        EditorGUILayout.EndHorizontal();
        return(rect);
    }