UnityEngine.GUILayoutUtility.CreateGUILayoutGroupInstanceOfType C# (CSharp) Method

CreateGUILayoutGroupInstanceOfType() private method

private CreateGUILayoutGroupInstanceOfType ( System LayoutType ) : GUILayoutGroup
LayoutType System
return GUILayoutGroup
        private static GUILayoutGroup CreateGUILayoutGroupInstanceOfType(System.Type LayoutType)
        {
            if (!typeof(GUILayoutGroup).IsAssignableFrom(LayoutType))
            {
                throw new ArgumentException("LayoutType needs to be of type GUILayoutGroup");
            }
            return (GUILayoutGroup) Activator.CreateInstance(LayoutType);
        }

Usage Example

コード例 #1
0
        internal static GUILayoutGroup BeginLayoutArea(GUIStyle style, System.Type layoutType)
        {
            GUILayoutGroup guiLayoutGroup;

            switch (Event.current.type)
            {
            case EventType.Layout:
            case EventType.Used:
                guiLayoutGroup       = GUILayoutUtility.CreateGUILayoutGroupInstanceOfType(layoutType);
                guiLayoutGroup.style = style;
                GUILayoutUtility.current.windows.Add((GUILayoutEntry)guiLayoutGroup);
                break;

            default:
                guiLayoutGroup = GUILayoutUtility.current.windows.GetNext() as GUILayoutGroup;
                if (guiLayoutGroup == null)
                {
                    throw new ArgumentException("GUILayout: Mismatched LayoutGroup." + (object)Event.current.type);
                }
                guiLayoutGroup.ResetCursor();
                break;
            }
            GUILayoutUtility.current.layoutGroups.Push((object)guiLayoutGroup);
            GUILayoutUtility.current.topLevel = guiLayoutGroup;
            return(guiLayoutGroup);
        }
All Usage Examples Of UnityEngine.GUILayoutUtility::CreateGUILayoutGroupInstanceOfType