diff --git a/Source/Krypton Toolkit/Examples/Examples.csproj b/Source/Krypton Toolkit/Examples/Examples.csproj
index 3e3e276be..2874309c6 100644
--- a/Source/Krypton Toolkit/Examples/Examples.csproj
+++ b/Source/Krypton Toolkit/Examples/Examples.csproj
@@ -51,8 +51,8 @@
-
-
+
+
diff --git a/Source/Krypton Toolkit/Krypton.Toolkit.Suite.Extended.AdvancedDataGridView/Krypton.Toolkit.Suite.Extended.AdvancedDataGridView 2022.csproj b/Source/Krypton Toolkit/Krypton.Toolkit.Suite.Extended.AdvancedDataGridView/Krypton.Toolkit.Suite.Extended.AdvancedDataGridView 2022.csproj
index 9e7fc359a..6f47444c7 100644
--- a/Source/Krypton Toolkit/Krypton.Toolkit.Suite.Extended.AdvancedDataGridView/Krypton.Toolkit.Suite.Extended.AdvancedDataGridView 2022.csproj
+++ b/Source/Krypton Toolkit/Krypton.Toolkit.Suite.Extended.AdvancedDataGridView/Krypton.Toolkit.Suite.Extended.AdvancedDataGridView 2022.csproj
@@ -87,7 +87,7 @@
-
+
diff --git a/Source/Krypton Toolkit/Krypton.Toolkit.Suite.Extended.Buttons/Krypton.Toolkit.Suite.Extended.Buttons 2022.csproj b/Source/Krypton Toolkit/Krypton.Toolkit.Suite.Extended.Buttons/Krypton.Toolkit.Suite.Extended.Buttons 2022.csproj
index ebf0d2a96..aaf2d717b 100644
--- a/Source/Krypton Toolkit/Krypton.Toolkit.Suite.Extended.Buttons/Krypton.Toolkit.Suite.Extended.Buttons 2022.csproj
+++ b/Source/Krypton Toolkit/Krypton.Toolkit.Suite.Extended.Buttons/Krypton.Toolkit.Suite.Extended.Buttons 2022.csproj
@@ -85,7 +85,7 @@
-
+
diff --git a/Source/Krypton Toolkit/Krypton.Toolkit.Suite.Extended.Calendar/Krypton.Toolkit.Suite.Extended.Calendar 2022.csproj b/Source/Krypton Toolkit/Krypton.Toolkit.Suite.Extended.Calendar/Krypton.Toolkit.Suite.Extended.Calendar 2022.csproj
index f3a9312a9..8bfdaeb17 100644
--- a/Source/Krypton Toolkit/Krypton.Toolkit.Suite.Extended.Calendar/Krypton.Toolkit.Suite.Extended.Calendar 2022.csproj
+++ b/Source/Krypton Toolkit/Krypton.Toolkit.Suite.Extended.Calendar/Krypton.Toolkit.Suite.Extended.Calendar 2022.csproj
@@ -85,7 +85,7 @@
-
+
diff --git a/Source/Krypton Toolkit/Krypton.Toolkit.Suite.Extended.CheckSum.Tools/Controls Visuals/KryptonComputeFileCheckSum.Designer.cs b/Source/Krypton Toolkit/Krypton.Toolkit.Suite.Extended.CheckSum.Tools/Controls Visuals/KryptonComputeFileCheckSum.Designer.cs
index 6452cb309..021371692 100644
--- a/Source/Krypton Toolkit/Krypton.Toolkit.Suite.Extended.CheckSum.Tools/Controls Visuals/KryptonComputeFileCheckSum.Designer.cs
+++ b/Source/Krypton Toolkit/Krypton.Toolkit.Suite.Extended.CheckSum.Tools/Controls Visuals/KryptonComputeFileCheckSum.Designer.cs
@@ -38,6 +38,7 @@ private void InitializeComponent()
this.kryptonWrapLabel1 = new Krypton.Toolkit.KryptonWrapLabel();
this.kryptonWrapLabel2 = new Krypton.Toolkit.KryptonWrapLabel();
this.ktxtFilePath = new Krypton.Toolkit.KryptonTextBox();
+ this.bsaReset = new Krypton.Toolkit.ButtonSpecAny();
this.bsaBrowse = new Krypton.Toolkit.ButtonSpecAny();
this.kcmbHashType = new Krypton.Toolkit.KryptonComboBox();
this.kbtnCalculate = new Krypton.Toolkit.KryptonButton();
@@ -45,15 +46,13 @@ private void InitializeComponent()
this.kwlHashOutput = new Krypton.Toolkit.KryptonWrapLabel();
this.ss = new System.Windows.Forms.StatusStrip();
this.tslStatus = new System.Windows.Forms.ToolStripStatusLabel();
- this.tspbCalculationProgress = new System.Windows.Forms.ToolStripProgressBar();
- this.tslCalculationProgress = new System.Windows.Forms.ToolStripStatusLabel();
this.bgwMD5 = new System.ComponentModel.BackgroundWorker();
this.bgwSHA1 = new System.ComponentModel.BackgroundWorker();
this.bgwSHA256 = new System.ComponentModel.BackgroundWorker();
this.bgwSHA384 = new System.ComponentModel.BackgroundWorker();
this.bgwSHA512 = new System.ComponentModel.BackgroundWorker();
this.bgwRIPEMD160 = new System.ComponentModel.BackgroundWorker();
- this.bsaReset = new Krypton.Toolkit.ButtonSpecAny();
+ this.kpbtsiCalculationProgress = new Krypton.Toolkit.KryptonProgressBarToolStripItem();
((System.ComponentModel.ISupportInitialize)(this.kryptonPanel1)).BeginInit();
this.kryptonPanel1.SuspendLayout();
((System.ComponentModel.ISupportInitialize)(this.kryptonPanel2)).BeginInit();
@@ -74,7 +73,7 @@ private void InitializeComponent()
this.kryptonPanel1.Controls.Add(this.kchkToggleCasing);
this.kryptonPanel1.Controls.Add(this.kryptonBorderEdge1);
this.kryptonPanel1.Dock = System.Windows.Forms.DockStyle.Bottom;
- this.kryptonPanel1.Location = new System.Drawing.Point(0, 212);
+ this.kryptonPanel1.Location = new System.Drawing.Point(0, 210);
this.kryptonPanel1.Name = "kryptonPanel1";
this.kryptonPanel1.PanelBackStyle = Krypton.Toolkit.PaletteBackStyle.PanelAlternate;
this.kryptonPanel1.Size = new System.Drawing.Size(709, 50);
@@ -123,7 +122,7 @@ private void InitializeComponent()
this.kryptonPanel2.Dock = System.Windows.Forms.DockStyle.Fill;
this.kryptonPanel2.Location = new System.Drawing.Point(0, 0);
this.kryptonPanel2.Name = "kryptonPanel2";
- this.kryptonPanel2.Size = new System.Drawing.Size(709, 212);
+ this.kryptonPanel2.Size = new System.Drawing.Size(709, 210);
this.kryptonPanel2.TabIndex = 2;
//
// tableLayoutPanel1
@@ -146,7 +145,7 @@ private void InitializeComponent()
this.tableLayoutPanel1.RowStyles.Add(new System.Windows.Forms.RowStyle());
this.tableLayoutPanel1.RowStyles.Add(new System.Windows.Forms.RowStyle());
this.tableLayoutPanel1.RowStyles.Add(new System.Windows.Forms.RowStyle(System.Windows.Forms.SizeType.Percent, 100F));
- this.tableLayoutPanel1.Size = new System.Drawing.Size(709, 212);
+ this.tableLayoutPanel1.Size = new System.Drawing.Size(709, 210);
this.tableLayoutPanel1.TabIndex = 1;
//
// kryptonWrapLabel1
@@ -179,9 +178,8 @@ private void InitializeComponent()
//
this.ktxtFilePath.AutoCompleteMode = System.Windows.Forms.AutoCompleteMode.SuggestAppend;
this.ktxtFilePath.AutoCompleteSource = System.Windows.Forms.AutoCompleteSource.FileSystem;
- this.ktxtFilePath.ButtonSpecs.AddRange(new Krypton.Toolkit.ButtonSpecAny[] {
- this.bsaReset,
- this.bsaBrowse});
+ this.ktxtFilePath.ButtonSpecs.Add(this.bsaReset);
+ this.ktxtFilePath.ButtonSpecs.Add(this.bsaBrowse);
this.tableLayoutPanel1.SetColumnSpan(this.ktxtFilePath, 2);
this.ktxtFilePath.Dock = System.Windows.Forms.DockStyle.Fill;
this.ktxtFilePath.Location = new System.Drawing.Point(109, 3);
@@ -189,11 +187,15 @@ private void InitializeComponent()
this.ktxtFilePath.Size = new System.Drawing.Size(597, 23);
this.ktxtFilePath.TabIndex = 2;
//
+ // bsaReset
+ //
+ this.bsaReset.Type = Krypton.Toolkit.PaletteButtonSpecStyle.Undo;
+ this.bsaReset.UniqueName = "f7abb2bddee245e9b00ebbe01ac8b5f2";
+ this.bsaReset.Click += new System.EventHandler(this.bsaReset_Click);
+ //
// bsaBrowse
//
this.bsaBrowse.Image = global::Krypton.Toolkit.Suite.Extended.CheckSum.Tools.Properties.Resources.Open;
- this.bsaBrowse.Style = Krypton.Toolkit.PaletteButtonStyle.Inherit;
- this.bsaBrowse.ToolTipStyle = Krypton.Toolkit.LabelStyle.ToolTip;
this.bsaBrowse.Type = Krypton.Toolkit.PaletteButtonSpecStyle.Open;
this.bsaBrowse.UniqueName = "2efda73a4eff4dea8684b6fe1ad4324f";
this.bsaBrowse.Click += new System.EventHandler(this.bsaBrowse_Click);
@@ -221,18 +223,15 @@ private void InitializeComponent()
//
// kryptonGroupBox1
//
- this.kryptonGroupBox1.CaptionStyle = Krypton.Toolkit.LabelStyle.GroupBoxCaption;
this.tableLayoutPanel1.SetColumnSpan(this.kryptonGroupBox1, 3);
this.kryptonGroupBox1.Dock = System.Windows.Forms.DockStyle.Fill;
- this.kryptonGroupBox1.GroupBackStyle = Krypton.Toolkit.PaletteBackStyle.ControlGroupBox;
- this.kryptonGroupBox1.GroupBorderStyle = Krypton.Toolkit.PaletteBorderStyle.ControlGroupBox;
this.kryptonGroupBox1.Location = new System.Drawing.Point(3, 64);
this.kryptonGroupBox1.Name = "kryptonGroupBox1";
//
// kryptonGroupBox1.Panel
//
this.kryptonGroupBox1.Panel.Controls.Add(this.kwlHashOutput);
- this.kryptonGroupBox1.Size = new System.Drawing.Size(703, 145);
+ this.kryptonGroupBox1.Size = new System.Drawing.Size(703, 143);
this.kryptonGroupBox1.TabIndex = 5;
this.kryptonGroupBox1.Values.Heading = "CheckSum Output";
//
@@ -245,7 +244,7 @@ private void InitializeComponent()
this.kwlHashOutput.LabelStyle = Krypton.Toolkit.LabelStyle.TitlePanel;
this.kwlHashOutput.Location = new System.Drawing.Point(0, 0);
this.kwlHashOutput.Name = "kwlHashOutput";
- this.kwlHashOutput.Size = new System.Drawing.Size(699, 121);
+ this.kwlHashOutput.Size = new System.Drawing.Size(699, 119);
this.kwlHashOutput.TextAlign = System.Drawing.ContentAlignment.MiddleCenter;
//
// ss
@@ -253,34 +252,22 @@ private void InitializeComponent()
this.ss.Font = new System.Drawing.Font("Segoe UI", 9F);
this.ss.Items.AddRange(new System.Windows.Forms.ToolStripItem[] {
this.tslStatus,
- this.tslCalculationProgress,
- this.tspbCalculationProgress});
- this.ss.Location = new System.Drawing.Point(0, 262);
+ this.kpbtsiCalculationProgress});
+ this.ss.Location = new System.Drawing.Point(0, 260);
this.ss.Name = "ss";
this.ss.RenderMode = System.Windows.Forms.ToolStripRenderMode.ManagerRenderMode;
- this.ss.Size = new System.Drawing.Size(709, 22);
+ this.ss.Size = new System.Drawing.Size(709, 24);
this.ss.TabIndex = 3;
this.ss.Text = "statusStrip1";
//
// tslStatus
//
this.tslStatus.Name = "tslStatus";
- this.tslStatus.Size = new System.Drawing.Size(694, 17);
+ this.tslStatus.Size = new System.Drawing.Size(563, 19);
this.tslStatus.Spring = true;
this.tslStatus.Text = "Ready";
this.tslStatus.TextAlign = System.Drawing.ContentAlignment.MiddleLeft;
//
- // tspbCalculationProgress
- //
- this.tspbCalculationProgress.Name = "tspbCalculationProgress";
- this.tspbCalculationProgress.Size = new System.Drawing.Size(100, 16);
- this.tspbCalculationProgress.Visible = false;
- //
- // tslCalculationProgress
- //
- this.tslCalculationProgress.Name = "tslCalculationProgress";
- this.tslCalculationProgress.Size = new System.Drawing.Size(0, 17);
- //
// bgwMD5
//
this.bgwMD5.WorkerReportsProgress = true;
@@ -329,13 +316,16 @@ private void InitializeComponent()
this.bgwRIPEMD160.ProgressChanged += new System.ComponentModel.ProgressChangedEventHandler(this.Calculation_ProgressChanged);
this.bgwRIPEMD160.RunWorkerCompleted += new System.ComponentModel.RunWorkerCompletedEventHandler(this.Calculation_RunWorkerCompleted);
//
- // bsaReset
+ // kpbtsiCalculationProgress
//
- this.bsaReset.Style = Krypton.Toolkit.PaletteButtonStyle.Inherit;
- this.bsaReset.ToolTipStyle = Krypton.Toolkit.LabelStyle.ToolTip;
- this.bsaReset.Type = Krypton.Toolkit.PaletteButtonSpecStyle.Undo;
- this.bsaReset.UniqueName = "f7abb2bddee245e9b00ebbe01ac8b5f2";
- this.bsaReset.Click += new System.EventHandler(this.bsaReset_Click);
+ this.kpbtsiCalculationProgress.Name = "kpbtsiCalculationProgress";
+ this.kpbtsiCalculationProgress.StateCommon.Back.Color1 = System.Drawing.Color.Green;
+ this.kpbtsiCalculationProgress.StateDisabled.Back.ColorStyle = Krypton.Toolkit.PaletteColorStyle.OneNote;
+ this.kpbtsiCalculationProgress.StateNormal.Back.ColorStyle = Krypton.Toolkit.PaletteColorStyle.OneNote;
+ this.kpbtsiCalculationProgress.Text = "0%";
+ this.kpbtsiCalculationProgress.UseValueAsText = true;
+ this.kpbtsiCalculationProgress.Values.Text = "0%";
+ this.kpbtsiCalculationProgress.Visible = false;
//
// KryptonComputeFileCheckSum
//
@@ -351,9 +341,6 @@ private void InitializeComponent()
this.Name = "KryptonComputeFileCheckSum";
this.Text = "KryptonComputeFileCheckSum";
this.Load += new System.EventHandler(this.KryptonComputeFileCheckSum_Load);
- this.Controls.SetChildIndex(this.ss, 0);
- this.Controls.SetChildIndex(this.kryptonPanel1, 0);
- this.Controls.SetChildIndex(this.kryptonPanel2, 0);
((System.ComponentModel.ISupportInitialize)(this.kryptonPanel1)).EndInit();
this.kryptonPanel1.ResumeLayout(false);
this.kryptonPanel1.PerformLayout();
@@ -391,8 +378,6 @@ private void InitializeComponent()
private ButtonSpecAny bsaBrowse;
private StatusStrip ss;
private ToolStripStatusLabel tslStatus;
- private ToolStripProgressBar tspbCalculationProgress;
- private ToolStripStatusLabel tslCalculationProgress;
private BackgroundWorker bgwMD5;
private BackgroundWorker bgwSHA1;
private BackgroundWorker bgwSHA256;
@@ -400,5 +385,6 @@ private void InitializeComponent()
private BackgroundWorker bgwSHA512;
private BackgroundWorker bgwRIPEMD160;
private ButtonSpecAny bsaReset;
+ private KryptonProgressBarToolStripItem kpbtsiCalculationProgress;
}
}
\ No newline at end of file
diff --git a/Source/Krypton Toolkit/Krypton.Toolkit.Suite.Extended.CheckSum.Tools/Controls Visuals/KryptonComputeFileCheckSum.cs b/Source/Krypton Toolkit/Krypton.Toolkit.Suite.Extended.CheckSum.Tools/Controls Visuals/KryptonComputeFileCheckSum.cs
index 4612ac78d..a9b7f205b 100644
--- a/Source/Krypton Toolkit/Krypton.Toolkit.Suite.Extended.CheckSum.Tools/Controls Visuals/KryptonComputeFileCheckSum.cs
+++ b/Source/Krypton Toolkit/Krypton.Toolkit.Suite.Extended.CheckSum.Tools/Controls Visuals/KryptonComputeFileCheckSum.cs
@@ -583,11 +583,9 @@ private void Calculation_ProgressChanged(object sender, ProgressChangedEventArgs
TaskbarManager.Instance.SetProgressValue(e.ProgressPercentage, null);
}
- tspbCalculationProgress.Visible = true;
+ kpbtsiCalculationProgress.Visible = true;
- tspbCalculationProgress.Value = e.ProgressPercentage;
-
- tslCalculationProgress.Text = $@"{e.ProgressPercentage}%";
+ kpbtsiCalculationProgress.Value = e.ProgressPercentage;
kwlHashOutput.Text = @"Please wait ...";
@@ -603,11 +601,9 @@ private void Calculation_RunWorkerCompleted(object sender, RunWorkerCompletedEve
TaskbarManager.Instance.SetProgressValue(0, null);
}
- tspbCalculationProgress.Visible = false;
-
- tspbCalculationProgress.Value = 0;
+ kpbtsiCalculationProgress.Visible = false;
- tslCalculationProgress.Text = string.Empty;
+ kpbtsiCalculationProgress.Value = 0;
kwlHashOutput.Text = $@"{e.Result}";
diff --git a/Source/Krypton Toolkit/Krypton.Toolkit.Suite.Extended.CheckSum.Tools/Controls Visuals/KryptonVerifyFileCheckSum.Designer.cs b/Source/Krypton Toolkit/Krypton.Toolkit.Suite.Extended.CheckSum.Tools/Controls Visuals/KryptonVerifyFileCheckSum.Designer.cs
index c884c8539..0aeae46e5 100644
--- a/Source/Krypton Toolkit/Krypton.Toolkit.Suite.Extended.CheckSum.Tools/Controls Visuals/KryptonVerifyFileCheckSum.Designer.cs
+++ b/Source/Krypton Toolkit/Krypton.Toolkit.Suite.Extended.CheckSum.Tools/Controls Visuals/KryptonVerifyFileCheckSum.Designer.cs
@@ -30,8 +30,6 @@ private void InitializeComponent()
{
this.ss = new System.Windows.Forms.StatusStrip();
this.tslStatus = new System.Windows.Forms.ToolStripStatusLabel();
- this.tspbCalculationProgress = new System.Windows.Forms.ToolStripProgressBar();
- this.tslCalculationProgress = new System.Windows.Forms.ToolStripStatusLabel();
this.bgwMD5 = new System.ComponentModel.BackgroundWorker();
this.bgwSHA1 = new System.ComponentModel.BackgroundWorker();
this.bgwSHA256 = new System.ComponentModel.BackgroundWorker();
@@ -70,6 +68,7 @@ private void InitializeComponent()
this.kryptonContextMenuItem4 = new Krypton.Toolkit.KryptonContextMenuItem();
this.kcmdLoad = new Krypton.Toolkit.KryptonCommand();
this.kbtnCalculate = new Krypton.Toolkit.KryptonButton();
+ this.kpbtsiCalculationProgress = new Krypton.Toolkit.KryptonProgressBarToolStripItem();
this.ss.SuspendLayout();
((System.ComponentModel.ISupportInitialize)(this.kryptonPanel1)).BeginInit();
this.kryptonPanel1.SuspendLayout();
@@ -92,8 +91,7 @@ private void InitializeComponent()
this.ss.Font = new System.Drawing.Font("Segoe UI", 9F);
this.ss.Items.AddRange(new System.Windows.Forms.ToolStripItem[] {
this.tslStatus,
- this.tspbCalculationProgress,
- this.tslCalculationProgress});
+ this.kpbtsiCalculationProgress});
this.ss.Location = new System.Drawing.Point(0, 307);
this.ss.Name = "ss";
this.ss.RenderMode = System.Windows.Forms.ToolStripRenderMode.ManagerRenderMode;
@@ -109,17 +107,6 @@ private void InitializeComponent()
this.tslStatus.Text = "Ready";
this.tslStatus.TextAlign = System.Drawing.ContentAlignment.MiddleLeft;
//
- // tspbCalculationProgress
- //
- this.tspbCalculationProgress.Name = "tspbCalculationProgress";
- this.tspbCalculationProgress.Size = new System.Drawing.Size(100, 16);
- this.tspbCalculationProgress.Visible = false;
- //
- // tslCalculationProgress
- //
- this.tslCalculationProgress.Name = "tslCalculationProgress";
- this.tslCalculationProgress.Size = new System.Drawing.Size(0, 17);
- //
// bgwMD5
//
this.bgwMD5.WorkerReportsProgress = true;
@@ -255,9 +242,8 @@ private void InitializeComponent()
//
// ktxtFilePath
//
- this.ktxtFilePath.ButtonSpecs.AddRange(new Krypton.Toolkit.ButtonSpecAny[] {
- this.bsaReset,
- this.bsaBrowse});
+ this.ktxtFilePath.ButtonSpecs.Add(this.bsaReset);
+ this.ktxtFilePath.ButtonSpecs.Add(this.bsaBrowse);
this.tableLayoutPanel1.SetColumnSpan(this.ktxtFilePath, 2);
this.ktxtFilePath.Dock = System.Windows.Forms.DockStyle.Fill;
this.ktxtFilePath.Location = new System.Drawing.Point(109, 3);
@@ -268,15 +254,12 @@ private void InitializeComponent()
//
// bsaReset
//
- this.bsaReset.Style = Krypton.Toolkit.PaletteButtonStyle.Inherit;
- this.bsaReset.ToolTipStyle = Krypton.Toolkit.LabelStyle.ToolTip;
this.bsaReset.Type = Krypton.Toolkit.PaletteButtonSpecStyle.Undo;
this.bsaReset.UniqueName = "d153dbd03a8c4bedaca0d851db1492dc";
this.bsaReset.Click += new System.EventHandler(this.bsaReset_Click);
//
// bsaBrowse
//
- this.bsaBrowse.Style = Krypton.Toolkit.PaletteButtonStyle.Inherit;
this.bsaBrowse.ToolTipStyle = Krypton.Toolkit.LabelStyle.SuperTip;
this.bsaBrowse.Type = Krypton.Toolkit.PaletteButtonSpecStyle.Open;
this.bsaBrowse.UniqueName = "2efda73a4eff4dea8684b6fe1ad4324f";
@@ -295,11 +278,8 @@ private void InitializeComponent()
//
// kryptonGroupBox1
//
- this.kryptonGroupBox1.CaptionStyle = Krypton.Toolkit.LabelStyle.GroupBoxCaption;
this.tableLayoutPanel1.SetColumnSpan(this.kryptonGroupBox1, 3);
this.kryptonGroupBox1.Dock = System.Windows.Forms.DockStyle.Fill;
- this.kryptonGroupBox1.GroupBackStyle = Krypton.Toolkit.PaletteBackStyle.ControlGroupBox;
- this.kryptonGroupBox1.GroupBorderStyle = Krypton.Toolkit.PaletteBorderStyle.ControlGroupBox;
this.kryptonGroupBox1.Location = new System.Drawing.Point(3, 64);
this.kryptonGroupBox1.Name = "kryptonGroupBox1";
//
@@ -324,11 +304,8 @@ private void InitializeComponent()
//
// kryptonGroupBox2
//
- this.kryptonGroupBox2.CaptionStyle = Krypton.Toolkit.LabelStyle.GroupBoxCaption;
this.tableLayoutPanel1.SetColumnSpan(this.kryptonGroupBox2, 3);
this.kryptonGroupBox2.Dock = System.Windows.Forms.DockStyle.Fill;
- this.kryptonGroupBox2.GroupBackStyle = Krypton.Toolkit.PaletteBackStyle.ControlGroupBox;
- this.kryptonGroupBox2.GroupBorderStyle = Krypton.Toolkit.PaletteBorderStyle.ControlGroupBox;
this.kryptonGroupBox2.Location = new System.Drawing.Point(3, 162);
this.kryptonGroupBox2.Name = "kryptonGroupBox2";
//
@@ -341,9 +318,8 @@ private void InitializeComponent()
//
// ktxtVarifyCheckSum
//
- this.ktxtVarifyCheckSum.ButtonSpecs.AddRange(new Krypton.Toolkit.ButtonSpecAny[] {
- this.bsaVerifyReset,
- this.bsaVerifyBrowse});
+ this.ktxtVarifyCheckSum.ButtonSpecs.Add(this.bsaVerifyReset);
+ this.ktxtVarifyCheckSum.ButtonSpecs.Add(this.bsaVerifyBrowse);
this.ktxtVarifyCheckSum.KryptonContextMenu = this.kcmHashVerify;
this.ktxtVarifyCheckSum.Location = new System.Drawing.Point(8, 22);
this.ktxtVarifyCheckSum.Name = "ktxtVarifyCheckSum";
@@ -353,15 +329,11 @@ private void InitializeComponent()
//
// bsaVerifyReset
//
- this.bsaVerifyReset.Style = Krypton.Toolkit.PaletteButtonStyle.Inherit;
- this.bsaVerifyReset.ToolTipStyle = Krypton.Toolkit.LabelStyle.ToolTip;
this.bsaVerifyReset.Type = Krypton.Toolkit.PaletteButtonSpecStyle.Undo;
this.bsaVerifyReset.UniqueName = "b92f7a2ea9f441ffb60df6dc3e1d6d88";
//
// bsaVerifyBrowse
//
- this.bsaVerifyBrowse.Style = Krypton.Toolkit.PaletteButtonStyle.Inherit;
- this.bsaVerifyBrowse.ToolTipStyle = Krypton.Toolkit.LabelStyle.ToolTip;
this.bsaVerifyBrowse.Type = Krypton.Toolkit.PaletteButtonSpecStyle.Open;
this.bsaVerifyBrowse.UniqueName = "2313891785e94e2c8ff9adc2d90ed55b";
this.bsaVerifyBrowse.Click += new System.EventHandler(this.bsaVerifyBrowse_Click);
@@ -432,6 +404,17 @@ private void InitializeComponent()
this.kbtnCalculate.Values.Text = "&Calculate";
this.kbtnCalculate.Click += new System.EventHandler(this.kbtnCalculate_Click);
//
+ // kpbtsiCalculationProgress
+ //
+ this.kpbtsiCalculationProgress.Name = "kpbtsiCalculationProgress";
+ this.kpbtsiCalculationProgress.StateCommon.Back.Color1 = System.Drawing.Color.Green;
+ this.kpbtsiCalculationProgress.StateDisabled.Back.ColorStyle = Krypton.Toolkit.PaletteColorStyle.OneNote;
+ this.kpbtsiCalculationProgress.StateNormal.Back.ColorStyle = Krypton.Toolkit.PaletteColorStyle.OneNote;
+ this.kpbtsiCalculationProgress.Text = "0%";
+ this.kpbtsiCalculationProgress.UseValueAsText = true;
+ this.kpbtsiCalculationProgress.Values.Text = "0%";
+ this.kpbtsiCalculationProgress.Visible = false;
+ //
// KryptonVerifyFileCheckSum
//
this.AcceptButton = this.kbtnVerify;
@@ -448,9 +431,6 @@ private void InitializeComponent()
this.StartPosition = System.Windows.Forms.FormStartPosition.CenterScreen;
this.Text = "Verify File CheckSum";
this.Load += new System.EventHandler(this.KryptonVerifyFileCheckSum_Load);
- this.Controls.SetChildIndex(this.ss, 0);
- this.Controls.SetChildIndex(this.kryptonPanel1, 0);
- this.Controls.SetChildIndex(this.kryptonPanel2, 0);
this.ss.ResumeLayout(false);
this.ss.PerformLayout();
((System.ComponentModel.ISupportInitialize)(this.kryptonPanel1)).EndInit();
@@ -479,8 +459,6 @@ private void InitializeComponent()
private StatusStrip ss;
private ToolStripStatusLabel tslStatus;
- private ToolStripProgressBar tspbCalculationProgress;
- private ToolStripStatusLabel tslCalculationProgress;
private BackgroundWorker bgwMD5;
private BackgroundWorker bgwSHA1;
private BackgroundWorker bgwSHA256;
@@ -519,5 +497,6 @@ private void InitializeComponent()
private ButtonSpecAny bsaReset;
private ButtonSpecAny bsaVerifyReset;
private KryptonButton kbtnCalculate;
+ private KryptonProgressBarToolStripItem kpbtsiCalculationProgress;
}
}
\ No newline at end of file
diff --git a/Source/Krypton Toolkit/Krypton.Toolkit.Suite.Extended.CheckSum.Tools/Krypton.Toolkit.Suite.Extended.CheckSum.Tools 2022.csproj b/Source/Krypton Toolkit/Krypton.Toolkit.Suite.Extended.CheckSum.Tools/Krypton.Toolkit.Suite.Extended.CheckSum.Tools 2022.csproj
index 5cfdfd22f..aacc661ea 100644
--- a/Source/Krypton Toolkit/Krypton.Toolkit.Suite.Extended.CheckSum.Tools/Krypton.Toolkit.Suite.Extended.CheckSum.Tools 2022.csproj
+++ b/Source/Krypton Toolkit/Krypton.Toolkit.Suite.Extended.CheckSum.Tools/Krypton.Toolkit.Suite.Extended.CheckSum.Tools 2022.csproj
@@ -87,7 +87,7 @@
-
+
diff --git a/Source/Krypton Toolkit/Krypton.Toolkit.Suite.Extended.Circular.ProgressBar/Krypton.Toolkit.Suite.Extended.Circular.ProgressBar 2022.csproj b/Source/Krypton Toolkit/Krypton.Toolkit.Suite.Extended.Circular.ProgressBar/Krypton.Toolkit.Suite.Extended.Circular.ProgressBar 2022.csproj
index ae2638caa..6b59aaf35 100644
--- a/Source/Krypton Toolkit/Krypton.Toolkit.Suite.Extended.Circular.ProgressBar/Krypton.Toolkit.Suite.Extended.Circular.ProgressBar 2022.csproj
+++ b/Source/Krypton Toolkit/Krypton.Toolkit.Suite.Extended.Circular.ProgressBar/Krypton.Toolkit.Suite.Extended.Circular.ProgressBar 2022.csproj
@@ -87,7 +87,7 @@
-
+
diff --git a/Source/Krypton Toolkit/Krypton.Toolkit.Suite.Extended.ComboBox/Krypton.Toolkit.Suite.Extended.ComboBox 2022.csproj b/Source/Krypton Toolkit/Krypton.Toolkit.Suite.Extended.ComboBox/Krypton.Toolkit.Suite.Extended.ComboBox 2022.csproj
index 2539a5b3b..39d656623 100644
--- a/Source/Krypton Toolkit/Krypton.Toolkit.Suite.Extended.ComboBox/Krypton.Toolkit.Suite.Extended.ComboBox 2022.csproj
+++ b/Source/Krypton Toolkit/Krypton.Toolkit.Suite.Extended.ComboBox/Krypton.Toolkit.Suite.Extended.ComboBox 2022.csproj
@@ -87,7 +87,7 @@
-
+
diff --git a/Source/Krypton Toolkit/Krypton.Toolkit.Suite.Extended.Common/Krypton.Toolkit.Suite.Extended.Common 2022.csproj b/Source/Krypton Toolkit/Krypton.Toolkit.Suite.Extended.Common/Krypton.Toolkit.Suite.Extended.Common 2022.csproj
index 4ed7ff448..354efeaa4 100644
--- a/Source/Krypton Toolkit/Krypton.Toolkit.Suite.Extended.Common/Krypton.Toolkit.Suite.Extended.Common 2022.csproj
+++ b/Source/Krypton Toolkit/Krypton.Toolkit.Suite.Extended.Common/Krypton.Toolkit.Suite.Extended.Common 2022.csproj
@@ -87,7 +87,7 @@
-
+
diff --git a/Source/Krypton Toolkit/Krypton.Toolkit.Suite.Extended.Compression/Krypton.Toolkit.Suite.Extended.Compression 2022.csproj b/Source/Krypton Toolkit/Krypton.Toolkit.Suite.Extended.Compression/Krypton.Toolkit.Suite.Extended.Compression 2022.csproj
index 13ee4f836..2d219f2b3 100644
--- a/Source/Krypton Toolkit/Krypton.Toolkit.Suite.Extended.Compression/Krypton.Toolkit.Suite.Extended.Compression 2022.csproj
+++ b/Source/Krypton Toolkit/Krypton.Toolkit.Suite.Extended.Compression/Krypton.Toolkit.Suite.Extended.Compression 2022.csproj
@@ -87,7 +87,7 @@
-
+
diff --git a/Source/Krypton Toolkit/Krypton.Toolkit.Suite.Extended.Controls/Krypton.Toolkit.Suite.Extended.Controls 2022.csproj b/Source/Krypton Toolkit/Krypton.Toolkit.Suite.Extended.Controls/Krypton.Toolkit.Suite.Extended.Controls 2022.csproj
index 422d2bc7f..55fba615b 100644
--- a/Source/Krypton Toolkit/Krypton.Toolkit.Suite.Extended.Controls/Krypton.Toolkit.Suite.Extended.Controls 2022.csproj
+++ b/Source/Krypton Toolkit/Krypton.Toolkit.Suite.Extended.Controls/Krypton.Toolkit.Suite.Extended.Controls 2022.csproj
@@ -87,7 +87,7 @@
-
+
diff --git a/Source/Krypton Toolkit/Krypton.Toolkit.Suite.Extended.Core/Krypton.Toolkit.Suite.Extended.Core 2022.csproj b/Source/Krypton Toolkit/Krypton.Toolkit.Suite.Extended.Core/Krypton.Toolkit.Suite.Extended.Core 2022.csproj
index 6ccdbe199..8881b3b3b 100644
--- a/Source/Krypton Toolkit/Krypton.Toolkit.Suite.Extended.Core/Krypton.Toolkit.Suite.Extended.Core 2022.csproj
+++ b/Source/Krypton Toolkit/Krypton.Toolkit.Suite.Extended.Core/Krypton.Toolkit.Suite.Extended.Core 2022.csproj
@@ -86,13 +86,13 @@
-
+
-
+
-
+
-
+
diff --git a/Source/Krypton Toolkit/Krypton.Toolkit.Suite.Extended.Data.Visualisation/Krypton.Toolkit.Suite.Extended.Data.Visualisation 2022.csproj b/Source/Krypton Toolkit/Krypton.Toolkit.Suite.Extended.Data.Visualisation/Krypton.Toolkit.Suite.Extended.Data.Visualisation 2022.csproj
index dee301fca..bc41a3c84 100644
--- a/Source/Krypton Toolkit/Krypton.Toolkit.Suite.Extended.Data.Visualisation/Krypton.Toolkit.Suite.Extended.Data.Visualisation 2022.csproj
+++ b/Source/Krypton Toolkit/Krypton.Toolkit.Suite.Extended.Data.Visualisation/Krypton.Toolkit.Suite.Extended.Data.Visualisation 2022.csproj
@@ -87,7 +87,7 @@
-
+
diff --git a/Source/Krypton Toolkit/Krypton.Toolkit.Suite.Extended.DataGridView/Krypton.Toolkit.Suite.Extended.DataGridView 2022.csproj b/Source/Krypton Toolkit/Krypton.Toolkit.Suite.Extended.DataGridView/Krypton.Toolkit.Suite.Extended.DataGridView 2022.csproj
index 75c237aa6..7b1a91848 100644
--- a/Source/Krypton Toolkit/Krypton.Toolkit.Suite.Extended.DataGridView/Krypton.Toolkit.Suite.Extended.DataGridView 2022.csproj
+++ b/Source/Krypton Toolkit/Krypton.Toolkit.Suite.Extended.DataGridView/Krypton.Toolkit.Suite.Extended.DataGridView 2022.csproj
@@ -87,7 +87,7 @@
-
+
diff --git a/Source/Krypton Toolkit/Krypton.Toolkit.Suite.Extended.Developer.Utilities/Krypton.Toolkit.Suite.Extended.Developer.Utilities 2022.csproj b/Source/Krypton Toolkit/Krypton.Toolkit.Suite.Extended.Developer.Utilities/Krypton.Toolkit.Suite.Extended.Developer.Utilities 2022.csproj
index 26798b5c5..a859b2520 100644
--- a/Source/Krypton Toolkit/Krypton.Toolkit.Suite.Extended.Developer.Utilities/Krypton.Toolkit.Suite.Extended.Developer.Utilities 2022.csproj
+++ b/Source/Krypton Toolkit/Krypton.Toolkit.Suite.Extended.Developer.Utilities/Krypton.Toolkit.Suite.Extended.Developer.Utilities 2022.csproj
@@ -86,7 +86,7 @@
-
+
diff --git a/Source/Krypton Toolkit/Krypton.Toolkit.Suite.Extended.Dialogs/Krypton.Toolkit.Suite.Extended.Dialogs 2022.csproj b/Source/Krypton Toolkit/Krypton.Toolkit.Suite.Extended.Dialogs/Krypton.Toolkit.Suite.Extended.Dialogs 2022.csproj
index 25fb05743..964c27649 100644
--- a/Source/Krypton Toolkit/Krypton.Toolkit.Suite.Extended.Dialogs/Krypton.Toolkit.Suite.Extended.Dialogs 2022.csproj
+++ b/Source/Krypton Toolkit/Krypton.Toolkit.Suite.Extended.Dialogs/Krypton.Toolkit.Suite.Extended.Dialogs 2022.csproj
@@ -87,7 +87,7 @@
-
+
diff --git a/Source/Krypton Toolkit/Krypton.Toolkit.Suite.Extended.Dock.Extender/Krypton.Toolkit.Suite.Extended.Dock.Extender 2022.csproj b/Source/Krypton Toolkit/Krypton.Toolkit.Suite.Extended.Dock.Extender/Krypton.Toolkit.Suite.Extended.Dock.Extender 2022.csproj
index 1c4bafd7d..0bb83f9f7 100644
--- a/Source/Krypton Toolkit/Krypton.Toolkit.Suite.Extended.Dock.Extender/Krypton.Toolkit.Suite.Extended.Dock.Extender 2022.csproj
+++ b/Source/Krypton Toolkit/Krypton.Toolkit.Suite.Extended.Dock.Extender/Krypton.Toolkit.Suite.Extended.Dock.Extender 2022.csproj
@@ -87,7 +87,7 @@
-
+
diff --git a/Source/Krypton Toolkit/Krypton.Toolkit.Suite.Extended.Drawing.Utilities/Krypton.Toolkit.Suite.Extended.Drawing.Utilities 2022.csproj b/Source/Krypton Toolkit/Krypton.Toolkit.Suite.Extended.Drawing.Utilities/Krypton.Toolkit.Suite.Extended.Drawing.Utilities 2022.csproj
index 701fbc2ad..c5c7d66cf 100644
--- a/Source/Krypton Toolkit/Krypton.Toolkit.Suite.Extended.Drawing.Utilities/Krypton.Toolkit.Suite.Extended.Drawing.Utilities 2022.csproj
+++ b/Source/Krypton Toolkit/Krypton.Toolkit.Suite.Extended.Drawing.Utilities/Krypton.Toolkit.Suite.Extended.Drawing.Utilities 2022.csproj
@@ -87,7 +87,7 @@
-
+
diff --git a/Source/Krypton Toolkit/Krypton.Toolkit.Suite.Extended.Drawing/Krypton.Toolkit.Suite.Extended.Drawing 2022.csproj b/Source/Krypton Toolkit/Krypton.Toolkit.Suite.Extended.Drawing/Krypton.Toolkit.Suite.Extended.Drawing 2022.csproj
index 691aa8e53..85bcbcdbe 100644
--- a/Source/Krypton Toolkit/Krypton.Toolkit.Suite.Extended.Drawing/Krypton.Toolkit.Suite.Extended.Drawing 2022.csproj
+++ b/Source/Krypton Toolkit/Krypton.Toolkit.Suite.Extended.Drawing/Krypton.Toolkit.Suite.Extended.Drawing 2022.csproj
@@ -86,7 +86,7 @@
-
+
diff --git a/Source/Krypton Toolkit/Krypton.Toolkit.Suite.Extended.Effects/Krypton.Toolkit.Suite.Extended.Effects 2022.csproj b/Source/Krypton Toolkit/Krypton.Toolkit.Suite.Extended.Effects/Krypton.Toolkit.Suite.Extended.Effects 2022.csproj
index 8de4ddc70..41820aea0 100644
--- a/Source/Krypton Toolkit/Krypton.Toolkit.Suite.Extended.Effects/Krypton.Toolkit.Suite.Extended.Effects 2022.csproj
+++ b/Source/Krypton Toolkit/Krypton.Toolkit.Suite.Extended.Effects/Krypton.Toolkit.Suite.Extended.Effects 2022.csproj
@@ -86,7 +86,7 @@
-
+
diff --git a/Source/Krypton Toolkit/Krypton.Toolkit.Suite.Extended.Error.Reporting/Krypton.Toolkit.Suite.Extended.Error.Reporting 2022.csproj b/Source/Krypton Toolkit/Krypton.Toolkit.Suite.Extended.Error.Reporting/Krypton.Toolkit.Suite.Extended.Error.Reporting 2022.csproj
index 178b462c5..98149315c 100644
--- a/Source/Krypton Toolkit/Krypton.Toolkit.Suite.Extended.Error.Reporting/Krypton.Toolkit.Suite.Extended.Error.Reporting 2022.csproj
+++ b/Source/Krypton Toolkit/Krypton.Toolkit.Suite.Extended.Error.Reporting/Krypton.Toolkit.Suite.Extended.Error.Reporting 2022.csproj
@@ -87,9 +87,9 @@
-
+
-
+
@@ -171,7 +171,7 @@
-
+
diff --git a/Source/Krypton Toolkit/Krypton.Toolkit.Suite.Extended.File.Copier/Krypton.Toolkit.Suite.Extended.File.Copier 2022.csproj b/Source/Krypton Toolkit/Krypton.Toolkit.Suite.Extended.File.Copier/Krypton.Toolkit.Suite.Extended.File.Copier 2022.csproj
index 4b6f97523..132bba3eb 100644
--- a/Source/Krypton Toolkit/Krypton.Toolkit.Suite.Extended.File.Copier/Krypton.Toolkit.Suite.Extended.File.Copier 2022.csproj
+++ b/Source/Krypton Toolkit/Krypton.Toolkit.Suite.Extended.File.Copier/Krypton.Toolkit.Suite.Extended.File.Copier 2022.csproj
@@ -87,7 +87,7 @@
-
+
diff --git a/Source/Krypton Toolkit/Krypton.Toolkit.Suite.Extended.Floating.Toolbars/Krypton.Toolkit.Suite.Extended.Floating.Toolbars 2022.csproj b/Source/Krypton Toolkit/Krypton.Toolkit.Suite.Extended.Floating.Toolbars/Krypton.Toolkit.Suite.Extended.Floating.Toolbars 2022.csproj
index e9ef34d29..84c77dbbd 100644
--- a/Source/Krypton Toolkit/Krypton.Toolkit.Suite.Extended.Floating.Toolbars/Krypton.Toolkit.Suite.Extended.Floating.Toolbars 2022.csproj
+++ b/Source/Krypton Toolkit/Krypton.Toolkit.Suite.Extended.Floating.Toolbars/Krypton.Toolkit.Suite.Extended.Floating.Toolbars 2022.csproj
@@ -87,7 +87,7 @@
-
+
diff --git a/Source/Krypton Toolkit/Krypton.Toolkit.Suite.Extended.Forms/Krypton.Toolkit.Suite.Extended.Forms 2022.csproj b/Source/Krypton Toolkit/Krypton.Toolkit.Suite.Extended.Forms/Krypton.Toolkit.Suite.Extended.Forms 2022.csproj
index 9a875a166..cd3105b96 100644
--- a/Source/Krypton Toolkit/Krypton.Toolkit.Suite.Extended.Forms/Krypton.Toolkit.Suite.Extended.Forms 2022.csproj
+++ b/Source/Krypton Toolkit/Krypton.Toolkit.Suite.Extended.Forms/Krypton.Toolkit.Suite.Extended.Forms 2022.csproj
@@ -87,7 +87,7 @@
-
+
diff --git a/Source/Krypton Toolkit/Krypton.Toolkit.Suite.Extended.Global.Utilities/Krypton.Toolkit.Suite.Extended.Global.Utilities 2022.csproj b/Source/Krypton Toolkit/Krypton.Toolkit.Suite.Extended.Global.Utilities/Krypton.Toolkit.Suite.Extended.Global.Utilities 2022.csproj
index 34045f37e..8204c62ca 100644
--- a/Source/Krypton Toolkit/Krypton.Toolkit.Suite.Extended.Global.Utilities/Krypton.Toolkit.Suite.Extended.Global.Utilities 2022.csproj
+++ b/Source/Krypton Toolkit/Krypton.Toolkit.Suite.Extended.Global.Utilities/Krypton.Toolkit.Suite.Extended.Global.Utilities 2022.csproj
@@ -86,7 +86,7 @@
-
+
diff --git a/Source/Krypton Toolkit/Krypton.Toolkit.Suite.Extended.IO/Krypton.Toolkit.Suite.Extended.IO 2022.csproj b/Source/Krypton Toolkit/Krypton.Toolkit.Suite.Extended.IO/Krypton.Toolkit.Suite.Extended.IO 2022.csproj
index 2060220b1..1ef713211 100644
--- a/Source/Krypton Toolkit/Krypton.Toolkit.Suite.Extended.IO/Krypton.Toolkit.Suite.Extended.IO 2022.csproj
+++ b/Source/Krypton Toolkit/Krypton.Toolkit.Suite.Extended.IO/Krypton.Toolkit.Suite.Extended.IO 2022.csproj
@@ -87,7 +87,7 @@
-
+
diff --git a/Source/Krypton Toolkit/Krypton.Toolkit.Suite.Extended.InputBox/Krypton.Toolkit.Suite.Extended.InputBox 2022.csproj b/Source/Krypton Toolkit/Krypton.Toolkit.Suite.Extended.InputBox/Krypton.Toolkit.Suite.Extended.InputBox 2022.csproj
index 5dbad0a77..3ec147394 100644
--- a/Source/Krypton Toolkit/Krypton.Toolkit.Suite.Extended.InputBox/Krypton.Toolkit.Suite.Extended.InputBox 2022.csproj
+++ b/Source/Krypton Toolkit/Krypton.Toolkit.Suite.Extended.InputBox/Krypton.Toolkit.Suite.Extended.InputBox 2022.csproj
@@ -87,7 +87,7 @@
-
+
diff --git a/Source/Krypton Toolkit/Krypton.Toolkit.Suite.Extended.Language.Model/Krypton.Toolkit.Suite.Extended.Language.Model 2022.csproj b/Source/Krypton Toolkit/Krypton.Toolkit.Suite.Extended.Language.Model/Krypton.Toolkit.Suite.Extended.Language.Model 2022.csproj
index a8f7bd427..884803d8d 100644
--- a/Source/Krypton Toolkit/Krypton.Toolkit.Suite.Extended.Language.Model/Krypton.Toolkit.Suite.Extended.Language.Model 2022.csproj
+++ b/Source/Krypton Toolkit/Krypton.Toolkit.Suite.Extended.Language.Model/Krypton.Toolkit.Suite.Extended.Language.Model 2022.csproj
@@ -86,7 +86,7 @@
-
+
diff --git a/Source/Krypton Toolkit/Krypton.Toolkit.Suite.Extended.Memory.Box/Krypton.Toolkit.Suite.Extended.Memory.Box 2022.csproj b/Source/Krypton Toolkit/Krypton.Toolkit.Suite.Extended.Memory.Box/Krypton.Toolkit.Suite.Extended.Memory.Box 2022.csproj
index 49cd37711..2a8c196d8 100644
--- a/Source/Krypton Toolkit/Krypton.Toolkit.Suite.Extended.Memory.Box/Krypton.Toolkit.Suite.Extended.Memory.Box 2022.csproj
+++ b/Source/Krypton Toolkit/Krypton.Toolkit.Suite.Extended.Memory.Box/Krypton.Toolkit.Suite.Extended.Memory.Box 2022.csproj
@@ -87,7 +87,7 @@
-
+
diff --git a/Source/Krypton Toolkit/Krypton.Toolkit.Suite.Extended.Messagebox/Classes/CWPRETSTRUCT.cs b/Source/Krypton Toolkit/Krypton.Toolkit.Suite.Extended.Messagebox/Classes/CWPRETSTRUCT.cs
new file mode 100644
index 000000000..1d59d382d
--- /dev/null
+++ b/Source/Krypton Toolkit/Krypton.Toolkit.Suite.Extended.Messagebox/Classes/CWPRETSTRUCT.cs
@@ -0,0 +1,12 @@
+namespace Krypton.Toolkit.Suite.Extended.Messagebox
+{
+ [StructLayout(LayoutKind.Sequential)]
+ public struct CWPRETSTRUCT
+ {
+ public IntPtr lResult;
+ public IntPtr lParam;
+ public IntPtr wParam;
+ public uint message;
+ public IntPtr hwnd;
+ };
+}
\ No newline at end of file
diff --git a/Source/Krypton Toolkit/Krypton.Toolkit.Suite.Extended.Messagebox/Classes/PlatformEvents.cs b/Source/Krypton Toolkit/Krypton.Toolkit.Suite.Extended.Messagebox/Classes/PlatformEvents.cs
new file mode 100644
index 000000000..7099ae45f
--- /dev/null
+++ b/Source/Krypton Toolkit/Krypton.Toolkit.Suite.Extended.Messagebox/Classes/PlatformEvents.cs
@@ -0,0 +1,38 @@
+namespace Krypton.Toolkit.Suite.Extended.Messagebox
+{
+ internal class PlatformEvents
+ {
+ [DllImport(Win32Libraries.User32)]
+ internal static extern bool GetWindowRect(IntPtr hWnd, ref Rectangle lpRect);
+
+ [DllImport(Win32Libraries.User32)]
+ internal static extern int MoveWindow(IntPtr hWnd, int X, int Y, int nWidth, int nHeight, bool bRepaint);
+
+ [DllImport(Win32Libraries.User32)]
+ public static extern UIntPtr SetTimer(IntPtr hWnd, UIntPtr nIDEvent, uint uElapse, PlatformInvoke.TimerProc lpTimerFunc);
+
+ [DllImport(Win32Libraries.User32)]
+ public static extern IntPtr SendMessage(IntPtr hWnd, int Msg, IntPtr wParam, IntPtr lParam);
+
+ [DllImport(Win32Libraries.User32)]
+ public static extern IntPtr SetWindowsHookEx(int idHook, PlatformInvoke.HookProc lpfn, IntPtr hInstance, int threadId);
+
+ [DllImport(Win32Libraries.User32)]
+ public static extern int UnhookWindowsHookEx(IntPtr idHook);
+
+ [DllImport(Win32Libraries.User32)]
+ public static extern IntPtr CallNextHookEx(IntPtr idHook, int nCode, IntPtr wParam, IntPtr lParam);
+
+ [DllImport(Win32Libraries.User32)]
+ public static extern int GetWindowTextLength(IntPtr hWnd);
+
+ [DllImport(Win32Libraries.User32)]
+ public static extern int GetWindowText(IntPtr hWnd, StringBuilder text, int maxLength);
+
+ [DllImport(Win32Libraries.User32)]
+ public static extern int EndDialog(IntPtr hDlg, IntPtr nResult);
+
+ [DllImport(Win32Libraries.User32, SetLastError = true)]
+ internal static extern IntPtr FindWindow(string lpClassName, string lpWindowName);
+ }
+}
\ No newline at end of file
diff --git a/Source/Krypton Toolkit/Krypton.Toolkit.Suite.Extended.Messagebox/Controls Toolkit/KryptonMessageBoxExtended.cs b/Source/Krypton Toolkit/Krypton.Toolkit.Suite.Extended.Messagebox/Controls Toolkit/KryptonMessageBoxExtended.cs
index ba2347600..8e466ec8f 100644
--- a/Source/Krypton Toolkit/Krypton.Toolkit.Suite.Extended.Messagebox/Controls Toolkit/KryptonMessageBoxExtended.cs
+++ b/Source/Krypton Toolkit/Krypton.Toolkit.Suite.Extended.Messagebox/Controls Toolkit/KryptonMessageBoxExtended.cs
@@ -32,6 +32,17 @@ namespace Krypton.Toolkit.Suite.Extended.Messagebox
public static class KryptonMessageBoxExtended
{
#region Public
+
+ public static DialogResult Show(string messageText, string caption, ExtendedMessageBoxButtons buttons, ExtendedKryptonMessageBoxIcon icon, int? timeOut = 60, DialogResult? timerResult = DialogResult.None) =>
+ ShowCore(null, messageText, caption, buttons, icon, KryptonMessageBoxDefaultButton.Button1,
+ MessageBoxOptions.DefaultDesktopOnly, null, null, null,
+ null, null, Color.Empty,
+ new[] { Color.Empty, Color.Empty, Color.Empty, Color.Empty },
+ null, null, null,
+ null, string.Empty, string.Empty, string.Empty,
+ string.Empty, string.Empty, null, null,
+ null, null, null, timeOut, timerResult);
+
/// Shows a messagebox.
/// The text.
/// The caption.
@@ -40,15 +51,19 @@ public static class KryptonMessageBoxExtended
/// The show control copy.
/// The application path. To be used in conjunction with type.
public static DialogResult Show(string messageText, string caption, ExtendedMessageBoxButtons buttons,
- ExtendedKryptonMessageBoxIcon icon, bool? showCtrlCopy = null, string applicationPath = null,
- ExtendedKryptonMessageBoxMessageContainerType? messageContainerType = ExtendedKryptonMessageBoxMessageContainerType.Normal,
- KryptonCommand? linkLabelCommand = null, int? linkAreaStart = 0, int? linkAreaEnd = null,
- ProcessStartInfo? linkLaunchArgument = null
- /*bool? openInExplorer*/)
+ ExtendedKryptonMessageBoxIcon icon, bool? showCtrlCopy = null, string applicationPath = null,
+ ExtendedKryptonMessageBoxMessageContainerType? messageContainerType =
+ ExtendedKryptonMessageBoxMessageContainerType.Normal,
+ KryptonCommand? linkLabelCommand = null, int? linkAreaStart = 0, int? linkAreaEnd = null,
+ ProcessStartInfo? linkLaunchArgument = null, int? timeOut = 60,
+ DialogResult? timerResult = DialogResult.None
+ /*bool? openInExplorer*/)
=> ShowCore(null, messageText, caption, buttons, icon, KryptonMessageBoxDefaultButton.Button1, 0,
- null, showCtrlCopy, null, null, null, Color.Empty, new[] { Color.Empty, Color.Empty, Color.Empty, Color.Empty },
+ null, showCtrlCopy, null, null, null, Color.Empty,
+ new[] { Color.Empty, Color.Empty, Color.Empty, Color.Empty },
null, null, null, null, string.Empty, string.Empty,
- string.Empty, string.Empty, applicationPath, messageContainerType, linkLabelCommand, linkAreaStart, linkAreaEnd, linkLaunchArgument);
+ string.Empty, string.Empty, applicationPath, messageContainerType, linkLabelCommand, linkAreaStart,
+ linkAreaEnd, linkLaunchArgument, timeOut, timerResult);
/// Shows a messagebox.
/// The text.
@@ -73,7 +88,7 @@ public static class KryptonMessageBoxExtended
Image? customImageIcon = null, string? applicationPath = null,
ExtendedKryptonMessageBoxMessageContainerType? messageContainerType = ExtendedKryptonMessageBoxMessageContainerType.Normal,
KryptonCommand? linkLabelCommand = null, int? linkAreaStart = 0, int? linkAreaEnd = null,
- ProcessStartInfo? linkLaunchArgument = null
+ ProcessStartInfo? linkLaunchArgument = null, int? timeOut = 60, DialogResult? timerResult = DialogResult.None
/*bool? openInExplorer*/)
=>
ShowCore(null, messageText, caption, buttons, icon, defaultButton, options,
@@ -82,7 +97,7 @@ public static class KryptonMessageBoxExtended
new[] { Color.Empty, Color.Empty, Color.Empty, Color.Empty },
null, null, null, null, string.Empty, string.Empty,
string.Empty, string.Empty, applicationPath,
- messageContainerType, linkLabelCommand, linkAreaStart, linkAreaEnd, linkLaunchArgument);
+ messageContainerType, linkLabelCommand, linkAreaStart, linkAreaEnd, linkLaunchArgument, timeOut, timerResult);
/// Shows a messagebox.
/// The text.
@@ -103,7 +118,7 @@ public static class KryptonMessageBoxExtended
bool? showCtrlCopy = null, string? applicationPath = null,
ExtendedKryptonMessageBoxMessageContainerType? messageContainerType = ExtendedKryptonMessageBoxMessageContainerType.Normal,
KryptonCommand? linkLabelCommand = null, int? linkAreaStart = 0, int? linkAreaEnd = null,
- ProcessStartInfo? linkLaunchArgument = null
+ ProcessStartInfo? linkLaunchArgument = null, int? timeOut = 60, DialogResult? timerResult = DialogResult.None
/*bool? openInExplorer*/)
=>
ShowCore(null, messageText, caption, buttons, icon, defaultButton, options,
@@ -112,7 +127,8 @@ public static class KryptonMessageBoxExtended
new[] { Color.Empty, Color.Empty, Color.Empty, Color.Empty },
null, null, null, null, string.Empty, string.Empty,
string.Empty, string.Empty, applicationPath,
- messageContainerType, linkLabelCommand, linkAreaStart, linkAreaEnd, linkLaunchArgument);
+ messageContainerType, linkLabelCommand, linkAreaStart, linkAreaEnd, linkLaunchArgument,
+ timeOut, timerResult);
/// Shows a messagebox.
/// The owner.
@@ -138,7 +154,7 @@ public static class KryptonMessageBoxExtended
Image customImageIcon = null, string applicationPath = null,
ExtendedKryptonMessageBoxMessageContainerType? messageContainerType = ExtendedKryptonMessageBoxMessageContainerType.Normal,
KryptonCommand? linkLabelCommand = null, int? linkAreaStart = 0, int? linkAreaEnd = null,
- ProcessStartInfo? linkLaunchArgument = null
+ ProcessStartInfo? linkLaunchArgument = null, int? timeOut = 60, DialogResult? timerResult = DialogResult.None
/*bool? openInExplorer*/)
=>
ShowCore(owner, messageText, caption, buttons, icon, defaultButton, options,
@@ -147,7 +163,7 @@ public static class KryptonMessageBoxExtended
new[] { Color.Empty, Color.Empty, Color.Empty, Color.Empty },
null, null, null, null, string.Empty,
string.Empty, string.Empty, string.Empty,
- applicationPath, messageContainerType, linkLabelCommand, linkAreaStart, linkAreaEnd, linkLaunchArgument);
+ applicationPath, messageContainerType, linkLabelCommand, linkAreaStart, linkAreaEnd, linkLaunchArgument, timeOut, timerResult);
/// Shows a messagebox.
/// The owner.
@@ -170,7 +186,7 @@ public static class KryptonMessageBoxExtended
string applicationPath = null,
ExtendedKryptonMessageBoxMessageContainerType? messageContainerType = ExtendedKryptonMessageBoxMessageContainerType.Normal,
KryptonCommand? linkLabelCommand = null, int? linkAreaStart = 0, int? linkAreaEnd = null,
- ProcessStartInfo? linkLaunchArgument = null
+ ProcessStartInfo? linkLaunchArgument = null, int? timeOut = 60, DialogResult? timerResult = DialogResult.None
/*bool? openInExplorer*/)
=>
ShowCore(owner, messageText, caption, buttons, icon, defaultButton, options,
@@ -181,7 +197,8 @@ public static class KryptonMessageBoxExtended
null, string.Empty,
string.Empty, string.Empty,
string.Empty, applicationPath,
- messageContainerType, linkLabelCommand, linkAreaStart, linkAreaEnd, linkLaunchArgument);
+ messageContainerType, linkLabelCommand, linkAreaStart, linkAreaEnd, linkLaunchArgument,
+ timeOut, timerResult);
/// Shows a messagebox.
/// The text.
@@ -211,7 +228,7 @@ public static class KryptonMessageBoxExtended
string applicationPath = null,
ExtendedKryptonMessageBoxMessageContainerType? messageContainerType = ExtendedKryptonMessageBoxMessageContainerType.Normal,
KryptonCommand? linkLabelCommand = null, int? linkAreaStart = 0, int? linkAreaEnd = null,
- ProcessStartInfo? linkLaunchArgument = null
+ ProcessStartInfo? linkLaunchArgument = null, int? timeOut = 60, DialogResult? timerResult = DialogResult.None
/*bool? openInExplorer*/)
=>
ShowCore(null, messageText, caption, buttons, icon, defaultButton, options,
@@ -221,7 +238,8 @@ public static class KryptonMessageBoxExtended
null, null, null, null, string.Empty,
string.Empty, string.Empty,
string.Empty, applicationPath,
- messageContainerType, linkLabelCommand, linkAreaStart, linkAreaEnd, linkLaunchArgument);
+ messageContainerType, linkLabelCommand, linkAreaStart, linkAreaEnd, linkLaunchArgument,
+ timeOut, timerResult);
/// Shows a message box.
/// The owner.
@@ -276,7 +294,7 @@ public static class KryptonMessageBoxExtended
string? applicationPath = null,
ExtendedKryptonMessageBoxMessageContainerType? messageContainerType = ExtendedKryptonMessageBoxMessageContainerType.Normal,
KryptonCommand? linkLabelCommand = null, int? linkAreaStart = 0, int? linkAreaEnd = null,
- ProcessStartInfo? linkLaunchArgument = null
+ ProcessStartInfo? linkLaunchArgument = null, int? timeOut = 60, DialogResult? timerResult = DialogResult.None
/*bool? openInExplorer*/)
=>
ShowCore(owner, messageText, caption, buttons, icon, defaultButton, options,
@@ -286,7 +304,8 @@ public static class KryptonMessageBoxExtended
buttonTwoCustomDialogResult, buttonThreeCustomDialogResult,
buttonFourDialogResult, buttonOneCustomText, buttonTwoCustomText,
buttonThreeCustomText, buttonFourCustomText, applicationPath,
- messageContainerType, linkLabelCommand, linkAreaStart, linkAreaEnd, linkLaunchArgument);
+ messageContainerType, linkLabelCommand, linkAreaStart, linkAreaEnd, linkLaunchArgument,
+ timeOut, timerResult);
#endregion
#region Implementation
@@ -326,9 +345,9 @@ public static class KryptonMessageBoxExtended
ExtendedKryptonMessageBoxIcon icon,
KryptonMessageBoxDefaultButton defaultButton,
MessageBoxOptions options, HelpInfo helpInfo,
- bool? showCtrlCopy, Font messageBoxTypeface,
- Image customImageIcon, bool? showHelpButton,
- Color? messageTextColour, Color[] buttonTextColours,
+ bool? showCtrlCopy, Font? messageBoxTypeface,
+ Image? customImageIcon, bool? showHelpButton,
+ Color? messageTextColour, Color[]? buttonTextColours,
DialogResult? buttonOneCustomDialogResult,
DialogResult? buttonTwoCustomDialogResult,
DialogResult? buttonThreeCustomDialogResult,
@@ -338,7 +357,9 @@ public static class KryptonMessageBoxExtended
string applicationPath,
ExtendedKryptonMessageBoxMessageContainerType? messageContainerType,
KryptonCommand? linkLabelCommand, int? linkAreaStart, int? linkAreaEnd,
- ProcessStartInfo? linkLaunchArgument
+ ProcessStartInfo? linkLaunchArgument,
+ int? timeOut,
+ DialogResult? timerResult
/*bool? openInExplorer*/)
{
IWin32Window showOwner = ValidateOptions(owner, options, helpInfo);
@@ -363,7 +384,9 @@ public static class KryptonMessageBoxExtended
linkLabelCommand,
linkAreaStart,
linkAreaEnd,
- linkLaunchArgument);
+ linkLaunchArgument,
+ timeOut,
+ timerResult);
return kmbe.ShowDialog(showOwner);
}
diff --git a/Source/Krypton Toolkit/Krypton.Toolkit.Suite.Extended.Messagebox/Controls Visuals/KryptonMessageBoxExtendedForm.cs b/Source/Krypton Toolkit/Krypton.Toolkit.Suite.Extended.Messagebox/Controls Visuals/KryptonMessageBoxExtendedForm.cs
index 6bce36212..a2ccb709f 100644
--- a/Source/Krypton Toolkit/Krypton.Toolkit.Suite.Extended.Messagebox/Controls Visuals/KryptonMessageBoxExtendedForm.cs
+++ b/Source/Krypton Toolkit/Krypton.Toolkit.Suite.Extended.Messagebox/Controls Visuals/KryptonMessageBoxExtendedForm.cs
@@ -27,14 +27,23 @@
// ReSharper disable NotAccessedField.Local
+using System.Threading;
+
+using Timer = System.Threading.Timer;
+
#pragma warning disable IDE0031
namespace Krypton.Toolkit.Suite.Extended.Messagebox
{
internal partial class KryptonMessageBoxExtendedForm : KryptonForm
{
#region Static Fields
+
private const int GAP = 10;
private static readonly int OS_MAJOR_VERSION;
+ public const int WH_CALLWNDPROCRET = 12;
+
+ private const int WM_CLOSE = 0x0010;
+
#endregion
#region Instance Fields
@@ -44,7 +53,7 @@ internal partial class KryptonMessageBoxExtendedForm : KryptonForm
private readonly KryptonMessageBoxDefaultButton _defaultButton;
private readonly MessageBoxOptions _options; // https://github.com/Krypton-Suite/Standard-Toolkit/issues/313
// If help information provided or we are not a service/default desktop application then grab an owner for showing the message box
- private readonly IWin32Window _showOwner;
+ private static /*readonly*/ IWin32Window _showOwner;
private readonly HelpInfo _helpInfo;
#endregion
@@ -93,10 +102,32 @@ internal partial class KryptonMessageBoxExtendedForm : KryptonForm
private readonly ProcessStartInfo? _linkLaunchArgument;
+ private static PlatformInvoke.HookProc _hookProc;
+
+ private static IntPtr _hHook;
+
+ private Timer _timeOutTimer;
+
+ private int _timeOut;
+
+ private bool _timedOut;
+
+ private DialogResult _result;
+
+ private DialogResult _timerResult;
+
#endregion
#region Identity
- static KryptonMessageBoxExtendedForm() => OS_MAJOR_VERSION = Environment.OSVersion.Version.Major;
+
+ static KryptonMessageBoxExtendedForm()
+ {
+ OS_MAJOR_VERSION = Environment.OSVersion.Version.Major;
+
+ _hookProc = new PlatformInvoke.HookProc(MessageBoxHookProc);
+
+ _hHook = IntPtr.Zero;
+ }
public KryptonMessageBoxExtendedForm()
{
@@ -106,7 +137,7 @@ public KryptonMessageBoxExtendedForm()
internal KryptonMessageBoxExtendedForm(IWin32Window showOwner, string text, string caption,
ExtendedMessageBoxButtons buttons,
- ExtendedKryptonMessageBoxIcon kryptonMessageBoxIcon,
+ ExtendedKryptonMessageBoxIcon icon,
KryptonMessageBoxDefaultButton defaultButton,
MessageBoxOptions options,
HelpInfo helpInfo, bool? showCtrlCopy,
@@ -122,14 +153,16 @@ public KryptonMessageBoxExtendedForm()
string? applicationPath,
ExtendedKryptonMessageBoxMessageContainerType? messageContainerType,
KryptonCommand? linkLabelCommand, int? linkAreaStart, int? linkAreaEnd,
- ProcessStartInfo? linkLaunchArgument
+ ProcessStartInfo? linkLaunchArgument,
+ int? timeOut,
+ DialogResult? timerResult
/*bool? openInExplorer*/)
{
// Store incoming values
_text = text;
_caption = caption;
_buttons = buttons;
- _kryptonMessageBoxIcon = kryptonMessageBoxIcon;
+ _kryptonMessageBoxIcon = icon;
_defaultButton = defaultButton;
_options = options;
_helpInfo = helpInfo;
@@ -155,6 +188,9 @@ public KryptonMessageBoxExtendedForm()
_linkAreaStart = linkAreaStart ?? 0;
_linkAreaEnd = linkAreaEnd ?? text.Length;
_linkLaunchArgument = linkLaunchArgument ?? new();
+ _timeOut = timeOut ?? 60;
+ _timeOutTimer = new Timer(OnTimerElapsed, null, _timeOut, Timeout.Infinite);
+ _timerResult = timerResult ?? DialogResult.None;
//_openInExplorer = openInExplorer ?? false;
// Create the form contents
@@ -174,6 +210,16 @@ public KryptonMessageBoxExtendedForm()
// Finally calculate and set form sizing
UpdateSizing(showOwner);
+
+ using (_timeOutTimer)
+ {
+ _result = KryptonMessageBoxExtended.Show(text, caption, buttons, icon, null, null);
+ }
+
+ if (_timedOut)
+ {
+ _result = _timerResult;
+ }
}
#endregion Identity
@@ -812,7 +858,85 @@ private void UpdateContentAreaType(ExtendedKryptonMessageBoxMessageContainerType
}
}
- #endregion
+ private static void Initialize()
+ {
+ if (_hHook != IntPtr.Zero)
+ {
+ throw new NotSupportedException("multiple calls are not supported");
+ }
+
+ if (_showOwner != null)
+ {
+ _hHook = PlatformEvents.SetWindowsHookEx(WH_CALLWNDPROCRET, _hookProc, IntPtr.Zero, AppDomain.GetCurrentThreadId());
+ }
+ }
+ private static IntPtr MessageBoxHookProc(int nCode, IntPtr wParam, IntPtr lParam)
+ {
+ if (nCode < 0)
+ {
+ return PlatformEvents.CallNextHookEx(_hHook, nCode, wParam, lParam);
+ }
+
+ CWPRETSTRUCT msg = (CWPRETSTRUCT)Marshal.PtrToStructure(lParam, typeof(CWPRETSTRUCT));
+ IntPtr hook = _hHook;
+
+ if (msg.message == (int)CbtHookAction.HCBT_ACTIVATE)
+ {
+ try
+ {
+ CenterWindow(msg.hwnd);
+ }
+ finally
+ {
+ PlatformEvents.UnhookWindowsHookEx(_hHook);
+ _hHook = IntPtr.Zero;
+ }
+ }
+
+ return PlatformEvents.CallNextHookEx(hook, nCode, wParam, lParam);
+ }
+
+ private static void CenterWindow(IntPtr hChildWnd)
+ {
+ Rectangle recChild = new Rectangle(0, 0, 0, 0);
+ bool success = PlatformEvents.GetWindowRect(hChildWnd, ref recChild);
+
+ int width = recChild.Width - recChild.X;
+ int height = recChild.Height - recChild.Y;
+
+ Rectangle recParent = new Rectangle(0, 0, 0, 0);
+ success = PlatformEvents.GetWindowRect(_showOwner.Handle, ref recParent);
+
+ Point ptCenter = new Point(0, 0);
+ ptCenter.X = recParent.X + ((recParent.Width - recParent.X) / 2);
+ ptCenter.Y = recParent.Y + ((recParent.Height - recParent.Y) / 2);
+
+
+ Point ptStart = new Point(0, 0);
+ ptStart.X = (ptCenter.X - (width / 2));
+ ptStart.Y = (ptCenter.Y - (height / 2));
+
+ ptStart.X = (ptStart.X < 0) ? 0 : ptStart.X;
+ ptStart.Y = (ptStart.Y < 0) ? 0 : ptStart.Y;
+
+ int result = PlatformEvents.MoveWindow(hChildWnd, ptStart.X, ptStart.Y, width,
+ height, false);
+ }
+
+ private void OnTimerElapsed(object state)
+ {
+ IntPtr mbWnd = PlatformEvents.FindWindow("#32770", _caption); // lpClassName is #32770 for MessageBox
+ if (mbWnd != IntPtr.Zero)
+ {
+ PlatformEvents.SendMessage(mbWnd, WM_CLOSE, IntPtr.Zero, IntPtr.Zero);
+ }
+
+ _timeOutTimer.Dispose();
+
+ _timedOut = true;
+ }
+
+ #endregion
}
}
\ No newline at end of file
diff --git a/Source/Krypton Toolkit/Krypton.Toolkit.Suite.Extended.Messagebox/Enumerations/CbtHookAction.cs b/Source/Krypton Toolkit/Krypton.Toolkit.Suite.Extended.Messagebox/Enumerations/CbtHookAction.cs
new file mode 100644
index 000000000..342789249
--- /dev/null
+++ b/Source/Krypton Toolkit/Krypton.Toolkit.Suite.Extended.Messagebox/Enumerations/CbtHookAction.cs
@@ -0,0 +1,16 @@
+namespace Krypton.Toolkit.Suite.Extended.Messagebox
+{
+ public enum CbtHookAction
+ {
+ HCBT_MOVESIZE = 0,
+ HCBT_MINMAX = 1,
+ HCBT_QS = 2,
+ HCBT_CREATEWND = 3,
+ HCBT_DESTROYWND = 4,
+ HCBT_ACTIVATE = 5,
+ HCBT_CLICKSKIPPED = 6,
+ HCBT_KEYSKIPPED = 7,
+ HCBT_SYSCOMMAND = 8,
+ HCBT_SETFOCUS = 9
+ }
+}
\ No newline at end of file
diff --git a/Source/Krypton Toolkit/Krypton.Toolkit.Suite.Extended.Messagebox/Globals/GlobalDeclarations.cs b/Source/Krypton Toolkit/Krypton.Toolkit.Suite.Extended.Messagebox/Globals/GlobalDeclarations.cs
index 856be5331..4c84ff009 100644
--- a/Source/Krypton Toolkit/Krypton.Toolkit.Suite.Extended.Messagebox/Globals/GlobalDeclarations.cs
+++ b/Source/Krypton Toolkit/Krypton.Toolkit.Suite.Extended.Messagebox/Globals/GlobalDeclarations.cs
@@ -27,13 +27,13 @@
global using System;
global using System.ComponentModel;
+global using System.Diagnostics;
global using System.Drawing;
global using System.Drawing.Design;
-global using System.Diagnostics;
global using System.Media;
global using System.Reflection;
+global using System.Runtime.InteropServices;
global using System.Text;
-global using System.IO;
global using System.Windows.Forms;
global using Krypton.Toolkit.Suite.Extended.Developer.Utilities;
diff --git a/Source/Krypton Toolkit/Krypton.Toolkit.Suite.Extended.Messagebox/Krypton.Toolkit.Suite.Extended.Messagebox 2022.csproj b/Source/Krypton Toolkit/Krypton.Toolkit.Suite.Extended.Messagebox/Krypton.Toolkit.Suite.Extended.Messagebox 2022.csproj
index 33d4ff53c..e2e9eef4a 100644
--- a/Source/Krypton Toolkit/Krypton.Toolkit.Suite.Extended.Messagebox/Krypton.Toolkit.Suite.Extended.Messagebox 2022.csproj
+++ b/Source/Krypton Toolkit/Krypton.Toolkit.Suite.Extended.Messagebox/Krypton.Toolkit.Suite.Extended.Messagebox 2022.csproj
@@ -87,7 +87,7 @@
-
+
diff --git a/Source/Krypton Toolkit/Krypton.Toolkit.Suite.Extended.Navi.Suite/Krypton.Toolkit.Suite.Extended.Navi.Suite 2022.csproj b/Source/Krypton Toolkit/Krypton.Toolkit.Suite.Extended.Navi.Suite/Krypton.Toolkit.Suite.Extended.Navi.Suite 2022.csproj
index d36e4c891..ab9af3f9a 100644
--- a/Source/Krypton Toolkit/Krypton.Toolkit.Suite.Extended.Navi.Suite/Krypton.Toolkit.Suite.Extended.Navi.Suite 2022.csproj
+++ b/Source/Krypton Toolkit/Krypton.Toolkit.Suite.Extended.Navi.Suite/Krypton.Toolkit.Suite.Extended.Navi.Suite 2022.csproj
@@ -87,7 +87,7 @@
-
+
diff --git a/Source/Krypton Toolkit/Krypton.Toolkit.Suite.Extended.Navigator/Krypton.Toolkit.Suite.Extended.Navigator 2022.csproj b/Source/Krypton Toolkit/Krypton.Toolkit.Suite.Extended.Navigator/Krypton.Toolkit.Suite.Extended.Navigator 2022.csproj
index 9a46962a8..4cfd8e52b 100644
--- a/Source/Krypton Toolkit/Krypton.Toolkit.Suite.Extended.Navigator/Krypton.Toolkit.Suite.Extended.Navigator 2022.csproj
+++ b/Source/Krypton Toolkit/Krypton.Toolkit.Suite.Extended.Navigator/Krypton.Toolkit.Suite.Extended.Navigator 2022.csproj
@@ -87,9 +87,9 @@
-
+
-
+
diff --git a/Source/Krypton Toolkit/Krypton.Toolkit.Suite.Extended.Networking/Krypton.Toolkit.Suite.Extended.Networking 2022.csproj b/Source/Krypton Toolkit/Krypton.Toolkit.Suite.Extended.Networking/Krypton.Toolkit.Suite.Extended.Networking 2022.csproj
index 73f50cb8a..bac5993d8 100644
--- a/Source/Krypton Toolkit/Krypton.Toolkit.Suite.Extended.Networking/Krypton.Toolkit.Suite.Extended.Networking 2022.csproj
+++ b/Source/Krypton Toolkit/Krypton.Toolkit.Suite.Extended.Networking/Krypton.Toolkit.Suite.Extended.Networking 2022.csproj
@@ -87,7 +87,7 @@
-
+
@@ -154,7 +154,7 @@
-
+
diff --git a/Source/Krypton Toolkit/Krypton.Toolkit.Suite.Extended.Notifications/Krypton.Toolkit.Suite.Extended.Notifications 2022.csproj b/Source/Krypton Toolkit/Krypton.Toolkit.Suite.Extended.Notifications/Krypton.Toolkit.Suite.Extended.Notifications 2022.csproj
index 07cc17b2a..cb94c29dc 100644
--- a/Source/Krypton Toolkit/Krypton.Toolkit.Suite.Extended.Notifications/Krypton.Toolkit.Suite.Extended.Notifications 2022.csproj
+++ b/Source/Krypton Toolkit/Krypton.Toolkit.Suite.Extended.Notifications/Krypton.Toolkit.Suite.Extended.Notifications 2022.csproj
@@ -87,7 +87,7 @@
-
+
diff --git a/Source/Krypton Toolkit/Krypton.Toolkit.Suite.Extended.Outlook.Grid/Krypton.Toolkit.Suite.Extended.Outlook.Grid 2022.csproj b/Source/Krypton Toolkit/Krypton.Toolkit.Suite.Extended.Outlook.Grid/Krypton.Toolkit.Suite.Extended.Outlook.Grid 2022.csproj
index dfb3a61ed..5407adbd6 100644
--- a/Source/Krypton Toolkit/Krypton.Toolkit.Suite.Extended.Outlook.Grid/Krypton.Toolkit.Suite.Extended.Outlook.Grid 2022.csproj
+++ b/Source/Krypton Toolkit/Krypton.Toolkit.Suite.Extended.Outlook.Grid/Krypton.Toolkit.Suite.Extended.Outlook.Grid 2022.csproj
@@ -87,7 +87,7 @@
-
+
diff --git a/Source/Krypton Toolkit/Krypton.Toolkit.Suite.Extended.Panels/Krypton.Toolkit.Suite.Extended.Panels 2022.csproj b/Source/Krypton Toolkit/Krypton.Toolkit.Suite.Extended.Panels/Krypton.Toolkit.Suite.Extended.Panels 2022.csproj
index 7b7fb27e1..c80d890e5 100644
--- a/Source/Krypton Toolkit/Krypton.Toolkit.Suite.Extended.Panels/Krypton.Toolkit.Suite.Extended.Panels 2022.csproj
+++ b/Source/Krypton Toolkit/Krypton.Toolkit.Suite.Extended.Panels/Krypton.Toolkit.Suite.Extended.Panels 2022.csproj
@@ -87,7 +87,7 @@
-
+
diff --git a/Source/Krypton Toolkit/Krypton.Toolkit.Suite.Extended.Resources/Krypton.Toolkit.Suite.Extended.Resources 2022.csproj b/Source/Krypton Toolkit/Krypton.Toolkit.Suite.Extended.Resources/Krypton.Toolkit.Suite.Extended.Resources 2022.csproj
index 8f9d8c964..8c160811d 100644
--- a/Source/Krypton Toolkit/Krypton.Toolkit.Suite.Extended.Resources/Krypton.Toolkit.Suite.Extended.Resources 2022.csproj
+++ b/Source/Krypton Toolkit/Krypton.Toolkit.Suite.Extended.Resources/Krypton.Toolkit.Suite.Extended.Resources 2022.csproj
@@ -86,7 +86,7 @@
-
+
diff --git a/Source/Krypton Toolkit/Krypton.Toolkit.Suite.Extended.Ribbon/Krypton.Toolkit.Suite.Extended.Ribbon 2022.csproj b/Source/Krypton Toolkit/Krypton.Toolkit.Suite.Extended.Ribbon/Krypton.Toolkit.Suite.Extended.Ribbon 2022.csproj
index 7d98202fa..310422d7e 100644
--- a/Source/Krypton Toolkit/Krypton.Toolkit.Suite.Extended.Ribbon/Krypton.Toolkit.Suite.Extended.Ribbon 2022.csproj
+++ b/Source/Krypton Toolkit/Krypton.Toolkit.Suite.Extended.Ribbon/Krypton.Toolkit.Suite.Extended.Ribbon 2022.csproj
@@ -87,9 +87,9 @@
-
+
-
+
diff --git a/Source/Krypton Toolkit/Krypton.Toolkit.Suite.Extended.Settings/Krypton.Toolkit.Suite.Extended.Settings 2022.csproj b/Source/Krypton Toolkit/Krypton.Toolkit.Suite.Extended.Settings/Krypton.Toolkit.Suite.Extended.Settings 2022.csproj
index 2b42dd1a5..87c72c952 100644
--- a/Source/Krypton Toolkit/Krypton.Toolkit.Suite.Extended.Settings/Krypton.Toolkit.Suite.Extended.Settings 2022.csproj
+++ b/Source/Krypton Toolkit/Krypton.Toolkit.Suite.Extended.Settings/Krypton.Toolkit.Suite.Extended.Settings 2022.csproj
@@ -86,7 +86,7 @@
-
+
diff --git a/Source/Krypton Toolkit/Krypton.Toolkit.Suite.Extended.Shared/General/PlatformInvoke.cs b/Source/Krypton Toolkit/Krypton.Toolkit.Suite.Extended.Shared/General/PlatformInvoke.cs
index a1a6ff7c1..c3c3035cf 100644
--- a/Source/Krypton Toolkit/Krypton.Toolkit.Suite.Extended.Shared/General/PlatformInvoke.cs
+++ b/Source/Krypton Toolkit/Krypton.Toolkit.Suite.Extended.Shared/General/PlatformInvoke.cs
@@ -2995,6 +2995,8 @@ internal static BOOL EndDialog(HandleRef hDlg, IntPtr nResult)
public delegate IntPtr HookProc(int code, IntPtr wParam, IntPtr lParam);
+ public delegate void TimerProc(IntPtr hWnd, uint uMsg, UIntPtr nIDEvent, uint dwTime);
+
[DllImport(Win32Libraries.User32)]
[DefaultDllImportSearchPaths(DllImportSearchPath.System32)]
public static extern IntPtr SetWindowsHookEx(WH_ idHook, HookProc lpfn, IntPtr hInstance, int threadId);
diff --git a/Source/Krypton Toolkit/Krypton.Toolkit.Suite.Extended.Shared/Krypton.Toolkit.Suite.Extended.Shared 2022.csproj b/Source/Krypton Toolkit/Krypton.Toolkit.Suite.Extended.Shared/Krypton.Toolkit.Suite.Extended.Shared 2022.csproj
index a0831481a..1984ee83b 100644
--- a/Source/Krypton Toolkit/Krypton.Toolkit.Suite.Extended.Shared/Krypton.Toolkit.Suite.Extended.Shared 2022.csproj
+++ b/Source/Krypton Toolkit/Krypton.Toolkit.Suite.Extended.Shared/Krypton.Toolkit.Suite.Extended.Shared 2022.csproj
@@ -86,7 +86,7 @@
-
+
diff --git a/Source/Krypton Toolkit/Krypton.Toolkit.Suite.Extended.Software.Updater.Core/Krypton.Toolkit.Suite.Extended.Software.Updater.Core 2022.csproj b/Source/Krypton Toolkit/Krypton.Toolkit.Suite.Extended.Software.Updater.Core/Krypton.Toolkit.Suite.Extended.Software.Updater.Core 2022.csproj
index 176ff5a7c..ae13cc9bd 100644
--- a/Source/Krypton Toolkit/Krypton.Toolkit.Suite.Extended.Software.Updater.Core/Krypton.Toolkit.Suite.Extended.Software.Updater.Core 2022.csproj
+++ b/Source/Krypton Toolkit/Krypton.Toolkit.Suite.Extended.Software.Updater.Core/Krypton.Toolkit.Suite.Extended.Software.Updater.Core 2022.csproj
@@ -86,13 +86,13 @@
-
+
-
+
-
+
-
+
diff --git a/Source/Krypton Toolkit/Krypton.Toolkit.Suite.Extended.Software.Updater/Auto Updater/Controls Toolkit/MyWebClient.cs b/Source/Krypton Toolkit/Krypton.Toolkit.Suite.Extended.Software.Updater/Auto Updater/Controls Toolkit/MyWebClient.cs
index 43d942160..39de34c7f 100644
--- a/Source/Krypton Toolkit/Krypton.Toolkit.Suite.Extended.Software.Updater/Auto Updater/Controls Toolkit/MyWebClient.cs
+++ b/Source/Krypton Toolkit/Krypton.Toolkit.Suite.Extended.Software.Updater/Auto Updater/Controls Toolkit/MyWebClient.cs
@@ -1,32 +1,4 @@
-#region License
-
-/*
- * MIT License
- *
- * Copyright (c) 2012 - 2023 RBSoft
- *
- * Permission is hereby granted, free of charge, to any person obtaining a copy
- * of this software and associated documentation files (the "Software"), to deal
- * in the Software without restriction, including without limitation the rights
- * to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
- * copies of the Software, and to permit persons to whom the Software is
- * furnished to do so, subject to the following conditions:
- *
- * The above copyright notice and this permission notice shall be included in all
- * copies or substantial portions of the Software.
- *
- * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
- * IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
- * FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
- * AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
- * LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
- * OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE
- * SOFTWARE.
- */
-
-#endregion
-
-namespace Krypton.Toolkit.Suite.Extended.Software.Updater
+namespace Krypton.Toolkit.Suite.Extended.Software.Updater
{
///
public class MyWebClient : WebClient
diff --git a/Source/Krypton Toolkit/Krypton.Toolkit.Suite.Extended.Software.Updater/Auto Updater/UX/DownloadUpdateDialog.Designer.cs b/Source/Krypton Toolkit/Krypton.Toolkit.Suite.Extended.Software.Updater/Auto Updater/Controls Visuals/DownloadUpdateDialog.Designer.cs
similarity index 75%
rename from Source/Krypton Toolkit/Krypton.Toolkit.Suite.Extended.Software.Updater/Auto Updater/UX/DownloadUpdateDialog.Designer.cs
rename to Source/Krypton Toolkit/Krypton.Toolkit.Suite.Extended.Software.Updater/Auto Updater/Controls Visuals/DownloadUpdateDialog.Designer.cs
index 7131e517f..5c737033a 100644
--- a/Source/Krypton Toolkit/Krypton.Toolkit.Suite.Extended.Software.Updater/Auto Updater/UX/DownloadUpdateDialog.Designer.cs
+++ b/Source/Krypton Toolkit/Krypton.Toolkit.Suite.Extended.Software.Updater/Auto Updater/Controls Visuals/DownloadUpdateDialog.Designer.cs
@@ -34,7 +34,7 @@ private void InitializeComponent()
this.pbxIcon = new System.Windows.Forms.PictureBox();
this.kryptonTableLayoutPanel2 = new Krypton.Toolkit.KryptonTableLayoutPanel();
this.kpbDownloadProgress = new Krypton.Toolkit.KryptonProgressBar();
- this.kwlHeader = new Krypton.Toolkit.KryptonWrapLabel();
+ this.kwlInformation = new Krypton.Toolkit.KryptonWrapLabel();
this.kwlSize = new Krypton.Toolkit.KryptonWrapLabel();
((System.ComponentModel.ISupportInitialize)(this.kryptonPanel1)).BeginInit();
this.kryptonPanel1.SuspendLayout();
@@ -49,8 +49,8 @@ private void InitializeComponent()
this.kryptonPanel1.Dock = System.Windows.Forms.DockStyle.Fill;
this.kryptonPanel1.Location = new System.Drawing.Point(0, 0);
this.kryptonPanel1.Name = "kryptonPanel1";
- this.kryptonPanel1.Size = new System.Drawing.Size(487, 106);
- this.kryptonPanel1.TabIndex = 1;
+ this.kryptonPanel1.Size = new System.Drawing.Size(413, 111);
+ this.kryptonPanel1.TabIndex = 0;
//
// kryptonTableLayoutPanel1
//
@@ -66,20 +66,21 @@ private void InitializeComponent()
this.kryptonTableLayoutPanel1.Name = "kryptonTableLayoutPanel1";
this.kryptonTableLayoutPanel1.RowCount = 1;
this.kryptonTableLayoutPanel1.RowStyles.Add(new System.Windows.Forms.RowStyle(System.Windows.Forms.SizeType.Percent, 100F));
- this.kryptonTableLayoutPanel1.Size = new System.Drawing.Size(487, 106);
- this.kryptonTableLayoutPanel1.TabIndex = 0;
+ this.kryptonTableLayoutPanel1.Size = new System.Drawing.Size(413, 111);
+ this.kryptonTableLayoutPanel1.TabIndex = 1;
//
// pbxIcon
//
this.pbxIcon.BackColor = System.Drawing.Color.Transparent;
this.pbxIcon.Dock = System.Windows.Forms.DockStyle.Fill;
this.pbxIcon.Image = global::Krypton.Toolkit.Suite.Extended.Software.Updater.Properties.Resources.download_32;
- this.pbxIcon.Location = new System.Drawing.Point(3, 3);
+ this.pbxIcon.ImeMode = System.Windows.Forms.ImeMode.NoControl;
+ this.pbxIcon.Location = new System.Drawing.Point(4, 4);
+ this.pbxIcon.Margin = new System.Windows.Forms.Padding(4);
this.pbxIcon.Name = "pbxIcon";
- this.pbxIcon.Padding = new System.Windows.Forms.Padding(5, 5, 0, 0);
- this.pbxIcon.Size = new System.Drawing.Size(64, 100);
+ this.pbxIcon.Size = new System.Drawing.Size(59, 103);
this.pbxIcon.SizeMode = System.Windows.Forms.PictureBoxSizeMode.CenterImage;
- this.pbxIcon.TabIndex = 0;
+ this.pbxIcon.TabIndex = 1;
this.pbxIcon.TabStop = false;
//
// kryptonTableLayoutPanel2
@@ -88,77 +89,80 @@ private void InitializeComponent()
this.kryptonTableLayoutPanel2.BackgroundImageLayout = System.Windows.Forms.ImageLayout.None;
this.kryptonTableLayoutPanel2.ColumnCount = 1;
this.kryptonTableLayoutPanel2.ColumnStyles.Add(new System.Windows.Forms.ColumnStyle(System.Windows.Forms.SizeType.Percent, 100F));
- this.kryptonTableLayoutPanel2.Controls.Add(this.kwlHeader, 0, 0);
this.kryptonTableLayoutPanel2.Controls.Add(this.kpbDownloadProgress, 0, 2);
+ this.kryptonTableLayoutPanel2.Controls.Add(this.kwlInformation, 0, 0);
this.kryptonTableLayoutPanel2.Controls.Add(this.kwlSize, 0, 1);
this.kryptonTableLayoutPanel2.Dock = System.Windows.Forms.DockStyle.Fill;
- this.kryptonTableLayoutPanel2.Location = new System.Drawing.Point(73, 3);
+ this.kryptonTableLayoutPanel2.Location = new System.Drawing.Point(70, 3);
this.kryptonTableLayoutPanel2.Name = "kryptonTableLayoutPanel2";
this.kryptonTableLayoutPanel2.RowCount = 3;
- this.kryptonTableLayoutPanel2.RowStyles.Add(new System.Windows.Forms.RowStyle(System.Windows.Forms.SizeType.Percent, 66.66666F));
- this.kryptonTableLayoutPanel2.RowStyles.Add(new System.Windows.Forms.RowStyle(System.Windows.Forms.SizeType.Percent, 33.33333F));
- this.kryptonTableLayoutPanel2.RowStyles.Add(new System.Windows.Forms.RowStyle(System.Windows.Forms.SizeType.Absolute, 20F));
- this.kryptonTableLayoutPanel2.Size = new System.Drawing.Size(411, 100);
- this.kryptonTableLayoutPanel2.TabIndex = 1;
+ this.kryptonTableLayoutPanel2.RowStyles.Add(new System.Windows.Forms.RowStyle(System.Windows.Forms.SizeType.Percent, 100F));
+ this.kryptonTableLayoutPanel2.RowStyles.Add(new System.Windows.Forms.RowStyle());
+ this.kryptonTableLayoutPanel2.RowStyles.Add(new System.Windows.Forms.RowStyle());
+ this.kryptonTableLayoutPanel2.Size = new System.Drawing.Size(340, 105);
+ this.kryptonTableLayoutPanel2.TabIndex = 0;
//
// kpbDownloadProgress
//
this.kpbDownloadProgress.Dock = System.Windows.Forms.DockStyle.Fill;
- this.kpbDownloadProgress.Location = new System.Drawing.Point(3, 82);
+ this.kpbDownloadProgress.Location = new System.Drawing.Point(3, 76);
this.kpbDownloadProgress.Name = "kpbDownloadProgress";
- this.kpbDownloadProgress.Size = new System.Drawing.Size(405, 15);
+ this.kpbDownloadProgress.Size = new System.Drawing.Size(334, 26);
+ this.kpbDownloadProgress.StateCommon.Back.Color1 = System.Drawing.Color.Green;
+ this.kpbDownloadProgress.StateDisabled.Back.ColorStyle = Krypton.Toolkit.PaletteColorStyle.OneNote;
+ this.kpbDownloadProgress.StateNormal.Back.ColorStyle = Krypton.Toolkit.PaletteColorStyle.OneNote;
this.kpbDownloadProgress.TabIndex = 0;
- //
- // kwlHeader
- //
- this.kwlHeader.AutoSize = false;
- this.kwlHeader.Dock = System.Windows.Forms.DockStyle.Fill;
- this.kwlHeader.Font = new System.Drawing.Font("Segoe UI", 12F, System.Drawing.FontStyle.Bold, System.Drawing.GraphicsUnit.Point, ((byte)(0)));
- this.kwlHeader.ForeColor = System.Drawing.Color.FromArgb(((int)(((byte)(30)))), ((int)(((byte)(57)))), ((int)(((byte)(91)))));
- this.kwlHeader.LabelStyle = Krypton.Toolkit.LabelStyle.NormalControl;
- this.kwlHeader.Location = new System.Drawing.Point(3, 0);
- this.kwlHeader.Name = "kwlHeader";
- this.kwlHeader.Size = new System.Drawing.Size(405, 53);
- this.kwlHeader.StateCommon.Font = new System.Drawing.Font("Segoe UI", 12F, System.Drawing.FontStyle.Bold, System.Drawing.GraphicsUnit.Point, ((byte)(0)));
- this.kwlHeader.Text = "kryptonWrapLabel1";
- this.kwlHeader.TextAlign = System.Drawing.ContentAlignment.MiddleLeft;
+ this.kpbDownloadProgress.Text = "0%";
+ this.kpbDownloadProgress.UseValueAsText = true;
+ this.kpbDownloadProgress.Values.Text = "0%";
+ //
+ // kwlInformation
+ //
+ this.kwlInformation.AutoSize = false;
+ this.kwlInformation.Dock = System.Windows.Forms.DockStyle.Fill;
+ this.kwlInformation.Font = new System.Drawing.Font("Segoe UI", 9F);
+ this.kwlInformation.ForeColor = System.Drawing.Color.FromArgb(((int)(((byte)(30)))), ((int)(((byte)(57)))), ((int)(((byte)(91)))));
+ this.kwlInformation.LabelStyle = Krypton.Toolkit.LabelStyle.AlternateControl;
+ this.kwlInformation.Location = new System.Drawing.Point(3, 0);
+ this.kwlInformation.Name = "kwlInformation";
+ this.kwlInformation.Size = new System.Drawing.Size(334, 58);
+ this.kwlInformation.Text = "Downloading update...";
+ this.kwlInformation.TextAlign = System.Drawing.ContentAlignment.MiddleLeft;
//
// kwlSize
//
- this.kwlSize.AutoSize = false;
this.kwlSize.Dock = System.Windows.Forms.DockStyle.Fill;
- this.kwlSize.Font = new System.Drawing.Font("Segoe UI", 11.25F, System.Drawing.FontStyle.Regular, System.Drawing.GraphicsUnit.Point, ((byte)(0)));
+ this.kwlSize.Font = new System.Drawing.Font("Segoe UI", 9F);
this.kwlSize.ForeColor = System.Drawing.Color.FromArgb(((int)(((byte)(30)))), ((int)(((byte)(57)))), ((int)(((byte)(91)))));
- this.kwlSize.LabelStyle = Krypton.Toolkit.LabelStyle.NormalControl;
- this.kwlSize.Location = new System.Drawing.Point(3, 53);
+ this.kwlSize.LabelStyle = Krypton.Toolkit.LabelStyle.AlternateControl;
+ this.kwlSize.Location = new System.Drawing.Point(3, 58);
this.kwlSize.Name = "kwlSize";
- this.kwlSize.Size = new System.Drawing.Size(405, 26);
- this.kwlSize.StateCommon.Font = new System.Drawing.Font("Segoe UI", 11.25F, System.Drawing.FontStyle.Regular, System.Drawing.GraphicsUnit.Point, ((byte)(0)));
- this.kwlSize.Text = "kryptonWrapLabel1";
+ this.kwlSize.Size = new System.Drawing.Size(334, 15);
this.kwlSize.TextAlign = System.Drawing.ContentAlignment.MiddleCenter;
//
// DownloadUpdateDialog
//
this.AutoScaleDimensions = new System.Drawing.SizeF(6F, 13F);
this.AutoScaleMode = System.Windows.Forms.AutoScaleMode.Font;
- this.ClientSize = new System.Drawing.Size(487, 106);
+ this.BackStyle = Krypton.Toolkit.PaletteBackStyle.PanelClient;
+ this.ClientSize = new System.Drawing.Size(413, 111);
this.Controls.Add(this.kryptonPanel1);
- this.FormBorderStyle = System.Windows.Forms.FormBorderStyle.Fixed3D;
+ this.FormBorderStyle = System.Windows.Forms.FormBorderStyle.FixedDialog;
this.Icon = ((System.Drawing.Icon)(resources.GetObject("$this.Icon")));
this.MaximizeBox = false;
this.MinimizeBox = false;
this.Name = "DownloadUpdateDialog";
this.ShowInTaskbar = false;
- this.StartPosition = System.Windows.Forms.FormStartPosition.CenterScreen;
+ this.StartPosition = System.Windows.Forms.FormStartPosition.CenterParent;
this.Text = "Software Update";
this.FormClosing += new System.Windows.Forms.FormClosingEventHandler(this.DownloadUpdateDialog_FormClosing);
this.Load += new System.EventHandler(this.DownloadUpdateDialog_Load);
- this.Controls.SetChildIndex(this.kryptonPanel1, 0);
((System.ComponentModel.ISupportInitialize)(this.kryptonPanel1)).EndInit();
this.kryptonPanel1.ResumeLayout(false);
this.kryptonTableLayoutPanel1.ResumeLayout(false);
((System.ComponentModel.ISupportInitialize)(this.pbxIcon)).EndInit();
this.kryptonTableLayoutPanel2.ResumeLayout(false);
+ this.kryptonTableLayoutPanel2.PerformLayout();
this.ResumeLayout(false);
}
@@ -167,10 +171,10 @@ private void InitializeComponent()
private KryptonPanel kryptonPanel1;
private KryptonTableLayoutPanel kryptonTableLayoutPanel1;
- private PictureBox pbxIcon;
private KryptonTableLayoutPanel kryptonTableLayoutPanel2;
private KryptonProgressBar kpbDownloadProgress;
- private KryptonWrapLabel kwlHeader;
+ private KryptonWrapLabel kwlInformation;
+ private PictureBox pbxIcon;
private KryptonWrapLabel kwlSize;
}
}
\ No newline at end of file
diff --git a/Source/Krypton Toolkit/Krypton.Toolkit.Suite.Extended.Software.Updater/Auto Updater/UX/DownloadUpdateDialog.cs b/Source/Krypton Toolkit/Krypton.Toolkit.Suite.Extended.Software.Updater/Auto Updater/Controls Visuals/DownloadUpdateDialog.cs
similarity index 74%
rename from Source/Krypton Toolkit/Krypton.Toolkit.Suite.Extended.Software.Updater/Auto Updater/UX/DownloadUpdateDialog.cs
rename to Source/Krypton Toolkit/Krypton.Toolkit.Suite.Extended.Software.Updater/Auto Updater/Controls Visuals/DownloadUpdateDialog.cs
index 2bec5b1bf..35521671f 100644
--- a/Source/Krypton Toolkit/Krypton.Toolkit.Suite.Extended.Software.Updater/Auto Updater/UX/DownloadUpdateDialog.cs
+++ b/Source/Krypton Toolkit/Krypton.Toolkit.Suite.Extended.Software.Updater/Auto Updater/Controls Visuals/DownloadUpdateDialog.cs
@@ -1,62 +1,50 @@
-#region License
-
-/*
- * MIT License
- *
- * Copyright (c) 2012 - 2023 RBSoft
- *
- * Permission is hereby granted, free of charge, to any person obtaining a copy
- * of this software and associated documentation files (the "Software"), to deal
- * in the Software without restriction, including without limitation the rights
- * to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
- * copies of the Software, and to permit persons to whom the Software is
- * furnished to do so, subject to the following conditions:
- *
- * The above copyright notice and this permission notice shall be included in all
- * copies or substantial portions of the Software.
- *
- * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
- * IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
- * FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
- * AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
- * LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
- * OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE
- * SOFTWARE.
- */
-
-#endregion
-
-namespace Krypton.Toolkit.Suite.Extended.Software.Updater
+namespace Krypton.Toolkit.Suite.Extended.Software.Updater
{
public partial class DownloadUpdateDialog : KryptonForm
{
#region Instance Fields
- private readonly UpdateInfoEventArgs _args;
+ private readonly UpdateInfoEventArgs _updateInfo;
- private DateTime _startedAt;
+ private DateTime _startTime;
private string _tempFile;
- private MyWebClient? _webClient;
+ private MyWebClient _webClient;
#endregion
+ #region Identity
+
+ /// Initializes a new instance of the class.
+ /// The instance containing the event data.
public DownloadUpdateDialog(UpdateInfoEventArgs args)
{
InitializeComponent();
- _args = args;
+ _updateInfo = args;
+
+ TopMost = AutoUpdater.TopMost;
+
+ if (AutoUpdater.Icon != null)
+ {
+ Icon = Icon.FromHandle(AutoUpdater.Icon.GetHicon());
+ }
- if (AutoUpdater.Mandatory && AutoUpdater.UpdateMode == UpdateMode.ForcedDownload)
+ if (AutoUpdater.Mandatory && AutoUpdater.UpdateMode == Mode.ForcedDownload)
{
ControlBox = false;
}
}
+
+ #endregion
+
+ #region Implementation
+
private void DownloadUpdateDialog_Load(object sender, EventArgs e)
{
- var uri = new Uri(_args.DownloadURL);
+ var uri = new Uri(_updateInfo.DownloadURL);
_webClient = AutoUpdater.GetWebClient(uri, AutoUpdater.BasicAuthDownload);
@@ -73,30 +61,27 @@ private void DownloadUpdateDialog_Load(object sender, EventArgs e)
}
}
- if (_webClient != null)
- {
- _webClient.DownloadProgressChanged += OnDownloadProgressChanged;
+ _webClient.DownloadProgressChanged += OnDownloadProgressChanged;
- _webClient.DownloadFileCompleted += WebClientOnDownloadFileCompleted;
+ _webClient.DownloadFileCompleted += WebClientOnDownloadFileCompleted;
- _webClient.DownloadFileAsync(uri, _tempFile);
- }
+ _webClient.DownloadFileAsync(uri, _tempFile);
}
private void OnDownloadProgressChanged(object sender, DownloadProgressChangedEventArgs e)
{
- if (_startedAt == default)
+ if (_startTime == default)
{
- _startedAt = DateTime.Now;
+ _startTime = DateTime.Now;
}
else
{
- TimeSpan timeSpan = DateTime.Now - _startedAt;
+ TimeSpan timeSpan = DateTime.Now - _startTime;
var totalSeconds = (long)timeSpan.TotalSeconds;
if (totalSeconds > 0)
{
long bytesPerSecond = e.BytesReceived / totalSeconds;
- kwlHeader.Text =
+ kwlInformation.Text =
string.Format(AutoUpdaterLanguageManager.UpdaterStrings.DownloadSpeedMessage, BytesToString(bytesPerSecond));
}
}
@@ -119,19 +104,19 @@ private void WebClientOnDownloadFileCompleted(object sender, AsyncCompletedEvent
throw asyncCompletedEventArgs.Error;
}
- if (_args.CheckSum != null)
+ if (_updateInfo.CheckSum != null)
{
- CompareChecksum(_tempFile, _args.CheckSum);
+ CompareChecksum(_tempFile, _updateInfo.CheckSum);
}
// Try to parse the content disposition header if it exists.
- ContentDisposition? contentDisposition = null;
- if (_webClient != null && !string.IsNullOrWhiteSpace(_webClient.ResponseHeaders?["Content-Disposition"]))
+ ContentDisposition contentDisposition = null;
+ if (!string.IsNullOrWhiteSpace(_webClient.ResponseHeaders?["Content-Disposition"]))
{
try
{
contentDisposition =
- new ContentDisposition(_webClient.ResponseHeaders?["Content-Disposition"]!);
+ new ContentDisposition(_webClient.ResponseHeaders["Content-Disposition"]);
}
catch (FormatException)
{
@@ -140,9 +125,9 @@ private void WebClientOnDownloadFileCompleted(object sender, AsyncCompletedEvent
}
}
- string? fileName = string.IsNullOrEmpty(contentDisposition?.FileName)
- ? Path.GetFileName(_webClient?.ResponseUri.LocalPath)
- : contentDisposition?.FileName;
+ string fileName = string.IsNullOrEmpty(contentDisposition?.FileName)
+ ? Path.GetFileName(_webClient.ResponseUri.LocalPath)
+ : contentDisposition.FileName;
if (string.IsNullOrWhiteSpace(fileName))
{
@@ -164,9 +149,9 @@ private void WebClientOnDownloadFileCompleted(object sender, AsyncCompletedEvent
File.Move(_tempFile, tempPath);
string? installerArgs = null;
- if (!string.IsNullOrEmpty(_args.InstallerArgs))
+ if (!string.IsNullOrEmpty(_updateInfo.InstallerArgs))
{
- installerArgs = _args.InstallerArgs.Replace("%path%",
+ installerArgs = _updateInfo.InstallerArgs.Replace("%path%",
Path.GetDirectoryName(Process.GetCurrentProcess().MainModule?.FileName));
}
@@ -187,7 +172,7 @@ private void WebClientOnDownloadFileCompleted(object sender, AsyncCompletedEvent
File.WriteAllBytes(installerPath, Resources.ZipExtractor1);
string? currentExe = Process.GetCurrentProcess().MainModule?.FileName;
- string? updatedExe = _args.ExecutablePath;
+ string? updatedExe = _updateInfo.ExecutablePath;
string? extractionPath = Path.GetDirectoryName(currentExe);
if (string.IsNullOrWhiteSpace(updatedExe) &&
@@ -210,13 +195,13 @@ private void WebClientOnDownloadFileCompleted(object sender, AsyncCompletedEvent
var arguments = new Collection
{
- "--input",
- tempPath,
- "--output",
- extractionPath,
- "--current-exe",
- currentExe
- };
+ "--input",
+ tempPath,
+ "--output",
+ extractionPath,
+ "--current-exe",
+ currentExe
+ };
if (!string.IsNullOrWhiteSpace(updatedExe))
{
@@ -226,7 +211,7 @@ private void WebClientOnDownloadFileCompleted(object sender, AsyncCompletedEvent
if (AutoUpdater.ClearAppDirectory)
{
- arguments.Add(" --clear");
+ arguments.Add("--clear");
}
string[] args = Environment.GetCommandLineArgs();
@@ -236,7 +221,7 @@ private void WebClientOnDownloadFileCompleted(object sender, AsyncCompletedEvent
arguments.Add(string.Join(" ", args.Skip(1).Select(arg => $"\"{arg}\"")));
}
- processStartInfo.Arguments = Utils.BuildArguments(arguments);
+ processStartInfo.Arguments = Utilities.BuildArguments(arguments);
}
else if (extension.Equals(".msi", StringComparison.OrdinalIgnoreCase))
{
@@ -247,16 +232,16 @@ private void WebClientOnDownloadFileCompleted(object sender, AsyncCompletedEvent
var arguments = new Collection
{
- "/i",
- tempPath
- };
+ "/i",
+ tempPath
+ };
if (!string.IsNullOrEmpty(installerArgs))
{
arguments.Add(installerArgs);
}
- processStartInfo.Arguments = Utils.BuildArguments(arguments);
+ processStartInfo.Arguments = Utilities.BuildArguments(arguments);
}
if (AutoUpdater.RunUpdateAsAdmin)
@@ -332,7 +317,7 @@ private static void CompareChecksum(string fileName, CheckSum checksum)
private void DownloadUpdateDialog_FormClosing(object sender, FormClosingEventArgs e)
{
- if (AutoUpdater.Mandatory && AutoUpdater.UpdateMode == UpdateMode.ForcedDownload)
+ if (AutoUpdater.Mandatory && AutoUpdater.UpdateMode == Mode.ForcedDownload)
{
AutoUpdater.Exit();
return;
@@ -346,5 +331,8 @@ private void DownloadUpdateDialog_FormClosing(object sender, FormClosingEventArg
_webClient.CancelAsync();
DialogResult = DialogResult.Cancel;
}
+
+ #endregion
+
}
-}
+}
\ No newline at end of file
diff --git a/Source/Krypton Toolkit/Krypton.Toolkit.Suite.Extended.Software.Updater/Auto Updater/UX/ReducedUpdateWindow.resx b/Source/Krypton Toolkit/Krypton.Toolkit.Suite.Extended.Software.Updater/Auto Updater/Controls Visuals/DownloadUpdateDialog.resx
similarity index 89%
rename from Source/Krypton Toolkit/Krypton.Toolkit.Suite.Extended.Software.Updater/Auto Updater/UX/ReducedUpdateWindow.resx
rename to Source/Krypton Toolkit/Krypton.Toolkit.Suite.Extended.Software.Updater/Auto Updater/Controls Visuals/DownloadUpdateDialog.resx
index c9a390eae..28dd3a5fb 100644
--- a/Source/Krypton Toolkit/Krypton.Toolkit.Suite.Extended.Software.Updater/Auto Updater/UX/ReducedUpdateWindow.resx
+++ b/Source/Krypton Toolkit/Krypton.Toolkit.Suite.Extended.Software.Updater/Auto Updater/Controls Visuals/DownloadUpdateDialog.resx
@@ -120,20 +120,34 @@
- iVBORw0KGgoAAAANSUhEUgAAArkAAABuCAYAAAAj+gsKAAAAAXNSR0IArs4c6QAAAARnQU1BAACxjwv8
- YQUAAAAJcEhZcwAADsMAAA7DAcdvqGQAAAK8SURBVHhe7drBaQRBDABBp7sxOgeH4TTOnOD8UgJq6lEs
- s0qgEfp6nuf19v3zO19vb29vb29vb2/v6++J3PcPAAAomMjdBgAAcJlNLgAAKc4VAADIEbkAAORM5G4D
- AAC4zCYXAIAU5woAAOSIXAAAciZytwEAAFxmkwsAQIpzBQAAckQuAAA5E7nbAAAALrPJBQAgxbkCAAA5
- IhcAgJyJ3G0AAACX2eQCAJDiXAEAgByRCwBAzkTuNgAAgMtscgEASHGuAABAjsgFACBnIncbAADAZTa5
- AACkOFcAACBH5AIAkDORuw0AAOAym1wAAFKcKwAAkCNyAQDImcjdBgAAcJlNLgAAKc4VAADIEbkAAORM
- 5G4DAAC4zCYXAIAU5woAAOSIXAAAciZytwEAAFxmkwsAQIpzBQAAckQuAAA5E7nbAAAALrPJBQAgxbkC
- AAA5IhcAgJyJ3G0AAACX2eQCAJDiXAEAgByRCwBAzkTuNgAAgMtscgEASHGuAABAjsgFACBnIncbAADA
- ZTa5AACkOFcAACBH5AIAkDORuw0AAOAym1wAAFKcKwAAkCNyAQDImcjdBgAAcJlNLgAAKc4VAADIEbkA
- AORM5G4DAAC4zCYXAIAU5woAAOSIXAAAciZytwEAAFxmkwsAQIpzBQAAckQuAAA5E7nbAAAALrPJBQAg
- xbkCAAA5IhcAgJyJ3G0AAACX2eQCAJDiXAEAgByRCwBAzkTuNgAAgMtscgEASHGuAABAjsgFACBnIncb
- AADAZTa5AACkOFcAACBH5AIAkDORuw0AAOAym1wAAFKcKwAAkCNyAQDImcjdBgAAcJlNLgAAKc4VAADI
- EbkAAORM5G4DAAC4zCYXAIAU5woAAOSIXAAAciZytwEAAFxmkwsAQIpzBQAAcv4j9+Pz09vb29vb29vb
- 2/vu+3n9AVxQuJgcWJuzAAAAAElFTkSuQmCC
+ iVBORw0KGgoAAAANSUhEUgAAAZ0AAABvCAYAAAA38h0EAAAAAXNSR0IArs4c6QAAAARnQU1BAACxjwv8
+ YQUAAAAJcEhZcwAADsMAAA7DAcdvqGQAAAIwSURBVHhe7djBaQNADADBtOsa00PKSBsOFtgvPZV9zWM4
+ DhWwSF+Px+P5/fP7fL1v/v7+/v7+//H/RAcA/pvoAJCYTWcbAMA15zUAMqIDQEp0AEjMprMNAOCa8xoA
+ GdEBICU6ACRm09kGAHDNeQ2AjOgAkBIdABKz6WwDALjmvAZARnQASIkOAInZdLYBAFxzXgMgIzoApEQH
+ gMRsOtsAAK45rwGQER0AUqIDQGI2nW0AANec1wDIiA4AKdEBIDGbzjYAgGvOawBkRAeAlOgAkJhNZxsA
+ wDXnNQAyogNASnQASMymsw0A4JrzGgAZ0QEgJToAJGbT2QYAcM15DYCM6ACQEh0AErPpbAMAuOa8BkBG
+ dABIiQ4Aidl0tgEAXHNeAyAjOgCkRAeAxGw62wAArjmvAZARHQBSogNAYjadbQAA15zXAMiIDgAp0QEg
+ MZvONgCAa85rAGREB4CU6ACQmE1nGwDANec1ADKiA0BKdABIzKazDQDgmvMaABnRASAlOgAkZtPZBgBw
+ zXkNgIzoAJASHQASs+lsAwC45rwGQEZ0AEiJDgCJ2XS2AQBcc14DICM6AKREB4DEbDrbAACuOa8BkBEd
+ AFKiA0BiNp1tAADXnNcAyIgOACnRASAxm842AIBrzmsAZEQHgJToAJCYTWcbAMA15zUAMqIDQEp0AEjM
+ prMNAOCa8xoAGdEBICU6ACRm09kGAHDNeQ2AjOgAkPpE5/W++fv7+/v73/8fzz9RAaDdwg4JIQAAAABJ
+ RU5ErkJggg==
+
+
+
+
+ iVBORw0KGgoAAAANSUhEUgAAAVQAAABpCAYAAABlAdtyAAAAAXNSR0IArs4c6QAAAARnQU1BAACxjwv8
+ YQUAAAAJcEhZcwAADsMAAA7DAcdvqGQAAAJCSURBVHhe7dixbWNREARBJc+olIPCYBoUDgcd2pBx0qxZ
+ RoH4NNsYLN7b4/F4vX88X39+v/j27du3759//xtU/kb57n+A/2FQQwtg8fbdnwD8nAs1tAAWBjW0ABYG
+ NbQAFt5QAY64UEMLYGFQQwtgYVBDC2DhDRXgiAs1tAAWBjW0ABYGNbQAFt5QAY64UEMLYGFQQwtgYVBD
+ C2DhDRXgiAs1tAAWBjW0ABYGNbQAFt5QAY64UEMLYGFQQwtgYVBDC2DhDRXgiAs1tAAWBjW0ABYGNbQA
+ Ft5QAY64UEMLYGFQQwtgYVBDC2DhDRXgiAs1tAAWBjW0ABYGNbQAFt5QAY64UEMLYGFQQwtgYVBDC2Dh
+ DRXgiAs1tAAWBjW0ABYGNbQAFt5QAY64UEMLYGFQQwtgYVBDC2DhDRXgiAs1tAAWBjW0ABYGNbQAFt5Q
+ AY64UEMLYGFQQwtgYVBDC2DhDRXgiAs1tAAWBjW0ABYGNbQAFt5QAY64UEMLYGFQQwtgYVBDC2DhDRXg
+ iAs1tAAWBjW0ABYGNbQAFt5QAY64UEMLYGFQQwtgYVBDC2DhDRXgiAs1tAAWBjW0ABYGNbQAFt5QAY64
+ UEMLYGFQQwtgYVBDC2DhDRXgiAs1tAAWBjW0ABYGNbQAFt5QAY64UEMLYGFQQwtgYVBDC2DhDRXgiAs1
+ tAAWBjW0ABYGNbQAFt5QAY64UEMLYGFQQwtgYVBDC2DhDRXgiAs1tAAWBjW0ABYGNbQAFgYV4IhBDS2A
+ 33u+PgG0zPs9LZD07gAAAABJRU5ErkJggg==
diff --git a/Source/Krypton Toolkit/Krypton.Toolkit.Suite.Extended.Software.Updater/Auto Updater/UX/RemindLaterWindow.Designer.cs b/Source/Krypton Toolkit/Krypton.Toolkit.Suite.Extended.Software.Updater/Auto Updater/Controls Visuals/RemindLaterForm.Designer.cs
similarity index 54%
rename from Source/Krypton Toolkit/Krypton.Toolkit.Suite.Extended.Software.Updater/Auto Updater/UX/RemindLaterWindow.Designer.cs
rename to Source/Krypton Toolkit/Krypton.Toolkit.Suite.Extended.Software.Updater/Auto Updater/Controls Visuals/RemindLaterForm.Designer.cs
index 6f67bf625..06d15413d 100644
--- a/Source/Krypton Toolkit/Krypton.Toolkit.Suite.Extended.Software.Updater/Auto Updater/UX/RemindLaterWindow.Designer.cs
+++ b/Source/Krypton Toolkit/Krypton.Toolkit.Suite.Extended.Software.Updater/Auto Updater/Controls Visuals/RemindLaterForm.Designer.cs
@@ -1,6 +1,6 @@
namespace Krypton.Toolkit.Suite.Extended.Software.Updater
{
- partial class RemindLaterWindow
+ partial class RemindLaterForm
{
///
/// Required designer variable.
@@ -28,12 +28,12 @@ protected override void Dispose(bool disposing)
///
private void InitializeComponent()
{
- System.ComponentModel.ComponentResourceManager resources = new System.ComponentModel.ComponentResourceManager(typeof(RemindLaterWindow));
+ System.ComponentModel.ComponentResourceManager resources = new System.ComponentModel.ComponentResourceManager(typeof(RemindLaterForm));
this.kryptonPanel1 = new Krypton.Toolkit.KryptonPanel();
this.kryptonTableLayoutPanel1 = new Krypton.Toolkit.KryptonTableLayoutPanel();
- this.pictureBox1 = new System.Windows.Forms.PictureBox();
- this.kwlHeader = new Krypton.Toolkit.KryptonWrapLabel();
- this.kwlDescription = new Krypton.Toolkit.KryptonWrapLabel();
+ this.pictureBoxIcon = new System.Windows.Forms.PictureBox();
+ this.klblTitle = new Krypton.Toolkit.KryptonLabel();
+ this.kwlblDescription = new Krypton.Toolkit.KryptonWrapLabel();
this.krbYes = new Krypton.Toolkit.KryptonRadioButton();
this.kcmbRemindLater = new Krypton.Toolkit.KryptonComboBox();
this.krbNo = new Krypton.Toolkit.KryptonRadioButton();
@@ -41,7 +41,7 @@ private void InitializeComponent()
((System.ComponentModel.ISupportInitialize)(this.kryptonPanel1)).BeginInit();
this.kryptonPanel1.SuspendLayout();
this.kryptonTableLayoutPanel1.SuspendLayout();
- ((System.ComponentModel.ISupportInitialize)(this.pictureBox1)).BeginInit();
+ ((System.ComponentModel.ISupportInitialize)(this.pictureBoxIcon)).BeginInit();
((System.ComponentModel.ISupportInitialize)(this.kcmbRemindLater)).BeginInit();
this.SuspendLayout();
//
@@ -51,8 +51,8 @@ private void InitializeComponent()
this.kryptonPanel1.Dock = System.Windows.Forms.DockStyle.Fill;
this.kryptonPanel1.Location = new System.Drawing.Point(0, 0);
this.kryptonPanel1.Name = "kryptonPanel1";
- this.kryptonPanel1.Size = new System.Drawing.Size(596, 208);
- this.kryptonPanel1.TabIndex = 1;
+ this.kryptonPanel1.Size = new System.Drawing.Size(499, 198);
+ this.kryptonPanel1.TabIndex = 0;
//
// kryptonTableLayoutPanel1
//
@@ -60,11 +60,11 @@ private void InitializeComponent()
this.kryptonTableLayoutPanel1.BackgroundImageLayout = System.Windows.Forms.ImageLayout.None;
this.kryptonTableLayoutPanel1.ColumnCount = 3;
this.kryptonTableLayoutPanel1.ColumnStyles.Add(new System.Windows.Forms.ColumnStyle());
- this.kryptonTableLayoutPanel1.ColumnStyles.Add(new System.Windows.Forms.ColumnStyle(System.Windows.Forms.SizeType.Percent, 50F));
- this.kryptonTableLayoutPanel1.ColumnStyles.Add(new System.Windows.Forms.ColumnStyle(System.Windows.Forms.SizeType.Percent, 50F));
- this.kryptonTableLayoutPanel1.Controls.Add(this.pictureBox1, 0, 0);
- this.kryptonTableLayoutPanel1.Controls.Add(this.kwlHeader, 1, 0);
- this.kryptonTableLayoutPanel1.Controls.Add(this.kwlDescription, 1, 1);
+ this.kryptonTableLayoutPanel1.ColumnStyles.Add(new System.Windows.Forms.ColumnStyle(System.Windows.Forms.SizeType.Percent, 100F));
+ this.kryptonTableLayoutPanel1.ColumnStyles.Add(new System.Windows.Forms.ColumnStyle());
+ this.kryptonTableLayoutPanel1.Controls.Add(this.pictureBoxIcon, 0, 0);
+ this.kryptonTableLayoutPanel1.Controls.Add(this.klblTitle, 1, 0);
+ this.kryptonTableLayoutPanel1.Controls.Add(this.kwlblDescription, 1, 1);
this.kryptonTableLayoutPanel1.Controls.Add(this.krbYes, 1, 2);
this.kryptonTableLayoutPanel1.Controls.Add(this.kcmbRemindLater, 2, 2);
this.kryptonTableLayoutPanel1.Controls.Add(this.krbNo, 1, 3);
@@ -74,125 +74,122 @@ private void InitializeComponent()
this.kryptonTableLayoutPanel1.Name = "kryptonTableLayoutPanel1";
this.kryptonTableLayoutPanel1.RowCount = 5;
this.kryptonTableLayoutPanel1.RowStyles.Add(new System.Windows.Forms.RowStyle());
- this.kryptonTableLayoutPanel1.RowStyles.Add(new System.Windows.Forms.RowStyle(System.Windows.Forms.SizeType.Percent, 100F));
- this.kryptonTableLayoutPanel1.RowStyles.Add(new System.Windows.Forms.RowStyle());
- this.kryptonTableLayoutPanel1.RowStyles.Add(new System.Windows.Forms.RowStyle());
this.kryptonTableLayoutPanel1.RowStyles.Add(new System.Windows.Forms.RowStyle());
- this.kryptonTableLayoutPanel1.Size = new System.Drawing.Size(596, 208);
- this.kryptonTableLayoutPanel1.TabIndex = 0;
- //
- // pictureBox1
- //
- this.pictureBox1.BackColor = System.Drawing.Color.Transparent;
- this.pictureBox1.Image = global::Krypton.Toolkit.Suite.Extended.Software.Updater.Properties.Resources.clock_go1;
- this.pictureBox1.Location = new System.Drawing.Point(3, 3);
- this.pictureBox1.Name = "pictureBox1";
- this.pictureBox1.Padding = new System.Windows.Forms.Padding(5, 5, 0, 0);
- this.kryptonTableLayoutPanel1.SetRowSpan(this.pictureBox1, 2);
- this.pictureBox1.Size = new System.Drawing.Size(80, 90);
- this.pictureBox1.SizeMode = System.Windows.Forms.PictureBoxSizeMode.CenterImage;
- this.pictureBox1.TabIndex = 0;
- this.pictureBox1.TabStop = false;
- //
- // kwlHeader
- //
- this.kwlHeader.AutoSize = false;
- this.kryptonTableLayoutPanel1.SetColumnSpan(this.kwlHeader, 2);
- this.kwlHeader.Dock = System.Windows.Forms.DockStyle.Fill;
- this.kwlHeader.Font = new System.Drawing.Font("Segoe UI", 12F, System.Drawing.FontStyle.Bold, System.Drawing.GraphicsUnit.Point, ((byte)(0)));
- this.kwlHeader.ForeColor = System.Drawing.Color.FromArgb(((int)(((byte)(30)))), ((int)(((byte)(57)))), ((int)(((byte)(91)))));
- this.kwlHeader.LabelStyle = Krypton.Toolkit.LabelStyle.NormalControl;
- this.kwlHeader.Location = new System.Drawing.Point(89, 0);
- this.kwlHeader.Name = "kwlHeader";
- this.kwlHeader.Size = new System.Drawing.Size(504, 23);
- this.kwlHeader.StateCommon.Font = new System.Drawing.Font("Segoe UI", 12F, System.Drawing.FontStyle.Bold, System.Drawing.GraphicsUnit.Point, ((byte)(0)));
- this.kwlHeader.Text = "Do you want to download updates later?";
- //
- // kwlDescription
- //
- this.kwlDescription.AutoSize = false;
- this.kryptonTableLayoutPanel1.SetColumnSpan(this.kwlDescription, 2);
- this.kwlDescription.Dock = System.Windows.Forms.DockStyle.Fill;
- this.kwlDescription.Font = new System.Drawing.Font("Segoe UI", 11.25F, System.Drawing.FontStyle.Regular, System.Drawing.GraphicsUnit.Point, ((byte)(0)));
- this.kwlDescription.ForeColor = System.Drawing.Color.FromArgb(((int)(((byte)(30)))), ((int)(((byte)(57)))), ((int)(((byte)(91)))));
- this.kwlDescription.LabelStyle = Krypton.Toolkit.LabelStyle.NormalControl;
- this.kwlDescription.Location = new System.Drawing.Point(89, 23);
- this.kwlDescription.Name = "kwlDescription";
- this.kwlDescription.Size = new System.Drawing.Size(504, 93);
- this.kwlDescription.StateCommon.Font = new System.Drawing.Font("Segoe UI", 11.25F, System.Drawing.FontStyle.Regular, System.Drawing.GraphicsUnit.Point, ((byte)(0)));
- this.kwlDescription.Text = "You should download updates now. This only takes few minutes depending on your in" +
- "ternet connection and ensures you have latest version of the application.";
- this.kwlDescription.TextAlign = System.Drawing.ContentAlignment.MiddleLeft;
+ this.kryptonTableLayoutPanel1.RowStyles.Add(new System.Windows.Forms.RowStyle(System.Windows.Forms.SizeType.Percent, 33.33333F));
+ this.kryptonTableLayoutPanel1.RowStyles.Add(new System.Windows.Forms.RowStyle(System.Windows.Forms.SizeType.Percent, 33.33333F));
+ this.kryptonTableLayoutPanel1.RowStyles.Add(new System.Windows.Forms.RowStyle(System.Windows.Forms.SizeType.Percent, 33.33333F));
+ this.kryptonTableLayoutPanel1.Size = new System.Drawing.Size(499, 198);
+ this.kryptonTableLayoutPanel1.TabIndex = 1;
+ //
+ // pictureBoxIcon
+ //
+ this.pictureBoxIcon.BackColor = System.Drawing.Color.Transparent;
+ this.pictureBoxIcon.Dock = System.Windows.Forms.DockStyle.Fill;
+ this.pictureBoxIcon.Image = global::Krypton.Toolkit.Suite.Extended.Software.Updater.Properties.Resources.clock_go_32;
+ this.pictureBoxIcon.ImeMode = System.Windows.Forms.ImeMode.NoControl;
+ this.pictureBoxIcon.Location = new System.Drawing.Point(3, 3);
+ this.pictureBoxIcon.Name = "pictureBoxIcon";
+ this.kryptonTableLayoutPanel1.SetRowSpan(this.pictureBoxIcon, 2);
+ this.pictureBoxIcon.Size = new System.Drawing.Size(79, 90);
+ this.pictureBoxIcon.SizeMode = System.Windows.Forms.PictureBoxSizeMode.CenterImage;
+ this.pictureBoxIcon.TabIndex = 2;
+ this.pictureBoxIcon.TabStop = false;
+ //
+ // klblTitle
+ //
+ this.klblTitle.AutoSize = false;
+ this.kryptonTableLayoutPanel1.SetColumnSpan(this.klblTitle, 2);
+ this.klblTitle.Dock = System.Windows.Forms.DockStyle.Fill;
+ this.klblTitle.LabelStyle = Krypton.Toolkit.LabelStyle.TitlePanel;
+ this.klblTitle.Location = new System.Drawing.Point(88, 3);
+ this.klblTitle.Name = "klblTitle";
+ this.klblTitle.Size = new System.Drawing.Size(408, 25);
+ this.klblTitle.TabIndex = 3;
+ this.klblTitle.Values.Text = "kryptonLabel1";
+ //
+ // kwlblDescription
+ //
+ this.kwlblDescription.AutoSize = false;
+ this.kryptonTableLayoutPanel1.SetColumnSpan(this.kwlblDescription, 2);
+ this.kwlblDescription.Dock = System.Windows.Forms.DockStyle.Fill;
+ this.kwlblDescription.Font = new System.Drawing.Font("Segoe UI", 9F);
+ this.kwlblDescription.ForeColor = System.Drawing.Color.FromArgb(((int)(((byte)(30)))), ((int)(((byte)(57)))), ((int)(((byte)(91)))));
+ this.kwlblDescription.LabelStyle = Krypton.Toolkit.LabelStyle.AlternateControl;
+ this.kwlblDescription.Location = new System.Drawing.Point(88, 31);
+ this.kwlblDescription.Name = "kwlblDescription";
+ this.kwlblDescription.Size = new System.Drawing.Size(408, 65);
+ this.kwlblDescription.Text = "kryptonWrapLabel1";
+ this.kwlblDescription.TextAlign = System.Drawing.ContentAlignment.MiddleLeft;
//
// krbYes
//
this.krbYes.Checked = true;
- this.krbYes.Location = new System.Drawing.Point(89, 119);
+ this.krbYes.Dock = System.Windows.Forms.DockStyle.Fill;
+ this.krbYes.Location = new System.Drawing.Point(88, 99);
this.krbYes.Name = "krbYes";
- this.krbYes.Size = new System.Drawing.Size(218, 24);
- this.krbYes.StateCommon.ShortText.Font = new System.Drawing.Font("Segoe UI", 11.25F, System.Drawing.FontStyle.Regular, System.Drawing.GraphicsUnit.Point, ((byte)(0)));
- this.krbYes.TabIndex = 3;
- this.krbYes.Values.Text = "Yes, please remind me later : ";
+ this.krbYes.Size = new System.Drawing.Size(281, 28);
+ this.krbYes.TabIndex = 5;
+ this.krbYes.Values.Text = "kryptonRadioButton1";
this.krbYes.CheckedChanged += new System.EventHandler(this.krbYes_CheckedChanged);
//
// kcmbRemindLater
//
this.kcmbRemindLater.Dock = System.Windows.Forms.DockStyle.Fill;
this.kcmbRemindLater.DropDownStyle = System.Windows.Forms.ComboBoxStyle.DropDownList;
- this.kcmbRemindLater.DropDownWidth = 249;
+ this.kcmbRemindLater.DropDownWidth = 121;
this.kcmbRemindLater.IntegralHeight = false;
- this.kcmbRemindLater.Location = new System.Drawing.Point(344, 119);
+ this.kcmbRemindLater.Location = new System.Drawing.Point(375, 99);
this.kcmbRemindLater.Name = "kcmbRemindLater";
- this.kcmbRemindLater.Size = new System.Drawing.Size(249, 25);
- this.kcmbRemindLater.StateCommon.ComboBox.Content.Font = new System.Drawing.Font("Segoe UI", 11.25F, System.Drawing.FontStyle.Regular, System.Drawing.GraphicsUnit.Point, ((byte)(0)));
+ this.kcmbRemindLater.Size = new System.Drawing.Size(121, 21);
this.kcmbRemindLater.StateCommon.ComboBox.Content.TextH = Krypton.Toolkit.PaletteRelativeAlign.Near;
- this.kcmbRemindLater.TabIndex = 4;
+ this.kcmbRemindLater.TabIndex = 6;
//
// krbNo
//
this.kryptonTableLayoutPanel1.SetColumnSpan(this.krbNo, 2);
this.krbNo.Dock = System.Windows.Forms.DockStyle.Fill;
- this.krbNo.Location = new System.Drawing.Point(89, 150);
+ this.krbNo.LabelStyle = Krypton.Toolkit.LabelStyle.BoldPanel;
+ this.krbNo.Location = new System.Drawing.Point(88, 133);
this.krbNo.Name = "krbNo";
- this.krbNo.Size = new System.Drawing.Size(504, 24);
- this.krbNo.StateCommon.ShortText.Font = new System.Drawing.Font("Segoe UI", 11.25F, System.Drawing.FontStyle.Bold, System.Drawing.GraphicsUnit.Point, ((byte)(0)));
- this.krbNo.TabIndex = 5;
- this.krbNo.Values.Text = "No, download updates now (recommended)";
+ this.krbNo.Size = new System.Drawing.Size(408, 28);
+ this.krbNo.TabIndex = 7;
+ this.krbNo.Values.Text = "kryptonRadioButton2";
//
// kbtnOk
//
- this.kbtnOk.DialogResult = System.Windows.Forms.DialogResult.OK;
- this.kbtnOk.Dock = System.Windows.Forms.DockStyle.Fill;
- this.kbtnOk.Location = new System.Drawing.Point(344, 180);
+ this.kbtnOk.Anchor = ((System.Windows.Forms.AnchorStyles)(((System.Windows.Forms.AnchorStyles.Top | System.Windows.Forms.AnchorStyles.Bottom)
+ | System.Windows.Forms.AnchorStyles.Right)));
+ this.kbtnOk.AutoSize = true;
+ this.kbtnOk.AutoSizeMode = System.Windows.Forms.AutoSizeMode.GrowAndShrink;
+ this.kbtnOk.Location = new System.Drawing.Point(385, 167);
this.kbtnOk.Name = "kbtnOk";
- this.kbtnOk.Size = new System.Drawing.Size(249, 25);
- this.kbtnOk.StateCommon.Content.ShortText.Font = new System.Drawing.Font("Segoe UI", 11.25F, System.Drawing.FontStyle.Regular, System.Drawing.GraphicsUnit.Point, ((byte)(0)));
- this.kbtnOk.TabIndex = 6;
+ this.kbtnOk.Size = new System.Drawing.Size(111, 28);
+ this.kbtnOk.TabIndex = 8;
this.kbtnOk.Values.Image = global::Krypton.Toolkit.Suite.Extended.Software.Updater.Properties.Resources.clock_go;
- this.kbtnOk.Values.Text = "Ok";
+ this.kbtnOk.Values.Text = "kryptonButton1";
this.kbtnOk.Click += new System.EventHandler(this.kbtnOk_Click);
//
- // RemindLaterWindow
+ // RemindLaterForm
//
+ this.AcceptButton = this.kbtnOk;
this.AutoScaleDimensions = new System.Drawing.SizeF(6F, 13F);
this.AutoScaleMode = System.Windows.Forms.AutoScaleMode.Font;
- this.ClientSize = new System.Drawing.Size(596, 208);
+ this.ClientSize = new System.Drawing.Size(499, 198);
this.Controls.Add(this.kryptonPanel1);
- this.FormBorderStyle = System.Windows.Forms.FormBorderStyle.Fixed3D;
+ this.FormBorderStyle = System.Windows.Forms.FormBorderStyle.FixedDialog;
this.MaximizeBox = false;
this.MinimizeBox = false;
- this.Name = "RemindLaterWindow";
+ this.Name = "RemindLaterForm";
this.ShowIcon = false;
this.ShowInTaskbar = false;
this.StartPosition = System.Windows.Forms.FormStartPosition.CenterParent;
- this.Text = "Remind me later to update";
- this.Load += new System.EventHandler(this.RemindLaterWindow_Load);
- this.Controls.SetChildIndex(this.kryptonPanel1, 0);
+ this.Text = "Remind me later for update";
+ this.Load += new System.EventHandler(this.RemindLaterForm_Load);
((System.ComponentModel.ISupportInitialize)(this.kryptonPanel1)).EndInit();
this.kryptonPanel1.ResumeLayout(false);
this.kryptonTableLayoutPanel1.ResumeLayout(false);
this.kryptonTableLayoutPanel1.PerformLayout();
- ((System.ComponentModel.ISupportInitialize)(this.pictureBox1)).EndInit();
+ ((System.ComponentModel.ISupportInitialize)(this.pictureBoxIcon)).EndInit();
((System.ComponentModel.ISupportInitialize)(this.kcmbRemindLater)).EndInit();
this.ResumeLayout(false);
@@ -202,9 +199,9 @@ private void InitializeComponent()
private KryptonPanel kryptonPanel1;
private KryptonTableLayoutPanel kryptonTableLayoutPanel1;
- private PictureBox pictureBox1;
- private KryptonWrapLabel kwlHeader;
- private KryptonWrapLabel kwlDescription;
+ private PictureBox pictureBoxIcon;
+ private KryptonLabel klblTitle;
+ private KryptonWrapLabel kwlblDescription;
private KryptonRadioButton krbYes;
private KryptonComboBox kcmbRemindLater;
private KryptonRadioButton krbNo;
diff --git a/Source/Krypton Toolkit/Krypton.Toolkit.Suite.Extended.Software.Updater/Auto Updater/UX/RemindLaterWindow.cs b/Source/Krypton Toolkit/Krypton.Toolkit.Suite.Extended.Software.Updater/Auto Updater/Controls Visuals/RemindLaterForm.cs
similarity index 62%
rename from Source/Krypton Toolkit/Krypton.Toolkit.Suite.Extended.Software.Updater/Auto Updater/UX/RemindLaterWindow.cs
rename to Source/Krypton Toolkit/Krypton.Toolkit.Suite.Extended.Software.Updater/Auto Updater/Controls Visuals/RemindLaterForm.cs
index 84f27132e..bf32d3959 100644
--- a/Source/Krypton Toolkit/Krypton.Toolkit.Suite.Extended.Software.Updater/Auto Updater/UX/RemindLaterWindow.cs
+++ b/Source/Krypton Toolkit/Krypton.Toolkit.Suite.Extended.Software.Updater/Auto Updater/Controls Visuals/RemindLaterForm.cs
@@ -1,34 +1,6 @@
-#region License
-
-/*
- * MIT License
- *
- * Copyright (c) 2012 - 2023 RBSoft
- *
- * Permission is hereby granted, free of charge, to any person obtaining a copy
- * of this software and associated documentation files (the "Software"), to deal
- * in the Software without restriction, including without limitation the rights
- * to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
- * copies of the Software, and to permit persons to whom the Software is
- * furnished to do so, subject to the following conditions:
- *
- * The above copyright notice and this permission notice shall be included in all
- * copies or substantial portions of the Software.
- *
- * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
- * IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
- * FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
- * AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
- * LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
- * OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE
- * SOFTWARE.
- */
-
-#endregion
-
-namespace Krypton.Toolkit.Suite.Extended.Software.Updater
+namespace Krypton.Toolkit.Suite.Extended.Software.Updater
{
- public partial class RemindLaterWindow : KryptonForm
+ public partial class RemindLaterForm : KryptonForm
{
#region Public
@@ -38,25 +10,46 @@ public partial class RemindLaterWindow : KryptonForm
#endregion
- #region Identity
-
- public RemindLaterWindow()
+ public RemindLaterForm()
{
InitializeComponent();
- SetupRemindLaterComboBox();
+ TopMost = AutoUpdater.TopMost;
SetupUI();
}
- #endregion
+ private void SetupUI()
+ {
+ klblTitle.Text = AutoUpdaterLanguageManager.LaterWindowStrings.HeaderText;
- #region Implementation
+ kwlblDescription.Text = AutoUpdaterLanguageManager.LaterWindowStrings.Description;
+
+ Text = AutoUpdaterLanguageManager.LaterWindowStrings.WindowTitle;
+
+ krbNo.Text = AutoUpdaterLanguageManager.LaterWindowStrings.NoText;
+
+ krbYes.Text = AutoUpdaterLanguageManager.LaterWindowStrings.YesText;
- private void RemindLaterWindow_Load(object sender, EventArgs e)
- {
kbtnOk.Text = KryptonLanguageManager.GeneralToolkitStrings.OK;
+ kcmbRemindLater.Items.Add(AutoUpdaterLanguageManager.TimingStrings.ThirtyMinutes);
+
+ kcmbRemindLater.Items.Add(AutoUpdaterLanguageManager.TimingStrings.TwelveHours);
+
+ kcmbRemindLater.Items.Add(AutoUpdaterLanguageManager.TimingStrings.OneDay);
+
+ kcmbRemindLater.Items.Add(AutoUpdaterLanguageManager.TimingStrings.TwoDays);
+
+ kcmbRemindLater.Items.Add(AutoUpdaterLanguageManager.TimingStrings.FourDays);
+
+ kcmbRemindLater.Items.Add(AutoUpdaterLanguageManager.TimingStrings.EightDays);
+
+ kcmbRemindLater.Items.Add(AutoUpdaterLanguageManager.TimingStrings.TenDays);
+ }
+
+ private void RemindLaterForm_Load(object sender, EventArgs e)
+ {
kcmbRemindLater.SelectedIndex = 0;
krbYes.Checked = true;
@@ -106,41 +99,6 @@ private void kbtnOk_Click(object sender, EventArgs e)
}
}
- private void krbYes_CheckedChanged(object sender, EventArgs e)
- {
- kcmbRemindLater.Enabled = krbYes.Checked;
- }
-
- private void SetupRemindLaterComboBox()
- {
- kcmbRemindLater.Items.Add(AutoUpdaterLanguageManager.TimingStrings.ThirtyMinutes);
-
- kcmbRemindLater.Items.Add(AutoUpdaterLanguageManager.TimingStrings.TwelveHours);
-
- kcmbRemindLater.Items.Add(AutoUpdaterLanguageManager.TimingStrings.OneDay);
-
- kcmbRemindLater.Items.Add(AutoUpdaterLanguageManager.TimingStrings.TwoDays);
-
- kcmbRemindLater.Items.Add(AutoUpdaterLanguageManager.TimingStrings.FourDays);
-
- kcmbRemindLater.Items.Add(AutoUpdaterLanguageManager.TimingStrings.EightDays);
-
- kcmbRemindLater.Items.Add(AutoUpdaterLanguageManager.TimingStrings.TenDays);
- }
-
- private void SetupUI()
- {
- Text = AutoUpdaterLanguageManager.LaterWindowStrings.WindowTitle;
-
- kwlHeader.Text = AutoUpdaterLanguageManager.LaterWindowStrings.HeaderText;
-
- kwlDescription.Text = AutoUpdaterLanguageManager.LaterWindowStrings.Description;
-
- krbYes.Text = AutoUpdaterLanguageManager.LaterWindowStrings.YesText;
-
- krbNo.Text = AutoUpdaterLanguageManager.LaterWindowStrings.NoText;
- }
-
- #endregion
+ private void krbYes_CheckedChanged(object sender, EventArgs e) => kcmbRemindLater.Enabled = krbYes.Checked;
}
}
diff --git a/Source/Krypton Toolkit/Krypton.Toolkit.Suite.Extended.Software.Updater/Auto Updater/UX/RemindLaterWindow.resx b/Source/Krypton Toolkit/Krypton.Toolkit.Suite.Extended.Software.Updater/Auto Updater/Controls Visuals/RemindLaterForm.resx
similarity index 76%
rename from Source/Krypton Toolkit/Krypton.Toolkit.Suite.Extended.Software.Updater/Auto Updater/UX/RemindLaterWindow.resx
rename to Source/Krypton Toolkit/Krypton.Toolkit.Suite.Extended.Software.Updater/Auto Updater/Controls Visuals/RemindLaterForm.resx
index 66177281d..20b7e21d8 100644
--- a/Source/Krypton Toolkit/Krypton.Toolkit.Suite.Extended.Software.Updater/Auto Updater/UX/RemindLaterWindow.resx
+++ b/Source/Krypton Toolkit/Krypton.Toolkit.Suite.Extended.Software.Updater/Auto Updater/Controls Visuals/RemindLaterForm.resx
@@ -120,28 +120,25 @@
- iVBORw0KGgoAAAANSUhEUgAAAlQAAADQCAYAAADBJv/OAAAAAXNSR0IArs4c6QAAAARnQU1BAACxjwv8
- YQUAAAAJcEhZcwAADsMAAA7DAcdvqGQAAASISURBVHhe7djBSURREERR050YzcEwTGPEhhGEXpRWL8/i
- 8Hm/Eyju2/vH5/PxePzw9vb29vb29vb+2/vt9RMAgP8xqAAACgoVAEBpBtV2AAAgo1ABABwwqAAACgoV
- AEBpBtV2AAAgo1ABABwwqAAACgoVAEBpBtV2AAAgo1ABABwwqAAACgoVAEBpBtV2AAAgo1ABABwwqAAA
- CgoVAEBpBtV2AAAgo1ABABwwqAAACgoVAEBpBtV2AAAgo1ABABwwqAAACgoVAEBpBtV2AAAgo1ABABww
- qAAACgoVAEBpBtV2AAAgo1ABABwwqAAACgoVAEBpBtV2AAAgo1ABABwwqAAACgoVAEBpBtV2AAAgo1AB
- ABwwqAAACgoVAEBpBtV2AAAgo1ABABwwqAAACgoVAEBpBtV2AAAgo1ABABwwqAAACgoVAEBpBtV2AAAg
- o1ABABwwqAAACgoVAEBpBtV2AAAgo1ABABwwqAAACgoVAEBpBtV2AAAgo1ABABwwqAAACgoVAEBpBtV2
- AAAgo1ABABwwqAAACgoVAEBpBtV2AAAgo1ABABwwqAAACgoVAEBpBtV2AAAgo1ABABwwqAAACgoVAEBp
- BtV2AAAgo1ABABwwqAAACgoVAEBpBtV2AAAgo1ABABwwqAAACgoVAEBpBtV2AAAgo1ABABwwqAAACgoV
- AEBpBtV2AAAgo1ABABwwqAAACgoVAEBpBtV2AAAgo1ABABwwqAAACgoVAEBpBtV2AAAgo1ABABwwqAAA
- CgoVAEBpBtV2AAAgo1ABABwwqAAACgoVAEBpBtV2AAAgo1ABABwwqAAACgoVAEBpBtV2AAAgo1ABABww
- qAAACgoVAEBpBtV2AAAgo1ABABwwqAAACgoVAEBpBtV2AAAgo1ABABwwqAAACgoVAEBpBtV2AAAgo1AB
- ABwwqAAACgoVAEBpBtV2AAAgo1ABABwwqAAACgoVAEBpBtV2AAAgo1ABABwwqAAACgoVAEBpBtV2AAAg
- o1ABABwwqAAACgoVAEBpBtV2AAAgo1ABABwwqAAACgoVAEBpBtV2AAAgo1ABABwwqAAACgoVAEBpBtV2
- AAAgo1ABABwwqAAACgoVAEBpBtV2AAAgo1ABABwwqAAACgoVAEBpBtV2AAAgo1ABABwwqAAACgoVAEBp
- BtV2AAAgo1ABABwwqAAACgoVAEBpBtV2AAAgo1ABABwwqAAACgoVAEBpBtV2AAAgo1ABABwwqAAACgoV
- AEBpBtV2AAAgo1ABABwwqAAACgoVAEBpBtV2AAAgo1ABABwwqAAACgoVAEBpBtV2AAAgo1ABABwwqAAA
- CgoVAEBpBtV2AAAgo1ABABwwqAAACgoVAEBpBtV2AAAgo1ABABwwqAAACgoVAEBpBtV2AAAgo1ABABww
- qAAACgoVAEBpBtV2AAAgo1ABABwwqAAACgoVAEBpBtV2AAAgo1ABABwwqAAACgoVAEBpBtV2AAAgo1AB
- ABwwqAAACgoVAEBpBtV2AAAgo1ABABwwqAAACr8K1ff3xdvb29vb29vbO30/nl9MNY0eA5gk7gAAAABJ
- RU5ErkJggg==
+ iVBORw0KGgoAAAANSUhEUgAAAfMAAADGCAYAAADGz2nhAAAABGdBTUEAALGPC/xhBQAAAAlwSFlzAAAO
+ wgAADsIBFShKgAAABAJJREFUeF7t2EFtBEEMAMHQXYzhEBihcdFays8E2qpH6W7WAFr21/M8n9f3z+/8
+ ent7e3t7e7feE/P3DwDQ83b8axsAAA0Tc5s5AHSJOQAcIOYAEDab+TYAABqc2QEgTswB4AAxB4Cw2cy3
+ AQDQ4MwOAHFiDgAHiDkAhM1mvg0AgAZndgCIE3MAOEDMASBsNvNtAAA0OLMDQJyYA8ABYg4AYbOZbwMA
+ oMGZHQDixBwADhBzAAibzXwbAAANzuwAECfmAHCAmANA2Gzm2wAAaHBmB4A4MQeAA8QcAMJmM98GAECD
+ MzsAxIk5ABwg5gAQNpv5NgAAGpzZASBOzAHgADEHgLDZzLcBANDgzA4AcWIOAAeIOQCEzWa+DQCABmd2
+ AIgTcwA4QMwBIGw2820AADQ4swNAnJgDwAFiDgBhs5lvAwCgwZkdAOLEHAAOEHMACJvNfBsAAA3O7AAQ
+ J+YAcICYA0DYbObbAABocGYHgDgxB4ADxBwAwmYz3wYAQIMzOwDEiTkAHCDmABA2m/k2AAAanNkBIE7M
+ AeAAMQeAsNnMtwEA0ODMDgBxYg4AB4g5AITNZr4NAIAGZ3YAiBNzADhAzAEgbDbzbQAANDizA0CcmAPA
+ AWIOAGGzmW8DAKDBmR0A4sQcAA4QcwAIm818GwAADc7sABAn5gBwgJgDQNhs5tsAAGhwZgeAODEHgAPE
+ HADCZjPfBgBAgzM7AMSJOQAcIOYAEDab+TYAABqc2QEgTswB4AAxB4Cw2cy3AQDQ4MwOAHFiDgAHiDkA
+ hM1mvg0AgAZndgCIE3MAOEDMASBsNvNtAAA0OLMDQJyYA8ABYg4AYbOZbwMAoMGZHQDixBwADhBzAAib
+ zXwbAAANzuwAECfmAHCAmANA2Gzm2wAAaHBmB4A4MQeAA8QcAMJmM98GAECDMzsAxIk5ABwg5gAQNpv5
+ NgAAGpzZASBOzAHgADEHgLDZzLcBANDgzA4AcWIOAAeIOQCEzWa+DQCABmd2AIgTcwA4QMwBIGw2820A
+ ADQ4swNAnJgDwAFiDgBhs5lvAwCgwZkdAOLEHAAOEHMACJvNfBsAAA3O7AAQJ+YAcICYA0DYbObbAABo
+ cGYHgDgxB4ADxBwAwmYz3wYAQIMzOwDEiTkAHCDmABA2m/k2AAAanNkBIE7MAeAAMQeAsNnMtwEA0ODM
+ DgBxYg4AB4g5AITNZr4NAIAGZ3YAiBNzADhAzAEgbDbzbQAANDizA0CcmAPAAWIOAGGzmW8DAKDBmR0A
+ 4sQcAA4QcwAIm818GwAADc7sABAn5gBwgJgDQNhs5tsAAGhwZgeAODEHgAPEHADCZjPfBgBAgzM7AMSJ
+ OQAcMDH/937w9vb29vb2Lr2fzx+xTxJqXfTgFgAAAABJRU5ErkJggg==
\ No newline at end of file
diff --git a/Source/Krypton Toolkit/Krypton.Toolkit.Suite.Extended.Software.Updater/Auto Updater/Controls Visuals/UpdateDialog.Designer.cs b/Source/Krypton Toolkit/Krypton.Toolkit.Suite.Extended.Software.Updater/Auto Updater/Controls Visuals/UpdateDialog.Designer.cs
new file mode 100644
index 000000000..582e8c2f2
--- /dev/null
+++ b/Source/Krypton Toolkit/Krypton.Toolkit.Suite.Extended.Software.Updater/Auto Updater/Controls Visuals/UpdateDialog.Designer.cs
@@ -0,0 +1,255 @@
+namespace Krypton.Toolkit.Suite.Extended.Software.Updater
+{
+ partial class UpdateDialog
+ {
+ ///
+ /// 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(UpdateDialog));
+ this.kryptonPanel1 = new Krypton.Toolkit.KryptonPanel();
+ this.kryptonTableLayoutPanel1 = new Krypton.Toolkit.KryptonTableLayoutPanel();
+ this.pictureBoxIcon = new System.Windows.Forms.PictureBox();
+ this.klblTitle = new Krypton.Toolkit.KryptonLabel();
+ this.klblDescription = new Krypton.Toolkit.KryptonLabel();
+ this.klblReleaseNotes = new Krypton.Toolkit.KryptonLabel();
+ this.kbtnSkip = new Krypton.Toolkit.KryptonButton();
+ this.kbtnRemind = new Krypton.Toolkit.KryptonButton();
+ this.kbtnUpdate = new Krypton.Toolkit.KryptonButton();
+ this.kryptonPanel2 = new Krypton.Toolkit.KryptonPanel();
+ this.wvChangelog = new Microsoft.Web.WebView2.WinForms.WebView2();
+ this.kwbChangelog = new Krypton.Toolkit.KryptonWebBrowser();
+ ((System.ComponentModel.ISupportInitialize)(this.kryptonPanel1)).BeginInit();
+ this.kryptonPanel1.SuspendLayout();
+ this.kryptonTableLayoutPanel1.SuspendLayout();
+ ((System.ComponentModel.ISupportInitialize)(this.pictureBoxIcon)).BeginInit();
+ ((System.ComponentModel.ISupportInitialize)(this.kryptonPanel2)).BeginInit();
+ this.kryptonPanel2.SuspendLayout();
+ ((System.ComponentModel.ISupportInitialize)(this.wvChangelog)).BeginInit();
+ this.SuspendLayout();
+ //
+ // kryptonPanel1
+ //
+ this.kryptonPanel1.Controls.Add(this.kryptonTableLayoutPanel1);
+ this.kryptonPanel1.Dock = System.Windows.Forms.DockStyle.Fill;
+ this.kryptonPanel1.Location = new System.Drawing.Point(0, 0);
+ this.kryptonPanel1.Name = "kryptonPanel1";
+ this.kryptonPanel1.Size = new System.Drawing.Size(643, 612);
+ this.kryptonPanel1.TabIndex = 0;
+ //
+ // kryptonTableLayoutPanel1
+ //
+ this.kryptonTableLayoutPanel1.BackgroundImage = ((System.Drawing.Image)(resources.GetObject("kryptonTableLayoutPanel1.BackgroundImage")));
+ this.kryptonTableLayoutPanel1.BackgroundImageLayout = System.Windows.Forms.ImageLayout.None;
+ this.kryptonTableLayoutPanel1.ColumnCount = 4;
+ this.kryptonTableLayoutPanel1.ColumnStyles.Add(new System.Windows.Forms.ColumnStyle());
+ this.kryptonTableLayoutPanel1.ColumnStyles.Add(new System.Windows.Forms.ColumnStyle(System.Windows.Forms.SizeType.Percent, 33.33333F));
+ this.kryptonTableLayoutPanel1.ColumnStyles.Add(new System.Windows.Forms.ColumnStyle(System.Windows.Forms.SizeType.Percent, 33.33333F));
+ this.kryptonTableLayoutPanel1.ColumnStyles.Add(new System.Windows.Forms.ColumnStyle(System.Windows.Forms.SizeType.Percent, 33.33333F));
+ this.kryptonTableLayoutPanel1.Controls.Add(this.pictureBoxIcon, 0, 0);
+ this.kryptonTableLayoutPanel1.Controls.Add(this.klblTitle, 1, 0);
+ this.kryptonTableLayoutPanel1.Controls.Add(this.klblDescription, 1, 1);
+ this.kryptonTableLayoutPanel1.Controls.Add(this.klblReleaseNotes, 1, 2);
+ this.kryptonTableLayoutPanel1.Controls.Add(this.kbtnSkip, 1, 4);
+ this.kryptonTableLayoutPanel1.Controls.Add(this.kbtnRemind, 2, 4);
+ this.kryptonTableLayoutPanel1.Controls.Add(this.kbtnUpdate, 3, 4);
+ this.kryptonTableLayoutPanel1.Controls.Add(this.kryptonPanel2, 1, 3);
+ this.kryptonTableLayoutPanel1.Dock = System.Windows.Forms.DockStyle.Fill;
+ this.kryptonTableLayoutPanel1.Location = new System.Drawing.Point(0, 0);
+ this.kryptonTableLayoutPanel1.Name = "kryptonTableLayoutPanel1";
+ this.kryptonTableLayoutPanel1.RowCount = 5;
+ this.kryptonTableLayoutPanel1.RowStyles.Add(new System.Windows.Forms.RowStyle());
+ this.kryptonTableLayoutPanel1.RowStyles.Add(new System.Windows.Forms.RowStyle());
+ this.kryptonTableLayoutPanel1.RowStyles.Add(new System.Windows.Forms.RowStyle());
+ this.kryptonTableLayoutPanel1.RowStyles.Add(new System.Windows.Forms.RowStyle(System.Windows.Forms.SizeType.Percent, 100F));
+ this.kryptonTableLayoutPanel1.RowStyles.Add(new System.Windows.Forms.RowStyle());
+ this.kryptonTableLayoutPanel1.RowStyles.Add(new System.Windows.Forms.RowStyle(System.Windows.Forms.SizeType.Absolute, 20F));
+ this.kryptonTableLayoutPanel1.Size = new System.Drawing.Size(643, 612);
+ this.kryptonTableLayoutPanel1.TabIndex = 0;
+ //
+ // pictureBoxIcon
+ //
+ this.pictureBoxIcon.BackColor = System.Drawing.Color.Transparent;
+ this.pictureBoxIcon.Image = global::Krypton.Toolkit.Suite.Extended.Software.Updater.Properties.Resources.update2;
+ this.pictureBoxIcon.ImeMode = System.Windows.Forms.ImeMode.NoControl;
+ this.pictureBoxIcon.Location = new System.Drawing.Point(3, 3);
+ this.pictureBoxIcon.Name = "pictureBoxIcon";
+ this.pictureBoxIcon.Padding = new System.Windows.Forms.Padding(5, 5, 0, 0);
+ this.kryptonTableLayoutPanel1.SetRowSpan(this.pictureBoxIcon, 2);
+ this.pictureBoxIcon.Size = new System.Drawing.Size(70, 66);
+ this.pictureBoxIcon.SizeMode = System.Windows.Forms.PictureBoxSizeMode.CenterImage;
+ this.pictureBoxIcon.TabIndex = 9;
+ this.pictureBoxIcon.TabStop = false;
+ //
+ // klblTitle
+ //
+ this.klblTitle.AutoSize = false;
+ this.kryptonTableLayoutPanel1.SetColumnSpan(this.klblTitle, 3);
+ this.klblTitle.Dock = System.Windows.Forms.DockStyle.Fill;
+ this.klblTitle.LabelStyle = Krypton.Toolkit.LabelStyle.TitlePanel;
+ this.klblTitle.Location = new System.Drawing.Point(79, 3);
+ this.klblTitle.Name = "klblTitle";
+ this.klblTitle.Size = new System.Drawing.Size(561, 25);
+ this.klblTitle.TabIndex = 10;
+ this.klblTitle.Values.Text = "kryptonLabel1";
+ //
+ // klblDescription
+ //
+ this.klblDescription.AutoSize = false;
+ this.kryptonTableLayoutPanel1.SetColumnSpan(this.klblDescription, 3);
+ this.klblDescription.Dock = System.Windows.Forms.DockStyle.Fill;
+ this.klblDescription.Location = new System.Drawing.Point(79, 34);
+ this.klblDescription.Name = "klblDescription";
+ this.klblDescription.Size = new System.Drawing.Size(561, 35);
+ this.klblDescription.TabIndex = 11;
+ this.klblDescription.Values.Text = "kryptonLabel2";
+ //
+ // klblReleaseNotes
+ //
+ this.kryptonTableLayoutPanel1.SetColumnSpan(this.klblReleaseNotes, 3);
+ this.klblReleaseNotes.Dock = System.Windows.Forms.DockStyle.Fill;
+ this.klblReleaseNotes.LabelStyle = Krypton.Toolkit.LabelStyle.BoldPanel;
+ this.klblReleaseNotes.Location = new System.Drawing.Point(79, 75);
+ this.klblReleaseNotes.Name = "klblReleaseNotes";
+ this.klblReleaseNotes.Size = new System.Drawing.Size(561, 20);
+ this.klblReleaseNotes.TabIndex = 12;
+ this.klblReleaseNotes.Values.Text = "kryptonLabel3";
+ //
+ // kbtnSkip
+ //
+ this.kbtnSkip.Anchor = ((System.Windows.Forms.AnchorStyles)(((System.Windows.Forms.AnchorStyles.Top | System.Windows.Forms.AnchorStyles.Bottom)
+ | System.Windows.Forms.AnchorStyles.Left)));
+ this.kbtnSkip.AutoSize = true;
+ this.kbtnSkip.AutoSizeMode = System.Windows.Forms.AutoSizeMode.GrowAndShrink;
+ this.kbtnSkip.Location = new System.Drawing.Point(79, 587);
+ this.kbtnSkip.Name = "kbtnSkip";
+ this.kbtnSkip.Size = new System.Drawing.Size(111, 22);
+ this.kbtnSkip.TabIndex = 14;
+ this.kbtnSkip.Values.Image = global::Krypton.Toolkit.Suite.Extended.Software.Updater.Properties.Resources.hand_point;
+ this.kbtnSkip.Values.Text = "kryptonButton1";
+ this.kbtnSkip.Click += new System.EventHandler(this.kbtnSkip_Click);
+ //
+ // kbtnRemind
+ //
+ this.kbtnRemind.Anchor = ((System.Windows.Forms.AnchorStyles)((System.Windows.Forms.AnchorStyles.Bottom | System.Windows.Forms.AnchorStyles.Right)));
+ this.kbtnRemind.AutoSize = true;
+ this.kbtnRemind.AutoSizeMode = System.Windows.Forms.AutoSizeMode.GrowAndShrink;
+ this.kbtnRemind.Location = new System.Drawing.Point(340, 587);
+ this.kbtnRemind.Name = "kbtnRemind";
+ this.kbtnRemind.Size = new System.Drawing.Size(111, 22);
+ this.kbtnRemind.TabIndex = 15;
+ this.kbtnRemind.Values.Image = global::Krypton.Toolkit.Suite.Extended.Software.Updater.Properties.Resources.clock_go;
+ this.kbtnRemind.Values.Text = "kryptonButton2";
+ this.kbtnRemind.Click += new System.EventHandler(this.kbtnRemind_Click);
+ //
+ // kbtnUpdate
+ //
+ this.kbtnUpdate.Anchor = ((System.Windows.Forms.AnchorStyles)((System.Windows.Forms.AnchorStyles.Bottom | System.Windows.Forms.AnchorStyles.Right)));
+ this.kbtnUpdate.AutoSize = true;
+ this.kbtnUpdate.AutoSizeMode = System.Windows.Forms.AutoSizeMode.GrowAndShrink;
+ this.kbtnUpdate.Location = new System.Drawing.Point(529, 587);
+ this.kbtnUpdate.Name = "kbtnUpdate";
+ this.kbtnUpdate.Size = new System.Drawing.Size(111, 22);
+ this.kbtnUpdate.TabIndex = 16;
+ this.kbtnUpdate.Values.Image = global::Krypton.Toolkit.Suite.Extended.Software.Updater.Properties.Resources.download;
+ this.kbtnUpdate.Values.Text = "kryptonButton3";
+ this.kbtnUpdate.Click += new System.EventHandler(this.kbtnUpdate_Click);
+ //
+ // kryptonPanel2
+ //
+ this.kryptonTableLayoutPanel1.SetColumnSpan(this.kryptonPanel2, 3);
+ this.kryptonPanel2.Controls.Add(this.wvChangelog);
+ this.kryptonPanel2.Controls.Add(this.kwbChangelog);
+ this.kryptonPanel2.Dock = System.Windows.Forms.DockStyle.Fill;
+ this.kryptonPanel2.Location = new System.Drawing.Point(79, 101);
+ this.kryptonPanel2.Name = "kryptonPanel2";
+ this.kryptonPanel2.Size = new System.Drawing.Size(561, 480);
+ this.kryptonPanel2.TabIndex = 17;
+ //
+ // wvChangelog
+ //
+ this.wvChangelog.AllowExternalDrop = true;
+ this.wvChangelog.CreationProperties = null;
+ this.wvChangelog.DefaultBackgroundColor = System.Drawing.Color.White;
+ this.wvChangelog.Dock = System.Windows.Forms.DockStyle.Fill;
+ this.wvChangelog.Location = new System.Drawing.Point(0, 0);
+ this.wvChangelog.Name = "wvChangelog";
+ this.wvChangelog.Size = new System.Drawing.Size(561, 480);
+ this.wvChangelog.TabIndex = 14;
+ this.wvChangelog.ZoomFactor = 1D;
+ //
+ // kwbChangelog
+ //
+ this.kwbChangelog.Dock = System.Windows.Forms.DockStyle.Fill;
+ this.kwbChangelog.Location = new System.Drawing.Point(0, 0);
+ this.kwbChangelog.Name = "kwbChangelog";
+ this.kwbChangelog.Size = new System.Drawing.Size(561, 480);
+ this.kwbChangelog.TabIndex = 0;
+ //
+ // UpdateDialog
+ //
+ this.AcceptButton = this.kbtnUpdate;
+ this.AutoScaleDimensions = new System.Drawing.SizeF(6F, 13F);
+ this.AutoScaleMode = System.Windows.Forms.AutoScaleMode.Font;
+ this.ClientSize = new System.Drawing.Size(643, 612);
+ this.Controls.Add(this.kryptonPanel1);
+ this.FormBorderStyle = System.Windows.Forms.FormBorderStyle.FixedDialog;
+ this.Icon = ((System.Drawing.Icon)(resources.GetObject("$this.Icon")));
+ this.MaximizeBox = false;
+ this.MinimizeBox = false;
+ this.Name = "UpdateDialog";
+ this.StartPosition = System.Windows.Forms.FormStartPosition.CenterParent;
+ this.Text = "UpdateDialog";
+ this.FormClosing += new System.Windows.Forms.FormClosingEventHandler(this.UpdateDialog_FormClosing);
+ this.FormClosed += new System.Windows.Forms.FormClosedEventHandler(this.UpdateDialog_FormClosed);
+ this.Load += new System.EventHandler(this.UpdateDialog_Load);
+ ((System.ComponentModel.ISupportInitialize)(this.kryptonPanel1)).EndInit();
+ this.kryptonPanel1.ResumeLayout(false);
+ this.kryptonTableLayoutPanel1.ResumeLayout(false);
+ this.kryptonTableLayoutPanel1.PerformLayout();
+ ((System.ComponentModel.ISupportInitialize)(this.pictureBoxIcon)).EndInit();
+ ((System.ComponentModel.ISupportInitialize)(this.kryptonPanel2)).EndInit();
+ this.kryptonPanel2.ResumeLayout(false);
+ ((System.ComponentModel.ISupportInitialize)(this.wvChangelog)).EndInit();
+ this.ResumeLayout(false);
+
+ }
+
+ #endregion
+
+ private KryptonPanel kryptonPanel1;
+ private KryptonTableLayoutPanel kryptonTableLayoutPanel1;
+ private PictureBox pictureBoxIcon;
+ private KryptonLabel klblTitle;
+ private KryptonLabel klblDescription;
+ private KryptonLabel klblReleaseNotes;
+ private KryptonButton kbtnSkip;
+ private KryptonButton kbtnRemind;
+ private KryptonButton kbtnUpdate;
+ private KryptonPanel kryptonPanel2;
+ private KryptonWebBrowser kwbChangelog;
+ private Microsoft.Web.WebView2.WinForms.WebView2 wvChangelog;
+ }
+}
\ No newline at end of file
diff --git a/Source/Krypton Toolkit/Krypton.Toolkit.Suite.Extended.Software.Updater/Auto Updater/UX/UpdateWindow.cs b/Source/Krypton Toolkit/Krypton.Toolkit.Suite.Extended.Software.Updater/Auto Updater/Controls Visuals/UpdateDialog.cs
similarity index 59%
rename from Source/Krypton Toolkit/Krypton.Toolkit.Suite.Extended.Software.Updater/Auto Updater/UX/UpdateWindow.cs
rename to Source/Krypton Toolkit/Krypton.Toolkit.Suite.Extended.Software.Updater/Auto Updater/Controls Visuals/UpdateDialog.cs
index 0e709ab24..9dff83cfd 100644
--- a/Source/Krypton Toolkit/Krypton.Toolkit.Suite.Extended.Software.Updater/Auto Updater/UX/UpdateWindow.cs
+++ b/Source/Krypton Toolkit/Krypton.Toolkit.Suite.Extended.Software.Updater/Auto Updater/Controls Visuals/UpdateDialog.cs
@@ -1,91 +1,47 @@
-#region License
-
-/*
- * MIT License
- *
- * Copyright (c) 2012 - 2023 RBSoft
- *
- * Permission is hereby granted, free of charge, to any person obtaining a copy
- * of this software and associated documentation files (the "Software"), to deal
- * in the Software without restriction, including without limitation the rights
- * to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
- * copies of the Software, and to permit persons to whom the Software is
- * furnished to do so, subject to the following conditions:
- *
- * The above copyright notice and this permission notice shall be included in all
- * copies or substantial portions of the Software.
- *
- * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
- * IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
- * FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
- * AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
- * LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
- * OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE
- * SOFTWARE.
- */
-
-#endregion
-
-using Application = System.Windows.Forms.Application;
-// ReSharper disable InconsistentNaming
+using Application = System.Windows.Forms.Application;
namespace Krypton.Toolkit.Suite.Extended.Software.Updater
{
- public partial class UpdateWindow : KryptonForm
+ public partial class UpdateDialog : KryptonForm
{
#region Instance Fields
- private readonly UpdateInfoEventArgs _args;
+ private readonly UpdateInfoEventArgs _updateInfoEventArgs;
#endregion
- #region Identity
-
- public UpdateWindow(UpdateInfoEventArgs args)
+ public UpdateDialog(UpdateInfoEventArgs updateInfoEventArgs)
{
InitializeComponent();
- InitializeBrowserControl();
-
- _args = args;
-
- kbtnSkip.Visible = AutoUpdater.ShowSkipButton;
-
- kbtnRemind.Visible = AutoUpdater.ShowRemindLaterButton;
+ _updateInfoEventArgs = updateInfoEventArgs;
- Text = string.Format(AutoUpdaterLanguageManager.WindowStrings.WindowTitle, AutoUpdater.AppTitle,
- _args.CurrentVersion);
+ TopMost = AutoUpdater.TopMost;
- kwlHeader.Text = string.Format(AutoUpdaterLanguageManager.WindowStrings.HeaderText, AutoUpdater.AppTitle);
-
- kwlDetails.Text = string.Format(AutoUpdaterLanguageManager.WindowStrings.Description, AutoUpdater.AppTitle,
- _args.CurrentVersion, _args.InstalledVersion);
+ if (AutoUpdater.Icon != null)
+ {
+ pictureBoxIcon.Image = AutoUpdater.Icon;
- kwlReleaseNotes.Text = AutoUpdaterLanguageManager.WindowStrings.ReleaseNotesText;
+ Icon = Icon.FromHandle(AutoUpdater.Icon.GetHicon());
+ }
- kbtnRemind.Text = AutoUpdaterLanguageManager.WindowStrings.RemindLaterButtonText;
+ kbtnSkip.Visible = AutoUpdater.ShowSkipButton;
- kbtnSkip.Text = AutoUpdaterLanguageManager.WindowStrings.SkipButtonText;
+ kbtnRemind.Visible = AutoUpdater.ShowRemindLaterButton;
- kbtnUpdate.Text = AutoUpdaterLanguageManager.WindowStrings.UpdateButtonText;
+ InitializeBrowserControl();
- if (AutoUpdater.Mandatory && AutoUpdater.UpdateMode == UpdateMode.Forced)
- {
- ControlBox = false;
- }
+ SetupUI();
}
- #endregion
-
private async void InitializeBrowserControl()
{
- if (string.IsNullOrEmpty(_args.ChangelogURL))
+ if (string.IsNullOrEmpty(_updateInfoEventArgs.ChangelogURL))
{
- ReducedUpdateWindow reducedUpdateWindow = new(_args);
-
- reducedUpdateWindow.Show();
-
- Hide();
+ int reduceHeight = klblReleaseNotes.Height + kryptonPanel2.Height;
+ klblReleaseNotes.Hide();
+ kryptonPanel2.Hide();
+ Height -= reduceHeight;
}
else
{
@@ -108,9 +64,9 @@ private async void InitializeBrowserControl()
if (webView2RuntimeFound)
{
- kwbReleaseNotes.Hide();
- wvReleaseNotes.CoreWebView2InitializationCompleted += WebView_CoreWebView2InitializationCompleted;
- await wvReleaseNotes.EnsureCoreWebView2Async(
+ kwbChangelog.Hide();
+ wvChangelog.CoreWebView2InitializationCompleted += WebView_CoreWebView2InitializationCompleted;
+ await wvChangelog.EnsureCoreWebView2Async(
await CoreWebView2Environment.CreateAsync(null, Path.GetTempPath()));
}
else
@@ -118,19 +74,19 @@ private async void InitializeBrowserControl()
UseLatestIE();
if (null != AutoUpdater.BasicAuthChangeLog)
{
- kwbReleaseNotes.Navigate(_args.ChangelogURL, "", null,
+ kwbChangelog.Navigate(_updateInfoEventArgs.ChangelogURL, "", null,
$"Authorization: {AutoUpdater.BasicAuthChangeLog}");
}
else
{
- kwbReleaseNotes.Navigate(_args.ChangelogURL);
+ kwbChangelog.Navigate(_updateInfoEventArgs.ChangelogURL);
}
}
}
}
private void WebView_CoreWebView2InitializationCompleted(object sender,
- CoreWebView2InitializationCompletedEventArgs e)
+ CoreWebView2InitializationCompletedEventArgs e)
{
if (!e.IsSuccess)
{
@@ -143,16 +99,16 @@ private async void InitializeBrowserControl()
return;
}
- wvReleaseNotes.CoreWebView2.Settings.AreDefaultContextMenusEnabled = false;
- wvReleaseNotes.CoreWebView2.Settings.IsStatusBarEnabled = false;
- wvReleaseNotes.CoreWebView2.Settings.AreDevToolsEnabled = Debugger.IsAttached;
- wvReleaseNotes.CoreWebView2.Settings.UserAgent = AutoUpdater.GetUserAgent();
- wvReleaseNotes.CoreWebView2.Profile.ClearBrowsingDataAsync();
- wvReleaseNotes.Show();
- wvReleaseNotes.BringToFront();
+ wvChangelog.CoreWebView2.Settings.AreDefaultContextMenusEnabled = false;
+ wvChangelog.CoreWebView2.Settings.IsStatusBarEnabled = false;
+ wvChangelog.CoreWebView2.Settings.AreDevToolsEnabled = Debugger.IsAttached;
+ wvChangelog.CoreWebView2.Settings.UserAgent = AutoUpdater.GetUserAgent();
+ wvChangelog.CoreWebView2.Profile.ClearBrowsingDataAsync();
+ wvChangelog.Show();
+ wvChangelog.BringToFront();
if (null != AutoUpdater.BasicAuthChangeLog)
{
- wvReleaseNotes.CoreWebView2.BasicAuthenticationRequested += delegate (
+ wvChangelog.CoreWebView2.BasicAuthenticationRequested += delegate (
object _,
CoreWebView2BasicAuthenticationRequestedEventArgs args)
{
@@ -161,12 +117,12 @@ private async void InitializeBrowserControl()
};
}
- wvReleaseNotes.CoreWebView2.Navigate(_args.ChangelogURL);
+ wvChangelog.CoreWebView2.Navigate(_updateInfoEventArgs.ChangelogURL);
}
private void UseLatestIE()
{
- int ieValue = kwbReleaseNotes.Version.Major switch
+ int ieValue = kwbChangelog.Version.Major switch
{
11 => 11001,
10 => 10001,
@@ -183,7 +139,7 @@ private void UseLatestIE()
try
{
- using RegistryKey? registryKey =
+ using RegistryKey registryKey =
Registry.CurrentUser.OpenSubKey(
@"SOFTWARE\Microsoft\Internet Explorer\Main\FeatureControl\FEATURE_BROWSER_EMULATION",
true);
@@ -199,7 +155,26 @@ private void UseLatestIE()
}
}
- private void UpdateWindow_Load(object sender, EventArgs e)
+ private void SetupUI()
+ {
+ Text = string.Format(AutoUpdaterLanguageManager.WindowStrings.WindowTitle, AutoUpdater.AppTitle,
+ _updateInfoEventArgs.CurrentVersion);
+
+ klblTitle.Text = string.Format(AutoUpdaterLanguageManager.WindowStrings.HeaderText,
+ CultureInfo.CurrentCulture, AutoUpdater.AppTitle);
+
+ klblDescription.Text = string.Format(AutoUpdaterLanguageManager.WindowStrings.Description,
+ AutoUpdater.AppTitle, _updateInfoEventArgs.CurrentVersion, _updateInfoEventArgs.InstalledVersion);
+
+ klblReleaseNotes.Text = AutoUpdaterLanguageManager.WindowStrings.ReleaseNotesText;
+
+ if (AutoUpdater.Mandatory && AutoUpdater.UpdateMode == Mode.Forced)
+ {
+ CloseBox = false;
+ }
+ }
+
+ private void UpdateDialog_Load(object sender, EventArgs e)
{
}
@@ -208,7 +183,7 @@ private void kbtnUpdate_Click(object sender, EventArgs e)
{
if (AutoUpdater.OpenDownloadPage)
{
- var processStartInfo = new ProcessStartInfo(_args.DownloadURL);
+ var processStartInfo = new ProcessStartInfo(_updateInfoEventArgs.DownloadURL);
Process.Start(processStartInfo);
@@ -216,7 +191,7 @@ private void kbtnUpdate_Click(object sender, EventArgs e)
}
else
{
- if (AutoUpdater.DownloadUpdate(_args))
+ if (AutoUpdater.DownloadUpdate(_updateInfoEventArgs))
{
DialogResult = DialogResult.OK;
}
@@ -225,14 +200,14 @@ private void kbtnUpdate_Click(object sender, EventArgs e)
private void kbtnSkip_Click(object sender, EventArgs e)
{
- AutoUpdater.PersistenceProvider.SetSkippedVersion(new Version(_args.CurrentVersion));
+ AutoUpdater.PersistenceProvider.SetSkippedVersion(new Version(_updateInfoEventArgs.CurrentVersion));
}
private void kbtnRemind_Click(object sender, EventArgs e)
{
if (AutoUpdater.LetUserSelectRemindLater)
{
- using var remindLaterForm = new RemindLaterWindow();
+ using var remindLaterForm = new RemindLaterForm();
DialogResult dialogResult = remindLaterForm.ShowDialog(this);
switch (dialogResult)
@@ -265,14 +240,14 @@ private void kbtnRemind_Click(object sender, EventArgs e)
DialogResult = DialogResult.Cancel;
}
- private void UpdateWindow_FormClosed(object sender, FormClosedEventArgs e)
+ private void UpdateDialog_FormClosed(object sender, FormClosedEventArgs e)
{
AutoUpdater.Running = false;
}
- private void UpdateWindow_FormClosing(object sender, FormClosingEventArgs e)
+ private void UpdateDialog_FormClosing(object sender, FormClosingEventArgs e)
{
- if (AutoUpdater.Mandatory && AutoUpdater.UpdateMode == UpdateMode.Forced)
+ if (AutoUpdater.Mandatory && AutoUpdater.UpdateMode == Mode.Forced)
{
AutoUpdater.Exit();
}
diff --git a/Source/Krypton Toolkit/Krypton.Toolkit.Suite.Extended.Software.Updater/Auto Updater/UX/UpdateWindow.resx b/Source/Krypton Toolkit/Krypton.Toolkit.Suite.Extended.Software.Updater/Auto Updater/Controls Visuals/UpdateDialog.resx
similarity index 77%
rename from Source/Krypton Toolkit/Krypton.Toolkit.Suite.Extended.Software.Updater/Auto Updater/UX/UpdateWindow.resx
rename to Source/Krypton Toolkit/Krypton.Toolkit.Suite.Extended.Software.Updater/Auto Updater/Controls Visuals/UpdateDialog.resx
index c24654984..fd8961f80 100644
--- a/Source/Krypton Toolkit/Krypton.Toolkit.Suite.Extended.Software.Updater/Auto Updater/UX/UpdateWindow.resx
+++ b/Source/Krypton Toolkit/Krypton.Toolkit.Suite.Extended.Software.Updater/Auto Updater/Controls Visuals/UpdateDialog.resx
@@ -120,72 +120,65 @@
- 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
+ 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
+ RK5CYII=
diff --git a/Source/Krypton Toolkit/Krypton.Toolkit.Suite.Extended.Software.Updater/Auto Updater/Enumerations/RemindLaterFormat.cs b/Source/Krypton Toolkit/Krypton.Toolkit.Suite.Extended.Software.Updater/Auto Updater/Enumerations/RemindLaterFormat.cs
index 2f9175723..b07561620 100644
--- a/Source/Krypton Toolkit/Krypton.Toolkit.Suite.Extended.Software.Updater/Auto Updater/Enumerations/RemindLaterFormat.cs
+++ b/Source/Krypton Toolkit/Krypton.Toolkit.Suite.Extended.Software.Updater/Auto Updater/Enumerations/RemindLaterFormat.cs
@@ -1,43 +1,15 @@
-#region License
-
-/*
- * MIT License
- *
- * Copyright (c) 2012 - 2023 RBSoft
- *
- * Permission is hereby granted, free of charge, to any person obtaining a copy
- * of this software and associated documentation files (the "Software"), to deal
- * in the Software without restriction, including without limitation the rights
- * to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
- * copies of the Software, and to permit persons to whom the Software is
- * furnished to do so, subject to the following conditions:
- *
- * The above copyright notice and this permission notice shall be included in all
- * copies or substantial portions of the Software.
- *
- * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
- * IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
- * FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
- * AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
- * LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
- * OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE
- * SOFTWARE.
- */
-
-#endregion
-
-namespace Krypton.Toolkit.Suite.Extended.Software.Updater
+namespace Krypton.Toolkit.Suite.Extended.Software.Updater
{
/// Enum representing the remind later time span.
public enum RemindLaterFormat
{
/// Represents the time span in minutes.
- Minutes,
+ Minutes = 0,
/// Represents the time span in hours.
- Hours,
+ Hours = 1,
/// Represents the time span in days.
- Days
+ Days = 2
}
}
\ No newline at end of file
diff --git a/Source/Krypton Toolkit/Krypton.Toolkit.Suite.Extended.Software.Updater/Auto Updater/Enumerations/UpdateMode.cs b/Source/Krypton Toolkit/Krypton.Toolkit.Suite.Extended.Software.Updater/Auto Updater/Enumerations/UpdateMode.cs
index 173dcb377..e7d820e89 100644
--- a/Source/Krypton Toolkit/Krypton.Toolkit.Suite.Extended.Software.Updater/Auto Updater/Enumerations/UpdateMode.cs
+++ b/Source/Krypton Toolkit/Krypton.Toolkit.Suite.Extended.Software.Updater/Auto Updater/Enumerations/UpdateMode.cs
@@ -1,35 +1,7 @@
-#region License
-
-/*
- * MIT License
- *
- * Copyright (c) 2012 - 2023 RBSoft
- *
- * Permission is hereby granted, free of charge, to any person obtaining a copy
- * of this software and associated documentation files (the "Software"), to deal
- * in the Software without restriction, including without limitation the rights
- * to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
- * copies of the Software, and to permit persons to whom the Software is
- * furnished to do so, subject to the following conditions:
- *
- * The above copyright notice and this permission notice shall be included in all
- * copies or substantial portions of the Software.
- *
- * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
- * IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
- * FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
- * AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
- * LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
- * OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE
- * SOFTWARE.
- */
-
-#endregion
-
-namespace Krypton.Toolkit.Suite.Extended.Software.Updater
+namespace Krypton.Toolkit.Suite.Extended.Software.Updater
{
/// Enum representing the effect of Mandatory flag.
- public enum UpdateMode
+ public enum Mode
{
/// In this mode, it ignores Remind Later and Skip values set previously and hide both buttons.
[XmlEnum("0")] Normal,
diff --git a/Source/Krypton Toolkit/Krypton.Toolkit.Suite.Extended.Software.Updater/Auto Updater/General/AutoUpdater.cs b/Source/Krypton Toolkit/Krypton.Toolkit.Suite.Extended.Software.Updater/Auto Updater/General/AutoUpdater.cs
index bbf9f7e8a..51fd60e15 100644
--- a/Source/Krypton Toolkit/Krypton.Toolkit.Suite.Extended.Software.Updater/Auto Updater/General/AutoUpdater.cs
+++ b/Source/Krypton Toolkit/Krypton.Toolkit.Suite.Extended.Software.Updater/Auto Updater/General/AutoUpdater.cs
@@ -1,37 +1,9 @@
-#region License
-
-/*
- * MIT License
- *
- * Copyright (c) 2012 - 2023 RBSoft
- *
- * Permission is hereby granted, free of charge, to any person obtaining a copy
- * of this software and associated documentation files (the "Software"), to deal
- * in the Software without restriction, including without limitation the rights
- * to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
- * copies of the Software, and to permit persons to whom the Software is
- * furnished to do so, subject to the following conditions:
- *
- * The above copyright notice and this permission notice shall be included in all
- * copies or substantial portions of the Software.
- *
- * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
- * IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
- * FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
- * AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
- * LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
- * OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE
- * SOFTWARE.
- */
-
-#endregion
-
+
using Application = System.Windows.Forms.Application;
using IWin32Window = System.Windows.Forms.IWin32Window;
+using MethodInvoker = System.Windows.Forms.MethodInvoker;
using Size = System.Drawing.Size;
using Timer = System.Timers.Timer;
-using MethodInvoker = System.Windows.Forms.MethodInvoker;
-// ReSharper disable InconsistentNaming
namespace Krypton.Toolkit.Suite.Extended.Software.Updater
{
@@ -40,28 +12,31 @@ namespace Krypton.Toolkit.Suite.Extended.Software.Updater
///
public static class AutoUpdater
{
- #region Delegates
-
- /// A delegate type to handle how to exit the application after update is downloaded.
+ ///
+ /// A delegate type to handle how to exit the application after update is downloaded.
+ ///
public delegate void ApplicationExitEventHandler();
- /// A delegate type for hooking up update notifications.
- /// An object containing all the parameters received from AppCast XML file. If there will be an error while looking for the XML file then this object will be null.
+ ///
+ /// A delegate type for hooking up update notifications.
+ ///
+ ///
+ /// An object containing all the parameters received from AppCast XML file. If there will be an error
+ /// while looking for the XML file then this object will be null.
+ ///
public delegate void CheckForUpdateEventHandler(UpdateInfoEventArgs args);
- /// A delegate type for hooking up parsing logic.
+ ///
+ /// A delegate type for hooking up parsing logic.
+ ///
/// An object containing the AppCast file received from server.
public delegate void ParseUpdateInfoHandler(ParseUpdateInfoEventArgs args);
- #endregion
-
- #region Static Fields
-
private static bool _isWinFormsApplication;
private static IWin32Window _owner;
- private static Timer? _remindLaterTimer;
+ private static Timer _remindLaterTimer;
internal static Uri BaseUri;
@@ -81,7 +56,7 @@ public static class AutoUpdater
///
/// Set Basic Authentication credentials to navigate to the change log URL.
///
- public static IAuthentication? BasicAuthChangeLog;
+ public static IAuthentication BasicAuthChangeLog;
///
/// Set Basic Authentication credentials required to download the file.
@@ -119,11 +94,14 @@ public static class AutoUpdater
///
public static string HttpUserAgent;
+ /// Set this to change the icon shown on updater dialog.
+ public static Bitmap? Icon;
+
///
/// If you are using a zip file as an update file then you can set this value to path where your app is installed. This
/// is only necessary when your installation directory differs from your executable path.
///
- public static string InstallationPath;
+ public static string? InstallationPath;
///
/// You can set this field to your current version if you don't want to determine the version from the assembly.
@@ -156,7 +134,7 @@ public static class AutoUpdater
///
/// Set Proxy server to use for all the web requests in AutoUpdater.NET.
///
- public static IWebProxy? Proxy;
+ public static IWebProxy Proxy;
///
/// Remind Later interval after user should be reminded of update.
@@ -194,37 +172,34 @@ public static class AutoUpdater
public static bool Synchronous = false;
///
- /// Set if you want the default update form to have a different size.
+ /// Modify TopMost property of all dialogs.
+ ///
+ public static bool TopMost = false;
+
+ ///
+ /// Set this if you want the default update form to have a different size.
///
public static Size? UpdateFormSize = null;
///
/// Set this to any of the available modes to change behaviour of the Mandatory flag.
///
- public static UpdateMode UpdateMode;
-
- #endregion
-
- #region Events
+ public static Mode UpdateMode;
///
/// An event that developers can use to exit the application gracefully.
///
- public static event ApplicationExitEventHandler? ApplicationExitEvent;
+ public static event ApplicationExitEventHandler ApplicationExitEvent;
///
/// An event that clients can use to be notified whenever the update is checked.
///
- public static event CheckForUpdateEventHandler? CheckForUpdateEvent;
+ public static event CheckForUpdateEventHandler CheckForUpdateEvent;
///
/// An event that clients can use to be notified whenever the AppCast file needs parsing.
///
- public static event ParseUpdateInfoHandler? ParseUpdateInfoEvent;
-
- #endregion
-
- #region Implementation
+ public static event ParseUpdateInfoHandler ParseUpdateInfoEvent;
///
/// Set the owner for all dialogs.
@@ -244,7 +219,7 @@ public static void SetOwner(object obj)
/// Start checking for new version of application and display a dialog to the user if update is available.
///
/// Assembly to use for version checking.
- public static void Start(Assembly? myAssembly = null)
+ public static void Start(Assembly myAssembly = null)
{
Start(AppCastURL, myAssembly);
}
@@ -255,7 +230,7 @@ public static void Start(Assembly? myAssembly = null)
/// FTP URL of the xml file that contains information about latest version of the application.
/// Credentials required to connect to FTP server.
/// Assembly to use for version checking.
- public static void Start(string appCast, NetworkCredential ftpCredentials, Assembly? myAssembly = null)
+ public static void Start(string appCast, NetworkCredential ftpCredentials, Assembly myAssembly = null)
{
FtpCredentials = ftpCredentials;
Start(appCast, myAssembly);
@@ -266,7 +241,7 @@ public static void Start(string appCast, NetworkCredential ftpCredentials, Assem
///
/// URL of the xml file that contains information about latest version of the application.
/// Assembly to use for version checking.
- public static void Start(string appCast, Assembly? myAssembly = null)
+ public static void Start(string appCast, Assembly myAssembly = null)
{
try
{
@@ -300,13 +275,13 @@ public static void Start(string appCast, Assembly? myAssembly = null)
Application.EnableVisualStyles();
}
- Assembly? assembly = myAssembly ?? Assembly.GetEntryAssembly();
+ Assembly assembly = myAssembly ?? Assembly.GetEntryAssembly();
if (Synchronous)
{
try
{
- object? result = CheckUpdate(assembly);
+ object result = CheckUpdate(assembly);
if (StartUpdate(result))
{
@@ -352,17 +327,17 @@ public static void Start(string appCast, Assembly? myAssembly = null)
}
}
- private static object? CheckUpdate(Assembly? mainAssembly)
+ private static object CheckUpdate(Assembly mainAssembly)
{
var companyAttribute =
- (AssemblyCompanyAttribute)GetAttribute(mainAssembly, typeof(AssemblyCompanyAttribute))!;
+ (AssemblyCompanyAttribute)GetAttribute(mainAssembly, typeof(AssemblyCompanyAttribute));
string appCompany = companyAttribute != null ? companyAttribute.Company : "";
if (string.IsNullOrEmpty(AppTitle))
{
var titleAttribute =
- (AssemblyTitleAttribute)GetAttribute(mainAssembly, typeof(AssemblyTitleAttribute))!;
- AppTitle = titleAttribute != null ? titleAttribute.Title : mainAssembly!.GetName().Name;
+ (AssemblyTitleAttribute)GetAttribute(mainAssembly, typeof(AssemblyTitleAttribute));
+ AppTitle = titleAttribute != null ? titleAttribute.Title : mainAssembly.GetName().Name;
}
string registryLocation = !string.IsNullOrEmpty(appCompany)
@@ -373,10 +348,10 @@ public static void Start(string appCast, Assembly? myAssembly = null)
BaseUri = new Uri(AppCastURL);
- UpdateInfoEventArgs? args;
- using (MyWebClient? client = GetWebClient(BaseUri, BasicAuthXML))
+ UpdateInfoEventArgs args;
+ using (MyWebClient client = GetWebClient(BaseUri, BasicAuthXML))
{
- string xml = client!.DownloadString(BaseUri);
+ string xml = client.DownloadString(BaseUri);
if (ParseUpdateInfoEvent == null)
{
@@ -392,12 +367,12 @@ public static void Start(string appCast, Assembly? myAssembly = null)
}
}
- if (string.IsNullOrEmpty(args?.CurrentVersion) || string.IsNullOrEmpty(args?.DownloadURL))
+ if (string.IsNullOrEmpty(args?.CurrentVersion) || string.IsNullOrEmpty(args.DownloadURL))
{
throw new MissingFieldException();
}
- args!.InstalledVersion = InstalledVersion ?? mainAssembly!.GetName().Version;
+ args.InstalledVersion = InstalledVersion ?? mainAssembly.GetName().Version;
args.IsUpdateAvailable = new Version(args.CurrentVersion) > args.InstalledVersion;
if (!Mandatory)
@@ -452,7 +427,7 @@ public static void Start(string appCast, Assembly? myAssembly = null)
return args;
}
- private static bool StartUpdate(object? result)
+ private static bool StartUpdate(object result)
{
if (result is DateTime time)
{
@@ -473,7 +448,7 @@ private static bool StartUpdate(object? result)
{
if (args.IsUpdateAvailable)
{
- if (Mandatory && UpdateMode == UpdateMode.ForcedDownload)
+ if (Mandatory && UpdateMode == Mode.ForcedDownload)
{
DownloadUpdate(args);
Exit();
@@ -549,7 +524,7 @@ internal static void Exit()
var currentProcess = Process.GetCurrentProcess();
foreach (Process process in Process.GetProcessesByName(currentProcess.ProcessName))
{
- string? processPath;
+ string processPath;
try
{
processPath = process.MainModule?.FileName;
@@ -602,15 +577,15 @@ internal static void Exit()
}
}
- private static Attribute? GetAttribute(Assembly? assembly, Type? attributeType)
+ private static Attribute GetAttribute(Assembly assembly, Type attributeType)
{
- object[]? attributes = assembly?.GetCustomAttributes(attributeType!, false);
- if (attributes?.Length == 0)
+ object[] attributes = assembly.GetCustomAttributes(attributeType, false);
+ if (attributes.Length == 0)
{
return null;
}
- return (Attribute)attributes![0];
+ return (Attribute)attributes[0];
}
internal static string GetUserAgent()
@@ -677,7 +652,7 @@ public static bool DownloadUpdate(UpdateInfoEventArgs args)
///
public static void ShowUpdateForm(UpdateInfoEventArgs args)
{
- using var updateForm = new UpdateWindow(args);
+ using var updateForm = new UpdateDialog(args);
if (UpdateFormSize.HasValue)
{
@@ -708,14 +683,12 @@ internal static MyWebClient GetWebClient(Uri uri, IAuthentication basicAuthentic
}
else
{
- basicAuthentication.Apply(ref webClient);
+ basicAuthentication?.Apply(ref webClient);
- webClient!.Headers[HttpRequestHeader.UserAgent] = HttpUserAgent;
+ webClient.Headers[HttpRequestHeader.UserAgent] = HttpUserAgent;
}
return webClient;
}
}
-
- #endregion
}
\ No newline at end of file
diff --git a/Source/Krypton Toolkit/Krypton.Toolkit.Suite.Extended.Software.Updater/Auto Updater/General/BasicAuthentication.cs b/Source/Krypton Toolkit/Krypton.Toolkit.Suite.Extended.Software.Updater/Auto Updater/General/BasicAuthentication.cs
index 16e1d0157..3ea1eba6f 100644
--- a/Source/Krypton Toolkit/Krypton.Toolkit.Suite.Extended.Software.Updater/Auto Updater/General/BasicAuthentication.cs
+++ b/Source/Krypton Toolkit/Krypton.Toolkit.Suite.Extended.Software.Updater/Auto Updater/General/BasicAuthentication.cs
@@ -1,41 +1,9 @@
-#region License
-
-/*
- * MIT License
- *
- * Copyright (c) 2012 - 2023 RBSoft
- *
- * Permission is hereby granted, free of charge, to any person obtaining a copy
- * of this software and associated documentation files (the "Software"), to deal
- * in the Software without restriction, including without limitation the rights
- * to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
- * copies of the Software, and to permit persons to whom the Software is
- * furnished to do so, subject to the following conditions:
- *
- * The above copyright notice and this permission notice shall be included in all
- * copies or substantial portions of the Software.
- *
- * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
- * IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
- * FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
- * AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
- * LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
- * OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE
- * SOFTWARE.
- */
-
-#endregion
-
-namespace Krypton.Toolkit.Suite.Extended.Software.Updater
+namespace Krypton.Toolkit.Suite.Extended.Software.Updater
{
- ///
- /// Provides Basic Authentication header for web request.
- ///
+ /// Provides Basic Authentication header for web request.
public class BasicAuthentication : IAuthentication
{
- ///
- /// Initializes credentials for Basic Authentication.
- ///
+ /// Initializes credentials for Basic Authentication.
/// Username to use for Basic Authentication
/// Password to use for Basic Authentication
public BasicAuthentication(string username, string password)
@@ -49,10 +17,7 @@ public BasicAuthentication(string username, string password)
internal string Password { get; }
///
- public void Apply(ref MyWebClient? webClient)
- {
- webClient.Headers[HttpRequestHeader.Authorization] = ToString();
- }
+ public void Apply(ref MyWebClient webClient) => webClient.Headers[HttpRequestHeader.Authorization] = ToString();
///
public override string ToString()
diff --git a/Source/Krypton Toolkit/Krypton.Toolkit.Suite.Extended.Software.Updater/Auto Updater/General/CheckSum.cs b/Source/Krypton Toolkit/Krypton.Toolkit.Suite.Extended.Software.Updater/Auto Updater/General/CheckSum.cs
new file mode 100644
index 000000000..2d9d9813b
--- /dev/null
+++ b/Source/Krypton Toolkit/Krypton.Toolkit.Suite.Extended.Software.Updater/Auto Updater/General/CheckSum.cs
@@ -0,0 +1,20 @@
+namespace Krypton.Toolkit.Suite.Extended.Software.Updater
+{
+ ///
+ /// Checksum class to fetch the XML values for checksum.
+ ///
+ public class CheckSum
+ {
+ ///
+ /// Hash of the file.
+ ///
+ [XmlText]
+ public string Value { get; set; }
+
+ ///
+ /// Hash algorithm that generated the hash.
+ ///
+ [XmlAttribute("algorithm")]
+ public string HashingAlgorithm { get; set; }
+ }
+}
\ No newline at end of file
diff --git a/Source/Krypton Toolkit/Krypton.Toolkit.Suite.Extended.Software.Updater/Auto Updater/General/CustomAuthentication.cs b/Source/Krypton Toolkit/Krypton.Toolkit.Suite.Extended.Software.Updater/Auto Updater/General/CustomAuthentication.cs
index 9e6519ee1..ef2c4527a 100644
--- a/Source/Krypton Toolkit/Krypton.Toolkit.Suite.Extended.Software.Updater/Auto Updater/General/CustomAuthentication.cs
+++ b/Source/Krypton Toolkit/Krypton.Toolkit.Suite.Extended.Software.Updater/Auto Updater/General/CustomAuthentication.cs
@@ -1,36 +1,6 @@
-#region License
-
-/*
- * MIT License
- *
- * Copyright (c) 2012 - 2023 RBSoft
- *
- * Permission is hereby granted, free of charge, to any person obtaining a copy
- * of this software and associated documentation files (the "Software"), to deal
- * in the Software without restriction, including without limitation the rights
- * to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
- * copies of the Software, and to permit persons to whom the Software is
- * furnished to do so, subject to the following conditions:
- *
- * The above copyright notice and this permission notice shall be included in all
- * copies or substantial portions of the Software.
- *
- * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
- * IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
- * FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
- * AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
- * LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
- * OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE
- * SOFTWARE.
- */
-
-#endregion
-
-namespace Krypton.Toolkit.Suite.Extended.Software.Updater
+namespace Krypton.Toolkit.Suite.Extended.Software.Updater
{
- ///
- /// Provides Custom Authentication header for web request.
- ///
+ /// Provides Custom Authentication header for web request.
public class CustomAuthentication : IAuthentication
{
///
@@ -45,15 +15,9 @@ public CustomAuthentication(string httpRequestHeaderAuthorizationValue)
private string HttpRequestHeaderAuthorizationValue { get; }
///
- public void Apply(ref MyWebClient? webClient)
- {
- webClient.Headers[HttpRequestHeader.Authorization] = ToString();
- }
+ public void Apply(ref MyWebClient webClient) => webClient.Headers[HttpRequestHeader.Authorization] = ToString();
///
- public override string ToString()
- {
- return HttpRequestHeaderAuthorizationValue;
- }
+ public override string ToString() => HttpRequestHeaderAuthorizationValue;
}
}
\ No newline at end of file
diff --git a/Source/Krypton Toolkit/Krypton.Toolkit.Suite.Extended.Software.Updater/Auto Updater/General/JsonFilePersistenceProvider.cs b/Source/Krypton Toolkit/Krypton.Toolkit.Suite.Extended.Software.Updater/Auto Updater/General/JsonFilePersistenceProvider.cs
index 9aa763186..27ff1d760 100644
--- a/Source/Krypton Toolkit/Krypton.Toolkit.Suite.Extended.Software.Updater/Auto Updater/General/JsonFilePersistenceProvider.cs
+++ b/Source/Krypton Toolkit/Krypton.Toolkit.Suite.Extended.Software.Updater/Auto Updater/General/JsonFilePersistenceProvider.cs
@@ -1,41 +1,9 @@
-#region License
-
-/*
- * MIT License
- *
- * Copyright (c) 2012 - 2023 RBSoft
- *
- * Permission is hereby granted, free of charge, to any person obtaining a copy
- * of this software and associated documentation files (the "Software"), to deal
- * in the Software without restriction, including without limitation the rights
- * to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
- * copies of the Software, and to permit persons to whom the Software is
- * furnished to do so, subject to the following conditions:
- *
- * The above copyright notice and this permission notice shall be included in all
- * copies or substantial portions of the Software.
- *
- * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
- * IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
- * FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
- * AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
- * LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
- * OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE
- * SOFTWARE.
- */
-
-#endregion
-
-namespace Krypton.Toolkit.Suite.Extended.Software.Updater
+namespace Krypton.Toolkit.Suite.Extended.Software.Updater
{
- ///
- /// Provides a mechanism for storing AutoUpdater state between sessions on a Json formatted file.
- ///
+ /// Provides a mechanism for storing AutoUpdater state between sessions on a Json formatted file.
public class JsonFilePersistenceProvider : IPersistenceProvider
{
- ///
- /// Initializes a new instance of the JsonFilePersistenceProvider class.
- ///
+ /// Initializes a new instance of the JsonFilePersistenceProvider class.
/// The path for the Json formatted file must be specified using the FileName property.
public JsonFilePersistenceProvider(string jsonPath)
{
@@ -53,7 +21,7 @@ public JsonFilePersistenceProvider(string jsonPath)
private PersistedValues PersistedValues { get; set; }
///
- public Version GetSkippedVersion()
+ public Version? GetSkippedVersion()
{
return PersistedValues.SkippedVersion;
}
@@ -67,7 +35,7 @@ public Version GetSkippedVersion()
///
public void SetSkippedVersion(Version? version)
{
- PersistedValues.SkippedVersion = version!;
+ PersistedValues.SkippedVersion = version;
Save();
}
diff --git a/Source/Krypton Toolkit/Krypton.Toolkit.Suite.Extended.Software.Updater/Auto Updater/General/Mandatory.cs b/Source/Krypton Toolkit/Krypton.Toolkit.Suite.Extended.Software.Updater/Auto Updater/General/Mandatory.cs
new file mode 100644
index 000000000..3f5315937
--- /dev/null
+++ b/Source/Krypton Toolkit/Krypton.Toolkit.Suite.Extended.Software.Updater/Auto Updater/General/Mandatory.cs
@@ -0,0 +1,28 @@
+namespace Krypton.Toolkit.Suite.Extended.Software.Updater
+{
+
+ ///
+ /// Mandatory class to fetch the XML values related to Mandatory field.
+ ///
+ public class Mandatory
+ {
+ ///
+ /// Value of the Mandatory field.
+ ///
+ [XmlText]
+ public bool Value { get; set; }
+
+ ///
+ /// If this is set and 'Value' property is set to true then it will trigger the mandatory update only when current
+ /// installed version is less than value of this property.
+ ///
+ [XmlAttribute("minVersion")]
+ public string MinimumVersion { get; set; }
+
+ ///
+ /// Mode that should be used for this update.
+ ///
+ [XmlAttribute("mode")]
+ public Mode UpdateMode { get; set; }
+ }
+}
\ No newline at end of file
diff --git a/Source/Krypton Toolkit/Krypton.Toolkit.Suite.Extended.Software.Updater/Auto Updater/General/NetworkAuthentication.cs b/Source/Krypton Toolkit/Krypton.Toolkit.Suite.Extended.Software.Updater/Auto Updater/General/NetworkAuthentication.cs
deleted file mode 100644
index 6c5ff6372..000000000
--- a/Source/Krypton Toolkit/Krypton.Toolkit.Suite.Extended.Software.Updater/Auto Updater/General/NetworkAuthentication.cs
+++ /dev/null
@@ -1,57 +0,0 @@
-#region License
-
-/*
- * MIT License
- *
- * Copyright (c) 2012 - 2023 RBSoft
- *
- * Permission is hereby granted, free of charge, to any person obtaining a copy
- * of this software and associated documentation files (the "Software"), to deal
- * in the Software without restriction, including without limitation the rights
- * to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
- * copies of the Software, and to permit persons to whom the Software is
- * furnished to do so, subject to the following conditions:
- *
- * The above copyright notice and this permission notice shall be included in all
- * copies or substantial portions of the Software.
- *
- * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
- * IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
- * FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
- * AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
- * LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
- * OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE
- * SOFTWARE.
- */
-
-#endregion
-
-namespace Krypton.Toolkit.Suite.Extended.Software.Updater
-{
- ///
- /// Provides credentials for Network Authentication.
- ///
- public class NetworkAuthentication : IAuthentication
- {
- ///
- /// Initializes credentials for Network Authentication.
- ///
- /// Username to use for Network Authentication
- /// Password to use for Network Authentication
- public NetworkAuthentication(string username, string password)
- {
- Username = username;
- Password = password;
- }
-
- private string Username { get; }
-
- private string Password { get; }
-
- ///
- public void Apply(ref MyWebClient? webClient)
- {
- webClient.Credentials = new NetworkCredential(Username, Password);
- }
- }
-}
\ No newline at end of file
diff --git a/Source/Krypton Toolkit/Krypton.Toolkit.Suite.Extended.Software.Updater/Auto Updater/General/ParseUpdateInfoEventArgs.cs b/Source/Krypton Toolkit/Krypton.Toolkit.Suite.Extended.Software.Updater/Auto Updater/General/ParseUpdateInfoEventArgs.cs
index ab75776e0..65f42cb38 100644
--- a/Source/Krypton Toolkit/Krypton.Toolkit.Suite.Extended.Software.Updater/Auto Updater/General/ParseUpdateInfoEventArgs.cs
+++ b/Source/Krypton Toolkit/Krypton.Toolkit.Suite.Extended.Software.Updater/Auto Updater/General/ParseUpdateInfoEventArgs.cs
@@ -1,32 +1,4 @@
-#region License
-
-/*
- * MIT License
- *
- * Copyright (c) 2012 - 2023 RBSoft
- *
- * Permission is hereby granted, free of charge, to any person obtaining a copy
- * of this software and associated documentation files (the "Software"), to deal
- * in the Software without restriction, including without limitation the rights
- * to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
- * copies of the Software, and to permit persons to whom the Software is
- * furnished to do so, subject to the following conditions:
- *
- * The above copyright notice and this permission notice shall be included in all
- * copies or substantial portions of the Software.
- *
- * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
- * IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
- * FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
- * AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
- * LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
- * OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE
- * SOFTWARE.
- */
-
-#endregion
-
-namespace Krypton.Toolkit.Suite.Extended.Software.Updater
+namespace Krypton.Toolkit.Suite.Extended.Software.Updater
{
///
/// An object of this class contains the AppCast file received from server.
@@ -50,6 +22,6 @@ public ParseUpdateInfoEventArgs(string remoteData)
///
/// Set this object with values received from the AppCast file.
///
- public UpdateInfoEventArgs? UpdateInfo { get; set; }
+ public UpdateInfoEventArgs UpdateInfo { get; set; }
}
}
\ No newline at end of file
diff --git a/Source/Krypton Toolkit/Krypton.Toolkit.Suite.Extended.Software.Updater/Auto Updater/General/PasteArguments.cs b/Source/Krypton Toolkit/Krypton.Toolkit.Suite.Extended.Software.Updater/Auto Updater/General/PasteArguments.cs
new file mode 100644
index 000000000..8c657805d
--- /dev/null
+++ b/Source/Krypton Toolkit/Krypton.Toolkit.Suite.Extended.Software.Updater/Auto Updater/General/PasteArguments.cs
@@ -0,0 +1,85 @@
+namespace Krypton.Toolkit.Suite.Extended.Software.Updater
+{
+ internal static class PasteArguments
+ {
+ private const char Quote = '\"';
+ private const char Backslash = '\\';
+
+ internal static void AppendArgument(ref StringBuilder stringBuilder, string? argument)
+ {
+ if (stringBuilder.Length != 0)
+ {
+ stringBuilder.Append(' ');
+ }
+
+ // Parsing rules for non-argv[0] arguments:
+ // - Backslash is a normal character except followed by a quote.
+ // - 2N backslashes followed by a quote ==> N literal backslashes followed by unescaped quote
+ // - 2N+1 backslashes followed by a quote ==> N literal backslashes followed by a literal quote
+ // - Parsing stops at first whitespace outside of quoted region.
+ // - (post 2008 rule): A closing quote followed by another quote ==> literal quote, and parsing remains in quoting mode.
+ if (argument.Length != 0 && ContainsNoWhitespaceOrQuotes(argument))
+ {
+ // Simple case - no quoting or changes needed.
+ stringBuilder.Append(argument);
+ }
+ else
+ {
+ stringBuilder.Append(Quote);
+ var idx = 0;
+ while (idx < argument.Length)
+ {
+ char c = argument[idx++];
+ switch (c)
+ {
+ case Backslash:
+ {
+ var numBackSlash = 1;
+ while (idx < argument.Length && argument[idx] == Backslash)
+ {
+ idx++;
+ numBackSlash++;
+ }
+
+ if (idx == argument.Length)
+ {
+ // We'll emit an end quote after this so must double the number of backslashes.
+ stringBuilder.Append(Backslash, numBackSlash * 2);
+ }
+ else if (argument[idx] == Quote)
+ {
+ // Backslashes will be followed by a quote. Must double the number of backslashes.
+ stringBuilder.Append(Backslash, numBackSlash * 2 + 1);
+ stringBuilder.Append(Quote);
+ idx++;
+ }
+ else
+ {
+ // Backslash will not be followed by a quote, so emit as normal characters.
+ stringBuilder.Append(Backslash, numBackSlash);
+ }
+
+ continue;
+ }
+ case Quote:
+ // Escape the quote so it appears as a literal. This also guarantees that we won't end up generating a closing quote followed
+ // by another quote (which parses differently pre-2008 vs. post-2008.)
+ stringBuilder.Append(Backslash);
+ stringBuilder.Append(Quote);
+ continue;
+ default:
+ stringBuilder.Append(c);
+ break;
+ }
+ }
+
+ stringBuilder.Append(Quote);
+ }
+ }
+
+ private static bool ContainsNoWhitespaceOrQuotes(string? s)
+ {
+ return s.All(c => !char.IsWhiteSpace(c) && c != Quote);
+ }
+ }
+}
\ No newline at end of file
diff --git a/Source/Krypton Toolkit/Krypton.Toolkit.Suite.Extended.Software.Updater/Auto Updater/General/PersistedValues.cs b/Source/Krypton Toolkit/Krypton.Toolkit.Suite.Extended.Software.Updater/Auto Updater/General/PersistedValues.cs
index f361a3c14..4d687f4ff 100644
--- a/Source/Krypton Toolkit/Krypton.Toolkit.Suite.Extended.Software.Updater/Auto Updater/General/PersistedValues.cs
+++ b/Source/Krypton Toolkit/Krypton.Toolkit.Suite.Extended.Software.Updater/Auto Updater/General/PersistedValues.cs
@@ -1,32 +1,4 @@
-#region License
-
-/*
- * MIT License
- *
- * Copyright (c) 2012 - 2023 RBSoft
- *
- * Permission is hereby granted, free of charge, to any person obtaining a copy
- * of this software and associated documentation files (the "Software"), to deal
- * in the Software without restriction, including without limitation the rights
- * to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
- * copies of the Software, and to permit persons to whom the Software is
- * furnished to do so, subject to the following conditions:
- *
- * The above copyright notice and this permission notice shall be included in all
- * copies or substantial portions of the Software.
- *
- * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
- * IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
- * FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
- * AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
- * LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
- * OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE
- * SOFTWARE.
- */
-
-#endregion
-
-namespace Krypton.Toolkit.Suite.Extended.Software.Updater
+namespace Krypton.Toolkit.Suite.Extended.Software.Updater
{
///
/// Provides way to serialize and deserialize AutoUpdater persisted values.
@@ -39,7 +11,7 @@ public class PersistedValues
///
/// The SetSkippedVersion function sets this property and calls the Save() method for making changes permanent.
[DataMember]
- public Version SkippedVersion { get; set; }
+ public Version? SkippedVersion { get; set; }
///
/// Date and time at which the user must be given again the possibility to upgrade the application.
diff --git a/Source/Krypton Toolkit/Krypton.Toolkit.Suite.Extended.Software.Updater/Auto Updater/General/RegistryPersistenceProvider.cs b/Source/Krypton Toolkit/Krypton.Toolkit.Suite.Extended.Software.Updater/Auto Updater/General/RegistryPersistenceProvider.cs
index 2a92f0a9b..0b78ff885 100644
--- a/Source/Krypton Toolkit/Krypton.Toolkit.Suite.Extended.Software.Updater/Auto Updater/General/RegistryPersistenceProvider.cs
+++ b/Source/Krypton Toolkit/Krypton.Toolkit.Suite.Extended.Software.Updater/Auto Updater/General/RegistryPersistenceProvider.cs
@@ -1,41 +1,13 @@
-#region License
-
-/*
- * MIT License
- *
- * Copyright (c) 2012 - 2023 RBSoft
- *
- * Permission is hereby granted, free of charge, to any person obtaining a copy
- * of this software and associated documentation files (the "Software"), to deal
- * in the Software without restriction, including without limitation the rights
- * to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
- * copies of the Software, and to permit persons to whom the Software is
- * furnished to do so, subject to the following conditions:
- *
- * The above copyright notice and this permission notice shall be included in all
- * copies or substantial portions of the Software.
- *
- * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
- * IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
- * FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
- * AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
- * LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
- * OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE
- * SOFTWARE.
- */
-
-#endregion
-
-namespace Krypton.Toolkit.Suite.Extended.Software.Updater
+namespace Krypton.Toolkit.Suite.Extended.Software.Updater
{
///
/// Provides a mechanism for storing AutoUpdater state between sessions based on storing data on the Windows Registry.
///
public class RegistryPersistenceProvider : IPersistenceProvider
{
- private const string REMIND_LATER_VALUE_NAME = "RemindLaterAt";
+ private const string RemindLaterValueName = "RemindLaterAt";
- private const string SKIPPED_VERSION_VALUE_NAME = "SkippedVersion";
+ private const string SkippedVersionValueName = "SkippedVersion";
///
/// Initializes a new instance of the RegistryPersistenceProvider class indicating the path for the Windows registry
@@ -57,8 +29,8 @@ public RegistryPersistenceProvider(string registryLocation)
{
try
{
- using RegistryKey? updateKey = Registry.CurrentUser.OpenSubKey(RegistryLocation);
- object? skippedVersionValue = updateKey?.GetValue(SKIPPED_VERSION_VALUE_NAME);
+ using RegistryKey updateKey = Registry.CurrentUser.OpenSubKey(RegistryLocation);
+ object skippedVersionValue = updateKey?.GetValue(SkippedVersionValueName);
if (skippedVersionValue != null)
{
@@ -77,8 +49,8 @@ public RegistryPersistenceProvider(string registryLocation)
///
public DateTime? GetRemindLater()
{
- using RegistryKey? updateKey = Registry.CurrentUser.OpenSubKey(RegistryLocation);
- object? remindLaterValue = updateKey?.GetValue(REMIND_LATER_VALUE_NAME);
+ using RegistryKey updateKey = Registry.CurrentUser.OpenSubKey(RegistryLocation);
+ object remindLaterValue = updateKey?.GetValue(RemindLaterValueName);
if (remindLaterValue == null)
{
@@ -101,15 +73,15 @@ public RegistryPersistenceProvider(string registryLocation)
///
public void SetSkippedVersion(Version? version)
{
- using RegistryKey? autoUpdaterKey = Registry.CurrentUser.CreateSubKey(RegistryLocation);
- autoUpdaterKey?.SetValue(SKIPPED_VERSION_VALUE_NAME, version != null ? version.ToString() : string.Empty);
+ using RegistryKey autoUpdaterKey = Registry.CurrentUser.CreateSubKey(RegistryLocation);
+ autoUpdaterKey?.SetValue(SkippedVersionValueName, version != null ? version.ToString() : string.Empty);
}
///
public void SetRemindLater(DateTime? remindLaterAt)
{
- using RegistryKey? autoUpdaterKey = Registry.CurrentUser.CreateSubKey(RegistryLocation);
- autoUpdaterKey?.SetValue(REMIND_LATER_VALUE_NAME,
+ using RegistryKey autoUpdaterKey = Registry.CurrentUser.CreateSubKey(RegistryLocation);
+ autoUpdaterKey?.SetValue(RemindLaterValueName,
remindLaterAt != null
? remindLaterAt.Value.ToString(CultureInfo.CreateSpecificCulture("en-US").DateTimeFormat)
: string.Empty);
diff --git a/Source/Krypton Toolkit/Krypton.Toolkit.Suite.Extended.Software.Updater/Auto Updater/General/UpdateInfoEventArgs.cs b/Source/Krypton Toolkit/Krypton.Toolkit.Suite.Extended.Software.Updater/Auto Updater/General/UpdateInfoEventArgs.cs
index 2a1994a74..7fac682de 100644
--- a/Source/Krypton Toolkit/Krypton.Toolkit.Suite.Extended.Software.Updater/Auto Updater/General/UpdateInfoEventArgs.cs
+++ b/Source/Krypton Toolkit/Krypton.Toolkit.Suite.Extended.Software.Updater/Auto Updater/General/UpdateInfoEventArgs.cs
@@ -1,32 +1,4 @@
-#region License
-
-/*
- * MIT License
- *
- * Copyright (c) 2012 - 2023 RBSoft
- *
- * Permission is hereby granted, free of charge, to any person obtaining a copy
- * of this software and associated documentation files (the "Software"), to deal
- * in the Software without restriction, including without limitation the rights
- * to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
- * copies of the Software, and to permit persons to whom the Software is
- * furnished to do so, subject to the following conditions:
- *
- * The above copyright notice and this permission notice shall be included in all
- * copies or substantial portions of the Software.
- *
- * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
- * IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
- * FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
- * AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
- * LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
- * OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE
- * SOFTWARE.
- */
-
-#endregion
-
-namespace Krypton.Toolkit.Suite.Extended.Software.Updater
+namespace Krypton.Toolkit.Suite.Extended.Software.Updater
{
///
/// Object of this class gives you all the details about the update useful in handling the update logic yourself.
@@ -107,7 +79,7 @@ public string ChangelogURL
/// Checksum of the update file.
///
[XmlElement("checksum")]
- public CheckSum? CheckSum { get; set; }
+ public CheckSum CheckSum { get; set; }
internal static string GetURL(Uri baseUri, string url)
{
@@ -124,47 +96,4 @@ internal static string GetURL(Uri baseUri, string url)
return url;
}
}
-
- ///
- /// Mandatory class to fetch the XML values related to Mandatory field.
- ///
- public class Mandatory
- {
- ///
- /// Value of the Mandatory field.
- ///
- [XmlText]
- public bool Value { get; set; }
-
- ///
- /// If this is set and 'Value' property is set to true then it will trigger the mandatory update only when current
- /// installed version is less than value of this property.
- ///
- [XmlAttribute("minVersion")]
- public string MinimumVersion { get; set; }
-
- ///
- /// Mode that should be used for this update.
- ///
- [XmlAttribute("mode")]
- public UpdateMode UpdateMode { get; set; }
- }
-
- ///
- /// Checksum class to fetch the XML values for checksum.
- ///
- public class CheckSum
- {
- ///
- /// Hash of the file.
- ///
- [XmlText]
- public string Value { get; set; }
-
- ///
- /// Hash algorithm that generated the hash.
- ///
- [XmlAttribute("algorithm")]
- public string HashingAlgorithm { get; set; }
- }
}
\ No newline at end of file
diff --git a/Source/Krypton Toolkit/Krypton.Toolkit.Suite.Extended.Software.Updater/Auto Updater/General/Utilities.cs b/Source/Krypton Toolkit/Krypton.Toolkit.Suite.Extended.Software.Updater/Auto Updater/General/Utilities.cs
index 39127cc62..feab2dd19 100644
--- a/Source/Krypton Toolkit/Krypton.Toolkit.Suite.Extended.Software.Updater/Auto Updater/General/Utilities.cs
+++ b/Source/Krypton Toolkit/Krypton.Toolkit.Suite.Extended.Software.Updater/Auto Updater/General/Utilities.cs
@@ -1,34 +1,6 @@
-#region License
-
-/*
- * MIT License
- *
- * Copyright (c) 2012 - 2023 RBSoft
- *
- * Permission is hereby granted, free of charge, to any person obtaining a copy
- * of this software and associated documentation files (the "Software"), to deal
- * in the Software without restriction, including without limitation the rights
- * to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
- * copies of the Software, and to permit persons to whom the Software is
- * furnished to do so, subject to the following conditions:
- *
- * The above copyright notice and this permission notice shall be included in all
- * copies or substantial portions of the Software.
- *
- * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
- * IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
- * FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
- * AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
- * LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
- * OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE
- * SOFTWARE.
- */
-
-#endregion
-
-namespace Krypton.Toolkit.Suite.Extended.Software.Updater
+namespace Krypton.Toolkit.Suite.Extended.Software.Updater
{
- internal static class Utils
+ internal static class Utilities
{
public static string BuildArguments(Collection argumentList)
{
@@ -42,87 +14,4 @@ public static string BuildArguments(Collection argumentList)
return arguments.ToString();
}
}
-
- internal static class PasteArguments
- {
- private const char QUOTE = '\"';
- private const char BACKSLASH = '\\';
-
- internal static void AppendArgument(ref StringBuilder stringBuilder, string? argument)
- {
- if (stringBuilder.Length != 0)
- {
- stringBuilder.Append(' ');
- }
-
- // Parsing rules for non-argv[0] arguments:
- // - Backslash is a normal character except followed by a quote.
- // - 2N backslashes followed by a quote ==> N literal backslashes followed by unescaped quote
- // - 2N+1 backslashes followed by a quote ==> N literal backslashes followed by a literal quote
- // - Parsing stops at first whitespace outside of quoted region.
- // - (post 2008 rule): A closing quote followed by another quote ==> literal quote, and parsing remains in quoting mode.
- if (argument.Length != 0 && ContainsNoWhitespaceOrQuotes(argument))
- {
- // Simple case - no quoting or changes needed.
- stringBuilder.Append(argument);
- }
- else
- {
- stringBuilder.Append(QUOTE);
- var idx = 0;
- while (idx < argument.Length)
- {
- char c = argument[idx++];
- switch (c)
- {
- case BACKSLASH:
- {
- var numBackSlash = 1;
- while (idx < argument.Length && argument[idx] == BACKSLASH)
- {
- idx++;
- numBackSlash++;
- }
-
- if (idx == argument.Length)
- {
- // We'll emit an end quote after this so must double the number of backslashes.
- stringBuilder.Append(BACKSLASH, numBackSlash * 2);
- }
- else if (argument[idx] == QUOTE)
- {
- // Backslashes will be followed by a quote. Must double the number of backslashes.
- stringBuilder.Append(BACKSLASH, numBackSlash * 2 + 1);
- stringBuilder.Append(QUOTE);
- idx++;
- }
- else
- {
- // Backslash will not be followed by a quote, so emit as normal characters.
- stringBuilder.Append(BACKSLASH, numBackSlash);
- }
-
- continue;
- }
- case QUOTE:
- // Escape the quote so it appears as a literal. This also guarantees that we won't end up generating a closing quote followed
- // by another quote (which parses differently pre-2008 vs. post-2008.)
- stringBuilder.Append(BACKSLASH);
- stringBuilder.Append(QUOTE);
- continue;
- default:
- stringBuilder.Append(c);
- break;
- }
- }
-
- stringBuilder.Append(QUOTE);
- }
- }
-
- private static bool ContainsNoWhitespaceOrQuotes(string? s)
- {
- return s.All(c => !char.IsWhiteSpace(c) && c != QUOTE);
- }
- }
-}
\ No newline at end of file
+}
diff --git a/Source/Krypton Toolkit/Krypton.Toolkit.Suite.Extended.Software.Updater/Auto Updater/General/Wpf32Window.cs b/Source/Krypton Toolkit/Krypton.Toolkit.Suite.Extended.Software.Updater/Auto Updater/General/Wpf32Window.cs
index a0586af86..64888587e 100644
--- a/Source/Krypton Toolkit/Krypton.Toolkit.Suite.Extended.Software.Updater/Auto Updater/General/Wpf32Window.cs
+++ b/Source/Krypton Toolkit/Krypton.Toolkit.Suite.Extended.Software.Updater/Auto Updater/General/Wpf32Window.cs
@@ -1,32 +1,4 @@
-#region License
-
-/*
- * MIT License
- *
- * Copyright (c) 2012 - 2023 RBSoft
- *
- * Permission is hereby granted, free of charge, to any person obtaining a copy
- * of this software and associated documentation files (the "Software"), to deal
- * in the Software without restriction, including without limitation the rights
- * to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
- * copies of the Software, and to permit persons to whom the Software is
- * furnished to do so, subject to the following conditions:
- *
- * The above copyright notice and this permission notice shall be included in all
- * copies or substantial portions of the Software.
- *
- * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
- * IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
- * FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
- * AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
- * LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
- * OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE
- * SOFTWARE.
- */
-
-#endregion
-
-using IWin32Window = System.Windows.Forms.IWin32Window;
+using IWin32Window = System.Windows.Forms.IWin32Window;
namespace Krypton.Toolkit.Suite.Extended.Software.Updater
{
diff --git a/Source/Krypton Toolkit/Krypton.Toolkit.Suite.Extended.Software.Updater/Auto Updater/Interfaces/IAuthentication.cs b/Source/Krypton Toolkit/Krypton.Toolkit.Suite.Extended.Software.Updater/Auto Updater/Interfaces/IAuthentication.cs
index cfe68071d..d1c6edb4f 100644
--- a/Source/Krypton Toolkit/Krypton.Toolkit.Suite.Extended.Software.Updater/Auto Updater/Interfaces/IAuthentication.cs
+++ b/Source/Krypton Toolkit/Krypton.Toolkit.Suite.Extended.Software.Updater/Auto Updater/Interfaces/IAuthentication.cs
@@ -1,38 +1,10 @@
-#region License
-
-/*
- * MIT License
- *
- * Copyright (c) 2012 - 2023 RBSoft
- *
- * Permission is hereby granted, free of charge, to any person obtaining a copy
- * of this software and associated documentation files (the "Software"), to deal
- * in the Software without restriction, including without limitation the rights
- * to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
- * copies of the Software, and to permit persons to whom the Software is
- * furnished to do so, subject to the following conditions:
- *
- * The above copyright notice and this permission notice shall be included in all
- * copies or substantial portions of the Software.
- *
- * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
- * IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
- * FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
- * AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
- * LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
- * OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE
- * SOFTWARE.
- */
-
-#endregion
-
-namespace Krypton.Toolkit.Suite.Extended.Software.Updater
+namespace Krypton.Toolkit.Suite.Extended.Software.Updater
{
/// Interface for authentication.
public interface IAuthentication
{
/// Apply the authentication to webclient.
/// WebClient for which you want to use this authentication method.
- void Apply(ref MyWebClient? webClient);
+ void Apply(ref MyWebClient webClient);
}
}
\ No newline at end of file
diff --git a/Source/Krypton Toolkit/Krypton.Toolkit.Suite.Extended.Software.Updater/Auto Updater/Interfaces/IPersistenceProvider.cs b/Source/Krypton Toolkit/Krypton.Toolkit.Suite.Extended.Software.Updater/Auto Updater/Interfaces/IPersistenceProvider.cs
index 44ee2f21e..2b6842cb3 100644
--- a/Source/Krypton Toolkit/Krypton.Toolkit.Suite.Extended.Software.Updater/Auto Updater/Interfaces/IPersistenceProvider.cs
+++ b/Source/Krypton Toolkit/Krypton.Toolkit.Suite.Extended.Software.Updater/Auto Updater/Interfaces/IPersistenceProvider.cs
@@ -1,32 +1,4 @@
-#region License
-
-/*
- * MIT License
- *
- * Copyright (c) 2012 - 2023 RBSoft
- *
- * Permission is hereby granted, free of charge, to any person obtaining a copy
- * of this software and associated documentation files (the "Software"), to deal
- * in the Software without restriction, including without limitation the rights
- * to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
- * copies of the Software, and to permit persons to whom the Software is
- * furnished to do so, subject to the following conditions:
- *
- * The above copyright notice and this permission notice shall be included in all
- * copies or substantial portions of the Software.
- *
- * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
- * IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
- * FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
- * AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
- * LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
- * OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE
- * SOFTWARE.
- */
-
-#endregion
-
-namespace Krypton.Toolkit.Suite.Extended.Software.Updater
+namespace Krypton.Toolkit.Suite.Extended.Software.Updater
{
///
/// Provides a mechanism for storing AutoUpdater state between sessions.
diff --git a/Source/Krypton Toolkit/Krypton.Toolkit.Suite.Extended.Software.Updater/Auto Updater/UX/DownloadUpdateDialog.resx b/Source/Krypton Toolkit/Krypton.Toolkit.Suite.Extended.Software.Updater/Auto Updater/UX/DownloadUpdateDialog.resx
deleted file mode 100644
index b791cc9f1..000000000
--- a/Source/Krypton Toolkit/Krypton.Toolkit.Suite.Extended.Software.Updater/Auto Updater/UX/DownloadUpdateDialog.resx
+++ /dev/null
@@ -1,338 +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
-
-
-
-
- iVBORw0KGgoAAAANSUhEUgAAAecAAABqCAYAAACGVJnmAAAAAXNSR0IArs4c6QAAAARnQU1BAACxjwv8
- YQUAAAAJcEhZcwAADsMAAA7DAcdvqGQAAAJCSURBVHhe7dixbcRADABBt6sa3YPLcBtviIAz5txggsH/
- iQUsyK/neT6v75/f+fX29vb29va+fU+c3z8AwL23y1/bAAC4MXG2OQNAhzgDQJA4A0DIbM7bAAC44awN
- ADHiDABB4gwAIbM5bwMA4IazNgDEiDMABIkzAITM5rwNAIAbztoAECPOABAkzgAQMpvzNgAAbjhrA0CM
- OANAkDgDQMhsztsAALjhrA0AMeIMAEHiDAAhszlvAwDghrM2AMSIMwAEiTMAhMzmvA0AgBvO2gAQI84A
- ECTOABAym/M2AABuOGsDQIw4A0CQOANAyGzO2wAAuOGsDQAx4gwAQeIMACGzOW8DAOCGszYAxIgzAASJ
- MwCEzOa8DQCAG87aABAjzgAQJM4AEDKb8zYAAG44awNAjDgDQJA4A0DIbM7bAAC44awNADHiDABB4gwA
- IbM5bwMA4IazNgDEiDMABIkzAITM5rwNAIAbztoAECPOABAkzgAQMpvzNgAAbjhrA0CMOANAkDgDQMhs
- ztsAALjhrA0AMeIMAEHiDAAhszlvAwDghrM2AMSIMwAEiTMAhMzmvA0AgBvO2gAQI84AECTOABAym/M2
- AABuOGsDQIw4A0CQOANAyGzO2wAAuOGsDQAx4gwAQeIMACGzOW8DAOCGszYAxIgzAASJMwCEzOa8DQCA
- G87aABAjzgAQJM4AEDKb8zYAAG44awNAjDgDQJA4A0DIbM7bAAC44awNADHiDABBE+d/7wdvb29vb2/v
- y/fz+QMdbpRq6Lt8mwAAAABJRU5ErkJggg==
-
-
-
-
- iVBORw0KGgoAAAANSUhEUgAAAZsAAABkCAYAAABQK52AAAAAAXNSR0IArs4c6QAAAARnQU1BAACxjwv8
- YQUAAAAJcEhZcwAADsMAAA7DAcdvqGQAAAJYSURBVHhe7dmxTURREARBkr+oyIEwSOPQ4SHdeL0WZZTg
- Y2CM01q9j8fj8Xz5/Pr+/en7vfr/+/bt2/d/+v6NzesX/rILQOfj3R8RG4CSywaAc2Iz2AWgIzaDXQA6
- 3mwGsQHouGwAOCc2g10AOmIz2AWg481mEBuAjssGgHNiM9gFoCM2g10AOt5sBrEB6LhsADgnNoNdADpi
- M9gFoOPNZhAbgI7LBoBzYjPYBaAjNoNdADrebAaxAei4bAA4JzaDXQA6YjPYBaDjzWYQG4COywaAc2Iz
- 2AWgIzaDXQA63mwGsQHouGwAOCc2g10AOmIz2AWg481mEBuAjssGgHNiM9gFoCM2g10AOt5sBrEB6Lhs
- ADgnNoNdADpiM9gFoOPNZhAbgI7LBoBzYjPYBaAjNoNdADrebAaxAei4bAA4JzaDXQA6YjPYBaDjzWYQ
- G4COywaAc2Iz2AWgIzaDXQA63mwGsQHouGwAOCc2g10AOmIz2AWg481mEBuAjssGgHNiM9gFoCM2g10A
- Ot5sBrEB6LhsADgnNoNdADpiM9gFoOPNZhAbgI7LBoBzYjPYBaAjNoNdADrebAaxAei4bAA4JzaDXQA6
- YjPYBaDjzWYQG4COywaAc2Iz2AWgIzaDXQA63mwGsQHouGwAOCc2g10AOmIz2AWg481mEBuAjssGgHNi
- M9gFoCM2g10AOt5sBrEB6LhsADgnNoNdADpiM9gFoOPNZhAbgI7LBoBzYjPYBaAjNoNdADrebAaxAei4
- bAA4JzaDXQA6YjPYBaAjNoNdADpiA8Cx7+cPw6MvlGnjiuUAAAAASUVORK5CYII=
-
-
-
-
- AAABAAIAEBAAAAAAIABoBAAAJgAAADAwAAAAACAAqCUAAI4EAAAoAAAAEAAAACAAAAABACAAAAAAAAAE
- AADXDQAA1w0AAAAAAAAAAAAA////AP///wD///8A////AP///wD///8A////AABczlIAXM5i////AP//
- /wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AABczg8BXs/tAV3P9ABc
- zhf///8A////AP///wD///8A////AP///wD///8A////AABczmIAXM5rAFzOMwBczgUAXc+fDW3a9xBx
- 3fkBXtCwAFzOAwBczjAAXM5nAFzOb////wD///8A////AP///wAAXM50A1/Q/Adi0PoBXs/6A1/Q+h+I
- 8v8givP/BWHR+QFez/kGYdD7BGHR/ABczoz///8A////AP///wD///8AAFzOPAVh0fcji/b/I4fw/yCF
- 7v8Xhfb/E4P2/yGF7/8ih/D/I4v2/whl1PMAXM5Q////AP///wD///8A////AABczgkAXM78K43y/xWG
- 9v8Thfb/a7T6/2q0+v8Thfb/EoT1/y+S9f8BXc7+AFzOFv///wD///8A////AABczhUAXc+nB2LQ+jST
- 8f8fjff/bbf7/83q///N6v//bbf7/xmK9v83lvT/CmTS+QFe0LMAXM4a////AABczmMCXs/zIHrf+EWf
- 9v80mvj/crr7/83q///N6v//zer//83q//9xuvv/MZj4/0ah9v8lf+H6Al7P9gBczm8AXM5jAV3P8yJ7
- 3/hOpvf/QaL5/x+S+P8bkPj/zer//83q//8bkPj/HZH4/z2h+f9QqPf/JoDi+gJez/YAXM5v////AABc
- zhUBXs+nCGPR+lKm9P85ofn/IZb4/83q///N6v//IZb4/zKe+f9Xq/X/C2XT+QJf0LMAXM4a////AP//
- /wD///8AAFzOCQBdzvxisvb/Qaj6/0Cn+v+/5P7/v+T+/0Cn+v8+pvr/aLj5/wNez/4AXM4W////AP//
- /wD///8A////AABczjwQaNP3dcH8/2y49v9ms/T/Xrf7/1e0+/9otPX/a7f2/3TB+/8cc9j0AFzOUP//
- /wD///8A////AP///wAAXM50CmPR/BJp0/oCXs/6CmTR+nG9+f90wPr/EGjS+QFdz/kPZ9L7DWbS/ABc
- zoz///8A////AP///wD///8AAFzOYgBczmsAXM4zAFzOBQJfz54xhd/4PI7j+QJf0LAAXM4DAFzOMABc
- zmcAXM5v////AP///wD///8A////AP///wD///8A////AP///wAAXM4PAl/P7QRfz/QAXM4X////AP//
- /wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AABczlAAXM5g////AP//
- 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
- 9f8EffX/BH31/wR99f8EffX/BH31/wR99f8EffX/BH31/wR99f8EffX/BH31/wR99f8EffX/BH31/wR9
- 9f8EffX/BH31/xmI9/8df+n/AF3O1gAAAAsAAAAIAAAABQAAAAMAAAACAAAAAQAAAAAAAAAAAAAAAAAA
- AAAAAAAAAAAAAAAAAAAAAAAAAAAAAQAAAAEAAAACAAAABABZyG8Ladj1KI/2/wJ79f8Ce/X/Anv1/wJ7
- 9f8Ce/X/Anv1/wJ79f8Ce/X/Anv1/wJ79f8Ce/X/Anv1/wJ79f8Ce/X/Anv1/wJ79f8Ce/X/Anv1/wJ7
- 9f8Ce/X/Anv1/wJ79f8Ce/X/Anv1/yGL9v8Uc9/8AFnHlwAAAAkAAAAGAAAABAAAAAIAAAABAAAAAQAA
- AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAEAAAACAAAAAwBWwjUCXs/8LZD2/wd9
- 9f8BevX/AXn1/wB59f8AefX/AHn1/wB59f8AefX/AHn1/wB59f8AefX/AHn1/xSF9v8AefX/AHn1/wB5
- 9f8AefX/AHn1/wB59f8BefX/AXn1/wF69f8BevX/Anv1/yuQ9/8KZtX1AFfCXAAAAAYAAAAEAAAAAwAA
- AAIAAAABAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAABAAAAAgA1
- dwcAXM/4KIrw/xSE9v8De/X/A3v1/wJ79f8Ce/X/Anv1/wJ79f8Ce/X/Anv1/wJ79f8Ce/X/RaT6/43P
- /v9NqPn/A3z1/wJ79f8Ce/X/Anv1/wJ79f8Ce/X/A3v1/wN79f8De/X/C3/1/y+R9P8CXc7/AE6vIwAA
- AAQAAAADAAAAAgAAAAEAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
- AAAAAAAAAAAAAQAAAAEAXc/IIH/o/yCL9/8Fffb/BX32/wV99v8Fffb/BX32/wV99v8Fffb/BX32/wuA
- 9v9gtPv/jtD+/47Q/v+O0P7/YLT7/wmA9v8Fffb/BX32/wV99v8Fffb/BX32/wV99v8Fffb/GYf3/ymJ
- 7v8AXc/tAAAAAwAAAAIAAAABAAAAAQAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
- AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAEAXM2XGHTe+iyS9/8Hf/b/B3/2/wd/9v8Hf/b/B3/2/wd/
- 9v8Hf/b/F4j3/3TA/P+O0P7/jtD+/47Q/v+O0P7/jtD+/2+9/P8Rhff/B3/2/wd/9v8Hf/b/B3/2/wd/
- 9v8Hf/b/I473/yJ/5v8AXc7EAAAAAgAAAAEAAAABAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
- AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAFzOFABdz6YHYdD8Lojo/iKO9/8Jgfb/CYH2/wmB
- 9v8Jgfb/CYH2/wmB9v8plPj/g8n9/47Q/v+O0P7/jtD+/47Q/v+O0P7/jtD+/47Q/v96xf3/HIz3/wmB
- 9v8Jgfb/CYH2/wmB9v8Jgfb/GIn3/zWP7f8LZdL6AF3PwQBcziIAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
- AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAXM5fAV7P8hx02/k7l/P/LJT3/w+E
- 9v8Mg/b/DIP2/wyD9v8Mg/b/DIP2/0Ci+v+Lz/7/jtD+/47Q/v+O0P7/jtD+/47Q/v+O0P7/jtD+/47Q
- /v+O0P7/hMr9/ymU+P8Mg/b/DIP2/wyD9v8Mg/b/DYP2/yeR9/89mfX/I3zf+wNf0PoAXM54AFzOBAAA
- AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAFzOJQFe0MUMZdL5NI3r/zyc
- +f8djfj/DoX3/w6F9/8Ohff/DoX3/w6F9/8Qhvf/WbH7/47Q/v+O0P7/jtD+/47Q/v+O0P7/jtD+/47Q
- /v+O0P7/jtD+/47Q/v+O0P7/jtD+/4rN/v85nvr/DoX3/w6F9/8Ohff/DoX3/w6F9/8Xivf/OJr4/zqT
- 7/8TbNX4AV7Q2ABczjYAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAABczgUAXc9+Al7P+yZ+
- 4PxEnvb/Lpb4/xKI9/8Qh/f/EIf3/xCH9/8Qh/f/EIf3/xiM+P9qvPz/is7+/4rO/v+Lz/7/jtD+/47Q
- /v+O0P7/jtD+/47Q/v+O0P7/jtD+/47Q/v+O0P7/i8/+/4rO/v+Kzv7/Rqf6/xCH9/8Qh/f/EIf3/xCH
- 9/8Qh/f/EIf3/yeT+P9Dn/f/LYXl/QZgz/0AXc+VAFzODQAAAAAAAAAAAAAAAAAAAAAAAAAAAFzOOwFe
- 0N0TbNb4Ppjw/z+f+f8dj/f/Eon3/xKJ9/8Siff/Eon3/xKJ9/8Siff/Eon3/xKJ9/8Siff/Eon3/xKJ
- 9/89ovr/jtD+/47Q/v+O0P7/jtD+/47Q/v+O0P7/jtD+/47Q/v+O0P7/OZ/6/xKJ9/8Siff/Eon3/xKJ
- 9/8Siff/Eon3/xKJ9/8Siff/Eon3/xKJ9/8ZjPf/OJz4/0Oc8/8cdNn5AV3P6wBczk4AAAAAAAAAAAAA
- AAAAXM4QAFzOzQNez/44k+7/Taf5/y2X+P8Vi/f/FYv3/xWL9/8Vi/f/FYv3/xWL9/8Vi/f/FYv3/xWL
- 9/8Vi/f/FYv3/xWL9/8/o/r/jtD+/47Q/v+O0P7/jtD+/47Q/v+O0P7/jtD+/47Q/v+O0P7/O6D6/xWL
- 9/8Vi/f/FYv3/xWL9/8Vi/f/FYv3/xWL9/8Vi/f/FYv3/xWL9/8Vi/f/JJL4/0ml+f9AmfH/CmTS/QBd
- z98AXM4iAAAAAAAAAAAAAAAAAFzOAwBcznIAXc/4Hnnf+kqk9/9Dovn/H5H4/xeN+P8Xjfj/F434/xeN
- +P8Xjfj/F434/xeN+P8Xjfj/F434/xeN+P9ApPr/jtD+/47Q/v+O0P7/jtD+/47Q/v+O0P7/jtD+/47Q
- /v+O0P7/PaL6/xeN+P8Xjfj/F434/xeN+P8Xjfj/F434/xeN+P8Xjfj/F434/xyP+P86nvn/Tqf4/yiD
- 5PsBXs/7AF3PiABczgkAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAXM4eAV7PuAZh0fk2j+v/Uqv6/zWd
- +f8aj/j/GY/4/xmP+P8Zj/j/GY/4/xmP+P8Zj/j/GY/4/xmP+P9Bpvr/jtD+/47Q/v+O0P7/jtD+/47Q
- /v+O0P7/jtD+/47Q/v+O0P7/PqP6/xmP+P8Zj/j/GY/4/xmP+P8Zj/j/GY/4/xmP+P8Zj/j/Lpn5/06p
- +v9AmO//DGbT+AFe0M4AXM4sAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAABc
- zlIBXs/rGXPa+E2k9P9Nqfr/KJf4/xyR+P8ckfj/HJH4/xyR+P8ckfj/HJH4/xyR+P9Dp/r/jtD+/47Q
- /v+O0P7/jtD+/47Q/v+O0P7/jtD+/47Q/v+O0P7/QKX6/xyR+P8ckfj/HJH4/xyR+P8ckfj/HJH4/yOU
- +P9Hpvn/Uqj2/yN83voBXc/1AFzOaQBczgEAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
- AAAAAAAAAAAAAAAAAAAAXM4NAV3PlgNf0Pwyi+b9WK75/zGc+f8ek/j/HpP4/x6T+P8ek/j/HpP4/x6T
- +P9Ep/r/jtD+/47Q/v+O0P7/jtD+/47Q/v+O0P7/jtD+/47Q/v+O0P7/QKb6/x6T+P8ek/j/HpP4/x6T
- +P8ek/j/J5f4/1iu+v89k+v/CGLQ+wFe0LAAXM4ZAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
- AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAABczjUBXtDcLoLg+0yq+v8glfn/IJX5/yCV
- +f8glfn/IJX5/yCV+f8sm/r/i87+/47Q/v+O0P7/jtD+/47Q/v+O0P7/jtD+/47Q/v+Jzf7/KZn5/yCV
- +f8glfn/IJX5/yCV+f8glfn/QKT6/z+R5/8BXs/tAFzOSwAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
- AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAABXc+hMYnl/U6s
- +v8il/n/Ipf5/yKX+f8il/n/Ipf5/yKX+f8il/n/K5z5/z2l+/89pfv/PaX7/z2l+/89pfv/PaX7/z2l
- +v8pm/n/Ipf5/yKX+f8il/n/Ipf5/yKX+f8il/n/Qqb6/0KX7P8CX9DPAAAAAAAAAAAAAAAAAAAAAAAA
- AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
- AAACX9DhSZ7u/0Sn+v8lmfn/JZn5/yWZ+f8lmfn/JZn5/yWZ+f8lmfn/JZn5/yWZ+f8lmfn/JZn5/yWZ
- +f8lmfn/JZn5/yWZ+f8lmfn/JZn5/yWZ+f8lmfn/JZn5/yWZ+f8lmfn/OKL6/1qr9P8AXc77AFzOBgAA
- AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
- AAAAAAAAAAAAAABczhIAXM7+YLH3/zij+f8nm/n/J5v5/yeb+f8nm/n/J5v5/yeb+f8nm/n/J5v5/yeb
- +f8nm/n/J5v5/yeb+f8nm/n/J5v5/yeb+f8nm/n/J5v5/yeb+f8nm/n/J5v5/yeb+f8nm/n/K535/2e4
- +v8LZNH7AFzONwAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
- AAAAAAAAAAAAAAAAAAAAAAAAAAAAAABczksQadP4arv8/yyf+v8pnfr/KZ36/ymd+v8pnfr/KZ36/ymd
- +v8pnfr/KZ36/ymd+v8pnfr/KZ36/ymd+v8pnfr/KZ36/ymd+v8pnfr/KZ36/ymd+v8pnfr/KZ36/ymd
- +v8pnfr/KZ36/2C2+/8le9z3AFzOcAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
- AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAABczoUsg+D6Yrf7/yyf+v8sn/r/LJ/6/yyf
- +v8sn/r/LJ/6/yyf+v8sn/r/LJ/6/yyf+v8sn/r/LJ/6/yyf+v8sn/r/LJ/6/yyf+v8sn/r/LJ/6/yyf
- +v8sn/r/LJ/6/yyf+v8sn/r/LJ/6/1Wy+/8+k+f/Al7QrwAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
- AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAJf0MlGm+v/VrP7/y6h
- +v8uofr/LqH6/y6h+v8wovr/Paj6/0es+/80pPr/LqH6/y6h+v8uofr/LqH6/y6h+v8uofr/LqH6/y6h
- +v8wovr/Rav7/z+p+v8xovr/LqH6/y6h+v8uofr/LqH6/0mt+/9ZqfH/Al7Q6gAAAAAAAAAAAAAAAAAA
- AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAFzOBAFd
- z/lhsfT/Sa77/zam+v9Grfv/VbT7/2W6+/9xv/r/arT0/1ul7P9vu/j/Q6z6/zCj+v8wo/r/MKP6/zCj
- +v8wo/r/MKP6/zmn+v9vvfr/XKXs/2ay8/9xvvr/aLz7/1m1+/9Kr/v/O6j6/z2p+v9wvfn/A17P/wBc
- zhsAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
- AAAAAAAAAFzOMwZg0Px2wvz/csH8/3K9+P9irvH/SJfn/S1+2/YSaNH+A1/P8wFez+M1iOH6br/8/zWm
- +/8ypfv/MqX7/zKl+/8ypfv/MqX7/2W7/P9JmOj9Al/P6wJez+4OZdH/J3ra9kWU5vxeqvD/crv4/3TC
- /P93w/z/GXDW9wBczlUAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
- AAAAAAAAAAAAAAAAAAAAAAAAAFzObRBo0/w9jOL4H3LW+Qhh0P0DYNDaAV3PmgBczl8AXM4nAFzOAQBc
- zhgCX8/1X63x/1q3/P81p/v/Naf7/zWn+/81p/v/TrL7/2249f8IYdD8AFzOMwAAAAAAXM4eAFzOVwBd
- zpEDYNDTB2HP+xtv1fo4ieD3HnTX/QBdzo8AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
- AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAFzOkwJf0LoAXM56AFzOQQBczgwAAAAAAAAAAAAA
- AAAAAAAAAAAAAAAAAAAAXM5jFmzU+HfC+v9Er/v/N6n7/zep+/88q/v/dML8/yl82/gBXc+NAAAAAAAA
- AAAAAAAAAAAAAAAAAAAAAAAAAFzOBwBczjoAXM5yAl/QsgBdzrEAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
- AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
- AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAl/QxkOV5vxvwvz/Oqv7/zmr+/9jvfz/WKTs/gJf
- z+QAXM4KAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
- AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
- AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAFzOJAVg0PltuPX/Wbn8/020
- /P92wPj/DmbR+wBczkQAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
- AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
- AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAFd
- zngjeNn4e8f8/3fH/f84iOD4Al7PowAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
- AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
- AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
- AAAAAAAAAAAAAABczgQCX9DXUqHr/WSv8f8EX8/vAFzOEgAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
- AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
- AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
- AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAXM4zCmTR+xZr1PkAXM5XAAAAAAAAAAAAAAAAAAAAAAAA
- AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
- AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
- AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAV7PjwJfz7kAAAAAAAAAAAAA
- AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
- AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
- AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
- AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
- AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
- AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
- AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
- AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA//AAAAD/AAD/wAAAAD8AAP+A
- AAAAHwAA/wAAAAAPAAD+AAAAAAcAAPwAAAAAAwAA/AAAAAADAAD8AAAAAAMAAPgAAAAAAQAA+AAAAAAB
- AAD4AAAAAAEAAPgAAAAAAQAA/AAAAAADAAD8AAAAAAMAAPwAAAAAAwAA/gAAAAAHAAD/AAAAAA8AAP+A
- AAAAHwAA/8AAAAA/AAD/gAAAAH8AAP8AAAAAHwAA/AAAAAAPAADwAAAAAAMAAOAAAAAAAQAAwAAAAAAA
- AADgAAAAAAEAAPgAAAAABwAA/gAAAAAPAAD/AAAAAD8AAP/AAAAA/wAA/+AAAAH/AAD/4AAAAP8AAP/A
- AAAA/wAA/8AAAAD/AAD/wAAAAP8AAP/AAAAA/wAA/4AAAAB/AAD/gAAAAH8AAP+AAAEAfwAA/4PwA/B/
- AAD///gD//8AAP//+Af//wAA///8D///AAD///wP//8AAP///h///wAA////P///AAD///////8AAP//
- /////wAA
-
-
-
\ No newline at end of file
diff --git a/Source/Krypton Toolkit/Krypton.Toolkit.Suite.Extended.Software.Updater/Auto Updater/UX/ReducedUpdateWindow.Designer.cs b/Source/Krypton Toolkit/Krypton.Toolkit.Suite.Extended.Software.Updater/Auto Updater/UX/ReducedUpdateWindow.Designer.cs
deleted file mode 100644
index eb7f4c98a..000000000
--- a/Source/Krypton Toolkit/Krypton.Toolkit.Suite.Extended.Software.Updater/Auto Updater/UX/ReducedUpdateWindow.Designer.cs
+++ /dev/null
@@ -1,198 +0,0 @@
-namespace Krypton.Toolkit.Suite.Extended.Software.Updater
-{
- partial class ReducedUpdateWindow
- {
- ///
- /// 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(ReducedUpdateWindow));
- this.kryptonPanel1 = new Krypton.Toolkit.KryptonPanel();
- this.kryptonTableLayoutPanel1 = new Krypton.Toolkit.KryptonTableLayoutPanel();
- this.pictureBox1 = new System.Windows.Forms.PictureBox();
- this.kwlHeader = new Krypton.Toolkit.KryptonWrapLabel();
- this.kwlDescription = new Krypton.Toolkit.KryptonWrapLabel();
- this.kbtnSkip = new Krypton.Toolkit.KryptonButton();
- this.kbtnRemind = new Krypton.Toolkit.KryptonButton();
- this.kbtnUpdate = new Krypton.Toolkit.KryptonButton();
- ((System.ComponentModel.ISupportInitialize)(this.kryptonPanel1)).BeginInit();
- this.kryptonPanel1.SuspendLayout();
- this.kryptonTableLayoutPanel1.SuspendLayout();
- ((System.ComponentModel.ISupportInitialize)(this.pictureBox1)).BeginInit();
- this.SuspendLayout();
- //
- // kryptonPanel1
- //
- this.kryptonPanel1.Controls.Add(this.kryptonTableLayoutPanel1);
- this.kryptonPanel1.Dock = System.Windows.Forms.DockStyle.Fill;
- this.kryptonPanel1.Location = new System.Drawing.Point(0, 0);
- this.kryptonPanel1.Name = "kryptonPanel1";
- this.kryptonPanel1.Size = new System.Drawing.Size(697, 110);
- this.kryptonPanel1.TabIndex = 1;
- //
- // kryptonTableLayoutPanel1
- //
- this.kryptonTableLayoutPanel1.BackgroundImage = ((System.Drawing.Image)(resources.GetObject("kryptonTableLayoutPanel1.BackgroundImage")));
- this.kryptonTableLayoutPanel1.BackgroundImageLayout = System.Windows.Forms.ImageLayout.None;
- this.kryptonTableLayoutPanel1.ColumnCount = 4;
- this.kryptonTableLayoutPanel1.ColumnStyles.Add(new System.Windows.Forms.ColumnStyle());
- this.kryptonTableLayoutPanel1.ColumnStyles.Add(new System.Windows.Forms.ColumnStyle(System.Windows.Forms.SizeType.Percent, 33.33333F));
- this.kryptonTableLayoutPanel1.ColumnStyles.Add(new System.Windows.Forms.ColumnStyle(System.Windows.Forms.SizeType.Percent, 33.33333F));
- this.kryptonTableLayoutPanel1.ColumnStyles.Add(new System.Windows.Forms.ColumnStyle(System.Windows.Forms.SizeType.Percent, 33.33333F));
- this.kryptonTableLayoutPanel1.Controls.Add(this.pictureBox1, 0, 0);
- this.kryptonTableLayoutPanel1.Controls.Add(this.kwlHeader, 1, 0);
- this.kryptonTableLayoutPanel1.Controls.Add(this.kwlDescription, 1, 1);
- this.kryptonTableLayoutPanel1.Controls.Add(this.kbtnSkip, 1, 2);
- this.kryptonTableLayoutPanel1.Controls.Add(this.kbtnRemind, 2, 2);
- this.kryptonTableLayoutPanel1.Controls.Add(this.kbtnUpdate, 3, 2);
- this.kryptonTableLayoutPanel1.Dock = System.Windows.Forms.DockStyle.Fill;
- this.kryptonTableLayoutPanel1.Location = new System.Drawing.Point(0, 0);
- this.kryptonTableLayoutPanel1.Name = "kryptonTableLayoutPanel1";
- this.kryptonTableLayoutPanel1.Padding = new System.Windows.Forms.Padding(5, 5, 0, 0);
- this.kryptonTableLayoutPanel1.RowCount = 3;
- this.kryptonTableLayoutPanel1.RowStyles.Add(new System.Windows.Forms.RowStyle());
- this.kryptonTableLayoutPanel1.RowStyles.Add(new System.Windows.Forms.RowStyle());
- this.kryptonTableLayoutPanel1.RowStyles.Add(new System.Windows.Forms.RowStyle(System.Windows.Forms.SizeType.Percent, 100F));
- this.kryptonTableLayoutPanel1.Size = new System.Drawing.Size(697, 110);
- this.kryptonTableLayoutPanel1.TabIndex = 0;
- //
- // pictureBox1
- //
- this.pictureBox1.BackColor = System.Drawing.Color.Transparent;
- this.pictureBox1.Image = global::Krypton.Toolkit.Suite.Extended.Software.Updater.Properties.Resources.update_48_x_48;
- this.pictureBox1.Location = new System.Drawing.Point(8, 8);
- this.pictureBox1.Name = "pictureBox1";
- this.kryptonTableLayoutPanel1.SetRowSpan(this.pictureBox1, 2);
- this.pictureBox1.Size = new System.Drawing.Size(64, 64);
- this.pictureBox1.SizeMode = System.Windows.Forms.PictureBoxSizeMode.CenterImage;
- this.pictureBox1.TabIndex = 0;
- this.pictureBox1.TabStop = false;
- //
- // kwlHeader
- //
- this.kwlHeader.AutoSize = false;
- this.kryptonTableLayoutPanel1.SetColumnSpan(this.kwlHeader, 3);
- this.kwlHeader.Dock = System.Windows.Forms.DockStyle.Fill;
- this.kwlHeader.Font = new System.Drawing.Font("Segoe UI", 12F, System.Drawing.FontStyle.Bold);
- this.kwlHeader.ForeColor = System.Drawing.Color.FromArgb(((int)(((byte)(30)))), ((int)(((byte)(57)))), ((int)(((byte)(91)))));
- this.kwlHeader.LabelStyle = Krypton.Toolkit.LabelStyle.NormalControl;
- this.kwlHeader.Location = new System.Drawing.Point(78, 5);
- this.kwlHeader.Name = "kwlHeader";
- this.kwlHeader.Size = new System.Drawing.Size(616, 23);
- this.kwlHeader.StateCommon.Font = new System.Drawing.Font("Segoe UI", 12F, System.Drawing.FontStyle.Bold);
- this.kwlHeader.Text = "kryptonWrapLabel1";
- //
- // kwlDescription
- //
- this.kwlDescription.AutoSize = false;
- this.kryptonTableLayoutPanel1.SetColumnSpan(this.kwlDescription, 3);
- this.kwlDescription.Dock = System.Windows.Forms.DockStyle.Fill;
- this.kwlDescription.Font = new System.Drawing.Font("Segoe UI", 11.25F, System.Drawing.FontStyle.Regular, System.Drawing.GraphicsUnit.Point, ((byte)(0)));
- this.kwlDescription.ForeColor = System.Drawing.Color.FromArgb(((int)(((byte)(30)))), ((int)(((byte)(57)))), ((int)(((byte)(91)))));
- this.kwlDescription.LabelStyle = Krypton.Toolkit.LabelStyle.NormalControl;
- this.kwlDescription.Location = new System.Drawing.Point(78, 28);
- this.kwlDescription.Name = "kwlDescription";
- this.kwlDescription.Size = new System.Drawing.Size(616, 47);
- this.kwlDescription.StateCommon.Font = new System.Drawing.Font("Segoe UI", 11.25F, System.Drawing.FontStyle.Regular, System.Drawing.GraphicsUnit.Point, ((byte)(0)));
- this.kwlDescription.Text = "kryptonWrapLabel2";
- //
- // kbtnSkip
- //
- this.kbtnSkip.AutoSize = true;
- this.kbtnSkip.AutoSizeMode = System.Windows.Forms.AutoSizeMode.GrowAndShrink;
- this.kbtnSkip.Dock = System.Windows.Forms.DockStyle.Left;
- this.kbtnSkip.Location = new System.Drawing.Point(78, 78);
- this.kbtnSkip.Name = "kbtnSkip";
- this.kbtnSkip.Size = new System.Drawing.Size(133, 29);
- this.kbtnSkip.StateCommon.Content.ShortText.Font = new System.Drawing.Font("Segoe UI", 11.25F, System.Drawing.FontStyle.Regular, System.Drawing.GraphicsUnit.Point, ((byte)(0)));
- this.kbtnSkip.TabIndex = 3;
- this.kbtnSkip.Values.Image = global::Krypton.Toolkit.Suite.Extended.Software.Updater.Properties.Resources.hand_point;
- this.kbtnSkip.Values.Text = "kryptonButton1";
- this.kbtnSkip.Click += new System.EventHandler(this.kbtnSkip_Click);
- //
- // kbtnRemind
- //
- this.kbtnRemind.AutoSize = true;
- this.kbtnRemind.AutoSizeMode = System.Windows.Forms.AutoSizeMode.GrowAndShrink;
- this.kbtnRemind.Dock = System.Windows.Forms.DockStyle.Right;
- this.kbtnRemind.Location = new System.Drawing.Point(353, 78);
- this.kbtnRemind.Name = "kbtnRemind";
- this.kbtnRemind.Size = new System.Drawing.Size(133, 29);
- this.kbtnRemind.StateCommon.Content.ShortText.Font = new System.Drawing.Font("Segoe UI", 11.25F, System.Drawing.FontStyle.Regular, System.Drawing.GraphicsUnit.Point, ((byte)(0)));
- this.kbtnRemind.TabIndex = 4;
- this.kbtnRemind.Values.Image = global::Krypton.Toolkit.Suite.Extended.Software.Updater.Properties.Resources.clock_go;
- this.kbtnRemind.Values.Text = "kryptonButton2";
- this.kbtnRemind.Click += new System.EventHandler(this.kbtnRemind_Click);
- //
- // kbtnUpdate
- //
- this.kbtnUpdate.AutoSize = true;
- this.kbtnUpdate.AutoSizeMode = System.Windows.Forms.AutoSizeMode.GrowAndShrink;
- this.kbtnUpdate.Dock = System.Windows.Forms.DockStyle.Right;
- this.kbtnUpdate.Location = new System.Drawing.Point(561, 78);
- this.kbtnUpdate.Name = "kbtnUpdate";
- this.kbtnUpdate.Size = new System.Drawing.Size(133, 29);
- this.kbtnUpdate.StateCommon.Content.ShortText.Font = new System.Drawing.Font("Segoe UI", 11.25F, System.Drawing.FontStyle.Regular, System.Drawing.GraphicsUnit.Point, ((byte)(0)));
- this.kbtnUpdate.TabIndex = 5;
- this.kbtnUpdate.Values.Image = global::Krypton.Toolkit.Suite.Extended.Software.Updater.Properties.Resources.download;
- this.kbtnUpdate.Values.Text = "kryptonButton3";
- this.kbtnUpdate.Click += new System.EventHandler(this.kbtnUpdate_Click);
- //
- // ReducedUpdateWindow
- //
- this.AutoScaleDimensions = new System.Drawing.SizeF(6F, 13F);
- this.AutoScaleMode = System.Windows.Forms.AutoScaleMode.Font;
- this.ClientSize = new System.Drawing.Size(697, 110);
- this.Controls.Add(this.kryptonPanel1);
- this.FormBorderStyle = System.Windows.Forms.FormBorderStyle.Fixed3D;
- this.Icon = ((System.Drawing.Icon)(resources.GetObject("$this.Icon")));
- this.MaximizeBox = false;
- this.MinimizeBox = false;
- this.Name = "ReducedUpdateWindow";
- this.Text = "ReducedUpdateWindow";
- this.FormClosing += new System.Windows.Forms.FormClosingEventHandler(this.ReducedUpdateWindow_FormClosing);
- this.FormClosed += new System.Windows.Forms.FormClosedEventHandler(this.ReducedUpdateWindow_FormClosed);
- this.Controls.SetChildIndex(this.kryptonPanel1, 0);
- ((System.ComponentModel.ISupportInitialize)(this.kryptonPanel1)).EndInit();
- this.kryptonPanel1.ResumeLayout(false);
- this.kryptonTableLayoutPanel1.ResumeLayout(false);
- this.kryptonTableLayoutPanel1.PerformLayout();
- ((System.ComponentModel.ISupportInitialize)(this.pictureBox1)).EndInit();
- this.ResumeLayout(false);
-
- }
-
- #endregion
-
- private KryptonPanel kryptonPanel1;
- private KryptonTableLayoutPanel kryptonTableLayoutPanel1;
- private PictureBox pictureBox1;
- private KryptonWrapLabel kwlHeader;
- private KryptonWrapLabel kwlDescription;
- private KryptonButton kbtnSkip;
- private KryptonButton kbtnRemind;
- private KryptonButton kbtnUpdate;
- }
-}
\ No newline at end of file
diff --git a/Source/Krypton Toolkit/Krypton.Toolkit.Suite.Extended.Software.Updater/Auto Updater/UX/ReducedUpdateWindow.cs b/Source/Krypton Toolkit/Krypton.Toolkit.Suite.Extended.Software.Updater/Auto Updater/UX/ReducedUpdateWindow.cs
deleted file mode 100644
index 420e5f518..000000000
--- a/Source/Krypton Toolkit/Krypton.Toolkit.Suite.Extended.Software.Updater/Auto Updater/UX/ReducedUpdateWindow.cs
+++ /dev/null
@@ -1,143 +0,0 @@
-#region License
-
-/*
- * MIT License
- *
- * Copyright (c) 2012 - 2023 RBSoft
- *
- * Permission is hereby granted, free of charge, to any person obtaining a copy
- * of this software and associated documentation files (the "Software"), to deal
- * in the Software without restriction, including without limitation the rights
- * to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
- * copies of the Software, and to permit persons to whom the Software is
- * furnished to do so, subject to the following conditions:
- *
- * The above copyright notice and this permission notice shall be included in all
- * copies or substantial portions of the Software.
- *
- * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
- * IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
- * FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
- * AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
- * LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
- * OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE
- * SOFTWARE.
- */
-
-#endregion
-
-namespace Krypton.Toolkit.Suite.Extended.Software.Updater
-{
- public partial class ReducedUpdateWindow : KryptonForm
- {
- #region Instance Fields
-
- private readonly UpdateInfoEventArgs _args;
-
- #endregion
-
- public ReducedUpdateWindow(UpdateInfoEventArgs args)
- {
- InitializeComponent();
-
- _args = args;
-
- kbtnSkip.Visible = AutoUpdater.ShowSkipButton;
-
- kbtnRemind.Visible = AutoUpdater.ShowRemindLaterButton;
-
- Text = string.Format(AutoUpdaterLanguageManager.WindowStrings.WindowTitle, AutoUpdater.AppTitle,
- _args.CurrentVersion);
-
- kwlHeader.Text = string.Format(AutoUpdaterLanguageManager.WindowStrings.HeaderText, AutoUpdater.AppTitle);
-
- kwlDescription.Text = string.Format(AutoUpdaterLanguageManager.WindowStrings.Description, AutoUpdater.AppTitle,
- _args.CurrentVersion, _args.InstalledVersion);
-
- kbtnRemind.Text = AutoUpdaterLanguageManager.WindowStrings.RemindLaterButtonText;
-
- kbtnSkip.Text = AutoUpdaterLanguageManager.WindowStrings.SkipButtonText;
-
- kbtnUpdate.Text = AutoUpdaterLanguageManager.WindowStrings.UpdateButtonText;
-
- if (AutoUpdater.Mandatory && AutoUpdater.UpdateMode == UpdateMode.Forced)
- {
- ControlBox = false;
- }
- }
-
- private void kbtnSkip_Click(object sender, EventArgs e)
- {
- if (AutoUpdater.LetUserSelectRemindLater)
- {
- using var remindLaterForm = new RemindLaterWindow();
- DialogResult dialogResult = remindLaterForm.ShowDialog(this);
-
- switch (dialogResult)
- {
- case DialogResult.OK:
- AutoUpdater.RemindLaterTimeSpan = remindLaterForm.RemindLaterFormat;
- AutoUpdater.RemindLaterAt = remindLaterForm.RemindLaterAt;
- break;
- case DialogResult.Abort:
- kbtnUpdate_Click(sender, e);
- return;
- default:
- return;
- }
- }
-
- AutoUpdater.PersistenceProvider.SetSkippedVersion(null);
-
- DateTime remindLaterDateTime = AutoUpdater.RemindLaterTimeSpan switch
- {
- RemindLaterFormat.Days => DateTime.Now + TimeSpan.FromDays(AutoUpdater.RemindLaterAt),
- RemindLaterFormat.Hours => DateTime.Now + TimeSpan.FromHours(AutoUpdater.RemindLaterAt),
- RemindLaterFormat.Minutes => DateTime.Now + TimeSpan.FromMinutes(AutoUpdater.RemindLaterAt),
- _ => DateTime.Now
- };
-
- AutoUpdater.PersistenceProvider.SetRemindLater(remindLaterDateTime);
- AutoUpdater.SetTimer(remindLaterDateTime);
-
- DialogResult = DialogResult.Cancel;
- }
-
- private void kbtnRemind_Click(object sender, EventArgs e)
- {
- AutoUpdater.PersistenceProvider.SetSkippedVersion(new Version(_args.CurrentVersion));
- }
-
- private void kbtnUpdate_Click(object sender, EventArgs e)
- {
- if (AutoUpdater.OpenDownloadPage)
- {
- var processStartInfo = new ProcessStartInfo(_args.DownloadURL);
-
- Process.Start(processStartInfo);
-
- DialogResult = DialogResult.OK;
- }
- else
- {
- if (AutoUpdater.DownloadUpdate(_args))
- {
- DialogResult = DialogResult.OK;
- }
- }
- }
-
- private void ReducedUpdateWindow_FormClosed(object sender, FormClosedEventArgs e)
- {
- AutoUpdater.Running = false;
- }
-
- private void ReducedUpdateWindow_FormClosing(object sender, FormClosingEventArgs e)
- {
- if (AutoUpdater.Mandatory && AutoUpdater.UpdateMode == UpdateMode.Forced)
- {
- AutoUpdater.Exit();
- }
- }
- }
-}
diff --git a/Source/Krypton Toolkit/Krypton.Toolkit.Suite.Extended.Software.Updater/Auto Updater/UX/UpdateWindow.Designer.cs b/Source/Krypton Toolkit/Krypton.Toolkit.Suite.Extended.Software.Updater/Auto Updater/UX/UpdateWindow.Designer.cs
deleted file mode 100644
index 7a6a7720c..000000000
--- a/Source/Krypton Toolkit/Krypton.Toolkit.Suite.Extended.Software.Updater/Auto Updater/UX/UpdateWindow.Designer.cs
+++ /dev/null
@@ -1,267 +0,0 @@
-namespace Krypton.Toolkit.Suite.Extended.Software.Updater
-{
- partial class UpdateWindow
- {
- ///
- /// 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(UpdateWindow));
- this.kryptonPanel1 = new Krypton.Toolkit.KryptonPanel();
- this.kryptonTableLayoutPanel1 = new Krypton.Toolkit.KryptonTableLayoutPanel();
- this.pbxApplicationIcon = new System.Windows.Forms.PictureBox();
- this.kwlHeader = new Krypton.Toolkit.KryptonWrapLabel();
- this.kwlDetails = new Krypton.Toolkit.KryptonWrapLabel();
- this.kwlReleaseNotes = new Krypton.Toolkit.KryptonWrapLabel();
- this.kbtnSkip = new Krypton.Toolkit.KryptonButton();
- this.kbtnRemind = new Krypton.Toolkit.KryptonButton();
- this.kbtnUpdate = new Krypton.Toolkit.KryptonButton();
- this.kryptonPanel2 = new Krypton.Toolkit.KryptonPanel();
- this.wvReleaseNotes = new Microsoft.Web.WebView2.WinForms.WebView2();
- this.kwbReleaseNotes = new Krypton.Toolkit.KryptonWebBrowser();
- ((System.ComponentModel.ISupportInitialize)(this.kryptonPanel1)).BeginInit();
- this.kryptonPanel1.SuspendLayout();
- this.kryptonTableLayoutPanel1.SuspendLayout();
- ((System.ComponentModel.ISupportInitialize)(this.pbxApplicationIcon)).BeginInit();
- ((System.ComponentModel.ISupportInitialize)(this.kryptonPanel2)).BeginInit();
- this.kryptonPanel2.SuspendLayout();
- ((System.ComponentModel.ISupportInitialize)(this.wvReleaseNotes)).BeginInit();
- this.SuspendLayout();
- //
- // kryptonPanel1
- //
- this.kryptonPanel1.Controls.Add(this.kryptonTableLayoutPanel1);
- this.kryptonPanel1.Dock = System.Windows.Forms.DockStyle.Fill;
- this.kryptonPanel1.Location = new System.Drawing.Point(0, 0);
- this.kryptonPanel1.Name = "kryptonPanel1";
- this.kryptonPanel1.Size = new System.Drawing.Size(693, 661);
- this.kryptonPanel1.TabIndex = 1;
- //
- // kryptonTableLayoutPanel1
- //
- this.kryptonTableLayoutPanel1.BackgroundImage = ((System.Drawing.Image)(resources.GetObject("kryptonTableLayoutPanel1.BackgroundImage")));
- this.kryptonTableLayoutPanel1.BackgroundImageLayout = System.Windows.Forms.ImageLayout.None;
- this.kryptonTableLayoutPanel1.ColumnCount = 4;
- this.kryptonTableLayoutPanel1.ColumnStyles.Add(new System.Windows.Forms.ColumnStyle());
- this.kryptonTableLayoutPanel1.ColumnStyles.Add(new System.Windows.Forms.ColumnStyle(System.Windows.Forms.SizeType.Percent, 33.33333F));
- this.kryptonTableLayoutPanel1.ColumnStyles.Add(new System.Windows.Forms.ColumnStyle(System.Windows.Forms.SizeType.Percent, 33.33333F));
- this.kryptonTableLayoutPanel1.ColumnStyles.Add(new System.Windows.Forms.ColumnStyle(System.Windows.Forms.SizeType.Percent, 33.33333F));
- this.kryptonTableLayoutPanel1.Controls.Add(this.pbxApplicationIcon, 0, 0);
- this.kryptonTableLayoutPanel1.Controls.Add(this.kwlHeader, 1, 0);
- this.kryptonTableLayoutPanel1.Controls.Add(this.kwlDetails, 1, 1);
- this.kryptonTableLayoutPanel1.Controls.Add(this.kwlReleaseNotes, 1, 2);
- this.kryptonTableLayoutPanel1.Controls.Add(this.kbtnSkip, 1, 4);
- this.kryptonTableLayoutPanel1.Controls.Add(this.kbtnRemind, 2, 4);
- this.kryptonTableLayoutPanel1.Controls.Add(this.kbtnUpdate, 3, 4);
- this.kryptonTableLayoutPanel1.Controls.Add(this.kryptonPanel2, 1, 3);
- this.kryptonTableLayoutPanel1.Dock = System.Windows.Forms.DockStyle.Fill;
- this.kryptonTableLayoutPanel1.Location = new System.Drawing.Point(0, 0);
- this.kryptonTableLayoutPanel1.Name = "kryptonTableLayoutPanel1";
- this.kryptonTableLayoutPanel1.RowCount = 5;
- this.kryptonTableLayoutPanel1.RowStyles.Add(new System.Windows.Forms.RowStyle());
- this.kryptonTableLayoutPanel1.RowStyles.Add(new System.Windows.Forms.RowStyle());
- this.kryptonTableLayoutPanel1.RowStyles.Add(new System.Windows.Forms.RowStyle());
- this.kryptonTableLayoutPanel1.RowStyles.Add(new System.Windows.Forms.RowStyle(System.Windows.Forms.SizeType.Percent, 100F));
- this.kryptonTableLayoutPanel1.RowStyles.Add(new System.Windows.Forms.RowStyle());
- this.kryptonTableLayoutPanel1.Size = new System.Drawing.Size(693, 661);
- this.kryptonTableLayoutPanel1.TabIndex = 0;
- //
- // pbxApplicationIcon
- //
- this.pbxApplicationIcon.BackColor = System.Drawing.Color.Transparent;
- this.pbxApplicationIcon.Image = global::Krypton.Toolkit.Suite.Extended.Software.Updater.Properties.Resources.update2;
- this.pbxApplicationIcon.Location = new System.Drawing.Point(3, 3);
- this.pbxApplicationIcon.Name = "pbxApplicationIcon";
- this.pbxApplicationIcon.Padding = new System.Windows.Forms.Padding(5, 5, 0, 0);
- this.kryptonTableLayoutPanel1.SetRowSpan(this.pbxApplicationIcon, 2);
- this.pbxApplicationIcon.Size = new System.Drawing.Size(69, 69);
- this.pbxApplicationIcon.SizeMode = System.Windows.Forms.PictureBoxSizeMode.AutoSize;
- this.pbxApplicationIcon.TabIndex = 0;
- this.pbxApplicationIcon.TabStop = false;
- //
- // kwlHeader
- //
- this.kwlHeader.AutoSize = false;
- this.kryptonTableLayoutPanel1.SetColumnSpan(this.kwlHeader, 3);
- this.kwlHeader.Dock = System.Windows.Forms.DockStyle.Fill;
- this.kwlHeader.Font = new System.Drawing.Font("Segoe UI", 12F, System.Drawing.FontStyle.Bold);
- this.kwlHeader.ForeColor = System.Drawing.Color.FromArgb(((int)(((byte)(30)))), ((int)(((byte)(57)))), ((int)(((byte)(91)))));
- this.kwlHeader.LabelStyle = Krypton.Toolkit.LabelStyle.NormalControl;
- this.kwlHeader.Location = new System.Drawing.Point(78, 0);
- this.kwlHeader.Name = "kwlHeader";
- this.kwlHeader.Size = new System.Drawing.Size(612, 23);
- this.kwlHeader.StateCommon.Font = new System.Drawing.Font("Segoe UI", 12F, System.Drawing.FontStyle.Bold);
- this.kwlHeader.Text = "kryptonWrapLabel1";
- //
- // kwlDetails
- //
- this.kwlDetails.AutoSize = false;
- this.kryptonTableLayoutPanel1.SetColumnSpan(this.kwlDetails, 3);
- this.kwlDetails.Dock = System.Windows.Forms.DockStyle.Fill;
- this.kwlDetails.Font = new System.Drawing.Font("Segoe UI", 11.25F, System.Drawing.FontStyle.Regular, System.Drawing.GraphicsUnit.Point, ((byte)(0)));
- this.kwlDetails.ForeColor = System.Drawing.Color.FromArgb(((int)(((byte)(30)))), ((int)(((byte)(57)))), ((int)(((byte)(91)))));
- this.kwlDetails.LabelStyle = Krypton.Toolkit.LabelStyle.NormalControl;
- this.kwlDetails.Location = new System.Drawing.Point(78, 23);
- this.kwlDetails.Name = "kwlDetails";
- this.kwlDetails.Size = new System.Drawing.Size(612, 52);
- this.kwlDetails.StateCommon.Font = new System.Drawing.Font("Segoe UI", 11.25F, System.Drawing.FontStyle.Regular, System.Drawing.GraphicsUnit.Point, ((byte)(0)));
- this.kwlDetails.Text = "kryptonWrapLabel2";
- //
- // kwlReleaseNotes
- //
- this.kwlReleaseNotes.AutoSize = false;
- this.kryptonTableLayoutPanel1.SetColumnSpan(this.kwlReleaseNotes, 3);
- this.kwlReleaseNotes.Dock = System.Windows.Forms.DockStyle.Fill;
- this.kwlReleaseNotes.Font = new System.Drawing.Font("Microsoft Sans Serif", 11.25F, System.Drawing.FontStyle.Bold, System.Drawing.GraphicsUnit.Point, ((byte)(0)));
- this.kwlReleaseNotes.ForeColor = System.Drawing.Color.FromArgb(((int)(((byte)(30)))), ((int)(((byte)(57)))), ((int)(((byte)(91)))));
- this.kwlReleaseNotes.LabelStyle = Krypton.Toolkit.LabelStyle.NormalControl;
- this.kwlReleaseNotes.Location = new System.Drawing.Point(78, 75);
- this.kwlReleaseNotes.Name = "kwlReleaseNotes";
- this.kwlReleaseNotes.Size = new System.Drawing.Size(612, 18);
- this.kwlReleaseNotes.StateCommon.Font = new System.Drawing.Font("Microsoft Sans Serif", 11.25F, System.Drawing.FontStyle.Bold, System.Drawing.GraphicsUnit.Point, ((byte)(0)));
- this.kwlReleaseNotes.Text = "kryptonWrapLabel3";
- //
- // kbtnSkip
- //
- this.kbtnSkip.AutoSize = true;
- this.kbtnSkip.AutoSizeMode = System.Windows.Forms.AutoSizeMode.GrowAndShrink;
- this.kbtnSkip.DialogResult = System.Windows.Forms.DialogResult.Abort;
- this.kbtnSkip.Dock = System.Windows.Forms.DockStyle.Left;
- this.kbtnSkip.Location = new System.Drawing.Point(78, 632);
- this.kbtnSkip.Name = "kbtnSkip";
- this.kbtnSkip.Size = new System.Drawing.Size(137, 26);
- this.kbtnSkip.StateCommon.Content.ShortText.Font = new System.Drawing.Font("Segoe UI", 11.25F, System.Drawing.FontStyle.Regular, System.Drawing.GraphicsUnit.Point, ((byte)(0)));
- this.kbtnSkip.TabIndex = 5;
- this.kbtnSkip.Values.Image = global::Krypton.Toolkit.Suite.Extended.Software.Updater.Properties.Resources.hand_point;
- this.kbtnSkip.Values.Text = "&Skip this version";
- this.kbtnSkip.Click += new System.EventHandler(this.kbtnSkip_Click);
- //
- // kbtnRemind
- //
- this.kbtnRemind.AutoSize = true;
- this.kbtnRemind.AutoSizeMode = System.Windows.Forms.AutoSizeMode.GrowAndShrink;
- this.kbtnRemind.Dock = System.Windows.Forms.DockStyle.Right;
- this.kbtnRemind.Location = new System.Drawing.Point(343, 632);
- this.kbtnRemind.Name = "kbtnRemind";
- this.kbtnRemind.Size = new System.Drawing.Size(139, 26);
- this.kbtnRemind.StateCommon.Content.ShortText.Font = new System.Drawing.Font("Segoe UI", 11.25F, System.Drawing.FontStyle.Regular, System.Drawing.GraphicsUnit.Point, ((byte)(0)));
- this.kbtnRemind.TabIndex = 6;
- this.kbtnRemind.Values.Image = global::Krypton.Toolkit.Suite.Extended.Software.Updater.Properties.Resources.clock_go;
- this.kbtnRemind.Values.Text = "R&emind me later";
- this.kbtnRemind.Click += new System.EventHandler(this.kbtnRemind_Click);
- //
- // kbtnUpdate
- //
- this.kbtnUpdate.AutoSize = true;
- this.kbtnUpdate.AutoSizeMode = System.Windows.Forms.AutoSizeMode.GrowAndShrink;
- this.kbtnUpdate.DialogResult = System.Windows.Forms.DialogResult.OK;
- this.kbtnUpdate.Dock = System.Windows.Forms.DockStyle.Right;
- this.kbtnUpdate.Location = new System.Drawing.Point(614, 632);
- this.kbtnUpdate.Name = "kbtnUpdate";
- this.kbtnUpdate.Size = new System.Drawing.Size(76, 26);
- this.kbtnUpdate.StateCommon.Content.ShortText.Font = new System.Drawing.Font("Segoe UI", 11.25F, System.Drawing.FontStyle.Regular, System.Drawing.GraphicsUnit.Point, ((byte)(0)));
- this.kbtnUpdate.TabIndex = 7;
- this.kbtnUpdate.Values.Image = global::Krypton.Toolkit.Suite.Extended.Software.Updater.Properties.Resources.download;
- this.kbtnUpdate.Values.Text = "&Update";
- this.kbtnUpdate.Click += new System.EventHandler(this.kbtnUpdate_Click);
- //
- // kryptonPanel2
- //
- this.kryptonTableLayoutPanel1.SetColumnSpan(this.kryptonPanel2, 3);
- this.kryptonPanel2.Controls.Add(this.wvReleaseNotes);
- this.kryptonPanel2.Controls.Add(this.kwbReleaseNotes);
- this.kryptonPanel2.Dock = System.Windows.Forms.DockStyle.Fill;
- this.kryptonPanel2.Location = new System.Drawing.Point(78, 96);
- this.kryptonPanel2.Name = "kryptonPanel2";
- this.kryptonPanel2.Size = new System.Drawing.Size(612, 530);
- this.kryptonPanel2.TabIndex = 8;
- //
- // wvReleaseNotes
- //
- this.wvReleaseNotes.AllowExternalDrop = true;
- this.wvReleaseNotes.CreationProperties = null;
- this.wvReleaseNotes.DefaultBackgroundColor = System.Drawing.Color.White;
- this.wvReleaseNotes.Dock = System.Windows.Forms.DockStyle.Fill;
- this.wvReleaseNotes.Location = new System.Drawing.Point(0, 0);
- this.wvReleaseNotes.Name = "wvReleaseNotes";
- this.wvReleaseNotes.Size = new System.Drawing.Size(612, 530);
- this.wvReleaseNotes.TabIndex = 1;
- this.wvReleaseNotes.ZoomFactor = 1D;
- //
- // kwbReleaseNotes
- //
- this.kwbReleaseNotes.Dock = System.Windows.Forms.DockStyle.Fill;
- this.kwbReleaseNotes.Location = new System.Drawing.Point(0, 0);
- this.kwbReleaseNotes.Name = "kwbReleaseNotes";
- this.kwbReleaseNotes.ScriptErrorsSuppressed = true;
- this.kwbReleaseNotes.Size = new System.Drawing.Size(612, 530);
- this.kwbReleaseNotes.TabIndex = 0;
- //
- // UpdateWindow
- //
- this.AcceptButton = this.kbtnUpdate;
- this.AutoScaleDimensions = new System.Drawing.SizeF(6F, 13F);
- this.AutoScaleMode = System.Windows.Forms.AutoScaleMode.Font;
- this.ClientSize = new System.Drawing.Size(693, 661);
- this.Controls.Add(this.kryptonPanel1);
- this.FormBorderStyle = System.Windows.Forms.FormBorderStyle.Fixed3D;
- this.Icon = ((System.Drawing.Icon)(resources.GetObject("$this.Icon")));
- this.MaximizeBox = false;
- this.MinimizeBox = false;
- this.Name = "UpdateWindow";
- this.StartPosition = System.Windows.Forms.FormStartPosition.CenterScreen;
- this.Text = "UpdateWindow";
- this.FormClosing += new System.Windows.Forms.FormClosingEventHandler(this.UpdateWindow_FormClosing);
- this.FormClosed += new System.Windows.Forms.FormClosedEventHandler(this.UpdateWindow_FormClosed);
- this.Load += new System.EventHandler(this.UpdateWindow_Load);
- this.Controls.SetChildIndex(this.kryptonPanel1, 0);
- ((System.ComponentModel.ISupportInitialize)(this.kryptonPanel1)).EndInit();
- this.kryptonPanel1.ResumeLayout(false);
- this.kryptonTableLayoutPanel1.ResumeLayout(false);
- this.kryptonTableLayoutPanel1.PerformLayout();
- ((System.ComponentModel.ISupportInitialize)(this.pbxApplicationIcon)).EndInit();
- ((System.ComponentModel.ISupportInitialize)(this.kryptonPanel2)).EndInit();
- this.kryptonPanel2.ResumeLayout(false);
- ((System.ComponentModel.ISupportInitialize)(this.wvReleaseNotes)).EndInit();
- this.ResumeLayout(false);
-
- }
-
- #endregion
-
- private KryptonPanel kryptonPanel1;
- private KryptonTableLayoutPanel kryptonTableLayoutPanel1;
- private PictureBox pbxApplicationIcon;
- private KryptonWrapLabel kwlHeader;
- private KryptonWrapLabel kwlDetails;
- private KryptonWrapLabel kwlReleaseNotes;
- private KryptonButton kbtnSkip;
- private KryptonButton kbtnRemind;
- private KryptonButton kbtnUpdate;
- private KryptonPanel kryptonPanel2;
- private KryptonWebBrowser kwbReleaseNotes;
- private Microsoft.Web.WebView2.WinForms.WebView2 wvReleaseNotes;
- }
-}
\ No newline at end of file
diff --git a/Source/Krypton Toolkit/Krypton.Toolkit.Suite.Extended.Software.Updater/Globals/GlobalDeclarations.cs b/Source/Krypton Toolkit/Krypton.Toolkit.Suite.Extended.Software.Updater/Globals/GlobalDeclarations.cs
index 1dcf4a787..3a2365cbc 100644
--- a/Source/Krypton Toolkit/Krypton.Toolkit.Suite.Extended.Software.Updater/Globals/GlobalDeclarations.cs
+++ b/Source/Krypton Toolkit/Krypton.Toolkit.Suite.Extended.Software.Updater/Globals/GlobalDeclarations.cs
@@ -58,5 +58,4 @@
global using Krypton.Toolkit.Suite.Extended.Software.Updater.Properties;
global using Krypton.Toolkit.Suite.Extended.Developer.Utilities;
-
-global using Krypton.Toolkit.Suite.Extended.Software.Updater.Core;
\ No newline at end of file
+//global using Krypton.Toolkit.Suite.Extended.Software.Updater.
\ No newline at end of file
diff --git a/Source/Krypton Toolkit/Krypton.Toolkit.Suite.Extended.Software.Updater/Krypton.Toolkit.Suite.Extended.Software.Updater 2022.csproj b/Source/Krypton Toolkit/Krypton.Toolkit.Suite.Extended.Software.Updater/Krypton.Toolkit.Suite.Extended.Software.Updater 2022.csproj
index e73483c6e..b7ae3aa20 100644
--- a/Source/Krypton Toolkit/Krypton.Toolkit.Suite.Extended.Software.Updater/Krypton.Toolkit.Suite.Extended.Software.Updater 2022.csproj
+++ b/Source/Krypton Toolkit/Krypton.Toolkit.Suite.Extended.Software.Updater/Krypton.Toolkit.Suite.Extended.Software.Updater 2022.csproj
@@ -87,7 +87,7 @@
-
+
@@ -159,6 +159,11 @@
+
+
+
+
+
@@ -179,11 +184,6 @@
-
- True
- True
- NetSparkleResources.resx
-
True
@@ -193,10 +193,6 @@
-
- ResXFileCodeGenerator
- NetSparkleResources.Designer.cs
-
ResXFileCodeGenerator
@@ -236,10 +232,6 @@
-
-
-
-
True
diff --git a/Source/Krypton Toolkit/Krypton.Toolkit.Suite.Extended.Software.Updater/NetSparkle/Classes/UIFactory.cs b/Source/Krypton Toolkit/Krypton.Toolkit.Suite.Extended.Software.Updater/NetSparkle/Classes/UIFactory.cs
deleted file mode 100644
index c11fea07a..000000000
--- a/Source/Krypton Toolkit/Krypton.Toolkit.Suite.Extended.Software.Updater/NetSparkle/Classes/UIFactory.cs
+++ /dev/null
@@ -1,242 +0,0 @@
-#region License
-
-/*
- * The MIT License
- *
- * Copyright (c) 2022 Deadpikle
- *
- * Permission is hereby granted, free of charge, to any person obtaining a copy
- * of this software and associated documentation files (the "Software"), to deal
- * in the Software without restriction, including without limitation the rights
- * to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
- * copies of the Software, and to permit persons to whom the Software is
- * furnished to do so, subject to the following conditions:
- *
- * The above copyright notice and this permission notice shall be included in
- * all copies or substantial portions of the Software.
- *
- * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
- * IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
- * FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
- * AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
- * LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
- * OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN
- * THE SOFTWARE.
- */
-
-#endregion
-
-using Krypton.Toolkit.Suite.Extended.Software.Updater.NetSparkle.Resources;
-
-using Application = System.Windows.Forms.Application;
-
-namespace Krypton.Toolkit.Suite.Extended.Software.Updater
-{
- ///
- /// UI factory for WinForms .NET Core interface
- ///
- public class UIFactory : IUIFactory
- {
- private Icon? _applicationIcon = null;
-
- ///
- public UIFactory()
- {
- HideReleaseNotes = false;
- HideRemindMeLaterButton = false;
- HideSkipButton = false;
- }
-
- ///
- public UIFactory(Icon applicationIcon) : this()
- {
- _applicationIcon = applicationIcon;
- }
-
- ///
- public bool HideReleaseNotes { get; set; }
-
- ///
- public bool HideSkipButton { get; set; }
-
- ///
- public bool HideRemindMeLaterButton { get; set; }
-
- ///
- public string ReleaseNotesHTMLTemplate { get; set; }
-
- ///
- public string AdditionalReleaseNotesHeaderHTML { get; set; }
-
- ///
- /// The DateTime.ToString() format used when formatting dates to show in the release notes
- /// header. NetSparkle is not responsible for what happens if you send a bad format! :)
- ///
- public string ReleaseNotesDateTimeFormat { get; set; } = "D";
-
- ///
- ///
- /// Easily set / override the ReleaseNotesGrabber used by the .
- /// Note that this will NOT automatically use the ReleaseNotesHTMLTemplate,
- /// AdditionalReleaseNotesHeaderHTML, and ReleaseNotesDateTimeFormat that you may have set on
- /// the UIFactory - you must set these on this manual override yourself!
- ///
- ///
- /// Use this if you want to easily override the ReleaseNotesGrabber with your own subclass.
- ///
- ///
- public ReleaseNotesGrabber? ReleaseNotesGrabberOverride { get; set; } = null;
-
- ///
- public virtual IUpdateAvailable CreateUpdateAvailableWindow(SparkleUpdater sparkle, List updates, bool isUpdateAlreadyDownloaded = false)
- {
- var window = new NetSparkleUpdateAvailableWindow(sparkle, updates, _applicationIcon, isUpdateAlreadyDownloaded,
- ReleaseNotesHTMLTemplate, AdditionalReleaseNotesHeaderHTML, ReleaseNotesDateTimeFormat);
- if (HideReleaseNotes)
- {
- (window as IUpdateAvailable).HideReleaseNotes();
- }
- if (HideSkipButton)
- {
- (window as IUpdateAvailable).HideSkipButton();
- }
- if (HideRemindMeLaterButton)
- {
- (window as IUpdateAvailable).HideRemindMeLaterButton();
- }
- if (ReleaseNotesGrabberOverride != null)
- {
- window.ReleaseNotesGrabber = ReleaseNotesGrabberOverride;
- }
- window.Initialize();
- return window;
- }
-
- ///
- public virtual IDownloadProgress CreateProgressWindow(SparkleUpdater sparkle, AppCastItem? item)
- {
- return new NetSparkleDownloadProgressWindow(item, _applicationIcon)
- {
- SoftwareWillRelaunchAfterUpdateInstalled = sparkle.RelaunchAfterUpdate
- };
- }
-
- ///
- public virtual ICheckingForUpdates ShowCheckingForUpdates(SparkleUpdater sparkle)
- {
- return new NetSparkleCheckingForUpdatesWindow(_applicationIcon);
- }
-
- ///
- public virtual void Init(SparkleUpdater sparkle)
- {
- // enable visual style to ensure that we have XP style or higher
- // also in WPF applications
- Application.EnableVisualStyles();
- }
-
- ///
- public virtual void ShowUnknownInstallerFormatMessage(SparkleUpdater sparkle, string downloadFileName)
- {
- ShowMessage(NetSparkleResources.DefaultUIFactory_MessageTitle,
- string.Format(NetSparkleResources.DefaultUIFactory_ShowUnknownInstallerFormatMessageText, downloadFileName));
- }
-
- ///
- public virtual void ShowVersionIsUpToDate(SparkleUpdater sparkle)
- {
- ShowMessage(NetSparkleResources.DefaultUIFactory_MessageTitle, NetSparkleResources.DefaultUIFactory_ShowVersionIsUpToDateMessage);
- }
-
- ///
- public virtual void ShowVersionIsSkippedByUserRequest(SparkleUpdater sparkle)
- {
- ShowMessage(NetSparkleResources.DefaultUIFactory_MessageTitle, NetSparkleResources.DefaultUIFactory_ShowVersionIsSkippedByUserRequestMessage);
- }
-
- ///
- public virtual void ShowCannotDownloadAppcast(SparkleUpdater sparkle, string appcastUrl)
- {
- ShowMessage(NetSparkleResources.DefaultUIFactory_ErrorTitle, NetSparkleResources.DefaultUIFactory_ShowCannotDownloadAppcastMessage);
- }
-
- ///
- public virtual bool CanShowToastMessages(SparkleUpdater sparkle)
- {
- return true;
- }
-
- ///
- public virtual void ShowToast(SparkleUpdater sparkle, List updates, Action> clickHandler)
- {
- Thread thread = new Thread(() =>
- {
- var toast = new NetSparkleToastNotifierWindow(_applicationIcon)
- {
- ClickAction = clickHandler,
- Updates = updates
- };
- toast.Show(NetSparkleResources.DefaultUIFactory_ToastMessage, NetSparkleResources.DefaultUIFactory_ToastCallToAction, 5);
- Application.Run(toast);
- });
- thread.SetApartmentState(ApartmentState.STA);
- thread.Start();
- }
-
- ///
- public virtual void ShowDownloadErrorMessage(SparkleUpdater sparkle, string message, string appcastUrl)
- {
- ShowMessage(NetSparkleResources.DefaultUIFactory_ErrorTitle, string.Format(NetSparkleResources.DefaultUIFactory_ShowDownloadErrorMessage, message));
- }
-
- private void ShowMessage(string title, string message)
- {
- var messageWindow = new NetSparkleMessageNotificationWindow(title, message, _applicationIcon);
- messageWindow.StartPosition = FormStartPosition.CenterScreen;
- messageWindow.ShowDialog();
- }
-
- ///
- public void Shutdown(SparkleUpdater sparkle)
- {
- Application.Exit();
- }
-
- #region --- Windows Forms Result Converters ---
-
- ///
- /// Method performs simple conversion of DialogResult to boolean.
- /// This method is a convenience when upgrading legacy code.
- ///
- /// WinForms DialogResult instance
- /// Boolean based on dialog result
- public static bool ConvertDialogResultToDownloadProgressResult(DialogResult dialogResult)
- {
- return (dialogResult != DialogResult.Abort) && (dialogResult != DialogResult.Cancel);
- }
-
- ///
- /// Method performs simple conversion of DialogResult to UpdateAvailableResult.
- /// This method is a convenience when upgrading legacy code.
- ///
- /// WinForms DialogResult instance
- /// Enumeration value based on dialog result
- public static UpdateAvailableResult ConvertDialogResultToUpdateAvailableResult(DialogResult dialogResult)
- {
- switch (dialogResult)
- {
- case DialogResult.Yes:
- return UpdateAvailableResult.InstallUpdate;
- case DialogResult.No:
- return UpdateAvailableResult.SkipUpdate;
- case DialogResult.Retry:
- case DialogResult.Cancel:
- return UpdateAvailableResult.RemindMeLater;
- }
-
- return UpdateAvailableResult.None;
- }
-
- #endregion
- }
-}
\ No newline at end of file
diff --git a/Source/Krypton Toolkit/Krypton.Toolkit.Suite.Extended.Software.Updater/NetSparkle/Resources/NetSparkleResources.Designer.cs b/Source/Krypton Toolkit/Krypton.Toolkit.Suite.Extended.Software.Updater/NetSparkle/Resources/NetSparkleResources.Designer.cs
deleted file mode 100644
index 89a94f987..000000000
--- a/Source/Krypton Toolkit/Krypton.Toolkit.Suite.Extended.Software.Updater/NetSparkle/Resources/NetSparkleResources.Designer.cs
+++ /dev/null
@@ -1,277 +0,0 @@
-//------------------------------------------------------------------------------
-//
-// This code was generated by a tool.
-// Runtime Version:4.0.30319.42000
-//
-// Changes to this file may cause incorrect behavior and will be lost if
-// the code is regenerated.
-//
-//------------------------------------------------------------------------------
-
-namespace Krypton.Toolkit.Suite.Extended.Software.Updater.NetSparkle.Resources {
- using System;
-
-
- ///
- /// A strongly-typed resource class, for looking up localized strings, etc.
- ///
- // This class was auto-generated by the StronglyTypedResourceBuilder
- // class via a tool like ResGen or Visual Studio.
- // To add or remove a member, edit your .ResX file then rerun ResGen
- // with the /str option, or rebuild your VS project.
- [global::System.CodeDom.Compiler.GeneratedCodeAttribute("System.Resources.Tools.StronglyTypedResourceBuilder", "17.0.0.0")]
- [global::System.Diagnostics.DebuggerNonUserCodeAttribute()]
- [global::System.Runtime.CompilerServices.CompilerGeneratedAttribute()]
- internal class NetSparkleResources {
-
- private static global::System.Resources.ResourceManager resourceMan;
-
- private static global::System.Globalization.CultureInfo resourceCulture;
-
- [global::System.Diagnostics.CodeAnalysis.SuppressMessageAttribute("Microsoft.Performance", "CA1811:AvoidUncalledPrivateCode")]
- internal NetSparkleResources() {
- }
-
- ///
- /// Returns the cached ResourceManager instance used by this class.
- ///
- [global::System.ComponentModel.EditorBrowsableAttribute(global::System.ComponentModel.EditorBrowsableState.Advanced)]
- internal static global::System.Resources.ResourceManager ResourceManager {
- get {
- if (object.ReferenceEquals(resourceMan, null)) {
- global::System.Resources.ResourceManager temp = new global::System.Resources.ResourceManager("Krypton.Toolkit.Suite.Extended.Software.Updater.NetSparkle.Resources.NetSparkleRe" +
- "sources", typeof(NetSparkleResources).Assembly);
- resourceMan = temp;
- }
- return resourceMan;
- }
- }
-
- ///
- /// Overrides the current thread's CurrentUICulture property for all
- /// resource lookups using this strongly typed resource class.
- ///
- [global::System.ComponentModel.EditorBrowsableAttribute(global::System.ComponentModel.EditorBrowsableState.Advanced)]
- internal static global::System.Globalization.CultureInfo Culture {
- get {
- return resourceCulture;
- }
- set {
- resourceCulture = value;
- }
- }
-
- ///
- /// Looks up a localized resource of type System.Drawing.Bitmap.
- ///
- internal static System.Drawing.Bitmap clock_go {
- get {
- object obj = ResourceManager.GetObject("clock_go", resourceCulture);
- return ((System.Drawing.Bitmap)(obj));
- }
- }
-
- ///
- /// Looks up a localized resource of type System.Drawing.Bitmap.
- ///
- internal static System.Drawing.Bitmap clock_go_32 {
- get {
- object obj = ResourceManager.GetObject("clock_go_32", resourceCulture);
- return ((System.Drawing.Bitmap)(obj));
- }
- }
-
- ///
- /// Looks up a localized resource of type System.Drawing.Bitmap.
- ///
- internal static System.Drawing.Bitmap clock_go1 {
- get {
- object obj = ResourceManager.GetObject("clock_go1", resourceCulture);
- return ((System.Drawing.Bitmap)(obj));
- }
- }
-
- ///
- /// Looks up a localized resource of type System.Drawing.Bitmap.
- ///
- internal static System.Drawing.Bitmap clock_play {
- get {
- object obj = ResourceManager.GetObject("clock_play", resourceCulture);
- return ((System.Drawing.Bitmap)(obj));
- }
- }
-
- ///
- /// Looks up a localized string similar to Error!.
- ///
- internal static string DefaultUIFactory_ErrorTitle {
- get {
- return ResourceManager.GetString("DefaultUIFactory_ErrorTitle", resourceCulture);
- }
- }
-
- ///
- /// Looks up a localized string similar to Info.
- ///
- internal static string DefaultUIFactory_MessageTitle {
- get {
- return ResourceManager.GetString("DefaultUIFactory_MessageTitle", resourceCulture);
- }
- }
-
- ///
- /// Looks up a localized string similar to Sorry, either you aren't connected to the internet, or our server is having a problem..
- ///
- internal static string DefaultUIFactory_ShowCannotDownloadAppcastMessage {
- get {
- return ResourceManager.GetString("DefaultUIFactory_ShowCannotDownloadAppcastMessage", resourceCulture);
- }
- }
-
- ///
- /// Looks up a localized string similar to Sorry, there was a problem attempting to download the update
- ///
- ///{0}.
- ///
- internal static string DefaultUIFactory_ShowDownloadErrorMessage {
- get {
- return ResourceManager.GetString("DefaultUIFactory_ShowDownloadErrorMessage", resourceCulture);
- }
- }
-
- ///
- /// Looks up a localized string similar to Updater not supported, please execute {0} manually.
- ///
- internal static string DefaultUIFactory_ShowUnknownInstallerFormatMessageText {
- get {
- return ResourceManager.GetString("DefaultUIFactory_ShowUnknownInstallerFormatMessageText", resourceCulture);
- }
- }
-
- ///
- /// Looks up a localized string similar to You have elected to skip this version..
- ///
- internal static string DefaultUIFactory_ShowVersionIsSkippedByUserRequestMessage {
- get {
- return ResourceManager.GetString("DefaultUIFactory_ShowVersionIsSkippedByUserRequestMessage", resourceCulture);
- }
- }
-
- ///
- /// Looks up a localized string similar to Your current version is up to date..
- ///
- internal static string DefaultUIFactory_ShowVersionIsUpToDateMessage {
- get {
- return ResourceManager.GetString("DefaultUIFactory_ShowVersionIsUpToDateMessage", resourceCulture);
- }
- }
-
- ///
- /// Looks up a localized string similar to More information.
- ///
- internal static string DefaultUIFactory_ToastCallToAction {
- get {
- return ResourceManager.GetString("DefaultUIFactory_ToastCallToAction", resourceCulture);
- }
- }
-
- ///
- /// Looks up a localized string similar to New Version Available.
- ///
- internal static string DefaultUIFactory_ToastMessage {
- get {
- return ResourceManager.GetString("DefaultUIFactory_ToastMessage", resourceCulture);
- }
- }
-
- ///
- /// Looks up a localized resource of type System.Drawing.Bitmap.
- ///
- internal static System.Drawing.Bitmap download {
- get {
- object obj = ResourceManager.GetObject("download", resourceCulture);
- return ((System.Drawing.Bitmap)(obj));
- }
- }
-
- ///
- /// Looks up a localized resource of type System.Drawing.Bitmap.
- ///
- internal static System.Drawing.Bitmap download_32 {
- get {
- object obj = ResourceManager.GetObject("download_32", resourceCulture);
- return ((System.Drawing.Bitmap)(obj));
- }
- }
-
- ///
- /// Looks up a localized resource of type System.Drawing.Bitmap.
- ///
- internal static System.Drawing.Bitmap download1 {
- get {
- object obj = ResourceManager.GetObject("download1", resourceCulture);
- return ((System.Drawing.Bitmap)(obj));
- }
- }
-
- ///
- /// Looks up a localized resource of type System.Drawing.Bitmap.
- ///
- internal static System.Drawing.Bitmap hand_point {
- get {
- object obj = ResourceManager.GetObject("hand_point", resourceCulture);
- return ((System.Drawing.Bitmap)(obj));
- }
- }
-
- ///
- /// Looks up a localized resource of type System.Drawing.Bitmap.
- ///
- internal static System.Drawing.Bitmap update {
- get {
- object obj = ResourceManager.GetObject("update", resourceCulture);
- return ((System.Drawing.Bitmap)(obj));
- }
- }
-
- ///
- /// Looks up a localized resource of type System.Drawing.Bitmap.
- ///
- internal static System.Drawing.Bitmap update_48_x_48 {
- get {
- object obj = ResourceManager.GetObject("update_48_x_48", resourceCulture);
- return ((System.Drawing.Bitmap)(obj));
- }
- }
-
- ///
- /// Looks up a localized resource of type System.Drawing.Icon similar to (Icon).
- ///
- internal static System.Drawing.Icon update1 {
- get {
- object obj = ResourceManager.GetObject("update1", resourceCulture);
- return ((System.Drawing.Icon)(obj));
- }
- }
-
- ///
- /// Looks up a localized resource of type System.Drawing.Bitmap.
- ///
- internal static System.Drawing.Bitmap update2 {
- get {
- object obj = ResourceManager.GetObject("update2", resourceCulture);
- return ((System.Drawing.Bitmap)(obj));
- }
- }
-
- ///
- /// Looks up a localized resource of type System.Drawing.Icon similar to (Icon).
- ///
- internal static System.Drawing.Icon ZipExtractor {
- get {
- object obj = ResourceManager.GetObject("ZipExtractor", resourceCulture);
- return ((System.Drawing.Icon)(obj));
- }
- }
- }
-}
diff --git a/Source/Krypton Toolkit/Krypton.Toolkit.Suite.Extended.Software.Updater/NetSparkle/Resources/NetSparkleResources.resx b/Source/Krypton Toolkit/Krypton.Toolkit.Suite.Extended.Software.Updater/NetSparkle/Resources/NetSparkleResources.resx
deleted file mode 100644
index e91822613..000000000
--- a/Source/Krypton Toolkit/Krypton.Toolkit.Suite.Extended.Software.Updater/NetSparkle/Resources/NetSparkleResources.resx
+++ /dev/null
@@ -1,189 +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
-
-
-
- ..\..\Resources\clock_go.png;System.Drawing.Bitmap, System.Drawing, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a
-
-
- ..\..\Resources\clock_go1.png;System.Drawing.Bitmap, System.Drawing, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a
-
-
- ..\..\Resources\clock_go_32.png;System.Drawing.Bitmap, System.Drawing, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a
-
-
- ..\..\Resources\clock_play.png;System.Drawing.Bitmap, System.Drawing, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a
-
-
- Error!
-
-
- Info
-
-
- Sorry, either you aren't connected to the internet, or our server is having a problem.
-
-
- Sorry, there was a problem attempting to download the update
-
-{0}
-
-
- Updater not supported, please execute {0} manually
-
-
- You have elected to skip this version.
-
-
- Your current version is up to date.
-
-
- More information
-
-
- New Version Available
-
-
- ..\..\Resources\download.png;System.Drawing.Bitmap, System.Drawing, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a
-
-
- ..\..\Resources\download1.png;System.Drawing.Bitmap, System.Drawing, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a
-
-
- ..\..\Resources\download_32.png;System.Drawing.Bitmap, System.Drawing, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a
-
-
- ..\..\Resources\hand_point.png;System.Drawing.Bitmap, System.Drawing, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a
-
-
- ..\..\Resources\update.gif;System.Drawing.Bitmap, System.Drawing, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a
-
-
- ..\..\Resources\update.ico;System.Drawing.Icon, System.Drawing, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a
-
-
- ..\..\Resources\update.png;System.Drawing.Bitmap, System.Drawing, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a
-
-
- ..\..\Resources\update_48_x_48.png;System.Drawing.Bitmap, System.Drawing, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a
-
-
- ..\..\Resources\ZipExtractor.ico;System.Drawing.Icon, System.Drawing, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a
-
-
\ No newline at end of file
diff --git a/Source/Krypton Toolkit/Krypton.Toolkit.Suite.Extended.Software.Updater/NetSparkle/UX/NetSparkleCheckingForUpdatesWindow.Designer.cs b/Source/Krypton Toolkit/Krypton.Toolkit.Suite.Extended.Software.Updater/NetSparkle/UX/NetSparkleCheckingForUpdatesWindow.Designer.cs
deleted file mode 100644
index bc75715f5..000000000
--- a/Source/Krypton Toolkit/Krypton.Toolkit.Suite.Extended.Software.Updater/NetSparkle/UX/NetSparkleCheckingForUpdatesWindow.Designer.cs
+++ /dev/null
@@ -1,149 +0,0 @@
-namespace Krypton.Toolkit.Suite.Extended.Software.Updater
-{
- partial class NetSparkleCheckingForUpdatesWindow
- {
- ///
- /// 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(NetSparkleCheckingForUpdatesWindow));
- this.kryptonPanel1 = new Krypton.Toolkit.KryptonPanel();
- this.kryptonTableLayoutPanel1 = new Krypton.Toolkit.KryptonTableLayoutPanel();
- this.pbxApplicationIcon = new System.Windows.Forms.PictureBox();
- this.kwlblCheckingForUpdates = new Krypton.Toolkit.KryptonWrapLabel();
- this.kpbProgress = new Krypton.Toolkit.KryptonProgressBar();
- this.kryptonPanel2 = new Krypton.Toolkit.KryptonPanel();
- this.kbtnCancel = new Krypton.Toolkit.KryptonButton();
- ((System.ComponentModel.ISupportInitialize)(this.kryptonPanel1)).BeginInit();
- this.kryptonPanel1.SuspendLayout();
- this.kryptonTableLayoutPanel1.SuspendLayout();
- ((System.ComponentModel.ISupportInitialize)(this.pbxApplicationIcon)).BeginInit();
- ((System.ComponentModel.ISupportInitialize)(this.kryptonPanel2)).BeginInit();
- this.kryptonPanel2.SuspendLayout();
- this.SuspendLayout();
- //
- // kryptonPanel1
- //
- this.kryptonPanel1.Location = new System.Drawing.Point(0, 0);
- this.kryptonPanel1.Name = "kryptonPanel1";
- this.kryptonPanel1.Size = new System.Drawing.Size(530, 167);
- this.kryptonPanel1.TabIndex = 1;
- //
- // kryptonTableLayoutPanel1
- //
- this.kryptonTableLayoutPanel1.BackgroundImage = ((System.Drawing.Image)(resources.GetObject("kryptonTableLayoutPanel1.BackgroundImage")));
- this.kryptonTableLayoutPanel1.ColumnCount = 3;
- this.kryptonTableLayoutPanel1.Controls.Add(this.pbxApplicationIcon, 0, 0);
- this.kryptonTableLayoutPanel1.Controls.Add(this.kwlblCheckingForUpdates, 1, 0);
- this.kryptonTableLayoutPanel1.Controls.Add(this.kpbProgress, 1, 1);
- this.kryptonTableLayoutPanel1.Controls.Add(this.kryptonPanel2, 1, 2);
- this.kryptonTableLayoutPanel1.Location = new System.Drawing.Point(0, 0);
- this.kryptonTableLayoutPanel1.Name = "kryptonTableLayoutPanel1";
- this.kryptonTableLayoutPanel1.RowCount = 3;
- this.kryptonTableLayoutPanel1.Size = new System.Drawing.Size(530, 167);
- this.kryptonTableLayoutPanel1.TabIndex = 0;
- //
- // pbxApplicationIcon
- //
- this.pbxApplicationIcon.BackColor = System.Drawing.Color.Transparent;
- this.pbxApplicationIcon.Location = new System.Drawing.Point(3, 3);
- this.pbxApplicationIcon.Name = "pbxApplicationIcon";
- this.pbxApplicationIcon.Padding = new System.Windows.Forms.Padding(5, 5, 0, 0);
- this.pbxApplicationIcon.Size = new System.Drawing.Size(48, 48);
- this.pbxApplicationIcon.TabIndex = 0;
- this.pbxApplicationIcon.TabStop = false;
- //
- // kwlblCheckingForUpdates
- //
- this.kwlblCheckingForUpdates.AutoSize = false;
- this.kryptonTableLayoutPanel1.SetColumnSpan(this.kwlblCheckingForUpdates, 2);
- this.kwlblCheckingForUpdates.Font = new System.Drawing.Font("Segoe UI", 14.25F, System.Drawing.FontStyle.Bold, System.Drawing.GraphicsUnit.Point, ((byte)(0)));
- this.kwlblCheckingForUpdates.ForeColor = System.Drawing.Color.FromArgb(((int)(((byte)(30)))), ((int)(((byte)(57)))), ((int)(((byte)(91)))));
- this.kwlblCheckingForUpdates.LabelStyle = Krypton.Toolkit.LabelStyle.NormalControl;
- this.kwlblCheckingForUpdates.Location = new System.Drawing.Point(41, 0);
- this.kwlblCheckingForUpdates.Name = "kwlblCheckingForUpdates";
- this.kwlblCheckingForUpdates.Size = new System.Drawing.Size(486, 69);
- this.kwlblCheckingForUpdates.StateCommon.Font = new System.Drawing.Font("Segoe UI", 14.25F, System.Drawing.FontStyle.Bold, System.Drawing.GraphicsUnit.Point, ((byte)(0)));
- this.kwlblCheckingForUpdates.Text = "Checking for Updates...";
- this.kwlblCheckingForUpdates.TextAlign = System.Drawing.ContentAlignment.MiddleCenter;
- //
- // kpbProgress
- //
- this.kryptonTableLayoutPanel1.SetColumnSpan(this.kpbProgress, 2);
- this.kpbProgress.Location = new System.Drawing.Point(41, 72);
- this.kpbProgress.Name = "kpbProgress";
- this.kpbProgress.Size = new System.Drawing.Size(486, 23);
- this.kpbProgress.TabIndex = 2;
- //
- // kryptonPanel2
- //
- this.kryptonTableLayoutPanel1.SetColumnSpan(this.kryptonPanel2, 2);
- this.kryptonPanel2.Location = new System.Drawing.Point(41, 101);
- this.kryptonPanel2.Name = "kryptonPanel2";
- this.kryptonPanel2.Size = new System.Drawing.Size(486, 63);
- this.kryptonPanel2.TabIndex = 3;
- //
- // kbtnCancel
- //
- this.kbtnCancel.Location = new System.Drawing.Point(198, 18);
- this.kbtnCancel.Name = "kbtnCancel";
- this.kbtnCancel.Size = new System.Drawing.Size(90, 25);
- this.kbtnCancel.TabIndex = 0;
- this.kbtnCancel.Values.Text = "&Cancel";
- this.kbtnCancel.Click += new System.EventHandler(this.kbtnCancel_Click);
- //
- // NetSparkleCheckingForUpdatesWindow
- //
- this.AutoScaleDimensions = new System.Drawing.SizeF(6F, 13F);
- this.ClientSize = new System.Drawing.Size(530, 167);
- this.Icon = ((System.Drawing.Icon)(resources.GetObject("$this.Icon")));
- this.MaximizeBox = false;
- this.MinimizeBox = false;
- this.Name = "NetSparkleCheckingForUpdatesWindow";
- this.Text = "Checking for Updates";
- this.FormClosing += new System.Windows.Forms.FormClosingEventHandler(this.NetSparkleCheckingForUpdatesWindow_FormClosing);
- this.Controls.SetChildIndex(this.kryptonPanel1, 0);
- ((System.ComponentModel.ISupportInitialize)(this.kryptonPanel1)).EndInit();
- this.kryptonPanel1.ResumeLayout(false);
- this.kryptonTableLayoutPanel1.ResumeLayout(false);
- this.kryptonTableLayoutPanel1.PerformLayout();
- ((System.ComponentModel.ISupportInitialize)(this.pbxApplicationIcon)).EndInit();
- ((System.ComponentModel.ISupportInitialize)(this.kryptonPanel2)).EndInit();
- this.kryptonPanel2.ResumeLayout(false);
- this.ResumeLayout(false);
-
- }
-
- #endregion
-
- private KryptonPanel kryptonPanel1;
- private KryptonTableLayoutPanel kryptonTableLayoutPanel1;
- private PictureBox pbxApplicationIcon;
- private KryptonWrapLabel kwlblCheckingForUpdates;
- private KryptonProgressBar kpbProgress;
- private KryptonPanel kryptonPanel2;
- private KryptonButton kbtnCancel;
- }
-}
\ No newline at end of file
diff --git a/Source/Krypton Toolkit/Krypton.Toolkit.Suite.Extended.Software.Updater/NetSparkle/UX/NetSparkleCheckingForUpdatesWindow.cs b/Source/Krypton Toolkit/Krypton.Toolkit.Suite.Extended.Software.Updater/NetSparkle/UX/NetSparkleCheckingForUpdatesWindow.cs
deleted file mode 100644
index 8451fed61..000000000
--- a/Source/Krypton Toolkit/Krypton.Toolkit.Suite.Extended.Software.Updater/NetSparkle/UX/NetSparkleCheckingForUpdatesWindow.cs
+++ /dev/null
@@ -1,94 +0,0 @@
-#region License
-
-/*
- * The MIT License
- *
- * Copyright (c) 2022 Deadpikle
- *
- * Permission is hereby granted, free of charge, to any person obtaining a copy
- * of this software and associated documentation files (the "Software"), to deal
- * in the Software without restriction, including without limitation the rights
- * to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
- * copies of the Software, and to permit persons to whom the Software is
- * furnished to do so, subject to the following conditions:
- *
- * The above copyright notice and this permission notice shall be included in
- * all copies or substantial portions of the Software.
- *
- * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
- * IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
- * FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
- * AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
- * LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
- * OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN
- * THE SOFTWARE.
- */
-
-#endregion
-
-using MethodInvoker = System.Windows.Forms.MethodInvoker;
-using Size = System.Drawing.Size;
-
-namespace Krypton.Toolkit.Suite.Extended.Software.Updater
-{
- public partial class NetSparkleCheckingForUpdatesWindow : KryptonForm, ICheckingForUpdates
- {
- public NetSparkleCheckingForUpdatesWindow()
- {
- InitializeComponent();
- }
-
- public NetSparkleCheckingForUpdatesWindow(Icon? applicationIcon = null)
- {
- InitializeComponent();
-
- if (applicationIcon != null)
- {
- Icon = applicationIcon;
-
- pbxApplicationIcon.Image = new Icon(applicationIcon, new Size(48, 48)).ToBitmap();
- }
- }
-
- public event EventHandler? UpdatesUIClosing;
-
- private void NetSparkleCheckingForUpdatesWindow_FormClosing(object sender, FormClosingEventArgs e)
- {
- UpdatesUIClosing?.Invoke(sender, new());
- }
-
- void ICheckingForUpdates.Close()
- {
- CloseForm();
- }
- void ICheckingForUpdates.Show()
- {
- Show();
- }
-
- private void kbtnCancel_Click(object sender, EventArgs e)
- {
- CloseForm();
- }
-
- private void CloseForm()
- {
- if (InvokeRequired && !IsDisposed && !Disposing)
- {
- Invoke((MethodInvoker)delegate ()
- {
- if (!IsDisposed && !Disposing)
- {
- UpdatesUIClosing?.Invoke(this, new());
- Close();
- }
- });
- }
- else if (!IsDisposed && !Disposing)
- {
- UpdatesUIClosing?.Invoke(this, new());
- Close();
- }
- }
- }
-}
diff --git a/Source/Krypton Toolkit/Krypton.Toolkit.Suite.Extended.Software.Updater/NetSparkle/UX/NetSparkleCheckingForUpdatesWindow.resx b/Source/Krypton Toolkit/Krypton.Toolkit.Suite.Extended.Software.Updater/NetSparkle/UX/NetSparkleCheckingForUpdatesWindow.resx
deleted file mode 100644
index 0268b9d36..000000000
--- a/Source/Krypton Toolkit/Krypton.Toolkit.Suite.Extended.Software.Updater/NetSparkle/UX/NetSparkleCheckingForUpdatesWindow.resx
+++ /dev/null
@@ -1,327 +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
-
-
-
-
- iVBORw0KGgoAAAANSUhEUgAAAhIAAACnCAYAAABEpbVQAAAAAXNSR0IArs4c6QAAAARnQU1BAACxjwv8
- YQUAAAAJcEhZcwAADsMAAA7DAcdvqGQAAAOASURBVHhe7djBTQNREERB0nWM5EAYpGHkkcxppIaeax1K
- q7+TwFN/PB6P5+fX9/P1ffP29vb29vb2/sv7NyQAAP7j1RBCAgCoTEhsBwCAxCIBAJwICQCgYpEAAGoT
- EtsBACCxSAAAJ0ICAKhYJACA2oTEdgAASCwSAMCJkAAAKhYJAKA2IbEdAAASiwQAcCIkAICKRQIAqE1I
- bAcAgMQiAQCcCAkAoGKRAABqExLbAQAgsUgAACdCAgCoWCQAgNqExHYAAEgsEgDAiZAAACoWCQCgNiGx
- HQAAEosEAHAiJACAikUCAKhNSGwHAIDEIgEAnAgJAKBikQAAahMS2wEAILFIAAAnQgIAqFgkAIDahMR2
- AABILBIAwImQAAAqFgkAoDYhsR0AABKLBABwIiQAgIpFAgCoTUhsBwCAxCIBAJwICQCgYpEAAGoTEtsB
- ACCxSAAAJ0ICAKhYJACA2oTEdgAASCwSAMCJkAAAKhYJAKA2IbEdAAASiwQAcCIkAICKRQIAqE1IbAcA
- gMQiAQCcCAkAoGKRAABqExLbAQAgsUgAACdCAgCoWCQAgNqExHYAAEgsEgDAiZAAACoWCQCgNiGxHQAA
- EosEAHAiJACAikUCAKhNSGwHAIDEIgEAnAgJAKBikQAAahMS2wEAILFIAAAnQgIAqFgkAIDahMR2AABI
- LBIAwImQAAAqFgkAoDYhsR0AABKLBABwIiQAgIpFAgCoTUhsBwCAxCIBAJwICQCgYpEAAGoTEtsBACCx
- SAAAJ0ICAKhYJACA2oTEdgAASCwSAMCJkAAAKhYJAKA2IbEdAAASiwQAcCIkAICKRQIAqE1IbAcAgMQi
- AQCcCAkAoGKRAABqExLbAQAgsUgAACdCAgCoWCQAgNqExHYAAEgsEgDAiZAAACoWCQCgNiGxHQAAEosE
- AHAiJACAikUCAKhNSGwHAIDEIgEAnAgJAKBikQAAahMS2wEAILFIAAAnQgIAqFgkAIDahMR2AABILBIA
- wImQAAAqFgkAoDYhsR0AABKLBABwIiQAgIpFAgCoTUhsBwCAxCIBAJwICQCgYpEAAGoTEtsBACCxSAAA
- J0ICAKhYJACA2oTEdgAASCwSAMCJkAAAKhYJAKA2IbEdAAASiwQAcCIkAICKRQIAqE1IbAcAgMQiAQCc
- CAkAoPK7SLy9f3p7e3t7e3t75/fj+QOlZif8w1jFCgAAAABJRU5ErkJggg==
-
-
-
-
- AAABAAIAEBAAAAAAIABoBAAAJgAAADAwAAAAACAAqCUAAI4EAAAoAAAAEAAAACAAAAABACAAAAAAAAAE
- AADXDQAA1w0AAAAAAAAAAAAA////AP///wD///8A////AP///wD///8A////AABczlIAXM5i////AP//
- /wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AABczg8BXs/tAV3P9ABc
- zhf///8A////AP///wD///8A////AP///wD///8A////AABczmIAXM5rAFzOMwBczgUAXc+fDW3a9xBx
- 3fkBXtCwAFzOAwBczjAAXM5nAFzOb////wD///8A////AP///wAAXM50A1/Q/Adi0PoBXs/6A1/Q+h+I
- 8v8givP/BWHR+QFez/kGYdD7BGHR/ABczoz///8A////AP///wD///8AAFzOPAVh0fcji/b/I4fw/yCF
- 7v8Xhfb/E4P2/yGF7/8ih/D/I4v2/whl1PMAXM5Q////AP///wD///8A////AABczgkAXM78K43y/xWG
- 9v8Thfb/a7T6/2q0+v8Thfb/EoT1/y+S9f8BXc7+AFzOFv///wD///8A////AABczhUAXc+nB2LQ+jST
- 8f8fjff/bbf7/83q///N6v//bbf7/xmK9v83lvT/CmTS+QFe0LMAXM4a////AABczmMCXs/zIHrf+EWf
- 9v80mvj/crr7/83q///N6v//zer//83q//9xuvv/MZj4/0ah9v8lf+H6Al7P9gBczm8AXM5jAV3P8yJ7
- 3/hOpvf/QaL5/x+S+P8bkPj/zer//83q//8bkPj/HZH4/z2h+f9QqPf/JoDi+gJez/YAXM5v////AABc
- zhUBXs+nCGPR+lKm9P85ofn/IZb4/83q///N6v//IZb4/zKe+f9Xq/X/C2XT+QJf0LMAXM4a////AP//
- /wD///8AAFzOCQBdzvxisvb/Qaj6/0Cn+v+/5P7/v+T+/0Cn+v8+pvr/aLj5/wNez/4AXM4W////AP//
- /wD///8A////AABczjwQaNP3dcH8/2y49v9ms/T/Xrf7/1e0+/9otPX/a7f2/3TB+/8cc9j0AFzOUP//
- /wD///8A////AP///wAAXM50CmPR/BJp0/oCXs/6CmTR+nG9+f90wPr/EGjS+QFdz/kPZ9L7DWbS/ABc
- zoz///8A////AP///wD///8AAFzOYgBczmsAXM4zAFzOBQJfz54xhd/4PI7j+QJf0LAAXM4DAFzOMABc
- zmcAXM5v////AP///wD///8A////AP///wD///8A////AP///wAAXM4PAl/P7QRfz/QAXM4X////AP//
- /wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AABczlAAXM5g////AP//
- /wD///8A////AP///wD///8A////AP5/AAD8PwAAwAMAAMADAADAAwAAwAMAAIABAAAAAAAAAAAAAIAB
- AADAAwAAwAMAAMADAADAAwAA/D8AAP5/AAAoAAAAMAAAAGAAAAABACAAAAAAAAAkAAASCwAAEgsAAAAA
- AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAQAA
- AAEAAAACAAAAAwAAAAMAAAAEAAAABQAAAAYAAAAHAAAABwAAAAcAAAAIAAAACAAAAAkAAAAJAAAACAAA
- AAgAAAAHAAAABwAAAAcAAAAGAAAABQAAAAQAAAADAAAAAwAAAAIAAAABAAAAAQAAAAAAAAAAAAAAAAAA
- AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
- AAEAAAABAAAAAgAAAAMAAAAEAAAABQAAAAYAAAAHAAAACQAAAAoAAAALAAAADAAAAA0AAAANAAAADgAA
- AA4AAAAOAAAADgAAAA0AAAANAAAADAAAAAsAAAAKAAAACQAAAAcAAAAGAAAABQAAAAQAAAADAAAAAgAA
- AAEAAAABAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
- AAAAAAAAAAAAAQAAAAIAAAADAAAAAwAAAAUAAAAHAAAACAAAAAoAAAAMAAAADQAAAA8AAAARAAAAEgAA
- ABQAAAAVAEacRQBOr2IAAAAWAAAAFQAAABUAAAAUAAAAEgAAABEAAAAPAAAADQAAAAwAAAAKAAAACAAA
- AAcAAAAFAAAAAwAAAAMAAAACAAAAAQAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
- AAAAAAAAAAAAAAAAAAAAAAABAAAAAgAAAAMAAAAEAAAABgAAAAgAAAAKAAAADAAAAA8AAAARAAAAFAAA
- ABYAAAAZAAAAGwAAABwACxkiAVzL3AJezfEAIkwuAAAAHgAAAB4AAAAcAAAAGwAAABkAAAAWAAAAFAAA
- ABEAAAAPAAAADAAAAAoAAAAIAAAABgAAAAQAAAADAAAAAgAAAAEAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
- AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAEAAAACAAAAAwAAAAQAAAAGAAAACQAAAAsAAAAOAAAAEQAA
- ABUAAAAYAAAAGwAAAB4AAAAhAAAAJAAAACYAT7CNDGjU+BJv2PkBVb2wAAAAKAAAACcAAAAmAAAAJAAA
- ACEAAAAeAAAAGwAAABgAAAAVAAAAEQAAAA4AAAALAAAACQAAAAYAAAAEAAAAAwAAAAIAAAABAAAAAAAA
- AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAQAAAAEAAAACAAAABAAAAAYAAAAJAAAADAAA
- ABAAAAATAAAAFwAAABsAAAAfAAAAIwAAACYAAAAqAAAALQArYUwCXc76Jozw/yqR8/8GYc/8ADqCZwAA
- ADIAAAAvAAAALQAAACoAAAAmAAAAIwAAAB8AAAAbAAAAFwAAABMAAAAQAAAADAAAAAkAAAAGAAAABAAA
- AAIAAAABAAAAAQAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAQAAAAIAAAADAAAABQAA
- AAgAAAAMAAAADwAAABQAAAAYAAAAHQAAACEAAAAmAAAAKgAAAC4AAAAyAAAANgFYw9MaeN/8JpT4/yGR
- 9/8fgOX+AlzJ6QALGUEAAAA5AAAANgAAADIAAAAuAAAAKgAAACYAAAAhAAAAHQAAABgAAAAUAAAADwAA
- AAwAAAAIAAAABQAAAAMAAAACAAAAAQAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAQAA
- AAMAAAAEAAAABwAAAAoAAAAOAAAAEgAAABcAAAAcAAAAIQAAACYAAAAsAAAAMAAAADUAAAA5AEOWiAlj
- 0foqk/X/Fov3/xOJ9/8plPf/EGrU+QBMqKgAAABAAAAAPQAAADkAAAA1AAAAMAAAACwAAAAmAAAAIQAA
- ABwAAAAXAAAAEgAAAA4AAAAKAAAABwAAAAQAAAADAAAAAQAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
- AAAAAAABAAAAAQAAAAMAAAAFAFO6QABIoSwAAAAQAAAAFQAAABoAAAAfAAAAJQAAACoAAAAvAAAANAAA
- ADkAHD5QAV3N9yWH6/8djvf/EIf3/xCH9/8Xi/f/KY3w/wRfz/wAKVxnAAAAQgAAAD4AAAA5AAAANAAA
- AC8AAAAqAAAAJQAAAB8AAAAaADZ6LgBOr08AAAALAAAACAAAAAUAAAADAAAAAQAAAAEAAAAAAAAAAAAA
- AAAAAAAAAAAAAAAAAAAAAAABAAAAAgAAAAMAAAAFAFrJkQJdzv8DX8/xAVvJvwBSuIcAQpVZABUwLwAA
- ACwAAAAyAAAANwAAADwBVLvFFnLb+ieR+P8Ohff/DoX3/w6F9/8Ohff/Io/4/x574v0AWMTfAAMGRgAA
- AEAAAAA8AAAANwAMGjgAOoFbAE6uhwBYxLsCXs7tA17P/wBaybYAAAAMAAAACAAAAAUAAAADAAAAAgAA
- AAEAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAABAAAAAgAAAAMAAAAFAFbCWQZj0vcpi+//I4Hm/xl0
- 2/gQaNL5B2DP/gJcyuAAUretAESXgABEmIoGYc/8KpD0/xKG9v8Lg/b/C4P2/wuD9v8Lg/b/DoT2/ymR
- 9f8NZ9L6AEiiogA+i4EATq+rAVrH3AZgz/wNZdH7GHLZ+CF/5f8piu7/DWvY+ABVv34AAAAMAAAACAAA
- AAUAAAADAAAAAgAAAAEAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAABAAAAAQAAAAMAAAAFAEihIQBc
- zv8oj/X/G4r3/xyL9/8kj/f/Ko3y/yiG6v8feuH8FG3V+A9m0f4jguj/HYv3/wmB9v8Jgfb/CYH2/wmB
- 9v8Jgfb/CYH2/xeI9v8miO3/EGbR/xNr1PgdeOD8JoXp/ymM8f8lj/f/HYv3/xiJ9/8sk/f/BGDQ+gBM
- q0gAAAALAAAACAAAAAUAAAADAAAAAQAAAAEAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAQAA
- AAIAAAAEAAAABwBdz+ofhOz/GYj3/wd/9v8Hf/b/CID2/w+D9v8YiPf/H4z3/yWN9f8Ziff/CYD2/wd/
- 9v8Hf/b/B3/2/wd/9v8Hf/b/B3/2/wd/9v8Xh/f/JIz1/yCM9/8ZiPf/EIT2/wiA9v8Hf/b/B3/2/xOF
- 9v8ni/H/AFzO/AAiTBYAAAAKAAAABwAAAAQAAAACAAAAAQAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
- AAAAAAAAAAAAAQAAAAIAAAADAAAABQBczK4WeOL/IIv2/wR99f8EffX/BH31/wR99f8EffX/BH31/wR9
- 9f8EffX/BH31/wR99f8EffX/BH31/wR99f8EffX/BH31/wR99f8EffX/BH31/wR99f8EffX/BH31/wR9
- 9f8EffX/BH31/xmI9/8df+n/AF3O1gAAAAsAAAAIAAAABQAAAAMAAAACAAAAAQAAAAAAAAAAAAAAAAAA
- AAAAAAAAAAAAAAAAAAAAAAAAAAAAAQAAAAEAAAACAAAABABZyG8Ladj1KI/2/wJ79f8Ce/X/Anv1/wJ7
- 9f8Ce/X/Anv1/wJ79f8Ce/X/Anv1/wJ79f8Ce/X/Anv1/wJ79f8Ce/X/Anv1/wJ79f8Ce/X/Anv1/wJ7
- 9f8Ce/X/Anv1/wJ79f8Ce/X/Anv1/yGL9v8Uc9/8AFnHlwAAAAkAAAAGAAAABAAAAAIAAAABAAAAAQAA
- AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAEAAAACAAAAAwBWwjUCXs/8LZD2/wd9
- 9f8BevX/AXn1/wB59f8AefX/AHn1/wB59f8AefX/AHn1/wB59f8AefX/AHn1/xSF9v8AefX/AHn1/wB5
- 9f8AefX/AHn1/wB59f8BefX/AXn1/wF69f8BevX/Anv1/yuQ9/8KZtX1AFfCXAAAAAYAAAAEAAAAAwAA
- AAIAAAABAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAABAAAAAgA1
- dwcAXM/4KIrw/xSE9v8De/X/A3v1/wJ79f8Ce/X/Anv1/wJ79f8Ce/X/Anv1/wJ79f8Ce/X/RaT6/43P
- /v9NqPn/A3z1/wJ79f8Ce/X/Anv1/wJ79f8Ce/X/A3v1/wN79f8De/X/C3/1/y+R9P8CXc7/AE6vIwAA
- AAQAAAADAAAAAgAAAAEAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
- AAAAAAAAAAAAAQAAAAEAXc/IIH/o/yCL9/8Fffb/BX32/wV99v8Fffb/BX32/wV99v8Fffb/BX32/wuA
- 9v9gtPv/jtD+/47Q/v+O0P7/YLT7/wmA9v8Fffb/BX32/wV99v8Fffb/BX32/wV99v8Fffb/GYf3/ymJ
- 7v8AXc/tAAAAAwAAAAIAAAABAAAAAQAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
- AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAEAXM2XGHTe+iyS9/8Hf/b/B3/2/wd/9v8Hf/b/B3/2/wd/
- 9v8Hf/b/F4j3/3TA/P+O0P7/jtD+/47Q/v+O0P7/jtD+/2+9/P8Rhff/B3/2/wd/9v8Hf/b/B3/2/wd/
- 9v8Hf/b/I473/yJ/5v8AXc7EAAAAAgAAAAEAAAABAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
- AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAFzOFABdz6YHYdD8Lojo/iKO9/8Jgfb/CYH2/wmB
- 9v8Jgfb/CYH2/wmB9v8plPj/g8n9/47Q/v+O0P7/jtD+/47Q/v+O0P7/jtD+/47Q/v96xf3/HIz3/wmB
- 9v8Jgfb/CYH2/wmB9v8Jgfb/GIn3/zWP7f8LZdL6AF3PwQBcziIAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
- AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAXM5fAV7P8hx02/k7l/P/LJT3/w+E
- 9v8Mg/b/DIP2/wyD9v8Mg/b/DIP2/0Ci+v+Lz/7/jtD+/47Q/v+O0P7/jtD+/47Q/v+O0P7/jtD+/47Q
- /v+O0P7/hMr9/ymU+P8Mg/b/DIP2/wyD9v8Mg/b/DYP2/yeR9/89mfX/I3zf+wNf0PoAXM54AFzOBAAA
- AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAFzOJQFe0MUMZdL5NI3r/zyc
- +f8djfj/DoX3/w6F9/8Ohff/DoX3/w6F9/8Qhvf/WbH7/47Q/v+O0P7/jtD+/47Q/v+O0P7/jtD+/47Q
- /v+O0P7/jtD+/47Q/v+O0P7/jtD+/4rN/v85nvr/DoX3/w6F9/8Ohff/DoX3/w6F9/8Xivf/OJr4/zqT
- 7/8TbNX4AV7Q2ABczjYAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAABczgUAXc9+Al7P+yZ+
- 4PxEnvb/Lpb4/xKI9/8Qh/f/EIf3/xCH9/8Qh/f/EIf3/xiM+P9qvPz/is7+/4rO/v+Lz/7/jtD+/47Q
- /v+O0P7/jtD+/47Q/v+O0P7/jtD+/47Q/v+O0P7/i8/+/4rO/v+Kzv7/Rqf6/xCH9/8Qh/f/EIf3/xCH
- 9/8Qh/f/EIf3/yeT+P9Dn/f/LYXl/QZgz/0AXc+VAFzODQAAAAAAAAAAAAAAAAAAAAAAAAAAAFzOOwFe
- 0N0TbNb4Ppjw/z+f+f8dj/f/Eon3/xKJ9/8Siff/Eon3/xKJ9/8Siff/Eon3/xKJ9/8Siff/Eon3/xKJ
- 9/89ovr/jtD+/47Q/v+O0P7/jtD+/47Q/v+O0P7/jtD+/47Q/v+O0P7/OZ/6/xKJ9/8Siff/Eon3/xKJ
- 9/8Siff/Eon3/xKJ9/8Siff/Eon3/xKJ9/8ZjPf/OJz4/0Oc8/8cdNn5AV3P6wBczk4AAAAAAAAAAAAA
- AAAAXM4QAFzOzQNez/44k+7/Taf5/y2X+P8Vi/f/FYv3/xWL9/8Vi/f/FYv3/xWL9/8Vi/f/FYv3/xWL
- 9/8Vi/f/FYv3/xWL9/8/o/r/jtD+/47Q/v+O0P7/jtD+/47Q/v+O0P7/jtD+/47Q/v+O0P7/O6D6/xWL
- 9/8Vi/f/FYv3/xWL9/8Vi/f/FYv3/xWL9/8Vi/f/FYv3/xWL9/8Vi/f/JJL4/0ml+f9AmfH/CmTS/QBd
- z98AXM4iAAAAAAAAAAAAAAAAAFzOAwBcznIAXc/4Hnnf+kqk9/9Dovn/H5H4/xeN+P8Xjfj/F434/xeN
- +P8Xjfj/F434/xeN+P8Xjfj/F434/xeN+P9ApPr/jtD+/47Q/v+O0P7/jtD+/47Q/v+O0P7/jtD+/47Q
- /v+O0P7/PaL6/xeN+P8Xjfj/F434/xeN+P8Xjfj/F434/xeN+P8Xjfj/F434/xyP+P86nvn/Tqf4/yiD
- 5PsBXs/7AF3PiABczgkAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAXM4eAV7PuAZh0fk2j+v/Uqv6/zWd
- +f8aj/j/GY/4/xmP+P8Zj/j/GY/4/xmP+P8Zj/j/GY/4/xmP+P9Bpvr/jtD+/47Q/v+O0P7/jtD+/47Q
- /v+O0P7/jtD+/47Q/v+O0P7/PqP6/xmP+P8Zj/j/GY/4/xmP+P8Zj/j/GY/4/xmP+P8Zj/j/Lpn5/06p
- +v9AmO//DGbT+AFe0M4AXM4sAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAABc
- zlIBXs/rGXPa+E2k9P9Nqfr/KJf4/xyR+P8ckfj/HJH4/xyR+P8ckfj/HJH4/xyR+P9Dp/r/jtD+/47Q
- /v+O0P7/jtD+/47Q/v+O0P7/jtD+/47Q/v+O0P7/QKX6/xyR+P8ckfj/HJH4/xyR+P8ckfj/HJH4/yOU
- +P9Hpvn/Uqj2/yN83voBXc/1AFzOaQBczgEAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
- AAAAAAAAAAAAAAAAAAAAXM4NAV3PlgNf0Pwyi+b9WK75/zGc+f8ek/j/HpP4/x6T+P8ek/j/HpP4/x6T
- +P9Ep/r/jtD+/47Q/v+O0P7/jtD+/47Q/v+O0P7/jtD+/47Q/v+O0P7/QKb6/x6T+P8ek/j/HpP4/x6T
- +P8ek/j/J5f4/1iu+v89k+v/CGLQ+wFe0LAAXM4ZAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
- AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAABczjUBXtDcLoLg+0yq+v8glfn/IJX5/yCV
- +f8glfn/IJX5/yCV+f8sm/r/i87+/47Q/v+O0P7/jtD+/47Q/v+O0P7/jtD+/47Q/v+Jzf7/KZn5/yCV
- +f8glfn/IJX5/yCV+f8glfn/QKT6/z+R5/8BXs/tAFzOSwAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
- AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAABXc+hMYnl/U6s
- +v8il/n/Ipf5/yKX+f8il/n/Ipf5/yKX+f8il/n/K5z5/z2l+/89pfv/PaX7/z2l+/89pfv/PaX7/z2l
- +v8pm/n/Ipf5/yKX+f8il/n/Ipf5/yKX+f8il/n/Qqb6/0KX7P8CX9DPAAAAAAAAAAAAAAAAAAAAAAAA
- AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
- AAACX9DhSZ7u/0Sn+v8lmfn/JZn5/yWZ+f8lmfn/JZn5/yWZ+f8lmfn/JZn5/yWZ+f8lmfn/JZn5/yWZ
- +f8lmfn/JZn5/yWZ+f8lmfn/JZn5/yWZ+f8lmfn/JZn5/yWZ+f8lmfn/OKL6/1qr9P8AXc77AFzOBgAA
- AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
- AAAAAAAAAAAAAABczhIAXM7+YLH3/zij+f8nm/n/J5v5/yeb+f8nm/n/J5v5/yeb+f8nm/n/J5v5/yeb
- +f8nm/n/J5v5/yeb+f8nm/n/J5v5/yeb+f8nm/n/J5v5/yeb+f8nm/n/J5v5/yeb+f8nm/n/K535/2e4
- +v8LZNH7AFzONwAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
- AAAAAAAAAAAAAAAAAAAAAAAAAAAAAABczksQadP4arv8/yyf+v8pnfr/KZ36/ymd+v8pnfr/KZ36/ymd
- +v8pnfr/KZ36/ymd+v8pnfr/KZ36/ymd+v8pnfr/KZ36/ymd+v8pnfr/KZ36/ymd+v8pnfr/KZ36/ymd
- +v8pnfr/KZ36/2C2+/8le9z3AFzOcAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
- AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAABczoUsg+D6Yrf7/yyf+v8sn/r/LJ/6/yyf
- +v8sn/r/LJ/6/yyf+v8sn/r/LJ/6/yyf+v8sn/r/LJ/6/yyf+v8sn/r/LJ/6/yyf+v8sn/r/LJ/6/yyf
- +v8sn/r/LJ/6/yyf+v8sn/r/LJ/6/1Wy+/8+k+f/Al7QrwAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
- AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAJf0MlGm+v/VrP7/y6h
- +v8uofr/LqH6/y6h+v8wovr/Paj6/0es+/80pPr/LqH6/y6h+v8uofr/LqH6/y6h+v8uofr/LqH6/y6h
- +v8wovr/Rav7/z+p+v8xovr/LqH6/y6h+v8uofr/LqH6/0mt+/9ZqfH/Al7Q6gAAAAAAAAAAAAAAAAAA
- AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAFzOBAFd
- z/lhsfT/Sa77/zam+v9Grfv/VbT7/2W6+/9xv/r/arT0/1ul7P9vu/j/Q6z6/zCj+v8wo/r/MKP6/zCj
- +v8wo/r/MKP6/zmn+v9vvfr/XKXs/2ay8/9xvvr/aLz7/1m1+/9Kr/v/O6j6/z2p+v9wvfn/A17P/wBc
- zhsAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
- AAAAAAAAAFzOMwZg0Px2wvz/csH8/3K9+P9irvH/SJfn/S1+2/YSaNH+A1/P8wFez+M1iOH6br/8/zWm
- +/8ypfv/MqX7/zKl+/8ypfv/MqX7/2W7/P9JmOj9Al/P6wJez+4OZdH/J3ra9kWU5vxeqvD/crv4/3TC
- /P93w/z/GXDW9wBczlUAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
- AAAAAAAAAAAAAAAAAAAAAAAAAFzObRBo0/w9jOL4H3LW+Qhh0P0DYNDaAV3PmgBczl8AXM4nAFzOAQBc
- zhgCX8/1X63x/1q3/P81p/v/Naf7/zWn+/81p/v/TrL7/2249f8IYdD8AFzOMwAAAAAAXM4eAFzOVwBd
- zpEDYNDTB2HP+xtv1fo4ieD3HnTX/QBdzo8AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
- AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAFzOkwJf0LoAXM56AFzOQQBczgwAAAAAAAAAAAAA
- AAAAAAAAAAAAAAAAAAAAXM5jFmzU+HfC+v9Er/v/N6n7/zep+/88q/v/dML8/yl82/gBXc+NAAAAAAAA
- AAAAAAAAAAAAAAAAAAAAAAAAAFzOBwBczjoAXM5yAl/QsgBdzrEAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
- AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
- AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAl/QxkOV5vxvwvz/Oqv7/zmr+/9jvfz/WKTs/gJf
- z+QAXM4KAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
- AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
- AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAFzOJAVg0PltuPX/Wbn8/020
- /P92wPj/DmbR+wBczkQAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
- AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
- AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAFd
- zngjeNn4e8f8/3fH/f84iOD4Al7PowAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
- AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
- AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
- AAAAAAAAAAAAAABczgQCX9DXUqHr/WSv8f8EX8/vAFzOEgAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
- AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
- AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
- AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAXM4zCmTR+xZr1PkAXM5XAAAAAAAAAAAAAAAAAAAAAAAA
- AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
- AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
- AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAV7PjwJfz7kAAAAAAAAAAAAA
- AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
- AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
- AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
- AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
- AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
- AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
- AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
- AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA//AAAAD/AAD/wAAAAD8AAP+A
- AAAAHwAA/wAAAAAPAAD+AAAAAAcAAPwAAAAAAwAA/AAAAAADAAD8AAAAAAMAAPgAAAAAAQAA+AAAAAAB
- AAD4AAAAAAEAAPgAAAAAAQAA/AAAAAADAAD8AAAAAAMAAPwAAAAAAwAA/gAAAAAHAAD/AAAAAA8AAP+A
- AAAAHwAA/8AAAAA/AAD/gAAAAH8AAP8AAAAAHwAA/AAAAAAPAADwAAAAAAMAAOAAAAAAAQAAwAAAAAAA
- AADgAAAAAAEAAPgAAAAABwAA/gAAAAAPAAD/AAAAAD8AAP/AAAAA/wAA/+AAAAH/AAD/4AAAAP8AAP/A
- AAAA/wAA/8AAAAD/AAD/wAAAAP8AAP/AAAAA/wAA/4AAAAB/AAD/gAAAAH8AAP+AAAEAfwAA/4PwA/B/
- AAD///gD//8AAP//+Af//wAA///8D///AAD///wP//8AAP///h///wAA////P///AAD///////8AAP//
- /////wAA
-
-
-
\ No newline at end of file
diff --git a/Source/Krypton Toolkit/Krypton.Toolkit.Suite.Extended.Software.Updater/NetSparkle/UX/NetSparkleDownloadProgressWindow.Designer.cs b/Source/Krypton Toolkit/Krypton.Toolkit.Suite.Extended.Software.Updater/NetSparkle/UX/NetSparkleDownloadProgressWindow.Designer.cs
deleted file mode 100644
index 66687af40..000000000
--- a/Source/Krypton Toolkit/Krypton.Toolkit.Suite.Extended.Software.Updater/NetSparkle/UX/NetSparkleDownloadProgressWindow.Designer.cs
+++ /dev/null
@@ -1,213 +0,0 @@
-namespace Krypton.Toolkit.Suite.Extended.Software.Updater
-{
- partial class NetSparkleDownloadProgressWindow
- {
- ///
- /// 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(NetSparkleDownloadProgressWindow));
- this.kryptonPanel1 = new Krypton.Toolkit.KryptonPanel();
- this.kryptonTableLayoutPanel1 = new Krypton.Toolkit.KryptonTableLayoutPanel();
- this.pbxApplicationIcon = new System.Windows.Forms.PictureBox();
- this.kwlHeader = new Krypton.Toolkit.KryptonWrapLabel();
- this.kwlDownloadProgress = new Krypton.Toolkit.KryptonWrapLabel();
- this.kpbDownloadProgress = new Krypton.Toolkit.KryptonProgressBar();
- this.kryptonPanel2 = new Krypton.Toolkit.KryptonPanel();
- this.kryptonPanel3 = new Krypton.Toolkit.KryptonPanel();
- this.kbtnInstallAndRelaunch = new Krypton.Toolkit.KryptonButton();
- this.kbtnCancel = new Krypton.Toolkit.KryptonButton();
- ((System.ComponentModel.ISupportInitialize)(this.kryptonPanel1)).BeginInit();
- this.kryptonPanel1.SuspendLayout();
- this.kryptonTableLayoutPanel1.SuspendLayout();
- ((System.ComponentModel.ISupportInitialize)(this.pbxApplicationIcon)).BeginInit();
- ((System.ComponentModel.ISupportInitialize)(this.kryptonPanel2)).BeginInit();
- this.kryptonPanel2.SuspendLayout();
- ((System.ComponentModel.ISupportInitialize)(this.kryptonPanel3)).BeginInit();
- this.kryptonPanel3.SuspendLayout();
- this.SuspendLayout();
- //
- // kryptonPanel1
- //
- this.kryptonPanel1.Controls.Add(this.kryptonTableLayoutPanel1);
- this.kryptonPanel1.Dock = System.Windows.Forms.DockStyle.Fill;
- this.kryptonPanel1.Location = new System.Drawing.Point(0, 0);
- this.kryptonPanel1.Name = "kryptonPanel1";
- this.kryptonPanel1.Size = new System.Drawing.Size(593, 207);
- this.kryptonPanel1.TabIndex = 1;
- //
- // kryptonTableLayoutPanel1
- //
- this.kryptonTableLayoutPanel1.BackgroundImage = ((System.Drawing.Image)(resources.GetObject("kryptonTableLayoutPanel1.BackgroundImage")));
- this.kryptonTableLayoutPanel1.BackgroundImageLayout = System.Windows.Forms.ImageLayout.None;
- this.kryptonTableLayoutPanel1.ColumnCount = 2;
- this.kryptonTableLayoutPanel1.ColumnStyles.Add(new System.Windows.Forms.ColumnStyle());
- this.kryptonTableLayoutPanel1.ColumnStyles.Add(new System.Windows.Forms.ColumnStyle(System.Windows.Forms.SizeType.Percent, 100F));
- this.kryptonTableLayoutPanel1.Controls.Add(this.pbxApplicationIcon, 0, 0);
- this.kryptonTableLayoutPanel1.Controls.Add(this.kwlHeader, 1, 0);
- this.kryptonTableLayoutPanel1.Controls.Add(this.kwlDownloadProgress, 0, 1);
- this.kryptonTableLayoutPanel1.Controls.Add(this.kpbDownloadProgress, 0, 2);
- this.kryptonTableLayoutPanel1.Controls.Add(this.kryptonPanel2, 1, 3);
- this.kryptonTableLayoutPanel1.Controls.Add(this.kryptonPanel3, 1, 4);
- this.kryptonTableLayoutPanel1.Dock = System.Windows.Forms.DockStyle.Fill;
- this.kryptonTableLayoutPanel1.Location = new System.Drawing.Point(0, 0);
- this.kryptonTableLayoutPanel1.Name = "kryptonTableLayoutPanel1";
- this.kryptonTableLayoutPanel1.RowCount = 5;
- this.kryptonTableLayoutPanel1.RowStyles.Add(new System.Windows.Forms.RowStyle());
- this.kryptonTableLayoutPanel1.RowStyles.Add(new System.Windows.Forms.RowStyle());
- this.kryptonTableLayoutPanel1.RowStyles.Add(new System.Windows.Forms.RowStyle());
- this.kryptonTableLayoutPanel1.RowStyles.Add(new System.Windows.Forms.RowStyle(System.Windows.Forms.SizeType.Percent, 50F));
- this.kryptonTableLayoutPanel1.RowStyles.Add(new System.Windows.Forms.RowStyle(System.Windows.Forms.SizeType.Percent, 50F));
- this.kryptonTableLayoutPanel1.Size = new System.Drawing.Size(593, 207);
- this.kryptonTableLayoutPanel1.TabIndex = 0;
- //
- // pbxApplicationIcon
- //
- this.pbxApplicationIcon.BackColor = System.Drawing.Color.Transparent;
- this.pbxApplicationIcon.Location = new System.Drawing.Point(3, 3);
- this.pbxApplicationIcon.Name = "pbxApplicationIcon";
- this.pbxApplicationIcon.Padding = new System.Windows.Forms.Padding(5, 5, 0, 0);
- this.pbxApplicationIcon.Size = new System.Drawing.Size(48, 48);
- this.pbxApplicationIcon.TabIndex = 0;
- this.pbxApplicationIcon.TabStop = false;
- //
- // kwlHeader
- //
- this.kwlHeader.AutoSize = false;
- this.kwlHeader.Dock = System.Windows.Forms.DockStyle.Fill;
- this.kwlHeader.Font = new System.Drawing.Font("Segoe UI", 14.25F, System.Drawing.FontStyle.Bold, System.Drawing.GraphicsUnit.Point, ((byte)(0)));
- this.kwlHeader.ForeColor = System.Drawing.Color.FromArgb(((int)(((byte)(30)))), ((int)(((byte)(57)))), ((int)(((byte)(91)))));
- this.kwlHeader.LabelStyle = Krypton.Toolkit.LabelStyle.NormalControl;
- this.kwlHeader.Location = new System.Drawing.Point(57, 0);
- this.kwlHeader.Name = "kwlHeader";
- this.kwlHeader.Size = new System.Drawing.Size(533, 54);
- this.kwlHeader.StateCommon.Font = new System.Drawing.Font("Segoe UI", 14.25F, System.Drawing.FontStyle.Bold, System.Drawing.GraphicsUnit.Point, ((byte)(0)));
- this.kwlHeader.Text = "<#HEADER#>";
- this.kwlHeader.TextAlign = System.Drawing.ContentAlignment.MiddleLeft;
- //
- // kwlDownloadProgress
- //
- this.kwlDownloadProgress.AutoSize = false;
- this.kryptonTableLayoutPanel1.SetColumnSpan(this.kwlDownloadProgress, 2);
- this.kwlDownloadProgress.Dock = System.Windows.Forms.DockStyle.Fill;
- this.kwlDownloadProgress.Font = new System.Drawing.Font("Segoe UI", 12F, System.Drawing.FontStyle.Bold, System.Drawing.GraphicsUnit.Point, ((byte)(0)));
- this.kwlDownloadProgress.ForeColor = System.Drawing.Color.FromArgb(((int)(((byte)(30)))), ((int)(((byte)(57)))), ((int)(((byte)(91)))));
- this.kwlDownloadProgress.LabelStyle = Krypton.Toolkit.LabelStyle.NormalControl;
- this.kwlDownloadProgress.Location = new System.Drawing.Point(3, 54);
- this.kwlDownloadProgress.Name = "kwlDownloadProgress";
- this.kwlDownloadProgress.Size = new System.Drawing.Size(587, 23);
- this.kwlDownloadProgress.StateCommon.Font = new System.Drawing.Font("Segoe UI", 12F, System.Drawing.FontStyle.Bold, System.Drawing.GraphicsUnit.Point, ((byte)(0)));
- this.kwlDownloadProgress.Text = "({0} {1} / {2} {3})";
- this.kwlDownloadProgress.TextAlign = System.Drawing.ContentAlignment.MiddleCenter;
- //
- // kpbDownloadProgress
- //
- this.kryptonTableLayoutPanel1.SetColumnSpan(this.kpbDownloadProgress, 2);
- this.kpbDownloadProgress.Dock = System.Windows.Forms.DockStyle.Fill;
- this.kpbDownloadProgress.Location = new System.Drawing.Point(3, 80);
- this.kpbDownloadProgress.Name = "kpbDownloadProgress";
- this.kpbDownloadProgress.Size = new System.Drawing.Size(587, 23);
- this.kpbDownloadProgress.TabIndex = 3;
- //
- // kryptonPanel2
- //
- this.kryptonPanel2.Controls.Add(this.kbtnInstallAndRelaunch);
- this.kryptonPanel2.Dock = System.Windows.Forms.DockStyle.Fill;
- this.kryptonPanel2.Location = new System.Drawing.Point(57, 109);
- this.kryptonPanel2.Name = "kryptonPanel2";
- this.kryptonPanel2.Size = new System.Drawing.Size(533, 44);
- this.kryptonPanel2.TabIndex = 4;
- //
- // kryptonPanel3
- //
- this.kryptonPanel3.Controls.Add(this.kbtnCancel);
- this.kryptonPanel3.Dock = System.Windows.Forms.DockStyle.Fill;
- this.kryptonPanel3.Location = new System.Drawing.Point(57, 159);
- this.kryptonPanel3.Name = "kryptonPanel3";
- this.kryptonPanel3.Size = new System.Drawing.Size(533, 45);
- this.kryptonPanel3.TabIndex = 5;
- //
- // kbtnInstallAndRelaunch
- //
- this.kbtnInstallAndRelaunch.Location = new System.Drawing.Point(201, 10);
- this.kbtnInstallAndRelaunch.Name = "kbtnInstallAndRelaunch";
- this.kbtnInstallAndRelaunch.Size = new System.Drawing.Size(117, 25);
- this.kbtnInstallAndRelaunch.TabIndex = 0;
- this.kbtnInstallAndRelaunch.Values.Text = "&Install && Relaunch";
- this.kbtnInstallAndRelaunch.Click += new System.EventHandler(this.kbtnInstallAndRelaunch_Click);
- //
- // kbtnCancel
- //
- this.kbtnCancel.DialogResult = System.Windows.Forms.DialogResult.Cancel;
- this.kbtnCancel.Location = new System.Drawing.Point(214, 9);
- this.kbtnCancel.Name = "kbtnCancel";
- this.kbtnCancel.Size = new System.Drawing.Size(90, 25);
- this.kbtnCancel.TabIndex = 0;
- this.kbtnCancel.Values.Text = "&Cancel";
- this.kbtnCancel.Click += new System.EventHandler(this.kbtnCancel_Click);
- //
- // NetSparkleDownloadProgressWindow
- //
- this.AcceptButton = this.kbtnInstallAndRelaunch;
- this.AutoScaleDimensions = new System.Drawing.SizeF(6F, 13F);
- this.AutoScaleMode = System.Windows.Forms.AutoScaleMode.Font;
- this.CancelButton = this.kbtnCancel;
- this.ClientSize = new System.Drawing.Size(593, 207);
- this.Controls.Add(this.kryptonPanel1);
- this.FormBorderStyle = System.Windows.Forms.FormBorderStyle.Fixed3D;
- this.Icon = ((System.Drawing.Icon)(resources.GetObject("$this.Icon")));
- this.MaximizeBox = false;
- this.MinimizeBox = false;
- this.Name = "NetSparkleDownloadProgressWindow";
- this.StartPosition = System.Windows.Forms.FormStartPosition.CenterScreen;
- this.Text = "Download Progress";
- this.FormClosing += new System.Windows.Forms.FormClosingEventHandler(this.NetSparkleDownloadProgressWindow_FormClosing);
- this.Controls.SetChildIndex(this.kryptonPanel1, 0);
- ((System.ComponentModel.ISupportInitialize)(this.kryptonPanel1)).EndInit();
- this.kryptonPanel1.ResumeLayout(false);
- this.kryptonTableLayoutPanel1.ResumeLayout(false);
- ((System.ComponentModel.ISupportInitialize)(this.pbxApplicationIcon)).EndInit();
- ((System.ComponentModel.ISupportInitialize)(this.kryptonPanel2)).EndInit();
- this.kryptonPanel2.ResumeLayout(false);
- ((System.ComponentModel.ISupportInitialize)(this.kryptonPanel3)).EndInit();
- this.kryptonPanel3.ResumeLayout(false);
- this.ResumeLayout(false);
-
- }
-
- #endregion
-
- private KryptonPanel kryptonPanel1;
- private KryptonTableLayoutPanel kryptonTableLayoutPanel1;
- private PictureBox pbxApplicationIcon;
- private KryptonWrapLabel kwlHeader;
- private KryptonWrapLabel kwlDownloadProgress;
- private KryptonProgressBar kpbDownloadProgress;
- private KryptonPanel kryptonPanel2;
- private KryptonPanel kryptonPanel3;
- private KryptonButton kbtnInstallAndRelaunch;
- private KryptonButton kbtnCancel;
- }
-}
\ No newline at end of file
diff --git a/Source/Krypton Toolkit/Krypton.Toolkit.Suite.Extended.Software.Updater/NetSparkle/UX/NetSparkleDownloadProgressWindow.cs b/Source/Krypton Toolkit/Krypton.Toolkit.Suite.Extended.Software.Updater/NetSparkle/UX/NetSparkleDownloadProgressWindow.cs
deleted file mode 100644
index 411f3076d..000000000
--- a/Source/Krypton Toolkit/Krypton.Toolkit.Suite.Extended.Software.Updater/NetSparkle/UX/NetSparkleDownloadProgressWindow.cs
+++ /dev/null
@@ -1,235 +0,0 @@
-#region License
-
-/*
- * The MIT License
- *
- * Copyright (c) 2022 Deadpikle
- *
- * Permission is hereby granted, free of charge, to any person obtaining a copy
- * of this software and associated documentation files (the "Software"), to deal
- * in the Software without restriction, including without limitation the rights
- * to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
- * copies of the Software, and to permit persons to whom the Software is
- * furnished to do so, subject to the following conditions:
- *
- * The above copyright notice and this permission notice shall be included in
- * all copies or substantial portions of the Software.
- *
- * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
- * IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
- * FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
- * AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
- * LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
- * OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN
- * THE SOFTWARE.
- */
-
-#endregion
-
-using Application = System.Windows.Forms.Application;
-using MethodInvoker = System.Windows.Forms.MethodInvoker;
-using Size = System.Drawing.Size;
-
-namespace Krypton.Toolkit.Suite.Extended.Software.Updater
-{
- public partial class NetSparkleDownloadProgressWindow : KryptonForm, IDownloadProgress
- {
- #region Instance Fields
-
- private bool _shouldLaunchInstallFileOnClose = false;
- private bool _didCallDownloadProcessCompletedHandler = false;
-
- #endregion
-
- #region Public
-
- ///
- /// Whether or not the software will relaunch after the update has been installed
- ///
- public bool SoftwareWillRelaunchAfterUpdateInstalled
- {
- set => kbtnInstallAndRelaunch.Text = value ? "&Install && Relaunch" : "&Install";
- }
-
- #endregion
-
- #region Identity
-
- public NetSparkleDownloadProgressWindow(AppCastItem? item, Icon applicationIcon)
- {
- InitializeComponent();
-
- pbxApplicationIcon.Image = new Icon(applicationIcon, new Size(48, 48)).ToBitmap();
-
- Icon = applicationIcon;
-
- kbtnInstallAndRelaunch.Visible = false;
-
- kbtnInstallAndRelaunch.Text = @"&Install && Relaunch";
-
- kwlHeader.Text = $@"{item.AppName} {item.Version}";
-
- kwlDownloadProgress.Text = string.Empty;
-
- kpbDownloadProgress.Maximum = 100;
-
- kpbDownloadProgress.Minimum = 0;
-
- kpbDownloadProgress.Step = 1;
- }
-
- #endregion
-
- #region IDownloadProgress Implementation
-
- public event DownloadInstallEventHandler? DownloadProcessCompleted;
-
- public void SetDownloadAndInstallButtonEnabled(bool shouldBeEnabled)
- {
- if (InvokeRequired)
- {
- Invoke((MethodInvoker)delegate () { SetDownloadAndInstallButtonEnabled(shouldBeEnabled); });
- }
- else
- {
- kbtnInstallAndRelaunch.Enabled = shouldBeEnabled;
- }
- }
-
- public void Show(bool isOnMainThread)
- {
- Show();
-
- if (!isOnMainThread)
- {
- Application.Run(this);
- }
- }
-
- public void OnDownloadProgressChanged(object sender, ItemDownloadProgressEventArgs args) => OnDownloadProgressChanged(sender, args.BytesReceived, args.TotalBytesToReceive, args.ProgressPercentage);
-
- public void FinishedDownloadingFile(bool isDownloadedFileValid)
- {
- if (InvokeRequired)
- {
- Invoke((MethodInvoker)delegate () { FinishedDownloadingFile(isDownloadedFileValid); });
- }
- else
- {
- kpbDownloadProgress.Visible = false;
-
- kbtnCancel.Visible = false;
-
- kwlDownloadProgress.Visible = false;
-
- if (isDownloadedFileValid)
- {
- kbtnInstallAndRelaunch.Visible = true;
- }
- else
- {
- kbtnInstallAndRelaunch.Visible = false;
- }
- }
- }
-
- public bool DisplayErrorMessage(string errorMessage)
- {
- if (InvokeRequired)
- {
- Invoke((MethodInvoker)delegate () { DisplayErrorMessage(errorMessage); });
- }
- else
- {
- kwlDownloadProgress.Visible = true;
-
- kpbDownloadProgress.Visible = false;
-
- kbtnInstallAndRelaunch.Visible = false;
-
- kbtnCancel.Text = @"Close";
-
- kpbDownloadProgress.Text = errorMessage;
- }
-
- return true;
- }
-
- void IDownloadProgress.Close()
- {
- DialogResult = DialogResult.Abort;
-
- CloseForm();
- }
-
- #endregion
-
- #region Implementation
-
- private void CloseForm()
- {
- if (InvokeRequired)
- {
- Invoke((MethodInvoker)delegate ()
- {
- Close();
- });
- }
- else
- {
- Close();
- }
- }
-
- ///
- /// Event called when the client download progress changes
- ///
- private void OnDownloadProgressChanged(object sender, long bytesReceived, long totalBytesToReceive, int percentage)
- {
- if (InvokeRequired)
- {
- Invoke((MethodInvoker)delegate () { OnDownloadProgressChanged(sender, bytesReceived, totalBytesToReceive, percentage); });
- }
- else
- {
- kpbDownloadProgress.Value = percentage;
-
- kwlDownloadProgress.Text = $@"({Utilities.ConvertNumBytesToUserReadableString(bytesReceived)} /
- {Utilities.ConvertNumBytesToUserReadableString(totalBytesToReceive)})";
- }
- }
-
- #endregion
-
- private void NetSparkleDownloadProgressWindow_FormClosing(object sender, FormClosingEventArgs e)
- {
- if (!_didCallDownloadProcessCompletedHandler)
- {
- _didCallDownloadProcessCompletedHandler = true;
- DownloadProcessCompleted?.Invoke(this, new DownloadInstallEventArgs(_shouldLaunchInstallFileOnClose));
- }
- }
-
- private void kbtnInstallAndRelaunch_Click(object sender, EventArgs e)
- {
- if (InvokeRequired)
- {
- Invoke((MethodInvoker)delegate () { kbtnInstallAndRelaunch_Click(sender, e); });
- }
- else
- {
- DialogResult = DialogResult.OK;
- _shouldLaunchInstallFileOnClose = true;
- _didCallDownloadProcessCompletedHandler = true;
- DownloadProcessCompleted?.Invoke(this, new DownloadInstallEventArgs(true));
- }
- }
-
- private void kbtnCancel_Click(object sender, EventArgs e)
- {
- DialogResult = DialogResult.Cancel;
- _didCallDownloadProcessCompletedHandler = true;
- DownloadProcessCompleted?.Invoke(this, new DownloadInstallEventArgs(false));
- }
- }
-}
diff --git a/Source/Krypton Toolkit/Krypton.Toolkit.Suite.Extended.Software.Updater/NetSparkle/UX/NetSparkleDownloadProgressWindow.resx b/Source/Krypton Toolkit/Krypton.Toolkit.Suite.Extended.Software.Updater/NetSparkle/UX/NetSparkleDownloadProgressWindow.resx
deleted file mode 100644
index 406aae598..000000000
--- a/Source/Krypton Toolkit/Krypton.Toolkit.Suite.Extended.Software.Updater/NetSparkle/UX/NetSparkleDownloadProgressWindow.resx
+++ /dev/null
@@ -1,332 +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
-
-
-
-
- iVBORw0KGgoAAAANSUhEUgAAAlEAAADPCAYAAADVj4TEAAAAAXNSR0IArs4c6QAAAARnQU1BAACxjwv8
- YQUAAAAJcEhZcwAADsMAAA7DAcdvqGQAAASESURBVHhe7dnBTQNQDERB2k2N9EAZtBGEJXKyI3bPcxh9
- fbmBJ/vj8Xg8P7++n7/vH39/f39/f39///f/V0QBAPB/IgoAIDSbqG0AAMDNOQ8AoCCiAABKIgoAIDSb
- qG0AAMDNOQ8AoCCiAABKIgoAIDSbqG0AAMDNOQ8AoCCiAABKIgoAIDSbqG0AAMDNOQ8AoCCiAABKIgoA
- IDSbqG0AAMDNOQ8AoCCiAABKIgoAIDSbqG0AAMDNOQ8AoCCiAABKIgoAIDSbqG0AAMDNOQ8AoCCiAABK
- IgoAIDSbqG0AAMDNOQ8AoCCiAABKIgoAIDSbqG0AAMDNOQ8AoCCiAABKIgoAIDSbqG0AAMDNOQ8AoCCi
- AABKIgoAIDSbqG0AAMDNOQ8AoCCiAABKIgoAIDSbqG0AAMDNOQ8AoCCiAABKIgoAIDSbqG0AAMDNOQ8A
- oCCiAABKIgoAIDSbqG0AAMDNOQ8AoCCiAABKIgoAIDSbqG0AAMDNOQ8AoCCiAABKIgoAIDSbqG0AAMDN
- OQ8AoCCiAABKIgoAIDSbqG0AAMDNOQ8AoCCiAABKIgoAIDSbqG0AAMDNOQ8AoCCiAABKIgoAIDSbqG0A
- AMDNOQ8AoCCiAABKIgoAIDSbqG0AAMDNOQ8AoCCiAABKIgoAIDSbqG0AAMDNOQ8AoCCiAABKIgoAIDSb
- qG0AAMDNOQ8AoCCiAABKIgoAIDSbqG0AAMDNOQ8AoCCiAABKIgoAIDSbqG0AAMDNOQ8AoCCiAABKIgoA
- IDSbqG0AAMDNOQ8AoCCiAABKIgoAIDSbqG0AAMDNOQ8AoCCiAABKIgoAIDSbqG0AAMDNOQ8AoCCiAABK
- IgoAIDSbqG0AAMDNOQ8AoCCiAABKIgoAIDSbqG0AAMDNOQ8AoCCiAABKIgoAIDSbqG0AAMDNOQ8AoCCi
- AABKIgoAIDSbqG0AAMDNOQ8AoCCiAABKIgoAIDSbqG0AAMDNOQ8AoCCiAABKIgoAIDSbqG0AAMDNOQ8A
- oCCiAABKIgoAIDSbqG0AAMDNOQ8AoCCiAABKIgoAIDSbqG0AAMDNOQ8AoCCiAABKIgoAIDSbqG0AAMDN
- OQ8AoCCiAABKIgoAIDSbqG0AAMDNOQ8AoCCiAABKIgoAIDSbqG0AAMDNOQ8AoCCiAABKIgoAIDSbqG0A
- AMDNOQ8AoCCiAABKIgoAIDSbqG0AAMDNOQ8AoCCiAABKIgoAIDSbqG0AAMDNOQ8AoCCiAABKIgoAIDSb
- qG0AAMDNOQ8AoCCiAABKIgoAIDSbqG0AAMDNOQ8AoCCiAABKIgoAIDSbqG0AAMDNOQ8AoCCiAABKIgoA
- IDSbqG0AAMDNOQ8AoCCiAABKIgoAIDSbqG0AAMDNOQ8AoCCiAABKIgoAIDSbqG0AAMDNOQ8AoCCiAABK
- IgoAIDSbqG0AAMDNOQ8AoCCiAABKIgoAIDSbqG0AAMDNOQ8AoCCiAABKIgoAIDSbqG0AAMDNOQ8AoCCi
- AABKIgoAIDSbqG0AAMDNOQ8AoCCiAABKr4j6ff/4+/v7+/v7+/u/+z+eP/p+RXiBeiS9AAAAAElFTkSu
- QmCC
-
-
-
-
- AAABAAIAEBAAAAAAIABoBAAAJgAAADAwAAAAACAAqCUAAI4EAAAoAAAAEAAAACAAAAABACAAAAAAAAAE
- AADXDQAA1w0AAAAAAAAAAAAA////AP///wD///8A////AP///wD///8A////AABczlIAXM5i////AP//
- /wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AABczg8BXs/tAV3P9ABc
- zhf///8A////AP///wD///8A////AP///wD///8A////AABczmIAXM5rAFzOMwBczgUAXc+fDW3a9xBx
- 3fkBXtCwAFzOAwBczjAAXM5nAFzOb////wD///8A////AP///wAAXM50A1/Q/Adi0PoBXs/6A1/Q+h+I
- 8v8givP/BWHR+QFez/kGYdD7BGHR/ABczoz///8A////AP///wD///8AAFzOPAVh0fcji/b/I4fw/yCF
- 7v8Xhfb/E4P2/yGF7/8ih/D/I4v2/whl1PMAXM5Q////AP///wD///8A////AABczgkAXM78K43y/xWG
- 9v8Thfb/a7T6/2q0+v8Thfb/EoT1/y+S9f8BXc7+AFzOFv///wD///8A////AABczhUAXc+nB2LQ+jST
- 8f8fjff/bbf7/83q///N6v//bbf7/xmK9v83lvT/CmTS+QFe0LMAXM4a////AABczmMCXs/zIHrf+EWf
- 9v80mvj/crr7/83q///N6v//zer//83q//9xuvv/MZj4/0ah9v8lf+H6Al7P9gBczm8AXM5jAV3P8yJ7
- 3/hOpvf/QaL5/x+S+P8bkPj/zer//83q//8bkPj/HZH4/z2h+f9QqPf/JoDi+gJez/YAXM5v////AABc
- zhUBXs+nCGPR+lKm9P85ofn/IZb4/83q///N6v//IZb4/zKe+f9Xq/X/C2XT+QJf0LMAXM4a////AP//
- /wD///8AAFzOCQBdzvxisvb/Qaj6/0Cn+v+/5P7/v+T+/0Cn+v8+pvr/aLj5/wNez/4AXM4W////AP//
- /wD///8A////AABczjwQaNP3dcH8/2y49v9ms/T/Xrf7/1e0+/9otPX/a7f2/3TB+/8cc9j0AFzOUP//
- /wD///8A////AP///wAAXM50CmPR/BJp0/oCXs/6CmTR+nG9+f90wPr/EGjS+QFdz/kPZ9L7DWbS/ABc
- zoz///8A////AP///wD///8AAFzOYgBczmsAXM4zAFzOBQJfz54xhd/4PI7j+QJf0LAAXM4DAFzOMABc
- zmcAXM5v////AP///wD///8A////AP///wD///8A////AP///wAAXM4PAl/P7QRfz/QAXM4X////AP//
- /wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AABczlAAXM5g////AP//
- /wD///8A////AP///wD///8A////AP5/AAD8PwAAwAMAAMADAADAAwAAwAMAAIABAAAAAAAAAAAAAIAB
- AADAAwAAwAMAAMADAADAAwAA/D8AAP5/AAAoAAAAMAAAAGAAAAABACAAAAAAAAAkAAASCwAAEgsAAAAA
- AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAQAA
- AAEAAAACAAAAAwAAAAMAAAAEAAAABQAAAAYAAAAHAAAABwAAAAcAAAAIAAAACAAAAAkAAAAJAAAACAAA
- AAgAAAAHAAAABwAAAAcAAAAGAAAABQAAAAQAAAADAAAAAwAAAAIAAAABAAAAAQAAAAAAAAAAAAAAAAAA
- AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
- AAEAAAABAAAAAgAAAAMAAAAEAAAABQAAAAYAAAAHAAAACQAAAAoAAAALAAAADAAAAA0AAAANAAAADgAA
- AA4AAAAOAAAADgAAAA0AAAANAAAADAAAAAsAAAAKAAAACQAAAAcAAAAGAAAABQAAAAQAAAADAAAAAgAA
- AAEAAAABAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
- AAAAAAAAAAAAAQAAAAIAAAADAAAAAwAAAAUAAAAHAAAACAAAAAoAAAAMAAAADQAAAA8AAAARAAAAEgAA
- ABQAAAAVAEacRQBOr2IAAAAWAAAAFQAAABUAAAAUAAAAEgAAABEAAAAPAAAADQAAAAwAAAAKAAAACAAA
- AAcAAAAFAAAAAwAAAAMAAAACAAAAAQAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
- 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
- 9v8Hf/b/B3/2/wd/9v8Hf/b/B3/2/wd/9v8Xh/f/JIz1/yCM9/8ZiPf/EIT2/wiA9v8Hf/b/B3/2/xOF
- 9v8ni/H/AFzO/AAiTBYAAAAKAAAABwAAAAQAAAACAAAAAQAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
- AAAAAAAAAAAAAQAAAAIAAAADAAAABQBczK4WeOL/IIv2/wR99f8EffX/BH31/wR99f8EffX/BH31/wR9
- 9f8EffX/BH31/wR99f8EffX/BH31/wR99f8EffX/BH31/wR99f8EffX/BH31/wR99f8EffX/BH31/wR9
- 9f8EffX/BH31/xmI9/8df+n/AF3O1gAAAAsAAAAIAAAABQAAAAMAAAACAAAAAQAAAAAAAAAAAAAAAAAA
- AAAAAAAAAAAAAAAAAAAAAAAAAAAAAQAAAAEAAAACAAAABABZyG8Ladj1KI/2/wJ79f8Ce/X/Anv1/wJ7
- 9f8Ce/X/Anv1/wJ79f8Ce/X/Anv1/wJ79f8Ce/X/Anv1/wJ79f8Ce/X/Anv1/wJ79f8Ce/X/Anv1/wJ7
- 9f8Ce/X/Anv1/wJ79f8Ce/X/Anv1/yGL9v8Uc9/8AFnHlwAAAAkAAAAGAAAABAAAAAIAAAABAAAAAQAA
- AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAEAAAACAAAAAwBWwjUCXs/8LZD2/wd9
- 9f8BevX/AXn1/wB59f8AefX/AHn1/wB59f8AefX/AHn1/wB59f8AefX/AHn1/xSF9v8AefX/AHn1/wB5
- 9f8AefX/AHn1/wB59f8BefX/AXn1/wF69f8BevX/Anv1/yuQ9/8KZtX1AFfCXAAAAAYAAAAEAAAAAwAA
- AAIAAAABAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAABAAAAAgA1
- dwcAXM/4KIrw/xSE9v8De/X/A3v1/wJ79f8Ce/X/Anv1/wJ79f8Ce/X/Anv1/wJ79f8Ce/X/RaT6/43P
- /v9NqPn/A3z1/wJ79f8Ce/X/Anv1/wJ79f8Ce/X/A3v1/wN79f8De/X/C3/1/y+R9P8CXc7/AE6vIwAA
- AAQAAAADAAAAAgAAAAEAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
- AAAAAAAAAAAAAQAAAAEAXc/IIH/o/yCL9/8Fffb/BX32/wV99v8Fffb/BX32/wV99v8Fffb/BX32/wuA
- 9v9gtPv/jtD+/47Q/v+O0P7/YLT7/wmA9v8Fffb/BX32/wV99v8Fffb/BX32/wV99v8Fffb/GYf3/ymJ
- 7v8AXc/tAAAAAwAAAAIAAAABAAAAAQAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
- AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAEAXM2XGHTe+iyS9/8Hf/b/B3/2/wd/9v8Hf/b/B3/2/wd/
- 9v8Hf/b/F4j3/3TA/P+O0P7/jtD+/47Q/v+O0P7/jtD+/2+9/P8Rhff/B3/2/wd/9v8Hf/b/B3/2/wd/
- 9v8Hf/b/I473/yJ/5v8AXc7EAAAAAgAAAAEAAAABAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
- AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAFzOFABdz6YHYdD8Lojo/iKO9/8Jgfb/CYH2/wmB
- 9v8Jgfb/CYH2/wmB9v8plPj/g8n9/47Q/v+O0P7/jtD+/47Q/v+O0P7/jtD+/47Q/v96xf3/HIz3/wmB
- 9v8Jgfb/CYH2/wmB9v8Jgfb/GIn3/zWP7f8LZdL6AF3PwQBcziIAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
- AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAXM5fAV7P8hx02/k7l/P/LJT3/w+E
- 9v8Mg/b/DIP2/wyD9v8Mg/b/DIP2/0Ci+v+Lz/7/jtD+/47Q/v+O0P7/jtD+/47Q/v+O0P7/jtD+/47Q
- /v+O0P7/hMr9/ymU+P8Mg/b/DIP2/wyD9v8Mg/b/DYP2/yeR9/89mfX/I3zf+wNf0PoAXM54AFzOBAAA
- AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAFzOJQFe0MUMZdL5NI3r/zyc
- +f8djfj/DoX3/w6F9/8Ohff/DoX3/w6F9/8Qhvf/WbH7/47Q/v+O0P7/jtD+/47Q/v+O0P7/jtD+/47Q
- /v+O0P7/jtD+/47Q/v+O0P7/jtD+/4rN/v85nvr/DoX3/w6F9/8Ohff/DoX3/w6F9/8Xivf/OJr4/zqT
- 7/8TbNX4AV7Q2ABczjYAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAABczgUAXc9+Al7P+yZ+
- 4PxEnvb/Lpb4/xKI9/8Qh/f/EIf3/xCH9/8Qh/f/EIf3/xiM+P9qvPz/is7+/4rO/v+Lz/7/jtD+/47Q
- /v+O0P7/jtD+/47Q/v+O0P7/jtD+/47Q/v+O0P7/i8/+/4rO/v+Kzv7/Rqf6/xCH9/8Qh/f/EIf3/xCH
- 9/8Qh/f/EIf3/yeT+P9Dn/f/LYXl/QZgz/0AXc+VAFzODQAAAAAAAAAAAAAAAAAAAAAAAAAAAFzOOwFe
- 0N0TbNb4Ppjw/z+f+f8dj/f/Eon3/xKJ9/8Siff/Eon3/xKJ9/8Siff/Eon3/xKJ9/8Siff/Eon3/xKJ
- 9/89ovr/jtD+/47Q/v+O0P7/jtD+/47Q/v+O0P7/jtD+/47Q/v+O0P7/OZ/6/xKJ9/8Siff/Eon3/xKJ
- 9/8Siff/Eon3/xKJ9/8Siff/Eon3/xKJ9/8ZjPf/OJz4/0Oc8/8cdNn5AV3P6wBczk4AAAAAAAAAAAAA
- AAAAXM4QAFzOzQNez/44k+7/Taf5/y2X+P8Vi/f/FYv3/xWL9/8Vi/f/FYv3/xWL9/8Vi/f/FYv3/xWL
- 9/8Vi/f/FYv3/xWL9/8/o/r/jtD+/47Q/v+O0P7/jtD+/47Q/v+O0P7/jtD+/47Q/v+O0P7/O6D6/xWL
- 9/8Vi/f/FYv3/xWL9/8Vi/f/FYv3/xWL9/8Vi/f/FYv3/xWL9/8Vi/f/JJL4/0ml+f9AmfH/CmTS/QBd
- z98AXM4iAAAAAAAAAAAAAAAAAFzOAwBcznIAXc/4Hnnf+kqk9/9Dovn/H5H4/xeN+P8Xjfj/F434/xeN
- +P8Xjfj/F434/xeN+P8Xjfj/F434/xeN+P9ApPr/jtD+/47Q/v+O0P7/jtD+/47Q/v+O0P7/jtD+/47Q
- /v+O0P7/PaL6/xeN+P8Xjfj/F434/xeN+P8Xjfj/F434/xeN+P8Xjfj/F434/xyP+P86nvn/Tqf4/yiD
- 5PsBXs/7AF3PiABczgkAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAXM4eAV7PuAZh0fk2j+v/Uqv6/zWd
- +f8aj/j/GY/4/xmP+P8Zj/j/GY/4/xmP+P8Zj/j/GY/4/xmP+P9Bpvr/jtD+/47Q/v+O0P7/jtD+/47Q
- /v+O0P7/jtD+/47Q/v+O0P7/PqP6/xmP+P8Zj/j/GY/4/xmP+P8Zj/j/GY/4/xmP+P8Zj/j/Lpn5/06p
- +v9AmO//DGbT+AFe0M4AXM4sAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAABc
- zlIBXs/rGXPa+E2k9P9Nqfr/KJf4/xyR+P8ckfj/HJH4/xyR+P8ckfj/HJH4/xyR+P9Dp/r/jtD+/47Q
- /v+O0P7/jtD+/47Q/v+O0P7/jtD+/47Q/v+O0P7/QKX6/xyR+P8ckfj/HJH4/xyR+P8ckfj/HJH4/yOU
- +P9Hpvn/Uqj2/yN83voBXc/1AFzOaQBczgEAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
- AAAAAAAAAAAAAAAAAAAAXM4NAV3PlgNf0Pwyi+b9WK75/zGc+f8ek/j/HpP4/x6T+P8ek/j/HpP4/x6T
- +P9Ep/r/jtD+/47Q/v+O0P7/jtD+/47Q/v+O0P7/jtD+/47Q/v+O0P7/QKb6/x6T+P8ek/j/HpP4/x6T
- +P8ek/j/J5f4/1iu+v89k+v/CGLQ+wFe0LAAXM4ZAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
- AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAABczjUBXtDcLoLg+0yq+v8glfn/IJX5/yCV
- +f8glfn/IJX5/yCV+f8sm/r/i87+/47Q/v+O0P7/jtD+/47Q/v+O0P7/jtD+/47Q/v+Jzf7/KZn5/yCV
- +f8glfn/IJX5/yCV+f8glfn/QKT6/z+R5/8BXs/tAFzOSwAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
- AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAABXc+hMYnl/U6s
- +v8il/n/Ipf5/yKX+f8il/n/Ipf5/yKX+f8il/n/K5z5/z2l+/89pfv/PaX7/z2l+/89pfv/PaX7/z2l
- +v8pm/n/Ipf5/yKX+f8il/n/Ipf5/yKX+f8il/n/Qqb6/0KX7P8CX9DPAAAAAAAAAAAAAAAAAAAAAAAA
- AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
- AAACX9DhSZ7u/0Sn+v8lmfn/JZn5/yWZ+f8lmfn/JZn5/yWZ+f8lmfn/JZn5/yWZ+f8lmfn/JZn5/yWZ
- +f8lmfn/JZn5/yWZ+f8lmfn/JZn5/yWZ+f8lmfn/JZn5/yWZ+f8lmfn/OKL6/1qr9P8AXc77AFzOBgAA
- AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
- AAAAAAAAAAAAAABczhIAXM7+YLH3/zij+f8nm/n/J5v5/yeb+f8nm/n/J5v5/yeb+f8nm/n/J5v5/yeb
- +f8nm/n/J5v5/yeb+f8nm/n/J5v5/yeb+f8nm/n/J5v5/yeb+f8nm/n/J5v5/yeb+f8nm/n/K535/2e4
- +v8LZNH7AFzONwAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
- AAAAAAAAAAAAAAAAAAAAAAAAAAAAAABczksQadP4arv8/yyf+v8pnfr/KZ36/ymd+v8pnfr/KZ36/ymd
- +v8pnfr/KZ36/ymd+v8pnfr/KZ36/ymd+v8pnfr/KZ36/ymd+v8pnfr/KZ36/ymd+v8pnfr/KZ36/ymd
- +v8pnfr/KZ36/2C2+/8le9z3AFzOcAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
- AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAABczoUsg+D6Yrf7/yyf+v8sn/r/LJ/6/yyf
- +v8sn/r/LJ/6/yyf+v8sn/r/LJ/6/yyf+v8sn/r/LJ/6/yyf+v8sn/r/LJ/6/yyf+v8sn/r/LJ/6/yyf
- +v8sn/r/LJ/6/yyf+v8sn/r/LJ/6/1Wy+/8+k+f/Al7QrwAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
- AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAJf0MlGm+v/VrP7/y6h
- +v8uofr/LqH6/y6h+v8wovr/Paj6/0es+/80pPr/LqH6/y6h+v8uofr/LqH6/y6h+v8uofr/LqH6/y6h
- +v8wovr/Rav7/z+p+v8xovr/LqH6/y6h+v8uofr/LqH6/0mt+/9ZqfH/Al7Q6gAAAAAAAAAAAAAAAAAA
- AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAFzOBAFd
- z/lhsfT/Sa77/zam+v9Grfv/VbT7/2W6+/9xv/r/arT0/1ul7P9vu/j/Q6z6/zCj+v8wo/r/MKP6/zCj
- +v8wo/r/MKP6/zmn+v9vvfr/XKXs/2ay8/9xvvr/aLz7/1m1+/9Kr/v/O6j6/z2p+v9wvfn/A17P/wBc
- zhsAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
- AAAAAAAAAFzOMwZg0Px2wvz/csH8/3K9+P9irvH/SJfn/S1+2/YSaNH+A1/P8wFez+M1iOH6br/8/zWm
- +/8ypfv/MqX7/zKl+/8ypfv/MqX7/2W7/P9JmOj9Al/P6wJez+4OZdH/J3ra9kWU5vxeqvD/crv4/3TC
- /P93w/z/GXDW9wBczlUAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
- AAAAAAAAAAAAAAAAAAAAAAAAAFzObRBo0/w9jOL4H3LW+Qhh0P0DYNDaAV3PmgBczl8AXM4nAFzOAQBc
- zhgCX8/1X63x/1q3/P81p/v/Naf7/zWn+/81p/v/TrL7/2249f8IYdD8AFzOMwAAAAAAXM4eAFzOVwBd
- zpEDYNDTB2HP+xtv1fo4ieD3HnTX/QBdzo8AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
- AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAFzOkwJf0LoAXM56AFzOQQBczgwAAAAAAAAAAAAA
- AAAAAAAAAAAAAAAAAAAAXM5jFmzU+HfC+v9Er/v/N6n7/zep+/88q/v/dML8/yl82/gBXc+NAAAAAAAA
- AAAAAAAAAAAAAAAAAAAAAAAAAFzOBwBczjoAXM5yAl/QsgBdzrEAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
- AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
- AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAl/QxkOV5vxvwvz/Oqv7/zmr+/9jvfz/WKTs/gJf
- z+QAXM4KAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
- AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
- AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAFzOJAVg0PltuPX/Wbn8/020
- /P92wPj/DmbR+wBczkQAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
- AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
- AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAFd
- zngjeNn4e8f8/3fH/f84iOD4Al7PowAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
- AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
- AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
- AAAAAAAAAAAAAABczgQCX9DXUqHr/WSv8f8EX8/vAFzOEgAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
- AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
- AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
- AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAXM4zCmTR+xZr1PkAXM5XAAAAAAAAAAAAAAAAAAAAAAAA
- AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
- AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
- AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAV7PjwJfz7kAAAAAAAAAAAAA
- AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
- AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
- AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
- AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
- AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
- AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
- AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
- AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA//AAAAD/AAD/wAAAAD8AAP+A
- AAAAHwAA/wAAAAAPAAD+AAAAAAcAAPwAAAAAAwAA/AAAAAADAAD8AAAAAAMAAPgAAAAAAQAA+AAAAAAB
- AAD4AAAAAAEAAPgAAAAAAQAA/AAAAAADAAD8AAAAAAMAAPwAAAAAAwAA/gAAAAAHAAD/AAAAAA8AAP+A
- AAAAHwAA/8AAAAA/AAD/gAAAAH8AAP8AAAAAHwAA/AAAAAAPAADwAAAAAAMAAOAAAAAAAQAAwAAAAAAA
- AADgAAAAAAEAAPgAAAAABwAA/gAAAAAPAAD/AAAAAD8AAP/AAAAA/wAA/+AAAAH/AAD/4AAAAP8AAP/A
- AAAA/wAA/8AAAAD/AAD/wAAAAP8AAP/AAAAA/wAA/4AAAAB/AAD/gAAAAH8AAP+AAAEAfwAA/4PwA/B/
- AAD///gD//8AAP//+Af//wAA///8D///AAD///wP//8AAP///h///wAA////P///AAD///////8AAP//
- /////wAA
-
-
-
\ No newline at end of file
diff --git a/Source/Krypton Toolkit/Krypton.Toolkit.Suite.Extended.Software.Updater/NetSparkle/UX/NetSparkleMessageNotificationWindow.Designer.cs b/Source/Krypton Toolkit/Krypton.Toolkit.Suite.Extended.Software.Updater/NetSparkle/UX/NetSparkleMessageNotificationWindow.Designer.cs
deleted file mode 100644
index 92e1ef533..000000000
--- a/Source/Krypton Toolkit/Krypton.Toolkit.Suite.Extended.Software.Updater/NetSparkle/UX/NetSparkleMessageNotificationWindow.Designer.cs
+++ /dev/null
@@ -1,155 +0,0 @@
-namespace Krypton.Toolkit.Suite.Extended.Software.Updater
-{
- partial class NetSparkleMessageNotificationWindow
- {
- ///
- /// 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(NetSparkleMessageNotificationWindow));
- this.kryptonPanel1 = new Krypton.Toolkit.KryptonPanel();
- this.kryptonTableLayoutPanel1 = new Krypton.Toolkit.KryptonTableLayoutPanel();
- this.pbxApplicationIcon = new System.Windows.Forms.PictureBox();
- this.kwlMessage = new Krypton.Toolkit.KryptonWrapLabel();
- this.kryptonPanel2 = new Krypton.Toolkit.KryptonPanel();
- this.kbtnOk = new Krypton.Toolkit.KryptonButton();
- ((System.ComponentModel.ISupportInitialize)(this.kryptonPanel1)).BeginInit();
- this.kryptonPanel1.SuspendLayout();
- this.kryptonTableLayoutPanel1.SuspendLayout();
- ((System.ComponentModel.ISupportInitialize)(this.pbxApplicationIcon)).BeginInit();
- ((System.ComponentModel.ISupportInitialize)(this.kryptonPanel2)).BeginInit();
- this.kryptonPanel2.SuspendLayout();
- this.SuspendLayout();
- //
- // kryptonPanel1
- //
- this.kryptonPanel1.Controls.Add(this.kryptonTableLayoutPanel1);
- this.kryptonPanel1.Dock = System.Windows.Forms.DockStyle.Fill;
- this.kryptonPanel1.Location = new System.Drawing.Point(0, 0);
- this.kryptonPanel1.Name = "kryptonPanel1";
- this.kryptonPanel1.Size = new System.Drawing.Size(542, 152);
- this.kryptonPanel1.TabIndex = 1;
- //
- // kryptonTableLayoutPanel1
- //
- this.kryptonTableLayoutPanel1.BackgroundImage = ((System.Drawing.Image)(resources.GetObject("kryptonTableLayoutPanel1.BackgroundImage")));
- this.kryptonTableLayoutPanel1.BackgroundImageLayout = System.Windows.Forms.ImageLayout.None;
- this.kryptonTableLayoutPanel1.ColumnCount = 2;
- this.kryptonTableLayoutPanel1.ColumnStyles.Add(new System.Windows.Forms.ColumnStyle());
- this.kryptonTableLayoutPanel1.ColumnStyles.Add(new System.Windows.Forms.ColumnStyle(System.Windows.Forms.SizeType.Percent, 100F));
- this.kryptonTableLayoutPanel1.Controls.Add(this.pbxApplicationIcon, 0, 0);
- this.kryptonTableLayoutPanel1.Controls.Add(this.kwlMessage, 1, 0);
- this.kryptonTableLayoutPanel1.Controls.Add(this.kryptonPanel2, 1, 1);
- this.kryptonTableLayoutPanel1.Dock = System.Windows.Forms.DockStyle.Fill;
- this.kryptonTableLayoutPanel1.Location = new System.Drawing.Point(0, 0);
- this.kryptonTableLayoutPanel1.Name = "kryptonTableLayoutPanel1";
- this.kryptonTableLayoutPanel1.RowCount = 2;
- this.kryptonTableLayoutPanel1.RowStyles.Add(new System.Windows.Forms.RowStyle(System.Windows.Forms.SizeType.Percent, 50F));
- this.kryptonTableLayoutPanel1.RowStyles.Add(new System.Windows.Forms.RowStyle(System.Windows.Forms.SizeType.Percent, 50F));
- this.kryptonTableLayoutPanel1.Size = new System.Drawing.Size(542, 152);
- this.kryptonTableLayoutPanel1.TabIndex = 0;
- //
- // pbxApplicationIcon
- //
- this.pbxApplicationIcon.BackColor = System.Drawing.Color.Transparent;
- this.pbxApplicationIcon.Location = new System.Drawing.Point(3, 3);
- this.pbxApplicationIcon.Name = "pbxApplicationIcon";
- this.pbxApplicationIcon.Padding = new System.Windows.Forms.Padding(5, 5, 0, 0);
- this.pbxApplicationIcon.Size = new System.Drawing.Size(48, 48);
- this.pbxApplicationIcon.TabIndex = 0;
- this.pbxApplicationIcon.TabStop = false;
- //
- // kwlMessage
- //
- this.kwlMessage.AutoSize = false;
- this.kwlMessage.Dock = System.Windows.Forms.DockStyle.Fill;
- this.kwlMessage.Font = new System.Drawing.Font("Segoe UI", 14.25F, System.Drawing.FontStyle.Bold, System.Drawing.GraphicsUnit.Point, ((byte)(0)));
- this.kwlMessage.ForeColor = System.Drawing.Color.FromArgb(((int)(((byte)(30)))), ((int)(((byte)(57)))), ((int)(((byte)(91)))));
- this.kwlMessage.LabelStyle = Krypton.Toolkit.LabelStyle.NormalControl;
- this.kwlMessage.Location = new System.Drawing.Point(57, 0);
- this.kwlMessage.Name = "kwlMessage";
- this.kwlMessage.Size = new System.Drawing.Size(482, 76);
- this.kwlMessage.StateCommon.Font = new System.Drawing.Font("Segoe UI", 14.25F, System.Drawing.FontStyle.Bold, System.Drawing.GraphicsUnit.Point, ((byte)(0)));
- this.kwlMessage.Text = "Sorry, either our server is having a problem, or your internet connection is inva" +
- "lid.";
- this.kwlMessage.TextAlign = System.Drawing.ContentAlignment.MiddleLeft;
- //
- // kryptonPanel2
- //
- this.kryptonPanel2.Controls.Add(this.kbtnOk);
- this.kryptonPanel2.Dock = System.Windows.Forms.DockStyle.Fill;
- this.kryptonPanel2.Location = new System.Drawing.Point(57, 79);
- this.kryptonPanel2.Name = "kryptonPanel2";
- this.kryptonPanel2.Size = new System.Drawing.Size(482, 70);
- this.kryptonPanel2.TabIndex = 2;
- //
- // kbtnOk
- //
- this.kbtnOk.DialogResult = System.Windows.Forms.DialogResult.OK;
- this.kbtnOk.Location = new System.Drawing.Point(186, 25);
- this.kbtnOk.Name = "kbtnOk";
- this.kbtnOk.Size = new System.Drawing.Size(90, 25);
- this.kbtnOk.StateCommon.Content.ShortText.Font = new System.Drawing.Font("Segoe UI", 8.25F, System.Drawing.FontStyle.Regular, System.Drawing.GraphicsUnit.Point, ((byte)(0)));
- this.kbtnOk.TabIndex = 0;
- this.kbtnOk.Values.Text = "&OK";
- this.kbtnOk.Click += new System.EventHandler(this.kbtnOk_Click);
- //
- // NetSparkleMessageNotificationWindow
- //
- this.AcceptButton = this.kbtnOk;
- this.AutoScaleDimensions = new System.Drawing.SizeF(6F, 13F);
- this.AutoScaleMode = System.Windows.Forms.AutoScaleMode.Font;
- this.ClientSize = new System.Drawing.Size(542, 152);
- this.Controls.Add(this.kryptonPanel1);
- this.FormBorderStyle = System.Windows.Forms.FormBorderStyle.Fixed3D;
- this.Icon = ((System.Drawing.Icon)(resources.GetObject("$this.Icon")));
- this.MaximizeBox = false;
- this.MinimizeBox = false;
- this.Name = "NetSparkleMessageNotificationWindow";
- this.ShowIcon = false;
- this.ShowInTaskbar = false;
- this.StartPosition = System.Windows.Forms.FormStartPosition.CenterScreen;
- this.Text = "Message";
- this.Controls.SetChildIndex(this.kryptonPanel1, 0);
- ((System.ComponentModel.ISupportInitialize)(this.kryptonPanel1)).EndInit();
- this.kryptonPanel1.ResumeLayout(false);
- this.kryptonTableLayoutPanel1.ResumeLayout(false);
- ((System.ComponentModel.ISupportInitialize)(this.pbxApplicationIcon)).EndInit();
- ((System.ComponentModel.ISupportInitialize)(this.kryptonPanel2)).EndInit();
- this.kryptonPanel2.ResumeLayout(false);
- this.ResumeLayout(false);
-
- }
-
- #endregion
-
- private KryptonPanel kryptonPanel1;
- private KryptonTableLayoutPanel kryptonTableLayoutPanel1;
- private PictureBox pbxApplicationIcon;
- private KryptonWrapLabel kwlMessage;
- private KryptonPanel kryptonPanel2;
- private KryptonButton kbtnOk;
- }
-}
\ No newline at end of file
diff --git a/Source/Krypton Toolkit/Krypton.Toolkit.Suite.Extended.Software.Updater/NetSparkle/UX/NetSparkleMessageNotificationWindow.cs b/Source/Krypton Toolkit/Krypton.Toolkit.Suite.Extended.Software.Updater/NetSparkle/UX/NetSparkleMessageNotificationWindow.cs
deleted file mode 100644
index d41a6ffe9..000000000
--- a/Source/Krypton Toolkit/Krypton.Toolkit.Suite.Extended.Software.Updater/NetSparkle/UX/NetSparkleMessageNotificationWindow.cs
+++ /dev/null
@@ -1,63 +0,0 @@
-#region License
-
-/*
- * The MIT License
- *
- * Copyright (c) 2022 Deadpikle
- *
- * Permission is hereby granted, free of charge, to any person obtaining a copy
- * of this software and associated documentation files (the "Software"), to deal
- * in the Software without restriction, including without limitation the rights
- * to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
- * copies of the Software, and to permit persons to whom the Software is
- * furnished to do so, subject to the following conditions:
- *
- * The above copyright notice and this permission notice shall be included in
- * all copies or substantial portions of the Software.
- *
- * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
- * IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
- * FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
- * AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
- * LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
- * OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN
- * THE SOFTWARE.
- */
-
-#endregion
-
-using Size = System.Drawing.Size;
-
-// ReSharper disable VirtualMemberCallInConstructor
-
-namespace Krypton.Toolkit.Suite.Extended.Software.Updater
-{
- public partial class NetSparkleMessageNotificationWindow : KryptonForm
- {
- public NetSparkleMessageNotificationWindow()
- {
- InitializeComponent();
- }
-
- public NetSparkleMessageNotificationWindow(string title, string message, Icon? applicationIcon = null)
- {
- InitializeComponent();
-
- Text = title;
-
- if (applicationIcon != null)
- {
- Icon = applicationIcon;
-
- pbxApplicationIcon.Image = new Icon(applicationIcon, new Size(48, 48)).ToBitmap();
- }
-
- kwlMessage.Text = message;
- }
-
- private void kbtnOk_Click(object sender, EventArgs e)
- {
- Close();
- }
- }
-}
diff --git a/Source/Krypton Toolkit/Krypton.Toolkit.Suite.Extended.Software.Updater/NetSparkle/UX/NetSparkleMessageNotificationWindow.resx b/Source/Krypton Toolkit/Krypton.Toolkit.Suite.Extended.Software.Updater/NetSparkle/UX/NetSparkleMessageNotificationWindow.resx
deleted file mode 100644
index 057c9be0c..000000000
--- a/Source/Krypton Toolkit/Krypton.Toolkit.Suite.Extended.Software.Updater/NetSparkle/UX/NetSparkleMessageNotificationWindow.resx
+++ /dev/null
@@ -1,325 +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
-
-
-
-
- iVBORw0KGgoAAAANSUhEUgAAAh4AAACYCAYAAACrteCmAAAAAXNSR0IArs4c6QAAAARnQU1BAACxjwv8
- YQUAAAAJcEhZcwAADsMAAA7DAcdvqGQAAALhSURBVHhe7drBCYAwFAVB202N9mAZtqEoKHg3e5rDENLB
- 8vjLuu3HGOPl7+/v7+/v7z/rvzwfAICZhAcAkBEeAEDqvvEAAJjN4gEAZIQHAJARHgBAyo0HAJCweAAA
- GeEBAGSEBwCQcuMBACQsHgBARngAABnhAQCk3HgAAAmLBwCQER4AQEZ4AAApNx4AQMLiAQBkhAcAkBEe
- AEDKjQcAkLB4AAAZ4QEAZIQHAJBy4wEAJCweAEBGeAAAGeEBAKTceAAACYsHAJARHgBARngAACk3HgBA
- wuIBAGSEBwCQER4AQMqNBwCQsHgAABnhAQBkhAcAkHLjAQAkLB4AQEZ4AAAZ4QEApNx4AAAJiwcAkBEe
- AEBGeAAAKTceAEDC4gEAZIQHAJARHgBAyo0HAJCweAAAGeEBAGSEBwCQcuMBACQsHgBARngAABnhAQCk
- 3HgAAAmLBwCQER4AQEZ4AAApNx4AQMLiAQBkhAcAkBEeAEDKjQcAkLB4AAAZ4QEAZIQHAJBy4wEAJCwe
- AEBGeAAAGeEBAKTceAAACYsHAJARHgBARngAACk3HgBAwuIBAGSEBwCQER4AQMqNBwCQsHgAABnhAQBk
- hAcAkHLjAQAkLB4AQEZ4AAAZ4QEApNx4AAAJiwcAkBEeAEBGeAAAKTceAEDC4gEAZIQHAJARHgBAyo0H
- AJCweAAAGeEBAGSEBwCQcuMBACQsHgBARngAABnhAQCk3HgAAAmLBwCQER4AQEZ4AAApNx4AQMLiAQBk
- hAcAkBEeAEDKjQcAkLB4AAAZ4QEAZIQHAJBy4wEAJCweAEBGeAAAGeEBAKTceAAACYsHAJARHgBARngA
- ACk3HgBAwuIBAGSEBwCQER4AQMqNBwCQsHgAABnhAQBkhAcAkHLjAQAkLB4AQEZ4AAAZ4QEApNx4AAAJ
- iwcAkBEeAEBGeAAAKTceAEDC4gEAZIQHAJD5hMf1Pvz9/f39/f39///vxwm5kRbuDXHmUwAAAABJRU5E
- rkJggg==
-
-
-
-
- AAABAAIAEBAAAAAAIABoBAAAJgAAADAwAAAAACAAqCUAAI4EAAAoAAAAEAAAACAAAAABACAAAAAAAAAE
- AADXDQAA1w0AAAAAAAAAAAAA////AP///wD///8A////AP///wD///8A////AABczlIAXM5i////AP//
- /wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AABczg8BXs/tAV3P9ABc
- zhf///8A////AP///wD///8A////AP///wD///8A////AABczmIAXM5rAFzOMwBczgUAXc+fDW3a9xBx
- 3fkBXtCwAFzOAwBczjAAXM5nAFzOb////wD///8A////AP///wAAXM50A1/Q/Adi0PoBXs/6A1/Q+h+I
- 8v8givP/BWHR+QFez/kGYdD7BGHR/ABczoz///8A////AP///wD///8AAFzOPAVh0fcji/b/I4fw/yCF
- 7v8Xhfb/E4P2/yGF7/8ih/D/I4v2/whl1PMAXM5Q////AP///wD///8A////AABczgkAXM78K43y/xWG
- 9v8Thfb/a7T6/2q0+v8Thfb/EoT1/y+S9f8BXc7+AFzOFv///wD///8A////AABczhUAXc+nB2LQ+jST
- 8f8fjff/bbf7/83q///N6v//bbf7/xmK9v83lvT/CmTS+QFe0LMAXM4a////AABczmMCXs/zIHrf+EWf
- 9v80mvj/crr7/83q///N6v//zer//83q//9xuvv/MZj4/0ah9v8lf+H6Al7P9gBczm8AXM5jAV3P8yJ7
- 3/hOpvf/QaL5/x+S+P8bkPj/zer//83q//8bkPj/HZH4/z2h+f9QqPf/JoDi+gJez/YAXM5v////AABc
- zhUBXs+nCGPR+lKm9P85ofn/IZb4/83q///N6v//IZb4/zKe+f9Xq/X/C2XT+QJf0LMAXM4a////AP//
- /wD///8AAFzOCQBdzvxisvb/Qaj6/0Cn+v+/5P7/v+T+/0Cn+v8+pvr/aLj5/wNez/4AXM4W////AP//
- /wD///8A////AABczjwQaNP3dcH8/2y49v9ms/T/Xrf7/1e0+/9otPX/a7f2/3TB+/8cc9j0AFzOUP//
- /wD///8A////AP///wAAXM50CmPR/BJp0/oCXs/6CmTR+nG9+f90wPr/EGjS+QFdz/kPZ9L7DWbS/ABc
- zoz///8A////AP///wD///8AAFzOYgBczmsAXM4zAFzOBQJfz54xhd/4PI7j+QJf0LAAXM4DAFzOMABc
- zmcAXM5v////AP///wD///8A////AP///wD///8A////AP///wAAXM4PAl/P7QRfz/QAXM4X////AP//
- /wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AABczlAAXM5g////AP//
- /wD///8A////AP///wD///8A////AP5/AAD8PwAAwAMAAMADAADAAwAAwAMAAIABAAAAAAAAAAAAAIAB
- AADAAwAAwAMAAMADAADAAwAA/D8AAP5/AAAoAAAAMAAAAGAAAAABACAAAAAAAAAkAAASCwAAEgsAAAAA
- AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAQAA
- AAEAAAACAAAAAwAAAAMAAAAEAAAABQAAAAYAAAAHAAAABwAAAAcAAAAIAAAACAAAAAkAAAAJAAAACAAA
- AAgAAAAHAAAABwAAAAcAAAAGAAAABQAAAAQAAAADAAAAAwAAAAIAAAABAAAAAQAAAAAAAAAAAAAAAAAA
- AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
- AAEAAAABAAAAAgAAAAMAAAAEAAAABQAAAAYAAAAHAAAACQAAAAoAAAALAAAADAAAAA0AAAANAAAADgAA
- AA4AAAAOAAAADgAAAA0AAAANAAAADAAAAAsAAAAKAAAACQAAAAcAAAAGAAAABQAAAAQAAAADAAAAAgAA
- AAEAAAABAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
- AAAAAAAAAAAAAQAAAAIAAAADAAAAAwAAAAUAAAAHAAAACAAAAAoAAAAMAAAADQAAAA8AAAARAAAAEgAA
- ABQAAAAVAEacRQBOr2IAAAAWAAAAFQAAABUAAAAUAAAAEgAAABEAAAAPAAAADQAAAAwAAAAKAAAACAAA
- AAcAAAAFAAAAAwAAAAMAAAACAAAAAQAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
- 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
- 9v8Hf/b/B3/2/wd/9v8Hf/b/B3/2/wd/9v8Xh/f/JIz1/yCM9/8ZiPf/EIT2/wiA9v8Hf/b/B3/2/xOF
- 9v8ni/H/AFzO/AAiTBYAAAAKAAAABwAAAAQAAAACAAAAAQAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
- AAAAAAAAAAAAAQAAAAIAAAADAAAABQBczK4WeOL/IIv2/wR99f8EffX/BH31/wR99f8EffX/BH31/wR9
- 9f8EffX/BH31/wR99f8EffX/BH31/wR99f8EffX/BH31/wR99f8EffX/BH31/wR99f8EffX/BH31/wR9
- 9f8EffX/BH31/xmI9/8df+n/AF3O1gAAAAsAAAAIAAAABQAAAAMAAAACAAAAAQAAAAAAAAAAAAAAAAAA
- AAAAAAAAAAAAAAAAAAAAAAAAAAAAAQAAAAEAAAACAAAABABZyG8Ladj1KI/2/wJ79f8Ce/X/Anv1/wJ7
- 9f8Ce/X/Anv1/wJ79f8Ce/X/Anv1/wJ79f8Ce/X/Anv1/wJ79f8Ce/X/Anv1/wJ79f8Ce/X/Anv1/wJ7
- 9f8Ce/X/Anv1/wJ79f8Ce/X/Anv1/yGL9v8Uc9/8AFnHlwAAAAkAAAAGAAAABAAAAAIAAAABAAAAAQAA
- AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAEAAAACAAAAAwBWwjUCXs/8LZD2/wd9
- 9f8BevX/AXn1/wB59f8AefX/AHn1/wB59f8AefX/AHn1/wB59f8AefX/AHn1/xSF9v8AefX/AHn1/wB5
- 9f8AefX/AHn1/wB59f8BefX/AXn1/wF69f8BevX/Anv1/yuQ9/8KZtX1AFfCXAAAAAYAAAAEAAAAAwAA
- AAIAAAABAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAABAAAAAgA1
- dwcAXM/4KIrw/xSE9v8De/X/A3v1/wJ79f8Ce/X/Anv1/wJ79f8Ce/X/Anv1/wJ79f8Ce/X/RaT6/43P
- /v9NqPn/A3z1/wJ79f8Ce/X/Anv1/wJ79f8Ce/X/A3v1/wN79f8De/X/C3/1/y+R9P8CXc7/AE6vIwAA
- AAQAAAADAAAAAgAAAAEAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
- AAAAAAAAAAAAAQAAAAEAXc/IIH/o/yCL9/8Fffb/BX32/wV99v8Fffb/BX32/wV99v8Fffb/BX32/wuA
- 9v9gtPv/jtD+/47Q/v+O0P7/YLT7/wmA9v8Fffb/BX32/wV99v8Fffb/BX32/wV99v8Fffb/GYf3/ymJ
- 7v8AXc/tAAAAAwAAAAIAAAABAAAAAQAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
- AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAEAXM2XGHTe+iyS9/8Hf/b/B3/2/wd/9v8Hf/b/B3/2/wd/
- 9v8Hf/b/F4j3/3TA/P+O0P7/jtD+/47Q/v+O0P7/jtD+/2+9/P8Rhff/B3/2/wd/9v8Hf/b/B3/2/wd/
- 9v8Hf/b/I473/yJ/5v8AXc7EAAAAAgAAAAEAAAABAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
- AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAFzOFABdz6YHYdD8Lojo/iKO9/8Jgfb/CYH2/wmB
- 9v8Jgfb/CYH2/wmB9v8plPj/g8n9/47Q/v+O0P7/jtD+/47Q/v+O0P7/jtD+/47Q/v96xf3/HIz3/wmB
- 9v8Jgfb/CYH2/wmB9v8Jgfb/GIn3/zWP7f8LZdL6AF3PwQBcziIAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
- AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAXM5fAV7P8hx02/k7l/P/LJT3/w+E
- 9v8Mg/b/DIP2/wyD9v8Mg/b/DIP2/0Ci+v+Lz/7/jtD+/47Q/v+O0P7/jtD+/47Q/v+O0P7/jtD+/47Q
- /v+O0P7/hMr9/ymU+P8Mg/b/DIP2/wyD9v8Mg/b/DYP2/yeR9/89mfX/I3zf+wNf0PoAXM54AFzOBAAA
- AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAFzOJQFe0MUMZdL5NI3r/zyc
- +f8djfj/DoX3/w6F9/8Ohff/DoX3/w6F9/8Qhvf/WbH7/47Q/v+O0P7/jtD+/47Q/v+O0P7/jtD+/47Q
- /v+O0P7/jtD+/47Q/v+O0P7/jtD+/4rN/v85nvr/DoX3/w6F9/8Ohff/DoX3/w6F9/8Xivf/OJr4/zqT
- 7/8TbNX4AV7Q2ABczjYAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAABczgUAXc9+Al7P+yZ+
- 4PxEnvb/Lpb4/xKI9/8Qh/f/EIf3/xCH9/8Qh/f/EIf3/xiM+P9qvPz/is7+/4rO/v+Lz/7/jtD+/47Q
- /v+O0P7/jtD+/47Q/v+O0P7/jtD+/47Q/v+O0P7/i8/+/4rO/v+Kzv7/Rqf6/xCH9/8Qh/f/EIf3/xCH
- 9/8Qh/f/EIf3/yeT+P9Dn/f/LYXl/QZgz/0AXc+VAFzODQAAAAAAAAAAAAAAAAAAAAAAAAAAAFzOOwFe
- 0N0TbNb4Ppjw/z+f+f8dj/f/Eon3/xKJ9/8Siff/Eon3/xKJ9/8Siff/Eon3/xKJ9/8Siff/Eon3/xKJ
- 9/89ovr/jtD+/47Q/v+O0P7/jtD+/47Q/v+O0P7/jtD+/47Q/v+O0P7/OZ/6/xKJ9/8Siff/Eon3/xKJ
- 9/8Siff/Eon3/xKJ9/8Siff/Eon3/xKJ9/8ZjPf/OJz4/0Oc8/8cdNn5AV3P6wBczk4AAAAAAAAAAAAA
- AAAAXM4QAFzOzQNez/44k+7/Taf5/y2X+P8Vi/f/FYv3/xWL9/8Vi/f/FYv3/xWL9/8Vi/f/FYv3/xWL
- 9/8Vi/f/FYv3/xWL9/8/o/r/jtD+/47Q/v+O0P7/jtD+/47Q/v+O0P7/jtD+/47Q/v+O0P7/O6D6/xWL
- 9/8Vi/f/FYv3/xWL9/8Vi/f/FYv3/xWL9/8Vi/f/FYv3/xWL9/8Vi/f/JJL4/0ml+f9AmfH/CmTS/QBd
- z98AXM4iAAAAAAAAAAAAAAAAAFzOAwBcznIAXc/4Hnnf+kqk9/9Dovn/H5H4/xeN+P8Xjfj/F434/xeN
- +P8Xjfj/F434/xeN+P8Xjfj/F434/xeN+P9ApPr/jtD+/47Q/v+O0P7/jtD+/47Q/v+O0P7/jtD+/47Q
- /v+O0P7/PaL6/xeN+P8Xjfj/F434/xeN+P8Xjfj/F434/xeN+P8Xjfj/F434/xyP+P86nvn/Tqf4/yiD
- 5PsBXs/7AF3PiABczgkAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAXM4eAV7PuAZh0fk2j+v/Uqv6/zWd
- +f8aj/j/GY/4/xmP+P8Zj/j/GY/4/xmP+P8Zj/j/GY/4/xmP+P9Bpvr/jtD+/47Q/v+O0P7/jtD+/47Q
- /v+O0P7/jtD+/47Q/v+O0P7/PqP6/xmP+P8Zj/j/GY/4/xmP+P8Zj/j/GY/4/xmP+P8Zj/j/Lpn5/06p
- +v9AmO//DGbT+AFe0M4AXM4sAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAABc
- zlIBXs/rGXPa+E2k9P9Nqfr/KJf4/xyR+P8ckfj/HJH4/xyR+P8ckfj/HJH4/xyR+P9Dp/r/jtD+/47Q
- /v+O0P7/jtD+/47Q/v+O0P7/jtD+/47Q/v+O0P7/QKX6/xyR+P8ckfj/HJH4/xyR+P8ckfj/HJH4/yOU
- +P9Hpvn/Uqj2/yN83voBXc/1AFzOaQBczgEAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
- AAAAAAAAAAAAAAAAAAAAXM4NAV3PlgNf0Pwyi+b9WK75/zGc+f8ek/j/HpP4/x6T+P8ek/j/HpP4/x6T
- +P9Ep/r/jtD+/47Q/v+O0P7/jtD+/47Q/v+O0P7/jtD+/47Q/v+O0P7/QKb6/x6T+P8ek/j/HpP4/x6T
- +P8ek/j/J5f4/1iu+v89k+v/CGLQ+wFe0LAAXM4ZAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
- AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAABczjUBXtDcLoLg+0yq+v8glfn/IJX5/yCV
- +f8glfn/IJX5/yCV+f8sm/r/i87+/47Q/v+O0P7/jtD+/47Q/v+O0P7/jtD+/47Q/v+Jzf7/KZn5/yCV
- +f8glfn/IJX5/yCV+f8glfn/QKT6/z+R5/8BXs/tAFzOSwAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
- AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAABXc+hMYnl/U6s
- +v8il/n/Ipf5/yKX+f8il/n/Ipf5/yKX+f8il/n/K5z5/z2l+/89pfv/PaX7/z2l+/89pfv/PaX7/z2l
- +v8pm/n/Ipf5/yKX+f8il/n/Ipf5/yKX+f8il/n/Qqb6/0KX7P8CX9DPAAAAAAAAAAAAAAAAAAAAAAAA
- AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
- AAACX9DhSZ7u/0Sn+v8lmfn/JZn5/yWZ+f8lmfn/JZn5/yWZ+f8lmfn/JZn5/yWZ+f8lmfn/JZn5/yWZ
- +f8lmfn/JZn5/yWZ+f8lmfn/JZn5/yWZ+f8lmfn/JZn5/yWZ+f8lmfn/OKL6/1qr9P8AXc77AFzOBgAA
- AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
- AAAAAAAAAAAAAABczhIAXM7+YLH3/zij+f8nm/n/J5v5/yeb+f8nm/n/J5v5/yeb+f8nm/n/J5v5/yeb
- +f8nm/n/J5v5/yeb+f8nm/n/J5v5/yeb+f8nm/n/J5v5/yeb+f8nm/n/J5v5/yeb+f8nm/n/K535/2e4
- +v8LZNH7AFzONwAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
- AAAAAAAAAAAAAAAAAAAAAAAAAAAAAABczksQadP4arv8/yyf+v8pnfr/KZ36/ymd+v8pnfr/KZ36/ymd
- +v8pnfr/KZ36/ymd+v8pnfr/KZ36/ymd+v8pnfr/KZ36/ymd+v8pnfr/KZ36/ymd+v8pnfr/KZ36/ymd
- +v8pnfr/KZ36/2C2+/8le9z3AFzOcAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
- AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAABczoUsg+D6Yrf7/yyf+v8sn/r/LJ/6/yyf
- +v8sn/r/LJ/6/yyf+v8sn/r/LJ/6/yyf+v8sn/r/LJ/6/yyf+v8sn/r/LJ/6/yyf+v8sn/r/LJ/6/yyf
- +v8sn/r/LJ/6/yyf+v8sn/r/LJ/6/1Wy+/8+k+f/Al7QrwAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
- AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAJf0MlGm+v/VrP7/y6h
- +v8uofr/LqH6/y6h+v8wovr/Paj6/0es+/80pPr/LqH6/y6h+v8uofr/LqH6/y6h+v8uofr/LqH6/y6h
- +v8wovr/Rav7/z+p+v8xovr/LqH6/y6h+v8uofr/LqH6/0mt+/9ZqfH/Al7Q6gAAAAAAAAAAAAAAAAAA
- AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAFzOBAFd
- z/lhsfT/Sa77/zam+v9Grfv/VbT7/2W6+/9xv/r/arT0/1ul7P9vu/j/Q6z6/zCj+v8wo/r/MKP6/zCj
- +v8wo/r/MKP6/zmn+v9vvfr/XKXs/2ay8/9xvvr/aLz7/1m1+/9Kr/v/O6j6/z2p+v9wvfn/A17P/wBc
- zhsAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
- AAAAAAAAAFzOMwZg0Px2wvz/csH8/3K9+P9irvH/SJfn/S1+2/YSaNH+A1/P8wFez+M1iOH6br/8/zWm
- +/8ypfv/MqX7/zKl+/8ypfv/MqX7/2W7/P9JmOj9Al/P6wJez+4OZdH/J3ra9kWU5vxeqvD/crv4/3TC
- /P93w/z/GXDW9wBczlUAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
- AAAAAAAAAAAAAAAAAAAAAAAAAFzObRBo0/w9jOL4H3LW+Qhh0P0DYNDaAV3PmgBczl8AXM4nAFzOAQBc
- zhgCX8/1X63x/1q3/P81p/v/Naf7/zWn+/81p/v/TrL7/2249f8IYdD8AFzOMwAAAAAAXM4eAFzOVwBd
- zpEDYNDTB2HP+xtv1fo4ieD3HnTX/QBdzo8AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
- AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAFzOkwJf0LoAXM56AFzOQQBczgwAAAAAAAAAAAAA
- AAAAAAAAAAAAAAAAAAAAXM5jFmzU+HfC+v9Er/v/N6n7/zep+/88q/v/dML8/yl82/gBXc+NAAAAAAAA
- AAAAAAAAAAAAAAAAAAAAAAAAAFzOBwBczjoAXM5yAl/QsgBdzrEAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
- AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
- AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAl/QxkOV5vxvwvz/Oqv7/zmr+/9jvfz/WKTs/gJf
- z+QAXM4KAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
- AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
- AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAFzOJAVg0PltuPX/Wbn8/020
- /P92wPj/DmbR+wBczkQAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
- AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
- AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAFd
- zngjeNn4e8f8/3fH/f84iOD4Al7PowAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
- AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
- AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
- AAAAAAAAAAAAAABczgQCX9DXUqHr/WSv8f8EX8/vAFzOEgAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
- AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
- AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
- AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAXM4zCmTR+xZr1PkAXM5XAAAAAAAAAAAAAAAAAAAAAAAA
- AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
- AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
- AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAV7PjwJfz7kAAAAAAAAAAAAA
- AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
- AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
- AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
- AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
- AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
- AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
- AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
- AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA//AAAAD/AAD/wAAAAD8AAP+A
- AAAAHwAA/wAAAAAPAAD+AAAAAAcAAPwAAAAAAwAA/AAAAAADAAD8AAAAAAMAAPgAAAAAAQAA+AAAAAAB
- AAD4AAAAAAEAAPgAAAAAAQAA/AAAAAADAAD8AAAAAAMAAPwAAAAAAwAA/gAAAAAHAAD/AAAAAA8AAP+A
- AAAAHwAA/8AAAAA/AAD/gAAAAH8AAP8AAAAAHwAA/AAAAAAPAADwAAAAAAMAAOAAAAAAAQAAwAAAAAAA
- AADgAAAAAAEAAPgAAAAABwAA/gAAAAAPAAD/AAAAAD8AAP/AAAAA/wAA/+AAAAH/AAD/4AAAAP8AAP/A
- AAAA/wAA/8AAAAD/AAD/wAAAAP8AAP/AAAAA/wAA/4AAAAB/AAD/gAAAAH8AAP+AAAEAfwAA/4PwA/B/
- AAD///gD//8AAP//+Af//wAA///8D///AAD///wP//8AAP///h///wAA////P///AAD///////8AAP//
- /////wAA
-
-
-
\ No newline at end of file
diff --git a/Source/Krypton Toolkit/Krypton.Toolkit.Suite.Extended.Software.Updater/NetSparkle/UX/NetSparkleToastNotifierWindow.Designer.cs b/Source/Krypton Toolkit/Krypton.Toolkit.Suite.Extended.Software.Updater/NetSparkle/UX/NetSparkleToastNotifierWindow.Designer.cs
deleted file mode 100644
index 89546564f..000000000
--- a/Source/Krypton Toolkit/Krypton.Toolkit.Suite.Extended.Software.Updater/NetSparkle/UX/NetSparkleToastNotifierWindow.Designer.cs
+++ /dev/null
@@ -1,166 +0,0 @@
-namespace Krypton.Toolkit.Suite.Extended.Software.Updater
-{
- partial class NetSparkleToastNotifierWindow
- {
- ///
- /// 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(NetSparkleToastNotifierWindow));
- this.kryptonPanel1 = new Krypton.Toolkit.KryptonPanel();
- this.kryptonTableLayoutPanel1 = new Krypton.Toolkit.KryptonTableLayoutPanel();
- this.kryptonTableLayoutPanel2 = new Krypton.Toolkit.KryptonTableLayoutPanel();
- this.pbxApplicationIcon = new System.Windows.Forms.PictureBox();
- this.kllCallToAction = new Krypton.Toolkit.KryptonLinkLabel();
- this.kwlMessage = new Krypton.Toolkit.KryptonWrapLabel();
- this.imageList1 = new System.Windows.Forms.ImageList(this.components);
- ((System.ComponentModel.ISupportInitialize)(this.kryptonPanel1)).BeginInit();
- this.kryptonPanel1.SuspendLayout();
- this.kryptonTableLayoutPanel1.SuspendLayout();
- this.kryptonTableLayoutPanel2.SuspendLayout();
- ((System.ComponentModel.ISupportInitialize)(this.pbxApplicationIcon)).BeginInit();
- this.SuspendLayout();
- //
- // kryptonPanel1
- //
- this.kryptonPanel1.Controls.Add(this.kryptonTableLayoutPanel1);
- this.kryptonPanel1.Dock = System.Windows.Forms.DockStyle.Fill;
- this.kryptonPanel1.Location = new System.Drawing.Point(0, 0);
- this.kryptonPanel1.Name = "kryptonPanel1";
- this.kryptonPanel1.Size = new System.Drawing.Size(330, 100);
- this.kryptonPanel1.TabIndex = 1;
- //
- // kryptonTableLayoutPanel1
- //
- this.kryptonTableLayoutPanel1.BackgroundImage = ((System.Drawing.Image)(resources.GetObject("kryptonTableLayoutPanel1.BackgroundImage")));
- this.kryptonTableLayoutPanel1.BackgroundImageLayout = System.Windows.Forms.ImageLayout.None;
- this.kryptonTableLayoutPanel1.ColumnCount = 2;
- this.kryptonTableLayoutPanel1.ColumnStyles.Add(new System.Windows.Forms.ColumnStyle());
- this.kryptonTableLayoutPanel1.ColumnStyles.Add(new System.Windows.Forms.ColumnStyle(System.Windows.Forms.SizeType.Percent, 100F));
- this.kryptonTableLayoutPanel1.Controls.Add(this.kryptonTableLayoutPanel2, 1, 0);
- this.kryptonTableLayoutPanel1.Controls.Add(this.pbxApplicationIcon, 0, 0);
- this.kryptonTableLayoutPanel1.Dock = System.Windows.Forms.DockStyle.Fill;
- this.kryptonTableLayoutPanel1.Location = new System.Drawing.Point(0, 0);
- this.kryptonTableLayoutPanel1.Name = "kryptonTableLayoutPanel1";
- this.kryptonTableLayoutPanel1.RowCount = 1;
- this.kryptonTableLayoutPanel1.RowStyles.Add(new System.Windows.Forms.RowStyle(System.Windows.Forms.SizeType.Percent, 100F));
- this.kryptonTableLayoutPanel1.Size = new System.Drawing.Size(330, 100);
- this.kryptonTableLayoutPanel1.TabIndex = 0;
- //
- // kryptonTableLayoutPanel2
- //
- this.kryptonTableLayoutPanel2.BackgroundImage = ((System.Drawing.Image)(resources.GetObject("kryptonTableLayoutPanel2.BackgroundImage")));
- this.kryptonTableLayoutPanel2.BackgroundImageLayout = System.Windows.Forms.ImageLayout.None;
- this.kryptonTableLayoutPanel2.ColumnCount = 1;
- this.kryptonTableLayoutPanel2.ColumnStyles.Add(new System.Windows.Forms.ColumnStyle(System.Windows.Forms.SizeType.Percent, 100F));
- this.kryptonTableLayoutPanel2.Controls.Add(this.kllCallToAction, 0, 1);
- this.kryptonTableLayoutPanel2.Controls.Add(this.kwlMessage, 0, 0);
- this.kryptonTableLayoutPanel2.Dock = System.Windows.Forms.DockStyle.Fill;
- this.kryptonTableLayoutPanel2.Location = new System.Drawing.Point(73, 3);
- this.kryptonTableLayoutPanel2.Name = "kryptonTableLayoutPanel2";
- this.kryptonTableLayoutPanel2.RowCount = 2;
- this.kryptonTableLayoutPanel2.RowStyles.Add(new System.Windows.Forms.RowStyle(System.Windows.Forms.SizeType.Percent, 100F));
- this.kryptonTableLayoutPanel2.RowStyles.Add(new System.Windows.Forms.RowStyle());
- this.kryptonTableLayoutPanel2.Size = new System.Drawing.Size(254, 94);
- this.kryptonTableLayoutPanel2.TabIndex = 0;
- //
- // pbxApplicationIcon
- //
- this.pbxApplicationIcon.BackColor = System.Drawing.Color.Transparent;
- this.pbxApplicationIcon.Location = new System.Drawing.Point(3, 3);
- this.pbxApplicationIcon.Name = "pbxApplicationIcon";
- this.pbxApplicationIcon.Padding = new System.Windows.Forms.Padding(5, 5, 0, 0);
- this.pbxApplicationIcon.Size = new System.Drawing.Size(64, 64);
- this.pbxApplicationIcon.TabIndex = 2;
- this.pbxApplicationIcon.TabStop = false;
- //
- // kllCallToAction
- //
- this.kllCallToAction.Dock = System.Windows.Forms.DockStyle.Fill;
- this.kllCallToAction.LabelStyle = Krypton.Toolkit.LabelStyle.NormalPanel;
- this.kllCallToAction.Location = new System.Drawing.Point(3, 72);
- this.kllCallToAction.Name = "kllCallToAction";
- this.kllCallToAction.Size = new System.Drawing.Size(248, 19);
- this.kllCallToAction.StateCommon.ShortText.Font = new System.Drawing.Font("Segoe UI", 8.25F, System.Drawing.FontStyle.Regular, System.Drawing.GraphicsUnit.Point, ((byte)(0)));
- this.kllCallToAction.TabIndex = 0;
- this.kllCallToAction.Values.Text = "kryptonLinkLabel1";
- this.kllCallToAction.LinkClicked += new System.EventHandler(this.kllCallToAction_LinkClicked);
- //
- // kwlMessage
- //
- this.kwlMessage.AutoSize = false;
- this.kwlMessage.Dock = System.Windows.Forms.DockStyle.Fill;
- this.kwlMessage.Font = new System.Drawing.Font("Segoe UI", 11.25F, System.Drawing.FontStyle.Regular, System.Drawing.GraphicsUnit.Point, ((byte)(0)));
- this.kwlMessage.ForeColor = System.Drawing.Color.FromArgb(((int)(((byte)(30)))), ((int)(((byte)(57)))), ((int)(((byte)(91)))));
- this.kwlMessage.LabelStyle = Krypton.Toolkit.LabelStyle.NormalControl;
- this.kwlMessage.Location = new System.Drawing.Point(3, 0);
- this.kwlMessage.Name = "kwlMessage";
- this.kwlMessage.Size = new System.Drawing.Size(248, 69);
- this.kwlMessage.StateCommon.Font = new System.Drawing.Font("Segoe UI", 11.25F, System.Drawing.FontStyle.Regular, System.Drawing.GraphicsUnit.Point, ((byte)(0)));
- this.kwlMessage.Text = "kryptonWrapLabel1";
- this.kwlMessage.TextAlign = System.Drawing.ContentAlignment.MiddleLeft;
- //
- // imageList1
- //
- this.imageList1.ColorDepth = System.Windows.Forms.ColorDepth.Depth8Bit;
- this.imageList1.ImageSize = new System.Drawing.Size(16, 16);
- this.imageList1.TransparentColor = System.Drawing.Color.Transparent;
- //
- // NetSparkleToastNotifierWindow
- //
- this.AutoScaleDimensions = new System.Drawing.SizeF(6F, 13F);
- this.AutoScaleMode = System.Windows.Forms.AutoScaleMode.Font;
- this.ClientSize = new System.Drawing.Size(330, 100);
- this.Controls.Add(this.kryptonPanel1);
- this.FormBorderStyle = System.Windows.Forms.FormBorderStyle.None;
- this.MaximizeBox = false;
- this.MinimizeBox = false;
- this.Name = "NetSparkleToastNotifierWindow";
- this.ShowIcon = false;
- this.ShowInTaskbar = false;
- this.Click += new System.EventHandler(this.NetSparkleToastNotifierWindow_Click);
- this.Controls.SetChildIndex(this.kryptonPanel1, 0);
- ((System.ComponentModel.ISupportInitialize)(this.kryptonPanel1)).EndInit();
- this.kryptonPanel1.ResumeLayout(false);
- this.kryptonTableLayoutPanel1.ResumeLayout(false);
- this.kryptonTableLayoutPanel2.ResumeLayout(false);
- this.kryptonTableLayoutPanel2.PerformLayout();
- ((System.ComponentModel.ISupportInitialize)(this.pbxApplicationIcon)).EndInit();
- this.ResumeLayout(false);
-
- }
-
- #endregion
-
- private KryptonPanel kryptonPanel1;
- private KryptonTableLayoutPanel kryptonTableLayoutPanel1;
- private KryptonTableLayoutPanel kryptonTableLayoutPanel2;
- private PictureBox pbxApplicationIcon;
- private KryptonLinkLabel kllCallToAction;
- private KryptonWrapLabel kwlMessage;
- private ImageList imageList1;
- }
-}
\ No newline at end of file
diff --git a/Source/Krypton Toolkit/Krypton.Toolkit.Suite.Extended.Software.Updater/NetSparkle/UX/NetSparkleToastNotifierWindow.cs b/Source/Krypton Toolkit/Krypton.Toolkit.Suite.Extended.Software.Updater/NetSparkle/UX/NetSparkleToastNotifierWindow.cs
deleted file mode 100644
index e199e9901..000000000
--- a/Source/Krypton Toolkit/Krypton.Toolkit.Suite.Extended.Software.Updater/NetSparkle/UX/NetSparkleToastNotifierWindow.cs
+++ /dev/null
@@ -1,177 +0,0 @@
-#region License
-
-/*
- * The MIT License
- *
- * Copyright (c) 2022 Deadpikle
- *
- * Permission is hereby granted, free of charge, to any person obtaining a copy
- * of this software and associated documentation files (the "Software"), to deal
- * in the Software without restriction, including without limitation the rights
- * to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
- * copies of the Software, and to permit persons to whom the Software is
- * furnished to do so, subject to the following conditions:
- *
- * The above copyright notice and this permission notice shall be included in
- * all copies or substantial portions of the Software.
- *
- * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
- * IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
- * FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
- * AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
- * LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
- * OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN
- * THE SOFTWARE.
- */
-
-#endregion
-
-using Size = System.Drawing.Size;
-using Timer = System.Windows.Forms.Timer;
-
-namespace Krypton.Toolkit.Suite.Extended.Software.Updater
-{
- public partial class NetSparkleToastNotifierWindow : KryptonForm
- {
- #region Instance Fields
-
- private Timer _goUpTimer;
- private Timer _goDownTimer;
- private Timer _pauseTimer;
- private int _startPosX;
- private int _startPosY;
-
- #endregion
-
- #region Public
-
- public Action> ClickAction { get; set; }
-
- public List Updates { get; set; }
-
- #endregion
-
- #region Identity
-
- public NetSparkleToastNotifierWindow(Icon? applicationIcon = null)
- {
- InitializeComponent();
-
- TopMost = true;
-
- _goUpTimer = new Timer();
-
- _goDownTimer = new Timer();
-
- _pauseTimer = new Timer();
-
- _goUpTimer.Interval = 25;
-
- _goDownTimer.Interval = 25;
-
- _pauseTimer.Interval = 15000;
-
- _goUpTimer.Tick += GoUpTimer_Tick;
-
- _goDownTimer.Tick += GoDownTimer_Tick;
-
- _pauseTimer.Tick += PauseTimer_Tick;
-
- if (applicationIcon != null)
- {
- Icon = applicationIcon;
-
- pbxApplicationIcon.Image = new Icon(applicationIcon, new Size(64, 64)).ToBitmap();
- }
- else
- {
- pbxApplicationIcon.Visible = false;
- }
- }
-
- #endregion
-
- #region Implementation
-
- private void PauseTimer_Tick(object sender, EventArgs e)
- {
- _pauseTimer.Stop();
-
- _goDownTimer.Start();
- }
-
- private void GoDownTimer_Tick(object sender, EventArgs e)
- {
- //Lower window by 5 pixels
- _startPosY += 5;
- //If window is fully visible stop the timer
- if (_startPosY > Screen.PrimaryScreen.WorkingArea.Height)
- {
- _goDownTimer.Stop();
- Close();
- }
- else
- {
- SetDesktopLocation(_startPosX, _startPosY);
- }
- }
-
- private void GoUpTimer_Tick(object sender, EventArgs e)
- {
- //Lift window by 5 pixels
- _startPosY -= 5;
- //If window is fully visible stop the timer
- if (_startPosY < Screen.PrimaryScreen.WorkingArea.Height - Height)
- {
- _goUpTimer.Stop();
- _pauseTimer.Start();
- }
- else
- {
- SetDesktopLocation(_startPosX, _startPosY);
- }
- }
-
- private void kllCallToAction_LinkClicked(object sender, EventArgs e) => NetSparkleToastNotifierWindow_Click(null, null);
-
- private void NetSparkleToastNotifierWindow_Click(object sender, EventArgs e)
- {
- DialogResult = DialogResult.Yes;
- ClickAction.Invoke(Updates);
- Close();
- }
-
- ///
- /// Show the toast
- ///
- /// Main message of the toast
- /// Text of the hyperlink
- /// How long to show before it goes back down
- public void Show(string message, string callToAction, int seconds)
- {
- kwlMessage.Text = message;
- kllCallToAction.Text = callToAction;
- _pauseTimer.Interval = 1000 * seconds;
- Show();
- }
-
- #endregion
-
- #region Protected
-
- protected override void OnLoad(EventArgs e)
- {
- _startPosX = Screen.PrimaryScreen.WorkingArea.Width - Width;
-
- _startPosY = Screen.PrimaryScreen.WorkingArea.Height;
-
- SetDesktopLocation(_startPosX, _startPosY);
-
- base.OnLoad(e);
-
- _goUpTimer.Start();
- }
-
- #endregion
- }
-}
diff --git a/Source/Krypton Toolkit/Krypton.Toolkit.Suite.Extended.Software.Updater/NetSparkle/UX/NetSparkleUpdateAvailableWindow.Designer.cs b/Source/Krypton Toolkit/Krypton.Toolkit.Suite.Extended.Software.Updater/NetSparkle/UX/NetSparkleUpdateAvailableWindow.Designer.cs
deleted file mode 100644
index 901585876..000000000
--- a/Source/Krypton Toolkit/Krypton.Toolkit.Suite.Extended.Software.Updater/NetSparkle/UX/NetSparkleUpdateAvailableWindow.Designer.cs
+++ /dev/null
@@ -1,231 +0,0 @@
-namespace Krypton.Toolkit.Suite.Extended.Software.Updater
-{
- partial class NetSparkleUpdateAvailableWindow
- {
- ///
- /// 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(NetSparkleUpdateAvailableWindow));
- this.kryptonPanel1 = new Krypton.Toolkit.KryptonPanel();
- this.kryptonTableLayoutPanel1 = new Krypton.Toolkit.KryptonTableLayoutPanel();
- this.pbxApplicationIcon = new System.Windows.Forms.PictureBox();
- this.kwlReleaseNotes = new Krypton.Toolkit.KryptonLabel();
- this.kwlHeader = new Krypton.Toolkit.KryptonLabel();
- this.kwbReleaseNotes = new Krypton.Toolkit.KryptonWebBrowser();
- this.kryptonTableLayoutPanel2 = new Krypton.Toolkit.KryptonTableLayoutPanel();
- this.kbtnSkipVersion = new Krypton.Toolkit.KryptonButton();
- this.kbtnRemindLater = new Krypton.Toolkit.KryptonButton();
- this.kbtnInstallUpdate = new Krypton.Toolkit.KryptonButton();
- this.kwlInformationText = new Krypton.Toolkit.KryptonLabel();
- ((System.ComponentModel.ISupportInitialize)(this.kryptonPanel1)).BeginInit();
- this.kryptonPanel1.SuspendLayout();
- this.kryptonTableLayoutPanel1.SuspendLayout();
- ((System.ComponentModel.ISupportInitialize)(this.pbxApplicationIcon)).BeginInit();
- this.kryptonTableLayoutPanel2.SuspendLayout();
- this.SuspendLayout();
- //
- // kryptonPanel1
- //
- this.kryptonPanel1.Controls.Add(this.kryptonTableLayoutPanel1);
- this.kryptonPanel1.Dock = System.Windows.Forms.DockStyle.Fill;
- this.kryptonPanel1.Location = new System.Drawing.Point(0, 0);
- this.kryptonPanel1.Name = "kryptonPanel1";
- this.kryptonPanel1.Size = new System.Drawing.Size(604, 556);
- this.kryptonPanel1.TabIndex = 1;
- //
- // kryptonTableLayoutPanel1
- //
- this.kryptonTableLayoutPanel1.BackgroundImage = ((System.Drawing.Image)(resources.GetObject("kryptonTableLayoutPanel1.BackgroundImage")));
- this.kryptonTableLayoutPanel1.BackgroundImageLayout = System.Windows.Forms.ImageLayout.None;
- this.kryptonTableLayoutPanel1.ColumnCount = 2;
- this.kryptonTableLayoutPanel1.ColumnStyles.Add(new System.Windows.Forms.ColumnStyle());
- this.kryptonTableLayoutPanel1.ColumnStyles.Add(new System.Windows.Forms.ColumnStyle(System.Windows.Forms.SizeType.Percent, 100F));
- this.kryptonTableLayoutPanel1.Controls.Add(this.pbxApplicationIcon, 0, 0);
- this.kryptonTableLayoutPanel1.Controls.Add(this.kwlReleaseNotes, 1, 2);
- this.kryptonTableLayoutPanel1.Controls.Add(this.kwlHeader, 1, 0);
- this.kryptonTableLayoutPanel1.Controls.Add(this.kwbReleaseNotes, 1, 3);
- this.kryptonTableLayoutPanel1.Controls.Add(this.kryptonTableLayoutPanel2, 1, 4);
- this.kryptonTableLayoutPanel1.Controls.Add(this.kwlInformationText, 1, 1);
- this.kryptonTableLayoutPanel1.Dock = System.Windows.Forms.DockStyle.Fill;
- this.kryptonTableLayoutPanel1.Location = new System.Drawing.Point(0, 0);
- this.kryptonTableLayoutPanel1.Name = "kryptonTableLayoutPanel1";
- this.kryptonTableLayoutPanel1.RowCount = 5;
- this.kryptonTableLayoutPanel1.RowStyles.Add(new System.Windows.Forms.RowStyle());
- this.kryptonTableLayoutPanel1.RowStyles.Add(new System.Windows.Forms.RowStyle());
- this.kryptonTableLayoutPanel1.RowStyles.Add(new System.Windows.Forms.RowStyle());
- this.kryptonTableLayoutPanel1.RowStyles.Add(new System.Windows.Forms.RowStyle(System.Windows.Forms.SizeType.Percent, 100F));
- this.kryptonTableLayoutPanel1.RowStyles.Add(new System.Windows.Forms.RowStyle(System.Windows.Forms.SizeType.Absolute, 40F));
- this.kryptonTableLayoutPanel1.Size = new System.Drawing.Size(604, 556);
- this.kryptonTableLayoutPanel1.TabIndex = 0;
- //
- // pbxApplicationIcon
- //
- this.pbxApplicationIcon.BackColor = System.Drawing.Color.Transparent;
- this.pbxApplicationIcon.Location = new System.Drawing.Point(3, 3);
- this.pbxApplicationIcon.Name = "pbxApplicationIcon";
- this.pbxApplicationIcon.Padding = new System.Windows.Forms.Padding(5, 5, 0, 0);
- this.pbxApplicationIcon.Size = new System.Drawing.Size(32, 32);
- this.pbxApplicationIcon.TabIndex = 0;
- this.pbxApplicationIcon.TabStop = false;
- //
- // kwlReleaseNotes
- //
- this.kwlReleaseNotes.AutoSize = false;
- this.kwlReleaseNotes.Dock = System.Windows.Forms.DockStyle.Fill;
- this.kwlReleaseNotes.LabelStyle = Krypton.Toolkit.LabelStyle.NormalPanel;
- this.kwlReleaseNotes.Location = new System.Drawing.Point(41, 72);
- this.kwlReleaseNotes.Name = "kwlReleaseNotes";
- this.kwlReleaseNotes.Size = new System.Drawing.Size(560, 20);
- this.kwlReleaseNotes.StateCommon.ShortText.Font = new System.Drawing.Font("Segoe UI", 12.75F, System.Drawing.FontStyle.Bold, System.Drawing.GraphicsUnit.Point, ((byte)(0)));
- this.kwlReleaseNotes.TabIndex = 3;
- this.kwlReleaseNotes.Values.Text = "kryptonLabel3";
- //
- // kwlHeader
- //
- this.kwlHeader.AutoSize = false;
- this.kwlHeader.Dock = System.Windows.Forms.DockStyle.Fill;
- this.kwlHeader.LabelStyle = Krypton.Toolkit.LabelStyle.NormalPanel;
- this.kwlHeader.Location = new System.Drawing.Point(41, 3);
- this.kwlHeader.Name = "kwlHeader";
- this.kwlHeader.Size = new System.Drawing.Size(560, 32);
- this.kwlHeader.StateCommon.ShortText.Font = new System.Drawing.Font("Segoe UI", 14.25F, System.Drawing.FontStyle.Bold, System.Drawing.GraphicsUnit.Point, ((byte)(0)));
- this.kwlHeader.TabIndex = 1;
- this.kwlHeader.Values.Text = "kryptonLabel1";
- //
- // kwbReleaseNotes
- //
- this.kwbReleaseNotes.Dock = System.Windows.Forms.DockStyle.Fill;
- this.kwbReleaseNotes.IsWebBrowserContextMenuEnabled = false;
- this.kwbReleaseNotes.Location = new System.Drawing.Point(41, 98);
- this.kwbReleaseNotes.Name = "kwbReleaseNotes";
- this.kwbReleaseNotes.Size = new System.Drawing.Size(560, 415);
- this.kwbReleaseNotes.TabIndex = 4;
- //
- // kryptonTableLayoutPanel2
- //
- this.kryptonTableLayoutPanel2.BackgroundImage = ((System.Drawing.Image)(resources.GetObject("kryptonTableLayoutPanel2.BackgroundImage")));
- this.kryptonTableLayoutPanel2.BackgroundImageLayout = System.Windows.Forms.ImageLayout.None;
- this.kryptonTableLayoutPanel2.ColumnCount = 3;
- this.kryptonTableLayoutPanel2.ColumnStyles.Add(new System.Windows.Forms.ColumnStyle());
- this.kryptonTableLayoutPanel2.ColumnStyles.Add(new System.Windows.Forms.ColumnStyle(System.Windows.Forms.SizeType.Percent, 100F));
- this.kryptonTableLayoutPanel2.ColumnStyles.Add(new System.Windows.Forms.ColumnStyle());
- this.kryptonTableLayoutPanel2.Controls.Add(this.kbtnSkipVersion, 0, 0);
- this.kryptonTableLayoutPanel2.Controls.Add(this.kbtnRemindLater, 1, 0);
- this.kryptonTableLayoutPanel2.Controls.Add(this.kbtnInstallUpdate, 2, 0);
- this.kryptonTableLayoutPanel2.Dock = System.Windows.Forms.DockStyle.Fill;
- this.kryptonTableLayoutPanel2.Location = new System.Drawing.Point(41, 519);
- this.kryptonTableLayoutPanel2.Name = "kryptonTableLayoutPanel2";
- this.kryptonTableLayoutPanel2.RowCount = 1;
- this.kryptonTableLayoutPanel2.RowStyles.Add(new System.Windows.Forms.RowStyle(System.Windows.Forms.SizeType.Percent, 100F));
- this.kryptonTableLayoutPanel2.Size = new System.Drawing.Size(560, 34);
- this.kryptonTableLayoutPanel2.TabIndex = 9;
- //
- // kbtnSkipVersion
- //
- this.kbtnSkipVersion.Dock = System.Windows.Forms.DockStyle.Left;
- this.kbtnSkipVersion.Location = new System.Drawing.Point(3, 3);
- this.kbtnSkipVersion.Name = "kbtnSkipVersion";
- this.kbtnSkipVersion.Size = new System.Drawing.Size(141, 28);
- this.kbtnSkipVersion.TabIndex = 0;
- this.kbtnSkipVersion.Values.Image = global::Krypton.Toolkit.Suite.Extended.Software.Updater.Properties.Resources.hand_point;
- this.kbtnSkipVersion.Values.Text = "&Skip this version";
- this.kbtnSkipVersion.Click += new System.EventHandler(this.kbtnSkipVersion_Click);
- //
- // kbtnRemindLater
- //
- this.kbtnRemindLater.Dock = System.Windows.Forms.DockStyle.Right;
- this.kbtnRemindLater.Location = new System.Drawing.Point(259, 3);
- this.kbtnRemindLater.Name = "kbtnRemindLater";
- this.kbtnRemindLater.Size = new System.Drawing.Size(146, 28);
- this.kbtnRemindLater.TabIndex = 1;
- this.kbtnRemindLater.Values.Image = global::Krypton.Toolkit.Suite.Extended.Software.Updater.Properties.Resources.clock_play;
- this.kbtnRemindLater.Values.Text = "R&emind me later";
- this.kbtnRemindLater.Click += new System.EventHandler(this.kbtnRemindLater_Click);
- //
- // kbtnInstallUpdate
- //
- this.kbtnInstallUpdate.Dock = System.Windows.Forms.DockStyle.Right;
- this.kbtnInstallUpdate.Location = new System.Drawing.Point(411, 3);
- this.kbtnInstallUpdate.Name = "kbtnInstallUpdate";
- this.kbtnInstallUpdate.Size = new System.Drawing.Size(146, 28);
- this.kbtnInstallUpdate.TabIndex = 2;
- this.kbtnInstallUpdate.Values.Image = global::Krypton.Toolkit.Suite.Extended.Software.Updater.Properties.Resources.download;
- this.kbtnInstallUpdate.Values.Text = "&Install update";
- this.kbtnInstallUpdate.Click += new System.EventHandler(this.kbtnInstallUpdate_Click);
- //
- // kwlInformationText
- //
- this.kwlInformationText.AutoSize = false;
- this.kwlInformationText.Dock = System.Windows.Forms.DockStyle.Fill;
- this.kwlInformationText.LabelStyle = Krypton.Toolkit.LabelStyle.NormalPanel;
- this.kwlInformationText.Location = new System.Drawing.Point(41, 41);
- this.kwlInformationText.Name = "kwlInformationText";
- this.kwlInformationText.Size = new System.Drawing.Size(560, 25);
- this.kwlInformationText.StateCommon.ShortText.Font = new System.Drawing.Font("Segoe UI", 11.25F, System.Drawing.FontStyle.Regular, System.Drawing.GraphicsUnit.Point, ((byte)(0)));
- this.kwlInformationText.TabIndex = 11;
- this.kwlInformationText.Values.Text = "kryptonLabel2";
- //
- // NetSparkleUpdateAvailableWindow
- //
- this.AutoScaleDimensions = new System.Drawing.SizeF(6F, 13F);
- this.AutoScaleMode = System.Windows.Forms.AutoScaleMode.Font;
- this.ClientSize = new System.Drawing.Size(604, 556);
- this.Controls.Add(this.kryptonPanel1);
- this.FormBorderStyle = System.Windows.Forms.FormBorderStyle.Fixed3D;
- this.Icon = ((System.Drawing.Icon)(resources.GetObject("$this.Icon")));
- this.MaximizeBox = false;
- this.MinimizeBox = false;
- this.Name = "NetSparkleUpdateAvailableWindow";
- this.ShowInTaskbar = false;
- this.SizeGripStyle = System.Windows.Forms.SizeGripStyle.Show;
- this.StartPosition = System.Windows.Forms.FormStartPosition.CenterScreen;
- this.Text = "Update Available";
- this.FormClosing += new System.Windows.Forms.FormClosingEventHandler(this.NetSparkleUpdateAvailableWindow_FormClosing);
- this.Controls.SetChildIndex(this.kryptonPanel1, 0);
- ((System.ComponentModel.ISupportInitialize)(this.kryptonPanel1)).EndInit();
- this.kryptonPanel1.ResumeLayout(false);
- this.kryptonTableLayoutPanel1.ResumeLayout(false);
- ((System.ComponentModel.ISupportInitialize)(this.pbxApplicationIcon)).EndInit();
- this.kryptonTableLayoutPanel2.ResumeLayout(false);
- this.ResumeLayout(false);
-
- }
-
- #endregion
-
- private KryptonPanel kryptonPanel1;
- private KryptonTableLayoutPanel kryptonTableLayoutPanel1;
- private PictureBox pbxApplicationIcon;
- private KryptonLabel kwlReleaseNotes;
- private KryptonLabel kwlHeader;
- private KryptonWebBrowser kwbReleaseNotes;
- private KryptonTableLayoutPanel kryptonTableLayoutPanel2;
- private KryptonButton kbtnSkipVersion;
- private KryptonButton kbtnRemindLater;
- private KryptonButton kbtnInstallUpdate;
- private KryptonLabel kwlInformationText;
- }
-}
\ No newline at end of file
diff --git a/Source/Krypton Toolkit/Krypton.Toolkit.Suite.Extended.Software.Updater/NetSparkle/UX/NetSparkleUpdateAvailableWindow.cs b/Source/Krypton Toolkit/Krypton.Toolkit.Suite.Extended.Software.Updater/NetSparkle/UX/NetSparkleUpdateAvailableWindow.cs
deleted file mode 100644
index 20af4730f..000000000
--- a/Source/Krypton Toolkit/Krypton.Toolkit.Suite.Extended.Software.Updater/NetSparkle/UX/NetSparkleUpdateAvailableWindow.cs
+++ /dev/null
@@ -1,325 +0,0 @@
-#region License
-
-/*
- * The MIT License
- *
- * Copyright (c) 2022 Deadpikle
- *
- * Permission is hereby granted, free of charge, to any person obtaining a copy
- * of this software and associated documentation files (the "Software"), to deal
- * in the Software without restriction, including without limitation the rights
- * to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
- * copies of the Software, and to permit persons to whom the Software is
- * furnished to do so, subject to the following conditions:
- *
- * The above copyright notice and this permission notice shall be included in
- * all copies or substantial portions of the Software.
- *
- * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
- * IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
- * FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
- * AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
- * LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
- * OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN
- * THE SOFTWARE.
- */
-
-#endregion
-
-using MethodInvoker = System.Windows.Forms.MethodInvoker;
-using Application = System.Windows.Forms.Application;
-using Size = System.Drawing.Size;
-// ReSharper disable InconsistentNaming
-
-namespace Krypton.Toolkit.Suite.Extended.Software.Updater
-{
- public partial class NetSparkleUpdateAvailableWindow : KryptonForm, IUpdateAvailable
- {
- #region Instance Fields
-
- private readonly SparkleUpdater _sparkle;
- private readonly List _updates;
- private System.Windows.Forms.Timer _ensureDialogShownTimer;
- private string _releaseNotesHTMLTemplate;
- private string _additionalReleaseNotesHeaderHTML;
- private string _releaseNotesDateFormat;
-
- ///
- /// Template for HTML code drawing release notes separator. {0} used for version number, {1} for publication date
- ///
- private CancellationToken _cancellationToken;
- private CancellationTokenSource _cancellationTokenSource;
-
- private bool _didSendResponse;
-
- #endregion
-
- #region Public
-
- ///
- /// Object responsible for downloading and formatting markdown release notes for display in HTML
- ///
- public ReleaseNotesGrabber? ReleaseNotesGrabber { get; set; }
-
- AppCastItem IUpdateAvailable.CurrentItem => CurrentItem;
-
- #endregion
-
- #region Identity
-
- public NetSparkleUpdateAvailableWindow(SparkleUpdater sparkle, List items, Icon? applicationIcon = null, bool isUpdateAlreadyDownloaded = false,
- string releaseNotesHTMLTemplate = "", string additionalReleaseNotesHeaderHTML = "", string releaseNotesDateFormat = "D")
- {
- InitializeComponent();
-
- _sparkle = sparkle;
- _updates = items;
- _releaseNotesHTMLTemplate = releaseNotesHTMLTemplate;
- _additionalReleaseNotesHeaderHTML = additionalReleaseNotesHeaderHTML;
- _releaseNotesDateFormat = releaseNotesDateFormat;
-
- kwbReleaseNotes.Text = @"Release Notes:";
-
- try
- {
- kwbReleaseNotes.AllowWebBrowserDrop = false;
-
- kwbReleaseNotes.AllowNavigation = false;
- }
- catch (Exception e)
- {
- _sparkle.LogWriter.PrintMessage($@"Error in browser init: {e.Message}");
- }
-
- AppCastItem? castItem = items.FirstOrDefault()!;
-
- var downloadInstallText = isUpdateAlreadyDownloaded ? @"install" : @"download";
-
- kwlHeader.Text = kwlHeader.Text.Replace("APP", castItem != null ? castItem.AppName : "the application");
-
- if (castItem != null)
- {
- string versionString = string.Empty;
-
- try
- {
- Version version = new(castItem.Version);
-
- versionString = Utilities.GetVersionString(version);
- }
- catch
- {
- versionString = @"?";
- }
-
- kwlInformationText.Text =
- $@"{castItem.AppName} {castItem.Version} is now available (you have {versionString}). Would you like to {downloadInstallText} it now?";
- }
- else
- {
- kwlInformationText.Text = $@"Would you like to {downloadInstallText} it now?";
- }
-
- bool isUserMissingCriticalUpdate = items.Any(x => x.IsCriticalUpdate);
-
- kbtnRemindLater.Enabled = isUserMissingCriticalUpdate == false;
-
- kbtnSkipVersion.Enabled = isUserMissingCriticalUpdate == false;
-
- if (applicationIcon != null)
- {
- pbxApplicationIcon.Image = new Icon(applicationIcon, new Size(48, 48)).ToBitmap();
-
- Icon = applicationIcon;
- }
-
- _cancellationTokenSource = new();
-
- _cancellationToken = _cancellationTokenSource.Token;
- }
-
- #endregion
-
- #region IUpdateAvailable Implementation
-
- public event UserRespondedToUpdate? UserResponded;
- public void Show(bool isOnMainThread)
- {
- Show();
-
- if (!isOnMainThread)
- {
- Application.Run(this);
- }
- }
-
- public void HideReleaseNotes() => RemoveReleaseNotesControls();
-
- public void HideRemindMeLaterButton() => kbtnRemindLater.Visible = false;
-
- public void HideSkipButton() => kbtnSkipVersion.Visible = false;
-
- void IUpdateAvailable.BringToFront() => BringToFront();
-
- void IUpdateAvailable.Close()
- {
- _cancellationTokenSource.Cancel();
-
- CloseForm();
- }
-
- public UpdateAvailableResult Result => UIFactory.ConvertDialogResultToUpdateAvailableResult(DialogResult);
-
- public AppCastItem? CurrentItem => _updates.Count > 0 ? _updates[0] : null;
-
- #endregion
-
- private void NetSparkleUpdateAvailableWindow_FormClosing(object sender, FormClosingEventArgs e)
- {
- if (!_didSendResponse)
- {
- // user closed form in some other way other than standard buttons
- DialogResult = DialogResult.None;
- _didSendResponse = true;
- UserResponded?.Invoke(this, new UpdateResponseEventArgs(UpdateAvailableResult.None, CurrentItem));
- }
- }
-
- private void kbtnSkipVersion_Click(object sender, EventArgs e)
- {
- DialogResult = DialogResult.No;
-
- SendResponse(UpdateAvailableResult.SkipUpdate);
- }
-
- private void kbtnRemindLater_Click(object sender, EventArgs e)
- {
- DialogResult = DialogResult.Retry;
-
- SendResponse(UpdateAvailableResult.RemindMeLater);
- }
-
- private void kbtnInstallUpdate_Click(object sender, EventArgs e)
- {
- DialogResult = DialogResult.Yes;
-
- SendResponse(UpdateAvailableResult.InstallUpdate);
- }
-
- #region Implementation
-
- ///
- /// Setup the ReleaseNotesGrabber (if needed) and load the release notes
- ///
- public void Initialize()
- {
- if (ReleaseNotesGrabber == null)
- {
- ReleaseNotesGrabber = new ReleaseNotesGrabber(_releaseNotesHTMLTemplate, _additionalReleaseNotesHeaderHTML, _sparkle)
- {
- DateFormat = _releaseNotesDateFormat
- };
- }
-
- kwbReleaseNotes.DocumentText = ReleaseNotesGrabber.GetLoadingText();
-
- EnsureDialogShown();
-
- LoadReleaseNotes(_updates);
- }
-
- private async void LoadReleaseNotes(List items)
- {
- AppCastItem? latestVersion = items.OrderByDescending(p => p.Version).FirstOrDefault();
-
- string releaseNotes = await ReleaseNotesGrabber?.DownloadAllReleaseNotes(items, latestVersion, _cancellationToken)!;
-
- kwbReleaseNotes.Invoke((MethodInvoker)delegate
- {
- // see https://stackoverflow.com/a/15209861/3938401
- kwbReleaseNotes.Navigate("about:blank");
-
- kwbReleaseNotes.Document.OpenNew(true);
-
- kwbReleaseNotes.Document.Write(releaseNotes);
-
- kwbReleaseNotes.DocumentText = releaseNotes;
- });
- }
-
- private void CloseForm()
- {
- if (InvokeRequired && !IsDisposed && !Disposing)
- {
- this.Invoke((MethodInvoker)delegate ()
- {
- if (!IsDisposed && !Disposing)
- {
- Close();
- }
- });
- }
- else if (!IsDisposed && !Disposing)
- {
- Close();
- }
- }
-
- ///
- /// Removes the release notes control
- ///
- public void RemoveReleaseNotesControls()
- {
- if (kwlReleaseNotes.Parent == null)
- {
- return;
- }
-
- // calc new size
- Size newSize = new Size(Size.Width, Size.Height - kwlReleaseNotes.Height - kwbReleaseNotes.Height);
-
- // remove the no more needed controls
- kwlReleaseNotes.Parent.Controls.Remove(kwlReleaseNotes);
- kwbReleaseNotes.Parent.Controls.Remove(kwbReleaseNotes);
-
- // resize the window
- /*this.MinimumSize = newSize;
- this.Size = this.MinimumSize;
- this.MaximumSize = this.MinimumSize;*/
- Size = newSize;
- }
-
- void SendResponse(UpdateAvailableResult response)
- {
- _cancellationTokenSource?.Cancel();
- _didSendResponse = true;
- UserResponded?.Invoke(this, new UpdateResponseEventArgs(response, CurrentItem));
- }
-
- ///
- /// This was the only way Deadpikle could guarantee that the
- /// update available window was shown above a main WPF MahApps window.
- /// It's an ugly hack but...oh well. :\
- ///
- public void EnsureDialogShown()
- {
- _ensureDialogShownTimer = new System.Windows.Forms.Timer();
- _ensureDialogShownTimer.Tick += EnsureDialogeShown_tick;
- _ensureDialogShownTimer.Interval = 250; // in milliseconds
- _ensureDialogShownTimer.Start();
- }
-
- private void EnsureDialogeShown_tick(object sender, EventArgs e)
- {
- // http://stackoverflow.com/a/4831839/3938401 for activating/bringing to front code
- Activate();
- TopMost = true; // important
- TopMost = false; // important
- Focus(); // important
- _ensureDialogShownTimer.Enabled = false;
- _ensureDialogShownTimer = null;
- }
-
- #endregion
- }
-}
diff --git a/Source/Krypton Toolkit/Krypton.Toolkit.Suite.Extended.Software.Updater/NetSparkle/UX/NetSparkleUpdateAvailableWindow.resx b/Source/Krypton Toolkit/Krypton.Toolkit.Suite.Extended.Software.Updater/NetSparkle/UX/NetSparkleUpdateAvailableWindow.resx
deleted file mode 100644
index d3c3376d8..000000000
--- a/Source/Krypton Toolkit/Krypton.Toolkit.Suite.Extended.Software.Updater/NetSparkle/UX/NetSparkleUpdateAvailableWindow.resx
+++ /dev/null
@@ -1,373 +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
-
-
-
-
- iVBORw0KGgoAAAANSUhEUgAAAlwAAAIsCAYAAAAnPndxAAAABGdBTUEAALGPC/xhBQAAAAlwSFlzAAAO
- wgAADsIBFShKgAAAC91JREFUeF7t2MFpBFEMREGnOzE6B4fhNNZYsAaDjt061aEY/iiB5n18fn2/nuf5
- 4+3t7e3t7e3tnX1/vH8CANBhcAEAFClcAABlM7i2AwAAGQoXAMABgwsAoEjhAgAom8G1HQAAyFC4AAAO
- GFwAAEUKFwBA2Qyu7QAAQIbCBQBwwOACAChSuAAAymZwbQcAADIULgCAAwYXAECRwgUAUDaDazsAAJCh
- cAEAHDC4AACKFC4AgLIZXNsBAIAMhQsA4IDBBQBQpHABAJTN4NoOAABkKFwAAAcMLgCAIoULAKBsBtd2
- AAAgQ+ECADhgcAEAFClcAABlM7i2AwAAGQoXAMABgwsAoEjhAgAom8G1HQAAyFC4AAAOGFwAAEUKFwBA
- 2Qyu7QAAQIbCBQBwwOACAChSuAAAymZwbQcAADIULgCAAwYXAECRwgUAUDaDazsAAJChcAEAHDC4AACK
- FC4AgLIZXNsBAIAMhQsA4IDBBQBQpHABAJTN4NoOAABkKFwAAAcMLgCAIoULAKBsBtd2AAAgQ+ECADhg
- cAEAFClcAABlM7i2AwAAGQoXAMABgwsAoEjhAgAom8G1HQAAyFC4AAAOGFwAAEUKFwBA2Qyu7QAAQIbC
- BQBwwOACAChSuAAAymZwbQcAADIULgCAAwYXAECRwgUAUDaDazsAAJChcAEAHDC4AACKFC4AgLIZXNsB
- AIAMhQsA4IDBBQBQpHABAJTN4NoOAABkKFwAAAcMLgCAIoULAKBsBtd2AAAgQ+ECADhgcAEAFClcAABl
- M7i2AwAAGQoXAMABgwsAoEjhAgAom8G1HQAAyFC4AAAOGFwAAEUKFwBA2Qyu7QAAQIbCBQBwwOACAChS
- uAAAymZwbQcAADIULgCAAwYXAECRwgUAUDaDazsAAJChcAEAHDC4AACKFC4AgLIZXNsBAIAMhQsA4IDB
- BQBQpHABAJTN4NoOAABkKFwAAAcMLgCAIoULAKBsBtd2AAAgQ+ECADhgcAEAFClcAABlM7i2AwAAGQoX
- AMABgwsAoEjhAgAom8G1HQAAyFC4AAAOGFwAAEUKFwBA2Qyu7QAAQIbCBQBwwOACAChSuAAAymZwbQcA
- ADIULgCAAwYXAECRwgUAUDaDazsAAJChcAEAHDC4AACKFC4AgLIZXNsBAIAMhQsA4IDBBQBQpHABAJTN
- 4NoOAABkKFwAAAcMLgCAIoULAKBsBtd2AAAgQ+ECADhgcAEAFClcAABlM7i2AwAAGQoXAMABgwsAoEjh
- AgAom8G1HQAAyFC4AAAOGFwAAEUKFwBA2Qyu7QAAQIbCBQBwwOACAChSuAAAymZwbQcAADIULgCAAwYX
- AECRwgUAUDaDazsAAJChcAEAHDC4AACKFC4AgLIZXNsBAIAMhQsA4IDBBQBQpHABAJTN4NoOAABkKFwA
- AAcMLgCAIoULAKBsBtd2AAAgQ+ECADhgcAEAFClcAABlM7i2AwAAGQoXAMABgwsAoEjhAgAom8G1HQAA
- yFC4AAAOGFwAAEUKFwBA2Qyu7QAAQIbCBQBwwOACAChSuAAAymZwbQcAADIULgCAAwYXAECRwgUAUDaD
- azsAAJChcAEAHDC4AACKFC4AgLIZXNsBAIAMhQsA4IDBBQBQpHABAJTN4NoOAABkKFwAAAcMLgCAIoUL
- AKBsBtd2AAAgQ+ECADhgcAEAFClcAABlM7i2AwAAGQoXAMABgwsAoEjhAgAom8G1HQAAyFC4AAAOGFwA
- AEUKFwBA2Qyu7QAAQIbCBQBwwOACAChSuAAAymZwbQcAADIULgCAAwYXAECRwgUAUDaDazsAAJChcAEA
- HDC4AACKFC4AgLIZXNsBAIAMhQsA4IDBBQBQpHABAJTN4NoOAABkKFwAAAcMLgCAIoULAKBsBtd2AAAg
- Q+ECADhgcAEAFClcAABlM7i2AwAAGQoXAMABgwsAoEjhAgAom8G1HQAAyFC4AAAOGFwAAEUKFwBA2Qyu
- 7QAAQIbCBQBwwOACAChSuAAAymZwbQcAADIULgCAAwYXAECRwgUAUDaDazsAAJChcAEAHDC4AACKFC4A
- gLIZXNsBAIAMhQsA4IDBBQBQpHABAJTN4NoOAABkKFwAAAcMLgCAIoULAKBsBtd2AAAgQ+ECADhgcAEA
- FClcAABlM7i2AwAAGQoXAMABgwsAoEjhAgAom8G1HQAAyFC4AAAOGFwAAEUKFwBA2Qyu7QAAQIbCBQBw
- wOACAChSuAAAymZwbQcAADIULgCAAwYXAECRwgUAUDaDazsAAJChcAEAHDC4AACKFC4AgLIZXNsBAIAM
- hQsA4IDBBQBQpHABAJTN4NoOAABkKFwAAAcMLgCAIoULAKBsBtd2AAAgQ+ECADhgcAEAFClcAABlM7i2
- AwAAGQoXAMABgwsAoEjhAgAom8G1HQAAyFC4AAAOGFwAAEUKFwBA2Qyu7QAAQIbCBQBwwOACAChSuAAA
- ymZwbQcAADIULgCAAwYXAECRwgUAUDaDazsAAJChcAEAHDC4AACKFC4AgLIZXNsBAIAMhQsA4IDBBQBQ
- pHABAJTN4NoOAABkKFwAAAcMLgCAIoULAKBsBtd2AAAgQ+ECADhgcAEAFClcAABlM7i2AwAAGQoXAMAB
- gwsAoEjhAgAom8G1HQAAyFC4AAAOGFwAAEUKFwBA2Qyu7QAAQIbCBQBwwOACAChSuAAAymZwbQcAADIU
- LgCAAwYXAECRwgUAUDaDazsAAJChcAEAHDC4AACKFC4AgLIZXNsBAIAMhQsA4IDBBQBQpHABAJTN4NoO
- AABkKFwAAAcMLgCAIoULAKBsBtd2AAAgQ+ECADhgcAEAFClcAABlM7i2AwAAGQoXAMABgwsAoEjhAgAo
- m8G1HQAAyFC4AAAOGFwAAEUKFwBA2Qyu7QAAQIbCBQBwwOACAChSuAAAymZwbQcAADIULgCAAwYXAECR
- wgUAUDaDazsAAJChcAEAHDC4AACKFC4AgLIZXNsBAIAMhQsA4IDBBQBQpHABAJTN4NoOAABkKFwAAAcM
- LgCAIoULAKBsBtd2AAAgQ+ECADhgcAEAFClcAABlM7i2AwAAGQoXAMABgwsAoEjhAgAom8G1HQAAyFC4
- AAAOGFwAAEUKFwBA2Qyu7QAAQIbCBQBwwOACAChSuAAAymZwbQcAADIULgCAAwYXAECRwgUAUDaDazsA
- AJChcAEAHDC4AACKFC4AgLIZXNsBAIAMhQsA4IDBBQBQpHABAJTN4NoOAABkKFwAAAcMLgCAIoULAKBs
- Btd2AAAgQ+ECADhgcAEAFClcAABlM7i2AwAAGQoXAMABgwsAoEjhAgAom8G1HQAAyFC4AAAOGFwAAEUK
- FwBA2Qyu7QAAQIbCBQBwwOACAChSuAAAymZwbQcAADIULgCAAwYXAECRwgUAUDaDazsAAJChcAEAHDC4
- AACKFC4AgLIZXNsBAIAMhQsA4IDBBQBQpHABAJTN4NoOAABkKFwAAAcMLgCAIoULAKBsBtd2AAAgQ+EC
- ADhgcAEAFClcAABlM7i2AwAAGQoXAMABgwsAoEjhAgAom8G1HQAAyFC4AAAOGFwAAEUKFwBA2Qyu7QAA
- QIbCBQBwwOACAChSuAAAymZwbQcAADIULgCAAwYXAECRwgUAUDaDazsAAJChcAEAHDC4AACKFC4AgLIZ
- XNsBAIAMhQsA4IDBBQBQpHABAJTN4NoOAABkKFwAAAcMLgCAIoULAKBsBtd2AAAgQ+ECADhgcAEAFClc
- AABlM7i2AwAAGQoXAMABgwsAoEjhAgAom8G1HQAAyFC4AAAOGFwAAEUKFwBA2Qyu7QAAQIbCBQBwwOAC
- AChSuAAAymZwbQcAADIULgCAAwYXAECRwgUAUDaDazsAAJChcAEAHDC4AACKFC4AgLIZXNsBAIAMhQsA
- 4IDBBQBQpHABAJTN4NoOAABkKFwAAAcMLgCAIoULAKBsBtd2AAAgQ+ECADhgcAEAFClcAABlM7i2AwAA
- GQoXAMABgwsAoEjhAgAom8G1HQAAyFC4AAAOGFwAAEX/Ctfv983b29vb29vb2zv1fl4/cmL4sj4DhmoA
- AAAASUVORK5CYII=
-
-
-
-
- iVBORw0KGgoAAAANSUhEUgAAAjAAAAAiCAYAAABBcOPWAAAABGdBTUEAALGPC/xhBQAAAAlwSFlzAAAO
- wgAADsIBFShKgAAAANtJREFUeF7t2rENg0AQRFGav6rowWVcGyAh2Rmx90sveMEQXThi5zg/+1pr/ciy
- LMuyLE/Px/fjNFPfBQD8nwIDAOSMLTAAAG+eDcxEihUA8MYJCQDIUWAAgBwbGAAgxwYGAMhxQgIAchQY
- ACDHBgYAyLGBAQBynJAAgBwFBgDIsYEBAHJsYACAHCckACBHgQEAcmxgAIAcGxgAIMcJCQDIUWAAgBwb
- GAAgxwYGAMhxQgIAchQYACDHBgYAyLGBAQBynJAAgBwFBgDIsYEBAHL8gQEAchQYACBmXzfsJ4f0JV+Y
- PAAAAABJRU5ErkJggg==
-
-
-
-
- AAABAAIAEBAAAAAAIABoBAAAJgAAADAwAAAAACAAqCUAAI4EAAAoAAAAEAAAACAAAAABACAAAAAAAAAE
- AADXDQAA1w0AAAAAAAAAAAAA////AP///wD///8A////AP///wD///8A////AABczlIAXM5i////AP//
- /wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AABczg8BXs/tAV3P9ABc
- zhf///8A////AP///wD///8A////AP///wD///8A////AABczmIAXM5rAFzOMwBczgUAXc+fDW3a9xBx
- 3fkBXtCwAFzOAwBczjAAXM5nAFzOb////wD///8A////AP///wAAXM50A1/Q/Adi0PoBXs/6A1/Q+h+I
- 8v8givP/BWHR+QFez/kGYdD7BGHR/ABczoz///8A////AP///wD///8AAFzOPAVh0fcji/b/I4fw/yCF
- 7v8Xhfb/E4P2/yGF7/8ih/D/I4v2/whl1PMAXM5Q////AP///wD///8A////AABczgkAXM78K43y/xWG
- 9v8Thfb/a7T6/2q0+v8Thfb/EoT1/y+S9f8BXc7+AFzOFv///wD///8A////AABczhUAXc+nB2LQ+jST
- 8f8fjff/bbf7/83q///N6v//bbf7/xmK9v83lvT/CmTS+QFe0LMAXM4a////AABczmMCXs/zIHrf+EWf
- 9v80mvj/crr7/83q///N6v//zer//83q//9xuvv/MZj4/0ah9v8lf+H6Al7P9gBczm8AXM5jAV3P8yJ7
- 3/hOpvf/QaL5/x+S+P8bkPj/zer//83q//8bkPj/HZH4/z2h+f9QqPf/JoDi+gJez/YAXM5v////AABc
- zhUBXs+nCGPR+lKm9P85ofn/IZb4/83q///N6v//IZb4/zKe+f9Xq/X/C2XT+QJf0LMAXM4a////AP//
- /wD///8AAFzOCQBdzvxisvb/Qaj6/0Cn+v+/5P7/v+T+/0Cn+v8+pvr/aLj5/wNez/4AXM4W////AP//
- /wD///8A////AABczjwQaNP3dcH8/2y49v9ms/T/Xrf7/1e0+/9otPX/a7f2/3TB+/8cc9j0AFzOUP//
- /wD///8A////AP///wAAXM50CmPR/BJp0/oCXs/6CmTR+nG9+f90wPr/EGjS+QFdz/kPZ9L7DWbS/ABc
- zoz///8A////AP///wD///8AAFzOYgBczmsAXM4zAFzOBQJfz54xhd/4PI7j+QJf0LAAXM4DAFzOMABc
- zmcAXM5v////AP///wD///8A////AP///wD///8A////AP///wAAXM4PAl/P7QRfz/QAXM4X////AP//
- /wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AABczlAAXM5g////AP//
- /wD///8A////AP///wD///8A////AP5/AAD8PwAAwAMAAMADAADAAwAAwAMAAIABAAAAAAAAAAAAAIAB
- AADAAwAAwAMAAMADAADAAwAA/D8AAP5/AAAoAAAAMAAAAGAAAAABACAAAAAAAAAkAAASCwAAEgsAAAAA
- AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAQAA
- AAEAAAACAAAAAwAAAAMAAAAEAAAABQAAAAYAAAAHAAAABwAAAAcAAAAIAAAACAAAAAkAAAAJAAAACAAA
- AAgAAAAHAAAABwAAAAcAAAAGAAAABQAAAAQAAAADAAAAAwAAAAIAAAABAAAAAQAAAAAAAAAAAAAAAAAA
- AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
- AAEAAAABAAAAAgAAAAMAAAAEAAAABQAAAAYAAAAHAAAACQAAAAoAAAALAAAADAAAAA0AAAANAAAADgAA
- AA4AAAAOAAAADgAAAA0AAAANAAAADAAAAAsAAAAKAAAACQAAAAcAAAAGAAAABQAAAAQAAAADAAAAAgAA
- AAEAAAABAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
- AAAAAAAAAAAAAQAAAAIAAAADAAAAAwAAAAUAAAAHAAAACAAAAAoAAAAMAAAADQAAAA8AAAARAAAAEgAA
- ABQAAAAVAEacRQBOr2IAAAAWAAAAFQAAABUAAAAUAAAAEgAAABEAAAAPAAAADQAAAAwAAAAKAAAACAAA
- AAcAAAAFAAAAAwAAAAMAAAACAAAAAQAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
- 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
- 9v8Hf/b/B3/2/wd/9v8Hf/b/B3/2/wd/9v8Xh/f/JIz1/yCM9/8ZiPf/EIT2/wiA9v8Hf/b/B3/2/xOF
- 9v8ni/H/AFzO/AAiTBYAAAAKAAAABwAAAAQAAAACAAAAAQAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
- AAAAAAAAAAAAAQAAAAIAAAADAAAABQBczK4WeOL/IIv2/wR99f8EffX/BH31/wR99f8EffX/BH31/wR9
- 9f8EffX/BH31/wR99f8EffX/BH31/wR99f8EffX/BH31/wR99f8EffX/BH31/wR99f8EffX/BH31/wR9
- 9f8EffX/BH31/xmI9/8df+n/AF3O1gAAAAsAAAAIAAAABQAAAAMAAAACAAAAAQAAAAAAAAAAAAAAAAAA
- AAAAAAAAAAAAAAAAAAAAAAAAAAAAAQAAAAEAAAACAAAABABZyG8Ladj1KI/2/wJ79f8Ce/X/Anv1/wJ7
- 9f8Ce/X/Anv1/wJ79f8Ce/X/Anv1/wJ79f8Ce/X/Anv1/wJ79f8Ce/X/Anv1/wJ79f8Ce/X/Anv1/wJ7
- 9f8Ce/X/Anv1/wJ79f8Ce/X/Anv1/yGL9v8Uc9/8AFnHlwAAAAkAAAAGAAAABAAAAAIAAAABAAAAAQAA
- AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAEAAAACAAAAAwBWwjUCXs/8LZD2/wd9
- 9f8BevX/AXn1/wB59f8AefX/AHn1/wB59f8AefX/AHn1/wB59f8AefX/AHn1/xSF9v8AefX/AHn1/wB5
- 9f8AefX/AHn1/wB59f8BefX/AXn1/wF69f8BevX/Anv1/yuQ9/8KZtX1AFfCXAAAAAYAAAAEAAAAAwAA
- AAIAAAABAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAABAAAAAgA1
- dwcAXM/4KIrw/xSE9v8De/X/A3v1/wJ79f8Ce/X/Anv1/wJ79f8Ce/X/Anv1/wJ79f8Ce/X/RaT6/43P
- /v9NqPn/A3z1/wJ79f8Ce/X/Anv1/wJ79f8Ce/X/A3v1/wN79f8De/X/C3/1/y+R9P8CXc7/AE6vIwAA
- AAQAAAADAAAAAgAAAAEAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
- AAAAAAAAAAAAAQAAAAEAXc/IIH/o/yCL9/8Fffb/BX32/wV99v8Fffb/BX32/wV99v8Fffb/BX32/wuA
- 9v9gtPv/jtD+/47Q/v+O0P7/YLT7/wmA9v8Fffb/BX32/wV99v8Fffb/BX32/wV99v8Fffb/GYf3/ymJ
- 7v8AXc/tAAAAAwAAAAIAAAABAAAAAQAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
- AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAEAXM2XGHTe+iyS9/8Hf/b/B3/2/wd/9v8Hf/b/B3/2/wd/
- 9v8Hf/b/F4j3/3TA/P+O0P7/jtD+/47Q/v+O0P7/jtD+/2+9/P8Rhff/B3/2/wd/9v8Hf/b/B3/2/wd/
- 9v8Hf/b/I473/yJ/5v8AXc7EAAAAAgAAAAEAAAABAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
- AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAFzOFABdz6YHYdD8Lojo/iKO9/8Jgfb/CYH2/wmB
- 9v8Jgfb/CYH2/wmB9v8plPj/g8n9/47Q/v+O0P7/jtD+/47Q/v+O0P7/jtD+/47Q/v96xf3/HIz3/wmB
- 9v8Jgfb/CYH2/wmB9v8Jgfb/GIn3/zWP7f8LZdL6AF3PwQBcziIAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
- AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAXM5fAV7P8hx02/k7l/P/LJT3/w+E
- 9v8Mg/b/DIP2/wyD9v8Mg/b/DIP2/0Ci+v+Lz/7/jtD+/47Q/v+O0P7/jtD+/47Q/v+O0P7/jtD+/47Q
- /v+O0P7/hMr9/ymU+P8Mg/b/DIP2/wyD9v8Mg/b/DYP2/yeR9/89mfX/I3zf+wNf0PoAXM54AFzOBAAA
- AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAFzOJQFe0MUMZdL5NI3r/zyc
- +f8djfj/DoX3/w6F9/8Ohff/DoX3/w6F9/8Qhvf/WbH7/47Q/v+O0P7/jtD+/47Q/v+O0P7/jtD+/47Q
- /v+O0P7/jtD+/47Q/v+O0P7/jtD+/4rN/v85nvr/DoX3/w6F9/8Ohff/DoX3/w6F9/8Xivf/OJr4/zqT
- 7/8TbNX4AV7Q2ABczjYAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAABczgUAXc9+Al7P+yZ+
- 4PxEnvb/Lpb4/xKI9/8Qh/f/EIf3/xCH9/8Qh/f/EIf3/xiM+P9qvPz/is7+/4rO/v+Lz/7/jtD+/47Q
- /v+O0P7/jtD+/47Q/v+O0P7/jtD+/47Q/v+O0P7/i8/+/4rO/v+Kzv7/Rqf6/xCH9/8Qh/f/EIf3/xCH
- 9/8Qh/f/EIf3/yeT+P9Dn/f/LYXl/QZgz/0AXc+VAFzODQAAAAAAAAAAAAAAAAAAAAAAAAAAAFzOOwFe
- 0N0TbNb4Ppjw/z+f+f8dj/f/Eon3/xKJ9/8Siff/Eon3/xKJ9/8Siff/Eon3/xKJ9/8Siff/Eon3/xKJ
- 9/89ovr/jtD+/47Q/v+O0P7/jtD+/47Q/v+O0P7/jtD+/47Q/v+O0P7/OZ/6/xKJ9/8Siff/Eon3/xKJ
- 9/8Siff/Eon3/xKJ9/8Siff/Eon3/xKJ9/8ZjPf/OJz4/0Oc8/8cdNn5AV3P6wBczk4AAAAAAAAAAAAA
- AAAAXM4QAFzOzQNez/44k+7/Taf5/y2X+P8Vi/f/FYv3/xWL9/8Vi/f/FYv3/xWL9/8Vi/f/FYv3/xWL
- 9/8Vi/f/FYv3/xWL9/8/o/r/jtD+/47Q/v+O0P7/jtD+/47Q/v+O0P7/jtD+/47Q/v+O0P7/O6D6/xWL
- 9/8Vi/f/FYv3/xWL9/8Vi/f/FYv3/xWL9/8Vi/f/FYv3/xWL9/8Vi/f/JJL4/0ml+f9AmfH/CmTS/QBd
- z98AXM4iAAAAAAAAAAAAAAAAAFzOAwBcznIAXc/4Hnnf+kqk9/9Dovn/H5H4/xeN+P8Xjfj/F434/xeN
- +P8Xjfj/F434/xeN+P8Xjfj/F434/xeN+P9ApPr/jtD+/47Q/v+O0P7/jtD+/47Q/v+O0P7/jtD+/47Q
- /v+O0P7/PaL6/xeN+P8Xjfj/F434/xeN+P8Xjfj/F434/xeN+P8Xjfj/F434/xyP+P86nvn/Tqf4/yiD
- 5PsBXs/7AF3PiABczgkAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAXM4eAV7PuAZh0fk2j+v/Uqv6/zWd
- +f8aj/j/GY/4/xmP+P8Zj/j/GY/4/xmP+P8Zj/j/GY/4/xmP+P9Bpvr/jtD+/47Q/v+O0P7/jtD+/47Q
- /v+O0P7/jtD+/47Q/v+O0P7/PqP6/xmP+P8Zj/j/GY/4/xmP+P8Zj/j/GY/4/xmP+P8Zj/j/Lpn5/06p
- +v9AmO//DGbT+AFe0M4AXM4sAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAABc
- zlIBXs/rGXPa+E2k9P9Nqfr/KJf4/xyR+P8ckfj/HJH4/xyR+P8ckfj/HJH4/xyR+P9Dp/r/jtD+/47Q
- /v+O0P7/jtD+/47Q/v+O0P7/jtD+/47Q/v+O0P7/QKX6/xyR+P8ckfj/HJH4/xyR+P8ckfj/HJH4/yOU
- +P9Hpvn/Uqj2/yN83voBXc/1AFzOaQBczgEAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
- AAAAAAAAAAAAAAAAAAAAXM4NAV3PlgNf0Pwyi+b9WK75/zGc+f8ek/j/HpP4/x6T+P8ek/j/HpP4/x6T
- +P9Ep/r/jtD+/47Q/v+O0P7/jtD+/47Q/v+O0P7/jtD+/47Q/v+O0P7/QKb6/x6T+P8ek/j/HpP4/x6T
- +P8ek/j/J5f4/1iu+v89k+v/CGLQ+wFe0LAAXM4ZAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
- AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAABczjUBXtDcLoLg+0yq+v8glfn/IJX5/yCV
- +f8glfn/IJX5/yCV+f8sm/r/i87+/47Q/v+O0P7/jtD+/47Q/v+O0P7/jtD+/47Q/v+Jzf7/KZn5/yCV
- +f8glfn/IJX5/yCV+f8glfn/QKT6/z+R5/8BXs/tAFzOSwAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
- AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAABXc+hMYnl/U6s
- +v8il/n/Ipf5/yKX+f8il/n/Ipf5/yKX+f8il/n/K5z5/z2l+/89pfv/PaX7/z2l+/89pfv/PaX7/z2l
- +v8pm/n/Ipf5/yKX+f8il/n/Ipf5/yKX+f8il/n/Qqb6/0KX7P8CX9DPAAAAAAAAAAAAAAAAAAAAAAAA
- AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
- AAACX9DhSZ7u/0Sn+v8lmfn/JZn5/yWZ+f8lmfn/JZn5/yWZ+f8lmfn/JZn5/yWZ+f8lmfn/JZn5/yWZ
- +f8lmfn/JZn5/yWZ+f8lmfn/JZn5/yWZ+f8lmfn/JZn5/yWZ+f8lmfn/OKL6/1qr9P8AXc77AFzOBgAA
- AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
- AAAAAAAAAAAAAABczhIAXM7+YLH3/zij+f8nm/n/J5v5/yeb+f8nm/n/J5v5/yeb+f8nm/n/J5v5/yeb
- +f8nm/n/J5v5/yeb+f8nm/n/J5v5/yeb+f8nm/n/J5v5/yeb+f8nm/n/J5v5/yeb+f8nm/n/K535/2e4
- +v8LZNH7AFzONwAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
- AAAAAAAAAAAAAAAAAAAAAAAAAAAAAABczksQadP4arv8/yyf+v8pnfr/KZ36/ymd+v8pnfr/KZ36/ymd
- +v8pnfr/KZ36/ymd+v8pnfr/KZ36/ymd+v8pnfr/KZ36/ymd+v8pnfr/KZ36/ymd+v8pnfr/KZ36/ymd
- +v8pnfr/KZ36/2C2+/8le9z3AFzOcAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
- AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAABczoUsg+D6Yrf7/yyf+v8sn/r/LJ/6/yyf
- +v8sn/r/LJ/6/yyf+v8sn/r/LJ/6/yyf+v8sn/r/LJ/6/yyf+v8sn/r/LJ/6/yyf+v8sn/r/LJ/6/yyf
- +v8sn/r/LJ/6/yyf+v8sn/r/LJ/6/1Wy+/8+k+f/Al7QrwAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
- AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAJf0MlGm+v/VrP7/y6h
- +v8uofr/LqH6/y6h+v8wovr/Paj6/0es+/80pPr/LqH6/y6h+v8uofr/LqH6/y6h+v8uofr/LqH6/y6h
- +v8wovr/Rav7/z+p+v8xovr/LqH6/y6h+v8uofr/LqH6/0mt+/9ZqfH/Al7Q6gAAAAAAAAAAAAAAAAAA
- AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAFzOBAFd
- z/lhsfT/Sa77/zam+v9Grfv/VbT7/2W6+/9xv/r/arT0/1ul7P9vu/j/Q6z6/zCj+v8wo/r/MKP6/zCj
- +v8wo/r/MKP6/zmn+v9vvfr/XKXs/2ay8/9xvvr/aLz7/1m1+/9Kr/v/O6j6/z2p+v9wvfn/A17P/wBc
- zhsAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
- AAAAAAAAAFzOMwZg0Px2wvz/csH8/3K9+P9irvH/SJfn/S1+2/YSaNH+A1/P8wFez+M1iOH6br/8/zWm
- +/8ypfv/MqX7/zKl+/8ypfv/MqX7/2W7/P9JmOj9Al/P6wJez+4OZdH/J3ra9kWU5vxeqvD/crv4/3TC
- /P93w/z/GXDW9wBczlUAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
- AAAAAAAAAAAAAAAAAAAAAAAAAFzObRBo0/w9jOL4H3LW+Qhh0P0DYNDaAV3PmgBczl8AXM4nAFzOAQBc
- zhgCX8/1X63x/1q3/P81p/v/Naf7/zWn+/81p/v/TrL7/2249f8IYdD8AFzOMwAAAAAAXM4eAFzOVwBd
- zpEDYNDTB2HP+xtv1fo4ieD3HnTX/QBdzo8AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
- AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAFzOkwJf0LoAXM56AFzOQQBczgwAAAAAAAAAAAAA
- AAAAAAAAAAAAAAAAAAAAXM5jFmzU+HfC+v9Er/v/N6n7/zep+/88q/v/dML8/yl82/gBXc+NAAAAAAAA
- AAAAAAAAAAAAAAAAAAAAAAAAAFzOBwBczjoAXM5yAl/QsgBdzrEAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
- AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
- AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAl/QxkOV5vxvwvz/Oqv7/zmr+/9jvfz/WKTs/gJf
- z+QAXM4KAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
- AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
- AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAFzOJAVg0PltuPX/Wbn8/020
- /P92wPj/DmbR+wBczkQAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
- AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
- AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAFd
- zngjeNn4e8f8/3fH/f84iOD4Al7PowAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
- AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
- AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
- AAAAAAAAAAAAAABczgQCX9DXUqHr/WSv8f8EX8/vAFzOEgAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
- AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
- AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
- AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAXM4zCmTR+xZr1PkAXM5XAAAAAAAAAAAAAAAAAAAAAAAA
- AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
- AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
- AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAV7PjwJfz7kAAAAAAAAAAAAA
- AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
- AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
- AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
- AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
- AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
- AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
- AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
- AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA//AAAAD/AAD/wAAAAD8AAP+A
- AAAAHwAA/wAAAAAPAAD+AAAAAAcAAPwAAAAAAwAA/AAAAAADAAD8AAAAAAMAAPgAAAAAAQAA+AAAAAAB
- AAD4AAAAAAEAAPgAAAAAAQAA/AAAAAADAAD8AAAAAAMAAPwAAAAAAwAA/gAAAAAHAAD/AAAAAA8AAP+A
- AAAAHwAA/8AAAAA/AAD/gAAAAH8AAP8AAAAAHwAA/AAAAAAPAADwAAAAAAMAAOAAAAAAAQAAwAAAAAAA
- AADgAAAAAAEAAPgAAAAABwAA/gAAAAAPAAD/AAAAAD8AAP/AAAAA/wAA/+AAAAH/AAD/4AAAAP8AAP/A
- AAAA/wAA/8AAAAD/AAD/wAAAAP8AAP/AAAAA/wAA/4AAAAB/AAD/gAAAAH8AAP+AAAEAfwAA/4PwA/B/
- AAD///gD//8AAP//+Af//wAA///8D///AAD///wP//8AAP///h///wAA////P///AAD///////8AAP//
- /////wAA
-
-
-
\ No newline at end of file
diff --git a/Source/Krypton Toolkit/Krypton.Toolkit.Suite.Extended.Software.Updater/Sharp Update/Classes/Hasher.cs b/Source/Krypton Toolkit/Krypton.Toolkit.Suite.Extended.Software.Updater/Sharp Update/Classes/Hasher.cs
index 5154356e2..6b3c8359d 100644
--- a/Source/Krypton Toolkit/Krypton.Toolkit.Suite.Extended.Software.Updater/Sharp Update/Classes/Hasher.cs
+++ b/Source/Krypton Toolkit/Krypton.Toolkit.Suite.Extended.Software.Updater/Sharp Update/Classes/Hasher.cs
@@ -1,65 +1,48 @@
-#region MIT License
-/*
- * MIT License
- *
- * Copyright (c) 2017 - 2023 Krypton Suite
- *
- * Permission is hereby granted, free of charge, to any person obtaining a copy
- * of this software and associated documentation files (the "Software"), to deal
- * in the Software without restriction, including without limitation the rights
- * to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
- * copies of the Software, and to permit persons to whom the Software is
- * furnished to do so, subject to the following conditions:
- *
- * The above copyright notice and this permission notice shall be included in all
- * copies or substantial portions of the Software.
- *
- * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
- * IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
- * FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
- * AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
- * LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
- * OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE
- * SOFTWARE.
- *
- */
-#endregion
-
-namespace Krypton.Toolkit.Suite.Extended.Software.Updater.SharpUpdate
+namespace Krypton.Toolkit.Suite.Extended.Software.Updater
{
- internal class Hasher
+ ///
+ /// Class used to generate hash sums of files
+ ///
+ internal static class Hasher
{
- #region Methods
- internal static string HashFile(string filePath, HashType hashType)
+ ///
+ /// Generate a hash sum of a file
+ ///
+ /// The file to hash
+ /// The Type of hash
+ /// The computed hash
+ internal static string HashFile(string filePath, HashType algo)
{
- switch (hashType)
+ switch (algo)
{
- case HashType.Md5:
+ case HashType.MD5:
return MakeHashString(MD5.Create().ComputeHash(new FileStream(filePath, FileMode.Open)));
- case HashType.Sha1:
+ case HashType.SHA1:
return MakeHashString(SHA1.Create().ComputeHash(new FileStream(filePath, FileMode.Open)));
- case HashType.Sha256:
+ case HashType.SHA256:
return MakeHashString(SHA256.Create().ComputeHash(new FileStream(filePath, FileMode.Open)));
- case HashType.Sha384:
+ case HashType.SHA384:
return MakeHashString(SHA384.Create().ComputeHash(new FileStream(filePath, FileMode.Open)));
- case HashType.Sha512:
+ case HashType.SHA512:
return MakeHashString(SHA512.Create().ComputeHash(new FileStream(filePath, FileMode.Open)));
default:
- return string.Empty;
+ return "";
}
}
+ ///
+ /// Converts byte[] to string
+ ///
+ /// The hash to convert
+ /// Hash as string
private static string MakeHashString(byte[] hash)
{
- StringBuilder builder = new StringBuilder();
+ StringBuilder s = new StringBuilder();
foreach (byte b in hash)
- {
- builder.Append(b.ToString("x2").ToLower());
- }
+ s.Append(b.ToString("x2").ToLower());
- return builder.ToString();
+ return s.ToString();
}
- #endregion
}
}
\ No newline at end of file
diff --git a/Source/Krypton Toolkit/Krypton.Toolkit.Suite.Extended.Software.Updater/Sharp Update/Classes/SharpUpdateFileInfo.cs b/Source/Krypton Toolkit/Krypton.Toolkit.Suite.Extended.Software.Updater/Sharp Update/Classes/SharpUpdateFileInfo.cs
deleted file mode 100644
index 814eafe6a..000000000
--- a/Source/Krypton Toolkit/Krypton.Toolkit.Suite.Extended.Software.Updater/Sharp Update/Classes/SharpUpdateFileInfo.cs
+++ /dev/null
@@ -1,89 +0,0 @@
-#region MIT License
-/*
- * MIT License
- *
- * Copyright (c) 2017 - 2023 Krypton Suite
- *
- * Permission is hereby granted, free of charge, to any person obtaining a copy
- * of this software and associated documentation files (the "Software"), to deal
- * in the Software without restriction, including without limitation the rights
- * to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
- * copies of the Software, and to permit persons to whom the Software is
- * furnished to do so, subject to the following conditions:
- *
- * The above copyright notice and this permission notice shall be included in all
- * copies or substantial portions of the Software.
- *
- * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
- * IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
- * FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
- * AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
- * LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
- * OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE
- * SOFTWARE.
- *
- */
-#endregion
-
-namespace Krypton.Toolkit.Suite.Extended.Software.Updater.SharpUpdate
-{
- internal class SharpUpdateFileInfo
- {
- ///
- /// Holds the url for download
- ///
- private string url;
-
- ///
- /// Holds th filename
- ///
- private string fileName;
-
- ///
- /// Holds the md5 checksum
- ///
- private string md5;
-
- ///
- /// Holds the path to the temporarly downloaded file
- ///
- private string tempFile;
-
- ///
- /// Creates a new SharpUpdateFileInfo object
- ///
- internal SharpUpdateFileInfo(string url, string fileName, string md5)
- {
- this.url = url;
- this.fileName = fileName;
- this.md5 = md5;
- }
-
- ///
- /// The download url for the file
- ///
- internal string Url => url;
-
- //set { url = value; }
- ///
- /// The filename
- ///
- internal string FileName => fileName;
-
- //set { fileName = value; }
- ///
- /// The Md5-Checksum of the file
- ///
- internal string Md5 => md5;
-
- //set { md5 = value; }
- ///
- /// Path to the downloaded file
- ///
- internal string TempFile
- {
- get => tempFile;
- set => tempFile = value;
- }
- }
-}
\ No newline at end of file
diff --git a/Source/Krypton Toolkit/Krypton.Toolkit.Suite.Extended.Software.Updater/Sharp Update/Classes/SharpUpdateLocalAppInfo.cs b/Source/Krypton Toolkit/Krypton.Toolkit.Suite.Extended.Software.Updater/Sharp Update/Classes/SharpUpdateLocalAppInfo.cs
index a54815b61..ba1f1ce64 100644
--- a/Source/Krypton Toolkit/Krypton.Toolkit.Suite.Extended.Software.Updater/Sharp Update/Classes/SharpUpdateLocalAppInfo.cs
+++ b/Source/Krypton Toolkit/Krypton.Toolkit.Suite.Extended.Software.Updater/Sharp Update/Classes/SharpUpdateLocalAppInfo.cs
@@ -1,37 +1,12 @@
-#region MIT License
-/*
- * MIT License
- *
- * Copyright (c) 2017 - 2023 Krypton Suite
- *
- * Permission is hereby granted, free of charge, to any person obtaining a copy
- * of this software and associated documentation files (the "Software"), to deal
- * in the Software without restriction, including without limitation the rights
- * to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
- * copies of the Software, and to permit persons to whom the Software is
- * furnished to do so, subject to the following conditions:
- *
- * The above copyright notice and this permission notice shall be included in all
- * copies or substantial portions of the Software.
- *
- * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
- * IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
- * FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
- * AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
- * LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
- * OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE
- * SOFTWARE.
- *
- */
-#endregion
-
-namespace Krypton.Toolkit.Suite.Extended.Software.Updater.SharpUpdate
+namespace Krypton.Toolkit.Suite.Extended.Software.Updater
{
///
/// The class that holds all application's information
///
public class SharpUpdateLocalAppInfo
{
+ #region Public
+
///
/// The path of your application
///
@@ -50,45 +25,47 @@ public class SharpUpdateLocalAppInfo
///
/// The application's icon to be displayed in the top left
///
- public Icon ApplicationIcon { get; }
+ public Icon? ApplicationIcon { get; }
///
/// The context of the program.
/// For Windows Forms Applications, use 'this'
/// Console Apps, reference System.Windows.Forms and return null.
///
- public Form Context { get; }
+ public Form? Context { get; }
///
/// The version of your application
///
public Version Version { get; }
+ #endregion
+
///
/// Tag to distinguish types of updates
///
- public JobType Tag;
+ public JobType _tag;
- public SharpUpdateLocalAppInfo(SharpUpdateXml job, Assembly ass, Form f)
+ public SharpUpdateLocalAppInfo(SharpUpdateXml job, Assembly ass, Form? f)
{
ApplicationPath = job.FilePath;
ApplicationName = Path.GetFileNameWithoutExtension(ApplicationPath);
ApplicationAssembly = ass;
ApplicationIcon = f.Icon;
Context = f;
- Version = (job.Tag == JobType.Update) ? ApplicationAssembly.GetName().Version : job.Version;
- Tag = job.Tag;
+ Version = (job.Tag == JobType.UPDATE) ? ApplicationAssembly.GetName().Version : job.Version;
+ _tag = job.Tag;
}
public SharpUpdateLocalAppInfo(SharpUpdateXml job)
{
ApplicationPath = job.FilePath;
ApplicationName = Path.GetFileNameWithoutExtension(ApplicationPath);
- ApplicationAssembly = (job.Tag == JobType.Update) ? Assembly.Load(ApplicationName) : null;
+ ApplicationAssembly = (job.Tag == JobType.UPDATE) ? Assembly.Load(ApplicationName) : null;
ApplicationIcon = null;
Context = null;
- Version = (job.Tag == JobType.Update) ? ApplicationAssembly.GetName().Version : job.Version;
- Tag = job.Tag;
+ Version = (job.Tag == JobType.UPDATE) ? ApplicationAssembly.GetName().Version : job.Version;
+ _tag = job.Tag;
}
public void Print()
@@ -96,7 +73,7 @@ public void Print()
string head = "========== SharpUpdateLocalAppInfo ==========";
string tail = "=============================================";
string toPrint = string.Format("{0}\nJob type: {1}\nApplicationPath: {2}\nApplicationName: {3}\nAssemblyName: {4}\nFormName: {5}\nVersion: {6}\n{7}",
- head, Tag.ToString(), ApplicationPath == null ? "null" : ApplicationPath,
+ head, _tag.ToString(), ApplicationPath == null ? "null" : ApplicationPath,
ApplicationName == null ? "null" : ApplicationName,
ApplicationAssembly == null ? "null" : ApplicationAssembly.FullName,
Context == null ? "null" : Context.Name,
diff --git a/Source/Krypton Toolkit/Krypton.Toolkit.Suite.Extended.Software.Updater/Sharp Update/Classes/SharpUpdateXml.cs b/Source/Krypton Toolkit/Krypton.Toolkit.Suite.Extended.Software.Updater/Sharp Update/Classes/SharpUpdateXml.cs
index 9969c33d3..52ab9d240 100644
--- a/Source/Krypton Toolkit/Krypton.Toolkit.Suite.Extended.Software.Updater/Sharp Update/Classes/SharpUpdateXml.cs
+++ b/Source/Krypton Toolkit/Krypton.Toolkit.Suite.Extended.Software.Updater/Sharp Update/Classes/SharpUpdateXml.cs
@@ -1,31 +1,4 @@
-#region MIT License
-/*
- * MIT License
- *
- * Copyright (c) 2017 - 2023 Krypton Suite
- *
- * Permission is hereby granted, free of charge, to any person obtaining a copy
- * of this software and associated documentation files (the "Software"), to deal
- * in the Software without restriction, including without limitation the rights
- * to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
- * copies of the Software, and to permit persons to whom the Software is
- * furnished to do so, subject to the following conditions:
- *
- * The above copyright notice and this permission notice shall be included in all
- * copies or substantial portions of the Software.
- *
- * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
- * IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
- * FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
- * AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
- * LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
- * OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE
- * SOFTWARE.
- *
- */
-#endregion
-
-namespace Krypton.Toolkit.Suite.Extended.Software.Updater.SharpUpdate
+namespace Krypton.Toolkit.Suite.Extended.Software.Updater
{
///
/// Contains update information
@@ -87,10 +60,7 @@ public SharpUpdateXml(Version version, Uri uri, string filePath, string md5, str
///
/// Application's current version
/// If the update's version # is newer
- public bool IsNewerThan(Version version)
- {
- return Version > version;
- }
+ public bool IsNewerThan(Version version) => Version > version;
///
/// Checks the Uri to make sure file exist
@@ -101,7 +71,7 @@ public static bool ExistsOnServer(Uri location)
{
if (location.ToString().StartsWith("file"))
{
- return System.IO.File.Exists(location.LocalPath);
+ return File.Exists(location.LocalPath);
}
else
{
@@ -124,10 +94,10 @@ public static bool ExistsOnServer(Uri location)
///
/// Uri of update.xml on server
/// The SharpUpdateXml object with the data, or null of any errors
- public static SharpUpdateXml[] Parse(Uri location)
+ public static SharpUpdateXml[]? Parse(Uri location)
{
List result = new List();
- Version version = null;
+ Version version;
string url = "", filePath = "", md5 = "", description = "", launchArgs = "";
try
@@ -140,14 +110,12 @@ public static SharpUpdateXml[] Parse(Uri location)
// Gets the appId's node with the update info
// This allows you to store all program's update nodes in one file
// XmlNode updateNode = doc.DocumentElement.SelectSingleNode("//update[@appID='" + appID + "']");
- XmlNodeList updateNodes = doc.DocumentElement.SelectNodes("/sharpUpdate/update");
+ XmlNodeList? updateNodes = doc.DocumentElement.SelectNodes("/sharpUpdate/update");
foreach (XmlNode updateNode in updateNodes)
{
// If the node doesn't exist, there is no update
if (updateNode == null)
- {
return null;
- }
// Parse data
version = Version.Parse(updateNode["version"].InnerText);
@@ -157,17 +125,16 @@ public static SharpUpdateXml[] Parse(Uri location)
description = updateNode["description"].InnerText;
launchArgs = updateNode["launchArgs"].InnerText;
- result.Add(new SharpUpdateXml(version, new Uri(url), filePath, md5, description, launchArgs, JobType.Update));
+ result.Add(new SharpUpdateXml(version, new Uri(url), filePath, md5, description, launchArgs,
+ JobType.UPDATE));
}
- XmlNodeList addNodes = doc.DocumentElement.SelectNodes("/sharpUpdate/add");
+ XmlNodeList? addNodes = doc.DocumentElement.SelectNodes("/sharpUpdate/add");
foreach (XmlNode addNode in addNodes)
{
// If the node doesn't exist, there is no add
if (addNode == null)
- {
return null;
- }
// Parse data
version = Version.Parse(addNode["version"].InnerText);
@@ -177,29 +144,31 @@ public static SharpUpdateXml[] Parse(Uri location)
description = addNode["description"].InnerText;
launchArgs = addNode["launchArgs"].InnerText;
- result.Add(new SharpUpdateXml(version, new Uri(url), filePath, md5, description, launchArgs, JobType.Add));
+ result.Add(new SharpUpdateXml(version, new Uri(url), filePath, md5, description, launchArgs,
+ JobType.ADD));
}
- XmlNodeList removeNodes = doc.DocumentElement.SelectNodes("/sharpUpdate/remove");
+ XmlNodeList? removeNodes = doc.DocumentElement.SelectNodes("/sharpUpdate/remove");
foreach (XmlNode removeNode in removeNodes)
{
// If the node doesn't exist, there is no remove
if (removeNode == null)
- {
return null;
- }
// Parse data
filePath = removeNode["filePath"].InnerText;
description = removeNode["description"].InnerText;
launchArgs = removeNode["launchArgs"].InnerText;
- result.Add(new SharpUpdateXml(null, null, filePath, null, description, launchArgs, JobType.Remove));
+ result.Add(new SharpUpdateXml(null, null, filePath, null, description, launchArgs, JobType.REMOVE));
}
return result.ToArray();
}
- catch { return null; }
+ catch
+ {
+ return null;
+ }
}
}
}
\ No newline at end of file
diff --git a/Source/Krypton Toolkit/Krypton.Toolkit.Suite.Extended.Software.Updater/Sharp Update/Classes/SharpUpdater.cs b/Source/Krypton Toolkit/Krypton.Toolkit.Suite.Extended.Software.Updater/Sharp Update/Classes/SharpUpdater.cs
index eb75fc683..0357e2a16 100644
--- a/Source/Krypton Toolkit/Krypton.Toolkit.Suite.Extended.Software.Updater/Sharp Update/Classes/SharpUpdater.cs
+++ b/Source/Krypton Toolkit/Krypton.Toolkit.Suite.Extended.Software.Updater/Sharp Update/Classes/SharpUpdater.cs
@@ -1,33 +1,6 @@
-#region MIT License
-/*
- * MIT License
- *
- * Copyright (c) 2017 - 2023 Krypton Suite
- *
- * Permission is hereby granted, free of charge, to any person obtaining a copy
- * of this software and associated documentation files (the "Software"), to deal
- * in the Software without restriction, including without limitation the rights
- * to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
- * copies of the Software, and to permit persons to whom the Software is
- * furnished to do so, subject to the following conditions:
- *
- * The above copyright notice and this permission notice shall be included in all
- * copies or substantial portions of the Software.
- *
- * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
- * IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
- * FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
- * AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
- * LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
- * OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE
- * SOFTWARE.
- *
- */
-#endregion
-
-using Application = System.Windows.Forms.Application;
-
-namespace Krypton.Toolkit.Suite.Extended.Software.Updater.SharpUpdate
+using Application = System.Windows.Forms.Application;
+
+namespace Krypton.Toolkit.Suite.Extended.Software.Updater
{
///
/// Provides application update support in C#
@@ -37,74 +10,74 @@ public class SharpUpdater
///
/// Parent form
///
- private Form ParentForm;
+ private KryptonForm _parentForm;
///
/// Parent assembly
///
- private Assembly ParentAssembly;
+ private Assembly _parentAssembly;
///
/// Parent name
///
- private string ParentPath;
+ private string _parentPath;
///
/// Holds the program-to-update's info
///
- private SharpUpdateLocalAppInfo[] LocalApplicationInfos;
+ private SharpUpdateLocalAppInfo[] _localApplicationInfos;
///
/// Holds all the jobs defined in update xml
///
- private SharpUpdateXml[] JobsFromXML;
+ private SharpUpdateXml[] _jobsFromXml;
///
/// Total number of jobs
///
- private int Num_Jobs = 0;
+ private int _numJobs = 0;
///
/// Lists containing all informtion for files update
///
- private List tempFilePaths = new List();
- private List currentPaths = new List();
- private List newPaths = new List();
- private List launchArgss = new List();
- private List jobtypes = new List();
+ private List _tempFilePaths = new List();
+ private List _currentPaths = new List();
+ private List _newPaths = new List();
+ private List _launchArgss = new List();
+ private List _jobtypes = new List();
- private int acceptJobs = 0;
+ private int _acceptJobs = 0;
///
/// Thread to find update
///
- private BackgroundWorker BgWorker;
+ private BackgroundWorker _bgWorker;
///
/// Uri of the update xml on the server
///
- private Uri UpdateXmlLocation;
+ private Uri _updateXmlLocation;
//private readonly Uri UpdateXmlLocation = new Uri("https://raw.githubusercontent.com/henryxrl/SharpUpdate/master/project.xml");
//private readonly Uri UpdateXmlLocation = new Uri(new FileInfo(@"..\..\..\project.xml").FullName); // for local testing
///
/// Creates a new SharpUpdater object
///
- /// Parent ssembly to be attached
+ /// Parent assembly to be attached
/// Parent form to be attached
- /// Uri of the update xml on the server
- public SharpUpdater(Assembly a, Form owner, Uri XMLOnServer)
+ /// Uri of the update xml on the server
+ public SharpUpdater(Assembly a, KryptonForm owner, Uri xmlOnServer)
{
- ParentForm = owner;
- ParentAssembly = a;
- ParentPath = a.Location;
+ _parentForm = owner;
+ _parentAssembly = a;
+ _parentPath = a.Location;
- UpdateXmlLocation = XMLOnServer;
+ _updateXmlLocation = xmlOnServer;
// Set up backgroundworker
- BgWorker = new BackgroundWorker();
- BgWorker.DoWork += new DoWorkEventHandler(BgWorker_DoWork);
- BgWorker.RunWorkerCompleted += new RunWorkerCompletedEventHandler(BgWorker_RunWorkerCompleted);
+ _bgWorker = new BackgroundWorker();
+ _bgWorker.DoWork += new DoWorkEventHandler(BgWorker_DoWork);
+ _bgWorker.RunWorkerCompleted += new RunWorkerCompletedEventHandler(BgWorker_RunWorkerCompleted);
}
///
@@ -113,10 +86,8 @@ public SharpUpdater(Assembly a, Form owner, Uri XMLOnServer)
///
public void DoUpdate()
{
- if (!BgWorker.IsBusy)
- {
- BgWorker.RunWorkerAsync();
- }
+ if (!_bgWorker.IsBusy)
+ _bgWorker.RunWorkerAsync();
}
///
@@ -125,14 +96,10 @@ public void DoUpdate()
private void BgWorker_DoWork(object sender, DoWorkEventArgs e)
{
// Check for update on server
- if (!SharpUpdateXml.ExistsOnServer(UpdateXmlLocation))
- {
+ if (!SharpUpdateXml.ExistsOnServer(_updateXmlLocation))
e.Cancel = true;
- }
else // Parse update xml
- {
- e.Result = SharpUpdateXml.Parse(UpdateXmlLocation);
- }
+ e.Result = SharpUpdateXml.Parse(_updateXmlLocation);
}
///
@@ -143,39 +110,37 @@ private void BgWorker_RunWorkerCompleted(object sender, RunWorkerCompletedEventA
// If there is a file on the server
if (!e.Cancelled)
{
- JobsFromXML = (SharpUpdateXml[])e.Result;
+ _jobsFromXml = (SharpUpdateXml[])e.Result;
// Check if the update is not null and is a newer version than the current application
- if (JobsFromXML != null)
+ if (_jobsFromXml != null)
{
- Console.WriteLine($"Number of updates from XML: {JobsFromXML.Length}");
+ Console.WriteLine("Number of updates from XML: " + _jobsFromXml.Length);
// create local app info according to update xml
- Num_Jobs = JobsFromXML.Length;
- LocalApplicationInfos = new SharpUpdateLocalAppInfo[Num_Jobs];
- for (int i = 0; i < Num_Jobs; ++i)
+ _numJobs = _jobsFromXml.Length;
+ _localApplicationInfos = new SharpUpdateLocalAppInfo[_numJobs];
+ for (int i = 0; i < _numJobs; ++i)
{
- if (Path.GetFileName(ParentPath).CompareTo(Path.GetFileName(JobsFromXML[i].FilePath)) == 0)
+ if (Path.GetFileName(_parentPath).CompareTo(Path.GetFileName(_jobsFromXml[i].FilePath)) == 0)
{
- LocalApplicationInfos[i] = new SharpUpdateLocalAppInfo(JobsFromXML[i], ParentAssembly, ParentForm);
+ _localApplicationInfos[i] = new SharpUpdateLocalAppInfo(_jobsFromXml[i], _parentAssembly, _parentForm);
}
else
{
- LocalApplicationInfos[i] = new SharpUpdateLocalAppInfo(JobsFromXML[i]);
+ _localApplicationInfos[i] = new SharpUpdateLocalAppInfo(_jobsFromXml[i]);
}
- LocalApplicationInfos[i].Print();
+ _localApplicationInfos[i].Print();
}
// validate all update jobs
List validJobs = new List();
- for (int i = 0; i < Num_Jobs; ++i)
+ for (int i = 0; i < _numJobs; ++i)
{
- if (JobsFromXML[i].Tag == JobType.Update)
+ if (_jobsFromXml[i].Tag == JobType.UPDATE)
{
- if (!JobsFromXML[i].IsNewerThan(LocalApplicationInfos[i].Version))
- {
+ if (!_jobsFromXml[i].IsNewerThan(_localApplicationInfos[i].Version))
continue;
- }
}
validJobs.Add(i);
}
@@ -189,34 +154,28 @@ private void BgWorker_RunWorkerCompleted(object sender, RunWorkerCompletedEventA
showMsgBox = false;
// Ask to accept the update
- if (new SharpUpdateAcceptForm(LocalApplicationInfos[i], JobsFromXML[i], count, validJobs.Count).ShowDialog(LocalApplicationInfos[0].Context) == DialogResult.Yes)
+ if (new SharpUpdateAcceptForm(_localApplicationInfos[i], _jobsFromXml[i], count, validJobs.Count).ShowDialog(_localApplicationInfos[0].Context) == DialogResult.Yes)
{
- acceptJobs++;
- DownloadUpdate(JobsFromXML[i], LocalApplicationInfos[i]); // Do the update
+ _acceptJobs++;
+ DownloadUpdate(_jobsFromXml[i], _localApplicationInfos[i]); // Do the update
}
}
if (showMsgBox)
{
- KryptonMessageBox.Show(ParentForm, "You have the latest versions already!");
+ KryptonMessageBox.Show(_parentForm, "You have the latest versions already!");
}
else
{
- if (acceptJobs > 0)
- {
+ if (_acceptJobs > 0)
InstallUpdate();
- }
}
}
else
- {
- KryptonMessageBox.Show(ParentForm, "You have the latest versions already!");
- }
+ KryptonMessageBox.Show(_parentForm, "You have the latest versions already!");
}
else
- {
- KryptonMessageBox.Show(ParentForm, "No update information found!");
- }
+ KryptonMessageBox.Show(_parentForm, "No update information found!");
}
///
@@ -226,13 +185,13 @@ private void BgWorker_RunWorkerCompleted(object sender, RunWorkerCompletedEventA
/// An SharpUpdateInfo object containing application's info
private void DownloadUpdate(SharpUpdateXml update, SharpUpdateLocalAppInfo applicationInfo)
{
- if (update.Tag == JobType.Remove)
+ if (update.Tag == JobType.REMOVE)
{
- tempFilePaths.Add("");
- currentPaths.Add("");
- newPaths.Add(Path.GetFullPath(applicationInfo.ApplicationPath));
- launchArgss.Add(update.LaunchArgs);
- jobtypes.Add(update.Tag);
+ _tempFilePaths.Add("");
+ _currentPaths.Add("");
+ _newPaths.Add(Path.GetFullPath(applicationInfo.ApplicationPath));
+ _launchArgss.Add(update.LaunchArgs);
+ _jobtypes.Add(update.Tag);
return;
}
@@ -241,23 +200,23 @@ private void DownloadUpdate(SharpUpdateXml update, SharpUpdateLocalAppInfo appli
if (result == DialogResult.OK)
{
- string currentPath = (update.Tag == JobType.Update) ? applicationInfo.ApplicationAssembly.Location : "";
- string newPath = (update.Tag == JobType.Update) ? Path.GetFullPath(Path.GetDirectoryName(currentPath).ToString() + update.FilePath) : Path.GetFullPath(applicationInfo.ApplicationPath);
+ string currentPath = (update.Tag == JobType.UPDATE) ? applicationInfo.ApplicationAssembly.Location : "";
+ string newPath = (update.Tag == JobType.UPDATE) ? Path.GetFullPath(Path.GetDirectoryName(currentPath).ToString() + update.FilePath) : Path.GetFullPath(applicationInfo.ApplicationPath);
Directory.CreateDirectory(Path.GetDirectoryName(newPath));
- tempFilePaths.Add(form.TempFilePath);
- currentPaths.Add(currentPath);
- newPaths.Add(newPath);
- launchArgss.Add(update.LaunchArgs);
- jobtypes.Add(update.Tag);
+ _tempFilePaths.Add(form.TempFilePath);
+ _currentPaths.Add(currentPath);
+ _newPaths.Add(newPath);
+ _launchArgss.Add(update.LaunchArgs);
+ _jobtypes.Add(update.Tag);
}
else if (result == DialogResult.Abort)
{
- KryptonMessageBox.Show(ParentForm, "The update download was canceled.\nThis program has not been modified.", "Update Download Canceled", KryptonMessageBoxButtons.OK, KryptonMessageBoxIcon.Information);
+ KryptonMessageBox.Show(_parentForm, "The update download was cancelled.\nThis program has not been modified.", "Update Download Cancelled", KryptonMessageBoxButtons.OK, KryptonMessageBoxIcon.Information);
}
else
{
- KryptonMessageBox.Show(ParentForm, "There was a problem downloading the update.\nPlease try again later.", "Update Download Error", KryptonMessageBoxButtons.OK, KryptonMessageBoxIcon.Information);
+ KryptonMessageBox.Show(_parentForm, "There was a problem downloading the update.\nPlease try again later.", "Update Download Error", KryptonMessageBoxButtons.OK, KryptonMessageBoxIcon.Information);
}
}
@@ -266,14 +225,10 @@ private void DownloadUpdate(SharpUpdateXml update, SharpUpdateLocalAppInfo appli
///
private void InstallUpdate()
{
- DialogResult result = KryptonMessageBox.Show("The application needs to restart.", "Restart Needed", KryptonMessageBoxButtons.OK, KryptonMessageBoxIcon.Information);
-
- if (result == DialogResult.OK)
- {
- UpdateApplications();
-
- Application.Exit();
- }
+ // ToDo: Uncomment once timeouts are supported
+ //MessageBoxEx.Show(_parentForm, "Application restarts in 5 seconds", "Success", 5000);
+ UpdateApplications();
+ Application.Exit();
}
///
@@ -281,42 +236,42 @@ private void InstallUpdate()
///
private void UpdateApplications()
{
- string argument_start = "/C choice /C Y /N /D Y /T 4 & Start \"\" /D \"{0}\" \"{1}\"";
- string argument_update = "/C choice /C Y /N /D Y /T 4 & Del /F /Q \"{0}\" & choice /C Y /N /D Y /T 2 & Move /Y \"{1}\" \"{2}\"";
- string argument_update_start = $"{argument_update} & Start \"\" /D \"{{3}}\" \"{{4}}\" {{5}}";
- string argument_add = "/C choice /C Y /N /D Y /T 4 & Move /Y \"{0}\" \"{1}\"";
- string argument_remove = "/C choice /C Y /N /D Y /T 4 & Del /F /Q \"{0}\"";
- string argument_complete = "";
+ string argumentStart = "/C choice /C Y /N /D Y /T 4 & Start \"\" /D \"{0}\" \"{1}\"";
+ string argumentUpdate = "/C choice /C Y /N /D Y /T 4 & Del /F /Q \"{0}\" & choice /C Y /N /D Y /T 2 & Move /Y \"{1}\" \"{2}\"";
+ string argumentUpdateStart = argumentUpdate + " & Start \"\" /D \"{3}\" \"{4}\" {5}";
+ string argumentAdd = "/C choice /C Y /N /D Y /T 4 & Move /Y \"{0}\" \"{1}\"";
+ string argumentRemove = "/C choice /C Y /N /D Y /T 4 & Del /F /Q \"{0}\"";
+ string argumentComplete = "";
int curAppidx = -1;
- for (int i = 0; i < acceptJobs; ++i)
+ for (int i = 0; i < _acceptJobs; ++i)
{
- string curName = Path.GetFileName(currentPaths[i]);
- if (curName.CompareTo("") != 0 && Path.GetFileName(ParentPath).CompareTo(curName) == 0)
+ string curName = Path.GetFileName(_currentPaths[i]);
+ if (curName.CompareTo("") != 0 && Path.GetFileName(_parentPath).CompareTo(curName) == 0)
{
curAppidx = i;
continue;
}
- if (jobtypes[i] == JobType.Add)
+ if (_jobtypes[i] == JobType.ADD)
{
- argument_complete = string.Format(argument_add, tempFilePaths[i], newPaths[i]);
- Console.WriteLine($"add: {argument_complete}");
+ argumentComplete = string.Format(argumentAdd, _tempFilePaths[i], _newPaths[i]);
+ Console.WriteLine("add: " + argumentComplete);
}
- else if (jobtypes[i] == JobType.Update)
+ else if (_jobtypes[i] == JobType.UPDATE)
{
- argument_complete = string.Format(argument_update, currentPaths[i], tempFilePaths[i], newPaths[i]);
- Console.WriteLine($"update: {argument_complete}");
+ argumentComplete = string.Format(argumentUpdate, _currentPaths[i], _tempFilePaths[i], _newPaths[i]);
+ Console.WriteLine("update: " + argumentComplete);
}
else
{
- argument_complete = string.Format(argument_remove, newPaths[i]);
- Console.WriteLine($"remove: {argument_complete}");
+ argumentComplete = string.Format(argumentRemove, _newPaths[i]);
+ Console.WriteLine("remove: " + argumentComplete);
}
ProcessStartInfo cmd = new ProcessStartInfo
{
- Arguments = argument_complete,
+ Arguments = argumentComplete,
WindowStyle = ProcessWindowStyle.Hidden,
CreateNoWindow = true,
FileName = "cmd.exe"
@@ -326,23 +281,23 @@ private void UpdateApplications()
if (curAppidx > -1)
{
- argument_complete = string.Format(argument_update_start, currentPaths[curAppidx], tempFilePaths[curAppidx], newPaths[curAppidx], Path.GetDirectoryName(newPaths[curAppidx]), Path.GetFileName(newPaths[curAppidx]), launchArgss[curAppidx]);
- Console.WriteLine($"Update and run main app: {argument_complete}");
+ argumentComplete = string.Format(argumentUpdateStart, _currentPaths[curAppidx], _tempFilePaths[curAppidx], _newPaths[curAppidx], Path.GetDirectoryName(_newPaths[curAppidx]), Path.GetFileName(_newPaths[curAppidx]), _launchArgss[curAppidx]);
+ Console.WriteLine("Update and run main app: " + argumentComplete);
}
else
{
- argument_complete = string.Format(argument_start, Path.GetDirectoryName(ParentPath), Path.GetFileName(ParentPath));
- Console.WriteLine($"Run main app: {argument_complete}");
+ argumentComplete = string.Format(argumentStart, Path.GetDirectoryName(_parentPath), Path.GetFileName(_parentPath));
+ Console.WriteLine("Run main app: " + argumentComplete);
}
- ProcessStartInfo cmd_main = new ProcessStartInfo
+ ProcessStartInfo cmdMain = new ProcessStartInfo
{
- Arguments = argument_complete,
+ Arguments = argumentComplete,
WindowStyle = ProcessWindowStyle.Hidden,
CreateNoWindow = true,
FileName = "cmd.exe"
};
- Process.Start(cmd_main);
+ Process.Start(cmdMain);
}
}
}
\ No newline at end of file
diff --git a/Source/Krypton Toolkit/Krypton.Toolkit.Suite.Extended.Software.Updater/Sharp Update/Controls Visuals/SharpUpdateAcceptForm.Designer.cs b/Source/Krypton Toolkit/Krypton.Toolkit.Suite.Extended.Software.Updater/Sharp Update/Controls Visuals/SharpUpdateAcceptForm.Designer.cs
new file mode 100644
index 000000000..45d6955df
--- /dev/null
+++ b/Source/Krypton Toolkit/Krypton.Toolkit.Suite.Extended.Software.Updater/Sharp Update/Controls Visuals/SharpUpdateAcceptForm.Designer.cs
@@ -0,0 +1,178 @@
+namespace Krypton.Toolkit.Suite.Extended.Software.Updater
+{
+ partial class SharpUpdateAcceptForm
+ {
+ ///
+ /// 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.kryptonPanel1 = new Krypton.Toolkit.KryptonPanel();
+ this.kryptonBorderEdge1 = new Krypton.Toolkit.KryptonBorderEdge();
+ this.kryptonPanel2 = new Krypton.Toolkit.KryptonPanel();
+ this.kbtnDetails = new Krypton.Toolkit.KryptonButton();
+ this.kbtnNo = new Krypton.Toolkit.KryptonButton();
+ this.kbtnYes = new Krypton.Toolkit.KryptonButton();
+ this.kwlUpdateAvailable = new Krypton.Toolkit.KryptonWrapLabel();
+ this.pictureBox1 = new System.Windows.Forms.PictureBox();
+ this.kwlNewVersion = new Krypton.Toolkit.KryptonWrapLabel();
+ ((System.ComponentModel.ISupportInitialize)(this.kryptonPanel1)).BeginInit();
+ this.kryptonPanel1.SuspendLayout();
+ ((System.ComponentModel.ISupportInitialize)(this.kryptonPanel2)).BeginInit();
+ this.kryptonPanel2.SuspendLayout();
+ ((System.ComponentModel.ISupportInitialize)(this.pictureBox1)).BeginInit();
+ this.SuspendLayout();
+ //
+ // kryptonPanel1
+ //
+ this.kryptonPanel1.Controls.Add(this.kbtnYes);
+ this.kryptonPanel1.Controls.Add(this.kbtnNo);
+ this.kryptonPanel1.Controls.Add(this.kbtnDetails);
+ this.kryptonPanel1.Controls.Add(this.kryptonBorderEdge1);
+ this.kryptonPanel1.Dock = System.Windows.Forms.DockStyle.Bottom;
+ this.kryptonPanel1.Location = new System.Drawing.Point(0, 203);
+ this.kryptonPanel1.Name = "kryptonPanel1";
+ this.kryptonPanel1.PanelBackStyle = Krypton.Toolkit.PaletteBackStyle.PanelAlternate;
+ this.kryptonPanel1.Size = new System.Drawing.Size(382, 50);
+ this.kryptonPanel1.TabIndex = 0;
+ //
+ // kryptonBorderEdge1
+ //
+ this.kryptonBorderEdge1.BorderStyle = Krypton.Toolkit.PaletteBorderStyle.HeaderPrimary;
+ this.kryptonBorderEdge1.Dock = System.Windows.Forms.DockStyle.Top;
+ this.kryptonBorderEdge1.Location = new System.Drawing.Point(0, 0);
+ this.kryptonBorderEdge1.Name = "kryptonBorderEdge1";
+ this.kryptonBorderEdge1.Size = new System.Drawing.Size(382, 1);
+ this.kryptonBorderEdge1.Text = "kryptonBorderEdge1";
+ //
+ // kryptonPanel2
+ //
+ this.kryptonPanel2.Controls.Add(this.kwlNewVersion);
+ this.kryptonPanel2.Controls.Add(this.pictureBox1);
+ this.kryptonPanel2.Controls.Add(this.kwlUpdateAvailable);
+ this.kryptonPanel2.Dock = System.Windows.Forms.DockStyle.Fill;
+ this.kryptonPanel2.Location = new System.Drawing.Point(0, 0);
+ this.kryptonPanel2.Name = "kryptonPanel2";
+ this.kryptonPanel2.Size = new System.Drawing.Size(382, 203);
+ this.kryptonPanel2.TabIndex = 1;
+ //
+ // kbtnDetails
+ //
+ this.kbtnDetails.Location = new System.Drawing.Point(280, 13);
+ this.kbtnDetails.Name = "kbtnDetails";
+ this.kbtnDetails.Size = new System.Drawing.Size(90, 25);
+ this.kbtnDetails.TabIndex = 1;
+ this.kbtnDetails.Values.Text = "kryptonButton1";
+ this.kbtnDetails.Click += new System.EventHandler(this.kbtnDetails_Click);
+ //
+ // kbtnNo
+ //
+ this.kbtnNo.Location = new System.Drawing.Point(184, 13);
+ this.kbtnNo.Name = "kbtnNo";
+ this.kbtnNo.Size = new System.Drawing.Size(90, 25);
+ this.kbtnNo.TabIndex = 2;
+ this.kbtnNo.Values.Text = "kryptonButton2";
+ this.kbtnNo.Click += new System.EventHandler(this.kbtnNo_Click);
+ //
+ // kbtnYes
+ //
+ this.kbtnYes.Location = new System.Drawing.Point(88, 13);
+ this.kbtnYes.Name = "kbtnYes";
+ this.kbtnYes.Size = new System.Drawing.Size(90, 25);
+ this.kbtnYes.TabIndex = 3;
+ this.kbtnYes.Values.Text = "kryptonButton3";
+ this.kbtnYes.Click += new System.EventHandler(this.kbtnYes_Click);
+ //
+ // kwlUpdateAvailable
+ //
+ this.kwlUpdateAvailable.AutoSize = false;
+ this.kwlUpdateAvailable.Font = new System.Drawing.Font("Segoe UI", 12F, System.Drawing.FontStyle.Bold, System.Drawing.GraphicsUnit.Point, ((byte)(0)));
+ this.kwlUpdateAvailable.ForeColor = System.Drawing.Color.FromArgb(((int)(((byte)(30)))), ((int)(((byte)(57)))), ((int)(((byte)(91)))));
+ this.kwlUpdateAvailable.LabelStyle = Krypton.Toolkit.LabelStyle.AlternateControl;
+ this.kwlUpdateAvailable.Location = new System.Drawing.Point(88, 13);
+ this.kwlUpdateAvailable.Name = "kwlUpdateAvailable";
+ this.kwlUpdateAvailable.Size = new System.Drawing.Size(282, 64);
+ this.kwlUpdateAvailable.StateCommon.Font = new System.Drawing.Font("Segoe UI", 12F, System.Drawing.FontStyle.Bold, System.Drawing.GraphicsUnit.Point, ((byte)(0)));
+ this.kwlUpdateAvailable.Text = "An update is available!\r\nWould you like to update?";
+ this.kwlUpdateAvailable.TextAlign = System.Drawing.ContentAlignment.MiddleCenter;
+ //
+ // pictureBox1
+ //
+ this.pictureBox1.BackColor = System.Drawing.Color.Transparent;
+ this.pictureBox1.Image = global::Krypton.Toolkit.Suite.Extended.Software.Updater.Properties.Resources.update2;
+ this.pictureBox1.Location = new System.Drawing.Point(13, 13);
+ this.pictureBox1.Name = "pictureBox1";
+ this.pictureBox1.Size = new System.Drawing.Size(64, 64);
+ this.pictureBox1.SizeMode = System.Windows.Forms.PictureBoxSizeMode.AutoSize;
+ this.pictureBox1.TabIndex = 1;
+ this.pictureBox1.TabStop = false;
+ //
+ // kwlNewVersion
+ //
+ this.kwlNewVersion.AutoSize = false;
+ this.kwlNewVersion.Font = new System.Drawing.Font("Segoe UI", 9F, System.Drawing.FontStyle.Regular, System.Drawing.GraphicsUnit.Point, ((byte)(0)));
+ this.kwlNewVersion.ForeColor = System.Drawing.Color.FromArgb(((int)(((byte)(30)))), ((int)(((byte)(57)))), ((int)(((byte)(91)))));
+ this.kwlNewVersion.LabelStyle = Krypton.Toolkit.LabelStyle.AlternateControl;
+ this.kwlNewVersion.Location = new System.Drawing.Point(88, 81);
+ this.kwlNewVersion.Name = "kwlNewVersion";
+ this.kwlNewVersion.Size = new System.Drawing.Size(282, 107);
+ this.kwlNewVersion.StateCommon.Font = new System.Drawing.Font("Segoe UI", 9F, System.Drawing.FontStyle.Regular, System.Drawing.GraphicsUnit.Point, ((byte)(0)));
+ this.kwlNewVersion.TextAlign = System.Drawing.ContentAlignment.MiddleLeft;
+ //
+ // SharpUpdateAcceptForm
+ //
+ this.AutoScaleDimensions = new System.Drawing.SizeF(6F, 13F);
+ this.AutoScaleMode = System.Windows.Forms.AutoScaleMode.Font;
+ this.ClientSize = new System.Drawing.Size(382, 253);
+ this.Controls.Add(this.kryptonPanel2);
+ this.Controls.Add(this.kryptonPanel1);
+ this.FormBorderStyle = System.Windows.Forms.FormBorderStyle.FixedDialog;
+ this.MaximizeBox = false;
+ this.MinimizeBox = false;
+ this.Name = "SharpUpdateAcceptForm";
+ this.StartPosition = System.Windows.Forms.FormStartPosition.CenterParent;
+ ((System.ComponentModel.ISupportInitialize)(this.kryptonPanel1)).EndInit();
+ this.kryptonPanel1.ResumeLayout(false);
+ this.kryptonPanel1.PerformLayout();
+ ((System.ComponentModel.ISupportInitialize)(this.kryptonPanel2)).EndInit();
+ this.kryptonPanel2.ResumeLayout(false);
+ this.kryptonPanel2.PerformLayout();
+ ((System.ComponentModel.ISupportInitialize)(this.pictureBox1)).EndInit();
+ this.ResumeLayout(false);
+
+ }
+
+ #endregion
+
+ private KryptonPanel kryptonPanel1;
+ private KryptonBorderEdge kryptonBorderEdge1;
+ private KryptonPanel kryptonPanel2;
+ private KryptonButton kbtnDetails;
+ private KryptonButton kbtnNo;
+ private KryptonButton kbtnYes;
+ private KryptonWrapLabel kwlUpdateAvailable;
+ private PictureBox pictureBox1;
+ private KryptonWrapLabel kwlNewVersion;
+ }
+}
\ No newline at end of file
diff --git a/Source/Krypton Toolkit/Krypton.Toolkit.Suite.Extended.Software.Updater/Sharp Update/Controls Visuals/SharpUpdateAcceptForm.cs b/Source/Krypton Toolkit/Krypton.Toolkit.Suite.Extended.Software.Updater/Sharp Update/Controls Visuals/SharpUpdateAcceptForm.cs
new file mode 100644
index 000000000..f87130afa
--- /dev/null
+++ b/Source/Krypton Toolkit/Krypton.Toolkit.Suite.Extended.Software.Updater/Sharp Update/Controls Visuals/SharpUpdateAcceptForm.cs
@@ -0,0 +1,75 @@
+namespace Krypton.Toolkit.Suite.Extended.Software.Updater
+{
+ public partial class SharpUpdateAcceptForm : KryptonForm
+ {
+ #region Instance Fields
+
+ ///
+ /// The program to update's info
+ ///
+ private SharpUpdateLocalAppInfo _applicationInfo;
+
+ ///
+ /// The update info from the update.xml
+ ///
+ private SharpUpdateXml _updateInfo;
+
+ ///
+ /// The update info display form
+ ///
+ private SharpUpdateInfoForm _updateInfoForm;
+
+ #endregion
+
+ public SharpUpdateAcceptForm(SharpUpdateLocalAppInfo applicationInfo, SharpUpdateXml updateInfo, int numCurUpdate, int numTotalUpdate)
+ {
+ InitializeComponent();
+
+ _applicationInfo = applicationInfo;
+
+ _updateInfo = updateInfo;
+
+ Text = $@"{_applicationInfo.ApplicationName} - ({numCurUpdate}/{numTotalUpdate}) Available Update";
+
+ // Assigns the icon if it isn't null
+ if (_applicationInfo.ApplicationIcon != null)
+ {
+ Icon = _applicationInfo.ApplicationIcon;
+ }
+
+ // Adds the update version # to the form
+ kwlNewVersion.Text = updateInfo.Tag != JobType.REMOVE ?
+ string.Format(updateInfo.Tag == JobType.UPDATE ? "Update: {0}\nNew Version: {1}" : "New: {0}\nVersion: {1}", Path.GetFileName(_applicationInfo.ApplicationPath), _updateInfo.Version.ToString()) :
+ $"Remove: {Path.GetFileName(_applicationInfo.ApplicationPath)}";
+
+ kbtnNo.Text = KryptonLanguageManager.GeneralToolkitStrings.No;
+
+ kbtnYes.Text = KryptonLanguageManager.GeneralToolkitStrings.Yes;
+ }
+
+ private void kbtnYes_Click(object sender, EventArgs e)
+ {
+ DialogResult = DialogResult.Yes;
+
+ Close();
+ }
+
+ private void kbtnNo_Click(object sender, EventArgs e)
+ {
+ DialogResult = DialogResult.No;
+
+ Close();
+ }
+
+ private void kbtnDetails_Click(object sender, EventArgs e)
+ {
+ if (_updateInfoForm == null)
+ {
+ _updateInfoForm = new SharpUpdateInfoForm(_applicationInfo, _updateInfo);
+ }
+
+ // Shows the details form
+ _updateInfoForm.ShowDialog(this);
+ }
+ }
+}
\ No newline at end of file
diff --git a/Source/Krypton Toolkit/Krypton.Toolkit.Suite.Extended.Software.Updater/Sharp Update/UX/SharpUpdateDownloadForm.resx b/Source/Krypton Toolkit/Krypton.Toolkit.Suite.Extended.Software.Updater/Sharp Update/Controls Visuals/SharpUpdateAcceptForm.resx
similarity index 100%
rename from Source/Krypton Toolkit/Krypton.Toolkit.Suite.Extended.Software.Updater/Sharp Update/UX/SharpUpdateDownloadForm.resx
rename to Source/Krypton Toolkit/Krypton.Toolkit.Suite.Extended.Software.Updater/Sharp Update/Controls Visuals/SharpUpdateAcceptForm.resx
diff --git a/Source/Krypton Toolkit/Krypton.Toolkit.Suite.Extended.Software.Updater/Sharp Update/Controls Visuals/SharpUpdateDownloadForm.Designer.cs b/Source/Krypton Toolkit/Krypton.Toolkit.Suite.Extended.Software.Updater/Sharp Update/Controls Visuals/SharpUpdateDownloadForm.Designer.cs
new file mode 100644
index 000000000..b7d9b517b
--- /dev/null
+++ b/Source/Krypton Toolkit/Krypton.Toolkit.Suite.Extended.Software.Updater/Sharp Update/Controls Visuals/SharpUpdateDownloadForm.Designer.cs
@@ -0,0 +1,111 @@
+namespace Krypton.Toolkit.Suite.Extended.Software.Updater
+{
+ partial class SharpUpdateDownloadForm
+ {
+ ///
+ /// 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.kryptonPanel1 = new Krypton.Toolkit.KryptonPanel();
+ this.kpbDownloadProgress = new Krypton.Toolkit.KryptonProgressBar();
+ this.klblHeader = new Krypton.Toolkit.KryptonLabel();
+ this.klblProgress = new Krypton.Toolkit.KryptonLabel();
+ ((System.ComponentModel.ISupportInitialize)(this.kryptonPanel1)).BeginInit();
+ this.kryptonPanel1.SuspendLayout();
+ this.SuspendLayout();
+ //
+ // kryptonPanel1
+ //
+ this.kryptonPanel1.Controls.Add(this.klblProgress);
+ this.kryptonPanel1.Controls.Add(this.kpbDownloadProgress);
+ this.kryptonPanel1.Controls.Add(this.klblHeader);
+ this.kryptonPanel1.Dock = System.Windows.Forms.DockStyle.Fill;
+ this.kryptonPanel1.Location = new System.Drawing.Point(0, 0);
+ this.kryptonPanel1.Name = "kryptonPanel1";
+ this.kryptonPanel1.Size = new System.Drawing.Size(459, 182);
+ this.kryptonPanel1.TabIndex = 0;
+ //
+ // kpbDownloadProgress
+ //
+ this.kpbDownloadProgress.Location = new System.Drawing.Point(58, 109);
+ this.kpbDownloadProgress.Name = "kpbDownloadProgress";
+ this.kpbDownloadProgress.Size = new System.Drawing.Size(349, 26);
+ this.kpbDownloadProgress.StateCommon.Back.Color1 = System.Drawing.Color.Green;
+ this.kpbDownloadProgress.StateDisabled.Back.ColorStyle = Krypton.Toolkit.PaletteColorStyle.OneNote;
+ this.kpbDownloadProgress.StateNormal.Back.ColorStyle = Krypton.Toolkit.PaletteColorStyle.OneNote;
+ this.kpbDownloadProgress.TabIndex = 1;
+ this.kpbDownloadProgress.Text = "0%";
+ this.kpbDownloadProgress.UseValueAsText = true;
+ this.kpbDownloadProgress.Values.Text = "0%";
+ //
+ // klblHeader
+ //
+ this.klblHeader.Location = new System.Drawing.Point(58, 35);
+ this.klblHeader.Name = "klblHeader";
+ this.klblHeader.Size = new System.Drawing.Size(349, 49);
+ this.klblHeader.StateCommon.ShortText.Font = new System.Drawing.Font("Segoe UI", 24F, System.Drawing.FontStyle.Regular, System.Drawing.GraphicsUnit.Point, ((byte)(0)));
+ this.klblHeader.TabIndex = 0;
+ this.klblHeader.Values.Text = "Downloading Update...";
+ //
+ // klblProgress
+ //
+ this.klblProgress.AutoSize = false;
+ this.klblProgress.Location = new System.Drawing.Point(58, 142);
+ this.klblProgress.Name = "klblProgress";
+ this.klblProgress.Size = new System.Drawing.Size(349, 25);
+ this.klblProgress.StateCommon.ShortText.Font = new System.Drawing.Font("Segoe UI", 8.25F, System.Drawing.FontStyle.Regular, System.Drawing.GraphicsUnit.Point, ((byte)(0)));
+ this.klblProgress.StateCommon.ShortText.TextH = Krypton.Toolkit.PaletteRelativeAlign.Center;
+ this.klblProgress.TabIndex = 2;
+ this.klblProgress.Values.Text = "";
+ //
+ // SharpUpdateDownloadForm
+ //
+ this.AutoScaleDimensions = new System.Drawing.SizeF(6F, 13F);
+ this.AutoScaleMode = System.Windows.Forms.AutoScaleMode.Font;
+ this.ClientSize = new System.Drawing.Size(459, 182);
+ this.Controls.Add(this.kryptonPanel1);
+ this.FormBorderStyle = System.Windows.Forms.FormBorderStyle.Fixed3D;
+ this.MaximizeBox = false;
+ this.MinimizeBox = false;
+ this.Name = "SharpUpdateDownloadForm";
+ this.ShowIcon = false;
+ this.ShowInTaskbar = false;
+ this.StartPosition = System.Windows.Forms.FormStartPosition.CenterParent;
+ this.Text = "Downloading Update";
+ ((System.ComponentModel.ISupportInitialize)(this.kryptonPanel1)).EndInit();
+ this.kryptonPanel1.ResumeLayout(false);
+ this.kryptonPanel1.PerformLayout();
+ this.ResumeLayout(false);
+
+ }
+
+ #endregion
+
+ private KryptonPanel kryptonPanel1;
+ private KryptonLabel klblHeader;
+ private KryptonProgressBar kpbDownloadProgress;
+ private KryptonLabel klblProgress;
+ }
+}
\ No newline at end of file
diff --git a/Source/Krypton Toolkit/Krypton.Toolkit.Suite.Extended.Software.Updater/Sharp Update/Controls Visuals/SharpUpdateDownloadForm.cs b/Source/Krypton Toolkit/Krypton.Toolkit.Suite.Extended.Software.Updater/Sharp Update/Controls Visuals/SharpUpdateDownloadForm.cs
new file mode 100644
index 000000000..c7c4facf3
--- /dev/null
+++ b/Source/Krypton Toolkit/Krypton.Toolkit.Suite.Extended.Software.Updater/Sharp Update/Controls Visuals/SharpUpdateDownloadForm.cs
@@ -0,0 +1,164 @@
+namespace Krypton.Toolkit.Suite.Extended.Software.Updater
+{
+ public partial class SharpUpdateDownloadForm : KryptonForm
+ {
+ #region Instance Fields
+
+ ///
+ /// The web client to download the update
+ ///
+ private WebClient _webClient;
+
+ ///
+ /// The thread to hash the file on
+ ///
+ private BackgroundWorker _bgWorker;
+
+ ///
+ /// The MD5 hash of the file to download
+ ///
+ private string _md5;
+
+ #endregion
+
+ #region Properties
+
+ ///
+ /// Gets the temp file path for the downloaded file
+ ///
+ internal string TempFilePath { get; }
+
+ #endregion
+
+ public SharpUpdateDownloadForm(Uri location, string md5, Icon? programIcon)
+ {
+ InitializeComponent();
+
+ if (programIcon != null)
+ {
+ Icon = programIcon;
+ }
+
+ TempFilePath = Path.GetTempFileName();
+
+ _md5 = md5;
+
+ _webClient = new WebClient();
+
+ _webClient.DownloadProgressChanged += DownloadProgressChanged;
+
+ _webClient.DownloadFileCompleted += DownloadFileCompleted;
+
+ _bgWorker = new BackgroundWorker();
+
+ _bgWorker.DoWork += DoWork;
+
+ _bgWorker.RunWorkerCompleted += RunWorkerCompleted;
+
+ try
+ {
+ _webClient.DownloadFileAsync(location, TempFilePath);
+ }
+ catch (Exception e)
+ {
+ DialogResult = DialogResult.No;
+
+ Close();
+ }
+ }
+
+ private void RunWorkerCompleted(object sender, RunWorkerCompletedEventArgs e)
+ {
+ throw new NotImplementedException();
+ }
+
+ private void DoWork(object sender, DoWorkEventArgs e)
+ {
+ throw new NotImplementedException();
+ }
+
+ private void DownloadFileCompleted(object sender, AsyncCompletedEventArgs e)
+ {
+ if (e.Error != null)
+ {
+ DialogResult = DialogResult.No;
+
+ Close();
+ }
+ else if (e.Cancelled)
+ {
+ DialogResult = DialogResult.Abort;
+
+ Close();
+ }
+ else
+ {
+ // Show the "Hashing" label and set the progressbar to marquee
+ klblProgress.Text = ;
+
+ kpbDownloadProgress.Style = ProgressBarStyle.Marquee;
+
+ // Start the hashing
+ _bgWorker.RunWorkerAsync(new string[] { TempFilePath, _md5 });
+ }
+ }
+
+ private void DownloadProgressChanged(object sender, DownloadProgressChangedEventArgs e)
+ {
+ klblProgress.Text =
+ $"{} {FormatBytes(e.BytesReceived, 1, true)} {} {FormatBytes(e.TotalBytesToReceive, 1, true)}";
+
+ kpbDownloadProgress.Value = e.ProgressPercentage;
+ }
+
+ ///
+ /// Formats the byte count to closest byte type
+ ///
+ /// The amount of bytes
+ /// How many decimal places to show
+ /// Add the byte type on the end of the string
+ /// The bytes formatted as specified
+ private string FormatBytes(long bytes, int decimalPlaces, bool showByteType)
+ {
+ double newBytes = bytes;
+ string formatString = "{0";
+ string byteType = "B";
+
+ // Check if best size in KB
+ if (newBytes > 1024 && newBytes < 1048576)
+ {
+ newBytes /= 1024;
+ byteType = "KB";
+ }
+ else if (newBytes > 1048576 && newBytes < 1073741824)
+ {
+ // Check if best size in MB
+ newBytes /= 1048576;
+ byteType = "MB";
+ }
+ else
+ {
+ // Best size in GB
+ newBytes /= 1073741824;
+ byteType = "GB";
+ }
+
+ // Show decimals
+ if (decimalPlaces > 0)
+ formatString += ":0.";
+
+ // Add decimals
+ for (int i = 0; i < decimalPlaces; i++)
+ formatString += "0";
+
+ // Close placeholder
+ formatString += "}";
+
+ // Add byte type
+ if (showByteType)
+ formatString += byteType;
+
+ return string.Format(formatString, newBytes);
+ }
+ }
+}
diff --git a/Source/Krypton Toolkit/Krypton.Toolkit.Suite.Extended.Software.Updater/Sharp Update/UX/SharpUpdateInfoForm.resx b/Source/Krypton Toolkit/Krypton.Toolkit.Suite.Extended.Software.Updater/Sharp Update/Controls Visuals/SharpUpdateDownloadForm.resx
similarity index 100%
rename from Source/Krypton Toolkit/Krypton.Toolkit.Suite.Extended.Software.Updater/Sharp Update/UX/SharpUpdateInfoForm.resx
rename to Source/Krypton Toolkit/Krypton.Toolkit.Suite.Extended.Software.Updater/Sharp Update/Controls Visuals/SharpUpdateDownloadForm.resx
diff --git a/Source/Krypton Toolkit/Krypton.Toolkit.Suite.Extended.Software.Updater/Sharp Update/Controls Visuals/SharpUpdateInfoForm.Designer.cs b/Source/Krypton Toolkit/Krypton.Toolkit.Suite.Extended.Software.Updater/Sharp Update/Controls Visuals/SharpUpdateInfoForm.Designer.cs
new file mode 100644
index 000000000..278965015
--- /dev/null
+++ b/Source/Krypton Toolkit/Krypton.Toolkit.Suite.Extended.Software.Updater/Sharp Update/Controls Visuals/SharpUpdateInfoForm.Designer.cs
@@ -0,0 +1,165 @@
+namespace Krypton.Toolkit.Suite.Extended.Software.Updater
+{
+ partial class SharpUpdateInfoForm
+ {
+ ///
+ /// 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.kryptonPanel1 = new Krypton.Toolkit.KryptonPanel();
+ this.kryptonBorderEdge1 = new Krypton.Toolkit.KryptonBorderEdge();
+ this.kryptonPanel2 = new Krypton.Toolkit.KryptonPanel();
+ this.kbtnBack = new Krypton.Toolkit.KryptonButton();
+ this.pictureBox1 = new System.Windows.Forms.PictureBox();
+ this.kwlNewVersion = new Krypton.Toolkit.KryptonWrapLabel();
+ this.klblDescription = new Krypton.Toolkit.KryptonLabel();
+ this.krtxtDescription = new Krypton.Toolkit.KryptonRichTextBox();
+ ((System.ComponentModel.ISupportInitialize)(this.kryptonPanel1)).BeginInit();
+ this.kryptonPanel1.SuspendLayout();
+ ((System.ComponentModel.ISupportInitialize)(this.kryptonPanel2)).BeginInit();
+ this.kryptonPanel2.SuspendLayout();
+ ((System.ComponentModel.ISupportInitialize)(this.pictureBox1)).BeginInit();
+ this.SuspendLayout();
+ //
+ // kryptonPanel1
+ //
+ this.kryptonPanel1.Controls.Add(this.kbtnBack);
+ this.kryptonPanel1.Controls.Add(this.kryptonBorderEdge1);
+ this.kryptonPanel1.Dock = System.Windows.Forms.DockStyle.Bottom;
+ this.kryptonPanel1.Location = new System.Drawing.Point(0, 255);
+ this.kryptonPanel1.Name = "kryptonPanel1";
+ this.kryptonPanel1.PanelBackStyle = Krypton.Toolkit.PaletteBackStyle.PanelAlternate;
+ this.kryptonPanel1.Size = new System.Drawing.Size(284, 50);
+ this.kryptonPanel1.TabIndex = 0;
+ //
+ // kryptonBorderEdge1
+ //
+ this.kryptonBorderEdge1.BorderStyle = Krypton.Toolkit.PaletteBorderStyle.HeaderPrimary;
+ this.kryptonBorderEdge1.Dock = System.Windows.Forms.DockStyle.Top;
+ this.kryptonBorderEdge1.Location = new System.Drawing.Point(0, 0);
+ this.kryptonBorderEdge1.Name = "kryptonBorderEdge1";
+ this.kryptonBorderEdge1.Size = new System.Drawing.Size(284, 1);
+ this.kryptonBorderEdge1.Text = "kryptonBorderEdge1";
+ //
+ // kryptonPanel2
+ //
+ this.kryptonPanel2.Controls.Add(this.krtxtDescription);
+ this.kryptonPanel2.Controls.Add(this.klblDescription);
+ this.kryptonPanel2.Controls.Add(this.kwlNewVersion);
+ this.kryptonPanel2.Controls.Add(this.pictureBox1);
+ this.kryptonPanel2.Dock = System.Windows.Forms.DockStyle.Fill;
+ this.kryptonPanel2.Location = new System.Drawing.Point(0, 0);
+ this.kryptonPanel2.Name = "kryptonPanel2";
+ this.kryptonPanel2.Size = new System.Drawing.Size(284, 255);
+ this.kryptonPanel2.TabIndex = 1;
+ //
+ // kbtnBack
+ //
+ this.kbtnBack.Location = new System.Drawing.Point(96, 13);
+ this.kbtnBack.Name = "kbtnBack";
+ this.kbtnBack.Size = new System.Drawing.Size(90, 25);
+ this.kbtnBack.TabIndex = 1;
+ this.kbtnBack.Values.Text = "kryptonButton1";
+ this.kbtnBack.Click += new System.EventHandler(this.kbtnBack_Click);
+ //
+ // pictureBox1
+ //
+ this.pictureBox1.BackColor = System.Drawing.Color.Transparent;
+ this.pictureBox1.Image = global::Krypton.Toolkit.Suite.Extended.Software.Updater.Properties.Resources.update_48_x_48;
+ this.pictureBox1.Location = new System.Drawing.Point(13, 13);
+ this.pictureBox1.Name = "pictureBox1";
+ this.pictureBox1.Size = new System.Drawing.Size(48, 48);
+ this.pictureBox1.SizeMode = System.Windows.Forms.PictureBoxSizeMode.AutoSize;
+ this.pictureBox1.TabIndex = 0;
+ this.pictureBox1.TabStop = false;
+ //
+ // kwlNewVersion
+ //
+ this.kwlNewVersion.AutoSize = false;
+ this.kwlNewVersion.Font = new System.Drawing.Font("Segoe UI", 9F, System.Drawing.FontStyle.Regular, System.Drawing.GraphicsUnit.Point, ((byte)(0)));
+ this.kwlNewVersion.ForeColor = System.Drawing.Color.FromArgb(((int)(((byte)(30)))), ((int)(((byte)(57)))), ((int)(((byte)(91)))));
+ this.kwlNewVersion.LabelStyle = Krypton.Toolkit.LabelStyle.AlternateControl;
+ this.kwlNewVersion.Location = new System.Drawing.Point(67, 13);
+ this.kwlNewVersion.Name = "kwlNewVersion";
+ this.kwlNewVersion.Size = new System.Drawing.Size(205, 48);
+ this.kwlNewVersion.StateCommon.Font = new System.Drawing.Font("Segoe UI", 9F, System.Drawing.FontStyle.Regular, System.Drawing.GraphicsUnit.Point, ((byte)(0)));
+ this.kwlNewVersion.TextAlign = System.Drawing.ContentAlignment.MiddleLeft;
+ //
+ // klblDescription
+ //
+ this.klblDescription.Location = new System.Drawing.Point(13, 68);
+ this.klblDescription.Name = "klblDescription";
+ this.klblDescription.Size = new System.Drawing.Size(87, 19);
+ this.klblDescription.StateCommon.ShortText.Font = new System.Drawing.Font("Segoe UI", 8.25F, System.Drawing.FontStyle.Bold, System.Drawing.GraphicsUnit.Point, ((byte)(0)));
+ this.klblDescription.TabIndex = 3;
+ this.klblDescription.Values.Text = "kryptonLabel1";
+ //
+ // krtxtDescription
+ //
+ this.krtxtDescription.Location = new System.Drawing.Point(13, 94);
+ this.krtxtDescription.Name = "krtxtDescription";
+ this.krtxtDescription.ReadOnly = true;
+ this.krtxtDescription.Size = new System.Drawing.Size(259, 155);
+ this.krtxtDescription.TabIndex = 4;
+ this.krtxtDescription.Text = "";
+ this.krtxtDescription.KeyDown += new System.Windows.Forms.KeyEventHandler(this.krtxtDescription_KeyDown);
+ //
+ // SharpUpdateInfoForm
+ //
+ this.AutoScaleDimensions = new System.Drawing.SizeF(6F, 13F);
+ this.AutoScaleMode = System.Windows.Forms.AutoScaleMode.Font;
+ this.ClientSize = new System.Drawing.Size(284, 305);
+ this.Controls.Add(this.kryptonPanel2);
+ this.Controls.Add(this.kryptonPanel1);
+ this.FormBorderStyle = System.Windows.Forms.FormBorderStyle.Fixed3D;
+ this.MaximizeBox = false;
+ this.MinimizeBox = false;
+ this.Name = "SharpUpdateInfoForm";
+ this.ShowIcon = false;
+ this.ShowInTaskbar = false;
+ this.StartPosition = System.Windows.Forms.FormStartPosition.CenterParent;
+ ((System.ComponentModel.ISupportInitialize)(this.kryptonPanel1)).EndInit();
+ this.kryptonPanel1.ResumeLayout(false);
+ this.kryptonPanel1.PerformLayout();
+ ((System.ComponentModel.ISupportInitialize)(this.kryptonPanel2)).EndInit();
+ this.kryptonPanel2.ResumeLayout(false);
+ this.kryptonPanel2.PerformLayout();
+ ((System.ComponentModel.ISupportInitialize)(this.pictureBox1)).EndInit();
+ this.ResumeLayout(false);
+
+ }
+
+ #endregion
+
+ private KryptonPanel kryptonPanel1;
+ private KryptonBorderEdge kryptonBorderEdge1;
+ private KryptonPanel kryptonPanel2;
+ private KryptonButton kbtnBack;
+ private PictureBox pictureBox1;
+ private KryptonWrapLabel kwlNewVersion;
+ private KryptonLabel klblDescription;
+ private KryptonRichTextBox krtxtDescription;
+ }
+}
\ No newline at end of file
diff --git a/Source/Krypton Toolkit/Krypton.Toolkit.Suite.Extended.Software.Updater/Sharp Update/Controls Visuals/SharpUpdateInfoForm.cs b/Source/Krypton Toolkit/Krypton.Toolkit.Suite.Extended.Software.Updater/Sharp Update/Controls Visuals/SharpUpdateInfoForm.cs
new file mode 100644
index 000000000..944f604eb
--- /dev/null
+++ b/Source/Krypton Toolkit/Krypton.Toolkit.Suite.Extended.Software.Updater/Sharp Update/Controls Visuals/SharpUpdateInfoForm.cs
@@ -0,0 +1,35 @@
+namespace Krypton.Toolkit.Suite.Extended.Software.Updater
+{
+ public partial class SharpUpdateInfoForm : KryptonForm
+ {
+ public SharpUpdateInfoForm(SharpUpdateLocalAppInfo applicationInfo, SharpUpdateXml updateInfo)
+ {
+ InitializeComponent();
+
+ // Sets the icon if it's not null
+ if (applicationInfo.ApplicationIcon != null)
+ {
+ Icon = applicationInfo.ApplicationIcon;
+ }
+
+ // Fill in the UI
+ Text = $@"{applicationInfo.ApplicationName} - Update Info";
+
+ kwlNewVersion.Text = updateInfo.Tag == JobType.UPDATE ? $"Current Version: {applicationInfo.Version}\nUpdate version: {updateInfo.Version}" :
+ (updateInfo.Tag == JobType.ADD ? $"Version: {updateInfo.Version}" : "");
+
+ krtxtDescription.Text = updateInfo.Description;
+ }
+
+ private void kbtnBack_Click(object sender, EventArgs e) => Close();
+
+ private void krtxtDescription_KeyDown(object sender, KeyEventArgs e)
+ {
+ // Only allow Ctrl + C to copy text
+ if (!(e.Control && e.KeyCode == Keys.C))
+ {
+ e.SuppressKeyPress = true;
+ }
+ }
+ }
+}
diff --git a/Source/Krypton Toolkit/Krypton.Toolkit.Suite.Extended.Software.Updater/NetSparkle/UX/NetSparkleToastNotifierWindow.resx b/Source/Krypton Toolkit/Krypton.Toolkit.Suite.Extended.Software.Updater/Sharp Update/Controls Visuals/SharpUpdateInfoForm.resx
similarity index 70%
rename from Source/Krypton Toolkit/Krypton.Toolkit.Suite.Extended.Software.Updater/NetSparkle/UX/NetSparkleToastNotifierWindow.resx
rename to Source/Krypton Toolkit/Krypton.Toolkit.Suite.Extended.Software.Updater/Sharp Update/Controls Visuals/SharpUpdateInfoForm.resx
index 2003f9b7e..1af7de150 100644
--- a/Source/Krypton Toolkit/Krypton.Toolkit.Suite.Extended.Software.Updater/NetSparkle/UX/NetSparkleToastNotifierWindow.resx
+++ b/Source/Krypton Toolkit/Krypton.Toolkit.Suite.Extended.Software.Updater/Sharp Update/Controls Visuals/SharpUpdateInfoForm.resx
@@ -117,36 +117,4 @@
System.Resources.ResXResourceWriter, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089
-
-
-
- iVBORw0KGgoAAAANSUhEUgAAAUoAAABkCAYAAADg+Hn3AAAAAXNSR0IArs4c6QAAAARnQU1BAACxjwv8
- YQUAAAAJcEhZcwAADsMAAA7DAcdvqGQAAAGYSURBVHhe7djRSQRAEERB070YzcEwTENROEGUeR1AfRTL
- JvBo5uX17f3j8Xj88Pf39/f//X95fgD4SygBglACDL5vlAD8z6IECEIJEIQSYOBGCXCwKAGCUAIEoQQY
- uFECHCxKgCCUAEEoAQZulAAHixIgCCVAEEqAgRslwMGiBAhCCRCEEmDgRglwsCgBglACBKEEGLhRAhws
- SoAglABBKAEGbpQAB4sSIAglQBBKgIEbJcDBogQIQgkQhBJg4EYJcLAoAYJQAgShBBi4UQIcLEqAIJQA
- QSgBBm6UAAeLEiAIJUAQSoCBGyXAwaIECEIJEIQSYOBGCXCwKAGCUAIEoQQYuFECHCxKgCCUAEEoAQZu
- lAAHixIgCCVAEEqAgRslwMGiBAhCCRCEEmDgRglwsCgBglACBKEEGLhRAhwsSoAglABBKAEGbpQAB4sS
- IAglQBBKgIEbJcDBogQIQgkQhBJg4EYJcLAoAYJQAgShBBi4UQIcLEqAIJQAQSgBBm6UAAeLEiAIJUD4
- Fcqv98nf39/f//l///gEy/sxAhS5jXYAAAAASUVORK5CYII=
-
-
-
-
- iVBORw0KGgoAAAANSUhEUgAAAP4AAABeCAYAAAADiqm/AAAAAXNSR0IArs4c6QAAAARnQU1BAACxjwv8
- YQUAAAAJcEhZcwAADsMAAA7DAcdvqGQAAAHuSURBVHhe7dfBSQQADETRbX6rsgfL2DZWEBREpoGfd3iH
- XAcmIY+Pz9f7+Xz+MpvN/fnxM/CXXChT/EEulCk+HPT94/OfhUiZiz/IhTLFH+RCmeLDQX78wUKkzMUf
- 5EKZ4g9yoUzx4SA//mAhUubiD3KhTPEHuVCm+HCQH3+wEClz8Qe5UKb4g1woU3w4yI8/WIiUufiDXChT
- /EEulCk+HOTHHyxEylz8QS6UKf4gF8oUHw7y4w8WImUu/iAXyhR/kAtlig8H+fEHC5EyF3+QC2WKP8iF
- MsWHg/z4g4VImYs/yIUyxR/kQpniw0F+/MFCpMzFH+RCmeIPcqFM8eEgP/5gIVLm4g9yoUzxB7lQpvhw
- kB9/sBApc/EHuVCm+INcKFN8OMiPP1iIlLn4g1woU/xBLpQpPhzkxx8sRMpc/EEulCn+IBfKFB8O8uMP
- FiJlLv4gF8oUf5ALZYoPB/nxBwuRMhd/kAtlij/IhTLFh4P8+IOFSJmLP8iFMsUf5EKZ4sNBfvzBQqTM
- xR/kQpniD3KhTPHhID/+YCFS5uIPcqFM8Qe5UKb4cJAff7AQKXPxB7lQpviDXChTfDjIjz9YiJS5+INc
- KFP8QS6UKT4c5McfLETKXPxBLpQp/iAXyhQfDlL8QS6UKf4gF7pe7y90Q9A7UbF14gAAAABJRU5ErkJg
- gg==
-
-
-
- 17, 17
-
\ No newline at end of file
diff --git a/Source/Krypton Toolkit/Krypton.Toolkit.Suite.Extended.Software.Updater/Sharp Update/Controls/SharpUpdateLanguageManager.cs b/Source/Krypton Toolkit/Krypton.Toolkit.Suite.Extended.Software.Updater/Sharp Update/Controls/SharpUpdateLanguageManager.cs
new file mode 100644
index 000000000..a5713914b
--- /dev/null
+++ b/Source/Krypton Toolkit/Krypton.Toolkit.Suite.Extended.Software.Updater/Sharp Update/Controls/SharpUpdateLanguageManager.cs
@@ -0,0 +1,30 @@
+namespace Krypton.Toolkit.Suite.Extended.Software.Updater
+{
+ [Category(@"Code")]
+ [Description(@"Access 'Global' Krypton string settings.")]
+ [ToolboxItem(true)]
+ public class SharpUpdateLanguageManager : Component
+ {
+ #region Public
+
+ [Category(@"Visuals")]
+ [Description(@"Collection of SharpUpdateInfoForm strings.")]
+ [MergableProperty(false)]
+ [DesignerSerializationVisibility(DesignerSerializationVisibility.Content)]
+ [Localizable(true)]
+ public SharpUpdateInfoFormStrings SharpUpdateInfoFormStrings => InfoFormStrings;
+
+ private bool ShouldSerializeSharpUpdateInfoFormStringsStrings() => !InfoFormStrings.IsDefault;
+
+ /// Resets the color strings.
+ public void ResetSharpUpdateInfoFormStringsStrings() => InfoFormStrings.Reset();
+
+ #endregion
+
+ #region Static Strings
+
+ public static SharpUpdateInfoFormStrings InfoFormStrings { get; } = new SharpUpdateInfoFormStrings();
+
+ #endregion
+ }
+}
\ No newline at end of file
diff --git a/Source/Krypton Toolkit/Krypton.Toolkit.Suite.Extended.Software.Updater/Sharp Update/Enumerations/HashType.cs b/Source/Krypton Toolkit/Krypton.Toolkit.Suite.Extended.Software.Updater/Sharp Update/Enumerations/HashType.cs
index 36604ffb0..d01e7f507 100644
--- a/Source/Krypton Toolkit/Krypton.Toolkit.Suite.Extended.Software.Updater/Sharp Update/Enumerations/HashType.cs
+++ b/Source/Krypton Toolkit/Krypton.Toolkit.Suite.Extended.Software.Updater/Sharp Update/Enumerations/HashType.cs
@@ -1,41 +1,14 @@
-#region MIT License
-/*
- * MIT License
- *
- * Copyright (c) 2017 - 2023 Krypton Suite
- *
- * Permission is hereby granted, free of charge, to any person obtaining a copy
- * of this software and associated documentation files (the "Software"), to deal
- * in the Software without restriction, including without limitation the rights
- * to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
- * copies of the Software, and to permit persons to whom the Software is
- * furnished to do so, subject to the following conditions:
- *
- * The above copyright notice and this permission notice shall be included in all
- * copies or substantial portions of the Software.
- *
- * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
- * IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
- * FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
- * AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
- * LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
- * OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE
- * SOFTWARE.
- *
- */
-#endregion
-
-namespace Krypton.Toolkit.Suite.Extended.Software.Updater.SharpUpdate
+namespace Krypton.Toolkit.Suite.Extended.Software.Updater
{
///
/// The type of hash to create
///
internal enum HashType
{
- Md5,
- Sha1,
- Sha256,
- Sha384,
- Sha512
+ MD5 = 0,
+ SHA1 = 1,
+ SHA256 = 2,
+ SHA384 = 3,
+ SHA512 = 4
}
}
\ No newline at end of file
diff --git a/Source/Krypton Toolkit/Krypton.Toolkit.Suite.Extended.Software.Updater/Sharp Update/Enumerations/JobType.cs b/Source/Krypton Toolkit/Krypton.Toolkit.Suite.Extended.Software.Updater/Sharp Update/Enumerations/JobType.cs
index 0796c19fe..0dcd7dd10 100644
--- a/Source/Krypton Toolkit/Krypton.Toolkit.Suite.Extended.Software.Updater/Sharp Update/Enumerations/JobType.cs
+++ b/Source/Krypton Toolkit/Krypton.Toolkit.Suite.Extended.Software.Updater/Sharp Update/Enumerations/JobType.cs
@@ -1,36 +1,9 @@
-#region MIT License
-/*
- * MIT License
- *
- * Copyright (c) 2017 - 2023 Krypton Suite
- *
- * Permission is hereby granted, free of charge, to any person obtaining a copy
- * of this software and associated documentation files (the "Software"), to deal
- * in the Software without restriction, including without limitation the rights
- * to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
- * copies of the Software, and to permit persons to whom the Software is
- * furnished to do so, subject to the following conditions:
- *
- * The above copyright notice and this permission notice shall be included in all
- * copies or substantial portions of the Software.
- *
- * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
- * IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
- * FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
- * AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
- * LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
- * OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE
- * SOFTWARE.
- *
- */
-#endregion
-
-namespace Krypton.Toolkit.Suite.Extended.Software.Updater.SharpUpdate
+namespace Krypton.Toolkit.Suite.Extended.Software.Updater
{
public enum JobType
{
- Update,
- Add,
- Remove
+ UPDATE = 0,
+ ADD = 1,
+ REMOVE = 2,
}
}
\ No newline at end of file
diff --git a/Source/Krypton Toolkit/Krypton.Toolkit.Suite.Extended.Software.Updater/Sharp Update/Translations/SharpUpdateAcceptFormStrings.cs b/Source/Krypton Toolkit/Krypton.Toolkit.Suite.Extended.Software.Updater/Sharp Update/Translations/SharpUpdateAcceptFormStrings.cs
new file mode 100644
index 000000000..c6881e500
--- /dev/null
+++ b/Source/Krypton Toolkit/Krypton.Toolkit.Suite.Extended.Software.Updater/Sharp Update/Translations/SharpUpdateAcceptFormStrings.cs
@@ -0,0 +1,24 @@
+namespace Krypton.Toolkit.Suite.Extended.Software.Updater
+{
+ [TypeConverter(typeof(ExpandableObjectConverter))]
+ public class SharpUpdateAcceptFormStrings : GlobalId
+ {
+ #region Static Fields
+
+
+
+ #endregion
+
+ #region Identity
+
+
+
+ #endregion
+
+ #region Public
+
+
+
+ #endregion
+ }
+}
\ No newline at end of file
diff --git a/Source/Krypton Toolkit/Krypton.Toolkit.Suite.Extended.Software.Updater/Sharp Update/Translations/SharpUpdateDownloadFormStrings.cs b/Source/Krypton Toolkit/Krypton.Toolkit.Suite.Extended.Software.Updater/Sharp Update/Translations/SharpUpdateDownloadFormStrings.cs
new file mode 100644
index 000000000..79bb8b565
--- /dev/null
+++ b/Source/Krypton Toolkit/Krypton.Toolkit.Suite.Extended.Software.Updater/Sharp Update/Translations/SharpUpdateDownloadFormStrings.cs
@@ -0,0 +1,24 @@
+namespace Krypton.Toolkit.Suite.Extended.Software.Updater
+{
+ [TypeConverter(typeof(ExpandableObjectConverter))]
+ public class SharpUpdateDownloadFormStrings : GlobalId
+ {
+ #region Static Fields
+
+
+
+ #endregion
+
+ #region Identity
+
+
+
+ #endregion
+
+ #region Public
+
+
+
+ #endregion
+ }
+}
\ No newline at end of file
diff --git a/Source/Krypton Toolkit/Krypton.Toolkit.Suite.Extended.Software.Updater/Sharp Update/Translations/SharpUpdateGeneralStrings.cs b/Source/Krypton Toolkit/Krypton.Toolkit.Suite.Extended.Software.Updater/Sharp Update/Translations/SharpUpdateGeneralStrings.cs
new file mode 100644
index 000000000..0062e4c65
--- /dev/null
+++ b/Source/Krypton Toolkit/Krypton.Toolkit.Suite.Extended.Software.Updater/Sharp Update/Translations/SharpUpdateGeneralStrings.cs
@@ -0,0 +1,24 @@
+namespace Krypton.Toolkit.Suite.Extended.Software.Updater
+{
+ [TypeConverter(typeof(ExpandableObjectConverter))]
+ public class SharpUpdateGeneralStrings : GlobalId
+ {
+ #region Static Fields
+
+
+
+ #endregion
+
+ #region Identity
+
+
+
+ #endregion
+
+ #region Public
+
+
+
+ #endregion
+ }
+}
\ No newline at end of file
diff --git a/Source/Krypton Toolkit/Krypton.Toolkit.Suite.Extended.Software.Updater/Sharp Update/Translations/SharpUpdateInfoFormStrings.cs b/Source/Krypton Toolkit/Krypton.Toolkit.Suite.Extended.Software.Updater/Sharp Update/Translations/SharpUpdateInfoFormStrings.cs
new file mode 100644
index 000000000..83b3973d3
--- /dev/null
+++ b/Source/Krypton Toolkit/Krypton.Toolkit.Suite.Extended.Software.Updater/Sharp Update/Translations/SharpUpdateInfoFormStrings.cs
@@ -0,0 +1,126 @@
+namespace Krypton.Toolkit.Suite.Extended.Software.Updater
+{
+ [TypeConverter(typeof(ExpandableObjectConverter))]
+ public class SharpUpdateInfoFormStrings : GlobalId
+ {
+ #region Static Fields
+
+ private const string DEFAULT_DETAILS = @"Details...";
+
+ private const string DEFAULT_HEADER = @"An update is available!\r\nWould you like to update?";
+
+ private const string DEFAULT_TITLE = @"Available Update";
+
+ private const string DEFAULT_UPDATE = @"Update";
+
+ private const string DEFAULT_NEW_VERSION = @"New Version";
+
+ private const string DEFAULT_NEW = @"New";
+
+ private const string DEFAULT_VERSION = @"Version";
+
+ private const string DEFAULT_REMOVE = @"Remove";
+
+ #endregion
+
+ #region Identity
+
+ public SharpUpdateInfoFormStrings()
+ {
+ Reset();
+ }
+
+ public override string ToString() => !IsDefault ? "Modified" : string.Empty;
+
+ #endregion
+
+ #region Public
+
+ [Browsable(false)]
+ public bool IsDefault => Details.Equals(DEFAULT_DETAILS) &&
+ Header.Equals(DEFAULT_HEADER) &&
+ Title.Equals(DEFAULT_TITLE) &&
+ Update.Equals(DEFAULT_UPDATE) &&
+ NewVersion.Equals(DEFAULT_NEW_VERSION) &&
+ New.Equals(DEFAULT_NEW) &&
+ Version.Equals(DEFAULT_VERSION) &&
+ Remove.Equals(DEFAULT_REMOVE);
+
+ public void Reset()
+ {
+ Details = DEFAULT_DETAILS;
+
+ Header = DEFAULT_HEADER;
+
+ Title = DEFAULT_TITLE;
+
+ Update = DEFAULT_UPDATE;
+
+ NewVersion = DEFAULT_NEW_VERSION;
+
+ New = DEFAULT_NEW;
+
+ Version = DEFAULT_VERSION;
+
+ Remove = DEFAULT_REMOVE;
+ }
+
+ [Localizable(true)]
+ [Category(@"Visuals")]
+ [Description(@"Localised details string.")]
+ [DefaultValue(DEFAULT_DETAILS)]
+ [RefreshProperties(RefreshProperties.All)]
+ public string Details { get; set; }
+
+ [Localizable(true)]
+ [Category(@"Visuals")]
+ [Description(@"Localised header string.")]
+ [DefaultValue(DEFAULT_HEADER)]
+ [RefreshProperties(RefreshProperties.All)]
+ public string Header { get; set; }
+
+ [Localizable(true)]
+ [Category(@"Visuals")]
+ [Description(@"Localised title string.")]
+ [DefaultValue(DEFAULT_TITLE)]
+ [RefreshProperties(RefreshProperties.All)]
+ public string Title { get; set; }
+
+ [Localizable(true)]
+ [Category(@"Visuals")]
+ [Description(@"Localised update string.")]
+ [DefaultValue(DEFAULT_UPDATE)]
+ [RefreshProperties(RefreshProperties.All)]
+ public string Update { get; set; }
+
+ [Localizable(true)]
+ [Category(@"Visuals")]
+ [Description(@"Localised new version string.")]
+ [DefaultValue(DEFAULT_NEW_VERSION)]
+ [RefreshProperties(RefreshProperties.All)]
+ public string NewVersion { get; set; }
+
+ [Localizable(true)]
+ [Category(@"Visuals")]
+ [Description(@"Localised new string.")]
+ [DefaultValue(DEFAULT_NEW)]
+ [RefreshProperties(RefreshProperties.All)]
+ public string New { get; set; }
+
+ [Localizable(true)]
+ [Category(@"Visuals")]
+ [Description(@"Localised version string.")]
+ [DefaultValue(DEFAULT_VERSION)]
+ [RefreshProperties(RefreshProperties.All)]
+ public string Version { get; set; }
+
+ [Localizable(true)]
+ [Category(@"Visuals")]
+ [Description(@"Localised remove string.")]
+ [DefaultValue(DEFAULT_REMOVE)]
+ [RefreshProperties(RefreshProperties.All)]
+ public string Remove { get; set; }
+
+ #endregion
+ }
+}
\ No newline at end of file
diff --git a/Source/Krypton Toolkit/Krypton.Toolkit.Suite.Extended.Software.Updater/Sharp Update/UX/SharpUpdateAcceptForm.cs b/Source/Krypton Toolkit/Krypton.Toolkit.Suite.Extended.Software.Updater/Sharp Update/UX/SharpUpdateAcceptForm.cs
deleted file mode 100644
index 9ee64dea3..000000000
--- a/Source/Krypton Toolkit/Krypton.Toolkit.Suite.Extended.Software.Updater/Sharp Update/UX/SharpUpdateAcceptForm.cs
+++ /dev/null
@@ -1,245 +0,0 @@
-#region MIT License
-/*
- * MIT License
- *
- * Copyright (c) 2017 - 2023 Krypton Suite
- *
- * Permission is hereby granted, free of charge, to any person obtaining a copy
- * of this software and associated documentation files (the "Software"), to deal
- * in the Software without restriction, including without limitation the rights
- * to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
- * copies of the Software, and to permit persons to whom the Software is
- * furnished to do so, subject to the following conditions:
- *
- * The above copyright notice and this permission notice shall be included in all
- * copies or substantial portions of the Software.
- *
- * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
- * IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
- * FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
- * AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
- * LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
- * OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE
- * SOFTWARE.
- *
- */
-#endregion
-
-namespace Krypton.Toolkit.Suite.Extended.Software.Updater.SharpUpdate
-{
- public class SharpUpdateAcceptForm : KryptonForm
- {
- #region Design Code
- private KryptonPanel kryptonPanel1;
- private KryptonButton kbtnYes;
- private KryptonButton kbtnNo;
- private KryptonButton kbtnDetails;
- private KryptonBorderEdge kryptonBorderEdge1;
- private KryptonPanel kryptonPanel2;
- private PictureBox pictureBox;
- private KryptonWrapLabel kwlblNewVersion;
- private KryptonWrapLabel kwlblUpdateAvail;
-
- private void InitializeComponent()
- {
- System.ComponentModel.ComponentResourceManager resources = new System.ComponentModel.ComponentResourceManager(typeof(SharpUpdateAcceptForm));
- this.kryptonPanel1 = new Krypton.Toolkit.KryptonPanel();
- this.kbtnYes = new Krypton.Toolkit.KryptonButton();
- this.kbtnNo = new Krypton.Toolkit.KryptonButton();
- this.kbtnDetails = new Krypton.Toolkit.KryptonButton();
- this.kryptonBorderEdge1 = new Krypton.Toolkit.KryptonBorderEdge();
- this.kryptonPanel2 = new Krypton.Toolkit.KryptonPanel();
- this.pictureBox = new System.Windows.Forms.PictureBox();
- this.kwlblNewVersion = new Krypton.Toolkit.KryptonWrapLabel();
- this.kwlblUpdateAvail = new Krypton.Toolkit.KryptonWrapLabel();
- ((System.ComponentModel.ISupportInitialize)(this.kryptonPanel1)).BeginInit();
- this.kryptonPanel1.SuspendLayout();
- ((System.ComponentModel.ISupportInitialize)(this.kryptonPanel2)).BeginInit();
- this.kryptonPanel2.SuspendLayout();
- ((System.ComponentModel.ISupportInitialize)(this.pictureBox)).BeginInit();
- this.SuspendLayout();
- //
- // kryptonPanel1
- //
- this.kryptonPanel1.Controls.Add(this.kbtnYes);
- this.kryptonPanel1.Controls.Add(this.kbtnNo);
- this.kryptonPanel1.Controls.Add(this.kbtnDetails);
- this.kryptonPanel1.Controls.Add(this.kryptonBorderEdge1);
- this.kryptonPanel1.Dock = System.Windows.Forms.DockStyle.Bottom;
- this.kryptonPanel1.Location = new System.Drawing.Point(0, 153);
- this.kryptonPanel1.Name = "kryptonPanel1";
- this.kryptonPanel1.PanelBackStyle = Krypton.Toolkit.PaletteBackStyle.PanelAlternate;
- this.kryptonPanel1.Size = new System.Drawing.Size(399, 50);
- this.kryptonPanel1.TabIndex = 0;
- //
- // kbtnYes
- //
- this.kbtnYes.Anchor = ((System.Windows.Forms.AnchorStyles)((System.Windows.Forms.AnchorStyles.Bottom | System.Windows.Forms.AnchorStyles.Right)));
- this.kbtnYes.DialogResult = System.Windows.Forms.DialogResult.Yes;
- this.kbtnYes.Location = new System.Drawing.Point(105, 13);
- this.kbtnYes.Name = "kbtnYes";
- this.kbtnYes.Size = new System.Drawing.Size(90, 25);
- this.kbtnYes.TabIndex = 2;
- this.kbtnYes.Values.Text = "&Yes";
- this.kbtnYes.Click += new System.EventHandler(this.kbtnYes_Click);
- //
- // kbtnNo
- //
- this.kbtnNo.Anchor = ((System.Windows.Forms.AnchorStyles)((System.Windows.Forms.AnchorStyles.Bottom | System.Windows.Forms.AnchorStyles.Right)));
- this.kbtnNo.DialogResult = System.Windows.Forms.DialogResult.No;
- this.kbtnNo.Location = new System.Drawing.Point(201, 13);
- this.kbtnNo.Name = "kbtnNo";
- this.kbtnNo.Size = new System.Drawing.Size(90, 25);
- this.kbtnNo.TabIndex = 1;
- this.kbtnNo.Values.Text = "&No";
- this.kbtnNo.Click += new System.EventHandler(this.kbtnNo_Click);
- //
- // kbtnDetails
- //
- this.kbtnDetails.Anchor = ((System.Windows.Forms.AnchorStyles)((System.Windows.Forms.AnchorStyles.Bottom | System.Windows.Forms.AnchorStyles.Right)));
- this.kbtnDetails.Location = new System.Drawing.Point(297, 13);
- this.kbtnDetails.Name = "kbtnDetails";
- this.kbtnDetails.Size = new System.Drawing.Size(90, 25);
- this.kbtnDetails.TabIndex = 0;
- this.kbtnDetails.Values.Text = "Detai&ls";
- this.kbtnDetails.Click += new System.EventHandler(this.kbtnDetails_Click);
- //
- // kryptonBorderEdge1
- //
- this.kryptonBorderEdge1.BorderStyle = Krypton.Toolkit.PaletteBorderStyle.HeaderSecondary;
- this.kryptonBorderEdge1.Dock = System.Windows.Forms.DockStyle.Top;
- this.kryptonBorderEdge1.Location = new System.Drawing.Point(0, 0);
- this.kryptonBorderEdge1.Name = "kryptonBorderEdge1";
- this.kryptonBorderEdge1.Size = new System.Drawing.Size(399, 1);
- this.kryptonBorderEdge1.Text = "kryptonBorderEdge1";
- //
- // kryptonPanel2
- //
- this.kryptonPanel2.Controls.Add(this.pictureBox);
- this.kryptonPanel2.Controls.Add(this.kwlblNewVersion);
- this.kryptonPanel2.Controls.Add(this.kwlblUpdateAvail);
- this.kryptonPanel2.Dock = System.Windows.Forms.DockStyle.Fill;
- this.kryptonPanel2.Location = new System.Drawing.Point(0, 0);
- this.kryptonPanel2.Name = "kryptonPanel2";
- this.kryptonPanel2.Size = new System.Drawing.Size(399, 153);
- this.kryptonPanel2.TabIndex = 1;
- //
- // pictureBox
- //
- this.pictureBox.BackColor = System.Drawing.Color.Transparent;
- this.pictureBox.Image = global::Krypton.Toolkit.Suite.Extended.Software.Updater.Properties.Resources.throbber_80;
- this.pictureBox.InitialImage = ((System.Drawing.Image)(resources.GetObject("pictureBox.InitialImage")));
- this.pictureBox.Location = new System.Drawing.Point(12, 12);
- this.pictureBox.Name = "pictureBox";
- this.pictureBox.Size = new System.Drawing.Size(80, 80);
- this.pictureBox.SizeMode = System.Windows.Forms.PictureBoxSizeMode.StretchImage;
- this.pictureBox.TabIndex = 2;
- this.pictureBox.TabStop = false;
- //
- // kwlblNewVersion
- //
- this.kwlblNewVersion.AutoSize = false;
- this.kwlblNewVersion.Font = new System.Drawing.Font("Segoe UI", 9F);
- this.kwlblNewVersion.ForeColor = System.Drawing.Color.FromArgb(((int)(((byte)(30)))), ((int)(((byte)(57)))), ((int)(((byte)(91)))));
- this.kwlblNewVersion.Location = new System.Drawing.Point(106, 81);
- this.kwlblNewVersion.Name = "kwlblNewVersion";
- this.kwlblNewVersion.Size = new System.Drawing.Size(281, 58);
- this.kwlblNewVersion.TextAlign = System.Drawing.ContentAlignment.MiddleCenter;
- //
- // kwlblUpdateAvail
- //
- this.kwlblUpdateAvail.AutoSize = false;
- this.kwlblUpdateAvail.Font = new System.Drawing.Font("Microsoft Sans Serif", 12F, System.Drawing.FontStyle.Bold, System.Drawing.GraphicsUnit.Point, ((byte)(0)));
- this.kwlblUpdateAvail.ForeColor = System.Drawing.Color.FromArgb(((int)(((byte)(30)))), ((int)(((byte)(57)))), ((int)(((byte)(91)))));
- this.kwlblUpdateAvail.Location = new System.Drawing.Point(106, 12);
- this.kwlblUpdateAvail.Name = "kwlblUpdateAvail";
- this.kwlblUpdateAvail.Size = new System.Drawing.Size(281, 65);
- this.kwlblUpdateAvail.StateCommon.Font = new System.Drawing.Font("Microsoft Sans Serif", 12F, System.Drawing.FontStyle.Bold, System.Drawing.GraphicsUnit.Point, ((byte)(0)));
- this.kwlblUpdateAvail.Text = "An update is available!\r\nWould you like to update?";
- this.kwlblUpdateAvail.TextAlign = System.Drawing.ContentAlignment.MiddleCenter;
- //
- // SharpUpdateAcceptForm
- //
- this.ClientSize = new System.Drawing.Size(399, 203);
- this.Controls.Add(this.kryptonPanel2);
- this.Controls.Add(this.kryptonPanel1);
- this.FormBorderStyle = System.Windows.Forms.FormBorderStyle.FixedDialog;
- this.MaximizeBox = false;
- this.MinimizeBox = false;
- this.Name = "SharpUpdateAcceptForm";
- this.ShowIcon = false;
- this.StartPosition = System.Windows.Forms.FormStartPosition.CenterParent;
- ((System.ComponentModel.ISupportInitialize)(this.kryptonPanel1)).EndInit();
- this.kryptonPanel1.ResumeLayout(false);
- this.kryptonPanel1.PerformLayout();
- ((System.ComponentModel.ISupportInitialize)(this.kryptonPanel2)).EndInit();
- this.kryptonPanel2.ResumeLayout(false);
- ((System.ComponentModel.ISupportInitialize)(this.pictureBox)).EndInit();
- this.ResumeLayout(false);
-
- }
- #endregion
-
- #region Variables
- ///
- /// The program to update's info
- ///
- private SharpUpdateLocalAppInfo _applicationInfo;
-
- ///
- /// The update info from the update.xml
- ///
- private SharpUpdateXml _updateInfo;
-
- ///
- /// The update info display form
- ///
- private SharpUpdateInfoForm _updateInfoForm;
- #endregion
-
- #region Constructor
- internal SharpUpdateAcceptForm(SharpUpdateLocalAppInfo updateLocalAppInfo, SharpUpdateXml updateXmlInfo, int numCurUpdate, int totalUpdate)
- {
- InitializeComponent();
-
- _applicationInfo = updateLocalAppInfo;
-
- _updateInfo = updateXmlInfo;
-
- Text = $"{_applicationInfo.ApplicationName} - ({numCurUpdate}/{totalUpdate} Available Update";
-
- if (_applicationInfo.ApplicationName != null)
- {
- Icon = _applicationInfo.ApplicationIcon;
- }
-
- kwlblNewVersion.Text = updateXmlInfo.Tag != JobType.Remove ? string.Format(updateXmlInfo.Tag == JobType.Update ? "Update: {0}\nNew Version: {1}" : "New: {0}\nVersion: {1}", Path.GetFileName(_applicationInfo.ApplicationPath), _updateInfo.Version.ToString()) :
- $"Remove: {Path.GetFileName(_applicationInfo.ApplicationPath)}";
- }
- #endregion
-
- private void kbtnYes_Click(object sender, EventArgs e)
- {
- DialogResult = DialogResult.Yes;
-
- Close();
- }
-
- private void kbtnNo_Click(object sender, EventArgs e)
- {
- DialogResult = DialogResult.No;
-
- Close();
- }
-
- private void kbtnDetails_Click(object sender, EventArgs e)
- {
- if (_updateInfoForm == null)
- {
- _updateInfoForm = new SharpUpdateInfoForm(_applicationInfo, _updateInfo);
- }
-
- _updateInfoForm.Show(this);
- }
- }
-}
\ No newline at end of file
diff --git a/Source/Krypton Toolkit/Krypton.Toolkit.Suite.Extended.Software.Updater/Sharp Update/UX/SharpUpdateAcceptForm.resx b/Source/Krypton Toolkit/Krypton.Toolkit.Suite.Extended.Software.Updater/Sharp Update/UX/SharpUpdateAcceptForm.resx
deleted file mode 100644
index e837a377b..000000000
--- a/Source/Krypton Toolkit/Krypton.Toolkit.Suite.Extended.Software.Updater/Sharp Update/UX/SharpUpdateAcceptForm.resx
+++ /dev/null
@@ -1,154 +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
-
-
-
-
- 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
- 8cInr3xEAQEAOw==
-
-
-
\ No newline at end of file
diff --git a/Source/Krypton Toolkit/Krypton.Toolkit.Suite.Extended.Software.Updater/Sharp Update/UX/SharpUpdateDownloadForm.cs b/Source/Krypton Toolkit/Krypton.Toolkit.Suite.Extended.Software.Updater/Sharp Update/UX/SharpUpdateDownloadForm.cs
deleted file mode 100644
index 7612b8186..000000000
--- a/Source/Krypton Toolkit/Krypton.Toolkit.Suite.Extended.Software.Updater/Sharp Update/UX/SharpUpdateDownloadForm.cs
+++ /dev/null
@@ -1,354 +0,0 @@
-#region MIT License
-/*
- * MIT License
- *
- * Copyright (c) 2017 - 2023 Krypton Suite
- *
- * Permission is hereby granted, free of charge, to any person obtaining a copy
- * of this software and associated documentation files (the "Software"), to deal
- * in the Software without restriction, including without limitation the rights
- * to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
- * copies of the Software, and to permit persons to whom the Software is
- * furnished to do so, subject to the following conditions:
- *
- * The above copyright notice and this permission notice shall be included in all
- * copies or substantial portions of the Software.
- *
- * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
- * IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
- * FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
- * AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
- * LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
- * OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE
- * SOFTWARE.
- *
- */
-#endregion
-
-namespace Krypton.Toolkit.Suite.Extended.Software.Updater.SharpUpdate
-{
- internal class SharpUpdateDownloadForm : KryptonForm
- {
- #region Design Code
- private KryptonPanel kryptonPanel1;
- private ProgressBar progressBarAll;
- private KryptonLabel klblProgress;
- private ProgressBar progressBar;
- private KryptonLabel klblDownloading;
-
- private void InitializeComponent()
- {
- this.kryptonPanel1 = new Krypton.Toolkit.KryptonPanel();
- this.progressBarAll = new System.Windows.Forms.ProgressBar();
- this.klblProgress = new Krypton.Toolkit.KryptonLabel();
- this.progressBar = new System.Windows.Forms.ProgressBar();
- this.klblDownloading = new Krypton.Toolkit.KryptonLabel();
- ((System.ComponentModel.ISupportInitialize)(this.kryptonPanel1)).BeginInit();
- this.kryptonPanel1.SuspendLayout();
- this.SuspendLayout();
- //
- // kryptonPanel1
- //
- this.kryptonPanel1.Controls.Add(this.progressBarAll);
- this.kryptonPanel1.Controls.Add(this.klblProgress);
- this.kryptonPanel1.Controls.Add(this.progressBar);
- this.kryptonPanel1.Controls.Add(this.klblDownloading);
- this.kryptonPanel1.Dock = System.Windows.Forms.DockStyle.Fill;
- this.kryptonPanel1.Location = new System.Drawing.Point(0, 0);
- this.kryptonPanel1.Name = "kryptonPanel1";
- this.kryptonPanel1.Size = new System.Drawing.Size(413, 196);
- this.kryptonPanel1.TabIndex = 1;
- //
- // progressBarAll
- //
- this.progressBarAll.Location = new System.Drawing.Point(34, 151);
- this.progressBarAll.Name = "progressBarAll";
- this.progressBarAll.Size = new System.Drawing.Size(344, 23);
- this.progressBarAll.TabIndex = 4;
- //
- // klblProgress
- //
- this.klblProgress.AutoSize = false;
- this.klblProgress.Location = new System.Drawing.Point(34, 122);
- this.klblProgress.Name = "klblProgress";
- this.klblProgress.Size = new System.Drawing.Size(344, 23);
- this.klblProgress.StateCommon.ShortText.Font = new System.Drawing.Font("Segoe UI", 8.25F, System.Drawing.FontStyle.Regular, System.Drawing.GraphicsUnit.Point, ((byte)(0)));
- this.klblProgress.StateCommon.ShortText.TextH = Krypton.Toolkit.PaletteRelativeAlign.Center;
- this.klblProgress.TabIndex = 3;
- this.klblProgress.Values.Text = "";
- //
- // progressBar
- //
- this.progressBar.Location = new System.Drawing.Point(34, 83);
- this.progressBar.Name = "progressBar";
- this.progressBar.Size = new System.Drawing.Size(344, 23);
- this.progressBar.Style = System.Windows.Forms.ProgressBarStyle.Continuous;
- this.progressBar.TabIndex = 2;
- //
- // klblDownloading
- //
- this.klblDownloading.AutoSize = false;
- this.klblDownloading.Location = new System.Drawing.Point(12, 21);
- this.klblDownloading.Name = "klblDownloading";
- this.klblDownloading.Size = new System.Drawing.Size(389, 45);
- this.klblDownloading.StateCommon.ShortText.Font = new System.Drawing.Font("Segoe UI", 18F, System.Drawing.FontStyle.Regular, System.Drawing.GraphicsUnit.Point, ((byte)(0)));
- this.klblDownloading.StateCommon.ShortText.TextH = Krypton.Toolkit.PaletteRelativeAlign.Center;
- this.klblDownloading.TabIndex = 0;
- this.klblDownloading.Values.Text = "Downloading update...";
- //
- // SharpUpdateDownloadForm
- //
- this.ClientSize = new System.Drawing.Size(413, 196);
- this.Controls.Add(this.kryptonPanel1);
- this.FormBorderStyle = System.Windows.Forms.FormBorderStyle.Fixed3D;
- this.MaximizeBox = false;
- this.MinimizeBox = false;
- this.Name = "SharpUpdateDownloadForm";
- this.ShowIcon = false;
- this.ShowInTaskbar = false;
- this.StartPosition = System.Windows.Forms.FormStartPosition.CenterScreen;
- this.Text = "Downloading Update";
- this.FormClosing += new System.Windows.Forms.FormClosingEventHandler(this.SharpUpdateDownloadForm_FormClosing);
- this.FormClosed += new System.Windows.Forms.FormClosedEventHandler(this.SharpUpdateDownloadForm_FormClosed);
- ((System.ComponentModel.ISupportInitialize)(this.kryptonPanel1)).EndInit();
- this.kryptonPanel1.ResumeLayout(false);
- this.ResumeLayout(false);
-
- }
- #endregion
-
- #region Variables
- ///
- /// The web client to download the update
- ///
- private WebClient _webClient;
-
- ///
- /// The thread to hash the file on
- ///
- private BackgroundWorker _bgWorker;
-
- ///
- /// The MD5 hash of the file to download
- ///
- private string _md5;
- #endregion
-
- #region Property
- ///
- /// Gets the temp file path for the downloaded file
- ///
- internal string TempFilePath { get; }
- #endregion
-
- #region Constructor
- internal SharpUpdateDownloadForm(Uri location, string md5, Icon applicationIcon)
- {
- InitializeComponent();
-
- if (applicationIcon != null)
- {
- Icon = applicationIcon;
- }
- else
- {
- Icon = null;
- }
-
- // Set the temp file name and create new 0-byte file
- TempFilePath = Path.GetTempFileName();
-
- _md5 = md5;
-
- // Set up WebClient to download file
- _webClient = new WebClient();
- _webClient.DownloadProgressChanged += new DownloadProgressChangedEventHandler(webClient_DownloadProgressChanged);
- _webClient.DownloadFileCompleted += new AsyncCompletedEventHandler(webClient_DownloadFileCompleted);
-
- // Set up backgroundworker to hash file
- _bgWorker = new BackgroundWorker();
- _bgWorker.DoWork += new DoWorkEventHandler(bgWorker_DoWork);
- _bgWorker.RunWorkerCompleted += new RunWorkerCompletedEventHandler(bgWorker_RunWorkerCompleted);
-
- // Download file
- try { _webClient.DownloadFileAsync(location, this.TempFilePath); }
- catch { this.DialogResult = DialogResult.No; this.Close(); }
- }
- #endregion
-
- #region Methods
- ///
- /// Get the size of a file
- ///
- /// URL to the file
- /// Size of file in bytes
- private static long GetSizeOfFile(string location)
- {
- try
- {
- WebRequest req = HttpWebRequest.Create(location);
- req.Method = "HEAD";
- WebResponse resp = req.GetResponse();
- long ContentLength;
- if (long.TryParse(resp.Headers.Get("Content-Length"), out ContentLength))
- {
- resp.Close();
- return ContentLength;
- }
- resp.Close();
- return 0;
- }
- catch { return 0; }
- }
-
- ///
- /// Formats the byte _count to closest byte type
- ///
- /// The amount of bytes
- /// How many decimal places to show
- /// Add the byte type on the end of the string
- /// The bytes formatted as specified
- private string FormatBytes(long bytes, int decimalPlaces, bool showByteType)
- {
- double newBytes = bytes;
- string formatString = "{0";
- string byteType = "B";
-
- // Check if best size in KB
- if (newBytes > 1024 && newBytes < 1048576)
- {
- newBytes /= 1024;
- byteType = "KB";
- }
- else if (newBytes > 1048576 && newBytes < 1073741824)
- {
- // Check if best size in MB
- newBytes /= 1048576;
- byteType = "MB";
- }
- else
- {
- // Best size in GB
- newBytes /= 1073741824;
- byteType = "GB";
- }
-
- // Show decimals
- if (decimalPlaces > 0)
- {
- formatString += ":0.";
- }
-
- // Add decimals
- for (int i = 0; i < decimalPlaces; i++)
- formatString += "0";
-
- // Close placeholder
- formatString += "}";
-
- // Add byte type
- if (showByteType)
- {
- formatString += byteType;
- }
-
- return String.Format(formatString, newBytes);
- }
- #endregion
-
- #region Event Handlers
- ///
- /// Downloads file from server
- ///
- private void webClient_DownloadProgressChanged(object sender, DownloadProgressChangedEventArgs e)
- {
- // Update progressbar on download
- klblProgress.Text = string.Format("Downloaded {0} of {1}", FormatBytes(e.BytesReceived, 1, true), FormatBytes(e.TotalBytesToReceive, 1, true));
- progressBar.Value = e.ProgressPercentage;
- }
-
- ///
- /// Setup webClient to download the next file or start hashing
- ///
- ///
- ///
- private void webClient_DownloadFileCompleted(object sender, AsyncCompletedEventArgs e)
- {
- if (e.Error != null)
- {
- this.DialogResult = DialogResult.No;
- this.Close();
- }
- else if (e.Cancelled)
- {
- this.DialogResult = DialogResult.Abort;
- this.Close();
- }
- else
- {
- // Show the "Hashing" label and set the progressbar to marquee
- this.klblProgress.Text = "Verifying Download...";
- this.progressBar.Style = ProgressBarStyle.Marquee;
-
- // Start the hashing
- _bgWorker.RunWorkerAsync(new string[] { this.TempFilePath, _md5 });
- }
- }
-
- ///
- /// Hash file and compare
- ///
- ///
- /// string[2] {FILENAME, MD5}
- private void bgWorker_DoWork(object sender, DoWorkEventArgs e)
- {
- string file = ((string[])e.Argument)[0];
- string updateMD5 = ((string[])e.Argument)[1];
-
- // Hash the file and compare to the hash in the update xml
- if (Hasher.HashFile(file, HashType.Md5) != updateMD5.ToUpper())
- {
- e.Result = DialogResult.No;
- }
- else
- {
- e.Result = DialogResult.OK;
- }
- }
-
- ///
- /// Check if all files are ok and start next
- ///
- ///
- ///
- private void bgWorker_RunWorkerCompleted(object sender, RunWorkerCompletedEventArgs e)
- {
- DialogResult = (DialogResult)e.Result;
-
- Close();
- }
- #endregion
-
- private void SharpUpdateDownloadForm_FormClosing(object sender, FormClosingEventArgs e)
- {
-
- }
-
- private void SharpUpdateDownloadForm_FormClosed(object sender, FormClosedEventArgs e)
- {
- if (_webClient.IsBusy)
- {
- _webClient.CancelAsync();
-
- DialogResult = DialogResult.Abort;
- }
-
- if (_bgWorker.IsBusy)
- {
- _bgWorker.CancelAsync();
-
- DialogResult = DialogResult.Abort;
- }
- }
- }
-}
\ No newline at end of file
diff --git a/Source/Krypton Toolkit/Krypton.Toolkit.Suite.Extended.Software.Updater/Sharp Update/UX/SharpUpdateInfoForm.cs b/Source/Krypton Toolkit/Krypton.Toolkit.Suite.Extended.Software.Updater/Sharp Update/UX/SharpUpdateInfoForm.cs
deleted file mode 100644
index e2296b263..000000000
--- a/Source/Krypton Toolkit/Krypton.Toolkit.Suite.Extended.Software.Updater/Sharp Update/UX/SharpUpdateInfoForm.cs
+++ /dev/null
@@ -1,212 +0,0 @@
-#region MIT License
-/*
- * MIT License
- *
- * Copyright (c) 2017 - 2023 Krypton Suite
- *
- * Permission is hereby granted, free of charge, to any person obtaining a copy
- * of this software and associated documentation files (the "Software"), to deal
- * in the Software without restriction, including without limitation the rights
- * to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
- * copies of the Software, and to permit persons to whom the Software is
- * furnished to do so, subject to the following conditions:
- *
- * The above copyright notice and this permission notice shall be included in all
- * copies or substantial portions of the Software.
- *
- * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
- * IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
- * FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
- * AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
- * LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
- * OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE
- * SOFTWARE.
- *
- */
-#endregion
-
-namespace Krypton.Toolkit.Suite.Extended.Software.Updater.SharpUpdate
-{
- internal class SharpUpdateInfoForm : KryptonForm
- {
- #region Design Code
- private KryptonButton kbtnBack;
- private KryptonBorderEdge kryptonBorderEdge1;
- private KryptonPanel kryptonPanel2;
- private KryptonTextBox ktxtDescription;
- private KryptonLabel klblDescription;
- private KryptonLabel klblVersions;
- private PictureBox pictureBox1;
- private KryptonPanel kryptonPanel1;
-
- private void InitializeComponent()
- {
- this.kryptonPanel1 = new Krypton.Toolkit.KryptonPanel();
- this.kbtnBack = new Krypton.Toolkit.KryptonButton();
- this.kryptonBorderEdge1 = new Krypton.Toolkit.KryptonBorderEdge();
- this.kryptonPanel2 = new Krypton.Toolkit.KryptonPanel();
- this.ktxtDescription = new Krypton.Toolkit.KryptonTextBox();
- this.klblDescription = new Krypton.Toolkit.KryptonLabel();
- this.klblVersions = new Krypton.Toolkit.KryptonLabel();
- this.pictureBox1 = new System.Windows.Forms.PictureBox();
- ((System.ComponentModel.ISupportInitialize)(this.kryptonPanel1)).BeginInit();
- this.kryptonPanel1.SuspendLayout();
- ((System.ComponentModel.ISupportInitialize)(this.kryptonPanel2)).BeginInit();
- this.kryptonPanel2.SuspendLayout();
- ((System.ComponentModel.ISupportInitialize)(this.pictureBox1)).BeginInit();
- this.SuspendLayout();
- //
- // kryptonPanel1
- //
- this.kryptonPanel1.Controls.Add(this.kbtnBack);
- this.kryptonPanel1.Controls.Add(this.kryptonBorderEdge1);
- this.kryptonPanel1.Dock = System.Windows.Forms.DockStyle.Bottom;
- this.kryptonPanel1.Location = new System.Drawing.Point(0, 239);
- this.kryptonPanel1.Name = "kryptonPanel1";
- this.kryptonPanel1.PanelBackStyle = Krypton.Toolkit.PaletteBackStyle.PanelAlternate;
- this.kryptonPanel1.Size = new System.Drawing.Size(284, 50);
- this.kryptonPanel1.TabIndex = 0;
- //
- // kbtnBack
- //
- this.kbtnBack.DialogResult = System.Windows.Forms.DialogResult.Cancel;
- this.kbtnBack.Location = new System.Drawing.Point(97, 13);
- this.kbtnBack.Name = "kbtnBack";
- this.kbtnBack.Size = new System.Drawing.Size(90, 25);
- this.kbtnBack.TabIndex = 1;
- this.kbtnBack.Values.Text = "B&ack";
- this.kbtnBack.Click += new System.EventHandler(this.kbtnBack_Click);
- //
- // kryptonBorderEdge1
- //
- this.kryptonBorderEdge1.BorderStyle = Krypton.Toolkit.PaletteBorderStyle.HeaderSecondary;
- this.kryptonBorderEdge1.Dock = System.Windows.Forms.DockStyle.Top;
- this.kryptonBorderEdge1.Location = new System.Drawing.Point(0, 0);
- this.kryptonBorderEdge1.Name = "kryptonBorderEdge1";
- this.kryptonBorderEdge1.Size = new System.Drawing.Size(284, 1);
- this.kryptonBorderEdge1.Text = "kryptonBorderEdge1";
- //
- // kryptonPanel2
- //
- this.kryptonPanel2.Controls.Add(this.ktxtDescription);
- this.kryptonPanel2.Controls.Add(this.klblDescription);
- this.kryptonPanel2.Controls.Add(this.klblVersions);
- this.kryptonPanel2.Controls.Add(this.pictureBox1);
- this.kryptonPanel2.Dock = System.Windows.Forms.DockStyle.Fill;
- this.kryptonPanel2.Location = new System.Drawing.Point(0, 0);
- this.kryptonPanel2.Name = "kryptonPanel2";
- this.kryptonPanel2.Size = new System.Drawing.Size(284, 239);
- this.kryptonPanel2.TabIndex = 1;
- //
- // ktxtDescription
- //
- this.ktxtDescription.Location = new System.Drawing.Point(12, 124);
- this.ktxtDescription.Multiline = true;
- this.ktxtDescription.Name = "ktxtDescription";
- this.ktxtDescription.ReadOnly = true;
- this.ktxtDescription.ScrollBars = System.Windows.Forms.ScrollBars.Both;
- this.ktxtDescription.Size = new System.Drawing.Size(260, 95);
- this.ktxtDescription.TabIndex = 12;
- this.ktxtDescription.KeyDown += new System.Windows.Forms.KeyEventHandler(this.ktxtDescription_KeyDown);
- //
- // klblDescription
- //
- this.klblDescription.LabelStyle = Krypton.Toolkit.LabelStyle.BoldControl;
- this.klblDescription.Location = new System.Drawing.Point(12, 98);
- this.klblDescription.Name = "klblDescription";
- this.klblDescription.Size = new System.Drawing.Size(80, 20);
- this.klblDescription.TabIndex = 11;
- this.klblDescription.Values.Text = "Description:";
- //
- // klblVersions
- //
- this.klblVersions.AutoSize = false;
- this.klblVersions.Location = new System.Drawing.Point(98, 22);
- this.klblVersions.Name = "klblVersions";
- this.klblVersions.Size = new System.Drawing.Size(174, 61);
- this.klblVersions.StateCommon.ShortText.TextH = Krypton.Toolkit.PaletteRelativeAlign.Center;
- this.klblVersions.TabIndex = 10;
- this.klblVersions.Values.Text = "";
- //
- // pictureBox1
- //
- this.pictureBox1.BackColor = System.Drawing.Color.Transparent;
- this.pictureBox1.Location = new System.Drawing.Point(12, 12);
- this.pictureBox1.Name = "pictureBox1";
- this.pictureBox1.Size = new System.Drawing.Size(80, 80);
- this.pictureBox1.SizeMode = System.Windows.Forms.PictureBoxSizeMode.StretchImage;
- this.pictureBox1.TabIndex = 9;
- this.pictureBox1.TabStop = false;
- //
- // SharpUpdateInfoForm
- //
- this.ClientSize = new System.Drawing.Size(284, 289);
- this.Controls.Add(this.kryptonPanel2);
- this.Controls.Add(this.kryptonPanel1);
- this.FormBorderStyle = System.Windows.Forms.FormBorderStyle.FixedDialog;
- this.MaximizeBox = false;
- this.MinimizeBox = false;
- this.Name = "SharpUpdateInfoForm";
- this.ShowIcon = false;
- this.ShowInTaskbar = false;
- this.StartPosition = System.Windows.Forms.FormStartPosition.CenterScreen;
- ((System.ComponentModel.ISupportInitialize)(this.kryptonPanel1)).EndInit();
- this.kryptonPanel1.ResumeLayout(false);
- this.kryptonPanel1.PerformLayout();
- ((System.ComponentModel.ISupportInitialize)(this.kryptonPanel2)).EndInit();
- this.kryptonPanel2.ResumeLayout(false);
- this.kryptonPanel2.PerformLayout();
- ((System.ComponentModel.ISupportInitialize)(this.pictureBox1)).EndInit();
- this.ResumeLayout(false);
-
- }
-
- #endregion
-
- #region Constructor
- internal SharpUpdateInfoForm(SharpUpdateLocalAppInfo applicationInfo, SharpUpdateXml updateInfo)
- {
- InitializeComponent();
-
- try
- {
- if (applicationInfo.ApplicationIcon != null)
- {
- Icon = applicationInfo.ApplicationIcon;
- }
-
- // ReSharper disable VirtualMemberCallInConstructor
- Text = Properties.Resources.SharpUpdateInfoForm_Title;
- // ReSharper restore VirtualMemberCallInConstructor
-
- klblVersions.Text = string.Format(Properties.Resources.SharpUpdateInfoForm_Version, applicationInfo.ApplicationAssembly.GetName().Version.ToString(), updateInfo.Version.ToString());
-
- klblDescription.Text = Properties.Resources.SharpUpdateInfoForm_lblDescription;
-
- ktxtDescription.Text = updateInfo.Description;
-
- kbtnBack.Text = Properties.Resources.SharpUpdateInfoForm_btnBack;
- }
- catch (Exception e)
- {
- ExceptionCapture.CaptureException(e);
- }
- }
- #endregion
-
- private void ktxtDescription_KeyDown(object sender, KeyEventArgs e)
- {
- if (!(e.Control && e.KeyCode == Keys.C))
- {
- e.SuppressKeyPress = true;
- }
- }
-
- private void kbtnBack_Click(object sender, EventArgs e)
- {
- DialogResult = DialogResult.Cancel;
-
- Close();
- }
- }
-}
\ No newline at end of file
diff --git a/Source/Krypton Toolkit/Krypton.Toolkit.Suite.Extended.Specialised.Dialogs/Krypton.Toolkit.Suite.Extended.Specialised.Dialogs 2022.csproj b/Source/Krypton Toolkit/Krypton.Toolkit.Suite.Extended.Specialised.Dialogs/Krypton.Toolkit.Suite.Extended.Specialised.Dialogs 2022.csproj
index a86c100fe..e6d5a12cc 100644
--- a/Source/Krypton Toolkit/Krypton.Toolkit.Suite.Extended.Specialised.Dialogs/Krypton.Toolkit.Suite.Extended.Specialised.Dialogs 2022.csproj
+++ b/Source/Krypton Toolkit/Krypton.Toolkit.Suite.Extended.Specialised.Dialogs/Krypton.Toolkit.Suite.Extended.Specialised.Dialogs 2022.csproj
@@ -87,7 +87,7 @@
-
+
diff --git a/Source/Krypton Toolkit/Krypton.Toolkit.Suite.Extended.Theme.Switcher/Krypton.Toolkit.Suite.Extended.Theme.Switcher 2022.csproj b/Source/Krypton Toolkit/Krypton.Toolkit.Suite.Extended.Theme.Switcher/Krypton.Toolkit.Suite.Extended.Theme.Switcher 2022.csproj
index ea27d531c..565be3635 100644
--- a/Source/Krypton Toolkit/Krypton.Toolkit.Suite.Extended.Theme.Switcher/Krypton.Toolkit.Suite.Extended.Theme.Switcher 2022.csproj
+++ b/Source/Krypton Toolkit/Krypton.Toolkit.Suite.Extended.Theme.Switcher/Krypton.Toolkit.Suite.Extended.Theme.Switcher 2022.csproj
@@ -87,9 +87,9 @@
-
+
-
+
diff --git a/Source/Krypton Toolkit/Krypton.Toolkit.Suite.Extended.Toast/Krypton.Toolkit.Suite.Extended.Toast 2022.csproj b/Source/Krypton Toolkit/Krypton.Toolkit.Suite.Extended.Toast/Krypton.Toolkit.Suite.Extended.Toast 2022.csproj
index 1a2947393..b45131a7b 100644
--- a/Source/Krypton Toolkit/Krypton.Toolkit.Suite.Extended.Toast/Krypton.Toolkit.Suite.Extended.Toast 2022.csproj
+++ b/Source/Krypton Toolkit/Krypton.Toolkit.Suite.Extended.Toast/Krypton.Toolkit.Suite.Extended.Toast 2022.csproj
@@ -87,7 +87,7 @@
-
+
diff --git a/Source/Krypton Toolkit/Krypton.Toolkit.Suite.Extended.Toggle.Switch/Krypton.Toolkit.Suite.Extended.Toggle.Switch 2022.csproj b/Source/Krypton Toolkit/Krypton.Toolkit.Suite.Extended.Toggle.Switch/Krypton.Toolkit.Suite.Extended.Toggle.Switch 2022.csproj
index 698821409..983f75eb3 100644
--- a/Source/Krypton Toolkit/Krypton.Toolkit.Suite.Extended.Toggle.Switch/Krypton.Toolkit.Suite.Extended.Toggle.Switch 2022.csproj
+++ b/Source/Krypton Toolkit/Krypton.Toolkit.Suite.Extended.Toggle.Switch/Krypton.Toolkit.Suite.Extended.Toggle.Switch 2022.csproj
@@ -87,7 +87,7 @@
-
+
diff --git a/Source/Krypton Toolkit/Krypton.Toolkit.Suite.Extended.Tool.Box/Krypton.Toolkit.Suite.Extended.Tool.Box 2022.csproj b/Source/Krypton Toolkit/Krypton.Toolkit.Suite.Extended.Tool.Box/Krypton.Toolkit.Suite.Extended.Tool.Box 2022.csproj
index afe4a57bb..a06e9f74f 100644
--- a/Source/Krypton Toolkit/Krypton.Toolkit.Suite.Extended.Tool.Box/Krypton.Toolkit.Suite.Extended.Tool.Box 2022.csproj
+++ b/Source/Krypton Toolkit/Krypton.Toolkit.Suite.Extended.Tool.Box/Krypton.Toolkit.Suite.Extended.Tool.Box 2022.csproj
@@ -87,7 +87,7 @@
-
+
diff --git a/Source/Krypton Toolkit/Krypton.Toolkit.Suite.Extended.Tool.Strip.Items/Krypton.Toolkit.Suite.Extended.Tool.Strip.Items 2022.csproj b/Source/Krypton Toolkit/Krypton.Toolkit.Suite.Extended.Tool.Strip.Items/Krypton.Toolkit.Suite.Extended.Tool.Strip.Items 2022.csproj
index f0daf1f47..d58a9e328 100644
--- a/Source/Krypton Toolkit/Krypton.Toolkit.Suite.Extended.Tool.Strip.Items/Krypton.Toolkit.Suite.Extended.Tool.Strip.Items 2022.csproj
+++ b/Source/Krypton Toolkit/Krypton.Toolkit.Suite.Extended.Tool.Strip.Items/Krypton.Toolkit.Suite.Extended.Tool.Strip.Items 2022.csproj
@@ -87,7 +87,7 @@
-
+
diff --git a/Source/Krypton Toolkit/Krypton.Toolkit.Suite.Extended.TreeGridView/Krypton.Toolkit.Suite.Extended.TreeGridView 2022.csproj b/Source/Krypton Toolkit/Krypton.Toolkit.Suite.Extended.TreeGridView/Krypton.Toolkit.Suite.Extended.TreeGridView 2022.csproj
index 8c164d7ff..b0b2e8d15 100644
--- a/Source/Krypton Toolkit/Krypton.Toolkit.Suite.Extended.TreeGridView/Krypton.Toolkit.Suite.Extended.TreeGridView 2022.csproj
+++ b/Source/Krypton Toolkit/Krypton.Toolkit.Suite.Extended.TreeGridView/Krypton.Toolkit.Suite.Extended.TreeGridView 2022.csproj
@@ -90,7 +90,7 @@
-
+
diff --git a/Source/Krypton Toolkit/Krypton.Toolkit.Suite.Extended.Utilities/Krypton.Toolkit.Suite.Extended.Utilities 2022.csproj b/Source/Krypton Toolkit/Krypton.Toolkit.Suite.Extended.Utilities/Krypton.Toolkit.Suite.Extended.Utilities 2022.csproj
index e5c3ed7f5..b9bb499d2 100644
--- a/Source/Krypton Toolkit/Krypton.Toolkit.Suite.Extended.Utilities/Krypton.Toolkit.Suite.Extended.Utilities 2022.csproj
+++ b/Source/Krypton Toolkit/Krypton.Toolkit.Suite.Extended.Utilities/Krypton.Toolkit.Suite.Extended.Utilities 2022.csproj
@@ -86,7 +86,7 @@
-
+
diff --git a/Source/Krypton Toolkit/Krypton.Toolkit.Suite.Extended.VirtualTreeColumnView/Krypton.Toolkit.Suite.Extended.VirtualTreeColumnView 2022.csproj b/Source/Krypton Toolkit/Krypton.Toolkit.Suite.Extended.VirtualTreeColumnView/Krypton.Toolkit.Suite.Extended.VirtualTreeColumnView 2022.csproj
index d908b90b6..cee76bf77 100644
--- a/Source/Krypton Toolkit/Krypton.Toolkit.Suite.Extended.VirtualTreeColumnView/Krypton.Toolkit.Suite.Extended.VirtualTreeColumnView 2022.csproj
+++ b/Source/Krypton Toolkit/Krypton.Toolkit.Suite.Extended.VirtualTreeColumnView/Krypton.Toolkit.Suite.Extended.VirtualTreeColumnView 2022.csproj
@@ -91,7 +91,7 @@
-
+
diff --git a/Source/Krypton Toolkit/Krypton.Toolkit.Suite.Extended.Wizard/Krypton.Toolkit.Suite.Extended.Wizard 2022.csproj b/Source/Krypton Toolkit/Krypton.Toolkit.Suite.Extended.Wizard/Krypton.Toolkit.Suite.Extended.Wizard 2022.csproj
index 5deb9ff79..cd639b724 100644
--- a/Source/Krypton Toolkit/Krypton.Toolkit.Suite.Extended.Wizard/Krypton.Toolkit.Suite.Extended.Wizard 2022.csproj
+++ b/Source/Krypton Toolkit/Krypton.Toolkit.Suite.Extended.Wizard/Krypton.Toolkit.Suite.Extended.Wizard 2022.csproj
@@ -87,7 +87,7 @@
-
+
diff --git a/Source/Krypton Toolkit/ZipExtractor/Controls Visuals/ZipExtractorWindow.Designer.cs b/Source/Krypton Toolkit/ZipExtractor/Controls Visuals/ZipExtractorWindow.Designer.cs
index c18e65cf7..4cc4b72ff 100644
--- a/Source/Krypton Toolkit/ZipExtractor/Controls Visuals/ZipExtractorWindow.Designer.cs
+++ b/Source/Krypton Toolkit/ZipExtractor/Controls Visuals/ZipExtractorWindow.Designer.cs
@@ -146,6 +146,9 @@ private void InitializeComponent()
this.kpbExtractingProgress.Name = "kpbExtractingProgress";
this.kpbExtractingProgress.Size = new System.Drawing.Size(722, 30);
this.kpbExtractingProgress.TabIndex = 4;
+ this.kpbExtractingProgress.Text = "0%";
+ this.kpbExtractingProgress.UseValueAsText = true;
+ this.kpbExtractingProgress.Values.Text = "0%";
//
// bgwLoadWorker
//
diff --git a/Source/Krypton Toolkit/ZipExtractor/ZipExtractor.csproj b/Source/Krypton Toolkit/ZipExtractor/ZipExtractor.csproj
index 8e6ba02d7..1bc7ac528 100644
--- a/Source/Krypton Toolkit/ZipExtractor/ZipExtractor.csproj
+++ b/Source/Krypton Toolkit/ZipExtractor/ZipExtractor.csproj
@@ -21,7 +21,7 @@
-
+
@@ -92,7 +92,11 @@
..\..\..\Bin\$(configuration)\ZipExtractor\ZipExtractor.xml
..\..\..\Bin\$(configuration)\ZipExtractor\
False
+ Resources\ZipExtractor.ico
+
+
+