UnityEditor.ContainerWindow.DragTitleBar C# (CSharp) Method

DragTitleBar() private method

private DragTitleBar ( Rect titleBarRect ) : void
titleBarRect UnityEngine.Rect
return void
        private void DragTitleBar(Rect titleBarRect)
        {
            int controlID = GUIUtility.GetControlID(FocusType.Passive);
            Event current = Event.current;
            switch (current.GetTypeForControl(controlID))
            {
                case EventType.MouseDown:
                    if ((titleBarRect.Contains(current.mousePosition) && (GUIUtility.hotControl == 0)) && (current.button == 0))
                    {
                        GUIUtility.hotControl = controlID;
                        Event.current.Use();
                        s_LastDragMousePos = GUIUtility.GUIToScreenPoint(current.mousePosition);
                        dragPosition = this.position;
                    }
                    break;

                case EventType.MouseUp:
                    if (GUIUtility.hotControl == controlID)
                    {
                        GUIUtility.hotControl = 0;
                        Event.current.Use();
                    }
                    break;

                case EventType.MouseDrag:
                    if (GUIUtility.hotControl == controlID)
                    {
                        Vector2 vector = GUIUtility.GUIToScreenPoint(current.mousePosition);
                        Vector2 vector2 = vector - s_LastDragMousePos;
                        s_LastDragMousePos = vector;
                        dragPosition.x += vector2.x;
                        dragPosition.y += vector2.y;
                        this.position = dragPosition;
                        GUI.changed = true;
                    }
                    break;

                case EventType.Repaint:
                    EditorGUIUtility.AddCursorRect(titleBarRect, MouseCursor.Arrow);
                    break;
            }
        }
        private static class Styles