public static void Window(GUIContent title, SceneViewOverlay.WindowFunction sceneViewFunc, int order, UnityEngine.Object target, SceneViewOverlay.WindowDisplayOption option) { if (Event.current.type != EventType.Layout) { return; } using (List <SceneViewOverlay.OverlayWindow> .Enumerator enumerator = SceneViewOverlay.m_Windows.GetEnumerator()) { while (enumerator.MoveNext()) { SceneViewOverlay.OverlayWindow current = enumerator.Current; if (option == SceneViewOverlay.WindowDisplayOption.OneWindowPerTarget && current.m_Target == target && target != (UnityEngine.Object)null || option == SceneViewOverlay.WindowDisplayOption.OneWindowPerTitle && (current.m_Title == title || current.m_Title.text == title.text)) { return; } } } SceneViewOverlay.m_Windows.Add(new SceneViewOverlay.OverlayWindow() { m_Title = title, m_SceneViewFunc = sceneViewFunc, m_PrimaryOrder = order, m_SecondaryOrder = SceneViewOverlay.m_Windows.Count, m_Target = target }); }
public void OnSceneViewGUI(SceneView sceneView) { if (NavMeshVisualizationSettings.showNavigation != 0) { GUIContent arg_3D_0 = new GUIContent("Navmesh Display"); if (NavMeshEditorWindow.< > f__mg$cache0 == null) { NavMeshEditorWindow.< > f__mg$cache0 = new SceneViewOverlay.WindowFunction(NavMeshEditorWindow.DisplayControls); } SceneViewOverlay.Window(arg_3D_0, NavMeshEditorWindow.< > f__mg$cache0, 300, SceneViewOverlay.WindowDisplayOption.OneWindowPerTarget); if (this.m_SelectedNavMeshAgentCount > 0) { GUIContent arg_7C_0 = new GUIContent("Agent Display"); if (NavMeshEditorWindow.< > f__mg$cache1 == null) { NavMeshEditorWindow.< > f__mg$cache1 = new SceneViewOverlay.WindowFunction(NavMeshEditorWindow.DisplayAgentControls); } SceneViewOverlay.Window(arg_7C_0, NavMeshEditorWindow.< > f__mg$cache1, 300, SceneViewOverlay.WindowDisplayOption.OneWindowPerTarget); } if (this.m_SelectedNavMeshObstacleCount > 0) { GUIContent arg_BC_0 = new GUIContent("Obstacle Display"); if (NavMeshEditorWindow.< > f__mg$cache2 == null) { NavMeshEditorWindow.< > f__mg$cache2 = new SceneViewOverlay.WindowFunction(NavMeshEditorWindow.DisplayObstacleControls); } SceneViewOverlay.Window(arg_BC_0, NavMeshEditorWindow.< > f__mg$cache2, 300, SceneViewOverlay.WindowDisplayOption.OneWindowPerTarget); } } }
public static void Window(GUIContent title, SceneViewOverlay.WindowFunction sceneViewFunc, int order, UnityEngine.Object target, SceneViewOverlay.WindowDisplayOption option) { if (Event.current.type != EventType.Layout) { return; } foreach (SceneViewOverlay.OverlayWindow current in SceneViewOverlay.m_Windows) { if (option == SceneViewOverlay.WindowDisplayOption.OneWindowPerTarget && current.m_Target == target && target != null) { return; } if (option == SceneViewOverlay.WindowDisplayOption.OneWindowPerTitle && (current.m_Title == title || current.m_Title.text == title.text)) { return; } } SceneViewOverlay.OverlayWindow overlayWindow = new SceneViewOverlay.OverlayWindow(); overlayWindow.m_Title = title; overlayWindow.m_SceneViewFunc = sceneViewFunc; overlayWindow.m_PrimaryOrder = order; overlayWindow.m_SecondaryOrder = SceneViewOverlay.m_Windows.Count; overlayWindow.m_Target = target; SceneViewOverlay.m_Windows.Add(overlayWindow); }
public OverlayWindow(GUIContent title, SceneViewOverlay.WindowFunction guiFunction, int primaryOrder, Object target) { this.title = title; this.sceneViewFunc = guiFunction; this.primaryOrder = primaryOrder; this.target = target; this.canCollapse = true; this.expanded = true; }
public static void Window(GUIContent title, SceneViewOverlay.WindowFunction sceneViewFunc, int order, SceneViewOverlay.WindowDisplayOption option) { SceneViewOverlay.Window(title, sceneViewFunc, order, (UnityEngine.Object)null, option); }