private ImageInfo OpenImage(string filePath) { ImageInfo newImage = new ImageInfo(toolPanel, filePath); newImage.ColourIndex = colourPalettePanel.SelectedIndex; newImage.ZoomScale = ZoomScale; canvasTabs.TabPages.Add(newImage.Tab); myCurrentImages.Add(newImage); newImage.PushState(); ChangeImage(newImage); return(newImage); }
private ImageInfo CreateNewImage(int width = 16, int height = 16, string name = "untitled") { ImageInfo newImage = new ImageInfo(toolPanel, width, height, name); newImage.Palette = (Color[])colourPalettePanel.Palette.Clone(); newImage.ColourIndex = colourPalettePanel.SelectedIndex; newImage.ZoomScale = ZoomScale; newImage.ShowGrid = showGridToolStripMenuItem.Checked; canvasTabs.TabPages.Add(newImage.Tab); myCurrentImages.Add(newImage); newImage.PushState(); ChangeImage(newImage); return(newImage); }
protected override void OnMouseDown(MouseEventArgs e) { if (e.Button == MouseButtons.Left || e.Button == MouseButtons.Right) { int x = (int)((e.X - ClientRectangle.Left) / Image.ZoomScale); int y = (int)((e.Y - ClientRectangle.Top) / Image.ZoomScale); if (!Image.InBounds(x, y)) { return; } switch (myToolPanel.CurrentTool) { case Tool.Select: x = Wrap(x, Image.Width); y = Wrap(y, Image.Height); if (e.Button == MouseButtons.Left) { if (mySelectedPixels[x, y] || (mySelectedArea == 0 && CurrentLayer.Pixels[x, y] != Pixel.Empty)) { myMovingSelected = myMovingLayer = true; myTempLayer = null; myAnchorPos = new Point(x, y); } } else if (mySelectedPixels[x, y]) { myMovingSelected = true; myAnchorPos = new Point(x, y); } break; case Tool.Wand: WandSelect(x, y, e.Button == MouseButtons.Right); break; case Tool.Area: mySelectingPixels = true; myAnchorPos = new Point(x, y); myBoxPreview = new Rectangle(x, y, 1, 1); break; case Tool.Pencil: myDrawingPencil = true; myAnchorPos = new Point(x, y); DrawPencil(x, y, e.Button == MouseButtons.Left ? Image.CurrentPixel : Pixel.Empty); break; case Tool.Fill: Fill(x, y, e.Button == MouseButtons.Left ? Image.CurrentPixel : Pixel.Empty); Image.PushState(); break; case Tool.Box: myDrawingBox = true; myAnchorPos = new Point(x, y); myBoxPreview = new Rectangle(x, y, 1, 1); break; } } }
private ImageInfo OpenImage( string filePath ) { ImageInfo newImage = new ImageInfo( toolPanel, filePath ); newImage.ColourIndex = colourPalettePanel.SelectedIndex; newImage.ZoomScale = ZoomScale; canvasTabs.TabPages.Add( newImage.Tab ); myCurrentImages.Add( newImage ); newImage.PushState(); ChangeImage( newImage ); return newImage; }
private ImageInfo CreateNewImage( int width = 16, int height = 16, string name = "untitled" ) { ImageInfo newImage = new ImageInfo( toolPanel, width, height, name ); newImage.Palette = (Color[]) colourPalettePanel.Palette.Clone(); newImage.ColourIndex = colourPalettePanel.SelectedIndex; newImage.ZoomScale = ZoomScale; newImage.ShowGrid = showGridToolStripMenuItem.Checked; canvasTabs.TabPages.Add( newImage.Tab ); myCurrentImages.Add( newImage ); newImage.PushState(); ChangeImage( newImage ); return newImage; }