public static GUIEventData Toggle(bool toggle, string label, GUIStyle style, params GUILayoutOption[] guiLayoutOptions)
        {
            var e          = Event.current;
            var e1         = new Event(e);
            var guiContent = new GUIContent(label);
            var rect       = GUILayoutUtility.GetRect(guiContent, style, guiLayoutOptions);

            var data = new GUIEventData {
                Event = e1, Rect = rect
            };

            GUI.Toggle(rect, toggle, guiContent, style);
            return(data);
        }
        public static GUIEventData Button(string label)
        {
            var e          = Event.current;
            var e1         = new Event(e);
            var guiContent = new GUIContent(label);
            var rect       = GUILayoutUtility.GetRect(guiContent, GUI.skin.button);

            var data = new GUIEventData {
                Event = e1, Rect = rect
            };

            GUI.Button(rect, guiContent);
            return(data);
        }