/// <summary>
        /// Mouse moved event for the OpenGL window
        /// </summary>
        /// <param name="sender"></param>
        /// <param name="e"></param>
        void glControl_MouseMove(object sender, System.Windows.Forms.MouseEventArgs e)
        {
            Vector2 mousePos = renderControl.ToWorldSpace(AdjustBoundsToView(new Vector2(e.X, glControl.Height - e.Y)));

            if (e.Button == MouseButtons.Left)
            {
                if (editorStateControl.DragStateItem(mousePos))
                {
                    bufferControl.Rebuild();
                }
                glControl.Invalidate();
            }

            if (e.Button == MouseButtons.Middle)
            {
                Vector2 diff = mousePos - oldMousePos;
                renderControl.Pan(diff);
                oldMousePos = mousePos;
                glControl.Invalidate();
            }
        }