Пример #1
0
    void OnGUI()
    {
        //有时候可能要做些数据收集
        if (!CheckSomeThing())
        {
            return;
        }

        //布局1,如果界面不是用GUILayout布局出来的,而是自己算的,那么写个布局函数和绘制函数,如果需要的话还可以写个消息处理函数
        //Layout();
        //Draw();
        //Handle();

        //布局2,如果界面是用GUILayout布局出来的,那么直接写在这里就可以了
        using (new AutoBeginHorizontal())
        {
            //左边
            using (new AutoBeginVertical("PreferencesSectionBox", GUILayout.Width(250)))
            {
                using (new AutoLabelWidth(80))
                {
                    //1 区域一
                    EditorGUILayoutEx.FadeArea area = EditorGUILayoutEx.instance.BeginFadeArea(m_area1, "区域一", GetPrefs("m_area1"), EditorStyleEx.BoxStyle);
                    m_area1 = area.open;
                    if (area.Show())
                    {
                        DrawArea1();
                    }
                    EditorGUILayoutEx.instance.EndFadeArea();

                    //2 区域二
                    area    = EditorGUILayoutEx.instance.BeginFadeArea(m_area2, "区域二", GetPrefs("m_area2"), EditorStyleEx.BoxStyle);
                    m_area2 = area.open;
                    if (area.Show())
                    {
                        DrawArea2();
                    }
                    EditorGUILayoutEx.instance.EndFadeArea();
                }
            }

            //右边
            using (new AutoBeginVertical(GUILayout.ExpandWidth(true)))
            {
                DrawRight();
            }
        }
    }
Пример #2
0
    //返回值表示是不是删除了这个触发器
    bool DrawTrigger(CameraTrigger t)
    {
        Color tmp1 = GUI.color;

        EditorGUILayoutEx.FadeArea area = EditorGUILayoutEx.instance.BeginFadeArea(t.isExpand, "", t.name + "_cameraTrigger", EditorStyleEx.BoxStyle); //
        Color tmp2 = GUI.color;                                                                                                                        //BeginFadeArea 需要

        GUI.color = tmp1;                                                                                                                              //BeginFadeArea 需要
        using (new AutoBeginHorizontal())
        {
            t.gameObject.name = EditorGUILayout.TextField(t.gameObject.name, EditorGUILayoutEx.defaultLabelStyle, GUILayout.ExpandWidth(false), GUILayout.ExpandHeight(false));
            if (GUILayout.Button("", EditorGUILayoutEx.defaultLabelStyle))
            {
                t.isExpand = !t.isExpand;
            }

            if (GUILayout.Button(EditorGUIUtility.IconContent(CameraMgr.instance.m_curCameraInfo == t.m_info ? "preAudioLoopOn" : "preAudioLoopOff"), EditorStyles.toolbarButton, GUILayout.Width(25)))
            {
                CameraMgr.instance.Add(t.m_info, false, CameraInfo.Camera_Editor_Priority);//优先级要提高点
                return(false);
            }

            if (GUILayout.Button(EditorGUIUtility.IconContent("TreeEditor.Trash"), EditorStyles.toolbarButton, GUILayout.Width(25)))
            {
                return(true);
            }
        }


        if (area.Show())
        {
            GUI.color = tmp2;//BeginFadeArea 需要

            Transform tran = t.transform;
            EditorGUILayout.ObjectField("触发体", t.GetComponent <BoxCollider>(), typeof(BoxCollider), false);

            using (new AutoBeginHorizontal())
            {
                EditorGUILayout.PrefixLabel("触发体位置");
                tran.position = EditorGUILayout.Vector3Field(GUIContent.none, tran.position, GUILayout.Height(18));
                if (GUILayout.Button("同步到跟随者", GUILayout.Width(100)))
                {
                    tran.position = CameraMgr.instance.GetFollowPos();
                }
            }

            using (new AutoBeginHorizontal())
            {
                EditorGUILayout.PrefixLabel("触发体大小");
                tran.localScale = EditorGUILayout.Vector3Field(GUIContent.none, tran.localScale, GUILayout.Height(18));
            }

            float y = EditorGUILayout.FloatField("触发体旋转", tran.eulerAngles.y);
            tran.eulerAngles = new Vector3(tran.eulerAngles.x, y, tran.eulerAngles.z);

            //镜头信息
            DrawCameraInfo(t.m_info, t.gameObject.name, false, true);
        }
        EditorGUILayoutEx.instance.EndFadeArea();
        return(false);
    }
