private async void ButtonClicked(object sender, MouseButtonEventArgs e) { Source = ImageResizer.ResizeImage(System.Drawing.Image.FromFile(filteredLocation + imageName + "_pressed.png"), buttonSize); await Task.Delay(Opt.buttonDelay); Source = ImageResizer.ResizeImage(System.Drawing.Image.FromFile(filteredLocation + imageName + ".png"), buttonSize); }
public ImageButton(string imageName, double scale) { switch (imageName) { case "add_pilot": buttonSize = new System.Drawing.Size((int)Opt.ApResMod(Math.Round(173 * scale)), (int)Opt.ApResMod(Math.Round(60 * scale))); break; case "delete_squad": buttonSize = new System.Drawing.Size((int)Opt.ApResMod(Math.Round(224 * scale)), (int)Opt.ApResMod(Math.Round(60 * scale))); break; case "up": buttonSize = new System.Drawing.Size((int)Opt.ApResMod(Math.Round(40 * scale)), (int)Opt.ApResMod(Math.Round(60 * scale))); break; case "down": buttonSize = new System.Drawing.Size((int)Opt.ApResMod(Math.Round(40 * scale)), (int)Opt.ApResMod(Math.Round(60 * scale))); break; case "copy_for_web": buttonSize = new System.Drawing.Size((int)Opt.ApResMod(Math.Round(227 * scale)), (int)Opt.ApResMod(Math.Round(60 * scale))); break; case "add_upgrade": buttonSize = new System.Drawing.Size((int)Opt.ApResMod(Math.Round(225 * scale)), (int)Opt.ApResMod(Math.Round(60 * scale))); break; case "swap_pilot": buttonSize = new System.Drawing.Size((int)Opt.ApResMod(Math.Round(190 * scale)), (int)Opt.ApResMod(Math.Round(60 * scale))); break; case "add_imperial_squad": buttonSize = new System.Drawing.Size((int)Opt.ApResMod(Math.Round(319 * scale)), (int)Opt.ApResMod(Math.Round(60 * scale))); break; case "add_rebel_squad": buttonSize = new System.Drawing.Size((int)Opt.ApResMod(Math.Round(274 * scale)), (int)Opt.ApResMod(Math.Round(60 * scale))); break; case "add_scum_squad": buttonSize = new System.Drawing.Size((int)Opt.ApResMod(Math.Round(274 * scale)), (int)Opt.ApResMod(Math.Round(60 * scale))); break; case "browse_cards": buttonSize = new System.Drawing.Size((int)Opt.ApResMod(Math.Round(236 * scale)), (int)Opt.ApResMod(Math.Round(60 * scale))); break; case "quiz": buttonSize = new System.Drawing.Size((int)Opt.ApResMod(Math.Round(100 * scale)), (int)Opt.ApResMod(Math.Round(60 * scale))); break; case "manage_squads": buttonSize = new System.Drawing.Size((int)Opt.ApResMod(Math.Round(262 * scale)), (int)Opt.ApResMod(Math.Round(60 * scale))); break; case "show_name": buttonSize = new System.Drawing.Size((int)Opt.ApResMod(Math.Round(203 * scale)), (int)Opt.ApResMod(Math.Round(60 * scale))); break; case "next": buttonSize = new System.Drawing.Size((int)Opt.ApResMod(Math.Round(203 * scale)), (int)Opt.ApResMod(Math.Round(60 * scale))); break; case "info": buttonSize = new System.Drawing.Size((int)Opt.ApResMod(Math.Round(22 * scale)), (int)Opt.ApResMod(Math.Round(22 * scale))); break; case "close": buttonSize = new System.Drawing.Size((int)Opt.ApResMod(Math.Round(22 * scale)), (int)Opt.ApResMod(Math.Round(22 * scale))); break; case "add": buttonSize = new System.Drawing.Size((int)Opt.ApResMod(Math.Round(22 * scale)), (int)Opt.ApResMod(Math.Round(22 * scale))); break; case "remove": buttonSize = new System.Drawing.Size((int)Opt.ApResMod(Math.Round(22 * scale)), (int)Opt.ApResMod(Math.Round(22 * scale))); break; case "copy_for_vassal": buttonSize = new System.Drawing.Size((int)Opt.ApResMod(Math.Round(266 * scale)), (int)Opt.ApResMod(Math.Round(60 * scale))); break; case "copy": buttonSize = new System.Drawing.Size((int)Opt.ApResMod(Math.Round(106 * scale)), (int)Opt.ApResMod(Math.Round(60 * scale))); break; default: break; } this.imageName = imageName; this.filteredLocation = System.IO.Path.GetDirectoryName(System.Reflection.Assembly.GetExecutingAssembly().CodeBase).Replace("file:\\", "") + "\\Misc\\"; Source = ImageResizer.ResizeImage(System.Drawing.Image.FromFile(filteredLocation + imageName + ".png"), buttonSize); Width = buttonSize.Width; Height = buttonSize.Height; UseLayoutRounding = true; MouseEnter += new MouseEventHandler(ButtonHover); MouseLeave += new MouseEventHandler(ButtonStopHover); MouseDown += new MouseButtonEventHandler(ButtonClicked); Cursor = Cursors.Hand; RenderOptions.SetBitmapScalingMode(this, BitmapScalingMode.HighQuality); }
private void ButtonHover(object sender, MouseEventArgs e) { Source = ImageResizer.ResizeImage(System.Drawing.Image.FromFile(filteredLocation + imageName + "_hover.png"), buttonSize); }