From d51f9c3e880d86873a1772aa5050cad878948dfb Mon Sep 17 00:00:00 2001 From: YoshiRulz Date: Fri, 4 Dec 2020 22:49:35 +1000 Subject: [PATCH] Use LINQ instead of dumb in FormsLuaLibrary implementations --- .../tools/Lua/Libraries/FormsLuaLibrary.cs | 163 +++++------------- 1 file changed, 46 insertions(+), 117 deletions(-) diff --git a/src/BizHawk.Client.EmuHawk/tools/Lua/Libraries/FormsLuaLibrary.cs b/src/BizHawk.Client.EmuHawk/tools/Lua/Libraries/FormsLuaLibrary.cs index 5ed7c57c0e..3fe0ef2a04 100644 --- a/src/BizHawk.Client.EmuHawk/tools/Lua/Libraries/FormsLuaLibrary.cs +++ b/src/BizHawk.Client.EmuHawk/tools/Lua/Libraries/FormsLuaLibrary.cs @@ -457,12 +457,9 @@ namespace BizHawk.Client.EmuHawk return; } - foreach (Control control in form.Controls) + foreach (var control in form.Controls.OfType()) { - if (control is LuaPictureBox) - { - (control as LuaPictureBox).Clear(color); - } + control.Clear(color); } } } @@ -489,12 +486,9 @@ namespace BizHawk.Client.EmuHawk return; } - foreach (Control control in form.Controls) + foreach (var control in form.Controls.OfType()) { - if (control is LuaPictureBox) - { - (control as LuaPictureBox).Refresh(); - } + control.Refresh(); } } } @@ -521,12 +515,9 @@ namespace BizHawk.Client.EmuHawk return; } - foreach (Control control in form.Controls) + foreach (var control in form.Controls.OfType()) { - if (control is LuaPictureBox) - { - (control as LuaPictureBox).SetDefaultForegroundColor(color); - } + control.SetDefaultForegroundColor(color); } } } @@ -553,12 +544,9 @@ namespace BizHawk.Client.EmuHawk return; } - foreach (Control control in form.Controls) + foreach (var control in form.Controls.OfType()) { - if (control is LuaPictureBox) - { - (control as LuaPictureBox).SetDefaultBackgroundColor(color); - } + control.SetDefaultBackgroundColor(color); } } } @@ -585,12 +573,9 @@ namespace BizHawk.Client.EmuHawk return; } - foreach (Control control in form.Controls) + foreach (var control in form.Controls.OfType()) { - if (control is LuaPictureBox) - { - (control as LuaPictureBox).SetDefaultTextBackground(color); - } + control.SetDefaultTextBackground(color); } } } @@ -617,12 +602,9 @@ namespace BizHawk.Client.EmuHawk return; } - foreach (Control control in form.Controls) + foreach (var control in form.Controls.OfType()) { - if (control is LuaPictureBox) - { - (control as LuaPictureBox).DrawBezier(points, color); - } + control.DrawBezier(points, color); } } } @@ -649,12 +631,9 @@ namespace BizHawk.Client.EmuHawk return; } - foreach (Control control in form.Controls) + foreach (var control in form.Controls.OfType()) { - if (control is LuaPictureBox) - { - (control as LuaPictureBox).DrawBox(x, y, x2, y2, line, background); - } + control.DrawBox(x, y, x2, y2, line, background); } } } @@ -681,12 +660,9 @@ namespace BizHawk.Client.EmuHawk return; } - foreach (Control control in form.Controls) + foreach (var control in form.Controls.OfType()) { - if (control is LuaPictureBox) - { - (control as LuaPictureBox).DrawEllipse(x, y, width, height, line, background); - } + control.DrawEllipse(x, y, width, height, line, background); } } } @@ -713,12 +689,9 @@ namespace BizHawk.Client.EmuHawk return; } - foreach (Control control in form.Controls) + foreach (var control in form.Controls.OfType()) { - if (control is LuaPictureBox) - { - (control as LuaPictureBox).DrawIcon(path, x, y, width, height); - } + control.DrawIcon(path, x, y, width, height); } } } @@ -750,12 +723,9 @@ namespace BizHawk.Client.EmuHawk return; } - foreach (Control control in form.Controls) + foreach (var control in form.Controls.OfType()) { - if (control is LuaPictureBox) - { - (control as LuaPictureBox).DrawImage(path, x, y, width, height, cache); - } + control.DrawImage(path, x, y, width, height, cache); } } } @@ -782,12 +752,9 @@ namespace BizHawk.Client.EmuHawk return; } - foreach (Control control in form.Controls) + foreach (var control in form.Controls.OfType()) { - if (control is LuaPictureBox) - { - (control as LuaPictureBox).ClearImageCache(); - } + control.ClearImageCache(); } } } @@ -819,12 +786,9 @@ namespace BizHawk.Client.EmuHawk return; } - foreach (Control control in form.Controls) + foreach (var control in form.Controls.OfType()) { - if (control is LuaPictureBox) - { - (control as LuaPictureBox).DrawImageRegion(path, source_x, source_y, source_width, source_height, dest_x, dest_y, dest_width, dest_height); - } + control.DrawImageRegion(path, source_x, source_y, source_width, source_height, dest_x, dest_y, dest_width, dest_height); } } } @@ -851,12 +815,9 @@ namespace BizHawk.Client.EmuHawk return; } - foreach (Control control in form.Controls) + foreach (var control in form.Controls.OfType()) { - if (control is LuaPictureBox) - { - (control as LuaPictureBox).DrawLine(x1, y1, x2, y2, color); - } + control.DrawLine(x1, y1, x2, y2, color); } } } @@ -883,12 +844,9 @@ namespace BizHawk.Client.EmuHawk return; } - foreach (Control control in form.Controls) + foreach (var control in form.Controls.OfType()) { - if (control is LuaPictureBox) - { - (control as LuaPictureBox).DrawAxis(x, y, size, color); - } + control.DrawAxis(x, y, size, color); } } } @@ -916,12 +874,9 @@ namespace BizHawk.Client.EmuHawk return; } - foreach (Control control in form.Controls) + foreach (var control in form.Controls.OfType()) { - if (control is LuaPictureBox) - { - (control as LuaPictureBox).DrawArc(x, y, width, height, startangle, sweepangle, line); - } + control.DrawArc(x, y, width, height, startangle, sweepangle, line); } } } @@ -957,12 +912,9 @@ namespace BizHawk.Client.EmuHawk return; } - foreach (Control control in form.Controls) + foreach (var control in form.Controls.OfType()) { - if (control is LuaPictureBox) - { - (control as LuaPictureBox).DrawPie(x, y, width, height, startangle, sweepangle, line, background); - } + control.DrawPie(x, y, width, height, startangle, sweepangle, line, background); } } } @@ -989,12 +941,9 @@ namespace BizHawk.Client.EmuHawk return; } - foreach (Control control in form.Controls) + foreach (var control in form.Controls.OfType()) { - if (control is LuaPictureBox) - { - (control as LuaPictureBox).DrawPixel(x, y, color); - } + control.DrawPixel(x, y, color); } } } @@ -1021,12 +970,9 @@ namespace BizHawk.Client.EmuHawk return; } - foreach (Control control in form.Controls) + foreach (var control in form.Controls.OfType()) { - if (control is LuaPictureBox) - { - (control as LuaPictureBox).DrawPolygon(points, x, y, line, background); - } + control.DrawPolygon(points, x, y, line, background); } } } @@ -1054,12 +1000,9 @@ namespace BizHawk.Client.EmuHawk return; } - foreach (Control control in form.Controls) + foreach (var control in form.Controls.OfType()) { - if (control is LuaPictureBox) - { - (control as LuaPictureBox).DrawRectangle(x, y, width, height, line, background); - } + control.DrawRectangle(x, y, width, height, line, background); } } } @@ -1097,12 +1040,9 @@ namespace BizHawk.Client.EmuHawk return; } - foreach (Control control in form.Controls) + foreach (var control in form.Controls.OfType()) { - if (control is LuaPictureBox) - { - (control as LuaPictureBox).DrawText(x, y, message, forecolor, backcolor, fontsize, fontfamily, fontstyle, horizalign, vertalign); - } + control.DrawText(x, y, message, forecolor, backcolor, fontsize, fontfamily, fontstyle, horizalign, vertalign); } } } @@ -1140,12 +1080,9 @@ namespace BizHawk.Client.EmuHawk return; } - foreach (Control control in form.Controls) + foreach (var control in form.Controls.OfType()) { - if (control is LuaPictureBox) - { - (control as LuaPictureBox).DrawText(x, y, message, forecolor, backcolor, fontsize, fontfamily, fontstyle, horizalign, vertalign); - } + control.DrawText(x, y, message, forecolor, backcolor, fontsize, fontfamily, fontstyle, horizalign, vertalign); } } } @@ -1173,13 +1110,9 @@ namespace BizHawk.Client.EmuHawk return 0; } - foreach (Control control in form.Controls) + foreach (var control in form.Controls.OfType()) { - if (control is LuaPictureBox) - { - var position = (control as LuaPictureBox).GetMouse(); - return position.X; - } + return control.GetMouse().X; } } } @@ -1208,13 +1141,9 @@ namespace BizHawk.Client.EmuHawk return 0; } - foreach (Control control in form.Controls) + foreach (var control in form.Controls.OfType()) { - if (control is LuaPictureBox) - { - var position = (control as LuaPictureBox).GetMouse(); - return position.Y; - } + return control.GetMouse().Y; } } }