diff options
| author | MichaelTheShifter <[email protected]> | 2016-06-25 08:10:03 -0400 |
|---|---|---|
| committer | MichaelTheShifter <[email protected]> | 2016-06-25 08:10:03 -0400 |
| commit | 84f689b91a73e512b035df40bbcf556b008a3b81 (patch) | |
| tree | da1020b2b5866c7ce300ac7b9c97112fe80fa1b3 /source/WindowsFormsApplication1/Artpad.cs | |
| parent | 6707e2076a63dafab686fd533c95fb8ceb6c23fa (diff) | |
| download | shiftos-c-_theultimatehacker-84f689b91a73e512b035df40bbcf556b008a3b81.tar.gz shiftos-c-_theultimatehacker-84f689b91a73e512b035df40bbcf556b008a3b81.tar.bz2 shiftos-c-_theultimatehacker-84f689b91a73e512b035df40bbcf556b008a3b81.zip | |
Sort source code into folders.
It feels better to know what's responsible for what... Plus I removed
some un-needed C# stuff.
Diffstat (limited to 'source/WindowsFormsApplication1/Artpad.cs')
| -rw-r--r-- | source/WindowsFormsApplication1/Artpad.cs | 1783 |
1 files changed, 0 insertions, 1783 deletions
diff --git a/source/WindowsFormsApplication1/Artpad.cs b/source/WindowsFormsApplication1/Artpad.cs deleted file mode 100644 index c393ae0..0000000 --- a/source/WindowsFormsApplication1/Artpad.cs +++ /dev/null @@ -1,1783 +0,0 @@ -using System; -using System.Collections.Generic; -using System.ComponentModel; -using System.Data; -using System.Drawing; -using System.Linq; -using System.Text; -using System.Threading.Tasks; -using System.Windows.Forms; -using System.Drawing.Text; -using System.Drawing.Imaging; -using System.Drawing.Drawing2D; - -namespace ShiftOS -{ - public partial class Artpad : Form - { - /// <summary> - /// Artpad's GUI. - /// </summary> - public Artpad() - { - InitializeComponent(); - } - - #region Variables - - public int rolldownsize; - public int oldbordersize; - public int oldtitlebarheight; - public bool justopened = false; - public bool needtorollback = false; - public int minimumsizewidth = 502; - - public int minimumsizeheight = 398; - public int codepointsearned; - public bool codepointscooldown = false; - - public bool needtosave = false; - int canvaswidth = 150; - int canvasheight = 100; - public Bitmap canvasbitmap; - - Color canvascolor = Color.White; - - Bitmap previewcanvasbitmap; - int magnificationlevel = 1; - Rectangle magnifyRect; - Graphics graphicsbitmap; - public Color drawingcolour = Color.Black; - string selectedtool = "Pixel Setter"; - bool pixalplacermovable = false; - public string savelocation; - System.Drawing.Drawing2D.GraphicsPath mousePath = new System.Drawing.Drawing2D.GraphicsPath(); - int pencilwidth = 1; - undo undo = new undo(); - Point thisPoint; - int eracerwidth = 15; - - string eracertype = "square"; - int paintbrushwidth = 15; - - string paintbrushtype = "circle"; - float rectanglestartpointx; - float rectanglestartpointy; - bool currentlydrawingsquare; - int squarewidth = 1; - bool squarefillon = false; - - Color fillsquarecolor = Color.Black; - float ovalstartpointx; - float ovalstartpointy; - bool currentlydrawingoval; - int ovalwidth = 2; - bool ovalfillon = false; - - Color fillovalcolor = Color.Black; - float linestartpointx; - float linestartpointy; - bool currentlydrawingline; - - int linewidth = 2; - bool currentlydrawingtext; - System.Drawing.Font drawtextfont = new System.Drawing.Font("Microsoft Sans Serif", 16); - int drawtextsize; - string drawtextfontname; - - FontStyle drawtextfontstyle; - - #endregion - - #region Setup - - private void Template_Load(object sender, EventArgs e) - { - justopened = true; - this.Left = (Screen.PrimaryScreen.Bounds.Width - this.Width) / 2; - this.Top = (Screen.PrimaryScreen.Bounds.Height - this.Height) / 2; - - setuppreview(); - settoolcolours(); - loadcolors(); - AddFonts(); - setuptoolbox(); - determinevisiblepallets(); - tmrsetupui.Start(); - } - - - - public void setupcanvas() - { - canvasbitmap = new Bitmap(canvaswidth, canvasheight); - previewcanvasbitmap = new Bitmap(canvaswidth, canvasheight); - picdrawingdisplay.Size = new Size(canvaswidth, canvasheight); - picdrawingdisplay.Location = new Point((pnldrawingbackground.Width - canvaswidth) / 2, (pnldrawingbackground.Height - canvasheight) / 2); - graphicsbitmap = Graphics.FromImage(canvasbitmap); - SolidBrush canvasbrush = new SolidBrush(canvascolor); - graphicsbitmap.FillRectangle(canvasbrush, 0, 0, canvaswidth, canvasheight); - magnificationlevel = 1; - lblzoomlevel.Text = magnificationlevel + "X"; - setuppreview(); - needtosave = false; - } - - public void setuptoolbox() - { - btnpixelplacer.Hide(); - btnpencil.Hide(); - btnfloodfill.Hide(); - btnoval.Hide(); - btnsquare.Hide(); - btnlinetool.Hide(); - btnpaintbrush.Hide(); - btntexttool.Hide(); - btneracer.Hide(); - btnnew.Hide(); - btnopen.Hide(); - btnsave.Hide(); - btnundo.Hide(); - btnredo.Hide(); - btnpixelplacermovementmode.Hide(); - - if (API.Upgrades["artpadpixelplacer"] == true) - btnpixelplacer.Show(); - if (API.Upgrades["artpadpencil"] == true) - btnpencil.Show(); - if (API.Upgrades["artpadfilltool"] == true) - btnfloodfill.Show(); - if (API.Upgrades["artpadovaltool"] == true) - btnoval.Show(); - if (API.Upgrades["artpadrectangletool"] == true) - btnsquare.Show(); - if (API.Upgrades["artpadlinetool"] == true) - btnlinetool.Show(); - if (API.Upgrades["artpadpaintbrush"] == true) - btnpaintbrush.Show(); - if (API.Upgrades["artpadtexttool"] == true) - btntexttool.Show(); - if (API.Upgrades["artpaderaser"] == true) - btneracer.Show(); - if (API.Upgrades["artpadnew"] == true) - btnnew.Show(); - if (API.Upgrades["artpadload"] == true) - btnopen.Show(); - if (API.Upgrades["artpadsave"] == true) - btnsave.Show(); - if (API.Upgrades["artpadundo"] == true) - btnundo.Show(); - if (API.Upgrades["artpadredo"] == true) - btnredo.Show(); - if (API.Upgrades["artpadppmovementmode"] == true) - btnpixelplacermovementmode.Show(); - - } - - private void AddFonts() - { - // Get the installed fonts collection. - InstalledFontCollection allFonts = new InstalledFontCollection(); - - // Get an array of the system's font familiies. - FontFamily[] fontFamilies = allFonts.Families; - - // Display the font families. - foreach (FontFamily myFont in fontFamilies) - { - combodrawtextfont.Items.Add(myFont.Name); - } - //font_family - - combodrawtextfont.SelectedItem = combodrawtextfont.Items[1]; - combofontstyle.Text = "Regular"; - txtdrawtextsize.Text = "16"; - } - - #endregion - - #region General - - // ERROR: Handles clauses are not supported in C# - private void btnpixelsetter_Click(object sender, EventArgs e) - { - selectedtool = "Pixel Setter"; - gettoolsettings(pnlpixelsettersettings); - } - - private void gettoolsettings(Panel toolpanel) - { - //hide all properties panels - pnlpixelsettersettings.Hide(); - pnlmagnifiersettings.Hide(); - - //show chosen panel - toolpanel.Dock = DockStyle.Fill; - toolpanel.BringToFront(); - toolpanel.Show(); - - setuppreview(); - } - - // ERROR: Handles clauses are not supported in C# - private void btnpixelsettersetpixel_Click(object sender, EventArgs e) - { - try - { - undo.undoStack.Push((Image)canvasbitmap.Clone()); - undo.redoStack.Clear(); - canvasbitmap.SetPixel(Convert.ToInt32(txtpixelsetterxcoordinate.Text), Convert.ToInt32(txtpixelsetterycoordinate.Text), drawingcolour); - picdrawingdisplay.Invalidate(); - } - catch - { - API.CreateInfoboxSession("ArtPad - Placement Error!", "You have specified invalid coordinates for the pixel setter." + Environment.NewLine + Environment.NewLine + "Remember that the top left pixel has the coordinates 0, 0", infobox.InfoboxMode.Info); - } - } - - // ERROR: Handles clauses are not supported in C# - private void btnmagnify_Click(object sender, EventArgs e) - { - selectedtool = "Magnifier"; - gettoolsettings(pnlmagnifiersettings); - } - - #endregion - - #region Drawing Display - - // ERROR: Handles clauses are not supported in C# - private void picdrawingdisplay_Paint(object sender, System.Windows.Forms.PaintEventArgs e) - { - e.Graphics.FillRectangle(Brushes.White, 0, 0, canvaswidth * magnificationlevel, canvasheight * magnificationlevel); - e.Graphics.InterpolationMode = InterpolationMode.NearestNeighbor; - e.Graphics.PixelOffsetMode = PixelOffsetMode.Half; - e.Graphics.ScaleTransform(magnificationlevel, magnificationlevel); - - if (currentlydrawingsquare == true) - { - GC.Collect(); - Graphics g = Graphics.FromImage(previewcanvasbitmap); - previewcanvasbitmap = new Bitmap(canvasbitmap.Width, canvasbitmap.Height); - g = Graphics.FromImage(previewcanvasbitmap); - var CurrentPen = new Pen(Color.FromArgb(255, drawingcolour), squarewidth); - var CurrentBrush = new SolidBrush(Color.FromArgb(255, fillsquarecolor)); - RectangleF rectdraw = new RectangleF(rectanglestartpointx, rectanglestartpointy, thisPoint.X - rectanglestartpointx, thisPoint.Y - rectanglestartpointy); - int heightamount; - int widthamount; - if (rectdraw.Height < 0) - heightamount = (int)Math.Abs(rectdraw.Height); - else - heightamount = 0; - if (rectdraw.Width < 0) - widthamount = (int)Math.Abs(rectdraw.Width); - else - widthamount = 0; - if (squarewidth > 0) - { - g.DrawRectangle(CurrentPen, rectdraw.X - widthamount, rectdraw.Y - heightamount, Math.Abs(rectdraw.Width), Math.Abs(rectdraw.Height)); - } - if (squarefillon == true) - { - float correctionamount = squarewidth / 2; - int addfillamount; - if (squarewidth > 0) - addfillamount = squarewidth; - else - addfillamount = -1; - g.FillRectangle(CurrentBrush, (rectdraw.X - widthamount) + correctionamount, (rectdraw.Y - heightamount) + correctionamount, Math.Abs(rectdraw.Width) - addfillamount, Math.Abs(rectdraw.Height) - addfillamount); - } - } - - if (currentlydrawingoval == true) - { - GC.Collect(); - Graphics g = Graphics.FromImage(previewcanvasbitmap); - previewcanvasbitmap = new Bitmap(canvasbitmap.Width, canvasbitmap.Height); - g = Graphics.FromImage(previewcanvasbitmap); - var CurrentPen = new Pen(Color.FromArgb(255, drawingcolour), ovalwidth); - var CurrentBrush = new SolidBrush(Color.FromArgb(255, fillovalcolor)); - RectangleF ovaldraw = new RectangleF(ovalstartpointx, ovalstartpointy, thisPoint.X - ovalstartpointx, thisPoint.Y - ovalstartpointy); - int heightamount; - int widthamount; - if (ovaldraw.Height < 0) - heightamount = (int)Math.Abs(ovaldraw.Height); - else - heightamount = 0; - if (ovaldraw.Width < 0) - widthamount = (int)Math.Abs(ovaldraw.Width); - else - widthamount = 0; - if (ovalwidth > 0) - { - g.DrawEllipse(CurrentPen, ovaldraw.X - widthamount, ovaldraw.Y - heightamount, Math.Abs(ovaldraw.Width), Math.Abs(ovaldraw.Height)); - } - if (ovalfillon == true) - { - g.FillEllipse(CurrentBrush, (ovaldraw.X - widthamount), (ovaldraw.Y - heightamount), Math.Abs(ovaldraw.Width), Math.Abs(ovaldraw.Height)); - } - } - - if (currentlydrawingline == true) - { - GC.Collect(); - Graphics g = Graphics.FromImage(previewcanvasbitmap); - previewcanvasbitmap = new Bitmap(canvasbitmap.Width, canvasbitmap.Height); - g = Graphics.FromImage(previewcanvasbitmap); - var CurrentPen = new Pen(Color.FromArgb(255, drawingcolour), linewidth); - g.DrawLine(CurrentPen, linestartpointx, linestartpointy, thisPoint.X, thisPoint.Y); - } - - if (currentlydrawingtext == true) - { - GC.Collect(); - Graphics g = Graphics.FromImage(previewcanvasbitmap); - previewcanvasbitmap = new Bitmap(canvasbitmap.Width, canvasbitmap.Height); - g = Graphics.FromImage(previewcanvasbitmap); - var CurrentBrush = new SolidBrush(Color.FromArgb(255, drawingcolour)); - g.TextRenderingHint = TextRenderingHint.SingleBitPerPixelGridFit; - drawtextfont = new System.Drawing.Font(drawtextfontname, drawtextsize, drawtextfontstyle); - g.DrawString(txtdrawstringtext.Text, drawtextfont, CurrentBrush, thisPoint.X, thisPoint.Y); - } - try - { - e.Graphics.DrawImage(canvasbitmap, 0, 0); - e.Graphics.DrawImage(previewcanvasbitmap, 0, 0); - } - catch - { - - } - } - - - - // ERROR: Handles clauses are not supported in C# - private void picdrawingdisplay_MouseDown(object sender, System.Windows.Forms.MouseEventArgs e) - { - undo.undoStack.Push((Image)canvasbitmap.Clone()); - undo.redoStack.Clear(); - - - thisPoint.X = (int)(e.Location.X - (magnificationlevel / 2)) / magnificationlevel; - thisPoint.Y = (int)(e.Location.Y - (magnificationlevel / 2)) / magnificationlevel; - - if (selectedtool == "Pixel Placer") - { - if (e.Button == MouseButtons.Left) - { - if (thisPoint.X < canvasbitmap.Width && thisPoint.X > -1) - { - if (thisPoint.Y < canvasbitmap.Height && thisPoint.Y > -1) - { - canvasbitmap.SetPixel(thisPoint.X, thisPoint.Y, drawingcolour); - //set the pixel on the canvas - picdrawingdisplay.Invalidate(); - //refresh the picture from the canvas - } - } - } - } - - if (selectedtool == "Pencil") - { - if (e.Button == MouseButtons.Left) - { - mousePath.StartFigure(); - picdrawingdisplay.Invalidate(); - } - } - - if (selectedtool == "Flood Fill") - { - if (e.Button == MouseButtons.Left) - { - if (thisPoint.X < canvasbitmap.Width && thisPoint.X > -1) - { - if (thisPoint.Y < canvasbitmap.Height && thisPoint.Y > -1) - { - SafeFloodFill(canvasbitmap, thisPoint.X, thisPoint.Y, drawingcolour); - graphicsbitmap = Graphics.FromImage(canvasbitmap); - picdrawingdisplay.Invalidate(); - } - } - } - } - - if (selectedtool == "Square Tool") - { - if (e.Button == MouseButtons.Left) - { - rectanglestartpointx = thisPoint.X; - rectanglestartpointy = thisPoint.Y; - currentlydrawingsquare = true; - picdrawingdisplay.Invalidate(); - } - } - - if (selectedtool == "Oval Tool") - { - if (e.Button == MouseButtons.Left) - { - ovalstartpointx = thisPoint.X; - ovalstartpointy = thisPoint.Y; - currentlydrawingoval = true; - picdrawingdisplay.Invalidate(); - } - } - - if (selectedtool == "Line Tool") - { - if (e.Button == MouseButtons.Left) - { - linestartpointx = thisPoint.X; - linestartpointy = thisPoint.Y; - currentlydrawingline = true; - picdrawingdisplay.Invalidate(); - } - } - - if (selectedtool == "Text Tool") - { - if (e.Button == MouseButtons.Left) - { - currentlydrawingtext = true; - picdrawingdisplay.Invalidate(); - } - } - - if (selectedtool == "Eracer") - { - var CurrentPen = new Pen(Color.FromArgb(255, canvascolor), eracerwidth); - float halfsize = eracerwidth / 2; - if (eracertype == "circle") - { - graphicsbitmap.DrawEllipse(CurrentPen, thisPoint.X - halfsize, thisPoint.Y - halfsize, eracerwidth, eracerwidth); - } - else { - graphicsbitmap.DrawRectangle(CurrentPen, thisPoint.X - halfsize, thisPoint.Y - halfsize, eracerwidth, eracerwidth); - } - picdrawingdisplay.Invalidate(); - } - - if (selectedtool == "Paint Brush") - { - var CurrentBrush = new SolidBrush(Color.FromArgb(255, drawingcolour)); - float halfsize = paintbrushwidth / 2; - if (paintbrushtype == "circle") - { - graphicsbitmap.FillEllipse(CurrentBrush, thisPoint.X - halfsize, thisPoint.Y - halfsize, paintbrushwidth, paintbrushwidth); - } - else { - graphicsbitmap.FillRectangle(CurrentBrush, thisPoint.X - halfsize, thisPoint.Y - halfsize, paintbrushwidth, paintbrushwidth); - } - picdrawingdisplay.Invalidate(); - CurrentBrush.Dispose(); - } - preparecooldown(); - } - - // ERROR: Handles clauses are not supported in C# - private void picdrawingdisplay_MouseMove(object sender, System.Windows.Forms.MouseEventArgs e) - { - Point lastpoint; - - thisPoint.X = (int)(e.Location.X - (magnificationlevel / 2)) / magnificationlevel; - thisPoint.Y = (int)(e.Location.Y - (magnificationlevel / 2)) / magnificationlevel; - - - if (e.Button == MouseButtons.Left) - { - undo.redoStack.Clear(); - lastpoint = thisPoint; - preparecooldown(); - - if (selectedtool == "Pixel Placer" && pixalplacermovable == true) - { - if (thisPoint.X < canvasbitmap.Width && thisPoint.X > -1) - { - if (thisPoint.Y < canvasbitmap.Height && thisPoint.Y > -1) - { - canvasbitmap.SetPixel(thisPoint.X, thisPoint.Y, drawingcolour); - //set the pixel on the canvas - picdrawingdisplay.Invalidate(); - //refresh the picture from the canvas - } - } - } - - if (selectedtool == "Pencil") - { - mousePath.AddLine(thisPoint.X, thisPoint.Y, thisPoint.X, thisPoint.Y); - var CurrentPen = new Pen(Color.FromArgb(255, drawingcolour), pencilwidth); - graphicsbitmap.DrawPath(CurrentPen, mousePath); - picdrawingdisplay.Invalidate(); - } - - if (selectedtool == "Square Tool") - { - picdrawingdisplay.Invalidate(); - } - - if (selectedtool == "Oval Tool") - { - picdrawingdisplay.Invalidate(); - } - - if (selectedtool == "Line Tool") - { - picdrawingdisplay.Invalidate(); - } - - if (selectedtool == "Text Tool") - { - picdrawingdisplay.Invalidate(); - } - - if (selectedtool == "Eracer") - { - var CurrentPen = new Pen(Color.FromArgb(255, canvascolor), eracerwidth); - float halfsize = eracerwidth / 2; - if (eracertype == "circle") - { - graphicsbitmap.DrawEllipse(CurrentPen, thisPoint.X - halfsize, thisPoint.Y - halfsize, eracerwidth, eracerwidth); - } - else { - graphicsbitmap.DrawRectangle(CurrentPen, thisPoint.X - halfsize, thisPoint.Y - halfsize, eracerwidth, eracerwidth); - } - picdrawingdisplay.Invalidate(); - } - - if (selectedtool == "Paint Brush") - { - var CurrentBrush = new SolidBrush(Color.FromArgb(255, drawingcolour)); - float halfsize = paintbrushwidth / 2; - if (paintbrushtype == "circle") - { - graphicsbitmap.FillEllipse(CurrentBrush, thisPoint.X - halfsize, thisPoint.Y - halfsize, paintbrushwidth, paintbrushwidth); - } - else { - graphicsbitmap.FillRectangle(CurrentBrush, thisPoint.X - halfsize, thisPoint.Y - halfsize, paintbrushwidth, paintbrushwidth); - } - picdrawingdisplay.Invalidate(); - } - } - - } - - - // ERROR: Handles clauses are not supported in C# - private void picdrawingdisplay_MouseUp(object sender, MouseEventArgs e) - { - thisPoint.X = (int)(e.Location.X - (magnificationlevel / 2)) / magnificationlevel; - thisPoint.Y = (int)(e.Location.Y - (magnificationlevel / 2)) / magnificationlevel; - - if (selectedtool == "Pencil") - { - if (e.Button == MouseButtons.Left) - { - mousePath.Reset(); - } - } - - if (selectedtool == "Square Tool") - { - picdrawingdisplay.Invalidate(); - currentlydrawingsquare = false; - } - - if (selectedtool == "Oval Tool") - { - picdrawingdisplay.Invalidate(); - currentlydrawingoval = false; - } - - - if (selectedtool == "Line Tool") - { - picdrawingdisplay.Invalidate(); - currentlydrawingline = false; - } - - if (selectedtool == "Text Tool") - { - picdrawingdisplay.Invalidate(); - currentlydrawingtext = false; - } - - using (Graphics g = Graphics.FromImage(canvasbitmap)) - { - g.DrawImage(previewcanvasbitmap, 0, 0); - } - previewcanvasbitmap = new Bitmap(canvasbitmap.Width, canvasbitmap.Height); - picdrawingdisplay.Invalidate(); - preparecooldown(); - - } - - #endregion - - #region Color Palettes - // ERROR: Handles clauses are not supported in C# - private void colourpallet1_MouseClick(object sender, MouseEventArgs e) - { - var s = (Control)sender; - if (e.Button == MouseButtons.Left) - { - drawingcolour = s.BackColor; - setuppreview(); - settoolcolours(); - } - else { - API.CreateColorPickerSession("Artpad Pallete Color", s.BackColor); - API.ColorPickerSession.FormClosing += (object se, FormClosingEventArgs a) => - { - s.BackColor = API.GetLastColorFromSession(); - }; - } - } - - //<unused> - public void loadcolors() - { - /*bool allwhite = true; - for (int i = 0; i <= 127; i++) - { - if (ShiftOSDesktop.artpadcolourpallets(i) == null) - { - } - else { - allwhite = false; - } - } - if (allwhite == true) - { - for (i = 0; i <= 127; i++) - { - ShiftOSDesktop.artpadcolourpallets(i) = Color.Black; - } - } - colourpallet1.BackColor = ShiftOSDesktop.artpadcolourpallets(0); - colourpallet2.BackColor = ShiftOSDesktop.artpadcolourpallets(1); - colourpallet3.BackColor = ShiftOSDesktop.artpadcolourpallets(2); - colourpallet4.BackColor = ShiftOSDesktop.artpadcolourpallets(3); - colourpallet5.BackColor = ShiftOSDesktop.artpadcolourpallets(4); - colourpallet6.BackColor = ShiftOSDesktop.artpadcolourpallets(5); - colourpallet7.BackColor = ShiftOSDesktop.artpadcolourpallets(6); - colourpallet8.BackColor = ShiftOSDesktop.artpadcolourpallets(7); - colourpallet9.BackColor = ShiftOSDesktop.artpadcolourpallets(8); - colourpallet10.BackColor = ShiftOSDesktop.artpadcolourpallets(9); - colourpallet11.BackColor = ShiftOSDesktop.artpadcolourpallets(10); - colourpallet12.BackColor = ShiftOSDesktop.artpadcolourpallets(11); - colourpallet13.BackColor = ShiftOSDesktop.artpadcolourpallets(12); - colourpallet14.BackColor = ShiftOSDesktop.artpadcolourpallets(13); - colourpallet15.BackColor = ShiftOSDesktop.artpadcolourpallets(14); - colourpallet16.BackColor = ShiftOSDesktop.artpadcolourpallets(15); - colourpallet17.BackColor = ShiftOSDesktop.artpadcolourpallets(16); - colourpallet18.BackColor = ShiftOSDesktop.artpadcolourpallets(17); - colourpallet19.BackColor = ShiftOSDesktop.artpadcolourpallets(18); - colourpallet20.BackColor = ShiftOSDesktop.artpadcolourpallets(19); - colourpallet21.BackColor = ShiftOSDesktop.artpadcolourpallets(20); - colourpallet22.BackColor = ShiftOSDesktop.artpadcolourpallets(21); - colourpallet23.BackColor = ShiftOSDesktop.artpadcolourpallets(22); - colourpallet24.BackColor = ShiftOSDesktop.artpadcolourpallets(23); - colourpallet25.BackColor = ShiftOSDesktop.artpadcolourpallets(24); - colourpallet26.BackColor = ShiftOSDesktop.artpadcolourpallets(25); - colourpallet27.BackColor = ShiftOSDesktop.artpadcolourpallets(26); - colourpallet28.BackColor = ShiftOSDesktop.artpadcolourpallets(27); - colourpallet29.BackColor = ShiftOSDesktop.artpadcolourpallets(28); - colourpallet30.BackColor = ShiftOSDesktop.artpadcolourpallets(29); - colourpallet31.BackColor = ShiftOSDesktop.artpadcolourpallets(30); - colourpallet32.BackColor = ShiftOSDesktop.artpadcolourpallets(31); - colourpallet33.BackColor = ShiftOSDesktop.artpadcolourpallets(32); - colourpallet34.BackColor = ShiftOSDesktop.artpadcolourpallets(33); - colourpallet35.BackColor = ShiftOSDesktop.artpadcolourpallets(34); - colourpallet36.BackColor = ShiftOSDesktop.artpadcolourpallets(35); - colourpallet37.BackColor = ShiftOSDesktop.artpadcolourpallets(36); - colourpallet38.BackColor = ShiftOSDesktop.artpadcolourpallets(37); - colourpallet39.BackColor = ShiftOSDesktop.artpadcolourpallets(38); - colourpallet40.BackColor = ShiftOSDesktop.artpadcolourpallets(39); - colourpallet41.BackColor = ShiftOSDesktop.artpadcolourpallets(40); - colourpallet42.BackColor = ShiftOSDesktop.artpadcolourpallets(41); - colourpallet43.BackColor = ShiftOSDesktop.artpadcolourpallets(42); - colourpallet44.BackColor = ShiftOSDesktop.artpadcolourpallets(43); - colourpallet45.BackColor = ShiftOSDesktop.artpadcolourpallets(44); - colourpallet46.BackColor = ShiftOSDesktop.artpadcolourpallets(45); - colourpallet47.BackColor = ShiftOSDesktop.artpadcolourpallets(46); - colourpallet48.BackColor = ShiftOSDesktop.artpadcolourpallets(47); - colourpallet49.BackColor = ShiftOSDesktop.artpadcolourpallets(48); - colourpallet50.BackColor = ShiftOSDesktop.artpadcolourpallets(49); - colourpallet51.BackColor = ShiftOSDesktop.artpadcolourpallets(50); - colourpallet52.BackColor = ShiftOSDesktop.artpadcolourpallets(51); - colourpallet53.BackColor = ShiftOSDesktop.artpadcolourpallets(52); - colourpallet54.BackColor = ShiftOSDesktop.artpadcolourpallets(53); - colourpallet55.BackColor = ShiftOSDesktop.artpadcolourpallets(54); - colourpallet56.BackColor = ShiftOSDesktop.artpadcolourpallets(55); - colourpallet57.BackColor = ShiftOSDesktop.artpadcolourpallets(56); - colourpallet58.BackColor = ShiftOSDesktop.artpadcolourpallets(57); - colourpallet59.BackColor = ShiftOSDesktop.artpadcolourpallets(58); - colourpallet60.BackColor = ShiftOSDesktop.artpadcolourpallets(59); - colourpallet61.BackColor = ShiftOSDesktop.artpadcolourpallets(60); - colourpallet62.BackColor = ShiftOSDesktop.artpadcolourpallets(61); - colourpallet63.BackColor = ShiftOSDesktop.artpadcolourpallets(62); - colourpallet64.BackColor = ShiftOSDesktop.artpadcolourpallets(63); - colourpallet65.BackColor = ShiftOSDesktop.artpadcolourpallets(64); - colourpallet66.BackColor = ShiftOSDesktop.artpadcolourpallets(65); - colourpallet67.BackColor = ShiftOSDesktop.artpadcolourpallets(66); - colourpallet68.BackColor = ShiftOSDesktop.artpadcolourpallets(67); - colourpallet69.BackColor = ShiftOSDesktop.artpadcolourpallets(68); - colourpallet70.BackColor = ShiftOSDesktop.artpadcolourpallets(69); - colourpallet71.BackColor = ShiftOSDesktop.artpadcolourpallets(70); - colourpallet72.BackColor = ShiftOSDesktop.artpadcolourpallets(71); - colourpallet73.BackColor = ShiftOSDesktop.artpadcolourpallets(72); - colourpallet74.BackColor = ShiftOSDesktop.artpadcolourpallets(73); - colourpallet75.BackColor = ShiftOSDesktop.artpadcolourpallets(74); - colourpallet76.BackColor = ShiftOSDesktop.artpadcolourpallets(75); - colourpallet77.BackColor = ShiftOSDesktop.artpadcolourpallets(76); - colourpallet78.BackColor = ShiftOSDesktop.artpadcolourpallets(77); - colourpallet79.BackColor = ShiftOSDesktop.artpadcolourpallets(78); - colourpallet80.BackColor = ShiftOSDesktop.artpadcolourpallets(79); - colourpallet81.BackColor = ShiftOSDesktop.artpadcolourpallets(80); - colourpallet82.BackColor = ShiftOSDesktop.artpadcolourpallets(81); - colourpallet83.BackColor = ShiftOSDesktop.artpadcolourpallets(82); - colourpallet84.BackColor = ShiftOSDesktop.artpadcolourpallets(83); - colourpallet85.BackColor = ShiftOSDesktop.artpadcolourpallets(84); - colourpallet86.BackColor = ShiftOSDesktop.artpadcolourpallets(85); - colourpallet87.BackColor = ShiftOSDesktop.artpadcolourpallets(86); - colourpallet88.BackColor = ShiftOSDesktop.artpadcolourpallets(87); - colourpallet89.BackColor = ShiftOSDesktop.artpadcolourpallets(88); - colourpallet90.BackColor = ShiftOSDesktop.artpadcolourpallets(89); - colourpallet91.BackColor = ShiftOSDesktop.artpadcolourpallets(90); - colourpallet92.BackColor = ShiftOSDesktop.artpadcolourpallets(91); - colourpallet93.BackColor = ShiftOSDesktop.artpadcolourpallets(92); - colourpallet94.BackColor = ShiftOSDesktop.artpadcolourpallets(93); - colourpallet95.BackColor = ShiftOSDesktop.artpadcolourpallets(94); - colourpallet96.BackColor = ShiftOSDesktop.artpadcolourpallets(95); - colourpallet97.BackColor = ShiftOSDesktop.artpadcolourpallets(96); - colourpallet98.BackColor = ShiftOSDesktop.artpadcolourpallets(97); - colourpallet99.BackColor = ShiftOSDesktop.artpadcolourpallets(98); - colourpallet100.BackColor = ShiftOSDesktop.artpadcolourpallets(99); - colourpallet101.BackColor = ShiftOSDesktop.artpadcolourpallets(100); - colourpallet102.BackColor = ShiftOSDesktop.artpadcolourpallets(101); - colourpallet103.BackColor = ShiftOSDesktop.artpadcolourpallets(102); - colourpallet104.BackColor = ShiftOSDesktop.artpadcolourpallets(103); - colourpallet105.BackColor = ShiftOSDesktop.artpadcolourpallets(104); - colourpallet106.BackColor = ShiftOSDesktop.artpadcolourpallets(105); - colourpallet107.BackColor = ShiftOSDesktop.artpadcolourpallets(106); - colourpallet108.BackColor = ShiftOSDesktop.artpadcolourpallets(107); - colourpallet109.BackColor = ShiftOSDesktop.artpadcolourpallets(108); - colourpallet110.BackColor = ShiftOSDesktop.artpadcolourpallets(109); - colourpallet111.BackColor = ShiftOSDesktop.artpadcolourpallets(110); - colourpallet112.BackColor = ShiftOSDesktop.artpadcolourpallets(111); - colourpallet113.BackColor = ShiftOSDesktop.artpadcolourpallets(112); - colourpallet114.BackColor = ShiftOSDesktop.artpadcolourpallets(113); - colourpallet115.BackColor = ShiftOSDesktop.artpadcolourpallets(114); - colourpallet116.BackColor = ShiftOSDesktop.artpadcolourpallets(115); - colourpallet117.BackColor = ShiftOSDesktop.artpadcolourpallets(116); - colourpallet118.BackColor = ShiftOSDesktop.artpadcolourpallets(117); - colourpallet119.BackColor = ShiftOSDesktop.artpadcolourpallets(118); - colourpallet120.BackColor = ShiftOSDesktop.artpadcolourpallets(119); - colourpallet121.BackColor = ShiftOSDesktop.artpadcolourpallets(120); - colourpallet122.BackColor = ShiftOSDesktop.artpadcolourpallets(121); - colourpallet123.BackColor = ShiftOSDesktop.artpadcolourpallets(122); - colourpallet124.BackColor = ShiftOSDesktop.artpadcolourpallets(123); - colourpallet125.BackColor = ShiftOSDesktop.artpadcolourpallets(124); - colourpallet126.BackColor = ShiftOSDesktop.artpadcolourpallets(125); - colourpallet127.BackColor = ShiftOSDesktop.artpadcolourpallets(126); - colourpallet128.BackColor = ShiftOSDesktop.artpadcolourpallets(127); - */} - - public void savecolors() - {/* - ShiftOSDesktop.artpadcolourpallets(0) = colourpallet1.BackColor; - ShiftOSDesktop.artpadcolourpallets(1) = colourpallet2.BackColor; - ShiftOSDesktop.artpadcolourpallets(2) = colourpallet3.BackColor; - ShiftOSDesktop.artpadcolourpallets(3) = colourpallet4.BackColor; - ShiftOSDesktop.artpadcolourpallets(4) = colourpallet5.BackColor; - ShiftOSDesktop.artpadcolourpallets(5) = colourpallet6.BackColor; - ShiftOSDesktop.artpadcolourpallets(6) = colourpallet7.BackColor; - ShiftOSDesktop.artpadcolourpallets(7) = colourpallet8.BackColor; - ShiftOSDesktop.artpadcolourpallets(8) = colourpallet9.BackColor; - ShiftOSDesktop.artpadcolourpallets(9) = colourpallet10.BackColor; - ShiftOSDesktop.artpadcolourpallets(10) = colourpallet11.BackColor; - ShiftOSDesktop.artpadcolourpallets(11) = colourpallet12.BackColor; - ShiftOSDesktop.artpadcolourpallets(12) = colourpallet13.BackColor; - ShiftOSDesktop.artpadcolourpallets(13) = colourpallet14.BackColor; - ShiftOSDesktop.artpadcolourpallets(14) = colourpallet15.BackColor; - ShiftOSDesktop.artpadcolourpallets(15) = colourpallet16.BackColor; - ShiftOSDesktop.artpadcolourpallets(16) = colourpallet17.BackColor; - ShiftOSDesktop.artpadcolourpallets(17) = colourpallet18.BackColor; - ShiftOSDesktop.artpadcolourpallets(18) = colourpallet19.BackColor; - ShiftOSDesktop.artpadcolourpallets(19) = colourpallet20.BackColor; - ShiftOSDesktop.artpadcolourpallets(20) = colourpallet21.BackColor; - ShiftOSDesktop.artpadcolourpallets(21) = colourpallet22.BackColor; - ShiftOSDesktop.artpadcolourpallets(22) = colourpallet23.BackColor; - ShiftOSDesktop.artpadcolourpallets(23) = colourpallet24.BackColor; - ShiftOSDesktop.artpadcolourpallets(24) = colourpallet25.BackColor; - ShiftOSDesktop.artpadcolourpallets(25) = colourpallet26.BackColor; - ShiftOSDesktop.artpadcolourpallets(26) = colourpallet27.BackColor; - ShiftOSDesktop.artpadcolourpallets(27) = colourpallet28.BackColor; - ShiftOSDesktop.artpadcolourpallets(28) = colourpallet29.BackColor; - ShiftOSDesktop.artpadcolourpallets(29) = colourpallet30.BackColor; - ShiftOSDesktop.artpadcolourpallets(30) = colourpallet31.BackColor; - ShiftOSDesktop.artpadcolourpallets(31) = colourpallet32.BackColor; - ShiftOSDesktop.artpadcolourpallets(32) = colourpallet33.BackColor; - ShiftOSDesktop.artpadcolourpallets(33) = colourpallet34.BackColor; - ShiftOSDesktop.artpadcolourpallets(34) = colourpallet35.BackColor; - ShiftOSDesktop.artpadcolourpallets(35) = colourpallet36.BackColor; - ShiftOSDesktop.artpadcolourpallets(36) = colourpallet37.BackColor; - ShiftOSDesktop.artpadcolourpallets(37) = colourpallet38.BackColor; - ShiftOSDesktop.artpadcolourpallets(38) = colourpallet39.BackColor; - ShiftOSDesktop.artpadcolourpallets(39) = colourpallet40.BackColor; - ShiftOSDesktop.artpadcolourpallets(40) = colourpallet41.BackColor; - ShiftOSDesktop.artpadcolourpallets(41) = colourpallet42.BackColor; - ShiftOSDesktop.artpadcolourpallets(42) = colourpallet43.BackColor; - ShiftOSDesktop.artpadcolourpallets(43) = colourpallet44.BackColor; - ShiftOSDesktop.artpadcolourpallets(44) = colourpallet45.BackColor; - ShiftOSDesktop.artpadcolourpallets(45) = colourpallet46.BackColor; - ShiftOSDesktop.artpadcolourpallets(46) = colourpallet47.BackColor; - ShiftOSDesktop.artpadcolourpallets(47) = colourpallet48.BackColor; - ShiftOSDesktop.artpadcolourpallets(48) = colourpallet49.BackColor; - ShiftOSDesktop.artpadcolourpallets(49) = colourpallet50.BackColor; - ShiftOSDesktop.artpadcolourpallets(50) = colourpallet51.BackColor; - ShiftOSDesktop.artpadcolourpallets(51) = colourpallet52.BackColor; - ShiftOSDesktop.artpadcolourpallets(52) = colourpallet53.BackColor; - ShiftOSDesktop.artpadcolourpallets(53) = colourpallet54.BackColor; - ShiftOSDesktop.artpadcolourpallets(54) = colourpallet55.BackColor; - ShiftOSDesktop.artpadcolourpallets(55) = colourpallet56.BackColor; - ShiftOSDesktop.artpadcolourpallets(56) = colourpallet57.BackColor; - ShiftOSDesktop.artpadcolourpallets(57) = colourpallet58.BackColor; - ShiftOSDesktop.artpadcolourpallets(58) = colourpallet59.BackColor; - ShiftOSDesktop.artpadcolourpallets(59) = colourpallet60.BackColor; - ShiftOSDesktop.artpadcolourpallets(60) = colourpallet61.BackColor; - ShiftOSDesktop.artpadcolourpallets(61) = colourpallet62.BackColor; - ShiftOSDesktop.artpadcolourpallets(62) = colourpallet63.BackColor; - ShiftOSDesktop.artpadcolourpallets(63) = colourpallet64.BackColor; - ShiftOSDesktop.artpadcolourpallets(64) = colourpallet65.BackColor; - ShiftOSDesktop.artpadcolourpallets(65) = colourpallet66.BackColor; - ShiftOSDesktop.artpadcolourpallets(66) = colourpallet67.BackColor; - ShiftOSDesktop.artpadcolourpallets(67) = colourpallet68.BackColor; - ShiftOSDesktop.artpadcolourpallets(68) = colourpallet69.BackColor; - ShiftOSDesktop.artpadcolourpallets(69) = colourpallet70.BackColor; - ShiftOSDesktop.artpadcolourpallets(70) = colourpallet71.BackColor; - ShiftOSDesktop.artpadcolourpallets(71) = colourpallet72.BackColor; - ShiftOSDesktop.artpadcolourpallets(72) = colourpallet73.BackColor; - ShiftOSDesktop.artpadcolourpallets(73) = colourpallet74.BackColor; - ShiftOSDesktop.artpadcolourpallets(74) = colourpallet75.BackColor; - ShiftOSDesktop.artpadcolourpallets(75) = colourpallet76.BackColor; - ShiftOSDesktop.artpadcolourpallets(76) = colourpallet77.BackColor; - ShiftOSDesktop.artpadcolourpallets(77) = colourpallet78.BackColor; - ShiftOSDesktop.artpadcolourpallets(78) = colourpallet79.BackColor; - ShiftOSDesktop.artpadcolourpallets(79) = colourpallet80.BackColor; - ShiftOSDesktop.artpadcolourpallets(80) = colourpallet81.BackColor; - ShiftOSDesktop.artpadcolourpallets(81) = colourpallet82.BackColor; - ShiftOSDesktop.artpadcolourpallets(82) = colourpallet83.BackColor; - ShiftOSDesktop.artpadcolourpallets(83) = colourpallet84.BackColor; - ShiftOSDesktop.artpadcolourpallets(84) = colourpallet85.BackColor; - ShiftOSDesktop.artpadcolourpallets(85) = colourpallet86.BackColor; - ShiftOSDesktop.artpadcolourpallets(86) = colourpallet87.BackColor; - ShiftOSDesktop.artpadcolourpallets(87) = colourpallet88.BackColor; - ShiftOSDesktop.artpadcolourpallets(88) = colourpallet89.BackColor; - ShiftOSDesktop.artpadcolourpallets(89) = colourpallet90.BackColor; - ShiftOSDesktop.artpadcolourpallets(90) = colourpallet91.BackColor; - ShiftOSDesktop.artpadcolourpallets(91) = colourpallet92.BackColor; - ShiftOSDesktop.artpadcolourpallets(92) = colourpallet93.BackColor; - ShiftOSDesktop.artpadcolourpallets(93) = colourpallet94.BackColor; - ShiftOSDesktop.artpadcolourpallets(94) = colourpallet95.BackColor; - ShiftOSDesktop.artpadcolourpallets(95) = colourpallet96.BackColor; - ShiftOSDesktop.artpadcolourpallets(96) = colourpallet97.BackColor; - ShiftOSDesktop.artpadcolourpallets(97) = colourpallet98.BackColor; - ShiftOSDesktop.artpadcolourpallets(98) = colourpallet99.BackColor; - ShiftOSDesktop.artpadcolourpallets(99) = colourpallet100.BackColor; - ShiftOSDesktop.artpadcolourpallets(100) = colourpallet101.BackColor; - ShiftOSDesktop.artpadcolourpallets(101) = colourpallet102.BackColor; - ShiftOSDesktop.artpadcolourpallets(102) = colourpallet103.BackColor; - ShiftOSDesktop.artpadcolourpallets(103) = colourpallet104.BackColor; - ShiftOSDesktop.artpadcolourpallets(104) = colourpallet105.BackColor; - ShiftOSDesktop.artpadcolourpallets(105) = colourpallet106.BackColor; - ShiftOSDesktop.artpadcolourpallets(106) = colourpallet107.BackColor; - ShiftOSDesktop.artpadcolourpallets(107) = colourpallet108.BackColor; - ShiftOSDesktop.artpadcolourpallets(108) = colourpallet109.BackColor; - ShiftOSDesktop.artpadcolourpallets(109) = colourpallet110.BackColor; - ShiftOSDesktop.artpadcolourpallets(110) = colourpallet111.BackColor; - ShiftOSDesktop.artpadcolourpallets(111) = colourpallet112.BackColor; - ShiftOSDesktop.artpadcolourpallets(112) = colourpallet113.BackColor; - ShiftOSDesktop.artpadcolourpallets(113) = colourpallet114.BackColor; - ShiftOSDesktop.artpadcolourpallets(114) = colourpallet115.BackColor; - ShiftOSDesktop.artpadcolourpallets(115) = colourpallet116.BackColor; - ShiftOSDesktop.artpadcolourpallets(116) = colourpallet117.BackColor; - ShiftOSDesktop.artpadcolourpallets(117) = colourpallet118.BackColor; - ShiftOSDesktop.artpadcolourpallets(118) = colourpallet119.BackColor; - ShiftOSDesktop.artpadcolourpallets(119) = colourpallet120.BackColor; - ShiftOSDesktop.artpadcolourpallets(120) = colourpallet121.BackColor; - ShiftOSDesktop.artpadcolourpallets(121) = colourpallet122.BackColor; - ShiftOSDesktop.artpadcolourpallets(122) = colourpallet123.BackColor; - ShiftOSDesktop.artpadcolourpallets(123) = colourpallet124.BackColor; - ShiftOSDesktop.artpadcolourpallets(124) = colourpallet125.BackColor; - ShiftOSDesktop.artpadcolourpallets(125) = colourpallet126.BackColor; - ShiftOSDesktop.artpadcolourpallets(126) = colourpallet127.BackColor; - ShiftOSDesktop.artpadcolourpallets(127) = colourpallet128.BackColor; - */} - //</unused> - - public void settoolcolours() - { - btnpixelsetter.BackColor = drawingcolour; - btnpixelplacer.BackColor = drawingcolour; - btnpencil.BackColor = drawingcolour; - btnfloodfill.BackColor = drawingcolour; - btnsquare.BackColor = drawingcolour; - btnoval.BackColor = drawingcolour; - btnlinetool.BackColor = drawingcolour; - btnpaintbrush.BackColor = drawingcolour; - btntexttool.BackColor = drawingcolour; - } - #endregion - - #region Zooming - - // ERROR: Handles clauses are not supported in C# - private void btnzoomin_Click(object sender, EventArgs e) - { - if (magnificationlevel < 256) - { - magnificationlevel *= 2; - } - else { - API.CreateInfoboxSession("ArtPad - Magnification Error!" - , "You are unable to increase the magnification level any further." + Environment.NewLine + Environment.NewLine + "256x is the highest level of magnification supported by ArtPad!", infobox.InfoboxMode.Info); - } - setmagnification(); - } - - // ERROR: Handles clauses are not supported in C# - private void btnzoomout_Click(object sender, EventArgs e) - { - if (magnificationlevel > 1) - { - magnificationlevel /= 2; - pnldrawingbackground.AutoScrollPosition = new Point(0, 0); - } - else { - API.CreateInfoboxSession("ArtPad - Magnification Error!" - ,"You are unable to decrease the magnification level any further." + Environment.NewLine + Environment.NewLine + "Artpad is unable to scale pixels at a level smaller than their actual size!", infobox.InfoboxMode.Info); - } - setmagnification(); - } - - private void setmagnification() - { - magnifyRect.Width = (int)canvaswidth / magnificationlevel; - magnifyRect.Height = (int)canvasheight / magnificationlevel; - picdrawingdisplay.Size = new Size(canvaswidth * magnificationlevel, canvasheight * magnificationlevel); - if (picdrawingdisplay.Height > 468 && picdrawingdisplay.Width > 676) - { - picdrawingdisplay.Location = new Point(0, 0); - } - else { - picdrawingdisplay.Location = new Point((pnldrawingbackground.Width - canvaswidth * magnificationlevel) / 2, (pnldrawingbackground.Height - canvasheight * magnificationlevel) / 2); - } - picdrawingdisplay.Invalidate(); - lblzoomlevel.Text = magnificationlevel + "X"; - } - - #endregion - - #region Pixel Placer - - // ERROR: Handles clauses are not supported in C# - private void pnlpixelplacer_Click(object sender, EventArgs e) - { - selectedtool = "Pixel Placer"; - gettoolsettings(pnlpixelplacersettings); - } - - // ERROR: Handles clauses are not supported in C# - private void btnpixelplacermovementmode_Click(object sender, EventArgs e) - { - if (pixalplacermovable == false) - { - pixalplacermovable = true; - btnpixelplacermovementmode.ForeColor = Color.White; - btnpixelplacermovementmode.BackColor = Color.Black; - btnpixelplacermovementmode.Text = "Deactivate Movement Mode"; - lblpixelplacerhelp.Text = "Movement mode is enabled. Click and drag on the canvas to place pixels as you move the mouse. Please use 4x magnification or greater and move the mouse very slowly."; - } - else { - pixalplacermovable = false; - btnpixelplacermovementmode.ForeColor = Color.Black; - btnpixelplacermovementmode.BackColor = Color.White; - btnpixelplacermovementmode.Text = "Activate Movement Mode"; - lblpixelplacerhelp.Text = "This tool does not contain any alterable settings. Simply click on the canvas and a pixel will be placed in the spot you click."; - } - } - - #endregion - - #region Saving - - // ERROR: Handles clauses are not supported in C# - private void btnsave_Click(object sender, EventArgs e) - { - showsavedialog(); - } - - public void showsavedialog() - { - API.CreateFileSkimmerSession(".pic", File_Skimmer.FileSkimmerMode.Save); - API.FileSkimmerSession.FormClosing += (object s, FormClosingEventArgs a) => - { - var res = API.GetFSResult(); - if(res != "fail") - { - savelocation = res; - saveimage(); - } - }; - } - - public void saveimage() - { - canvasbitmap.Save(savelocation, ImageFormat.Bmp); - } - #endregion - - #region New Canvas - - // ERROR: Handles clauses are not supported in C# - private void txtnewcanvaswidth_TextChanged(object sender, EventArgs e) - { - if (txtnewcanvaswidth.Text == "" | txtnewcanvasheight.Text == "") - { - if(txtnewcanvasheight.Text == "") - { - txtnewcanvasheight.Text = "0"; - } - if (txtnewcanvaswidth.Text == "") - { - txtnewcanvaswidth.Text = "0"; - } - } - else { - try { - lbltotalpixels.Text = (Convert.ToInt32(txtnewcanvaswidth.Text) * Convert.ToInt32(txtnewcanvasheight.Text)).ToString(); - if (API.Upgrades["artpadlimitlesspixels"] == true) - { - lbltotalpixels.ForeColor = Color.Black; - } - else { - if ((Convert.ToInt32(txtnewcanvaswidth.Text) * Convert.ToInt32(txtnewcanvasheight.Text)) > GetPixelLimit()) - { - lbltotalpixels.ForeColor = Color.Red; - } - else { - lbltotalpixels.ForeColor = Color.Black; - } - } - } - catch - { - - } - } - - } - - public int GetPixelLimit() - { - int value = 2; - - - if(API.Upgrades["artpadpixellimit4"]) - { - value = 4; - if (API.Upgrades["artpadpixellimit8"]) - { - value = 8; - if (API.Upgrades["artpadpixellimit16"]) - { - value = 16; - if (API.Upgrades["artpadpixellimit64"]) - { - value = 64; - if (API.Upgrades["artpadpixellimit256"]) - { - value = 256; - if (API.Upgrades["artpadpixellimit1024"]) - { - value = 1024; - if (API.Upgrades["artpadpixellimit4096"]) - { - value = 4096; - if (API.Upgrades["artpadpixellimit16384"]) - { - value = 16384; - if (API.Upgrades["artpadpixellimit65536"]) - { - value = 65536; - } - } - } - } - } - } - } - } - } - - return value; - } - - // ERROR: Handles clauses are not supported in C# - private void btncreate_Click(object sender, EventArgs e) - { - if (lbltotalpixels.ForeColor == Color.Red) - { - API.CreateInfoboxSession("Artpad - Error", "Artpad cannot create the image. It is too big.", infobox.InfoboxMode.Info); - } - else { - if (lbltotalpixels.Text == "0") - { - } - else { - canvaswidth = Convert.ToInt32(txtnewcanvaswidth.Text); - canvasheight = Convert.ToInt32(txtnewcanvasheight.Text); - picdrawingdisplay.Show(); - setupcanvas(); - pnlinitialcanvassettings.Hide(); - } - } - } - - // ERROR: Handles clauses are not supported in C# - private void btncancel_Click(object sender, EventArgs e) - { - pnlinitialcanvassettings.Hide(); - picdrawingdisplay.Show(); - } - - // ERROR: Handles clauses are not supported in C# - private void btnnew_Click(object sender, EventArgs e) - { - pnlinitialcanvassettings.Show(); - picdrawingdisplay.Hide(); - } - - #endregion - - #region Preview - - public void setuppreview() - { - lbltoolselected.Text = selectedtool; - picpreview.CreateGraphics().FillRectangle(Brushes.White, 0, 0, 70, 50); - switch (selectedtool) - { - case "Square Tool": - var CurrentPen = new Pen(Color.FromArgb(255, drawingcolour), squarewidth); - var CurrentBrush = new SolidBrush(Color.FromArgb(255, fillsquarecolor)); - RectangleF rectdraw = new RectangleF(0, 0, picpreview.Width, picpreview.Height); - float correctionamount = squarewidth / 2; - if (squarewidth > 0) - { - picpreview.CreateGraphics().DrawRectangle(CurrentPen, rectdraw.X + correctionamount, rectdraw.Y + correctionamount, rectdraw.Width - squarewidth, rectdraw.Height - squarewidth); - } - if (squarefillon == true) - { - picpreview.CreateGraphics().FillRectangle(CurrentBrush, rectdraw.X + squarewidth, rectdraw.Y + squarewidth, rectdraw.Width - squarewidth - squarewidth, rectdraw.Height - squarewidth - squarewidth); - } - break; - case "Oval Tool": - var ovalCurrentPen = new Pen(Color.FromArgb(255, drawingcolour), ovalwidth); - var ovalCurrentBrush = new SolidBrush(Color.FromArgb(255, fillovalcolor)); - RectangleF ovalrectdraw = new RectangleF(0, 0, picpreview.Width, picpreview.Height); - float ovalcorrectionamount = ovalwidth / 2; - if (ovalwidth > 0) - { - picpreview.CreateGraphics().DrawEllipse(ovalCurrentPen, ovalrectdraw.X + ovalcorrectionamount, ovalrectdraw.Y + ovalcorrectionamount, ovalrectdraw.Width - ovalwidth, ovalrectdraw.Height - ovalwidth); - } - if (ovalfillon == true) - { - float fixer = ovalwidth / 2; - picpreview.CreateGraphics().FillEllipse(ovalCurrentBrush, (ovalrectdraw.X + fixer), (ovalrectdraw.Y + fixer), ovalrectdraw.Width - fixer - fixer, ovalrectdraw.Height - fixer - fixer); - } - break; - case "Text Tool": - var textCurrentBrush = new SolidBrush(Color.FromArgb(255, drawingcolour)); - drawtextfont = new System.Drawing.Font(drawtextfontname, 20, drawtextfontstyle); - picpreview.CreateGraphics().DrawString("A", drawtextfont, textCurrentBrush, 20, 0); - break; - case "Line Tool": - var lineCurrentPen = new Pen(Color.FromArgb(255, drawingcolour), linewidth); - picpreview.CreateGraphics().DrawLine(lineCurrentPen, 0, 0, picpreview.Width, picpreview.Height); - break; - case "Pencil": - var pencilCurrentPen = new Pen(Color.FromArgb(255, drawingcolour), pencilwidth); - picpreview.CreateGraphics().DrawLine(pencilCurrentPen, 0, 25, picpreview.Width, 25); - break; - case "Paint Brush": - var pbCurrentBrush = new SolidBrush(Color.FromArgb(255, drawingcolour)); - float halfsize = paintbrushwidth / 2; - float halfwidth = picdrawingdisplay.Width / 2; - float halfheight = picdrawingdisplay.Height / 2; - if (paintbrushtype == "circle") - { - picpreview.CreateGraphics().FillEllipse(pbCurrentBrush, halfwidth - 15 - halfsize, halfheight - 1 - halfsize, paintbrushwidth, paintbrushwidth); - } - else { - picpreview.CreateGraphics().FillRectangle(pbCurrentBrush, halfwidth - 15 - halfsize, halfheight - 1 - halfsize, paintbrushwidth, paintbrushwidth); - } - break; - case "Eracer": - System.Drawing.SolidBrush drawbrush = new System.Drawing.SolidBrush(drawingcolour); - picpreview.CreateGraphics().FillRectangle(drawbrush, 0, 0, picpreview.Width, picpreview.Height); - var eCurrentBrush = new SolidBrush(Color.FromArgb(255, Color.White)); - float ehalfsize = eracerwidth / 2; - float ehalfwidth = picdrawingdisplay.Width / 2; - float ehalfheight = picdrawingdisplay.Height / 2; - if (eracertype == "circle") - { - picpreview.CreateGraphics().FillEllipse(eCurrentBrush, ehalfwidth - 15 - ehalfsize, ehalfheight - ehalfsize, eracerwidth, eracerwidth); - } - else { - picpreview.CreateGraphics().FillRectangle(eCurrentBrush, ehalfwidth - 15 - ehalfsize, ehalfheight - ehalfsize, eracerwidth, eracerwidth); - } - break; - default: - System.Drawing.SolidBrush ddrawbrush = new System.Drawing.SolidBrush(drawingcolour); - picpreview.CreateGraphics().FillRectangle(ddrawbrush, 0, 0, picpreview.Width, picpreview.Height); - ddrawbrush.Dispose(); - break; - } - } - - #endregion - - #region Pencil - - // ERROR: Handles clauses are not supported in C# - private void btnpencil_Click(object sender, EventArgs e) - { - selectedtool = "Pencil"; - gettoolsettings(pnlpencilsettings); - } - - // ERROR: Handles clauses are not supported in C# - private void ChangePencilSize(object sender, EventArgs e) - { - var s = (Control)sender; - switch (s.Name.ToString()) - { - case "btnpencilsize1": - pencilwidth = 1; - break; - case "btnpencilsize2": - pencilwidth = 2; - break; - case "btnpencilsize3": - pencilwidth = 3; - break; - } - setuppreview(); - } - - #endregion - - #region Undo/Redo - - // ERROR: Handles clauses are not supported in C# - private void btnundo_Click(object sender, EventArgs e) - { - try - { - undo.redoStack.Push((Image)canvasbitmap.Clone()); - canvasbitmap = (Bitmap)undo.undoStack.Pop(); - graphicsbitmap = Graphics.FromImage(canvasbitmap); - picdrawingdisplay.Invalidate(); - } - catch - { - API.CreateInfoboxSession("ArtPad - Undo Error!" - ,"There doesn't appear to be any more actions to undo." + Environment.NewLine + Environment.NewLine + "One more step back would undo the creation of the canvas. If this is your goal just click new.", infobox.InfoboxMode.Info); - } - } - - // ERROR: Handles clauses are not supported in C# - private void btnredo_Click(object sender, EventArgs e) - { - try - { - undo.undoStack.Push((Image)canvasbitmap.Clone()); - canvasbitmap = (Bitmap)undo.redoStack.Pop(); - graphicsbitmap = Graphics.FromImage(canvasbitmap); - picdrawingdisplay.Invalidate(); - } - catch - { - API.CreateInfoboxSession("ArtPad - Redo Error!" - , "There doesn't appear to be any more actions to redo." + Environment.NewLine + Environment.NewLine + "If you have drawn on the canvas recently all future history would have been wiped!", infobox.InfoboxMode.Info); - } - } - - #endregion - - #region File Loading - - // ERROR: Handles clauses are not supported in C# - private void btnopen_Click(object sender, EventArgs e) - { - API.CreateFileSkimmerSession(".pic", File_Skimmer.FileSkimmerMode.Open); - API.FileSkimmerSession.FormClosing += (object s, FormClosingEventArgs a) => - { - string res = API.GetFSResult(); - if(res != "fail") - { - savelocation = res; - openpic(); - } - }; - } - - public void openpic() - { - pnlinitialcanvassettings.Hide(); - picdrawingdisplay.Show(); - magnificationlevel = 1; - setmagnification(); - canvasbitmap = (Bitmap)Image.FromFile(savelocation); - canvasheight = canvasbitmap.Height; - canvaswidth = canvasbitmap.Width; - picdrawingdisplay.Size = new Size(canvaswidth, canvasheight); - picdrawingdisplay.Location = new Point((pnldrawingbackground.Width - canvaswidth) / 2, (pnldrawingbackground.Height - canvasheight) / 2); - graphicsbitmap = Graphics.FromImage(canvasbitmap); - picdrawingdisplay.Invalidate(); - } - - #endregion - - #region Flood Fill - - // Flood fill the point. - public void SafeFloodFill(Bitmap bm, int x, int y, Color new_color) - { - // Get the old and new colors. - Color old_color = bm.GetPixel(x, y); - - // The following "If Then" test was added by Reuben - // Jollif - // to protect the code in case the start pixel - // has the same color as the fill color. - if (old_color.ToArgb() != new_color.ToArgb()) - { - // Start with the original point in the stack. - Stack<Point> pts = new Stack<Point>(1000); - pts.Push(new Point(x, y)); - bm.SetPixel(x, y, new_color); - - // While the stack is not empty, process a point. - while (pts.Count > 0) - { - Point pt = (Point)pts.Pop(); - if (pt.X > 0) - SafeCheckPoint(bm, pts, pt.X - 1, pt.Y, old_color, new_color); - - if (pt.Y > 0) - SafeCheckPoint(bm, pts, pt.X, pt.Y - 1, old_color, new_color); - if (pt.X < bm.Width - 1) - SafeCheckPoint(bm, pts, pt.X + 1, pt.Y, old_color, new_color); - if (pt.Y < bm.Height - 1) - SafeCheckPoint(bm, pts, pt.X, pt.Y + 1, old_color, new_color); - } - } - } - - // See if this point should be added to the stack. - private void SafeCheckPoint(Bitmap bm, Stack<Point> pts, int x, int y, Color old_color, Color new_color) - { - Color clr = bm.GetPixel(x, y); - if (clr.Equals(old_color)) - { - pts.Push(new Point(x, y)); - bm.SetPixel(x, y, new_color); - } - } - - // ERROR: Handles clauses are not supported in C# - private void btnfill_Click(object sender, EventArgs e) - { - selectedtool = "Flood Fill"; - gettoolsettings(pnlfloodfillsettings); - } - - #endregion - - #region Shapes - - // ERROR: Handles clauses are not supported in C# - private void btnsquare_Click(object sender, EventArgs e) - { - selectedtool = "Square Tool"; - gettoolsettings(pnlsquaretoolsettings); - txtsquareborderwidth.Text = squarewidth.ToString(); - } - - // ERROR: Handles clauses are not supported in C# - private void txtsquareborderwidth_TextChanged(object sender, EventArgs e) - { - if (txtsquareborderwidth.Text == "") - { - } - else { - squarewidth = (Convert.ToInt32(txtsquareborderwidth.Text)); - setuppreview(); - } - } - - // ERROR: Handles clauses are not supported in C# - private void pnlsquarefillcolour_Click(object sender, EventArgs e) - { - pnlsquarefillcolour.BackColor = drawingcolour; - fillsquarecolor = drawingcolour; - setuppreview(); - } - - // ERROR: Handles clauses are not supported in C# - private void btnsquarefillonoff_Click(object sender, EventArgs e) - { - if (squarefillon == true) - { - btnsquarefillonoff.Text = "Fill OFF"; - btnsquarefillonoff.BackColor = Color.White; - btnsquarefillonoff.ForeColor = Color.Black; - squarefillon = false; - } - else { - btnsquarefillonoff.Text = "Fill ON"; - btnsquarefillonoff.BackColor = Color.Black; - btnsquarefillonoff.ForeColor = Color.White; - squarefillon = true; - } - txtsquareborderwidth.Text = squarewidth.ToString(); - setuppreview(); - } - - // ERROR: Handles clauses are not supported in C# - private void btnoval_Click(object sender, EventArgs e) - { - selectedtool = "Oval Tool"; - gettoolsettings(pnlovaltoolsettings); - txtovalborderwidth.Text = ovalwidth.ToString(); - } - - // ERROR: Handles clauses are not supported in C# - private void txtovalborderwidth_TextChanged(object sender, EventArgs e) - { - if (txtovalborderwidth.Text == "") - { - } - else { - ovalwidth = (Convert.ToInt32(txtovalborderwidth.Text)); - setuppreview(); - } - } - - // ERROR: Handles clauses are not supported in C# - private void pnlovalfillcolour_Click(object sender, EventArgs e) - { - pnlovalfillcolour.BackColor = drawingcolour; - fillovalcolor = drawingcolour; - setuppreview(); - } - - // ERROR: Handles clauses are not supported in C# - private void btnovalfillonoff_Click(object sender, EventArgs e) - { - if (ovalfillon == true) - { - btnovalfillonoff.Text = "Fill OFF"; - btnovalfillonoff.BackColor = Color.White; - btnovalfillonoff.ForeColor = Color.Black; - ovalfillon = false; - } - else { - btnovalfillonoff.Text = "Fill ON"; - btnovalfillonoff.BackColor = Color.Black; - btnovalfillonoff.ForeColor = Color.White; - ovalfillon = true; - } - txtovalborderwidth.Text = ovalwidth.ToString(); - setuppreview(); - } - #endregion - - #region Eraser - - // ERROR: Handles clauses are not supported in C# - private void btneracer_Click(object sender, EventArgs e) - { - selectedtool = "Eracer"; - gettoolsettings(pnleracertoolsettings); - txteracersize.Text = eracerwidth.ToString(); - setuppreview(); - } - - // ERROR: Handles clauses are not supported in C# - private void txteracersize_TextChanged(object sender, EventArgs e) - { - if (txteracersize.Text == "") - { - } - else { - eracerwidth = (Convert.ToInt32(txteracersize.Text)); - } - setuppreview(); - } - - // ERROR: Handles clauses are not supported in C# - private void btneracercircle_Click(object sender, EventArgs e) - { - eracertype = "circle"; - btneracercircle.BackgroundImage = Properties.Resources.ArtPadcirclerubberselected; - btneracersquare.BackgroundImage = Properties.Resources.ArtPadsquarerubber; - setuppreview(); - } - - // ERROR: Handles clauses are not supported in C# - private void btneracersquare_Click(object sender, EventArgs e) - { - eracertype = "square"; - btneracercircle.BackgroundImage = Properties.Resources.ArtPadcirclerubber; - btneracersquare.BackgroundImage = Properties.Resources.ArtPadsquarerubberselected; - setuppreview(); - } - - #endregion - - #region Line - - // ERROR: Handles clauses are not supported in C# - private void btnlinetool_Click(object sender, EventArgs e) - { - selectedtool = "Line Tool"; - gettoolsettings(pnllinetoolsettings); - txtlinewidth.Text = linewidth.ToString(); - } - - // ERROR: Handles clauses are not supported in C# - private void txtlinewidth_TextChanged(object sender, EventArgs e) - { - if (txtlinewidth.Text == "") - { - } - else { - linewidth = (Convert.ToInt32(txtlinewidth.Text)); - } - setuppreview(); - } - - #endregion - - #region Text - - // ERROR: Handles clauses are not supported in C# - private void btntexttool_Click(object sender, EventArgs e) - { - selectedtool = "Text Tool"; - gettoolsettings(pnltexttoolsettings); - } - - // ERROR: Handles clauses are not supported in C# - private void txtdrawtextsize_TextChanged(object sender, EventArgs e) - { - if (txtdrawtextsize.Text == "") - { - } - else { - drawtextsize = Convert.ToInt32(txtdrawtextsize.Text); - } - setuppreview(); - } - - // ERROR: Handles clauses are not supported in C# - private void combodrawtextfont_SelectedIndexChanged(object sender, EventArgs e) - { - drawtextfontname = combodrawtextfont.Text; - txtdrawstringtext.Focus(); - setuppreview(); - } - - // ERROR: Handles clauses are not supported in C# - private void combofontstyle_SelectedIndexChanged(object sender, EventArgs e) - { - switch (combofontstyle.Text) - { - case "Bold": - drawtextfontstyle = FontStyle.Bold; - break; - case "Italic": - drawtextfontstyle = FontStyle.Italic; - break; - case "Regular": - drawtextfontstyle = FontStyle.Regular; - break; - case "Strikeout": - drawtextfontstyle = FontStyle.Strikeout; - break; - case "Underline": - drawtextfontstyle = FontStyle.Underline; - break; - } - txtdrawstringtext.Focus(); - setuppreview(); - } - #endregion - - #region Paintbrush - - // ERROR: Handles clauses are not supported in C# - private void txtpaintbrushsize_TextChanged(object sender, EventArgs e) - { - if (txtpaintbrushsize.Text == "") - { - } - else { - paintbrushwidth = (Convert.ToInt32(txtpaintbrushsize.Text)); - } - setuppreview(); - } - - // ERROR: Handles clauses are not supported in C# - private void btnpaintsquareshape_Click(object sender, EventArgs e) - { - paintbrushtype = "square"; - btnpaintcircleshape.BackgroundImage = Properties.Resources.ArtPadcirclerubber; - btnpaintsquareshape.BackgroundImage = Properties.Resources.ArtPadsquarerubberselected; - setuppreview(); - } - - // ERROR: Handles clauses are not supported in C# - private void btnpaintcircleshape_Click(object sender, EventArgs e) - { - paintbrushtype = "circle"; - btnpaintcircleshape.BackgroundImage = Properties.Resources.ArtPadcirclerubberselected; - btnpaintsquareshape.BackgroundImage = Properties.Resources.ArtPadsquarerubber; - setuppreview(); - } - - // ERROR: Handles clauses are not supported in C# - private void btnpaintbrush_Click(object sender, EventArgs e) - { - selectedtool = "Paint Brush"; - gettoolsettings(pnlpaintbrushtoolsettings); - txtpaintbrushsize.Text = paintbrushwidth.ToString(); - setuppreview(); - } - - #endregion - - #region Codepoints - - private void preparecooldown() - { - needtosave = true; - if (codepointscooldown == true) - { - } - else { - codepointsearned = codepointsearned + 1; - codepointscooldown = true; - tmrcodepointcooldown.Start(); - } - } - - // ERROR: Handles clauses are not supported in C# - private void tmrcodepointcooldown_Tick(object sender, EventArgs e) - { - codepointscooldown = false; - tmrcodepointcooldown.Stop(); - } - - // ERROR: Handles clauses are not supported in C# - private void tmrshowearnedcodepoints_Tick(object sender, EventArgs e) - { - tmrshowearnedcodepoints.Stop(); - } - - #endregion - - #region More UI stuff - - public void determinevisiblepallets() - { - int panelstoadd = 2; - - if (API.Upgrades["artpad4colorpallets"] == true) - { - panelstoadd = 4; - } - if (API.Upgrades["artpad8colorpallets"] == true) - { - panelstoadd = 8; - } - if (API.Upgrades["artpad16colorpallets"] == true) - { - panelstoadd = 16; - } - if (API.Upgrades["artpad32colorpallets"] == true) - { - panelstoadd = 32; - } - if (API.Upgrades["artpad64colorpallets"] == true) - { - panelstoadd = 64; - } - if (API.Upgrades["artpad128colorpallets"] == true) - { - panelstoadd = 128; - } - flowcolours.Controls.Clear(); - for(int i = 0; i < panelstoadd; i++) - { - Panel pnl = new Panel(); - pnl.BackColor = Color.Black; - pnl.Size = new Size(12, 8); - flowcolours.Controls.Add(pnl); - pnl.Margin = new Padding(1, 0, 0, 1); - pnl.MouseClick += new MouseEventHandler(this.colourpallet1_MouseClick); - pnl.Show(); - } - } - - // ERROR: Handles clauses are not supported in C# - private void btnchangesizecancel_Click(object sender, EventArgs e) - { - pnlpalletsize.Hide(); - } - - #endregion - - #region More Text Stuff - - // ERROR: Handles clauses are not supported in C# - private void txtdrawstringtext_TextChanged(object sender, EventArgs e) - { - setuppreview(); - } - - #endregion - - private void tmrsetupui_Tick(object sender, EventArgs e) - { - if(API.CurrentSkin != null) - { - pnldrawingbackground.BackColor = API.CurrentSkin.titlebarcolour; - } - } - - private void btnpixelplacer_Click(object sender, EventArgs e) - { - selectedtool = "Pixel Placer"; - gettoolsettings(pnlpixelplacersettings); - } - } -} |
