protected override void OnUntouchedCore(Point imagePoint) { touchedPointerStyle = TouchPointerStyle.None; touchedPoint = VisualZoomCropController.TouchPoint.None; touchedCell = new Point(-1, -1); if (suspendImageChangedEventOnTouch) { SourceImage.TriggerImageChanged(); suspendImageChangedEventOnTouch = false; } base.OnUntouchedCore(imagePoint); }
public void Fill(Point point) { if (MouseColor != null && point.X >= 0 && point.X < SourceImage.Size.Width && point.Y >= 0 && point.Y < SourceImage.Size.Height) { using (SuspendUpdateVisualImage()) using (SourceImage.Palette.SuppressRemoveColorsWithoutOccurrences()) using (UndoRedo.BeginMultiActionsUndoRedoStep(UndoRedoProvider.UndoRedoActionFillRegion)) { ImagePainter.Fill(SourceImage, MouseColor, point.X, point.Y); SourceImage.TriggerImageChanged(); } } }
public void Pen(Point point) { if (MouseColor != null && point.X >= 0 && point.X < SourceImage.Size.Width && point.Y >= 0 && point.Y < SourceImage.Size.Height) { using (SuspendUpdateVisualImage()) using (SourceImage.Palette.SuppressRemoveColorsWithoutOccurrences()) { SourceImage[point.X, point.Y] = MouseColor; if (!suspendImageChangedEventOnTouch) { SourceImage.TriggerImageChanged(); } } } }
public void Redo() { using (SuspendUpdateVisualImage()) { if (MouseMode == MouseActionMode.MoveSelection) { FinishMoveSelection(); } if (UndoRedo.CanRedo) { UndoRedo.Redo(); SourceImage.TriggerImageChanged(); } } }
public void FinishMoveSelection() { if (GridPainter.InsertedBlock != null) { using (SuspendUpdateVisualImage()) using (SourceImage.Palette.SuppressRemoveColorsWithoutOccurrences()) using (UndoRedo.BeginMultiActionsUndoRedoStep(UndoRedoProvider.UndoRedoActionPaste)) { ImageCopier.CopyWithPalette(GridPainter.InsertedBlock, SourceImage, new Point(SelectedRect.Left, SelectedRect.Top)); GridPainter.InsertedBlock = null; if (MouseMode == MouseActionMode.MoveSelection) { MouseMode = MouseActionMode.Shift; } UpdateVisualImage(); SourceImage.TriggerImageChanged(); } } }