From f60ec62c7f39afda6e1732d416dc2e9591d2b55a Mon Sep 17 00:00:00 2001 From: Ambratolm Date: Thu, 10 Jun 2021 07:57:02 +0000 Subject: [PATCH] Added: Settings & About GUI. Updated: Main GUI, API, README. --- .../ButtonExtension.cs | 0 .../ControlExtension.cs | 0 .../FormExtension.cs | 0 .../ProgressBarExtension.cs | 7 + .../API/Extensions/StringExtension.cs | 23 +- Ping Tester Aluminium/API/PingRating.cs | 20 + Ping Tester Aluminium/API/PingResult.cs | 76 +++- Ping Tester Aluminium/API/PingTest.cs | 52 +-- Ping Tester Aluminium/API/PingTestManager.cs | 101 +++++ Ping Tester Aluminium/Form1.Designer.cs | 300 --------------- Ping Tester Aluminium/Form1.cs | 121 ------ Ping Tester Aluminium/Form2.Designer.cs | 38 -- Ping Tester Aluminium/Form2.cs | 19 - .../GUI/Components/AluminiumForm.cs | 4 +- .../GUI/Form_About.Designer.cs | 93 +++++ Ping Tester Aluminium/GUI/Form_About.cs | 29 ++ Ping Tester Aluminium/GUI/Form_About.resx | 212 +++++++++++ .../GUI/Form_Error.Designer.cs | 100 +++++ Ping Tester Aluminium/GUI/Form_Error.cs | 30 ++ Ping Tester Aluminium/GUI/Form_Error.resx | 212 +++++++++++ .../GUI/Form_Main.Designer.cs | 359 ++++++++++++++++++ Ping Tester Aluminium/GUI/Form_Main.cs | 126 ++++++ .../{Form1.resx => GUI/Form_Main.resx} | 61 ++- .../GUI/Form_Settings.Designer.cs | 274 +++++++++++++ Ping Tester Aluminium/GUI/Form_Settings.cs | 53 +++ Ping Tester Aluminium/GUI/Form_Settings.resx | 303 +++++++++++++++ .../GUI/_old_Form_Main.Designer.cs | 250 ------------ Ping Tester Aluminium/GUI/_old_Form_Main.cs | 134 ------- Ping Tester Aluminium/GUI/_old_Form_Main.resx | 225 ----------- .../GUI/_old_Form_Settings.Designer.cs | 161 -------- .../GUI/_old_Form_Settings.cs | 56 --- .../GUI/_old_Form_Settings.resx | 123 ------ .../GUI/old_Form_About.Designer.cs | 148 -------- Ping Tester Aluminium/GUI/old_Form_About.cs | 29 -- Ping Tester Aluminium/GUI/old_Form_About.resx | 123 ------ .../Ping Tester Aluminium.csproj | 64 ++-- Ping Tester Aluminium/Program.cs | 2 +- .../Properties/Settings.Designer.cs | 48 +++ .../Properties/Settings.settings | 12 + Ping Tester Aluminium/app.config | 12 + .../bin/Release/PingTesterAluminium.exe | Bin 245248 -> 263168 bytes .../Release/PingTesterAluminium.exe.config | 12 + .../PingTesterAluminium.vshost.exe.config | 12 + README.md | 13 +- screenshot.gif | Bin 0 -> 221661 bytes screenshot2.gif | Bin 0 -> 32332 bytes 46 files changed, 2205 insertions(+), 1832 deletions(-) rename Ping Tester Aluminium/API/Extensions/{ => Components Extensions}/ButtonExtension.cs (100%) rename Ping Tester Aluminium/API/Extensions/{ => Components Extensions}/ControlExtension.cs (100%) rename Ping Tester Aluminium/API/Extensions/{ => Components Extensions}/FormExtension.cs (100%) rename Ping Tester Aluminium/API/Extensions/{ => Components Extensions}/ProgressBarExtension.cs (71%) create mode 100644 Ping Tester Aluminium/API/PingRating.cs create mode 100644 Ping Tester Aluminium/API/PingTestManager.cs delete mode 100644 Ping Tester Aluminium/Form1.Designer.cs delete mode 100644 Ping Tester Aluminium/Form1.cs delete mode 100644 Ping Tester Aluminium/Form2.Designer.cs delete mode 100644 Ping Tester Aluminium/Form2.cs create mode 100644 Ping Tester Aluminium/GUI/Form_About.Designer.cs create mode 100644 Ping Tester Aluminium/GUI/Form_About.cs create mode 100644 Ping Tester Aluminium/GUI/Form_About.resx create mode 100644 Ping Tester Aluminium/GUI/Form_Error.Designer.cs create mode 100644 Ping Tester Aluminium/GUI/Form_Error.cs create mode 100644 Ping Tester Aluminium/GUI/Form_Error.resx create mode 100644 Ping Tester Aluminium/GUI/Form_Main.Designer.cs create mode 100644 Ping Tester Aluminium/GUI/Form_Main.cs rename Ping Tester Aluminium/{Form1.resx => GUI/Form_Main.resx} (97%) create mode 100644 Ping Tester Aluminium/GUI/Form_Settings.Designer.cs create mode 100644 Ping Tester Aluminium/GUI/Form_Settings.cs create mode 100644 Ping Tester Aluminium/GUI/Form_Settings.resx delete mode 100644 Ping Tester Aluminium/GUI/_old_Form_Main.Designer.cs delete mode 100644 Ping Tester Aluminium/GUI/_old_Form_Main.cs delete mode 100644 Ping Tester Aluminium/GUI/_old_Form_Main.resx delete mode 100644 Ping Tester Aluminium/GUI/_old_Form_Settings.Designer.cs delete mode 100644 Ping Tester Aluminium/GUI/_old_Form_Settings.cs delete mode 100644 Ping Tester Aluminium/GUI/_old_Form_Settings.resx delete mode 100644 Ping Tester Aluminium/GUI/old_Form_About.Designer.cs delete mode 100644 Ping Tester Aluminium/GUI/old_Form_About.cs delete mode 100644 Ping Tester Aluminium/GUI/old_Form_About.resx create mode 100644 screenshot.gif create mode 100644 screenshot2.gif diff --git a/Ping Tester Aluminium/API/Extensions/ButtonExtension.cs b/Ping Tester Aluminium/API/Extensions/Components Extensions/ButtonExtension.cs similarity index 100% rename from Ping Tester Aluminium/API/Extensions/ButtonExtension.cs rename to Ping Tester Aluminium/API/Extensions/Components Extensions/ButtonExtension.cs diff --git a/Ping Tester Aluminium/API/Extensions/ControlExtension.cs b/Ping Tester Aluminium/API/Extensions/Components Extensions/ControlExtension.cs similarity index 100% rename from Ping Tester Aluminium/API/Extensions/ControlExtension.cs rename to Ping Tester Aluminium/API/Extensions/Components Extensions/ControlExtension.cs diff --git a/Ping Tester Aluminium/API/Extensions/FormExtension.cs b/Ping Tester Aluminium/API/Extensions/Components Extensions/FormExtension.cs similarity index 100% rename from Ping Tester Aluminium/API/Extensions/FormExtension.cs rename to Ping Tester Aluminium/API/Extensions/Components Extensions/FormExtension.cs diff --git a/Ping Tester Aluminium/API/Extensions/ProgressBarExtension.cs b/Ping Tester Aluminium/API/Extensions/Components Extensions/ProgressBarExtension.cs similarity index 71% rename from Ping Tester Aluminium/API/Extensions/ProgressBarExtension.cs rename to Ping Tester Aluminium/API/Extensions/Components Extensions/ProgressBarExtension.cs index b4d1beb..33dfd1a 100644 --- a/Ping Tester Aluminium/API/Extensions/ProgressBarExtension.cs +++ b/Ping Tester Aluminium/API/Extensions/Components Extensions/ProgressBarExtension.cs @@ -23,5 +23,12 @@ public static void SetState(this ProgressBar progressBar, State state) { SendMessage(progressBar.Handle, 1040, (IntPtr)state, IntPtr.Zero); } + + public static void SetValue(this ProgressBar progressBar, int value) + { + if (value < progressBar.Minimum) value = progressBar.Minimum; + if (value > progressBar.Maximum) value = progressBar.Maximum; + progressBar.Value = value; + } } } diff --git a/Ping Tester Aluminium/API/Extensions/StringExtension.cs b/Ping Tester Aluminium/API/Extensions/StringExtension.cs index 03d6fde..4deafa5 100644 --- a/Ping Tester Aluminium/API/Extensions/StringExtension.cs +++ b/Ping Tester Aluminium/API/Extensions/StringExtension.cs @@ -2,27 +2,26 @@ using System.Collections.Generic; using System.Linq; using System.Text; +using System.Text.RegularExpressions; namespace PingTesterAluminium { public static class StringExtension { - public static bool IsEmpty(this string str) + public static bool GetIsNullOrWhiteSpace(this string str) { - return str == string.Empty; + return string.IsNullOrWhiteSpace(str); } - public static bool IsValidHost(this string str) + + public static bool GetIsValidHost(this string str) { - //try - //{ - // IPHostEntry ipHost = Dns.GetHostEntry(host); - // return true; - //} - //catch (SocketException) - //{ - // return false; - //} return Uri.CheckHostName(str) != UriHostNameType.Unknown; } + + public static string ToTitleCase(this string str) + { + Regex regex = new Regex(@"(?<=[A-Z])(?=[A-Z][a-z])|(?<=[^A-Z])(?=[A-Z])|(?<=[A-Za-z])(?=[^A-Za-z])"); + return regex.Replace(str, " "); + } } } diff --git a/Ping Tester Aluminium/API/PingRating.cs b/Ping Tester Aluminium/API/PingRating.cs new file mode 100644 index 0000000..81e696a --- /dev/null +++ b/Ping Tester Aluminium/API/PingRating.cs @@ -0,0 +1,20 @@ +using System; +using System.Collections.Generic; +using System.Linq; +using System.Text; + +namespace PingTesterAluminium +{ + public enum PingRating + { + Unknown = 0, + Amazing = 1, + Excellent = 2, + Good = 3, + NotBad = 4, + Bad = 5, + Mediocre = 6, + Poor = 7, + Terrible = 8 + } +} diff --git a/Ping Tester Aluminium/API/PingResult.cs b/Ping Tester Aluminium/API/PingResult.cs index affd20d..646bc84 100644 --- a/Ping Tester Aluminium/API/PingResult.cs +++ b/Ping Tester Aluminium/API/PingResult.cs @@ -1,24 +1,78 @@ using System; using System.Drawing; using System.Net.NetworkInformation; +using System.Net; namespace PingTesterAluminium { public class PingResult { - public long Time { get; set; } - public string Rating { get; set; } - public Color Color { get; set; } - public string Message { get; set; } - public string Host { get; set; } + public IPAddress Address { get; private set; } + public Byte[] Buffer { get; private set; } + public long Time { get; private set; } + public IPStatus Status { get; private set; } + public int Ttl { get; set; } + public bool DontFragment { get; private set; } + public PingRating Rating { get; private set; } + public Color RatingColor { get; private set; } + public Color StatusColor { get; private set; } + public string ErrorMessage { get; private set; } + public bool HasError { get; private set; } - public PingResult(int time, string rating, Color color, string message, string host) + public PingResult(PingReply reply = null) { - this.Time = time; - this.Rating = rating; - this.Color = color; - this.Message = message; - this.Host = host; + if (reply == null) + { + this.Time = -1; + this.Status = IPStatus.Unknown; + } + else + { + this.Address = reply.Address; + this.Buffer = reply.Buffer; + this.Time = reply.RoundtripTime; + this.Status = reply.Status; + this.Ttl = reply.Options.Ttl; + this.DontFragment = reply.Options.DontFragment; + } + this.Rating = GetRating(this.Time); + this.RatingColor = GetRatingColor(this.Time); + this.StatusColor = GetStatusColor(this.Status); + } + + public PingResult(string errorMessage) + : this() + { + this.ErrorMessage = errorMessage; + this.HasError = true; + } + + public static PingRating GetRating(long time = -1) + { + if (time < 0) return PingRating.Unknown; + if (time < 30) return PingRating.Amazing; + if (time < 60) return PingRating.Excellent; + if (time < 100) return PingRating.Good; + if (time < 150) return PingRating.NotBad; + if (time < 200) return PingRating.Bad; + if (time < 250) return PingRating.Mediocre; + if (time < 300) return PingRating.Poor; + return PingRating.Terrible; + } + + public static Color GetRatingColor(long time = -1) + { + if (time < 0) return Color.Gray; + if (time <= 100) return Color.Green; + if (time <= 150) return Color.Yellow; + return Color.Red; + } + + public static Color GetStatusColor(IPStatus status = IPStatus.Unknown) + { + if (status == IPStatus.Unknown) return Color.Gray; + if (status == IPStatus.Success) return Color.Blue; + else return Color.DarkRed; } } } diff --git a/Ping Tester Aluminium/API/PingTest.cs b/Ping Tester Aluminium/API/PingTest.cs index 53d3220..165d9fc 100644 --- a/Ping Tester Aluminium/API/PingTest.cs +++ b/Ping Tester Aluminium/API/PingTest.cs @@ -6,51 +6,27 @@ namespace PingTesterAluminium { public static class PingTest { - public static PingResult Ping(string host) + public static PingResult Run(string host, int timeout = 5000, + int bufferLength = 32, int ttl = 128, bool dontFragment = false) { - if (host.IsEmpty() || !host.IsValidHost()) - { - host = "google.com"; - } - PingReply pingReply = null; try { - pingReply = new Ping().Send(host); - } - catch (Exception exception) - { - return new PingResult(-1, "Error", Color.DarkRed, exception.Message, host); + if (timeout < 0) timeout = 0; + if (bufferLength < 0) bufferLength = 0; + if (bufferLength > 65500) bufferLength = 65500; + + if (ttl < 0) ttl = 0; + if (ttl > 255) ttl = 255; + + PingReply reply = new Ping().Send(host, timeout, new byte[bufferLength], + new PingOptions(ttl, dontFragment)); + return new PingResult(reply); } - if (pingReply.Status != IPStatus.Success) - { - return new PingResult((int)pingReply.RoundtripTime, "No Response", - Color.Gray, pingReply.Status.ToString(), host); - } - else + catch (Exception exception) { - return new PingResult((int)pingReply.RoundtripTime, GetRating(pingReply.RoundtripTime), - GetColor(pingReply.RoundtripTime), pingReply.Status.ToString(), host); + return new PingResult(exception.Message); } } - - public static string GetRating(long time) - { - if (time <= 30) return "Amazing"; - if (time <= 60) return "Excellent"; - if (time <= 100) return "Good"; - if (time <= 150) return "Not Bad"; - if (time <= 200) return "Bad"; - if (time <= 250) return "Mediocre"; - if (time <= 300) return "Poor"; - return "Terrible"; - } - - private static Color GetColor(long time) - { - if (time <= 100) return Color.Green; - if (time <= 150) return Color.Yellow; - return Color.Red; - } } } diff --git a/Ping Tester Aluminium/API/PingTestManager.cs b/Ping Tester Aluminium/API/PingTestManager.cs new file mode 100644 index 0000000..e835bff --- /dev/null +++ b/Ping Tester Aluminium/API/PingTestManager.cs @@ -0,0 +1,101 @@ +using System; +using System.Collections.Generic; +using System.Linq; +using System.Text; +using PingTesterAluminium.Properties; + +namespace PingTesterAluminium +{ + public static class PingTestManager + { + public static string Host + { + get + { + return Settings.Default.Host; + } + set + { + Settings.Default.Host = value; + Settings.Default.Save(); + } + } + public static int Interval + { + get + { + return Settings.Default.Interval; + } + set + { + if (value < 100) value = 100; + Settings.Default.Interval = value; + Settings.Default.Save(); + } + } + public static int Timeout + { + get + { + return Settings.Default.Timeout; + } + set + { + if (value < 0) value = 0; + Settings.Default.Timeout = value; + Settings.Default.Save(); + } + } + public static int BufferLength + { + get + { + return Settings.Default.BufferLength; + } + set + { + if (value < 0) value = 0; + if (value > 65500) value = 65500; + Settings.Default.BufferLength = value; + Settings.Default.Save(); + } + } + public static int Ttl + { + get + { + return Settings.Default.Ttl; + } + set + { + if (value < 0) value = 0; + if (value > 255) value = 255; + Settings.Default.Ttl = value; + Settings.Default.Save(); + } + } + public static bool DontFragment + { + get + { + return Settings.Default.DontFragment; + } + set + { + Settings.Default.DontFragment = value; + Settings.Default.Save(); + } + } + + public static PingResult RunPingTest() + { + return PingTest.Run( + host: Host, + timeout: Timeout, + bufferLength: BufferLength, + ttl: Ttl, + dontFragment: DontFragment + ); + } + } +} diff --git a/Ping Tester Aluminium/Form1.Designer.cs b/Ping Tester Aluminium/Form1.Designer.cs deleted file mode 100644 index 1fb66fa..0000000 --- a/Ping Tester Aluminium/Form1.Designer.cs +++ /dev/null @@ -1,300 +0,0 @@ -namespace PingTesterAluminium -{ - partial class Form1 - { - /// - /// Required designer variable. - /// - private System.ComponentModel.IContainer components = null; - - /// - /// Clean up any resources being used. - /// - /// true if managed resources should be disposed; otherwise, false. - protected override void Dispose(bool disposing) - { - if (disposing && (components != null)) - { - components.Dispose(); - } - base.Dispose(disposing); - } - - #region Windows Form Designer generated code - - /// - /// Required method for Designer support - do not modify - /// the contents of this method with the code editor. - /// - private void InitializeComponent() - { - this.components = new System.ComponentModel.Container(); - System.ComponentModel.ComponentResourceManager resources = new System.ComponentModel.ComponentResourceManager(typeof(Form1)); - this.button_play = new PingTesterAluminium.AluminiumButton(); - this.label_host = new PingTesterAluminium.AluminiumLabel(); - this.label_buffer = new PingTesterAluminium.AluminiumLabel(); - this.label_time = new PingTesterAluminium.AluminiumLabel(); - this.label_status = new PingTesterAluminium.AluminiumLabel(); - this.label_ttl = new PingTesterAluminium.AluminiumLabel(); - this.label_rating = new PingTesterAluminium.AluminiumLabel(); - this.panel_time = new System.Windows.Forms.Panel(); - this.progressBar_time2 = new System.Windows.Forms.ProgressBar(); - this.progressBar_time4 = new System.Windows.Forms.ProgressBar(); - this.progressBar_time3 = new System.Windows.Forms.ProgressBar(); - this.progressBar_time1 = new System.Windows.Forms.ProgressBar(); - this.progressBar_time5 = new System.Windows.Forms.ProgressBar(); - this.timer_main = new System.Windows.Forms.Timer(this.components); - this.backgroundWorker_main = new System.ComponentModel.BackgroundWorker(); - this.panel_main.SuspendLayout(); - this.panel_time.SuspendLayout(); - this.SuspendLayout(); - // - // panel_main - // - this.panel_main.Controls.Add(this.panel_time); - this.panel_main.Controls.Add(this.label_rating); - this.panel_main.Controls.Add(this.label_ttl); - this.panel_main.Controls.Add(this.label_status); - this.panel_main.Controls.Add(this.label_time); - this.panel_main.Controls.Add(this.label_buffer); - this.panel_main.Controls.Add(this.label_host); - this.panel_main.Controls.Add(this.button_play); - this.panel_main.Size = new System.Drawing.Size(380, 424); - // - // button_play - // - this.button_play.Anchor = ((System.Windows.Forms.AnchorStyles)((System.Windows.Forms.AnchorStyles.Bottom | System.Windows.Forms.AnchorStyles.Right))); - this.button_play.BackColor = System.Drawing.Color.FromArgb(((int)(((byte)(64)))), ((int)(((byte)(64)))), ((int)(((byte)(64))))); - this.button_play.BackgroundImage = ((System.Drawing.Image)(resources.GetObject("button_play.BackgroundImage"))); - this.button_play.BackgroundImageLayout = System.Windows.Forms.ImageLayout.Stretch; - this.button_play.Cursor = System.Windows.Forms.Cursors.Hand; - this.button_play.FlatStyle = System.Windows.Forms.FlatStyle.Flat; - this.button_play.Font = new System.Drawing.Font("Visitor TT1 BRK", 15F); - this.button_play.Image = global::PingTesterAluminium.Properties.Resources.play; - this.button_play.Location = new System.Drawing.Point(169, 379); - this.button_play.Name = "button_play"; - this.button_play.Size = new System.Drawing.Size(40, 32); - this.button_play.TabIndex = 7; - this.button_play.UseVisualStyleBackColor = false; - this.button_play.Click += new System.EventHandler(this.button_play_Click); - // - // label_host - // - this.label_host.Anchor = ((System.Windows.Forms.AnchorStyles)((System.Windows.Forms.AnchorStyles.Left | System.Windows.Forms.AnchorStyles.Right))); - this.label_host.AutoEllipsis = true; - this.label_host.BackColor = System.Drawing.Color.Transparent; - this.label_host.Font = new System.Drawing.Font("Visitor TT1 BRK", 20F); - this.label_host.ImageAlign = System.Drawing.ContentAlignment.MiddleLeft; - this.label_host.Location = new System.Drawing.Point(18, 42); - this.label_host.Margin = new System.Windows.Forms.Padding(0); - this.label_host.Name = "label_host"; - this.label_host.Size = new System.Drawing.Size(338, 32); - this.label_host.TabIndex = 0; - this.label_host.Text = "127.0.0.1"; - this.label_host.TextAlign = System.Drawing.ContentAlignment.BottomLeft; - // - // label_buffer - // - this.label_buffer.Anchor = ((System.Windows.Forms.AnchorStyles)((System.Windows.Forms.AnchorStyles.Left | System.Windows.Forms.AnchorStyles.Right))); - this.label_buffer.AutoEllipsis = true; - this.label_buffer.BackColor = System.Drawing.Color.Transparent; - this.label_buffer.Font = new System.Drawing.Font("Visitor TT1 BRK", 20F); - this.label_buffer.ImageAlign = System.Drawing.ContentAlignment.MiddleLeft; - this.label_buffer.Location = new System.Drawing.Point(18, 185); - this.label_buffer.Margin = new System.Windows.Forms.Padding(0); - this.label_buffer.Name = "label_buffer"; - this.label_buffer.Size = new System.Drawing.Size(338, 32); - this.label_buffer.TabIndex = 4; - this.label_buffer.Text = "32 bytes"; - this.label_buffer.TextAlign = System.Drawing.ContentAlignment.BottomLeft; - // - // label_time - // - this.label_time.Anchor = ((System.Windows.Forms.AnchorStyles)((System.Windows.Forms.AnchorStyles.Left | System.Windows.Forms.AnchorStyles.Right))); - this.label_time.AutoEllipsis = true; - this.label_time.BackColor = System.Drawing.Color.Transparent; - this.label_time.ImageAlign = System.Drawing.ContentAlignment.MiddleLeft; - this.label_time.Location = new System.Drawing.Point(18, 153); - this.label_time.Margin = new System.Windows.Forms.Padding(0); - this.label_time.Name = "label_time"; - this.label_time.Size = new System.Drawing.Size(338, 32); - this.label_time.TabIndex = 3; - this.label_time.Text = "0 ms"; - this.label_time.TextAlign = System.Drawing.ContentAlignment.BottomLeft; - // - // label_status - // - this.label_status.Anchor = ((System.Windows.Forms.AnchorStyles)((System.Windows.Forms.AnchorStyles.Left | System.Windows.Forms.AnchorStyles.Right))); - this.label_status.AutoEllipsis = true; - this.label_status.BackColor = System.Drawing.Color.Transparent; - this.label_status.ImageAlign = System.Drawing.ContentAlignment.MiddleLeft; - this.label_status.Location = new System.Drawing.Point(18, 121); - this.label_status.Margin = new System.Windows.Forms.Padding(0); - this.label_status.Name = "label_status"; - this.label_status.Size = new System.Drawing.Size(338, 32); - this.label_status.TabIndex = 2; - this.label_status.Text = "Success"; - this.label_status.TextAlign = System.Drawing.ContentAlignment.BottomLeft; - // - // label_ttl - // - this.label_ttl.Anchor = ((System.Windows.Forms.AnchorStyles)((System.Windows.Forms.AnchorStyles.Left | System.Windows.Forms.AnchorStyles.Right))); - this.label_ttl.AutoEllipsis = true; - this.label_ttl.BackColor = System.Drawing.Color.Transparent; - this.label_ttl.Font = new System.Drawing.Font("Visitor TT1 BRK", 20F); - this.label_ttl.ImageAlign = System.Drawing.ContentAlignment.MiddleLeft; - this.label_ttl.Location = new System.Drawing.Point(18, 217); - this.label_ttl.Margin = new System.Windows.Forms.Padding(0); - this.label_ttl.Name = "label_ttl"; - this.label_ttl.Size = new System.Drawing.Size(338, 32); - this.label_ttl.TabIndex = 5; - this.label_ttl.Text = "118 TTL"; - this.label_ttl.TextAlign = System.Drawing.ContentAlignment.BottomLeft; - // - // label_rating - // - this.label_rating.Anchor = ((System.Windows.Forms.AnchorStyles)((System.Windows.Forms.AnchorStyles.Left | System.Windows.Forms.AnchorStyles.Right))); - this.label_rating.AutoEllipsis = true; - this.label_rating.BackColor = System.Drawing.Color.Transparent; - this.label_rating.Font = new System.Drawing.Font("Visitor TT1 BRK", 40F); - this.label_rating.Location = new System.Drawing.Point(13, 75); - this.label_rating.Margin = new System.Windows.Forms.Padding(0); - this.label_rating.Name = "label_rating"; - this.label_rating.Size = new System.Drawing.Size(343, 47); - this.label_rating.TabIndex = 1; - this.label_rating.Text = "Good"; - this.label_rating.TextAlign = System.Drawing.ContentAlignment.MiddleLeft; - // - // panel_time - // - this.panel_time.BackgroundImage = global::PingTesterAluminium.Properties.Resources.background; - this.panel_time.BackgroundImageLayout = System.Windows.Forms.ImageLayout.Stretch; - this.panel_time.BorderStyle = System.Windows.Forms.BorderStyle.FixedSingle; - this.panel_time.Controls.Add(this.progressBar_time2); - this.panel_time.Controls.Add(this.progressBar_time4); - this.panel_time.Controls.Add(this.progressBar_time3); - this.panel_time.Controls.Add(this.progressBar_time1); - this.panel_time.Controls.Add(this.progressBar_time5); - this.panel_time.Location = new System.Drawing.Point(13, 263); - this.panel_time.Name = "panel_time"; - this.panel_time.Size = new System.Drawing.Size(353, 53); - this.panel_time.TabIndex = 6; - // - // progressBar_time2 - // - this.progressBar_time2.ForeColor = System.Drawing.SystemColors.ControlText; - this.progressBar_time2.Location = new System.Drawing.Point(78, 10); - this.progressBar_time2.Margin = new System.Windows.Forms.Padding(4); - this.progressBar_time2.MarqueeAnimationSpeed = 0; - this.progressBar_time2.Maximum = 300; - this.progressBar_time2.Name = "progressBar_time2"; - this.progressBar_time2.Size = new System.Drawing.Size(60, 32); - this.progressBar_time2.Step = 0; - this.progressBar_time2.Style = System.Windows.Forms.ProgressBarStyle.Continuous; - this.progressBar_time2.TabIndex = 1; - this.progressBar_time2.Value = 300; - // - // progressBar_time4 - // - this.progressBar_time4.ForeColor = System.Drawing.SystemColors.ControlText; - this.progressBar_time4.Location = new System.Drawing.Point(214, 10); - this.progressBar_time4.Margin = new System.Windows.Forms.Padding(4); - this.progressBar_time4.MarqueeAnimationSpeed = 0; - this.progressBar_time4.Maximum = 300; - this.progressBar_time4.Name = "progressBar_time4"; - this.progressBar_time4.Size = new System.Drawing.Size(60, 32); - this.progressBar_time4.Step = 0; - this.progressBar_time4.Style = System.Windows.Forms.ProgressBarStyle.Continuous; - this.progressBar_time4.TabIndex = 3; - this.progressBar_time4.Value = 300; - // - // progressBar_time3 - // - this.progressBar_time3.ForeColor = System.Drawing.SystemColors.ControlText; - this.progressBar_time3.Location = new System.Drawing.Point(146, 10); - this.progressBar_time3.Margin = new System.Windows.Forms.Padding(4); - this.progressBar_time3.MarqueeAnimationSpeed = 0; - this.progressBar_time3.Maximum = 300; - this.progressBar_time3.Name = "progressBar_time3"; - this.progressBar_time3.Size = new System.Drawing.Size(60, 32); - this.progressBar_time3.Step = 0; - this.progressBar_time3.Style = System.Windows.Forms.ProgressBarStyle.Continuous; - this.progressBar_time3.TabIndex = 2; - this.progressBar_time3.Value = 300; - // - // progressBar_time1 - // - this.progressBar_time1.ForeColor = System.Drawing.SystemColors.ControlText; - this.progressBar_time1.Location = new System.Drawing.Point(10, 10); - this.progressBar_time1.Margin = new System.Windows.Forms.Padding(4); - this.progressBar_time1.MarqueeAnimationSpeed = 0; - this.progressBar_time1.Maximum = 300; - this.progressBar_time1.Name = "progressBar_time1"; - this.progressBar_time1.Size = new System.Drawing.Size(60, 32); - this.progressBar_time1.Step = 0; - this.progressBar_time1.Style = System.Windows.Forms.ProgressBarStyle.Continuous; - this.progressBar_time1.TabIndex = 0; - this.progressBar_time1.Value = 300; - // - // progressBar_time5 - // - this.progressBar_time5.ForeColor = System.Drawing.SystemColors.ControlText; - this.progressBar_time5.Location = new System.Drawing.Point(282, 10); - this.progressBar_time5.Margin = new System.Windows.Forms.Padding(4); - this.progressBar_time5.MarqueeAnimationSpeed = 0; - this.progressBar_time5.Maximum = 300; - this.progressBar_time5.Name = "progressBar_time5"; - this.progressBar_time5.Size = new System.Drawing.Size(60, 32); - this.progressBar_time5.Step = 0; - this.progressBar_time5.Style = System.Windows.Forms.ProgressBarStyle.Continuous; - this.progressBar_time5.TabIndex = 4; - this.progressBar_time5.Value = 300; - // - // timer_main - // - this.timer_main.Interval = 1000; - this.timer_main.Tick += new System.EventHandler(this.timer_main_Tick); - // - // backgroundWorker_main - // - this.backgroundWorker_main.DoWork += new System.ComponentModel.DoWorkEventHandler(this.backgroundWorker_main_DoWork); - this.backgroundWorker_main.RunWorkerCompleted += new System.ComponentModel.RunWorkerCompletedEventHandler(this.backgroundWorker_main_RunWorkerCompleted); - // - // Form1 - // - this.AboutButtonVisible = true; - this.AutoScaleDimensions = new System.Drawing.SizeF(16F, 24F); - this.AutoScaleMode = System.Windows.Forms.AutoScaleMode.Font; - this.ClientSize = new System.Drawing.Size(380, 424); - this.Icon = ((System.Drawing.Icon)(resources.GetObject("$this.Icon"))); - this.MinimizeButtonVisible = true; - this.Name = "Form1"; - this.SettingsButtonVisible = true; - this.Text = "Ping Tester"; - this.Title = "Ping Tester"; - this.TitleBarImage = global::PingTesterAluminium.Properties.Resources.icon; - this.panel_main.ResumeLayout(false); - this.panel_time.ResumeLayout(false); - this.ResumeLayout(false); - - } - - #endregion - - private AluminiumButton button_play; - private AluminiumLabel label_host; - private AluminiumLabel label_buffer; - private AluminiumLabel label_ttl; - private AluminiumLabel label_status; - private AluminiumLabel label_time; - private AluminiumLabel label_rating; - private System.Windows.Forms.Panel panel_time; - private System.Windows.Forms.ProgressBar progressBar_time2; - private System.Windows.Forms.ProgressBar progressBar_time4; - private System.Windows.Forms.ProgressBar progressBar_time3; - private System.Windows.Forms.ProgressBar progressBar_time1; - private System.Windows.Forms.ProgressBar progressBar_time5; - public System.Windows.Forms.Timer timer_main; - private System.ComponentModel.BackgroundWorker backgroundWorker_main; - } -} \ No newline at end of file diff --git a/Ping Tester Aluminium/Form1.cs b/Ping Tester Aluminium/Form1.cs deleted file mode 100644 index e169646..0000000 --- a/Ping Tester Aluminium/Form1.cs +++ /dev/null @@ -1,121 +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.Windows.Forms; -using PingTesterAluminium.Properties; - -namespace PingTesterAluminium -{ - public partial class Form1 : AluminiumForm - { - public int Counter { get; set; } - public List ProgressBars { get; set; } - - public Form1() - { - InitializeComponent(); - ProgressBars = new List(); - foreach (Control control in panel_time.Controls) - { - if (control is ProgressBar) - { - ProgressBars.Add(control as ProgressBar); - } - } - timer_main.Start(); - } - - public void IncrementCounter() - { - if (Counter < ProgressBars.Count - 1) - { - Counter++; - } - else - { - Counter = 0; - } - } - - public void UpdateProgressBar(ProgressBar progressBar, PingResult response) - { - if (response.Time > progressBar.Maximum) - { - progressBar.Value = progressBar.Maximum; - } - else if (response.Time < progressBar.Minimum) - { - progressBar.Value = progressBar.Minimum; - } - else - { - progressBar.Value = (int)response.Time; - } - progressBar.ForeColor = response.Color; - } - - public void UpdateProgressBar(PingResult response) - { - UpdateProgressBar(ProgressBars[Counter], response); - IncrementCounter(); - } - - private void timer_main_Tick(object sender, EventArgs e) - { - if (Settings.Default.Interval < 1000) - { - timer_main.Interval = 1000; - } - else - { - timer_main.Interval = Settings.Default.Interval; - } - - if (timer_main.Interval != Settings.Default.Interval) - { - Settings.Default.Interval = timer_main.Interval; - Settings.Default.Save(); - } - - if (!backgroundWorker_main.IsBusy) - { - backgroundWorker_main.RunWorkerAsync(Settings.Default.Host); - } - } - - private void backgroundWorker_main_DoWork(object sender, DoWorkEventArgs e) - { - e.Result = PingTest.Ping(e.Argument as string); - } - - private void backgroundWorker_main_RunWorkerCompleted(object sender, RunWorkerCompletedEventArgs e) - { - PingResult response = e.Result as PingResult; - - label_time.Text = response.Time > 0 ? response.Time.ToString() + " ms" : "Timeout"; - label_time.ForeColor = response.Color; - - UpdateProgressBar(response); - - label_rating.Text = response.Rating; - label_rating.ForeColor = response.Color; - - label_host.Text = response.Host; - - if (response.Host != Settings.Default.Host) - { - Settings.Default.Host = response.Host; - Settings.Default.Save(); - } - } - - private void button_play_Click(object sender, EventArgs e) - { - - } - } -} diff --git a/Ping Tester Aluminium/Form2.Designer.cs b/Ping Tester Aluminium/Form2.Designer.cs deleted file mode 100644 index 45b7b32..0000000 --- a/Ping Tester Aluminium/Form2.Designer.cs +++ /dev/null @@ -1,38 +0,0 @@ -namespace PingTesterAluminium -{ - partial class Form2 - { - /// - /// Required designer variable. - /// - private System.ComponentModel.IContainer components = null; - - /// - /// Clean up any resources being used. - /// - /// true if managed resources should be disposed; otherwise, false. - protected override void Dispose(bool disposing) - { - if (disposing && (components != null)) - { - components.Dispose(); - } - base.Dispose(disposing); - } - - #region Windows Form Designer generated code - - /// - /// Required method for Designer support - do not modify - /// the contents of this method with the code editor. - /// - private void InitializeComponent() - { - this.components = new System.ComponentModel.Container(); - this.AutoScaleMode = System.Windows.Forms.AutoScaleMode.Font; - this.Text = "Form2"; - } - - #endregion - } -} \ No newline at end of file diff --git a/Ping Tester Aluminium/Form2.cs b/Ping Tester Aluminium/Form2.cs deleted file mode 100644 index c3d493d..0000000 --- a/Ping Tester Aluminium/Form2.cs +++ /dev/null @@ -1,19 +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.Windows.Forms; - -namespace PingTesterAluminium -{ - public partial class Form2 : AluminiumForm - { - public Form2() - { - InitializeComponent(); - } - } -} diff --git a/Ping Tester Aluminium/GUI/Components/AluminiumForm.cs b/Ping Tester Aluminium/GUI/Components/AluminiumForm.cs index 325b98b..9f573de 100644 --- a/Ping Tester Aluminium/GUI/Components/AluminiumForm.cs +++ b/Ping Tester Aluminium/GUI/Components/AluminiumForm.cs @@ -29,11 +29,11 @@ public bool AboutButtonVisible { get { - return this.button_settings.Visible; + return this.button_about.Visible; } set { - this.button_settings.Visible = value; + this.button_about.Visible = value; } } diff --git a/Ping Tester Aluminium/GUI/Form_About.Designer.cs b/Ping Tester Aluminium/GUI/Form_About.Designer.cs new file mode 100644 index 0000000..17a86c9 --- /dev/null +++ b/Ping Tester Aluminium/GUI/Form_About.Designer.cs @@ -0,0 +1,93 @@ +namespace PingTesterAluminium +{ + partial class Form_About + { + /// + /// Required designer variable. + /// + private System.ComponentModel.IContainer components = null; + + /// + /// Clean up any resources being used. + /// + /// true if managed resources should be disposed; otherwise, false. + protected override void Dispose(bool disposing) + { + if (disposing && (components != null)) + { + components.Dispose(); + } + base.Dispose(disposing); + } + + #region Windows Form Designer generated code + + /// + /// Required method for Designer support - do not modify + /// the contents of this method with the code editor. + /// + private void InitializeComponent() + { + System.ComponentModel.ComponentResourceManager resources = new System.ComponentModel.ComponentResourceManager(typeof(Form_About)); + this.button_ok = new PingTesterAluminium.AluminiumButton(); + this.label_about = new PingTesterAluminium.AluminiumLabel(); + this.panel_main.SuspendLayout(); + this.SuspendLayout(); + // + // panel_main + // + this.panel_main.Controls.Add(this.label_about); + this.panel_main.Controls.Add(this.button_ok); + this.panel_main.Size = new System.Drawing.Size(413, 272); + // + // button_ok + // + this.button_ok.BackColor = System.Drawing.Color.Silver; + this.button_ok.BackgroundImage = ((System.Drawing.Image)(resources.GetObject("button_ok.BackgroundImage"))); + this.button_ok.BackgroundImageLayout = System.Windows.Forms.ImageLayout.Stretch; + this.button_ok.Cursor = System.Windows.Forms.Cursors.Hand; + this.button_ok.FlatStyle = System.Windows.Forms.FlatStyle.Flat; + this.button_ok.Font = new System.Drawing.Font("Visitor TT1 BRK", 15F); + this.button_ok.Location = new System.Drawing.Point(295, 224); + this.button_ok.Name = "button_ok"; + this.button_ok.Size = new System.Drawing.Size(100, 32); + this.button_ok.TabIndex = 0; + this.button_ok.Text = "Ok"; + this.button_ok.UseVisualStyleBackColor = false; + this.button_ok.Click += new System.EventHandler(this.button_ok_Click); + // + // label_about + // + this.label_about.AutoEllipsis = true; + this.label_about.BackColor = System.Drawing.Color.Transparent; + this.label_about.Location = new System.Drawing.Point(15, 42); + this.label_about.Margin = new System.Windows.Forms.Padding(0); + this.label_about.Name = "label_about"; + this.label_about.Size = new System.Drawing.Size(380, 173); + this.label_about.TabIndex = 1; + this.label_about.Text = "Ping Tester Aluminium 0.1\r\n© 2019 Elhafid Softwares \r\n@ Ambratolm\r\n\r\nambratolm@gm" + + "ail.com\r\nambratolm.ml"; + this.label_about.TextAlign = System.Drawing.ContentAlignment.MiddleLeft; + // + // Form_About + // + this.AboutButtonVisible = true; + this.AutoScaleDimensions = new System.Drawing.SizeF(16F, 24F); + this.AutoScaleMode = System.Windows.Forms.AutoScaleMode.Font; + this.ClientSize = new System.Drawing.Size(413, 272); + this.MinimizeButtonVisible = true; + this.Name = "Form_About"; + this.SettingsButtonVisible = true; + this.ShowInTaskbar = false; + this.Text = "Form_About"; + this.panel_main.ResumeLayout(false); + this.ResumeLayout(false); + + } + + #endregion + + private AluminiumButton button_ok; + private AluminiumLabel label_about; + } +} \ No newline at end of file diff --git a/Ping Tester Aluminium/GUI/Form_About.cs b/Ping Tester Aluminium/GUI/Form_About.cs new file mode 100644 index 0000000..b353379 --- /dev/null +++ b/Ping Tester Aluminium/GUI/Form_About.cs @@ -0,0 +1,29 @@ +using System; +using System.Collections.Generic; +using System.ComponentModel; +using System.Data; +using System.Drawing; +using System.Linq; +using System.Text; +using System.Windows.Forms; + +namespace PingTesterAluminium +{ + public partial class Form_About : AluminiumForm + { + public Form_About() + { + InitializeComponent(); + } + + public static DialogResult Show(IWin32Window owner = null) + { + return new Form_About().ShowDialog(owner); + } + + private void button_ok_Click(object sender, EventArgs e) + { + Close(); + } + } +} diff --git a/Ping Tester Aluminium/GUI/Form_About.resx b/Ping Tester Aluminium/GUI/Form_About.resx new file mode 100644 index 0000000..9c60792 --- /dev/null +++ b/Ping Tester Aluminium/GUI/Form_About.resx @@ -0,0 +1,212 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + text/microsoft-resx + + + 2.0 + + + System.Resources.ResXResourceReader, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089 + + + System.Resources.ResXResourceWriter, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089 + + + + + /9j/4AAQSkZJRgABAQEAAAAAAAD/2wBDAAYEBQYFBAYGBQYHBwYIChAKCgkJChQODwwQFxQYGBcUFhYa + HSUfGhsjHBYWICwgIyYnKSopGR8tMC0oMCUoKSj/2wBDAQcHBwoIChMKChMoGhYaKCgoKCgoKCgoKCgo + KCgoKCgoKCgoKCgoKCgoKCgoKCgoKCgoKCgoKCgoKCgoKCgoKCj/wAARCAEsAZADAREAAhEBAxEB/8QA + HwAAAQUBAQEBAQEAAAAAAAAAAAECAwQFBgcICQoL/8QAtRAAAgEDAwIEAwUFBAQAAAF9AQIDAAQRBRIh + MUEGE1FhByJxFDKBkaEII0KxwRVS0fAkM2JyggkKFhcYGRolJicoKSo0NTY3ODk6Q0RFRkdISUpTVFVW + V1hZWmNkZWZnaGlqc3R1dnd4eXqDhIWGh4iJipKTlJWWl5iZmqKjpKWmp6ipqrKztLW2t7i5usLDxMXG + x8jJytLT1NXW19jZ2uHi4+Tl5ufo6erx8vP09fb3+Pn6/8QAHwEAAwEBAQEBAQEBAQAAAAAAAAECAwQF + BgcICQoL/8QAtREAAgECBAQDBAcFBAQAAQJ3AAECAxEEBSExBhJBUQdhcRMiMoEIFEKRobHBCSMzUvAV + YnLRChYkNOEl8RcYGRomJygpKjU2Nzg5OkNERUZHSElKU1RVVldYWVpjZGVmZ2hpanN0dXZ3eHl6goOE + hYaHiImKkpOUlZaXmJmaoqOkpaanqKmqsrO0tba3uLm6wsPExcbHyMnK0tPU1dbX2Nna4uPk5ebn6Onq + 8vP09fb3+Pn6/9oADAMBAAIRAxEAPwD0rFIYYoAMUAGKADFABigAxQAYoAMUAGKADFABigAxQAYoAMUA + LigAxQAYoAMUAGKADFABigAxQAYoAMUAGKADFABigAxQAYoAMUALigAxQAYoAMUAGKADFABigAxQAYoA + MUAGKADFABigAxQAYoAMUALigAxQAYoATFABigAxQAYoAXFABigAxQAYoAMUAGKADFABigAxQAYoAMUA + GKADFABigAxQAYoAMUAGKAFxQAYoAMUAGKADFABigAxQAYoAMUAGKADFABigAxQAYoAMUAGKAFxQAYoA + MUAGKADFABigAxQAYoAMUAGKADFABigAxQAYoAMUAGKADFABigAxQAYoAMUAGKADFABigAxQAuKADFAB + igAxQAYoAMUAGKADFABigAxQAYoAMUAGKADFABigAxQAuKADFABigAxQAYoAMUAGKADFABigAxQAYoAM + UAGKADFABigAxQAuKADFABigAxQAYoATFABigBcUAGKADFABigAxQAYoAMUAGKADFABigAxQAYoAMUAG + KADFABigAxQAYoAXFABigAxQAYoAMUAGKADFABigAxQAYoAMUAGKADFABigAxQAYoAXFABigAxQAYoAM + UAGKADFABigAxQAYoAMUAGKADFABigAxQAYoAMUAGKADFABigAxQAYoAMUALigAxQAYoAMUAGKADFABi + gAxQAYoAMUAGKADFABigAxQAYoAMUAGKADFAC4oAMUAGKADFABigAxQAYoAMUAGKADFABigAxQAYoAMU + AGKADFABigBcUAGKADFABigAxQAYpgGKQBigAxQAYoAMUAGKYBigAxSAMUAGKYBigAxQAYoAMUgDFABi + mAYoAMUgFxQAYoAMUwDFABikAYoAMUAGKADFMAxQAYpAGKYBigAxQAYoAMUgFxTAMUAGKADFABikAYpg + GKADFIAxQAYoAMUAGKYBigAxSAMUAGKADFABigAxTAMUAGKQBigAxQAuKYBigAxSAMUAGKYBigAxQAYp + AGKADFABimAYpAGKADFABigAxTAMUAGKQC4oAMUAGKYBigAxSAMUwDFABigAxQAYoAMUgDFMAxQAYoAM + UAGKQBimAuKADFIAxQAYoAMUAGKYBigAxSAMUAGKADFABimAYoAMUgDFABigAxQAYpgGKADFIAxQAYpg + GKAFxQAYpAGKADFMAxQAYpAGKADFABigAxTAMUAGKQBigAxQAYpgGKADFIAxTAXFABigAxQAYoAMUAGK + ADFABigAxQAYoAMUAGKADFABigAxQAYoAXFACYoAMUAGKADFABigBcUAGKADFABigAxQAYoAMUAGKADF + ABigAxQAYoAMUAGKADFABigAxQAYoAXFABigAxQAYoAMUAGKADFABigAxQAYoAMUAGKADFABigAxQAYo + AMUALigAxQAYoAMUAGKADFABigAxQAYoAMUAGKADFABigAxQAYoAMUAGKADFABigAxQAYoAMUAGKAFxQ + AYoAMUAGKADFABigAxQAYoAMUAGKADFABigAxQAYoAMUAGKADFABigBcUAGKADFABigAxQAYoAMUAGKA + DFABigAxQAYoAMUAGKADFABigBcUAGKADFACYoAMUAGKADFAC4oAMUAGKADFABigAxQAYoAMUAGKADFA + BigAxQAYoAMUAGKADFAC4oAMUAGKADFABigAxQAYoAMUAGKADFABigAxQAYoAMUAGKADFABigAxQAuKA + DFABigAxQAYoAMUAGKADFABigAxQAYoAMUAGKADFABigAxQAYoAMUAGKADFABigAxQAYoAXFABigAxQA + YoAMUAGKADFABigAxQAYoAMUAGKADFABigAxQAYoAMUAGKAFxQAYoAMUAGKADFABigAxQAYoAMUAGKAD + FABigAxQAYoAMUAGKAFxQAYoAMUAGKADFACYoAMUALigAxQAYoAMUAGKADFABigAxQAYoAMUAGKADFAB + igAxQAYoAMUALigAxQAYoAMUAGKADFABigAxQAYoAMUAGKADFABigAxQAYoAMUAGKADFABigAxQAuKAD + FABigAxQAYoAMUAGKADFABigAxQAYoAMUAGKADFABigAxQAYoAMUAGKADFABigAxQAYoAMUAGKAFxQAY + oAMUAGKADFABigAxQAYoAMUAGKADFABigAxQAYoAMUAGKAFxQAYoAMUAGKADFABigAxQAYoAMUAGKADF + ABigAxQAYoAMUAGKAFxQAYoAMUAGKADFACYoAMUALigAxQAYoAMUAGKADFABigAxQAYoAMUAGKADFABi + gAxQAYoAMUAGKADFAC4oAMUAGKADFABigAxQAYoAMUAGKADFABigAxQAYoAMUAGKADFAC4oAMUAGKADF + ABigAxQAYoAMUAGKADFABigAxQAYoAMUAGKADFABigAxQAYoAMUAGKADFABigBcUAGKADFABigAxQAYo + AMUAGKADFABigAxQAYoAMUAGKADFABigAxQAYoAMUAGKAFxQAYoAMUAGKADFABigAxQAYoAMUAGKADFA + BigAxQAYoAMUAGKADFABigBcUAGKADFACYoAMUAGKADFAC4oAMUAGKADFABigAxQAYoAMUAGKADFABig + AxQAYoAMUAGKADFAC4oAMUAGKADFABigAxQAYoAMUAGKADFABigAxQAYoAMUAGKADFABigBcUAGKADFA + BigAxQAYoAMUAGKADFABigAxQAYoAMUAGKADFABigAxQAYoAMUAGKADFABigAxQAYoAMUAGKADFAC4oA + MUAGKADFABigAxQAYoAMUAGKADFABigAxQAYoAMUAGKADFABigAxQAuKADFABigAxQAYoAMUAGKADFAB + igAxQAYoAMUAGKADFABigAxQAuKADFACYoAMUAGKADFABigBcUAGKADFABigAxQAYoAMUAGKADFABigA + xQAYoAMUAGKADFABigBcUAGKADFABigAxQAYoAMUAGKBBigAxQMMUAGKBBigAxQAYoGGKADFAgxQAYoG + GKAFxQAYoAMUCDFABigYYoAMUAGKBBigAxQAYoGGKADFABigAxQIMUAGKBhigQYoAMUAGKADFAwxQIMU + AGKAFxQAYoAMUDDFAgxQAYoGGKADFABigQYoAMUDDFABigAxQAYoEGKAFxQMMUAGKBBigAxQAYoGGKAD + FAgxQAYoGGKADFABigAxQIMUDDFAC4oAMUAJigAxQIMUAGKBhigBcUAGKADFAgxQAYoGGKBBigAxQAYo + AMUAGKADFABigAxQAYoAMUAGKADFABigAxQAuKADFABigAxQAYoAMUAGKADFABigAxQAYoAMUAGKADFA + BigAxQAYoAMUALigAxQAYoAMUAGKADFABigAxQAYoAMUAGKADFABigAxQAYoAMUAGKADFABigAxQAYoA + MUAGKAFxQAYoAMUAGKADFABigAxQAYoAMUAGKADFABigAxQAYoAMUAGKAFxQAYoAMUAGKADFABigAxQA + YoAMUAGKADFABigAxQAYoAMUAGKADFABigAxQAYoAMUAGKADFABigAxQAuKADFABigAxQAYoAMUAGKAD + FABigAxQAYoAMUAGKADFABigAxQAuKADFABigAxQAYoAMUAGKADFABigAxQAYoAMUAGKADFABigAxQAY + oAMUAGKADFABigBcUAGKADFABigAxQAYoAMUAGKADFABigAxQAYoAMUAGKADFABigAxQAYoAMUAGKADF + ABigAxQAuKADFABigAxQAYoAMUAGKADFABigAxQAYoAMUAGKADFABigAxQAYoAMUALigAxQAYoAMUAGK + ADFABigAxQAYoAMUAGKADFABigAxQAYoAMUAGKADFABigAxQAYoAMUAGKAFxQAYoAMUAGKADFABigAxQ + AYoAMUAGKADFABigAxQAYoAMUAGKADFABigAxQAYoAXFABigAxQAYoAMUAGKADFABigAxQAYoAMUAGKA + DFABigAxQAYoAXFABigAxQAYoAMUAGKAExQAuKADFABigAxQAYoAMUAGKADFABigAxQAYoAMUAGKADFA + BigAxQAYoAMUALigAxQAYoAMUAGKADFABigAxQAYoAMUAGKADFABigAxQAYoAMUALigAxQAYoAMUAGKA + DFABigAxQAYoAMUAGKADFABigAxQAYoAMUAGKADFABigAxQAYoAMUAGKADFABigBcUAGKADFABigAxQA + YoAMUAGKADFABigAxQAYoAMUAGKADFABigBcUAGKADFABigAxQAYoAMUAGKADFABigAxQAYoAMUAGKAD + FABigBcUAGKADFABigAxQAYoAMUAGKADFABigAxQAYoAMUAGKADFABigAxQAYoAMUAGKADFABigAxQAY + oAMUALigAxQAYoAMUAGKADFABigAxQAYoAMUAGKADFABigAxQAYoAMUALigAxQAYoAMUAGKADFABigAx + QAYoAMUAGKADFABigAxQAYoAMUALigBMUAGKADFABigAxQAYoAXFABigAxQAYoAMUAGKADFABigAxQAY + oAMUAGKADFABigAxQAYoAMUAGKAFxQAYoAMUAGKADFABigAxQAYoAMUAGKADFABigAxQAYoAMUAGKAFx + QAYoAMUAGKADFABigAxQAYoAMUAGKADFABigAxQAYoAMUAGKADFABigAxQAYoAMUAGKADFABigAxQAuK + ADFABigAxQAYoAMUAGKADFABigAxQAYoAMUAGKADFABigAxQAuKADFABigAxQAYoAMUAGKADFABigAxQ + AYoAMUAGKADFABigAxQAuKADFABigBMUAGKADFABigBcUAGKADFABigAxQAYoAMUAGKADFABigAxQAYo + AMUAGKADFABigAxQAYoAXFABigAxQAYoAMUAGKADFABigAxQAYoAMUAGKADFABigAxQAYoAXFABigAxQ + AYoAMUAGKADFABigAxQAYoAMUAGKADFABigAxQAYoAMUAGKADFABigAxQAYoAMUALigAxQAYoAMUAGKA + DFABigAxQAYoAMUAGKADFABigAxQAYoAMUAGKADFAC4oAMUAGKADFABigAxQAYoAMUAGKADFABigAxQA + YoAMUAGKADFABigBcUAGKADFABigBMUAGKAFxQAYoAMUAGKADFABigAxQAYoAMUAGKADFABigAxQAYoA + MUAGKADFABigBcUAGKADFABigAxQAYoAMUAGKADFABigAxQAYoAMUAGKADFABigBcUAGKADFABigAxQA + YoAMUAGKADFABigAxQAYoAMUAGKADFABigAxQAYoAMUAGKADFABigAxQAuKADFABigAxQAYoAMUAGKAD + FABigAxQAYoAMUAGKADFABigAxQAYoAMUALigAxQAYoAMUAGKADFABigAxQAYoAMUAGKADFABigAxQAY + oAMUAGKAFxQAYoAMUAGKADFABigAxQAYoAMUAGKADFABigAxQAYoAMUAGKADFABigAxQAYoAMUAGKADF + AC4oAMUAGKADFABigAxQAYoAMUAGKADFABigAxQAYoAMUAGKADFABigAxQAuKADFABigAxQAYoAMUAGK + ADFABigAxQAYoAMUAGKADFABigAxQAYoAMUAGKADFABigAxQAuKADFABigAxQAYoAMUAGKADFABigAxQ + AYoAMUAGKADFABigAxQAYoAMUALigAxQAYoAMUAGKADFABigAxQAYoAMUAGKADFABigAxQAYoAMUAGKA + FxQAYoAMUAGKADFABigAxQAYoAMUAGKADFABigAxQAYoAMUAGKADFABigAxQAYoAMUAGKADFAC4oAMUA + GKADFABigAxQAYoAMUAGKADFABigAxQAYoAMUAGKADFABigAxQAuKADFABigAxQAYoAMUAGKADFABigA + xQAYoAMUAGKAFxQAYoAMUAGKADaKADaKADFABigAxQAYoAMUAGKADFABigAxQAuBQAYFABgUAGBQAYFA + BigAxQAYoAMUAGKADFABigAxQAYoAMUAGKADFABigAxQAYoAMUAGKADFABigAoAKACgAoAKACgAoAKAC + gAoAKACgAoAKACgD/9k= + + + \ No newline at end of file diff --git a/Ping Tester Aluminium/GUI/Form_Error.Designer.cs b/Ping Tester Aluminium/GUI/Form_Error.Designer.cs new file mode 100644 index 0000000..5c5107e --- /dev/null +++ b/Ping Tester Aluminium/GUI/Form_Error.Designer.cs @@ -0,0 +1,100 @@ +namespace PingTesterAluminium +{ + partial class Form_Error + { + /// + /// Required designer variable. + /// + private System.ComponentModel.IContainer components = null; + + /// + /// Clean up any resources being used. + /// + /// true if managed resources should be disposed; otherwise, false. + protected override void Dispose(bool disposing) + { + if (disposing && (components != null)) + { + components.Dispose(); + } + base.Dispose(disposing); + } + + #region Windows Form Designer generated code + + /// + /// Required method for Designer support - do not modify + /// the contents of this method with the code editor. + /// + private void InitializeComponent() + { + System.ComponentModel.ComponentResourceManager resources = new System.ComponentModel.ComponentResourceManager(typeof(Form_Error)); + this.button_ok = new PingTesterAluminium.AluminiumButton(); + this.label_error = new PingTesterAluminium.AluminiumLabel(); + this.panel_main.SuspendLayout(); + this.SuspendLayout(); + // + // panel_main + // + this.panel_main.Controls.Add(this.label_error); + this.panel_main.Controls.Add(this.button_ok); + this.panel_main.Size = new System.Drawing.Size(408, 172); + // + // button_ok + // + this.button_ok.Anchor = ((System.Windows.Forms.AnchorStyles)((System.Windows.Forms.AnchorStyles.Bottom | System.Windows.Forms.AnchorStyles.Right))); + this.button_ok.BackColor = System.Drawing.Color.Silver; + this.button_ok.BackgroundImage = ((System.Drawing.Image)(resources.GetObject("button_ok.BackgroundImage"))); + this.button_ok.BackgroundImageLayout = System.Windows.Forms.ImageLayout.Stretch; + this.button_ok.Cursor = System.Windows.Forms.Cursors.Hand; + this.button_ok.DialogResult = System.Windows.Forms.DialogResult.OK; + this.button_ok.FlatStyle = System.Windows.Forms.FlatStyle.Flat; + this.button_ok.Font = new System.Drawing.Font("Visitor TT1 BRK", 15F); + this.button_ok.Location = new System.Drawing.Point(295, 127); + this.button_ok.Name = "button_ok"; + this.button_ok.Size = new System.Drawing.Size(100, 32); + this.button_ok.TabIndex = 0; + this.button_ok.Text = "Ok"; + this.button_ok.UseVisualStyleBackColor = false; + this.button_ok.Click += new System.EventHandler(this.button_ok_Click); + // + // label_error + // + this.label_error.Anchor = ((System.Windows.Forms.AnchorStyles)((((System.Windows.Forms.AnchorStyles.Top | System.Windows.Forms.AnchorStyles.Bottom) + | System.Windows.Forms.AnchorStyles.Left) + | System.Windows.Forms.AnchorStyles.Right))); + this.label_error.AutoEllipsis = true; + this.label_error.BackColor = System.Drawing.Color.Transparent; + this.label_error.Location = new System.Drawing.Point(8, 42); + this.label_error.Margin = new System.Windows.Forms.Padding(0); + this.label_error.Name = "label_error"; + this.label_error.Size = new System.Drawing.Size(390, 74); + this.label_error.TabIndex = 1; + this.label_error.Text = "Error"; + this.label_error.TextAlign = System.Drawing.ContentAlignment.MiddleLeft; + // + // Form_Error + // + this.AboutButtonVisible = true; + this.AcceptButton = this.button_ok; + this.AutoScaleDimensions = new System.Drawing.SizeF(16F, 24F); + this.AutoScaleMode = System.Windows.Forms.AutoScaleMode.Font; + this.CancelButton = this.button_ok; + this.ClientSize = new System.Drawing.Size(408, 172); + this.MinimizeButtonVisible = true; + this.Name = "Form_Error"; + this.SettingsButtonVisible = true; + this.ShowInTaskbar = false; + this.Text = "Error"; + this.Title = "Error"; + this.panel_main.ResumeLayout(false); + this.ResumeLayout(false); + + } + + #endregion + + private AluminiumButton button_ok; + private AluminiumLabel label_error; + } +} \ No newline at end of file diff --git a/Ping Tester Aluminium/GUI/Form_Error.cs b/Ping Tester Aluminium/GUI/Form_Error.cs new file mode 100644 index 0000000..13dd88c --- /dev/null +++ b/Ping Tester Aluminium/GUI/Form_Error.cs @@ -0,0 +1,30 @@ +using System; +using System.Collections.Generic; +using System.ComponentModel; +using System.Data; +using System.Drawing; +using System.Linq; +using System.Text; +using System.Windows.Forms; + +namespace PingTesterAluminium +{ + public partial class Form_Error : AluminiumForm + { + public Form_Error(string errorMessage) + { + InitializeComponent(); + label_error.Text = errorMessage; + } + + public static DialogResult Show(string errorMessage, IWin32Window owner = null) + { + return new Form_Error(errorMessage).ShowDialog(owner); + } + + private void button_ok_Click(object sender, EventArgs e) + { + Close(); + } + } +} diff --git a/Ping Tester Aluminium/GUI/Form_Error.resx b/Ping Tester Aluminium/GUI/Form_Error.resx new file mode 100644 index 0000000..9c60792 --- /dev/null +++ b/Ping Tester Aluminium/GUI/Form_Error.resx @@ -0,0 +1,212 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + text/microsoft-resx + + + 2.0 + + + System.Resources.ResXResourceReader, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089 + + + System.Resources.ResXResourceWriter, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089 + + + + + /9j/4AAQSkZJRgABAQEAAAAAAAD/2wBDAAYEBQYFBAYGBQYHBwYIChAKCgkJChQODwwQFxQYGBcUFhYa + HSUfGhsjHBYWICwgIyYnKSopGR8tMC0oMCUoKSj/2wBDAQcHBwoIChMKChMoGhYaKCgoKCgoKCgoKCgo + KCgoKCgoKCgoKCgoKCgoKCgoKCgoKCgoKCgoKCgoKCgoKCgoKCj/wAARCAEsAZADAREAAhEBAxEB/8QA + HwAAAQUBAQEBAQEAAAAAAAAAAAECAwQFBgcICQoL/8QAtRAAAgEDAwIEAwUFBAQAAAF9AQIDAAQRBRIh + MUEGE1FhByJxFDKBkaEII0KxwRVS0fAkM2JyggkKFhcYGRolJicoKSo0NTY3ODk6Q0RFRkdISUpTVFVW + V1hZWmNkZWZnaGlqc3R1dnd4eXqDhIWGh4iJipKTlJWWl5iZmqKjpKWmp6ipqrKztLW2t7i5usLDxMXG + x8jJytLT1NXW19jZ2uHi4+Tl5ufo6erx8vP09fb3+Pn6/8QAHwEAAwEBAQEBAQEBAQAAAAAAAAECAwQF + BgcICQoL/8QAtREAAgECBAQDBAcFBAQAAQJ3AAECAxEEBSExBhJBUQdhcRMiMoEIFEKRobHBCSMzUvAV + YnLRChYkNOEl8RcYGRomJygpKjU2Nzg5OkNERUZHSElKU1RVVldYWVpjZGVmZ2hpanN0dXZ3eHl6goOE + hYaHiImKkpOUlZaXmJmaoqOkpaanqKmqsrO0tba3uLm6wsPExcbHyMnK0tPU1dbX2Nna4uPk5ebn6Onq + 8vP09fb3+Pn6/9oADAMBAAIRAxEAPwD0rFIYYoAMUAGKADFABigAxQAYoAMUAGKADFABigAxQAYoAMUA + LigAxQAYoAMUAGKADFABigAxQAYoAMUAGKADFABigAxQAYoAMUALigAxQAYoAMUAGKADFABigAxQAYoA + MUAGKADFABigAxQAYoAMUALigAxQAYoATFABigAxQAYoAXFABigAxQAYoAMUAGKADFABigAxQAYoAMUA + GKADFABigAxQAYoAMUAGKAFxQAYoAMUAGKADFABigAxQAYoAMUAGKADFABigAxQAYoAMUAGKAFxQAYoA + MUAGKADFABigAxQAYoAMUAGKADFABigAxQAYoAMUAGKADFABigAxQAYoAMUAGKADFABigAxQAuKADFAB + igAxQAYoAMUAGKADFABigAxQAYoAMUAGKADFABigAxQAuKADFABigAxQAYoAMUAGKADFABigAxQAYoAM + UAGKADFABigAxQAuKADFABigAxQAYoATFABigBcUAGKADFABigAxQAYoAMUAGKADFABigAxQAYoAMUAG + KADFABigAxQAYoAXFABigAxQAYoAMUAGKADFABigAxQAYoAMUAGKADFABigAxQAYoAXFABigAxQAYoAM + UAGKADFABigAxQAYoAMUAGKADFABigAxQAYoAMUAGKADFABigAxQAYoAMUALigAxQAYoAMUAGKADFABi + gAxQAYoAMUAGKADFABigAxQAYoAMUAGKADFAC4oAMUAGKADFABigAxQAYoAMUAGKADFABigAxQAYoAMU + AGKADFABigBcUAGKADFABigAxQAYpgGKQBigAxQAYoAMUAGKYBigAxSAMUAGKYBigAxQAYoAMUgDFABi + mAYoAMUgFxQAYoAMUwDFABikAYoAMUAGKADFMAxQAYpAGKYBigAxQAYoAMUgFxTAMUAGKADFABikAYpg + GKADFIAxQAYoAMUAGKYBigAxSAMUAGKADFABigAxTAMUAGKQBigAxQAuKYBigAxSAMUAGKYBigAxQAYp + AGKADFABimAYpAGKADFABigAxTAMUAGKQC4oAMUAGKYBigAxSAMUwDFABigAxQAYoAMUgDFMAxQAYoAM + UAGKQBimAuKADFIAxQAYoAMUAGKYBigAxSAMUAGKADFABimAYoAMUgDFABigAxQAYpgGKADFIAxQAYpg + GKAFxQAYpAGKADFMAxQAYpAGKADFABigAxTAMUAGKQBigAxQAYpgGKADFIAxTAXFABigAxQAYoAMUAGK + ADFABigAxQAYoAMUAGKADFABigAxQAYoAXFACYoAMUAGKADFABigBcUAGKADFABigAxQAYoAMUAGKADF + ABigAxQAYoAMUAGKADFABigAxQAYoAXFABigAxQAYoAMUAGKADFABigAxQAYoAMUAGKADFABigAxQAYo + AMUALigAxQAYoAMUAGKADFABigAxQAYoAMUAGKADFABigAxQAYoAMUAGKADFABigAxQAYoAMUAGKAFxQ + AYoAMUAGKADFABigAxQAYoAMUAGKADFABigAxQAYoAMUAGKADFABigBcUAGKADFABigAxQAYoAMUAGKA + DFABigAxQAYoAMUAGKADFABigBcUAGKADFACYoAMUAGKADFAC4oAMUAGKADFABigAxQAYoAMUAGKADFA + BigAxQAYoAMUAGKADFAC4oAMUAGKADFABigAxQAYoAMUAGKADFABigAxQAYoAMUAGKADFABigAxQAuKA + DFABigAxQAYoAMUAGKADFABigAxQAYoAMUAGKADFABigAxQAYoAMUAGKADFABigAxQAYoAXFABigAxQA + YoAMUAGKADFABigAxQAYoAMUAGKADFABigAxQAYoAMUAGKAFxQAYoAMUAGKADFABigAxQAYoAMUAGKAD + FABigAxQAYoAMUAGKAFxQAYoAMUAGKADFACYoAMUALigAxQAYoAMUAGKADFABigAxQAYoAMUAGKADFAB + igAxQAYoAMUALigAxQAYoAMUAGKADFABigAxQAYoAMUAGKADFABigAxQAYoAMUAGKADFABigAxQAuKAD + FABigAxQAYoAMUAGKADFABigAxQAYoAMUAGKADFABigAxQAYoAMUAGKADFABigAxQAYoAMUAGKAFxQAY + oAMUAGKADFABigAxQAYoAMUAGKADFABigAxQAYoAMUAGKAFxQAYoAMUAGKADFABigAxQAYoAMUAGKADF + ABigAxQAYoAMUAGKAFxQAYoAMUAGKADFACYoAMUALigAxQAYoAMUAGKADFABigAxQAYoAMUAGKADFABi + gAxQAYoAMUAGKADFAC4oAMUAGKADFABigAxQAYoAMUAGKADFABigAxQAYoAMUAGKADFAC4oAMUAGKADF + ABigAxQAYoAMUAGKADFABigAxQAYoAMUAGKADFABigAxQAYoAMUAGKADFABigBcUAGKADFABigAxQAYo + AMUAGKADFABigAxQAYoAMUAGKADFABigAxQAYoAMUAGKAFxQAYoAMUAGKADFABigAxQAYoAMUAGKADFA + BigAxQAYoAMUAGKADFABigBcUAGKADFACYoAMUAGKADFAC4oAMUAGKADFABigAxQAYoAMUAGKADFABig + AxQAYoAMUAGKADFAC4oAMUAGKADFABigAxQAYoAMUAGKADFABigAxQAYoAMUAGKADFABigBcUAGKADFA + BigAxQAYoAMUAGKADFABigAxQAYoAMUAGKADFABigAxQAYoAMUAGKADFABigAxQAYoAMUAGKADFAC4oA + MUAGKADFABigAxQAYoAMUAGKADFABigAxQAYoAMUAGKADFABigAxQAuKADFABigAxQAYoAMUAGKADFAB + igAxQAYoAMUAGKADFABigAxQAuKADFACYoAMUAGKADFABigBcUAGKADFABigAxQAYoAMUAGKADFABigA + xQAYoAMUAGKADFABigBcUAGKADFABigAxQAYoAMUAGKBBigAxQMMUAGKBBigAxQAYoGGKADFAgxQAYoG + GKAFxQAYoAMUCDFABigYYoAMUAGKBBigAxQAYoGGKADFABigAxQIMUAGKBhigQYoAMUAGKADFAwxQIMU + AGKAFxQAYoAMUDDFAgxQAYoGGKADFABigQYoAMUDDFABigAxQAYoEGKAFxQMMUAGKBBigAxQAYoGGKAD + FAgxQAYoGGKADFABigAxQIMUDDFAC4oAMUAJigAxQIMUAGKBhigBcUAGKADFAgxQAYoGGKBBigAxQAYo + AMUAGKADFABigAxQAYoAMUAGKADFABigAxQAuKADFABigAxQAYoAMUAGKADFABigAxQAYoAMUAGKADFA + BigAxQAYoAMUALigAxQAYoAMUAGKADFABigAxQAYoAMUAGKADFABigAxQAYoAMUAGKADFABigAxQAYoA + MUAGKAFxQAYoAMUAGKADFABigAxQAYoAMUAGKADFABigAxQAYoAMUAGKAFxQAYoAMUAGKADFABigAxQA + YoAMUAGKADFABigAxQAYoAMUAGKADFABigAxQAYoAMUAGKADFABigAxQAuKADFABigAxQAYoAMUAGKAD + FABigAxQAYoAMUAGKADFABigAxQAuKADFABigAxQAYoAMUAGKADFABigAxQAYoAMUAGKADFABigAxQAY + oAMUAGKADFABigBcUAGKADFABigAxQAYoAMUAGKADFABigAxQAYoAMUAGKADFABigAxQAYoAMUAGKADF + ABigAxQAuKADFABigAxQAYoAMUAGKADFABigAxQAYoAMUAGKADFABigAxQAYoAMUALigAxQAYoAMUAGK + ADFABigAxQAYoAMUAGKADFABigAxQAYoAMUAGKADFABigAxQAYoAMUAGKAFxQAYoAMUAGKADFABigAxQ + AYoAMUAGKADFABigAxQAYoAMUAGKADFABigAxQAYoAXFABigAxQAYoAMUAGKADFABigAxQAYoAMUAGKA + DFABigAxQAYoAXFABigAxQAYoAMUAGKAExQAuKADFABigAxQAYoAMUAGKADFABigAxQAYoAMUAGKADFA + BigAxQAYoAMUALigAxQAYoAMUAGKADFABigAxQAYoAMUAGKADFABigAxQAYoAMUALigAxQAYoAMUAGKA + DFABigAxQAYoAMUAGKADFABigAxQAYoAMUAGKADFABigAxQAYoAMUAGKADFABigBcUAGKADFABigAxQA + YoAMUAGKADFABigAxQAYoAMUAGKADFABigBcUAGKADFABigAxQAYoAMUAGKADFABigAxQAYoAMUAGKAD + FABigBcUAGKADFABigAxQAYoAMUAGKADFABigAxQAYoAMUAGKADFABigAxQAYoAMUAGKADFABigAxQAY + oAMUALigAxQAYoAMUAGKADFABigAxQAYoAMUAGKADFABigAxQAYoAMUALigAxQAYoAMUAGKADFABigAx + QAYoAMUAGKADFABigAxQAYoAMUALigBMUAGKADFABigAxQAYoAXFABigAxQAYoAMUAGKADFABigAxQAY + oAMUAGKADFABigAxQAYoAMUAGKAFxQAYoAMUAGKADFABigAxQAYoAMUAGKADFABigAxQAYoAMUAGKAFx + QAYoAMUAGKADFABigAxQAYoAMUAGKADFABigAxQAYoAMUAGKADFABigAxQAYoAMUAGKADFABigAxQAuK + ADFABigAxQAYoAMUAGKADFABigAxQAYoAMUAGKADFABigAxQAuKADFABigAxQAYoAMUAGKADFABigAxQ + AYoAMUAGKADFABigAxQAuKADFABigBMUAGKADFABigBcUAGKADFABigAxQAYoAMUAGKADFABigAxQAYo + AMUAGKADFABigAxQAYoAXFABigAxQAYoAMUAGKADFABigAxQAYoAMUAGKADFABigAxQAYoAXFABigAxQ + AYoAMUAGKADFABigAxQAYoAMUAGKADFABigAxQAYoAMUAGKADFABigAxQAYoAMUALigAxQAYoAMUAGKA + DFABigAxQAYoAMUAGKADFABigAxQAYoAMUAGKADFAC4oAMUAGKADFABigAxQAYoAMUAGKADFABigAxQA + YoAMUAGKADFABigBcUAGKADFABigBMUAGKAFxQAYoAMUAGKADFABigAxQAYoAMUAGKADFABigAxQAYoA + MUAGKADFABigBcUAGKADFABigAxQAYoAMUAGKADFABigAxQAYoAMUAGKADFABigBcUAGKADFABigAxQA + YoAMUAGKADFABigAxQAYoAMUAGKADFABigAxQAYoAMUAGKADFABigAxQAuKADFABigAxQAYoAMUAGKAD + FABigAxQAYoAMUAGKADFABigAxQAYoAMUALigAxQAYoAMUAGKADFABigAxQAYoAMUAGKADFABigAxQAY + oAMUAGKAFxQAYoAMUAGKADFABigAxQAYoAMUAGKADFABigAxQAYoAMUAGKADFABigAxQAYoAMUAGKADF + AC4oAMUAGKADFABigAxQAYoAMUAGKADFABigAxQAYoAMUAGKADFABigAxQAuKADFABigAxQAYoAMUAGK + ADFABigAxQAYoAMUAGKADFABigAxQAYoAMUAGKADFABigAxQAuKADFABigAxQAYoAMUAGKADFABigAxQ + AYoAMUAGKADFABigAxQAYoAMUALigAxQAYoAMUAGKADFABigAxQAYoAMUAGKADFABigAxQAYoAMUAGKA + FxQAYoAMUAGKADFABigAxQAYoAMUAGKADFABigAxQAYoAMUAGKADFABigAxQAYoAMUAGKADFAC4oAMUA + GKADFABigAxQAYoAMUAGKADFABigAxQAYoAMUAGKADFABigAxQAuKADFABigAxQAYoAMUAGKADFABigA + xQAYoAMUAGKAFxQAYoAMUAGKADaKADaKADFABigAxQAYoAMUAGKADFABigAxQAuBQAYFABgUAGBQAYFA + BigAxQAYoAMUAGKADFABigAxQAYoAMUAGKADFABigAxQAYoAMUAGKADFABigAoAKACgAoAKACgAoAKAC + gAoAKACgAoAKACgD/9k= + + + \ No newline at end of file diff --git a/Ping Tester Aluminium/GUI/Form_Main.Designer.cs b/Ping Tester Aluminium/GUI/Form_Main.Designer.cs new file mode 100644 index 0000000..d73cbd4 --- /dev/null +++ b/Ping Tester Aluminium/GUI/Form_Main.Designer.cs @@ -0,0 +1,359 @@ +namespace PingTesterAluminium +{ + partial class Form_Main + { + /// + /// Required designer variable. + /// + private System.ComponentModel.IContainer components = null; + + /// + /// Clean up any resources being used. + /// + /// true if managed resources should be disposed; otherwise, false. + protected override void Dispose(bool disposing) + { + if (disposing && (components != null)) + { + components.Dispose(); + } + base.Dispose(disposing); + } + + #region Windows Form Designer generated code + + /// + /// Required method for Designer support - do not modify + /// the contents of this method with the code editor. + /// + private void InitializeComponent() + { + this.components = new System.ComponentModel.Container(); + System.ComponentModel.ComponentResourceManager resources = new System.ComponentModel.ComponentResourceManager(typeof(Form_Main)); + this.button_play = new PingTesterAluminium.AluminiumButton(); + this.label_host = new PingTesterAluminium.AluminiumLabel(); + this.label_outBuffer = new PingTesterAluminium.AluminiumLabel(); + this.label_time = new PingTesterAluminium.AluminiumLabel(); + this.label_status = new PingTesterAluminium.AluminiumLabel(); + this.label_outTtl = new PingTesterAluminium.AluminiumLabel(); + this.label_rating = new PingTesterAluminium.AluminiumLabel(); + this.panel_graph = new System.Windows.Forms.Panel(); + this.progressBar_time = new System.Windows.Forms.ProgressBar(); + this.timer_main = new System.Windows.Forms.Timer(this.components); + this.backgroundWorker_main = new System.ComponentModel.BackgroundWorker(); + this.label_notFragmented = new PingTesterAluminium.AluminiumLabel(); + this.label_inBuffer = new PingTesterAluminium.AluminiumLabel(); + this.label_inTtl = new PingTesterAluminium.AluminiumLabel(); + this.label_address = new PingTesterAluminium.AluminiumLabel(); + this.panel_outbound = new System.Windows.Forms.Panel(); + this.panel_inbound = new System.Windows.Forms.Panel(); + this.label_outbound = new PingTesterAluminium.AluminiumLabel(); + this.label_inbound = new PingTesterAluminium.AluminiumLabel(); + this.panel_main.SuspendLayout(); + this.panel_outbound.SuspendLayout(); + this.panel_inbound.SuspendLayout(); + this.SuspendLayout(); + // + // panel_main + // + this.panel_main.Controls.Add(this.label_inbound); + this.panel_main.Controls.Add(this.label_outbound); + this.panel_main.Controls.Add(this.panel_inbound); + this.panel_main.Controls.Add(this.panel_outbound); + this.panel_main.Controls.Add(this.panel_graph); + this.panel_main.Controls.Add(this.label_rating); + this.panel_main.Controls.Add(this.progressBar_time); + this.panel_main.Controls.Add(this.label_status); + this.panel_main.Controls.Add(this.label_time); + this.panel_main.Controls.Add(this.button_play); + this.panel_main.Size = new System.Drawing.Size(735, 506); + // + // button_play + // + this.button_play.BackColor = System.Drawing.Color.FromArgb(((int)(((byte)(64)))), ((int)(((byte)(64)))), ((int)(((byte)(64))))); + this.button_play.BackgroundImage = ((System.Drawing.Image)(resources.GetObject("button_play.BackgroundImage"))); + this.button_play.BackgroundImageLayout = System.Windows.Forms.ImageLayout.Stretch; + this.button_play.Cursor = System.Windows.Forms.Cursors.Hand; + this.button_play.FlatStyle = System.Windows.Forms.FlatStyle.Flat; + this.button_play.Font = new System.Drawing.Font("Visitor TT1 BRK", 15F); + this.button_play.Image = global::PingTesterAluminium.Properties.Resources.play; + this.button_play.Location = new System.Drawing.Point(668, 49); + this.button_play.Name = "button_play"; + this.button_play.Size = new System.Drawing.Size(40, 32); + this.button_play.TabIndex = 7; + this.button_play.UseVisualStyleBackColor = false; + this.button_play.Click += new System.EventHandler(this.button_play_Click); + // + // label_host + // + this.label_host.AutoEllipsis = true; + this.label_host.BackColor = System.Drawing.Color.Transparent; + this.label_host.Font = new System.Drawing.Font("Visitor TT1 BRK", 20F); + this.label_host.ImageAlign = System.Drawing.ContentAlignment.MiddleLeft; + this.label_host.Location = new System.Drawing.Point(27, 19); + this.label_host.Margin = new System.Windows.Forms.Padding(0); + this.label_host.Name = "label_host"; + this.label_host.Size = new System.Drawing.Size(285, 32); + this.label_host.TabIndex = 0; + this.label_host.Text = "localhost"; + this.label_host.TextAlign = System.Drawing.ContentAlignment.MiddleLeft; + // + // label_outBuffer + // + this.label_outBuffer.AutoEllipsis = true; + this.label_outBuffer.BackColor = System.Drawing.Color.Transparent; + this.label_outBuffer.Font = new System.Drawing.Font("Visitor TT1 BRK", 20F); + this.label_outBuffer.ImageAlign = System.Drawing.ContentAlignment.MiddleLeft; + this.label_outBuffer.Location = new System.Drawing.Point(27, 61); + this.label_outBuffer.Margin = new System.Windows.Forms.Padding(0); + this.label_outBuffer.Name = "label_outBuffer"; + this.label_outBuffer.Size = new System.Drawing.Size(285, 32); + this.label_outBuffer.TabIndex = 4; + this.label_outBuffer.Text = "32 bytes"; + this.label_outBuffer.TextAlign = System.Drawing.ContentAlignment.MiddleLeft; + // + // label_time + // + this.label_time.AutoEllipsis = true; + this.label_time.BackColor = System.Drawing.Color.Transparent; + this.label_time.ImageAlign = System.Drawing.ContentAlignment.MiddleLeft; + this.label_time.Location = new System.Drawing.Point(19, 121); + this.label_time.Margin = new System.Windows.Forms.Padding(0); + this.label_time.Name = "label_time"; + this.label_time.Size = new System.Drawing.Size(689, 32); + this.label_time.TabIndex = 3; + this.label_time.Text = "10 ms"; + this.label_time.TextAlign = System.Drawing.ContentAlignment.MiddleLeft; + // + // label_status + // + this.label_status.AutoEllipsis = true; + this.label_status.BackColor = System.Drawing.Color.Transparent; + this.label_status.ImageAlign = System.Drawing.ContentAlignment.MiddleLeft; + this.label_status.Location = new System.Drawing.Point(19, 89); + this.label_status.Margin = new System.Windows.Forms.Padding(0); + this.label_status.Name = "label_status"; + this.label_status.Size = new System.Drawing.Size(689, 32); + this.label_status.TabIndex = 2; + this.label_status.Text = "Success"; + this.label_status.TextAlign = System.Drawing.ContentAlignment.MiddleLeft; + // + // label_outTtl + // + this.label_outTtl.AutoEllipsis = true; + this.label_outTtl.BackColor = System.Drawing.Color.Transparent; + this.label_outTtl.Font = new System.Drawing.Font("Visitor TT1 BRK", 20F); + this.label_outTtl.ImageAlign = System.Drawing.ContentAlignment.MiddleLeft; + this.label_outTtl.Location = new System.Drawing.Point(27, 103); + this.label_outTtl.Margin = new System.Windows.Forms.Padding(0); + this.label_outTtl.Name = "label_outTtl"; + this.label_outTtl.Size = new System.Drawing.Size(285, 32); + this.label_outTtl.TabIndex = 5; + this.label_outTtl.Text = "128 TTL"; + this.label_outTtl.TextAlign = System.Drawing.ContentAlignment.MiddleLeft; + // + // label_rating + // + this.label_rating.AutoEllipsis = true; + this.label_rating.BackColor = System.Drawing.Color.Transparent; + this.label_rating.Font = new System.Drawing.Font("Visitor TT1 BRK", 40F); + this.label_rating.Location = new System.Drawing.Point(14, 42); + this.label_rating.Margin = new System.Windows.Forms.Padding(0); + this.label_rating.Name = "label_rating"; + this.label_rating.Size = new System.Drawing.Size(641, 47); + this.label_rating.TabIndex = 1; + this.label_rating.Text = "Good"; + this.label_rating.TextAlign = System.Drawing.ContentAlignment.MiddleLeft; + // + // panel_graph + // + this.panel_graph.BackgroundImage = global::PingTesterAluminium.Properties.Resources.background; + this.panel_graph.BackgroundImageLayout = System.Windows.Forms.ImageLayout.Stretch; + this.panel_graph.BorderStyle = System.Windows.Forms.BorderStyle.FixedSingle; + this.panel_graph.Location = new System.Drawing.Point(21, 182); + this.panel_graph.Name = "panel_graph"; + this.panel_graph.Size = new System.Drawing.Size(687, 65); + this.panel_graph.TabIndex = 6; + // + // progressBar_time + // + this.progressBar_time.BackColor = System.Drawing.Color.FromArgb(((int)(((byte)(224)))), ((int)(((byte)(224)))), ((int)(((byte)(224))))); + this.progressBar_time.ForeColor = System.Drawing.Color.Silver; + this.progressBar_time.Location = new System.Drawing.Point(23, 157); + this.progressBar_time.Margin = new System.Windows.Forms.Padding(4); + this.progressBar_time.MarqueeAnimationSpeed = 0; + this.progressBar_time.Maximum = 300; + this.progressBar_time.Name = "progressBar_time"; + this.progressBar_time.Size = new System.Drawing.Size(685, 18); + this.progressBar_time.Step = 0; + this.progressBar_time.Style = System.Windows.Forms.ProgressBarStyle.Continuous; + this.progressBar_time.TabIndex = 0; + this.progressBar_time.Value = 300; + // + // timer_main + // + this.timer_main.Interval = 1000; + this.timer_main.Tick += new System.EventHandler(this.timer_main_Tick); + // + // backgroundWorker_main + // + this.backgroundWorker_main.DoWork += new System.ComponentModel.DoWorkEventHandler(this.backgroundWorker_main_DoWork); + this.backgroundWorker_main.RunWorkerCompleted += new System.ComponentModel.RunWorkerCompletedEventHandler(this.backgroundWorker_main_RunWorkerCompleted); + // + // label_notFragmented + // + this.label_notFragmented.Anchor = ((System.Windows.Forms.AnchorStyles)(((System.Windows.Forms.AnchorStyles.Top | System.Windows.Forms.AnchorStyles.Left) + | System.Windows.Forms.AnchorStyles.Right))); + this.label_notFragmented.AutoEllipsis = true; + this.label_notFragmented.BackColor = System.Drawing.Color.Transparent; + this.label_notFragmented.Font = new System.Drawing.Font("Visitor TT1 BRK", 20F); + this.label_notFragmented.ForeColor = System.Drawing.Color.FromArgb(((int)(((byte)(64)))), ((int)(((byte)(64)))), ((int)(((byte)(64))))); + this.label_notFragmented.ImageAlign = System.Drawing.ContentAlignment.MiddleLeft; + this.label_notFragmented.Location = new System.Drawing.Point(27, 142); + this.label_notFragmented.Margin = new System.Windows.Forms.Padding(0); + this.label_notFragmented.Name = "label_notFragmented"; + this.label_notFragmented.Size = new System.Drawing.Size(285, 32); + this.label_notFragmented.TabIndex = 8; + this.label_notFragmented.Text = "Not Fragmented"; + this.label_notFragmented.TextAlign = System.Drawing.ContentAlignment.MiddleLeft; + // + // label_inBuffer + // + this.label_inBuffer.AutoEllipsis = true; + this.label_inBuffer.BackColor = System.Drawing.Color.Transparent; + this.label_inBuffer.Font = new System.Drawing.Font("Visitor TT1 BRK", 20F); + this.label_inBuffer.ImageAlign = System.Drawing.ContentAlignment.MiddleLeft; + this.label_inBuffer.Location = new System.Drawing.Point(27, 61); + this.label_inBuffer.Margin = new System.Windows.Forms.Padding(0); + this.label_inBuffer.Name = "label_inBuffer"; + this.label_inBuffer.Size = new System.Drawing.Size(285, 32); + this.label_inBuffer.TabIndex = 9; + this.label_inBuffer.Text = "32 bytes"; + this.label_inBuffer.TextAlign = System.Drawing.ContentAlignment.MiddleLeft; + // + // label_inTtl + // + this.label_inTtl.AutoEllipsis = true; + this.label_inTtl.BackColor = System.Drawing.Color.Transparent; + this.label_inTtl.Font = new System.Drawing.Font("Visitor TT1 BRK", 20F); + this.label_inTtl.ImageAlign = System.Drawing.ContentAlignment.MiddleLeft; + this.label_inTtl.Location = new System.Drawing.Point(27, 103); + this.label_inTtl.Margin = new System.Windows.Forms.Padding(0); + this.label_inTtl.Name = "label_inTtl"; + this.label_inTtl.Size = new System.Drawing.Size(285, 32); + this.label_inTtl.TabIndex = 10; + this.label_inTtl.Text = "118 TTL"; + this.label_inTtl.TextAlign = System.Drawing.ContentAlignment.MiddleLeft; + // + // label_address + // + this.label_address.AutoEllipsis = true; + this.label_address.BackColor = System.Drawing.Color.Transparent; + this.label_address.Font = new System.Drawing.Font("Visitor TT1 BRK", 20F); + this.label_address.ImageAlign = System.Drawing.ContentAlignment.MiddleLeft; + this.label_address.Location = new System.Drawing.Point(27, 19); + this.label_address.Margin = new System.Windows.Forms.Padding(0); + this.label_address.Name = "label_address"; + this.label_address.Size = new System.Drawing.Size(285, 32); + this.label_address.TabIndex = 11; + this.label_address.Text = "127.0.0.1"; + this.label_address.TextAlign = System.Drawing.ContentAlignment.MiddleLeft; + // + // panel_outbound + // + this.panel_outbound.BackgroundImage = global::PingTesterAluminium.Properties.Resources.background; + this.panel_outbound.BackgroundImageLayout = System.Windows.Forms.ImageLayout.Stretch; + this.panel_outbound.BorderStyle = System.Windows.Forms.BorderStyle.FixedSingle; + this.panel_outbound.Controls.Add(this.label_outTtl); + this.panel_outbound.Controls.Add(this.label_outBuffer); + this.panel_outbound.Controls.Add(this.label_notFragmented); + this.panel_outbound.Controls.Add(this.label_host); + this.panel_outbound.Location = new System.Drawing.Point(21, 297); + this.panel_outbound.Name = "panel_outbound"; + this.panel_outbound.Size = new System.Drawing.Size(340, 191); + this.panel_outbound.TabIndex = 15; + // + // panel_inbound + // + this.panel_inbound.BackgroundImage = global::PingTesterAluminium.Properties.Resources.background; + this.panel_inbound.BackgroundImageLayout = System.Windows.Forms.ImageLayout.Stretch; + this.panel_inbound.BorderStyle = System.Windows.Forms.BorderStyle.FixedSingle; + this.panel_inbound.Controls.Add(this.label_address); + this.panel_inbound.Controls.Add(this.label_inBuffer); + this.panel_inbound.Controls.Add(this.label_inTtl); + this.panel_inbound.Location = new System.Drawing.Point(368, 297); + this.panel_inbound.Name = "panel_inbound"; + this.panel_inbound.Size = new System.Drawing.Size(340, 191); + this.panel_inbound.TabIndex = 16; + // + // label_outbound + // + this.label_outbound.AutoEllipsis = true; + this.label_outbound.BackColor = System.Drawing.Color.Transparent; + this.label_outbound.Font = new System.Drawing.Font("Visitor TT1 BRK", 20F, System.Drawing.FontStyle.Underline); + this.label_outbound.Location = new System.Drawing.Point(19, 262); + this.label_outbound.Margin = new System.Windows.Forms.Padding(0); + this.label_outbound.Name = "label_outbound"; + this.label_outbound.Size = new System.Drawing.Size(342, 32); + this.label_outbound.TabIndex = 17; + this.label_outbound.Text = "Outbound"; + this.label_outbound.TextAlign = System.Drawing.ContentAlignment.MiddleLeft; + // + // label_inbound + // + this.label_inbound.AutoEllipsis = true; + this.label_inbound.BackColor = System.Drawing.Color.Transparent; + this.label_inbound.Font = new System.Drawing.Font("Visitor TT1 BRK", 20F, System.Drawing.FontStyle.Underline); + this.label_inbound.Location = new System.Drawing.Point(368, 262); + this.label_inbound.Margin = new System.Windows.Forms.Padding(0); + this.label_inbound.Name = "label_inbound"; + this.label_inbound.Size = new System.Drawing.Size(340, 32); + this.label_inbound.TabIndex = 18; + this.label_inbound.Text = "Inbound"; + this.label_inbound.TextAlign = System.Drawing.ContentAlignment.MiddleLeft; + // + // Form_Main + // + this.AboutButtonVisible = true; + this.AutoScaleDimensions = new System.Drawing.SizeF(16F, 24F); + this.AutoScaleMode = System.Windows.Forms.AutoScaleMode.Font; + this.ClientSize = new System.Drawing.Size(735, 506); + this.Icon = ((System.Drawing.Icon)(resources.GetObject("$this.Icon"))); + this.MinimizeButtonVisible = true; + this.Name = "Form_Main"; + this.SettingsButtonVisible = true; + this.Text = "Ping Tester"; + this.Title = "Ping Tester"; + this.TitleBarImage = global::PingTesterAluminium.Properties.Resources.icon; + this.AboutButtonClick += new System.EventHandler(this.Form_Main_AboutButtonClick); + this.SettingsButtonClick += new System.EventHandler(this.Form_Main_SettingsButtonClick); + this.panel_main.ResumeLayout(false); + this.panel_outbound.ResumeLayout(false); + this.panel_inbound.ResumeLayout(false); + this.ResumeLayout(false); + + } + + #endregion + + private AluminiumButton button_play; + private AluminiumLabel label_host; + private AluminiumLabel label_outBuffer; + private AluminiumLabel label_outTtl; + private AluminiumLabel label_status; + private AluminiumLabel label_time; + private AluminiumLabel label_rating; + private System.Windows.Forms.Panel panel_graph; + private System.Windows.Forms.ProgressBar progressBar_time; + public System.Windows.Forms.Timer timer_main; + private System.ComponentModel.BackgroundWorker backgroundWorker_main; + private AluminiumLabel label_notFragmented; + private AluminiumLabel label_address; + private AluminiumLabel label_inTtl; + private AluminiumLabel label_inBuffer; + private System.Windows.Forms.Panel panel_inbound; + private System.Windows.Forms.Panel panel_outbound; + private AluminiumLabel label_inbound; + private AluminiumLabel label_outbound; + } +} \ No newline at end of file diff --git a/Ping Tester Aluminium/GUI/Form_Main.cs b/Ping Tester Aluminium/GUI/Form_Main.cs new file mode 100644 index 0000000..2fedaed --- /dev/null +++ b/Ping Tester Aluminium/GUI/Form_Main.cs @@ -0,0 +1,126 @@ +using System; +using System.Collections.Generic; +using System.ComponentModel; +using System.Data; +using System.Drawing; +using System.Linq; +using System.Text; +using System.Windows.Forms; +using PingTesterAluminium.Properties; + +namespace PingTesterAluminium +{ + public partial class Form_Main : AluminiumForm + { + public Form_Main() + { + InitializeComponent(); + Initialize(); + button_play.PerformClick(); + } + + public void Initialize() + { + label_host.Text = PingTestManager.Host; + + label_address.Text = "?"; + label_address.ForeColor = Color.Gray; + + label_rating.Text = "?"; + label_rating.ForeColor = Color.Gray; + + label_status.Text = "Inactive"; + label_status.ForeColor = Color.Gray; + + label_time.Text = "? ms"; + label_time.ForeColor = Color.Gray; + + progressBar_time.SetValue(progressBar_time.Maximum); + progressBar_time.ForeColor = Color.Gray; + + label_outBuffer.Text = string.Format("{0} bytes", PingTestManager.BufferLength); + + label_inBuffer.Text = "? bytes"; + label_inBuffer.ForeColor = Color.Gray; + + label_outTtl.Text = string.Format("{0} TTL", PingTestManager.Ttl); + + label_inTtl.Text = "? TTL"; + label_inTtl.ForeColor = Color.Gray; + + label_notFragmented.Text = PingTestManager.DontFragment ? "Not Fragmented" : "Fragmented"; + } + + private void timer_main_Tick(object sender, EventArgs e) + { + timer_main.Interval = PingTestManager.Interval; + if (!backgroundWorker_main.IsBusy) + { + backgroundWorker_main.RunWorkerAsync(); + } + } + + private void backgroundWorker_main_DoWork(object sender, DoWorkEventArgs e) + { + e.Result = PingTestManager.RunPingTest(); + } + + private void backgroundWorker_main_RunWorkerCompleted(object sender, RunWorkerCompletedEventArgs e) + { + PingResult result = e.Result as PingResult; + if (result.HasError) + { + Initialize(); + Form_Error.Show(result.ErrorMessage, this); + } + else + { + label_address.Text = result.Address.ToString(); + label_address.ForeColor = Color.Blue; + + label_rating.Text = result.Rating.ToString().ToTitleCase(); + label_rating.ForeColor = result.RatingColor; + + label_status.Text = result.Status.ToString().ToTitleCase(); + label_status.ForeColor = result.StatusColor; + + label_time.Text = string.Format("{0} ms", result.Time.ToString()); + label_time.ForeColor = result.RatingColor; + + progressBar_time.SetValue((int)result.Time); + progressBar_time.ForeColor = result.RatingColor; + + label_inBuffer.Text = string.Format("{0} bytes", result.Buffer.Length); + label_inBuffer.ForeColor = Color.Blue; + + label_inTtl.Text = string.Format("{0} TTL", result.Ttl); + label_inTtl.ForeColor = Color.Blue; + } + } + + private void button_play_Click(object sender, EventArgs e) + { + if (timer_main.Enabled) + { + timer_main.Stop(); + button_play.Image = Resources.play; + } + else + { + timer_main.Start(); + button_play.Image = Resources.pause; + } + } + + private void Form_Main_SettingsButtonClick(object sender, EventArgs e) + { + Form_Settings.Show(this); + } + + private void Form_Main_AboutButtonClick(object sender, EventArgs e) + { + Form_About.Show(this); + } + + } +} diff --git a/Ping Tester Aluminium/Form1.resx b/Ping Tester Aluminium/GUI/Form_Main.resx similarity index 97% rename from Ping Tester Aluminium/Form1.resx rename to Ping Tester Aluminium/GUI/Form_Main.resx index f5b7a22..e0127f1 100644 --- a/Ping Tester Aluminium/Form1.resx +++ b/Ping Tester Aluminium/GUI/Form_Main.resx @@ -117,6 +117,57 @@ System.Resources.ResXResourceWriter, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089 + + True + + + True + + + True + + + True + + + True + + + True + + + True + + + True + + + True + + + True + + + True + + + True + + + True + + + True + + + True + + + True + + + True + @@ -210,10 +261,16 @@ - 44, 27 + 19, 14 - 148, 27 + 127, 14 + + + True + + + 39 diff --git a/Ping Tester Aluminium/GUI/Form_Settings.Designer.cs b/Ping Tester Aluminium/GUI/Form_Settings.Designer.cs new file mode 100644 index 0000000..9ffe690 --- /dev/null +++ b/Ping Tester Aluminium/GUI/Form_Settings.Designer.cs @@ -0,0 +1,274 @@ +namespace PingTesterAluminium +{ + partial class Form_Settings + { + /// + /// Required designer variable. + /// + private System.ComponentModel.IContainer components = null; + + /// + /// Clean up any resources being used. + /// + /// true if managed resources should be disposed; otherwise, false. + protected override void Dispose(bool disposing) + { + if (disposing && (components != null)) + { + components.Dispose(); + } + base.Dispose(disposing); + } + + #region Windows Form Designer generated code + + /// + /// Required method for Designer support - do not modify + /// the contents of this method with the code editor. + /// + private void InitializeComponent() + { + System.ComponentModel.ComponentResourceManager resources = new System.ComponentModel.ComponentResourceManager(typeof(Form_Settings)); + this.button_save = new PingTesterAluminium.AluminiumButton(); + this.aluminiumLabel1 = new PingTesterAluminium.AluminiumLabel(); + this.aluminiumTextBox1 = new PingTesterAluminium.AluminiumTextBox(); + this.textBox_host = new PingTesterAluminium.AluminiumTextBox(); + this.textBox_interval = new PingTesterAluminium.AluminiumTextBox(); + this.aluminiumLabel2 = new PingTesterAluminium.AluminiumLabel(); + this.textBox_timeout = new PingTesterAluminium.AluminiumTextBox(); + this.aluminiumLabel3 = new PingTesterAluminium.AluminiumLabel(); + this.textBox_buffer = new PingTesterAluminium.AluminiumTextBox(); + this.aluminiumLabel4 = new PingTesterAluminium.AluminiumLabel(); + this.textBox_ttl = new PingTesterAluminium.AluminiumTextBox(); + this.aluminiumLabel5 = new PingTesterAluminium.AluminiumLabel(); + this.textBox_fragmentation = new PingTesterAluminium.AluminiumTextBox(); + this.aluminiumLabel6 = new PingTesterAluminium.AluminiumLabel(); + this.button_cancel = new PingTesterAluminium.AluminiumButton(); + this.panel_main.SuspendLayout(); + this.SuspendLayout(); + // + // panel_main + // + this.panel_main.Controls.Add(this.button_cancel); + this.panel_main.Controls.Add(this.textBox_fragmentation); + this.panel_main.Controls.Add(this.aluminiumLabel6); + this.panel_main.Controls.Add(this.textBox_ttl); + this.panel_main.Controls.Add(this.aluminiumLabel5); + this.panel_main.Controls.Add(this.textBox_buffer); + this.panel_main.Controls.Add(this.aluminiumLabel4); + this.panel_main.Controls.Add(this.textBox_timeout); + this.panel_main.Controls.Add(this.aluminiumLabel3); + this.panel_main.Controls.Add(this.textBox_interval); + this.panel_main.Controls.Add(this.aluminiumLabel2); + this.panel_main.Controls.Add(this.textBox_host); + this.panel_main.Controls.Add(this.aluminiumTextBox1); + this.panel_main.Controls.Add(this.aluminiumLabel1); + this.panel_main.Controls.Add(this.button_save); + this.panel_main.Size = new System.Drawing.Size(782, 341); + // + // button_save + // + this.button_save.BackColor = System.Drawing.Color.Silver; + this.button_save.BackgroundImage = ((System.Drawing.Image)(resources.GetObject("button_save.BackgroundImage"))); + this.button_save.BackgroundImageLayout = System.Windows.Forms.ImageLayout.Stretch; + this.button_save.Cursor = System.Windows.Forms.Cursors.Hand; + this.button_save.FlatStyle = System.Windows.Forms.FlatStyle.Flat; + this.button_save.Font = new System.Drawing.Font("Visitor TT1 BRK", 15F); + this.button_save.Location = new System.Drawing.Point(601, 293); + this.button_save.Name = "button_save"; + this.button_save.Size = new System.Drawing.Size(166, 32); + this.button_save.TabIndex = 0; + this.button_save.Text = "Save"; + this.button_save.UseVisualStyleBackColor = false; + this.button_save.Click += new System.EventHandler(this.button_save_Click); + // + // aluminiumLabel1 + // + this.aluminiumLabel1.AutoEllipsis = true; + this.aluminiumLabel1.BackColor = System.Drawing.Color.Transparent; + this.aluminiumLabel1.Location = new System.Drawing.Point(14, 49); + this.aluminiumLabel1.Margin = new System.Windows.Forms.Padding(0); + this.aluminiumLabel1.Name = "aluminiumLabel1"; + this.aluminiumLabel1.Size = new System.Drawing.Size(373, 32); + this.aluminiumLabel1.TabIndex = 1; + this.aluminiumLabel1.Text = "Host (Name or IP)"; + this.aluminiumLabel1.TextAlign = System.Drawing.ContentAlignment.MiddleLeft; + // + // aluminiumTextBox1 + // + this.aluminiumTextBox1.BorderStyle = System.Windows.Forms.BorderStyle.FixedSingle; + this.aluminiumTextBox1.Location = new System.Drawing.Point(-16, -16); + this.aluminiumTextBox1.Margin = new System.Windows.Forms.Padding(2, 2, 2, 10); + this.aluminiumTextBox1.Name = "aluminiumTextBox1"; + this.aluminiumTextBox1.Size = new System.Drawing.Size(400, 32); + this.aluminiumTextBox1.TabIndex = 2; + // + // textBox_host + // + this.textBox_host.BorderStyle = System.Windows.Forms.BorderStyle.FixedSingle; + this.textBox_host.Location = new System.Drawing.Point(18, 83); + this.textBox_host.Margin = new System.Windows.Forms.Padding(2, 2, 2, 10); + this.textBox_host.Name = "textBox_host"; + this.textBox_host.Size = new System.Drawing.Size(369, 32); + this.textBox_host.TabIndex = 3; + // + // textBox_interval + // + this.textBox_interval.BorderStyle = System.Windows.Forms.BorderStyle.FixedSingle; + this.textBox_interval.Location = new System.Drawing.Point(18, 159); + this.textBox_interval.Margin = new System.Windows.Forms.Padding(2, 2, 2, 10); + this.textBox_interval.Name = "textBox_interval"; + this.textBox_interval.Size = new System.Drawing.Size(369, 32); + this.textBox_interval.TabIndex = 5; + // + // aluminiumLabel2 + // + this.aluminiumLabel2.AutoEllipsis = true; + this.aluminiumLabel2.BackColor = System.Drawing.Color.Transparent; + this.aluminiumLabel2.Location = new System.Drawing.Point(14, 125); + this.aluminiumLabel2.Margin = new System.Windows.Forms.Padding(0); + this.aluminiumLabel2.Name = "aluminiumLabel2"; + this.aluminiumLabel2.Size = new System.Drawing.Size(373, 32); + this.aluminiumLabel2.TabIndex = 4; + this.aluminiumLabel2.Text = "Pinging Interval (ms)"; + this.aluminiumLabel2.TextAlign = System.Drawing.ContentAlignment.MiddleLeft; + // + // textBox_timeout + // + this.textBox_timeout.BorderStyle = System.Windows.Forms.BorderStyle.FixedSingle; + this.textBox_timeout.Location = new System.Drawing.Point(18, 235); + this.textBox_timeout.Margin = new System.Windows.Forms.Padding(2, 2, 2, 10); + this.textBox_timeout.Name = "textBox_timeout"; + this.textBox_timeout.Size = new System.Drawing.Size(369, 32); + this.textBox_timeout.TabIndex = 7; + // + // aluminiumLabel3 + // + this.aluminiumLabel3.AutoEllipsis = true; + this.aluminiumLabel3.BackColor = System.Drawing.Color.Transparent; + this.aluminiumLabel3.Location = new System.Drawing.Point(14, 201); + this.aluminiumLabel3.Margin = new System.Windows.Forms.Padding(0); + this.aluminiumLabel3.Name = "aluminiumLabel3"; + this.aluminiumLabel3.Size = new System.Drawing.Size(373, 32); + this.aluminiumLabel3.TabIndex = 6; + this.aluminiumLabel3.Text = "Timeout (ms)"; + this.aluminiumLabel3.TextAlign = System.Drawing.ContentAlignment.MiddleLeft; + // + // textBox_buffer + // + this.textBox_buffer.BorderStyle = System.Windows.Forms.BorderStyle.FixedSingle; + this.textBox_buffer.Location = new System.Drawing.Point(398, 83); + this.textBox_buffer.Margin = new System.Windows.Forms.Padding(2, 2, 2, 10); + this.textBox_buffer.Name = "textBox_buffer"; + this.textBox_buffer.Size = new System.Drawing.Size(369, 32); + this.textBox_buffer.TabIndex = 9; + // + // aluminiumLabel4 + // + this.aluminiumLabel4.AutoEllipsis = true; + this.aluminiumLabel4.BackColor = System.Drawing.Color.Transparent; + this.aluminiumLabel4.Location = new System.Drawing.Point(394, 49); + this.aluminiumLabel4.Margin = new System.Windows.Forms.Padding(0); + this.aluminiumLabel4.Name = "aluminiumLabel4"; + this.aluminiumLabel4.Size = new System.Drawing.Size(373, 32); + this.aluminiumLabel4.TabIndex = 8; + this.aluminiumLabel4.Text = "Buffer (Bytes)"; + this.aluminiumLabel4.TextAlign = System.Drawing.ContentAlignment.MiddleLeft; + // + // textBox_ttl + // + this.textBox_ttl.BorderStyle = System.Windows.Forms.BorderStyle.FixedSingle; + this.textBox_ttl.Location = new System.Drawing.Point(398, 159); + this.textBox_ttl.Margin = new System.Windows.Forms.Padding(2, 2, 2, 10); + this.textBox_ttl.Name = "textBox_ttl"; + this.textBox_ttl.Size = new System.Drawing.Size(369, 32); + this.textBox_ttl.TabIndex = 11; + // + // aluminiumLabel5 + // + this.aluminiumLabel5.AutoEllipsis = true; + this.aluminiumLabel5.BackColor = System.Drawing.Color.Transparent; + this.aluminiumLabel5.Location = new System.Drawing.Point(394, 125); + this.aluminiumLabel5.Margin = new System.Windows.Forms.Padding(0); + this.aluminiumLabel5.Name = "aluminiumLabel5"; + this.aluminiumLabel5.Size = new System.Drawing.Size(373, 32); + this.aluminiumLabel5.TabIndex = 10; + this.aluminiumLabel5.Text = "TLT (Time To Live)"; + this.aluminiumLabel5.TextAlign = System.Drawing.ContentAlignment.MiddleLeft; + // + // textBox_fragmentation + // + this.textBox_fragmentation.BorderStyle = System.Windows.Forms.BorderStyle.FixedSingle; + this.textBox_fragmentation.Location = new System.Drawing.Point(398, 235); + this.textBox_fragmentation.Margin = new System.Windows.Forms.Padding(2, 2, 2, 10); + this.textBox_fragmentation.Name = "textBox_fragmentation"; + this.textBox_fragmentation.Size = new System.Drawing.Size(369, 32); + this.textBox_fragmentation.TabIndex = 13; + // + // aluminiumLabel6 + // + this.aluminiumLabel6.AutoEllipsis = true; + this.aluminiumLabel6.BackColor = System.Drawing.Color.Transparent; + this.aluminiumLabel6.Location = new System.Drawing.Point(394, 201); + this.aluminiumLabel6.Margin = new System.Windows.Forms.Padding(0); + this.aluminiumLabel6.Name = "aluminiumLabel6"; + this.aluminiumLabel6.Size = new System.Drawing.Size(373, 32); + this.aluminiumLabel6.TabIndex = 12; + this.aluminiumLabel6.Text = "Fragmentation"; + this.aluminiumLabel6.TextAlign = System.Drawing.ContentAlignment.MiddleLeft; + // + // button_cancel + // + this.button_cancel.BackColor = System.Drawing.Color.Silver; + this.button_cancel.BackgroundImage = ((System.Drawing.Image)(resources.GetObject("button_cancel.BackgroundImage"))); + this.button_cancel.BackgroundImageLayout = System.Windows.Forms.ImageLayout.Stretch; + this.button_cancel.Cursor = System.Windows.Forms.Cursors.Hand; + this.button_cancel.DialogResult = System.Windows.Forms.DialogResult.Cancel; + this.button_cancel.FlatStyle = System.Windows.Forms.FlatStyle.Flat; + this.button_cancel.Font = new System.Drawing.Font("Visitor TT1 BRK", 15F); + this.button_cancel.Location = new System.Drawing.Point(495, 293); + this.button_cancel.Name = "button_cancel"; + this.button_cancel.Size = new System.Drawing.Size(100, 32); + this.button_cancel.TabIndex = 14; + this.button_cancel.Text = "Cancel"; + this.button_cancel.UseVisualStyleBackColor = false; + this.button_cancel.Click += new System.EventHandler(this.button_cancel_Click); + // + // Form_Settings + // + this.AboutButtonVisible = true; + this.AutoScaleDimensions = new System.Drawing.SizeF(16F, 24F); + this.AutoScaleMode = System.Windows.Forms.AutoScaleMode.Font; + this.ClientSize = new System.Drawing.Size(782, 341); + this.MinimizeButtonVisible = true; + this.Name = "Form_Settings"; + this.SettingsButtonVisible = true; + this.ShowInTaskbar = false; + this.StartPosition = System.Windows.Forms.FormStartPosition.CenterParent; + this.Text = "Settings"; + this.Title = "Settings"; + this.panel_main.ResumeLayout(false); + this.panel_main.PerformLayout(); + this.ResumeLayout(false); + + } + + #endregion + + private AluminiumLabel aluminiumLabel1; + private AluminiumButton button_save; + private AluminiumButton button_cancel; + private AluminiumTextBox textBox_fragmentation; + private AluminiumLabel aluminiumLabel6; + private AluminiumTextBox textBox_ttl; + private AluminiumLabel aluminiumLabel5; + private AluminiumTextBox textBox_buffer; + private AluminiumLabel aluminiumLabel4; + private AluminiumTextBox textBox_timeout; + private AluminiumLabel aluminiumLabel3; + private AluminiumTextBox textBox_interval; + private AluminiumLabel aluminiumLabel2; + private AluminiumTextBox textBox_host; + private AluminiumTextBox aluminiumTextBox1; + } +} \ No newline at end of file diff --git a/Ping Tester Aluminium/GUI/Form_Settings.cs b/Ping Tester Aluminium/GUI/Form_Settings.cs new file mode 100644 index 0000000..4ee4637 --- /dev/null +++ b/Ping Tester Aluminium/GUI/Form_Settings.cs @@ -0,0 +1,53 @@ +using System; +using System.Collections.Generic; +using System.ComponentModel; +using System.Data; +using System.Drawing; +using System.Linq; +using System.Text; +using System.Windows.Forms; + +namespace PingTesterAluminium +{ + public partial class Form_Settings : AluminiumForm + { + public Form_Settings() + { + InitializeComponent(); + textBox_host.Text = PingTestManager.Host; + textBox_interval.Text = PingTestManager.Interval.ToString(); + textBox_timeout.Text = PingTestManager.Timeout.ToString(); + textBox_buffer.Text = PingTestManager.BufferLength.ToString(); + textBox_ttl.Text = PingTestManager.Ttl.ToString(); + textBox_fragmentation.Text = PingTestManager.DontFragment ? "No" : "Yes"; + } + + public static DialogResult Show(IWin32Window owner = null) + { + return new Form_Settings().ShowDialog(owner); + } + + private void button_save_Click(object sender, EventArgs e) + { + try + { + PingTestManager.Host = textBox_host.Text; + PingTestManager.Interval = int.Parse(textBox_interval.Text); + PingTestManager.Timeout = int.Parse(textBox_timeout.Text); + PingTestManager.BufferLength = int.Parse(textBox_buffer.Text); + PingTestManager.Ttl = int.Parse(textBox_ttl.Text); + PingTestManager.DontFragment = textBox_fragmentation.Text == "No" ? true : false; + Close(); + } + catch (Exception exception) + { + Form_Error.Show(exception.Message); + } + } + + private void button_cancel_Click(object sender, EventArgs e) + { + Close(); + } + } +} diff --git a/Ping Tester Aluminium/GUI/Form_Settings.resx b/Ping Tester Aluminium/GUI/Form_Settings.resx new file mode 100644 index 0000000..2fe7e16 --- /dev/null +++ b/Ping Tester Aluminium/GUI/Form_Settings.resx @@ -0,0 +1,303 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + text/microsoft-resx + + + 2.0 + + + System.Resources.ResXResourceReader, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089 + + + System.Resources.ResXResourceWriter, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089 + + + + + /9j/4AAQSkZJRgABAQEAAAAAAAD/2wBDAAYEBQYFBAYGBQYHBwYIChAKCgkJChQODwwQFxQYGBcUFhYa + HSUfGhsjHBYWICwgIyYnKSopGR8tMC0oMCUoKSj/2wBDAQcHBwoIChMKChMoGhYaKCgoKCgoKCgoKCgo + KCgoKCgoKCgoKCgoKCgoKCgoKCgoKCgoKCgoKCgoKCgoKCgoKCj/wAARCAEsAZADAREAAhEBAxEB/8QA + HwAAAQUBAQEBAQEAAAAAAAAAAAECAwQFBgcICQoL/8QAtRAAAgEDAwIEAwUFBAQAAAF9AQIDAAQRBRIh + MUEGE1FhByJxFDKBkaEII0KxwRVS0fAkM2JyggkKFhcYGRolJicoKSo0NTY3ODk6Q0RFRkdISUpTVFVW + V1hZWmNkZWZnaGlqc3R1dnd4eXqDhIWGh4iJipKTlJWWl5iZmqKjpKWmp6ipqrKztLW2t7i5usLDxMXG + x8jJytLT1NXW19jZ2uHi4+Tl5ufo6erx8vP09fb3+Pn6/8QAHwEAAwEBAQEBAQEBAQAAAAAAAAECAwQF + BgcICQoL/8QAtREAAgECBAQDBAcFBAQAAQJ3AAECAxEEBSExBhJBUQdhcRMiMoEIFEKRobHBCSMzUvAV + YnLRChYkNOEl8RcYGRomJygpKjU2Nzg5OkNERUZHSElKU1RVVldYWVpjZGVmZ2hpanN0dXZ3eHl6goOE + hYaHiImKkpOUlZaXmJmaoqOkpaanqKmqsrO0tba3uLm6wsPExcbHyMnK0tPU1dbX2Nna4uPk5ebn6Onq + 8vP09fb3+Pn6/9oADAMBAAIRAxEAPwD0rFIYYoAMUAGKADFABigAxQAYoAMUAGKADFABigAxQAYoAMUA + LigAxQAYoAMUAGKADFABigAxQAYoAMUAGKADFABigAxQAYoAMUALigAxQAYoAMUAGKADFABigAxQAYoA + MUAGKADFABigAxQAYoAMUALigAxQAYoATFABigAxQAYoAXFABigAxQAYoAMUAGKADFABigAxQAYoAMUA + GKADFABigAxQAYoAMUAGKAFxQAYoAMUAGKADFABigAxQAYoAMUAGKADFABigAxQAYoAMUAGKAFxQAYoA + MUAGKADFABigAxQAYoAMUAGKADFABigAxQAYoAMUAGKADFABigAxQAYoAMUAGKADFABigAxQAuKADFAB + igAxQAYoAMUAGKADFABigAxQAYoAMUAGKADFABigAxQAuKADFABigAxQAYoAMUAGKADFABigAxQAYoAM + UAGKADFABigAxQAuKADFABigAxQAYoATFABigBcUAGKADFABigAxQAYoAMUAGKADFABigAxQAYoAMUAG + KADFABigAxQAYoAXFABigAxQAYoAMUAGKADFABigAxQAYoAMUAGKADFABigAxQAYoAXFABigAxQAYoAM + UAGKADFABigAxQAYoAMUAGKADFABigAxQAYoAMUAGKADFABigAxQAYoAMUALigAxQAYoAMUAGKADFABi + gAxQAYoAMUAGKADFABigAxQAYoAMUAGKADFAC4oAMUAGKADFABigAxQAYoAMUAGKADFABigAxQAYoAMU + AGKADFABigBcUAGKADFABigAxQAYpgGKQBigAxQAYoAMUAGKYBigAxSAMUAGKYBigAxQAYoAMUgDFABi + mAYoAMUgFxQAYoAMUwDFABikAYoAMUAGKADFMAxQAYpAGKYBigAxQAYoAMUgFxTAMUAGKADFABikAYpg + GKADFIAxQAYoAMUAGKYBigAxSAMUAGKADFABigAxTAMUAGKQBigAxQAuKYBigAxSAMUAGKYBigAxQAYp + AGKADFABimAYpAGKADFABigAxTAMUAGKQC4oAMUAGKYBigAxSAMUwDFABigAxQAYoAMUgDFMAxQAYoAM + UAGKQBimAuKADFIAxQAYoAMUAGKYBigAxSAMUAGKADFABimAYoAMUgDFABigAxQAYpgGKADFIAxQAYpg + GKAFxQAYpAGKADFMAxQAYpAGKADFABigAxTAMUAGKQBigAxQAYpgGKADFIAxTAXFABigAxQAYoAMUAGK + ADFABigAxQAYoAMUAGKADFABigAxQAYoAXFACYoAMUAGKADFABigBcUAGKADFABigAxQAYoAMUAGKADF + ABigAxQAYoAMUAGKADFABigAxQAYoAXFABigAxQAYoAMUAGKADFABigAxQAYoAMUAGKADFABigAxQAYo + AMUALigAxQAYoAMUAGKADFABigAxQAYoAMUAGKADFABigAxQAYoAMUAGKADFABigAxQAYoAMUAGKAFxQ + AYoAMUAGKADFABigAxQAYoAMUAGKADFABigAxQAYoAMUAGKADFABigBcUAGKADFABigAxQAYoAMUAGKA + DFABigAxQAYoAMUAGKADFABigBcUAGKADFACYoAMUAGKADFAC4oAMUAGKADFABigAxQAYoAMUAGKADFA + BigAxQAYoAMUAGKADFAC4oAMUAGKADFABigAxQAYoAMUAGKADFABigAxQAYoAMUAGKADFABigAxQAuKA + DFABigAxQAYoAMUAGKADFABigAxQAYoAMUAGKADFABigAxQAYoAMUAGKADFABigAxQAYoAXFABigAxQA + YoAMUAGKADFABigAxQAYoAMUAGKADFABigAxQAYoAMUAGKAFxQAYoAMUAGKADFABigAxQAYoAMUAGKAD + FABigAxQAYoAMUAGKAFxQAYoAMUAGKADFACYoAMUALigAxQAYoAMUAGKADFABigAxQAYoAMUAGKADFAB + igAxQAYoAMUALigAxQAYoAMUAGKADFABigAxQAYoAMUAGKADFABigAxQAYoAMUAGKADFABigAxQAuKAD + FABigAxQAYoAMUAGKADFABigAxQAYoAMUAGKADFABigAxQAYoAMUAGKADFABigAxQAYoAMUAGKAFxQAY + oAMUAGKADFABigAxQAYoAMUAGKADFABigAxQAYoAMUAGKAFxQAYoAMUAGKADFABigAxQAYoAMUAGKADF + ABigAxQAYoAMUAGKAFxQAYoAMUAGKADFACYoAMUALigAxQAYoAMUAGKADFABigAxQAYoAMUAGKADFABi + gAxQAYoAMUAGKADFAC4oAMUAGKADFABigAxQAYoAMUAGKADFABigAxQAYoAMUAGKADFAC4oAMUAGKADF + ABigAxQAYoAMUAGKADFABigAxQAYoAMUAGKADFABigAxQAYoAMUAGKADFABigBcUAGKADFABigAxQAYo + AMUAGKADFABigAxQAYoAMUAGKADFABigAxQAYoAMUAGKAFxQAYoAMUAGKADFABigAxQAYoAMUAGKADFA + BigAxQAYoAMUAGKADFABigBcUAGKADFACYoAMUAGKADFAC4oAMUAGKADFABigAxQAYoAMUAGKADFABig + AxQAYoAMUAGKADFAC4oAMUAGKADFABigAxQAYoAMUAGKADFABigAxQAYoAMUAGKADFABigBcUAGKADFA + BigAxQAYoAMUAGKADFABigAxQAYoAMUAGKADFABigAxQAYoAMUAGKADFABigAxQAYoAMUAGKADFAC4oA + MUAGKADFABigAxQAYoAMUAGKADFABigAxQAYoAMUAGKADFABigAxQAuKADFABigAxQAYoAMUAGKADFAB + igAxQAYoAMUAGKADFABigAxQAuKADFACYoAMUAGKADFABigBcUAGKADFABigAxQAYoAMUAGKADFABigA + xQAYoAMUAGKADFABigBcUAGKADFABigAxQAYoAMUAGKBBigAxQMMUAGKBBigAxQAYoGGKADFAgxQAYoG + GKAFxQAYoAMUCDFABigYYoAMUAGKBBigAxQAYoGGKADFABigAxQIMUAGKBhigQYoAMUAGKADFAwxQIMU + AGKAFxQAYoAMUDDFAgxQAYoGGKADFABigQYoAMUDDFABigAxQAYoEGKAFxQMMUAGKBBigAxQAYoGGKAD + FAgxQAYoGGKADFABigAxQIMUDDFAC4oAMUAJigAxQIMUAGKBhigBcUAGKADFAgxQAYoGGKBBigAxQAYo + AMUAGKADFABigAxQAYoAMUAGKADFABigAxQAuKADFABigAxQAYoAMUAGKADFABigAxQAYoAMUAGKADFA + BigAxQAYoAMUALigAxQAYoAMUAGKADFABigAxQAYoAMUAGKADFABigAxQAYoAMUAGKADFABigAxQAYoA + MUAGKAFxQAYoAMUAGKADFABigAxQAYoAMUAGKADFABigAxQAYoAMUAGKAFxQAYoAMUAGKADFABigAxQA + YoAMUAGKADFABigAxQAYoAMUAGKADFABigAxQAYoAMUAGKADFABigAxQAuKADFABigAxQAYoAMUAGKAD + FABigAxQAYoAMUAGKADFABigAxQAuKADFABigAxQAYoAMUAGKADFABigAxQAYoAMUAGKADFABigAxQAY + oAMUAGKADFABigBcUAGKADFABigAxQAYoAMUAGKADFABigAxQAYoAMUAGKADFABigAxQAYoAMUAGKADF + ABigAxQAuKADFABigAxQAYoAMUAGKADFABigAxQAYoAMUAGKADFABigAxQAYoAMUALigAxQAYoAMUAGK + ADFABigAxQAYoAMUAGKADFABigAxQAYoAMUAGKADFABigAxQAYoAMUAGKAFxQAYoAMUAGKADFABigAxQ + AYoAMUAGKADFABigAxQAYoAMUAGKADFABigAxQAYoAXFABigAxQAYoAMUAGKADFABigAxQAYoAMUAGKA + DFABigAxQAYoAXFABigAxQAYoAMUAGKAExQAuKADFABigAxQAYoAMUAGKADFABigAxQAYoAMUAGKADFA + BigAxQAYoAMUALigAxQAYoAMUAGKADFABigAxQAYoAMUAGKADFABigAxQAYoAMUALigAxQAYoAMUAGKA + DFABigAxQAYoAMUAGKADFABigAxQAYoAMUAGKADFABigAxQAYoAMUAGKADFABigBcUAGKADFABigAxQA + YoAMUAGKADFABigAxQAYoAMUAGKADFABigBcUAGKADFABigAxQAYoAMUAGKADFABigAxQAYoAMUAGKAD + FABigBcUAGKADFABigAxQAYoAMUAGKADFABigAxQAYoAMUAGKADFABigAxQAYoAMUAGKADFABigAxQAY + oAMUALigAxQAYoAMUAGKADFABigAxQAYoAMUAGKADFABigAxQAYoAMUALigAxQAYoAMUAGKADFABigAx + QAYoAMUAGKADFABigAxQAYoAMUALigBMUAGKADFABigAxQAYoAXFABigAxQAYoAMUAGKADFABigAxQAY + oAMUAGKADFABigAxQAYoAMUAGKAFxQAYoAMUAGKADFABigAxQAYoAMUAGKADFABigAxQAYoAMUAGKAFx + QAYoAMUAGKADFABigAxQAYoAMUAGKADFABigAxQAYoAMUAGKADFABigAxQAYoAMUAGKADFABigAxQAuK + ADFABigAxQAYoAMUAGKADFABigAxQAYoAMUAGKADFABigAxQAuKADFABigAxQAYoAMUAGKADFABigAxQ + AYoAMUAGKADFABigAxQAuKADFABigBMUAGKADFABigBcUAGKADFABigAxQAYoAMUAGKADFABigAxQAYo + AMUAGKADFABigAxQAYoAXFABigAxQAYoAMUAGKADFABigAxQAYoAMUAGKADFABigAxQAYoAXFABigAxQ + AYoAMUAGKADFABigAxQAYoAMUAGKADFABigAxQAYoAMUAGKADFABigAxQAYoAMUALigAxQAYoAMUAGKA + DFABigAxQAYoAMUAGKADFABigAxQAYoAMUAGKADFAC4oAMUAGKADFABigAxQAYoAMUAGKADFABigAxQA + YoAMUAGKADFABigBcUAGKADFABigBMUAGKAFxQAYoAMUAGKADFABigAxQAYoAMUAGKADFABigAxQAYoA + MUAGKADFABigBcUAGKADFABigAxQAYoAMUAGKADFABigAxQAYoAMUAGKADFABigBcUAGKADFABigAxQA + YoAMUAGKADFABigAxQAYoAMUAGKADFABigAxQAYoAMUAGKADFABigAxQAuKADFABigAxQAYoAMUAGKAD + FABigAxQAYoAMUAGKADFABigAxQAYoAMUALigAxQAYoAMUAGKADFABigAxQAYoAMUAGKADFABigAxQAY + oAMUAGKAFxQAYoAMUAGKADFABigAxQAYoAMUAGKADFABigAxQAYoAMUAGKADFABigAxQAYoAMUAGKADF + AC4oAMUAGKADFABigAxQAYoAMUAGKADFABigAxQAYoAMUAGKADFABigAxQAuKADFABigAxQAYoAMUAGK + ADFABigAxQAYoAMUAGKADFABigAxQAYoAMUAGKADFABigAxQAuKADFABigAxQAYoAMUAGKADFABigAxQ + AYoAMUAGKADFABigAxQAYoAMUALigAxQAYoAMUAGKADFABigAxQAYoAMUAGKADFABigAxQAYoAMUAGKA + FxQAYoAMUAGKADFABigAxQAYoAMUAGKADFABigAxQAYoAMUAGKADFABigAxQAYoAMUAGKADFAC4oAMUA + GKADFABigAxQAYoAMUAGKADFABigAxQAYoAMUAGKADFABigAxQAuKADFABigAxQAYoAMUAGKADFABigA + xQAYoAMUAGKAFxQAYoAMUAGKADaKADaKADFABigAxQAYoAMUAGKADFABigAxQAuBQAYFABgUAGBQAYFA + BigAxQAYoAMUAGKADFABigAxQAYoAMUAGKADFABigAxQAYoAMUAGKADFABigAoAKACgAoAKACgAoAKAC + gAoAKACgAoAKACgD/9k= + + + + + /9j/4AAQSkZJRgABAQEAAAAAAAD/2wBDAAYEBQYFBAYGBQYHBwYIChAKCgkJChQODwwQFxQYGBcUFhYa + HSUfGhsjHBYWICwgIyYnKSopGR8tMC0oMCUoKSj/2wBDAQcHBwoIChMKChMoGhYaKCgoKCgoKCgoKCgo + KCgoKCgoKCgoKCgoKCgoKCgoKCgoKCgoKCgoKCgoKCgoKCgoKCj/wAARCAEsAZADAREAAhEBAxEB/8QA + HwAAAQUBAQEBAQEAAAAAAAAAAAECAwQFBgcICQoL/8QAtRAAAgEDAwIEAwUFBAQAAAF9AQIDAAQRBRIh + MUEGE1FhByJxFDKBkaEII0KxwRVS0fAkM2JyggkKFhcYGRolJicoKSo0NTY3ODk6Q0RFRkdISUpTVFVW + V1hZWmNkZWZnaGlqc3R1dnd4eXqDhIWGh4iJipKTlJWWl5iZmqKjpKWmp6ipqrKztLW2t7i5usLDxMXG + x8jJytLT1NXW19jZ2uHi4+Tl5ufo6erx8vP09fb3+Pn6/8QAHwEAAwEBAQEBAQEBAQAAAAAAAAECAwQF + BgcICQoL/8QAtREAAgECBAQDBAcFBAQAAQJ3AAECAxEEBSExBhJBUQdhcRMiMoEIFEKRobHBCSMzUvAV + YnLRChYkNOEl8RcYGRomJygpKjU2Nzg5OkNERUZHSElKU1RVVldYWVpjZGVmZ2hpanN0dXZ3eHl6goOE + hYaHiImKkpOUlZaXmJmaoqOkpaanqKmqsrO0tba3uLm6wsPExcbHyMnK0tPU1dbX2Nna4uPk5ebn6Onq + 8vP09fb3+Pn6/9oADAMBAAIRAxEAPwD0rFIYYoAMUAGKADFABigAxQAYoAMUAGKADFABigAxQAYoAMUA + LigAxQAYoAMUAGKADFABigAxQAYoAMUAGKADFABigAxQAYoAMUALigAxQAYoAMUAGKADFABigAxQAYoA + MUAGKADFABigAxQAYoAMUALigAxQAYoATFABigAxQAYoAXFABigAxQAYoAMUAGKADFABigAxQAYoAMUA + GKADFABigAxQAYoAMUAGKAFxQAYoAMUAGKADFABigAxQAYoAMUAGKADFABigAxQAYoAMUAGKAFxQAYoA + MUAGKADFABigAxQAYoAMUAGKADFABigAxQAYoAMUAGKADFABigAxQAYoAMUAGKADFABigAxQAuKADFAB + igAxQAYoAMUAGKADFABigAxQAYoAMUAGKADFABigAxQAuKADFABigAxQAYoAMUAGKADFABigAxQAYoAM + UAGKADFABigAxQAuKADFABigAxQAYoATFABigBcUAGKADFABigAxQAYoAMUAGKADFABigAxQAYoAMUAG + KADFABigAxQAYoAXFABigAxQAYoAMUAGKADFABigAxQAYoAMUAGKADFABigAxQAYoAXFABigAxQAYoAM + UAGKADFABigAxQAYoAMUAGKADFABigAxQAYoAMUAGKADFABigAxQAYoAMUALigAxQAYoAMUAGKADFABi + gAxQAYoAMUAGKADFABigAxQAYoAMUAGKADFAC4oAMUAGKADFABigAxQAYoAMUAGKADFABigAxQAYoAMU + AGKADFABigBcUAGKADFABigAxQAYpgGKQBigAxQAYoAMUAGKYBigAxSAMUAGKYBigAxQAYoAMUgDFABi + mAYoAMUgFxQAYoAMUwDFABikAYoAMUAGKADFMAxQAYpAGKYBigAxQAYoAMUgFxTAMUAGKADFABikAYpg + GKADFIAxQAYoAMUAGKYBigAxSAMUAGKADFABigAxTAMUAGKQBigAxQAuKYBigAxSAMUAGKYBigAxQAYp + AGKADFABimAYpAGKADFABigAxTAMUAGKQC4oAMUAGKYBigAxSAMUwDFABigAxQAYoAMUgDFMAxQAYoAM + UAGKQBimAuKADFIAxQAYoAMUAGKYBigAxSAMUAGKADFABimAYoAMUgDFABigAxQAYpgGKADFIAxQAYpg + GKAFxQAYpAGKADFMAxQAYpAGKADFABigAxTAMUAGKQBigAxQAYpgGKADFIAxTAXFABigAxQAYoAMUAGK + ADFABigAxQAYoAMUAGKADFABigAxQAYoAXFACYoAMUAGKADFABigBcUAGKADFABigAxQAYoAMUAGKADF + ABigAxQAYoAMUAGKADFABigAxQAYoAXFABigAxQAYoAMUAGKADFABigAxQAYoAMUAGKADFABigAxQAYo + AMUALigAxQAYoAMUAGKADFABigAxQAYoAMUAGKADFABigAxQAYoAMUAGKADFABigAxQAYoAMUAGKAFxQ + AYoAMUAGKADFABigAxQAYoAMUAGKADFABigAxQAYoAMUAGKADFABigBcUAGKADFABigAxQAYoAMUAGKA + DFABigAxQAYoAMUAGKADFABigBcUAGKADFACYoAMUAGKADFAC4oAMUAGKADFABigAxQAYoAMUAGKADFA + BigAxQAYoAMUAGKADFAC4oAMUAGKADFABigAxQAYoAMUAGKADFABigAxQAYoAMUAGKADFABigAxQAuKA + DFABigAxQAYoAMUAGKADFABigAxQAYoAMUAGKADFABigAxQAYoAMUAGKADFABigAxQAYoAXFABigAxQA + YoAMUAGKADFABigAxQAYoAMUAGKADFABigAxQAYoAMUAGKAFxQAYoAMUAGKADFABigAxQAYoAMUAGKAD + FABigAxQAYoAMUAGKAFxQAYoAMUAGKADFACYoAMUALigAxQAYoAMUAGKADFABigAxQAYoAMUAGKADFAB + igAxQAYoAMUALigAxQAYoAMUAGKADFABigAxQAYoAMUAGKADFABigAxQAYoAMUAGKADFABigAxQAuKAD + FABigAxQAYoAMUAGKADFABigAxQAYoAMUAGKADFABigAxQAYoAMUAGKADFABigAxQAYoAMUAGKAFxQAY + oAMUAGKADFABigAxQAYoAMUAGKADFABigAxQAYoAMUAGKAFxQAYoAMUAGKADFABigAxQAYoAMUAGKADF + ABigAxQAYoAMUAGKAFxQAYoAMUAGKADFACYoAMUALigAxQAYoAMUAGKADFABigAxQAYoAMUAGKADFABi + gAxQAYoAMUAGKADFAC4oAMUAGKADFABigAxQAYoAMUAGKADFABigAxQAYoAMUAGKADFAC4oAMUAGKADF + ABigAxQAYoAMUAGKADFABigAxQAYoAMUAGKADFABigAxQAYoAMUAGKADFABigBcUAGKADFABigAxQAYo + AMUAGKADFABigAxQAYoAMUAGKADFABigAxQAYoAMUAGKAFxQAYoAMUAGKADFABigAxQAYoAMUAGKADFA + BigAxQAYoAMUAGKADFABigBcUAGKADFACYoAMUAGKADFAC4oAMUAGKADFABigAxQAYoAMUAGKADFABig + AxQAYoAMUAGKADFAC4oAMUAGKADFABigAxQAYoAMUAGKADFABigAxQAYoAMUAGKADFABigBcUAGKADFA + BigAxQAYoAMUAGKADFABigAxQAYoAMUAGKADFABigAxQAYoAMUAGKADFABigAxQAYoAMUAGKADFAC4oA + MUAGKADFABigAxQAYoAMUAGKADFABigAxQAYoAMUAGKADFABigAxQAuKADFABigAxQAYoAMUAGKADFAB + igAxQAYoAMUAGKADFABigAxQAuKADFACYoAMUAGKADFABigBcUAGKADFABigAxQAYoAMUAGKADFABigA + xQAYoAMUAGKADFABigBcUAGKADFABigAxQAYoAMUAGKBBigAxQMMUAGKBBigAxQAYoGGKADFAgxQAYoG + GKAFxQAYoAMUCDFABigYYoAMUAGKBBigAxQAYoGGKADFABigAxQIMUAGKBhigQYoAMUAGKADFAwxQIMU + AGKAFxQAYoAMUDDFAgxQAYoGGKADFABigQYoAMUDDFABigAxQAYoEGKAFxQMMUAGKBBigAxQAYoGGKAD + FAgxQAYoGGKADFABigAxQIMUDDFAC4oAMUAJigAxQIMUAGKBhigBcUAGKADFAgxQAYoGGKBBigAxQAYo + AMUAGKADFABigAxQAYoAMUAGKADFABigAxQAuKADFABigAxQAYoAMUAGKADFABigAxQAYoAMUAGKADFA + BigAxQAYoAMUALigAxQAYoAMUAGKADFABigAxQAYoAMUAGKADFABigAxQAYoAMUAGKADFABigAxQAYoA + MUAGKAFxQAYoAMUAGKADFABigAxQAYoAMUAGKADFABigAxQAYoAMUAGKAFxQAYoAMUAGKADFABigAxQA + YoAMUAGKADFABigAxQAYoAMUAGKADFABigAxQAYoAMUAGKADFABigAxQAuKADFABigAxQAYoAMUAGKAD + FABigAxQAYoAMUAGKADFABigAxQAuKADFABigAxQAYoAMUAGKADFABigAxQAYoAMUAGKADFABigAxQAY + oAMUAGKADFABigBcUAGKADFABigAxQAYoAMUAGKADFABigAxQAYoAMUAGKADFABigAxQAYoAMUAGKADF + ABigAxQAuKADFABigAxQAYoAMUAGKADFABigAxQAYoAMUAGKADFABigAxQAYoAMUALigAxQAYoAMUAGK + ADFABigAxQAYoAMUAGKADFABigAxQAYoAMUAGKADFABigAxQAYoAMUAGKAFxQAYoAMUAGKADFABigAxQ + AYoAMUAGKADFABigAxQAYoAMUAGKADFABigAxQAYoAXFABigAxQAYoAMUAGKADFABigAxQAYoAMUAGKA + DFABigAxQAYoAXFABigAxQAYoAMUAGKAExQAuKADFABigAxQAYoAMUAGKADFABigAxQAYoAMUAGKADFA + BigAxQAYoAMUALigAxQAYoAMUAGKADFABigAxQAYoAMUAGKADFABigAxQAYoAMUALigAxQAYoAMUAGKA + DFABigAxQAYoAMUAGKADFABigAxQAYoAMUAGKADFABigAxQAYoAMUAGKADFABigBcUAGKADFABigAxQA + YoAMUAGKADFABigAxQAYoAMUAGKADFABigBcUAGKADFABigAxQAYoAMUAGKADFABigAxQAYoAMUAGKAD + FABigBcUAGKADFABigAxQAYoAMUAGKADFABigAxQAYoAMUAGKADFABigAxQAYoAMUAGKADFABigAxQAY + oAMUALigAxQAYoAMUAGKADFABigAxQAYoAMUAGKADFABigAxQAYoAMUALigAxQAYoAMUAGKADFABigAx + QAYoAMUAGKADFABigAxQAYoAMUALigBMUAGKADFABigAxQAYoAXFABigAxQAYoAMUAGKADFABigAxQAY + oAMUAGKADFABigAxQAYoAMUAGKAFxQAYoAMUAGKADFABigAxQAYoAMUAGKADFABigAxQAYoAMUAGKAFx + QAYoAMUAGKADFABigAxQAYoAMUAGKADFABigAxQAYoAMUAGKADFABigAxQAYoAMUAGKADFABigAxQAuK + ADFABigAxQAYoAMUAGKADFABigAxQAYoAMUAGKADFABigAxQAuKADFABigAxQAYoAMUAGKADFABigAxQ + AYoAMUAGKADFABigAxQAuKADFABigBMUAGKADFABigBcUAGKADFABigAxQAYoAMUAGKADFABigAxQAYo + AMUAGKADFABigAxQAYoAXFABigAxQAYoAMUAGKADFABigAxQAYoAMUAGKADFABigAxQAYoAXFABigAxQ + AYoAMUAGKADFABigAxQAYoAMUAGKADFABigAxQAYoAMUAGKADFABigAxQAYoAMUALigAxQAYoAMUAGKA + DFABigAxQAYoAMUAGKADFABigAxQAYoAMUAGKADFAC4oAMUAGKADFABigAxQAYoAMUAGKADFABigAxQA + YoAMUAGKADFABigBcUAGKADFABigBMUAGKAFxQAYoAMUAGKADFABigAxQAYoAMUAGKADFABigAxQAYoA + MUAGKADFABigBcUAGKADFABigAxQAYoAMUAGKADFABigAxQAYoAMUAGKADFABigBcUAGKADFABigAxQA + YoAMUAGKADFABigAxQAYoAMUAGKADFABigAxQAYoAMUAGKADFABigAxQAuKADFABigAxQAYoAMUAGKAD + FABigAxQAYoAMUAGKADFABigAxQAYoAMUALigAxQAYoAMUAGKADFABigAxQAYoAMUAGKADFABigAxQAY + oAMUAGKAFxQAYoAMUAGKADFABigAxQAYoAMUAGKADFABigAxQAYoAMUAGKADFABigAxQAYoAMUAGKADF + AC4oAMUAGKADFABigAxQAYoAMUAGKADFABigAxQAYoAMUAGKADFABigAxQAuKADFABigAxQAYoAMUAGK + ADFABigAxQAYoAMUAGKADFABigAxQAYoAMUAGKADFABigAxQAuKADFABigAxQAYoAMUAGKADFABigAxQ + AYoAMUAGKADFABigAxQAYoAMUALigAxQAYoAMUAGKADFABigAxQAYoAMUAGKADFABigAxQAYoAMUAGKA + FxQAYoAMUAGKADFABigAxQAYoAMUAGKADFABigAxQAYoAMUAGKADFABigAxQAYoAMUAGKADFAC4oAMUA + GKADFABigAxQAYoAMUAGKADFABigAxQAYoAMUAGKADFABigAxQAuKADFABigAxQAYoAMUAGKADFABigA + xQAYoAMUAGKAFxQAYoAMUAGKADaKADaKADFABigAxQAYoAMUAGKADFABigAxQAuBQAYFABgUAGBQAYFA + BigAxQAYoAMUAGKADFABigAxQAYoAMUAGKADFABigAxQAYoAMUAGKADFABigAoAKACgAoAKACgAoAKAC + gAoAKACgAoAKACgD/9k= + + + \ No newline at end of file diff --git a/Ping Tester Aluminium/GUI/_old_Form_Main.Designer.cs b/Ping Tester Aluminium/GUI/_old_Form_Main.Designer.cs deleted file mode 100644 index c238d04..0000000 --- a/Ping Tester Aluminium/GUI/_old_Form_Main.Designer.cs +++ /dev/null @@ -1,250 +0,0 @@ -namespace PingTesterAluminium -{ - partial class FormMain - { - /// - /// Variable nécessaire au concepteur. - /// - private System.ComponentModel.IContainer components = null; - - /// - /// Nettoyage des ressources utilisées. - /// - /// true si les ressources managées doivent être supprimées ; sinon, false. - protected override void Dispose(bool disposing) - { - if (disposing && (components != null)) - { - components.Dispose(); - } - base.Dispose(disposing); - } - - #region Code généré par le Concepteur Windows Form - - /// - /// Méthode requise pour la prise en charge du concepteur - ne modifiez pas - /// le contenu de cette méthode avec l'éditeur de code. - /// - private void InitializeComponent() - { - this.components = new System.ComponentModel.Container(); - System.ComponentModel.ComponentResourceManager resources = new System.ComponentModel.ComponentResourceManager(typeof(FormMain)); - this.label_time = new System.Windows.Forms.Label(); - this.timerPing = new System.Windows.Forms.Timer(this.components); - this.label_rating = new System.Windows.Forms.Label(); - this.progressBarTime = new System.Windows.Forms.ProgressBar(); - this.button_settings = new System.Windows.Forms.Button(); - this.label_host = new System.Windows.Forms.Label(); - this.button_about = new System.Windows.Forms.Button(); - this.button_pause = new System.Windows.Forms.Button(); - this.backgroundWorkerPing = new System.ComponentModel.BackgroundWorker(); - this.button_close = new System.Windows.Forms.Button(); - this.label_applicationTitle = new System.Windows.Forms.Label(); - this.button_minimize = new System.Windows.Forms.Button(); - this.SuspendLayout(); - // - // label_time - // - this.label_time.AutoSize = true; - this.label_time.BackColor = System.Drawing.Color.Transparent; - this.label_time.ForeColor = System.Drawing.Color.Gray; - this.label_time.Location = new System.Drawing.Point(125, 92); - this.label_time.Margin = new System.Windows.Forms.Padding(4, 0, 4, 0); - this.label_time.Name = "label_time"; - this.label_time.Size = new System.Drawing.Size(167, 36); - this.label_time.TabIndex = 3; - this.label_time.Text = "Timeout"; - // - // timerPing - // - this.timerPing.Interval = 1000; - this.timerPing.Tick += new System.EventHandler(this.timerPing_Tick); - // - // label_rating - // - this.label_rating.AutoSize = true; - this.label_rating.BackColor = System.Drawing.Color.Transparent; - this.label_rating.ForeColor = System.Drawing.Color.Gray; - this.label_rating.Location = new System.Drawing.Point(74, 174); - this.label_rating.Margin = new System.Windows.Forms.Padding(4, 0, 4, 0); - this.label_rating.Name = "label_rating"; - this.label_rating.Size = new System.Drawing.Size(287, 36); - this.label_rating.TabIndex = 5; - this.label_rating.Text = "Disconnected"; - // - // progressBarTime - // - this.progressBarTime.ForeColor = System.Drawing.SystemColors.ControlText; - this.progressBarTime.Location = new System.Drawing.Point(135, 136); - this.progressBarTime.Margin = new System.Windows.Forms.Padding(4); - this.progressBarTime.MarqueeAnimationSpeed = 0; - this.progressBarTime.Maximum = 300; - this.progressBarTime.Name = "progressBarTime"; - this.progressBarTime.Size = new System.Drawing.Size(150, 34); - this.progressBarTime.Step = 0; - this.progressBarTime.TabIndex = 4; - this.progressBarTime.Value = 300; - // - // button_settings - // - this.button_settings.Anchor = System.Windows.Forms.AnchorStyles.Bottom; - this.button_settings.BackgroundImage = global::PingTesterAluminium.Properties.Resources.background; - this.button_settings.BackgroundImageLayout = System.Windows.Forms.ImageLayout.Stretch; - this.button_settings.Cursor = System.Windows.Forms.Cursors.Hand; - this.button_settings.FlatStyle = System.Windows.Forms.FlatStyle.Flat; - this.button_settings.Font = new System.Drawing.Font("Visitor TT1 BRK", 15F); - this.button_settings.Location = new System.Drawing.Point(136, 328); - this.button_settings.Margin = new System.Windows.Forms.Padding(4); - this.button_settings.Name = "button_settings"; - this.button_settings.Size = new System.Drawing.Size(142, 33); - this.button_settings.TabIndex = 0; - this.button_settings.Text = "Settings"; - this.button_settings.UseVisualStyleBackColor = false; - this.button_settings.Click += new System.EventHandler(this.buttonSettings_Click); - // - // label_host - // - this.label_host.AutoSize = true; - this.label_host.BackColor = System.Drawing.Color.Transparent; - this.label_host.ForeColor = System.Drawing.Color.Gray; - this.label_host.Location = new System.Drawing.Point(154, 248); - this.label_host.Name = "label_host"; - this.label_host.Size = new System.Drawing.Size(111, 36); - this.label_host.TabIndex = 6; - this.label_host.Text = "Host"; - // - // button_about - // - this.button_about.Anchor = ((System.Windows.Forms.AnchorStyles)((System.Windows.Forms.AnchorStyles.Bottom | System.Windows.Forms.AnchorStyles.Right))); - this.button_about.BackgroundImage = global::PingTesterAluminium.Properties.Resources.background; - this.button_about.BackgroundImageLayout = System.Windows.Forms.ImageLayout.Stretch; - this.button_about.Cursor = System.Windows.Forms.Cursors.Hand; - this.button_about.FlatStyle = System.Windows.Forms.FlatStyle.Flat; - this.button_about.Font = new System.Drawing.Font("Visitor TT1 BRK", 15F); - this.button_about.Image = global::PingTesterAluminium.Properties.Resources.about; - this.button_about.Location = new System.Drawing.Point(362, 328); - this.button_about.Margin = new System.Windows.Forms.Padding(4); - this.button_about.Name = "button_about"; - this.button_about.Size = new System.Drawing.Size(40, 33); - this.button_about.TabIndex = 2; - this.button_about.UseVisualStyleBackColor = false; - this.button_about.Click += new System.EventHandler(this.buttonAbout_Click); - // - // button_pause - // - this.button_pause.Anchor = ((System.Windows.Forms.AnchorStyles)((System.Windows.Forms.AnchorStyles.Bottom | System.Windows.Forms.AnchorStyles.Left))); - this.button_pause.BackgroundImage = global::PingTesterAluminium.Properties.Resources.background; - this.button_pause.BackgroundImageLayout = System.Windows.Forms.ImageLayout.Stretch; - this.button_pause.Cursor = System.Windows.Forms.Cursors.Hand; - this.button_pause.FlatStyle = System.Windows.Forms.FlatStyle.Flat; - this.button_pause.Font = new System.Drawing.Font("Visitor TT1 BRK", 15F); - this.button_pause.Image = global::PingTesterAluminium.Properties.Resources.pause; - this.button_pause.Location = new System.Drawing.Point(14, 328); - this.button_pause.Margin = new System.Windows.Forms.Padding(4); - this.button_pause.Name = "button_pause"; - this.button_pause.Size = new System.Drawing.Size(40, 33); - this.button_pause.TabIndex = 1; - this.button_pause.UseVisualStyleBackColor = false; - this.button_pause.Click += new System.EventHandler(this.buttonPause_Click); - // - // backgroundWorkerPing - // - this.backgroundWorkerPing.DoWork += new System.ComponentModel.DoWorkEventHandler(this.backgroundWorkerPing_DoWork); - this.backgroundWorkerPing.RunWorkerCompleted += new System.ComponentModel.RunWorkerCompletedEventHandler(this.backgroundWorkerPing_RunWorkerCompleted); - // - // button_close - // - this.button_close.Anchor = ((System.Windows.Forms.AnchorStyles)((System.Windows.Forms.AnchorStyles.Top | System.Windows.Forms.AnchorStyles.Right))); - this.button_close.BackColor = System.Drawing.Color.Transparent; - this.button_close.BackgroundImage = global::PingTesterAluminium.Properties.Resources.close; - this.button_close.BackgroundImageLayout = System.Windows.Forms.ImageLayout.Stretch; - this.button_close.Cursor = System.Windows.Forms.Cursors.Hand; - this.button_close.FlatAppearance.BorderSize = 0; - this.button_close.FlatStyle = System.Windows.Forms.FlatStyle.Flat; - this.button_close.Font = new System.Drawing.Font("Visitor TT1 BRK", 15F); - this.button_close.Location = new System.Drawing.Point(369, 14); - this.button_close.Margin = new System.Windows.Forms.Padding(4); - this.button_close.Name = "button_close"; - this.button_close.Size = new System.Drawing.Size(33, 33); - this.button_close.TabIndex = 2; - this.button_close.UseVisualStyleBackColor = false; - this.button_close.Click += new System.EventHandler(this.button_close_Click); - // - // label_applicationTitle - // - this.label_applicationTitle.BackColor = System.Drawing.Color.Transparent; - this.label_applicationTitle.Font = new System.Drawing.Font("Visitor TT1 BRK", 30F); - this.label_applicationTitle.ForeColor = System.Drawing.Color.Black; - this.label_applicationTitle.Location = new System.Drawing.Point(13, 14); - this.label_applicationTitle.Margin = new System.Windows.Forms.Padding(4, 0, 4, 0); - this.label_applicationTitle.Name = "label_applicationTitle"; - this.label_applicationTitle.Size = new System.Drawing.Size(307, 33); - this.label_applicationTitle.TabIndex = 3; - this.label_applicationTitle.Text = "Ping Tester"; - this.label_applicationTitle.TextAlign = System.Drawing.ContentAlignment.MiddleLeft; - // - // button_minimize - // - this.button_minimize.Anchor = ((System.Windows.Forms.AnchorStyles)((System.Windows.Forms.AnchorStyles.Top | System.Windows.Forms.AnchorStyles.Right))); - this.button_minimize.BackColor = System.Drawing.Color.Transparent; - this.button_minimize.BackgroundImage = global::PingTesterAluminium.Properties.Resources.minimize; - this.button_minimize.BackgroundImageLayout = System.Windows.Forms.ImageLayout.Stretch; - this.button_minimize.Cursor = System.Windows.Forms.Cursors.Hand; - this.button_minimize.FlatAppearance.BorderSize = 0; - this.button_minimize.FlatStyle = System.Windows.Forms.FlatStyle.Flat; - this.button_minimize.Font = new System.Drawing.Font("Visitor TT1 BRK", 15F); - this.button_minimize.Location = new System.Drawing.Point(328, 14); - this.button_minimize.Margin = new System.Windows.Forms.Padding(4); - this.button_minimize.Name = "button_minimize"; - this.button_minimize.Size = new System.Drawing.Size(33, 33); - this.button_minimize.TabIndex = 2; - this.button_minimize.UseVisualStyleBackColor = false; - this.button_minimize.Click += new System.EventHandler(this.button_minimize_Click); - // - // FormMain - // - this.ClientSize = new System.Drawing.Size(416, 376); - this.Controls.Add(this.label_host); - this.Controls.Add(this.button_pause); - this.Controls.Add(this.button_minimize); - this.Controls.Add(this.button_close); - this.Controls.Add(this.button_about); - this.Controls.Add(this.button_settings); - this.Controls.Add(this.progressBarTime); - this.Controls.Add(this.label_rating); - this.Controls.Add(this.label_applicationTitle); - this.Controls.Add(this.label_time); - this.Cursor = System.Windows.Forms.Cursors.Default; - this.Font = new System.Drawing.Font("Visitor TT1 BRK", 30F); - this.FormBorderStyle = System.Windows.Forms.FormBorderStyle.None; - this.Icon = ((System.Drawing.Icon)(resources.GetObject("$this.Icon"))); - this.Margin = new System.Windows.Forms.Padding(10, 8, 10, 8); - this.MaximizeBox = false; - this.Name = "FormMain"; - this.StartPosition = System.Windows.Forms.FormStartPosition.CenterScreen; - this.Text = "Ping Tester"; - this.Load += new System.EventHandler(this.FormMain_Load); - this.ResumeLayout(false); - this.PerformLayout(); - - } - - #endregion - - private System.Windows.Forms.Label label_time; - private System.Windows.Forms.Label label_rating; - private System.Windows.Forms.ProgressBar progressBarTime; - private System.Windows.Forms.Button button_settings; - private System.Windows.Forms.Label label_host; - private System.Windows.Forms.Button button_about; - private System.Windows.Forms.Button button_pause; - private System.ComponentModel.BackgroundWorker backgroundWorkerPing; - public System.Windows.Forms.Timer timerPing; - private System.Windows.Forms.Button button_close; - private System.Windows.Forms.Label label_applicationTitle; - private System.Windows.Forms.Button button_minimize; - - } -} - diff --git a/Ping Tester Aluminium/GUI/_old_Form_Main.cs b/Ping Tester Aluminium/GUI/_old_Form_Main.cs deleted file mode 100644 index edbf385..0000000 --- a/Ping Tester Aluminium/GUI/_old_Form_Main.cs +++ /dev/null @@ -1,134 +0,0 @@ -using System; -using System.Windows.Forms; -using PingTesterAluminium.Properties; - -namespace PingTesterAluminium -{ - public partial class FormMain : Form - { - public FormMain() - { - InitializeComponent(); - timerPing.Start(); - } - - private void timerPing_Tick(object sender, EventArgs e) - { - // Set Timer Interval from Settings - if (Settings.Default.Interval < 100) timerPing.Interval = 100; - else timerPing.Interval = Settings.Default.Interval; - - // Save Timer Interval - if (timerPing.Interval != Settings.Default.Interval) - { - Settings.Default.Interval = timerPing.Interval; - Settings.Default.Save(); - } - - // Get Ping Response using Host from Settings - if (!backgroundWorkerPing.IsBusy) backgroundWorkerPing.RunWorkerAsync(); - } - - private void backgroundWorkerPing_DoWork(object sender, System.ComponentModel.DoWorkEventArgs e) - { - e.Result = PingTest.Ping(Settings.Default.Host); - } - - private void backgroundWorkerPing_RunWorkerCompleted(object sender, System.ComponentModel.RunWorkerCompletedEventArgs e) - { - PingResult response = (PingResult)e.Result; - - // Display Time - label_time.Text = response.Time > 0 ? response.Time.ToString() + " ms" : "Timeout"; - label_time.ForeColor = response.Color; - label_time.CenterHorizontally(); - - // Display Progression - if (response.Time > progressBarTime.Maximum) progressBarTime.Value = progressBarTime.Maximum; - else if (response.Time < progressBarTime.Minimum) progressBarTime.Value = progressBarTime.Minimum; - else progressBarTime.Value = (int)response.Time; - progressBarTime.ForeColor = response.Color; - - // Display Rating - label_rating.Text = response.Rating; - label_rating.ForeColor = response.Color; - label_rating.CenterHorizontally(); - - // Display Host - label_host.Text = response.Host; - label_host.CenterHorizontally(); - - // Save Host - if (response.Host != Settings.Default.Host) - { - Settings.Default.Host = response.Host; - Settings.Default.Save(); - } - } - - - private void buttonSettings_Click(object sender, EventArgs e) - { - // Stop Timer - bool timerStatus = timerPing.Enabled; - TimerSwitch(false); - - // Create & Open Settings Form - FormSettings formSettings = new FormSettings(); - formSettings.ShowDialog(); - - // Restore Timer Status - TimerSwitch(timerStatus); - } - - private void buttonAbout_Click(object sender, EventArgs e) - { - // Stop Timer - bool timerStatus = timerPing.Enabled; - TimerSwitch(false); - - // Create & Open About Form - FormAbout formAbout = new FormAbout(); - formAbout.ShowDialog(); - - // Restore Timer Status - TimerSwitch(timerStatus); - } - - private void buttonPause_Click(object sender, EventArgs e) - { - TimerSwitch(); - } - - public void TimerSwitch() - { - timerPing.Enabled = !timerPing.Enabled; - button_pause.Image = timerPing.Enabled ? Resources.pause : Resources.play; - } - public void TimerSwitch(bool status) - { - timerPing.Enabled = status; - button_pause.Image = timerPing.Enabled ? Resources.pause : Resources.play; - } - - private void FormMain_Load(object sender, EventArgs e) - { - - } - - private void button_close_Click(object sender, EventArgs e) - { - Close(); - } - - private void button_minimize_Click(object sender, EventArgs e) - { - WindowState = FormWindowState.Minimized; - } - - private void aluminiumButton1_Load(object sender, EventArgs e) - { - - } - } -} diff --git a/Ping Tester Aluminium/GUI/_old_Form_Main.resx b/Ping Tester Aluminium/GUI/_old_Form_Main.resx deleted file mode 100644 index 67a2644..0000000 --- a/Ping Tester Aluminium/GUI/_old_Form_Main.resx +++ /dev/null @@ -1,225 +0,0 @@ - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - text/microsoft-resx - - - 2.0 - - - System.Resources.ResXResourceReader, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089 - - - System.Resources.ResXResourceWriter, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089 - - - 17, 17 - - - 121, 17 - - - 52 - - - - - AAABAAIAEBAAAAEAIABoBAAAJgAAACAgAAABACAAqBAAAI4EAAAoAAAAEAAAACAAAAABACAAAAAAADAE - AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA - AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA - AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAFBGNlBQRziqUEc4qlBHOKpQRziqUEc4qlBH - OKpQRziqUEc4qlBHOKpQRziqTkg4TgAAAAAAAAAAAAAAAFVJPRVSSzzvYFhJ/09HN/9PRzf/xbES/8Wx - Ev/FsRL/xbES/09HN/9PRzf/WlND/1NKOu5NTTMUAAAAAAAAAABPRziFhX9y/6qlmv+CfG7/T0c3/8Wx - Ev/FsRL/xbES/8WxEv9PRzf/h4Fz/6ynm/+EfXD/Tkc3ggAAAAAAAAAAT0c30a6qnv9RSTj/WFFB/09H - N/9PRzf/T0c3/09HN/9PRzf/T0c3/1hRQf9RSTn/r6qe/09HNs4AAAAAAAAAAE9HN/SyraH/dW5f/09H - N/9PRzf/T0c3/xhAw/8aQb3/T0c3/09HN/9PRzf/dW5f/7Ktof9PRzfzAAAAAAAAAABPRzfzsq2i/353 - av9QSDj/T0c3/09HN/8NP9//Bz7u/yZCn/9MR0D/UEg4/353av+yraL/T0c38gAAAAAAAAAAT0c30bCr - oP9RSTr/XVVG/09HN/9PRzf/T0c3/09HN/81Q3r/FT/J/zdEc/9QSDn/sKqf/09HNs4AAAAAAAAAAE5H - N4KNiHv/qaSY/3pzZf9PRzf/T0c3/09HN/9PRzf/T0c3/01HO/8vQ4j/e3Vs/4yFeP9ORjZ/AAAAAAAA - AABVST0VVUw78bWwpP9gWEn/iYN1/1dPP/9PRzf/T0c3/15WR/97dGb/YFhJ/7Svpf9TTD3vUUM2EwAA - AAAAAAAAAAAAAE5INlVeVkf+s62i/6Oekf9QSDn/fndq/353av9RSTv/qaKY/7Ktof9dVkb+Tkg4UgAA - AAAAAAAAAAAAAAAAAAAAAAAAT0c2WlNKPPSJgnX/sayh/7Ktov+yraL/sayh/4eBdP9SSzrzT0Y4VwAA - AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAABRRjoWTkY2f1BHOMpPRzfpT0c36VBHOMpPRzd+VUk9FQAA - AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA - AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA - AAAAAAAAAAAAAAAAAAAAAAAAAAAAAP//AAD//wAA4AcAAMADAACAAQAAgAEAAIABAACAAQAAgAEAAIAD - AADAAwAA4AcAAPAPAAD8PwAA//8AAP//AAAoAAAAIAAAAEAAAAABACAAAAAAAIAQAAAAAAAAAAAAAAAA - AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA - AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA - AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA - AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA - AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA - AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA - AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA - AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA - AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAExF - NyVPRzhET0c4RE9HOERPRzhET0c4RE9HOERPRzhET0c4RE9HOERPRzhET0c4RE9HOERPRzhET0c4RE9H - OERPRzhET0c4RE9HOERPRzhET0c4RE5HOSQAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA - AABRRjoWT0c35U9HN/9PRzf/T0c3/09HN/9PRzf/T0c3/09HN/9PRzf/T0c3/09HN/9PRzf/T0c3/09H - N/9PRzf/T0c3/09HN/9PRzf/T0c3/09HN/9PRzf/T0Y35FVJPRUAAAAAAAAAAAAAAAAAAAAAAAAAAAAA - AAAAAAAAAAAAAU5GNsBPRzf/T0c3/09HN/9PRzf/T0c3/09HN/9PRzf/insl/4p7Jf+KeyX/insl/4p7 - Jf+KeyX/insl/4p7Jf9PRzf/T0c3/09HN/9PRzf/T0c3/09HN/9PRzf/UEg3vQAAAAEAAAAAAAAAAAAA - AAAAAAAAAAAAAAAAAABNRzdPT0c3/15XSP+MhXj/UUk5/09HN/9PRzf/T0c3/09HN///5QD//+UA///l - AP//5QD//+UA///lAP//5QD//+UA/09HN/9PRzf/T0c3/09HN/9QSDj/gntt/11WRv9PRzf/UUY2TAAA - AAAAAAAAAAAAAAAAAAAAAAAAgIAAAk9HN9RPRzf/qaOY/8vHvf+7tqv/amNU/09HN/9PRzf/T0c3///l - AP//5QD//+UA///lAP//5QD//+UA///lAP//5QD/T0c3/09HN/9PRzf/bWZX/7q2qv/MyL//qKKX/09H - N/9PRzfRAAAAAQAAAAAAAAAAAAAAAAAAAABNSDU1T0c3/15WR//a1s3/kIl9/7m0qf/b187/cWpc/09H - N/9PRzf/insl/4p7Jf+KeyX/insl/4p7Jf+KeyX/insl/4p7Jf9PRzf/T0c3/3ZvYv/c2M//t7Kn/5CK - ff/a1s3/XVVG/09HN/9NRzgyAAAAAAAAAAAAAAAAAAAAAFBIOIBPRzf/kYt+/9LNxP9TSzv/T0c3/3dw - Yf9QSDn/T0c3/09HN/9PRzf/T0c3/09HN/9PRzf/T0c3/09HN/9PRzf/T0c3/09HN/9PRzf/UUk4/3Zv - Yv9PRzf/VEw7/9LNxP+OiHv/T0c3/1BHN30AAAAAAAAAAAAAAAAAAAAAT0c3wk9HN/+yraL/raic/09H - N/9PRzf/T0c3/09HN/9PRzf/T0c3/09HN/9PRzf/T0c3/09HN/9PRzf/T0c3/09HN/9PRzf/T0c3/09H - N/9PRzf/T0c3/09HN/9PRzf/rqid/7CroP9PRzf/T0c3vwAAAAAAAAAAAAAAAAAAAABPRzbcT0c3/83I - vv+PiXz/T0c3/09HN/9PRzf/T0c3/09HN/9PRzf/T0c3/09HN/88RWf/FEDN/xdAxf9DRVX/T0c3/09H - N/9PRzf/T0c3/09HN/9PRzf/T0c3/09HN/+Qin7/y8e9/09HN/9QRzfaAAAAAAAAAAAAAAAAAAAAAE9H - N/RPRzf/19PK/6qlmf+tqJz/raic/1BIOf9PRzf/T0c3/09HN/9PRzf/T0c3/wk+5/8APf//AD3//xU/ - yf9PRzf/T0c3/09HN/9PRzf/T0c3/1FJOP+tqJz/raic/6qkmf/W08n/T0c3/09HN/MAAAAAAAAAAAAA - AAAAAAAAT0c3809HN//W0cj/r6me/7axp/+2saf/UUk4/09HN/9PRzf/T0c3/09HN/9ORjn/BD71/wA9 - //8APf//Aj35/zdEc/9PRzf/T0c3/09HN/9PRzf/UUk5/7axp/+2saf/r6mf/9XRx/9PRzf/T0c38gAA - AAAAAAAAAAAAAAAAAABQRzfaT0c3/8fDuf+SjID/T0c3/09HN/9PRzf/T0c3/09HN/9PRzf/T0c3/09H - N/8wQ4X/BD71/wY97/8SQNP/AD3//x1Btv9GRk7/T0c3/09HN/9PRzf/T0c3/09HN/+UjYH/xsK3/09H - N/9PRzfYAAAAAAAAAAAAAAAAAAAAAE9HN79PRzf/tK+l/6ummv9PRzf/T0c3/09HN/9PRzf/T0c3/09H - N/9PRzf/T0c3/09HN/9PRzf/T0c3/09HN/85RG//DD7g/wI9+f8nQpv/TEY//09HN/9PRzf/T0c3/62n - nP+zrqP/T0c3/1BIN70AAAAAAAAAAAAAAAAAAAAAT0c4hU9HN/+Nh3r/0s7E/1FJOf9UTDz/iYN2/1FJ - OP9PRzf/T0c3/09HN/9PRzf/T0c3/09HN/9PRzf/T0c3/09HN/9ORzr/LUOO/wU+8v8KP+f/N0Rz/09H - N/9RSjr/0s/F/4uFd/9PRzf/Tkc3ggAAAAAAAAAAAAAAAAAAAABNSDU1T0c3/2BYSf/a1s7/l5GF/8vH - vf/V0cf/aWJT/09HN/9PRzf/T0c3/09HN/9PRzf/T0c3/09HN/9PRzf/T0c3/09HN/9PRzf/SkdD/yNB - pv8EPvT/RUVP/4J8bv/a1s7/X1hJ/09HN/9NRzgyAAAAAAAAAAAAAAAAAAAAAAAAAAFPRzfXT0c3/6ah - lf/NyL7/q6ab/15WR/9PRzf/T0c3/09HN/9PRzf/T0c3/09HN/9PRzf/T0c3/09HN/9PRzf/T0c3/09H - N/9PRzf/T0c3/0pHRP9UTDv/y8e9/6Sek/9PRzf/T0c31QAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAFBI - NllPRzf/XlZH/9XRx/+inJD/T0c3/09HN/9PRzf/fndq/1BIOf9PRzf/T0c3/09HN/9PRzf/T0c3/09H - N/9RSTn/a2RV/09HN/9PRzf/T0c3/6Sekv/Uz8b/XVVG/09HN/9QRzhWAAAAAAAAAAAAAAAAAAAAAAAA - AAAAAAAAAAAAAU9HN8lPRzf/e3Rm/9vXzf+Nh3r/T0c3/353av/b187/bWVX/09HN/9PRzf/T0c3/09H - N/9PRzf/T0c3/4qEd//W0sj/XldI/09HN/+OiHv/29fN/3lyZf9PRzf/T0c2xQAAAAEAAAAAAAAAAAAA - AAAAAAAAAAAAAAAAAAAAAAAATUc1K09HN/FPRzf/jYh7/9vXzv+jnZL/yMS4/6mjmP9PRzf/T0c3/09H - N/+tqJz/raic/09HN/9PRzf/VEw8/8vHvf+qpJn/pZ+U/9vXzf+Nhnn/T0c3/09HN+5MRTclAAAAAAAA - AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAATkc3QU9HN/pPRzf/fXVo/9bSyP/Nyb//iYR2/1JK - O/9PRzf/T0c3/62onP+tqJz/T0c3/09HN/9SSjv/l5KF/87KwP/W0cj/e3Vn/09HN/9PRzf5TkY1PgAA - AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAT0Y4TU9HN/NPRzf/XldI/6Se - kv/a1cz/1NDH/66onf+WkIT/sq2i/66qnv+WkIT/rqme/9XRx//a1cz/op2R/15WR/9PRzf/T0c38lFG - NkwAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAUUo2JlBH - N81PRzf/T0c3/11VRv+Jg3b/trCl/8bAt//RzcP/0c3D/8bAt/+1sKT/iYN1/11URf9PRzf/T0c3/09I - N8tQSTojAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA - AAAAAAAAAAAAAU5GN1hPRzfZT0c3/09HN/9PRzf/T0c3/09HN/9PRzf/T0c3/09HN/9PRzf/T0c3/09H - N9hQRzhWAAAAAQAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA - AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAABOSTkxT0c3flBHN7pPRzjTT0c36U9HN+lPRzjTUEc3ulBH - N31QRTUwAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA - AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA - AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA - AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA - AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA - AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA - AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA - AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA - AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA - AAAAAAAAAAAAAAAAAAAAAAAAAAAAAP//////////////////////////+AAAH/AAAA/wAAAP4AAAB+AA - AAfAAAAHwAAAA8AAAAPAAAADwAAAA8AAAAPAAAADwAAAA+AAAAfgAAAH8AAAD/AAAA/4AAAf/AAAP/4A - AH//AAD//8AD///4H/////////////////////// - - - \ No newline at end of file diff --git a/Ping Tester Aluminium/GUI/_old_Form_Settings.Designer.cs b/Ping Tester Aluminium/GUI/_old_Form_Settings.Designer.cs deleted file mode 100644 index 1a4287a..0000000 --- a/Ping Tester Aluminium/GUI/_old_Form_Settings.Designer.cs +++ /dev/null @@ -1,161 +0,0 @@ -namespace PingTesterAluminium -{ - partial class FormSettings - { - /// - /// Variable nécessaire au concepteur. - /// - private System.ComponentModel.IContainer components = null; - - /// - /// Nettoyage des ressources utilisées. - /// - /// true si les ressources managées doivent être supprimées ; sinon, false. - protected override void Dispose(bool disposing) - { - if (disposing && (components != null)) - { - components.Dispose(); - } - base.Dispose(disposing); - } - - #region Code généré par le Concepteur Windows Form - - /// - /// Méthode requise pour la prise en charge du concepteur - ne modifiez pas - /// le contenu de cette méthode avec l'éditeur de code. - /// - private void InitializeComponent() - { - this.buttonSave = new System.Windows.Forms.Button(); - this.labelHost = new System.Windows.Forms.Label(); - this.textBoxHost = new System.Windows.Forms.TextBox(); - this.textBoxInterval = new System.Windows.Forms.TextBox(); - this.labelInterval = new System.Windows.Forms.Label(); - this.buttonCancel = new System.Windows.Forms.Button(); - this.SuspendLayout(); - // - // buttonSave - // - this.buttonSave.Anchor = ((System.Windows.Forms.AnchorStyles)((System.Windows.Forms.AnchorStyles.Bottom | System.Windows.Forms.AnchorStyles.Right))); - this.buttonSave.BackgroundImage = global::PingTesterAluminium.Properties.Resources.background; - this.buttonSave.BackgroundImageLayout = System.Windows.Forms.ImageLayout.Stretch; - this.buttonSave.Cursor = System.Windows.Forms.Cursors.Hand; - this.buttonSave.FlatStyle = System.Windows.Forms.FlatStyle.Flat; - this.buttonSave.Font = new System.Drawing.Font("Visitor TT1 BRK", 15F); - this.buttonSave.ImageAlign = System.Drawing.ContentAlignment.MiddleLeft; - this.buttonSave.Location = new System.Drawing.Point(411, 185); - this.buttonSave.Margin = new System.Windows.Forms.Padding(4); - this.buttonSave.Name = "buttonSave"; - this.buttonSave.Size = new System.Drawing.Size(150, 33); - this.buttonSave.TabIndex = 2; - this.buttonSave.Text = "Save"; - this.buttonSave.UseVisualStyleBackColor = false; - this.buttonSave.Click += new System.EventHandler(this.buttonSave_Click); - // - // labelHost - // - this.labelHost.AutoSize = true; - this.labelHost.BackColor = System.Drawing.Color.Transparent; - this.labelHost.Font = new System.Drawing.Font("Visitor TT1 BRK", 25F); - this.labelHost.ImageAlign = System.Drawing.ContentAlignment.MiddleLeft; - this.labelHost.Location = new System.Drawing.Point(120, 14); - this.labelHost.Name = "labelHost"; - this.labelHost.Size = new System.Drawing.Size(334, 31); - this.labelHost.TabIndex = 4; - this.labelHost.Text = "Host (Name or IP)"; - // - // textBoxHost - // - this.textBoxHost.BorderStyle = System.Windows.Forms.BorderStyle.FixedSingle; - this.textBoxHost.Location = new System.Drawing.Point(13, 48); - this.textBoxHost.Name = "textBoxHost"; - this.textBoxHost.Size = new System.Drawing.Size(547, 44); - this.textBoxHost.TabIndex = 0; - this.textBoxHost.Text = "google.com"; - this.textBoxHost.TextAlign = System.Windows.Forms.HorizontalAlignment.Center; - // - // textBoxInterval - // - this.textBoxInterval.BorderStyle = System.Windows.Forms.BorderStyle.FixedSingle; - this.textBoxInterval.Location = new System.Drawing.Point(12, 129); - this.textBoxInterval.Name = "textBoxInterval"; - this.textBoxInterval.Size = new System.Drawing.Size(548, 44); - this.textBoxInterval.TabIndex = 1; - this.textBoxInterval.Text = "1000"; - this.textBoxInterval.TextAlign = System.Windows.Forms.HorizontalAlignment.Center; - this.textBoxInterval.TextChanged += new System.EventHandler(this.textBoxInterval_TextChanged); - // - // labelInterval - // - this.labelInterval.AutoSize = true; - this.labelInterval.BackColor = System.Drawing.Color.Transparent; - this.labelInterval.Font = new System.Drawing.Font("Visitor TT1 BRK", 25F); - this.labelInterval.Location = new System.Drawing.Point(160, 95); - this.labelInterval.Name = "labelInterval"; - this.labelInterval.Size = new System.Drawing.Size(254, 31); - this.labelInterval.TabIndex = 5; - this.labelInterval.Text = "Interval (ms)"; - // - // buttonCancel - // - this.buttonCancel.Anchor = ((System.Windows.Forms.AnchorStyles)((System.Windows.Forms.AnchorStyles.Bottom | System.Windows.Forms.AnchorStyles.Left))); - this.buttonCancel.BackgroundImage = global::PingTesterAluminium.Properties.Resources.background; - this.buttonCancel.BackgroundImageLayout = System.Windows.Forms.ImageLayout.Stretch; - this.buttonCancel.Cursor = System.Windows.Forms.Cursors.Hand; - this.buttonCancel.DialogResult = System.Windows.Forms.DialogResult.Cancel; - this.buttonCancel.FlatStyle = System.Windows.Forms.FlatStyle.Flat; - this.buttonCancel.Font = new System.Drawing.Font("Visitor TT1 BRK", 15F); - this.buttonCancel.ImageAlign = System.Drawing.ContentAlignment.MiddleLeft; - this.buttonCancel.Location = new System.Drawing.Point(13, 185); - this.buttonCancel.Margin = new System.Windows.Forms.Padding(4); - this.buttonCancel.Name = "buttonCancel"; - this.buttonCancel.Size = new System.Drawing.Size(150, 33); - this.buttonCancel.TabIndex = 3; - this.buttonCancel.Text = "Cancel"; - this.buttonCancel.UseVisualStyleBackColor = false; - this.buttonCancel.Click += new System.EventHandler(this.buttonCancel_Click); - // - // FormSettings - // - this.AcceptButton = this.buttonSave; - this.AutoScaleDimensions = new System.Drawing.SizeF(24F, 36F); - this.AutoScaleMode = System.Windows.Forms.AutoScaleMode.Font; - this.BackgroundImage = global::PingTesterAluminium.Properties.Resources.background; - this.BackgroundImageLayout = System.Windows.Forms.ImageLayout.Stretch; - this.CancelButton = this.buttonCancel; - this.ClientSize = new System.Drawing.Size(574, 232); - this.Controls.Add(this.textBoxInterval); - this.Controls.Add(this.textBoxHost); - this.Controls.Add(this.labelInterval); - this.Controls.Add(this.labelHost); - this.Controls.Add(this.buttonCancel); - this.Controls.Add(this.buttonSave); - this.Font = new System.Drawing.Font("Visitor TT1 BRK", 30F); - this.FormBorderStyle = System.Windows.Forms.FormBorderStyle.FixedSingle; - this.Margin = new System.Windows.Forms.Padding(10, 8, 10, 8); - this.MaximizeBox = false; - this.MinimizeBox = false; - this.Name = "FormSettings"; - this.ShowIcon = false; - this.ShowInTaskbar = false; - this.StartPosition = System.Windows.Forms.FormStartPosition.CenterScreen; - this.Text = "Settings"; - this.ResumeLayout(false); - this.PerformLayout(); - - } - - #endregion - - private System.Windows.Forms.Button buttonSave; - private System.Windows.Forms.Label labelHost; - private System.Windows.Forms.TextBox textBoxHost; - private System.Windows.Forms.TextBox textBoxInterval; - private System.Windows.Forms.Label labelInterval; - private System.Windows.Forms.Button buttonCancel; - - } -} - diff --git a/Ping Tester Aluminium/GUI/_old_Form_Settings.cs b/Ping Tester Aluminium/GUI/_old_Form_Settings.cs deleted file mode 100644 index 1924dff..0000000 --- a/Ping Tester Aluminium/GUI/_old_Form_Settings.cs +++ /dev/null @@ -1,56 +0,0 @@ -using System; -using System.Windows.Forms; -using PingTesterAluminium.Properties; - -namespace PingTesterAluminium -{ - public partial class FormSettings : Form - { - public FormSettings() - { - InitializeComponent(); - this.SetFont(Resources.visitor.ToFontFamily()); - this.EnableHoverEffectsForChildButtons(); - textBoxHost.Text = Settings.Default.Host; - textBoxInterval.Text = Settings.Default.Interval.ToString(); - } - - private void buttonSave_Click(object sender, EventArgs e) - { - string host = textBoxHost.Text.Trim(); - if (host == string.Empty) - { - MessageBox.Show("A host name or ip must be given."); - return; - } - - int interval = 0; - if (!int.TryParse(textBoxInterval.Text, out interval)) - { - MessageBox.Show("Interval must be a number."); - return; - } - - if (interval <= 100) - { - interval = 100; - } - - Settings.Default.Host = host; - Settings.Default.Interval = interval; - Settings.Default.Save(); - ((FormMain)this.ParentForm).timerPing.Interval = interval; - this.Close(); - } - - private void buttonCancel_Click(object sender, EventArgs e) - { - this.Close(); - } - - private void textBoxInterval_TextChanged(object sender, EventArgs e) - { - - } - } -} diff --git a/Ping Tester Aluminium/GUI/_old_Form_Settings.resx b/Ping Tester Aluminium/GUI/_old_Form_Settings.resx deleted file mode 100644 index fa6b66e..0000000 --- a/Ping Tester Aluminium/GUI/_old_Form_Settings.resx +++ /dev/null @@ -1,123 +0,0 @@ - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - text/microsoft-resx - - - 2.0 - - - System.Resources.ResXResourceReader, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089 - - - System.Resources.ResXResourceWriter, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089 - - - 52 - - \ No newline at end of file diff --git a/Ping Tester Aluminium/GUI/old_Form_About.Designer.cs b/Ping Tester Aluminium/GUI/old_Form_About.Designer.cs deleted file mode 100644 index 8b3da60..0000000 --- a/Ping Tester Aluminium/GUI/old_Form_About.Designer.cs +++ /dev/null @@ -1,148 +0,0 @@ -namespace PingTesterAluminium -{ - partial class FormAbout - { - /// - /// Variable nécessaire au concepteur. - /// - private System.ComponentModel.IContainer components = null; - - /// - /// Nettoyage des ressources utilisées. - /// - /// true si les ressources managées doivent être supprimées ; sinon, false. - protected override void Dispose(bool disposing) - { - if (disposing && (components != null)) - { - components.Dispose(); - } - base.Dispose(disposing); - } - - #region Code généré par le Concepteur Windows Form - - /// - /// Méthode requise pour la prise en charge du concepteur - ne modifiez pas - /// le contenu de cette méthode avec l'éditeur de code. - /// - private void InitializeComponent() - { - this.button_ok = new System.Windows.Forms.Button(); - this.labelCopyright1 = new System.Windows.Forms.Label(); - this.labelCopyright2 = new System.Windows.Forms.Label(); - this.labelCopyright3 = new System.Windows.Forms.Label(); - this.labelCopyright4 = new System.Windows.Forms.Label(); - this.aluminiumButton1 = new PingTesterAluminium.AluminiumButton(); - this.SuspendLayout(); - // - // button_ok - // - this.button_ok.Anchor = System.Windows.Forms.AnchorStyles.Bottom; - this.button_ok.BackgroundImage = global::PingTesterAluminium.Properties.Resources.background; - this.button_ok.BackgroundImageLayout = System.Windows.Forms.ImageLayout.Stretch; - this.button_ok.Cursor = System.Windows.Forms.Cursors.Hand; - this.button_ok.FlatStyle = System.Windows.Forms.FlatStyle.Flat; - this.button_ok.Font = new System.Drawing.Font("Visitor TT1 BRK", 15F); - this.button_ok.Location = new System.Drawing.Point(198, 293); - this.button_ok.Margin = new System.Windows.Forms.Padding(4); - this.button_ok.Name = "button_ok"; - this.button_ok.Size = new System.Drawing.Size(143, 33); - this.button_ok.TabIndex = 0; - this.button_ok.Text = "Ok"; - this.button_ok.UseVisualStyleBackColor = false; - this.button_ok.Click += new System.EventHandler(this.buttonOk_Click); - // - // labelCopyright1 - // - this.labelCopyright1.AutoSize = true; - this.labelCopyright1.BackColor = System.Drawing.Color.Transparent; - this.labelCopyright1.Location = new System.Drawing.Point(96, 91); - this.labelCopyright1.Name = "labelCopyright1"; - this.labelCopyright1.Size = new System.Drawing.Size(347, 36); - this.labelCopyright1.TabIndex = 1; - this.labelCopyright1.Text = "AmbraPing 1.0.0.0"; - // - // labelCopyright2 - // - this.labelCopyright2.AutoSize = true; - this.labelCopyright2.BackColor = System.Drawing.Color.Transparent; - this.labelCopyright2.Location = new System.Drawing.Point(130, 149); - this.labelCopyright2.Name = "labelCopyright2"; - this.labelCopyright2.Size = new System.Drawing.Size(279, 36); - this.labelCopyright2.TabIndex = 2; - this.labelCopyright2.Text = "© Ambratolm"; - // - // labelCopyright3 - // - this.labelCopyright3.AutoSize = true; - this.labelCopyright3.BackColor = System.Drawing.Color.Transparent; - this.labelCopyright3.Location = new System.Drawing.Point(42, 185); - this.labelCopyright3.Name = "labelCopyright3"; - this.labelCopyright3.Size = new System.Drawing.Size(455, 36); - this.labelCopyright3.TabIndex = 3; - this.labelCopyright3.Text = "© Elhafid Softwares"; - // - // labelCopyright4 - // - this.labelCopyright4.AutoSize = true; - this.labelCopyright4.BackColor = System.Drawing.Color.Transparent; - this.labelCopyright4.Location = new System.Drawing.Point(220, 221); - this.labelCopyright4.Name = "labelCopyright4"; - this.labelCopyright4.Size = new System.Drawing.Size(99, 36); - this.labelCopyright4.TabIndex = 4; - this.labelCopyright4.Text = "2019"; - // - // aluminiumButton1 - // - this.aluminiumButton1.BackgroundImageLayout = System.Windows.Forms.ImageLayout.Stretch; - this.aluminiumButton1.Cursor = System.Windows.Forms.Cursors.Hand; - this.aluminiumButton1.FlatStyle = System.Windows.Forms.FlatStyle.Flat; - this.aluminiumButton1.Font = new System.Drawing.Font("Visitor TT1 BRK", 15F); - this.aluminiumButton1.Location = new System.Drawing.Point(136, 33); - this.aluminiumButton1.Name = "aluminiumButton1"; - this.aluminiumButton1.Size = new System.Drawing.Size(296, 32); - this.aluminiumButton1.TabIndex = 5; - this.aluminiumButton1.Text = "aluminiumButton1"; - this.aluminiumButton1.UseVisualStyleBackColor = false; - // - // FormAbout - // - this.AutoScaleDimensions = new System.Drawing.SizeF(24F, 36F); - this.AutoScaleMode = System.Windows.Forms.AutoScaleMode.Font; - this.BackgroundImage = global::PingTesterAluminium.Properties.Resources.background; - this.BackgroundImageLayout = System.Windows.Forms.ImageLayout.Stretch; - this.ClientSize = new System.Drawing.Size(538, 340); - this.Controls.Add(this.aluminiumButton1); - this.Controls.Add(this.labelCopyright4); - this.Controls.Add(this.labelCopyright3); - this.Controls.Add(this.labelCopyright2); - this.Controls.Add(this.labelCopyright1); - this.Controls.Add(this.button_ok); - this.Font = new System.Drawing.Font("Visitor TT1 BRK", 30F); - this.FormBorderStyle = System.Windows.Forms.FormBorderStyle.None; - this.Margin = new System.Windows.Forms.Padding(10, 8, 10, 8); - this.MaximizeBox = false; - this.MinimizeBox = false; - this.Name = "FormAbout"; - this.ShowIcon = false; - this.ShowInTaskbar = false; - this.StartPosition = System.Windows.Forms.FormStartPosition.CenterScreen; - this.Text = "About"; - this.ResumeLayout(false); - this.PerformLayout(); - - } - - #endregion - - private System.Windows.Forms.Button button_ok; - private System.Windows.Forms.Label labelCopyright1; - private System.Windows.Forms.Label labelCopyright2; - private System.Windows.Forms.Label labelCopyright3; - private System.Windows.Forms.Label labelCopyright4; - private AluminiumButton aluminiumButton1; - - } -} - diff --git a/Ping Tester Aluminium/GUI/old_Form_About.cs b/Ping Tester Aluminium/GUI/old_Form_About.cs deleted file mode 100644 index 33588e4..0000000 --- a/Ping Tester Aluminium/GUI/old_Form_About.cs +++ /dev/null @@ -1,29 +0,0 @@ -using System; -using System.Windows.Forms; -using PingTesterAluminium.Properties; - -namespace PingTesterAluminium -{ - public partial class FormAbout : Form - { - public FormAbout() - { - InitializeComponent(); - - // Set Custom Font for Form - this.SetFont(Resources.visitor.ToFontFamily()); - - // Enable Hover Animation on Buttons - this.EnableHoverEffectsForChildButtons(); - - // Set Copyright Infromations - labelCopyright1.Text = Application.ProductName + " " + Application.ProductVersion; - labelCopyright1.CenterHorizontally(); - } - - private void buttonOk_Click(object sender, EventArgs e) - { - this.Close(); - } - } -} diff --git a/Ping Tester Aluminium/GUI/old_Form_About.resx b/Ping Tester Aluminium/GUI/old_Form_About.resx deleted file mode 100644 index fa6b66e..0000000 --- a/Ping Tester Aluminium/GUI/old_Form_About.resx +++ /dev/null @@ -1,123 +0,0 @@ - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - text/microsoft-resx - - - 2.0 - - - System.Resources.ResXResourceReader, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089 - - - System.Resources.ResXResourceWriter, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089 - - - 52 - - \ No newline at end of file diff --git a/Ping Tester Aluminium/Ping Tester Aluminium.csproj b/Ping Tester Aluminium/Ping Tester Aluminium.csproj index b0282d1..3b0d111 100644 --- a/Ping Tester Aluminium/Ping Tester Aluminium.csproj +++ b/Ping Tester Aluminium/Ping Tester Aluminium.csproj @@ -65,26 +65,34 @@ - + + - - - + + + - + + Form - - Form1.cs + + Form_About.cs - + Form - - Form2.cs + + Form_Error.cs + + + Form + + + Form_Main.cs Component @@ -110,41 +118,29 @@ AluminiumTextBox.cs - - Form - - - old_Form_About.cs - - + Form - - _old_Form_Settings.cs - - - Form - - - _old_Form_Main.cs + + Form_Settings.cs - - Form1.cs + + Form_About.cs - - old_Form_About.cs + + Form_Error.cs - - _old_Form_Settings.cs - - - _old_Form_Main.cs + + Form_Main.cs AluminiumForm.cs + + Form_Settings.cs + ResXFileCodeGenerator Designer diff --git a/Ping Tester Aluminium/Program.cs b/Ping Tester Aluminium/Program.cs index c8edf45..2dd9b94 100644 --- a/Ping Tester Aluminium/Program.cs +++ b/Ping Tester Aluminium/Program.cs @@ -13,7 +13,7 @@ static void Main() { //Application.EnableVisualStyles(); Application.SetCompatibleTextRenderingDefault(false); - Application.Run(new Form1()); + Application.Run(new Form_Main()); } } } diff --git a/Ping Tester Aluminium/Properties/Settings.Designer.cs b/Ping Tester Aluminium/Properties/Settings.Designer.cs index a01a6e0..ab0a68d 100644 --- a/Ping Tester Aluminium/Properties/Settings.Designer.cs +++ b/Ping Tester Aluminium/Properties/Settings.Designer.cs @@ -46,5 +46,53 @@ public int Interval { this["Interval"] = value; } } + + [global::System.Configuration.UserScopedSettingAttribute()] + [global::System.Diagnostics.DebuggerNonUserCodeAttribute()] + [global::System.Configuration.DefaultSettingValueAttribute("5000")] + public int Timeout { + get { + return ((int)(this["Timeout"])); + } + set { + this["Timeout"] = value; + } + } + + [global::System.Configuration.UserScopedSettingAttribute()] + [global::System.Diagnostics.DebuggerNonUserCodeAttribute()] + [global::System.Configuration.DefaultSettingValueAttribute("32")] + public int BufferLength { + get { + return ((int)(this["BufferLength"])); + } + set { + this["BufferLength"] = value; + } + } + + [global::System.Configuration.UserScopedSettingAttribute()] + [global::System.Diagnostics.DebuggerNonUserCodeAttribute()] + [global::System.Configuration.DefaultSettingValueAttribute("128")] + public int Ttl { + get { + return ((int)(this["Ttl"])); + } + set { + this["Ttl"] = value; + } + } + + [global::System.Configuration.UserScopedSettingAttribute()] + [global::System.Diagnostics.DebuggerNonUserCodeAttribute()] + [global::System.Configuration.DefaultSettingValueAttribute("False")] + public bool DontFragment { + get { + return ((bool)(this["DontFragment"])); + } + set { + this["DontFragment"] = value; + } + } } } diff --git a/Ping Tester Aluminium/Properties/Settings.settings b/Ping Tester Aluminium/Properties/Settings.settings index 6946a79..f76e0bb 100644 --- a/Ping Tester Aluminium/Properties/Settings.settings +++ b/Ping Tester Aluminium/Properties/Settings.settings @@ -8,5 +8,17 @@ 1000 + + 5000 + + + 32 + + + 128 + + + False + \ No newline at end of file diff --git a/Ping Tester Aluminium/app.config b/Ping Tester Aluminium/app.config index 489a12e..fd14feb 100644 --- a/Ping Tester Aluminium/app.config +++ b/Ping Tester Aluminium/app.config @@ -14,6 +14,18 @@ 1000 + + 5000 + + + 32 + + + 128 + + + False + diff --git a/Ping Tester Aluminium/bin/Release/PingTesterAluminium.exe b/Ping Tester Aluminium/bin/Release/PingTesterAluminium.exe index 9eb25d4abcd7de2c0df562cdb0cb468dbdf7766f..13129f4f189086cb03b08707b83042054aed215c 100644 GIT binary patch delta 29449 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 WcZ|DwAS9E0fef-Zgf+;jY#~4hdsqZl2oNBW&re z@XmKe_Vq%01=-NvJkHoTAh(xS^#+~2Pph(BUwk!u*J;Ly!F3neMlacQr7)1jtBjrj3E5_&x!+1spkQlEcC*WD|je-9w&e!H3P~mJ;<~b)a82E)l03vxPJ)|Oc zv{%hT1*jxPU)vb;MNWjUmoD)8A`xJ%LjigR{64b+NI@UJPfCY8k%AZv_#?x>517M~ z@Y=@0({8RPxzLZ4Rm|2=!%&;e5fHacQp$jL!tt0R!J@pEBfo0~<#R2L=W0@x(y6We z80je5$V6_oi|PI`9T`mN?-2EI zmm-lWm8~Yj;so1bw#X)uQn{l&3Rz?8=ID+9kf5)Z-xERj!L}?!)mvW>*!7^lv|o3P zQ@%w5K_ACPCT+wl8z~L94RQni2s+%bpwEBOCl&p5WHNm`K^I1*5INm)aCjf<>G7IV zZ8po2&8Nd=XL$>eWgxP=U|z4h-g&V;Ix-DKG@Hk#3nJ4=NP}o;5vw6OFf_cr5qDx|Brq7WLb;4?YH zSpA~ERa?x?CRK`B8z8nbNk+6iRX^$O^^;d@VhGqa%d^Z4Nut2qC^%c+NiT7Cdi${d zJNXr%E5D>ocYeum@=N^q`4ux5hE{&9*&#f;dwQk(4Tg$2J%xt~Vm^iW6-HFL6Dkv&&4^c7jmg6S+KN;Zs!tU>w!nRid9Ik5Jgp5a;nD)X*Gar!_Kx?wJ zBkPu;h$(6d31vC8CijTN$in<@PxnrEd)>2TVPrZB_ABjIDt#!jnPfraTO}<+bWz_BTkir#4>q~`84MM4)tuIg@eKNO zXN=~2V$}DI?-FoZJ6YyJfQmKRqfM@m=5~PAE@E6nD$c{s^dca~mpXfL>@{+ zfWcps_R5dq{IfZ74M@LvEk&)U$=CZA>wM<-Kn{=i%K3&1sN&%$rf{oXRYZg_(Om4y$m4w@^5WLSmM%4~{=9+9)K5YSw-$ zKu5qZ2}@W^H|_wt;%u+iyc0ZV#(r81hL%3eFkrkN#O>4>qjG;`9m`k$a#UO`!Ki z?geHq_*S80;7v;$j?c6>TVyOB^uxQw>0w^Hb$IlA>ec+yF&x3ds3Ed^We2fz%3Q-!Y+O^72K zcDBAwdZ%L+-Y>;wxVA=l3hkdl8K!*zHIJ91H@#X1IhJ8{T^(f9tO7! zec7EpOdwsT;YBA=z)l_IVLb1Jgj zW&ETZe~G*OCGF}iuHGUxoJfQSg+EZ~xhFd<7BTl#Dwh5+XdEXP>Xq8vMatk40;lVf zcISQo=w$9mII$3S$3ohPB|O8rmx@_kUu^U#pXY7}^3t4_@}+ddnt(`$R~Q(!qug^4 z+0Kbrif}{gTB4JOcP<_=_vxJsXF4VBoZgAsSA<;V>{;E#<%-vn%f+uJm+N4Pi~Y|+ z8T?!mQ*3W}pRga1x%0vLqT^EGlMdH2{BiE^$u6^-j^0Kdm@z z$SiTsk7N{>k0nclxw|(XPtwtODJR6@Q{hGu0hTq1#o` z;rGy=-QHSiY0gs5aaPK>oFyGKQ_hkuPj@yZ6&IM6w^VSvCGJc=#H}ps5%1ZuZf8k{ zacJx2EZJ$!lHoWjWroL6sU;)2E9EWeZr*lS1}tZZJI)e!CLiK%XW8N0&XO(<+G%y} zV988#l?=yK;_gmBI(jhWDe3N>TIDTIi94QJe5(@xkEOZFLEv_kbhw0F+|^}u2ia-P zlHoWjWn7(rbo8T?v!qkb#;i+u%YfxAamQQY&az3|omcKzQwJdHq=P-qlH?xep!5~l z&wk@uO7(+(-;+vgGroXflDB=G?2kDS?f>D7z@#FyroAG`gtq=FXU)=t

7oWYuT0zMlC`k*OVFGXFv++-a-pIA44 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 diff --git a/Ping Tester Aluminium/bin/Release/PingTesterAluminium.exe.config b/Ping Tester Aluminium/bin/Release/PingTesterAluminium.exe.config index 489a12e..fd14feb 100644 --- a/Ping Tester Aluminium/bin/Release/PingTesterAluminium.exe.config +++ b/Ping Tester Aluminium/bin/Release/PingTesterAluminium.exe.config @@ -14,6 +14,18 @@ 1000 + + 5000 + + + 32 + + + 128 + + + False + diff --git a/Ping Tester Aluminium/bin/Release/PingTesterAluminium.vshost.exe.config b/Ping Tester Aluminium/bin/Release/PingTesterAluminium.vshost.exe.config index 489a12e..fd14feb 100644 --- a/Ping Tester Aluminium/bin/Release/PingTesterAluminium.vshost.exe.config +++ b/Ping Tester Aluminium/bin/Release/PingTesterAluminium.vshost.exe.config @@ -14,6 +14,18 @@ 1000 + + 5000 + + + 32 + + + 128 + + + False + diff --git a/README.md b/README.md index b69f23e..eb3664b 100644 --- a/README.md +++ b/README.md @@ -1,16 +1,19 @@ # ![Icon](./icon.jpg?raw=true) Ping Tester (Aluminium) -![Ongoing Work](https://img.shields.io/badge/Ongoing%20Work-yellow) -![Incomplete](https://img.shields.io/badge/Incomplete-red) [![Windows](https://img.shields.io/badge/Windows-blue?logo=windows)](https://github.com/topics/windows) [![C# 4.0](https://img.shields.io/badge/C%23-4.0-blue?logo=c-sharp)](https://github.com/topics/csharp) [![.NET Framework 4.0](https://img.shields.io/badge/.NET%20Framework-4.0-blue?logo=dot-net)](https://github.com/topics/dotnet) -Simple ping utility for testing network connection latency. +Simple settable ping testing and rating utility for evaluating network local or remote connection latency. - +**:floppy_disk: [Download Binary Release](./Ping%20Tester%20Aluminium/bin/Release/PingTesterAluminium.exe?raw=true)** - +![Screenshot](./screenshot.gif?raw=true) +![Screenshot](./screenshot2.gif?raw=true) + +## :stars: Features +- Settings for ping request parameters. +- Visual feedback for ping status and rating. ## :rocket: Development - Language: **[C#](https://github.com/dotnet/csharplang) 4.0** diff --git a/screenshot.gif b/screenshot.gif new file mode 100644 index 0000000000000000000000000000000000000000..911afd3fc58fc4a077519f036efb61233784453a GIT binary patch literal 221661 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

B1fRom$Q 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Б*i(5FEwG-?~}Hsyz)B#b0KWg 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 literal 0 HcmV?d00001