Ejemplo n.º 1
0
        /// <summary>
        ///   Performs mouse based panning
        /// </summary>
        /// <param name="e">
        ///   The <see cref="MouseEventArgs" /> instance containing the event data.
        /// </param>
        /// <param name="selectionMode">
        /// </param>
        private void ProcessPanning(MouseEventArgs e, ImageBoxSelectionMode selectionMode)
        {
            if (fAutoPan && !fViewSize.IsEmpty && selectionMode == ImageBoxSelectionMode.None)
            {
                if (!fIsPanning && (HScroll || VScroll))
                {
                    fStartMousePosition = e.Location;
                    IsPanning           = true;
                }

                if (fIsPanning)
                {
                    int x = -fStartScrollPosition.X + (fStartMousePosition.X - e.Location.X);
                    int y = -fStartScrollPosition.Y + (fStartMousePosition.Y - e.Location.Y);

                    UpdateScrollPosition(x, y);
                }
            }
        }
Ejemplo n.º 2
0
        /// <summary>
        ///   Performs mouse based panning
        /// </summary>
        /// <param name="e">
        ///   The <see cref="MouseEventArgs" /> instance containing the event data.
        /// </param>
        /// <param name="selectionMode">
        /// </param>
        private void ProcessPanning(MouseEventArgs e, ImageBoxSelectionMode selectionMode)
        {
            Point mpt = new Point(e.Location);

            if (fAutoPan && selectionMode == ImageBoxSelectionMode.None)
            {
                if (!fIsPanning && (HScroll || VScroll))
                {
                    fStartMousePosition = mpt;
                    IsPanning           = true;
                }

                if (fIsPanning)
                {
                    int dx = -(mpt.X - fStartMousePosition.X);
                    int dy = -(mpt.Y - fStartMousePosition.Y);
                    AdjustScroll(dx, dy);
                    fStartMousePosition = mpt;
                }
            }
        }