private void OnGUI()
 {
     scrollPosition = HUMEditor.Draw().ScrollView(scrollPosition, new GUIStyle(GUI.skin.scrollView)
     {
         stretchHeight = true, stretchWidth = true
     }, () =>
     {
         HUMEditor.Vertical(() =>
         {
             for (int i = 0; i < list?.Count; i++)
             {
                 OnDrawItem(list[i], Event.current);
             }
         });
     });
 }
        public static void Box(this HUMEditor.Data.Horizontal horizontal, Color backgroundColor, Color borderColor, RectOffset padding, RectOffset border, Action contents = null, params GUILayoutOption[] options)
        {
            var style       = new GUIStyle();
            var borderStyle = new GUIStyle();

            style.normal.background       = HUMColor.CacheTexture(backgroundColor);
            borderStyle.normal.background = HUMColor.CacheTexture(borderColor);
            borderStyle.padding           = border;
            style.padding = padding;

            HUMEditor.Horizontal(borderStyle, () =>
            {
                HUMEditor.Horizontal(style, () =>
                {
                    contents?.Invoke();
                });
            }, options);
        }
        public static void Box(this HUMEditor.Data.Vertical vertical, Color backgroundColor, Color borderColor, RectOffset padding, TextAnchor contentAlignment, int border = 1, Action contents = null, params GUILayoutOption[] options)
        {
            var style       = new GUIStyle();
            var borderStyle = new GUIStyle();

            style.normal.background       = HUMColor.CacheTexture(backgroundColor);
            borderStyle.normal.background = HUMColor.CacheTexture(borderColor);
            borderStyle.padding           = new RectOffset(border, border, border, border);
            style.padding   = padding;
            style.alignment = contentAlignment;

            HUMEditor.Vertical(borderStyle, () =>
            {
                HUMEditor.Vertical(style, () =>
                {
                    contents?.Invoke();
                });
            }, options);
        }
        public static void Box(this HUMEditor.Data.Vertical vertical, Color backgroundColor, Color borderColor, RectOffset padding, RectOffset border, Action contents = null, bool stretchVertical = false, bool stretchHorizontal = false, params GUILayoutOption[] options)
        {
            var style       = new GUIStyle();
            var borderStyle = new GUIStyle();

            style.normal.background       = HUMColor.CacheTexture(backgroundColor);
            borderStyle.normal.background = HUMColor.CacheTexture(borderColor);
            borderStyle.padding           = border;
            borderStyle.stretchHeight     = stretchVertical;
            borderStyle.stretchWidth      = stretchHorizontal;
            style.padding       = padding;
            style.stretchHeight = stretchVertical;
            style.stretchWidth  = stretchHorizontal;

            HUMEditor.Vertical(borderStyle, () =>
            {
                HUMEditor.Vertical(style, () =>
                {
                    contents?.Invoke();
                });
            }, options);
        }