internal static void CleanupRoots() { GUILayoutUtility.s_SpaceStyle = null; GUILayoutUtility.s_StoredLayouts.Clear(); GUILayoutUtility.s_StoredWindows.Clear(); GUILayoutUtility.current = new GUILayoutUtility.LayoutCache(); }
internal static void CleanupRoots() { GUILayoutUtility.s_SpaceStyle = null; GUILayoutUtility.s_StoredLayouts = null; GUILayoutUtility.s_StoredWindows = null; GUILayoutUtility.current = null; }
internal LayoutCache(GUILayoutUtility.LayoutCache other) { this.id = other.id; this.topLevel = other.topLevel; this.layoutGroups = other.layoutGroups; this.windows = other.windows; }
internal static void BeginWindow(int windowID, GUIStyle style, GUILayoutOption[] options) { GUILayoutUtility.LayoutCache layoutCache = GUILayoutUtility.SelectIDList(windowID, true); bool flag = Event.current.type == EventType.Layout; if (flag) { GUILayoutUtility.current.topLevel = (layoutCache.topLevel = new GUILayoutGroup()); GUILayoutUtility.current.topLevel.style = style; GUILayoutUtility.current.topLevel.windowID = windowID; bool flag2 = options != null; if (flag2) { GUILayoutUtility.current.topLevel.ApplyOptions(options); } GUILayoutUtility.current.layoutGroups.Clear(); GUILayoutUtility.current.layoutGroups.Push(GUILayoutUtility.current.topLevel); GUILayoutUtility.current.windows = (layoutCache.windows = new GUILayoutGroup()); } else { GUILayoutUtility.current.topLevel = layoutCache.topLevel; GUILayoutUtility.current.layoutGroups = layoutCache.layoutGroups; GUILayoutUtility.current.windows = layoutCache.windows; } }
internal LayoutCache(GUILayoutUtility.LayoutCache other) { this.topLevel = new GUILayoutGroup(); this.layoutGroups = new GenericStack(); this.windows = new GUILayoutGroup(); this.topLevel = other.topLevel; this.layoutGroups = other.layoutGroups; this.windows = other.windows; }
internal static GUILayoutUtility.LayoutCache SelectIDList(int instanceID, bool isWindow) { Dictionary<int, GUILayoutUtility.LayoutCache> dictionary = !isWindow ? GUILayoutUtility.s_StoredLayouts : GUILayoutUtility.s_StoredWindows; GUILayoutUtility.LayoutCache layoutCache; if (!dictionary.TryGetValue(instanceID, out layoutCache)) { layoutCache = new GUILayoutUtility.LayoutCache(); dictionary[instanceID] = layoutCache; } GUILayoutUtility.current.topLevel = layoutCache.topLevel; GUILayoutUtility.current.layoutGroups = layoutCache.layoutGroups; GUILayoutUtility.current.windows = layoutCache.windows; return layoutCache; }
internal static GUILayoutUtility.LayoutCache SelectIDList(int instanceID, bool isWindow) { Dictionary <int, GUILayoutUtility.LayoutCache> dictionary = (!isWindow) ? GUILayoutUtility.storedLayouts : GUILayoutUtility.storedWindows; GUILayoutUtility.LayoutCache layoutCache; if (!dictionary.TryGetValue(instanceID, out layoutCache)) { layoutCache = new GUILayoutUtility.LayoutCache(); dictionary[instanceID] = layoutCache; } GUILayoutUtility.current.topLevel = layoutCache.topLevel; GUILayoutUtility.current.layoutGroups = layoutCache.layoutGroups; GUILayoutUtility.current.windows = layoutCache.windows; return(layoutCache); }
internal static void BeginContainer(GUILayoutUtility.LayoutCache cache) { bool flag = Event.current.type == EventType.Layout; if (flag) { cache.topLevel = new GUILayoutGroup(); cache.layoutGroups.Clear(); cache.layoutGroups.Push(cache.topLevel); cache.windows = new GUILayoutGroup(); } GUILayoutUtility.current.topLevel = cache.topLevel; GUILayoutUtility.current.layoutGroups = cache.layoutGroups; GUILayoutUtility.current.windows = cache.windows; }
internal static void BeginContainer(GUILayoutUtility.LayoutCache cache) { if (Event.current.type == EventType.Layout) { GUILayoutUtility.current.topLevel = (cache.topLevel = new GUILayoutGroup()); GUILayoutUtility.current.layoutGroups.Clear(); GUILayoutUtility.current.layoutGroups.Push(GUILayoutUtility.current.topLevel); GUILayoutUtility.current.windows = (cache.windows = new GUILayoutGroup()); } else { GUILayoutUtility.current.topLevel = cache.topLevel; GUILayoutUtility.current.layoutGroups = cache.layoutGroups; GUILayoutUtility.current.windows = cache.windows; } }
internal static void Begin(int instanceID) { GUILayoutUtility.LayoutCache layoutCache = GUILayoutUtility.SelectIDList(instanceID, false); if (Event.current.type == EventType.Layout) { GUILayoutUtility.current.topLevel = (layoutCache.topLevel = new GUILayoutGroup()); GUILayoutUtility.current.layoutGroups.Clear(); GUILayoutUtility.current.layoutGroups.Push(GUILayoutUtility.current.topLevel); GUILayoutUtility.current.windows = (layoutCache.windows = new GUILayoutGroup()); } else { GUILayoutUtility.current.topLevel = layoutCache.topLevel; GUILayoutUtility.current.layoutGroups = layoutCache.layoutGroups; GUILayoutUtility.current.windows = layoutCache.windows; } }