UnityEditor.ProfilerWindow.SetProfileDeepScripts C# (CSharp) Method

SetProfileDeepScripts() private static method

private static SetProfileDeepScripts ( bool deep ) : void
deep bool
return void
        private static void SetProfileDeepScripts(bool deep)
        {
            if (ProfilerDriver.deepProfiling != deep)
            {
                bool flag2 = true;
                if (EditorApplication.isPlaying)
                {
                    if (deep)
                    {
                        flag2 = EditorUtility.DisplayDialog("Enable deep script profiling", "Enabling deep profiling requires reloading scripts.", "Reload", "Cancel");
                    }
                    else
                    {
                        flag2 = EditorUtility.DisplayDialog("Disable deep script profiling", "Disabling deep profiling requires reloading all scripts", "Reload", "Cancel");
                    }
                }
                if (flag2)
                {
                    ProfilerDriver.deepProfiling = deep;
                    InternalEditorUtility.RequestScriptReload();
                }
            }
        }

Usage Example

示例#1
0
        private void DrawMainToolbar()
        {
            GUILayout.BeginHorizontal(EditorStyles.toolbar, new GUILayoutOption[0]);
            Rect rect = GUILayoutUtility.GetRect(ProfilerWindow.ms_Styles.addArea, EditorStyles.toolbarDropDown, new GUILayoutOption[]
            {
                GUILayout.Width(120f)
            });

            if (EditorGUI.ButtonMouseDown(rect, ProfilerWindow.ms_Styles.addArea, FocusType.Native, EditorStyles.toolbarDropDown))
            {
                int      num    = this.m_Charts.Length;
                string[] array  = new string[num];
                bool[]   array2 = new bool[num];
                for (int i = 0; i < num; i++)
                {
                    array[i]  = ((ProfilerArea)i).ToString();
                    array2[i] = !this.m_Charts[i].active;
                }
                EditorUtility.DisplayCustomMenu(rect, array, array2, null, new EditorUtility.SelectMenuItemFunction(this.AddAreaClick), null);
            }
            GUILayout.FlexibleSpace();
            this.m_Recording = GUILayout.Toggle(this.m_Recording, ProfilerWindow.ms_Styles.profilerRecord, EditorStyles.toolbarButton, new GUILayoutOption[0]);
            Profiler.enabled = this.m_Recording;
            ProfilerWindow.SetProfileDeepScripts(GUILayout.Toggle(ProfilerDriver.deepProfiling, ProfilerWindow.ms_Styles.deepProfile, EditorStyles.toolbarButton, new GUILayoutOption[0]));
            ProfilerDriver.profileEditor = GUILayout.Toggle(ProfilerDriver.profileEditor, ProfilerWindow.ms_Styles.profileEditor, EditorStyles.toolbarButton, new GUILayoutOption[0]);
            this.m_AttachProfilerUI.OnGUILayout(this);
            if (GUILayout.Button(ProfilerWindow.ms_Styles.clearData, EditorStyles.toolbarButton, new GUILayoutOption[0]))
            {
                ProfilerDriver.ClearAllFrames();
            }
            GUILayout.Space(5f);
            GUILayout.FlexibleSpace();
            this.FrameNavigationControls();
            GUILayout.EndHorizontal();
        }