Ejemplo n.º 1
0
        private void DoLayoutTabs()
        {
            using (new EditorGUILayout.HorizontalScope())
            {
                GUILayout.FlexibleSpace();

                var newTabType = (TabType)GUILayout.Toolbar((int)m_TabType, s_GuiContents.Tabs, EditorStyles.miniButton
#if UNITY_2017_2_OR_NEWER
                                                            , GUI.ToolbarButtonSize.FitToContents
#endif
                                                            , GUILayout.Height(20));

                if (newTabType != m_TabType)
                {
                    m_TabType = newTabType;

                    switch (m_TabType)
                    {
                    case TabType.Settings:
                        m_ModuleSettingsPanel?.SetDirty();
                        m_ProjectSettingsPanel?.SetDirty();
                        break;

                    case TabType.Modules:
                        m_ModulePanel?.SetDirty();
                        break;

                    case TabType.Scenes:
                        m_EntityGroupPanel?.SetDirty();
                        break;

                    case TabType.Types:
                        m_TypePanel?.SetDirty();
                        break;

                    case TabType.Code:
                        m_CodePanel?.SetDirty();
                        break;

                    case TabType.Assets:
                        m_AssetPanel?.SetDirty();
                        break;

                    case TabType.BuildReport:
                        m_BuildReportPanel?.SetDirty();
                        break;

                    default:
                        throw new ArgumentOutOfRangeException();
                    }
                }

                GUILayout.FlexibleSpace();
            }
        }