private void ctl_Move(object sender, EventArgs e)
        {
            if (suspendUpdate > 0)
            {
                return;
            }

            suspendUpdate++;
            currentRegion         = (TextRegionCtrl)sender;
            txtMessage.Text       = currentRegion.textRegion.message;
            txtMessage.Enabled    = true;
            btnChangeFont.Enabled = true;

            // Select the current region, deselect others
            foreach (TextRegionCtrl c in pnlPreviewImage.Controls)
            {
                if (c != currentRegion)
                {
                    c.Selected = false;
                }
            }
            currentRegion.Selected = true;

            // Update the location
            Rectangle b = currentRegion.Bounds;

            b.X      = (int)(((double)b.X - currentXOffset) / currentScaleFactor);
            b.Y      = (int)((double)b.Y / currentScaleFactor);
            b.Width  = (int)((double)b.Width / currentScaleFactor);
            b.Height = (int)((double)b.Height / currentScaleFactor);
            currentRegion.textRegion.bounds = b;
            proj.RefreshUI();
            suspendUpdate--;
        }