public OverlayWindow(GUIContent title, SceneViewOverlay.WindowFunction guiFunction, int primaryOrder, Object target, SceneViewOverlay.WindowDisplayOption option) { this.title = title; this.sceneViewFunc = guiFunction; this.primaryOrder = primaryOrder; this.option = option; this.target = target; this.canCollapse = true; this.expanded = true; }
public OverlayWindow(GUIContent title, int primaryOrder, Object target, SceneViewOverlay.WindowDisplayOption displayOption, Action <SceneView> onGUICallback) { this.Title = title; this.PrimaryOrder = primaryOrder; this.DisplayOption = displayOption; this.Target = target; this.OnGUICallback = onGUICallback; this.CanCollapse = true; this.IsExpanded = true; }
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 static void Window(GUIContent title, SceneViewOverlay.WindowFunction sceneViewFunc, int order, SceneViewOverlay.WindowDisplayOption option) { SceneViewOverlay.Window(title, sceneViewFunc, order, (UnityEngine.Object)null, option); }
public static void Window(GUIContent title, SceneViewOverlay.WindowFunction sceneViewFunc, int order, UnityEngine.Object target, SceneViewOverlay.WindowDisplayOption option) { if (Event.current.type == EventType.Layout) { 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); } }