async public void fillSpace(Point coordinate, SolidColorBrush solidColorBrush) { try { PocketPaintApplication.GetInstance().ProgressRing.IsActive = true; PixelData.PixelData pixelData = new PixelData.PixelData(); await pixelData.preparePaintingAreaCanvasPixel(); Catrobat.Paint.WindowsPhone.Ui.Spinner.StartSpinning(); if (pixelData.FloodFill4(coordinate, solidColorBrush) == false) { return; } Catrobat.Paint.WindowsPhone.Ui.Spinner.StopSpinning(); await pixelData.PixelBufferToBitmap(); } catch (Exception exception) { System.Diagnostics.Debug.WriteLine(exception.StackTrace); } finally { Catrobat.Paint.WindowsPhone.Ui.Spinner.StopSpinning(); PocketPaintApplication.GetInstance().ProgressRing.IsActive = false; } }
public EraserTool() { ToolType = ToolType.Eraser; _lastPointSet = false; points = new List <Point>(); pixelData = new PixelData.PixelData(); pixelDataEraser = new PixelData.PixelData(); initPathInstances(); initPathStrokeSettings(); }
async public override void Draw(object obj) { await pixelData.preparePaintingAreaCanvasPixel(); pixelDataEraser = new PixelData.PixelData(); await pixelDataEraser.preparePaintingAreaCanvasForEraser(); List <Point> pointsToSet = ((List <Point>)obj); pixelData.SetPixel(pointsToSet, "0_0_0_0"); PocketPaintApplication.GetInstance().EraserCanvas.Children.Clear(); var image = await pixelData.BufferToImage(); PocketPaintApplication.GetInstance().PaintingAreaCanvas.Children.Add(image); }
public async override void HandleUp(object arg) { if (!(arg is Point)) { return; } Point coordinates = (Point)arg; PixelData.PixelData myPixelData = new PixelData.PixelData(); PocketPaintApplication.GetInstance().PaintData.colorSelected = await myPixelData.GetPixel(PocketPaintApplication.GetInstance().Bitmap, (int)coordinates.X, (int)coordinates.Y); //PocketPaintApplication.GetInstance().PaintData.ColorSelected = // new SolidColorBrush(PocketPaintApplication.GetInstance().Bitmap.); }