Пример #3
0
    //绘制窗口时调用
    void OnGUI()
    {
        using (AutoBeginScrollView a = new AutoBeginScrollView(pos))
        {
            pos = a.Scroll;
            GUILayout.Label("boldLabel", EditorStyles.boldLabel);
            GUILayout.Label("centeredGreyMiniLabel", EditorStyles.centeredGreyMiniLabel);
            GUILayout.Label("colorField", EditorStyles.colorField);
            GUILayout.Label("foldout", EditorStyles.foldout);
            GUILayout.Label("foldoutPreDrop", EditorStyles.foldoutPreDrop);
            GUILayout.Label("helpBox", EditorStyles.helpBox);
            GUILayout.Label("inspectorDefaultMargins", EditorStyles.inspectorDefaultMargins);
            GUILayout.Label("inspectorFullWidthMargins", EditorStyles.inspectorFullWidthMargins);
            GUILayout.Label("label", EditorStyles.label);
            GUILayout.Label("largeLabel", EditorStyles.largeLabel);
            GUILayout.Label("layerMaskField", EditorStyles.layerMaskField);
            GUILayout.Label("miniBoldLabel", EditorStyles.miniBoldLabel);
            GUILayout.Label("miniButton", EditorStyles.miniButton);
            GUILayout.Label("miniButtonLeft", EditorStyles.miniButtonLeft);
            GUILayout.Label("miniButtonMid", EditorStyles.miniButtonMid);
            GUILayout.Label("miniButtonRight", EditorStyles.miniButtonRight);
            GUILayout.Label("miniLabel", EditorStyles.miniLabel);
            GUILayout.Label("miniTextField", EditorStyles.miniTextField);
            GUILayout.Label("numberField", EditorStyles.numberField);
            GUILayout.Label("objectField", EditorStyles.objectField);
            GUILayout.Label("objectFieldMiniThumb", EditorStyles.objectFieldMiniThumb);
            GUILayout.Label("objectFieldThumb", EditorStyles.objectFieldThumb);
            GUILayout.Label("popup", EditorStyles.popup);

            GUILayout.Label("radioButton", EditorStyles.radioButton);
            GUILayout.Label("textArea", EditorStyles.textArea);
            GUILayout.Label("textField", EditorStyles.textField);
            GUILayout.Label("toggle", EditorStyles.toggle);
            GUILayout.Label("toggleGroup", EditorStyles.toggleGroup);
            GUILayout.Label("toolbar", EditorStyles.toolbar);
            GUILayout.Label("toolbarButton", EditorStyles.toolbarButton);
            GUILayout.Label("toolbarDropDown", EditorStyles.toolbarDropDown);
            GUILayout.Label("toolbarPopup", EditorStyles.toolbarPopup);
            GUILayout.Label("toolbarTextField", EditorStyles.toolbarTextField);
            GUILayout.Label("whiteBoldLabel", EditorStyles.whiteBoldLabel);
            GUILayout.Label("whiteLabel", EditorStyles.whiteLabel);
            GUILayout.Label("whiteLargeLabel", EditorStyles.whiteLargeLabel);
            GUILayout.Label("whiteMiniLabel", EditorStyles.whiteMiniLabel);
            GUILayout.Label("wordWrappedLabel", EditorStyles.wordWrappedLabel);
            GUILayout.Label("wordWrappedMiniLabel", EditorStyles.wordWrappedMiniLabel);
            GUILayout.Label("AnimationEventBackground", "AnimationEventBackground");
            GUILayout.Label("Dopesheetkeyframe", "Dopesheetkeyframe");



            EditorGUILayoutEx.FadeArea fadeArea = EditorGUILayoutEx.instance.BeginFadeArea(bOpenArea, "区域块", "area", EditorStyleEx.PixelBoxStyle, EditorStyleEx.TopBoxHeaderStyle);
            bOpenArea = fadeArea.open;
            if (fadeArea.Show())
            {
                EditorGUILayoutEx.FadeArea topFadeArea = EditorGUILayoutEx.instance.BeginFadeArea(bOpenArea3, "", "areaid", EditorStyleEx.GraphBoxStyle);
                bOpenArea3 = topFadeArea.open;
                if (topFadeArea.Show())
                {
                    EditorGUILayout.HelpBox("help box", MessageType.Info);
                }
                EditorGUILayoutEx.instance.EndFadeArea();
            }
            EditorGUILayoutEx.instance.EndFadeArea();

            EditorGUILayout.TextField("", "可编辑区", EditorStyleEx.BoxHeaderStyle, GUILayout.ExpandWidth(false), GUILayout.ExpandHeight(false));

            using (new AutoBeginHorizontal())
            {
                GUILayout.Button("Draw", EditorStyleEx.GraphGizmoButtonStyle);

                if (GUILayout.Toggle(true, "Info", EditorStyleEx.GraphInfoButtonStyle))
                {
                }

                GUILayout.Button("Delete", EditorStyleEx.GraphDeleteButtonStyle);

                GUILayout.Button("DownArrowEdiStyle", EditorStyleEx.DownArrowStyle);
                GUILayout.Button("UpArrowEdiStyle", EditorStyleEx.UpArrowStyle);
            }
            GUILayout.Button("buttonEdiStyle", EditorStyleEx.ButtonStyle);

            GUILayout.Toggle(true, "toggleEdiStyle", EditorStyleEx.ToggleStyle);

            GUILayout.Label("labelEdiStyle", EditorStyleEx.LabelStyle);

            GUILayout.TextField("textfieldEdiStyle", EditorStyleEx.TextfieldStyle);

            GUILayout.TextArea("textareaEdiStyle", EditorStyleEx.TextareaStyle);


            GUILayout.Space(20);


            EditorGUILayoutEx.FadeArea fadeArea2 = EditorGUILayoutEx.instance.BeginFadeArea(bOpenArea2, "区域块", "area2", EditorStyleEx.PixelBoxStyle);
            bOpenArea2 = fadeArea2.open;
            if (fadeArea2.Show())
            {
                using (new AutoBeginHorizontal())
                {
                    EditorGUILayout.HelpBox("help box", MessageType.Info);
                }
            }

            GUILayout.Button("CloseButtonEdiStyle", EditorStyleEx.CloseButtonStyle);

            GUILayout.Button("SmallResetEdiStyle", EditorStyleEx.SmallResetStyle);
            GUILayout.Button("GizmoButtonEdiStyle", EditorStyleEx.GizmoButtonStyle);

            GUILayout.Label("thinHelpBox", EditorStyleEx.ThinHelpBox, GUILayout.Height(15));

            EditorGUILayoutEx.instance.EndFadeArea();

            GUILayout.Space(30);
        }

        GUILayout.Space(20);
    }