Ejemplo n.º 1
0
        private void PanButton_MouseDown(object sender, MouseEventArgs e)
        {
            if (e.Button != MouseButtons.Left)
            {
                return;
            }

            var ctrl        = (Control)sender;
            var adjustement = (ImageAlignAdjustement)ctrl.Tag;

            _lastClickType = adjustement;
            //First adjustement immediatly when the button is down, before the delay is considered.
            DoAdjustement(adjustement);
            tmrScrollDelay.Start();
        }
Ejemplo n.º 2
0
 public AlignImageEventArgs(ImageAlignAdjustement alignButtonClick)
 {
     AlignButtonClicked = alignButtonClick;
 }
Ejemplo n.º 3
0
        private void DoAdjustement(ImageAlignAdjustement adjustementType)
        {
            if (PannablePictureBox != null)
            {
                switch (adjustementType)
                {
                case ImageAlignAdjustement.LeftAlign:
                    PannablePictureBox.AlignLeft();
                    break;

                case ImageAlignAdjustement.BottomAlign:
                    PannablePictureBox.AlignBottom();
                    break;

                case ImageAlignAdjustement.RightAlign:
                    PannablePictureBox.AlignRight();
                    break;

                case ImageAlignAdjustement.TopAlign:
                    PannablePictureBox.AlignTop();
                    break;

                case ImageAlignAdjustement.XAlign:
                    PannablePictureBox.AlignXMiddle();
                    break;

                case ImageAlignAdjustement.YAlign:
                    PannablePictureBox.AlignYMiddle();
                    break;

                case ImageAlignAdjustement.NudgeUp:
                    PannablePictureBox.Nudge(y: -1);
                    break;

                case ImageAlignAdjustement.NudgeDown:
                    PannablePictureBox.Nudge(y: 1);
                    break;

                case ImageAlignAdjustement.NudgeLeft:
                    PannablePictureBox.Nudge(-1);
                    break;

                case ImageAlignAdjustement.NudgeRight:
                    PannablePictureBox.Nudge(1);
                    break;

                case ImageAlignAdjustement.Center:
                    PannablePictureBox.CenterImage();
                    break;

                case ImageAlignAdjustement.None:
                    return;

                default:
                    throw new ArgumentOutOfRangeException(nameof(adjustementType), adjustementType, null);
                }

                SetPositionText();

                ImageLocationChanged?.Invoke(this, new AlignImageEventArgs(adjustementType));
            }
        }