diff --git a/AboutBox.Designer.cs b/AboutBox.Designer.cs new file mode 100644 index 0000000..086e9e2 --- /dev/null +++ b/AboutBox.Designer.cs @@ -0,0 +1,188 @@ +namespace TrayReader +{ + partial class AboutBox + { + /// + /// Required designer variable. + /// + private System.ComponentModel.IContainer components = null; + + /// + /// Clean up any resources being used. + /// + 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(AboutBox)); + this.tableLayoutPanel = new System.Windows.Forms.TableLayoutPanel(); + this.logoPictureBox = new System.Windows.Forms.PictureBox(); + this.labelProductName = new System.Windows.Forms.Label(); + this.labelVersion = new System.Windows.Forms.Label(); + this.labelCopyright = new System.Windows.Forms.Label(); + this.labelCompanyName = new System.Windows.Forms.Label(); + this.textBoxDescription = new System.Windows.Forms.TextBox(); + this.okButton = new System.Windows.Forms.Button(); + this.tableLayoutPanel.SuspendLayout(); + ((System.ComponentModel.ISupportInitialize)(this.logoPictureBox)).BeginInit(); + this.SuspendLayout(); + // + // tableLayoutPanel + // + this.tableLayoutPanel.ColumnCount = 2; + this.tableLayoutPanel.ColumnStyles.Add(new System.Windows.Forms.ColumnStyle(System.Windows.Forms.SizeType.Percent, 33F)); + this.tableLayoutPanel.ColumnStyles.Add(new System.Windows.Forms.ColumnStyle(System.Windows.Forms.SizeType.Percent, 67F)); + this.tableLayoutPanel.Controls.Add(this.logoPictureBox, 0, 0); + this.tableLayoutPanel.Controls.Add(this.labelProductName, 1, 0); + this.tableLayoutPanel.Controls.Add(this.labelVersion, 1, 1); + this.tableLayoutPanel.Controls.Add(this.labelCopyright, 1, 2); + this.tableLayoutPanel.Controls.Add(this.labelCompanyName, 1, 3); + this.tableLayoutPanel.Controls.Add(this.textBoxDescription, 1, 4); + this.tableLayoutPanel.Controls.Add(this.okButton, 1, 5); + this.tableLayoutPanel.Dock = System.Windows.Forms.DockStyle.Fill; + this.tableLayoutPanel.Location = new System.Drawing.Point(9, 9); + this.tableLayoutPanel.Name = "tableLayoutPanel"; + this.tableLayoutPanel.RowCount = 6; + this.tableLayoutPanel.RowStyles.Add(new System.Windows.Forms.RowStyle(System.Windows.Forms.SizeType.Percent, 10F)); + this.tableLayoutPanel.RowStyles.Add(new System.Windows.Forms.RowStyle(System.Windows.Forms.SizeType.Percent, 10F)); + this.tableLayoutPanel.RowStyles.Add(new System.Windows.Forms.RowStyle(System.Windows.Forms.SizeType.Percent, 10F)); + this.tableLayoutPanel.RowStyles.Add(new System.Windows.Forms.RowStyle(System.Windows.Forms.SizeType.Percent, 10F)); + this.tableLayoutPanel.RowStyles.Add(new System.Windows.Forms.RowStyle(System.Windows.Forms.SizeType.Percent, 50F)); + this.tableLayoutPanel.RowStyles.Add(new System.Windows.Forms.RowStyle(System.Windows.Forms.SizeType.Percent, 10F)); + this.tableLayoutPanel.Size = new System.Drawing.Size(417, 265); + this.tableLayoutPanel.TabIndex = 0; + // + // logoPictureBox + // + this.logoPictureBox.Dock = System.Windows.Forms.DockStyle.Fill; + this.logoPictureBox.Image = ((System.Drawing.Image)(resources.GetObject("logoPictureBox.Image"))); + this.logoPictureBox.Location = new System.Drawing.Point(3, 3); + this.logoPictureBox.Name = "logoPictureBox"; + this.tableLayoutPanel.SetRowSpan(this.logoPictureBox, 6); + this.logoPictureBox.Size = new System.Drawing.Size(131, 259); + this.logoPictureBox.SizeMode = System.Windows.Forms.PictureBoxSizeMode.StretchImage; + this.logoPictureBox.TabIndex = 12; + this.logoPictureBox.TabStop = false; + // + // labelProductName + // + this.labelProductName.Dock = System.Windows.Forms.DockStyle.Fill; + this.labelProductName.Location = new System.Drawing.Point(143, 0); + this.labelProductName.Margin = new System.Windows.Forms.Padding(6, 0, 3, 0); + this.labelProductName.MaximumSize = new System.Drawing.Size(0, 17); + this.labelProductName.Name = "labelProductName"; + this.labelProductName.Size = new System.Drawing.Size(271, 17); + this.labelProductName.TabIndex = 19; + this.labelProductName.Text = "Product Name"; + this.labelProductName.TextAlign = System.Drawing.ContentAlignment.MiddleLeft; + // + // labelVersion + // + this.labelVersion.Dock = System.Windows.Forms.DockStyle.Fill; + this.labelVersion.Location = new System.Drawing.Point(143, 26); + this.labelVersion.Margin = new System.Windows.Forms.Padding(6, 0, 3, 0); + this.labelVersion.MaximumSize = new System.Drawing.Size(0, 17); + this.labelVersion.Name = "labelVersion"; + this.labelVersion.Size = new System.Drawing.Size(271, 17); + this.labelVersion.TabIndex = 0; + this.labelVersion.Text = "Version"; + this.labelVersion.TextAlign = System.Drawing.ContentAlignment.MiddleLeft; + // + // labelCopyright + // + this.labelCopyright.Dock = System.Windows.Forms.DockStyle.Fill; + this.labelCopyright.Location = new System.Drawing.Point(143, 52); + this.labelCopyright.Margin = new System.Windows.Forms.Padding(6, 0, 3, 0); + this.labelCopyright.MaximumSize = new System.Drawing.Size(0, 17); + this.labelCopyright.Name = "labelCopyright"; + this.labelCopyright.Size = new System.Drawing.Size(271, 17); + this.labelCopyright.TabIndex = 21; + this.labelCopyright.Text = "Copyright"; + this.labelCopyright.TextAlign = System.Drawing.ContentAlignment.MiddleLeft; + // + // labelCompanyName + // + this.labelCompanyName.Dock = System.Windows.Forms.DockStyle.Fill; + this.labelCompanyName.Location = new System.Drawing.Point(143, 78); + this.labelCompanyName.Margin = new System.Windows.Forms.Padding(6, 0, 3, 0); + this.labelCompanyName.MaximumSize = new System.Drawing.Size(0, 17); + this.labelCompanyName.Name = "labelCompanyName"; + this.labelCompanyName.Size = new System.Drawing.Size(271, 17); + this.labelCompanyName.TabIndex = 22; + this.labelCompanyName.Text = "Company Name"; + this.labelCompanyName.TextAlign = System.Drawing.ContentAlignment.MiddleLeft; + // + // textBoxDescription + // + this.textBoxDescription.Dock = System.Windows.Forms.DockStyle.Fill; + this.textBoxDescription.Location = new System.Drawing.Point(143, 107); + this.textBoxDescription.Margin = new System.Windows.Forms.Padding(6, 3, 3, 3); + this.textBoxDescription.Multiline = true; + this.textBoxDescription.Name = "textBoxDescription"; + this.textBoxDescription.ReadOnly = true; + this.textBoxDescription.ScrollBars = System.Windows.Forms.ScrollBars.Both; + this.textBoxDescription.Size = new System.Drawing.Size(271, 126); + this.textBoxDescription.TabIndex = 23; + this.textBoxDescription.TabStop = false; + this.textBoxDescription.Text = "Description"; + // + // okButton + // + this.okButton.Anchor = ((System.Windows.Forms.AnchorStyles)((System.Windows.Forms.AnchorStyles.Bottom | System.Windows.Forms.AnchorStyles.Right))); + this.okButton.DialogResult = System.Windows.Forms.DialogResult.Cancel; + this.okButton.Location = new System.Drawing.Point(339, 239); + this.okButton.Name = "okButton"; + this.okButton.Size = new System.Drawing.Size(75, 23); + this.okButton.TabIndex = 24; + this.okButton.Text = "&OK"; + // + // AboutBox + // + this.AcceptButton = this.okButton; + this.AutoScaleDimensions = new System.Drawing.SizeF(6F, 13F); + this.AutoScaleMode = System.Windows.Forms.AutoScaleMode.Font; + this.ClientSize = new System.Drawing.Size(435, 283); + this.Controls.Add(this.tableLayoutPanel); + this.Font = new System.Drawing.Font("Segoe UI", 8.25F, System.Drawing.FontStyle.Regular, System.Drawing.GraphicsUnit.Point, ((byte)(0))); + this.FormBorderStyle = System.Windows.Forms.FormBorderStyle.FixedDialog; + this.Icon = ((System.Drawing.Icon)(resources.GetObject("$this.Icon"))); + this.MaximizeBox = false; + this.MinimizeBox = false; + this.Name = "AboutBox"; + this.Padding = new System.Windows.Forms.Padding(9); + this.ShowIcon = false; + this.ShowInTaskbar = false; + this.StartPosition = System.Windows.Forms.FormStartPosition.CenterScreen; + this.Text = "About SystemTrayApp"; + this.tableLayoutPanel.ResumeLayout(false); + this.tableLayoutPanel.PerformLayout(); + ((System.ComponentModel.ISupportInitialize)(this.logoPictureBox)).EndInit(); + this.ResumeLayout(false); + + } + + #endregion + + private System.Windows.Forms.TableLayoutPanel tableLayoutPanel; + private System.Windows.Forms.PictureBox logoPictureBox; + private System.Windows.Forms.Label labelProductName; + private System.Windows.Forms.Label labelVersion; + private System.Windows.Forms.Label labelCopyright; + private System.Windows.Forms.Label labelCompanyName; + private System.Windows.Forms.TextBox textBoxDescription; + private System.Windows.Forms.Button okButton; + } +} diff --git a/AboutBox.cs b/AboutBox.cs new file mode 100644 index 0000000..a011a6c --- /dev/null +++ b/AboutBox.cs @@ -0,0 +1,101 @@ +using System; +using System.Reflection; +using System.Windows.Forms; + +namespace TrayReader +{ + partial class AboutBox : Form + { + public AboutBox() + { + InitializeComponent(); + this.Text = String.Format("About {0}", AssemblyTitle); + this.labelProductName.Text = AssemblyProduct; + this.labelVersion.Text = String.Format("Version {0}", AssemblyVersion); + this.labelCopyright.Text = AssemblyCopyright; + this.labelCompanyName.Text = AssemblyCompany; + this.textBoxDescription.Text = AssemblyDescription; + } + + #region Assembly Attribute Accessors + + public string AssemblyTitle + { + get + { + object[] attributes = Assembly.GetExecutingAssembly().GetCustomAttributes(typeof(AssemblyTitleAttribute), false); + if (attributes.Length > 0) + { + AssemblyTitleAttribute titleAttribute = (AssemblyTitleAttribute)attributes[0]; + if (titleAttribute.Title != "") + { + return titleAttribute.Title; + } + } + return System.IO.Path.GetFileNameWithoutExtension(Assembly.GetExecutingAssembly().CodeBase); + } + } + + public string AssemblyVersion + { + get + { + return Assembly.GetExecutingAssembly().GetName().Version.ToString(); + } + } + + public string AssemblyDescription + { + get + { + object[] attributes = Assembly.GetExecutingAssembly().GetCustomAttributes(typeof(AssemblyDescriptionAttribute), false); + if (attributes.Length == 0) + { + return ""; + } + return ((AssemblyDescriptionAttribute)attributes[0]).Description; + } + } + + public string AssemblyProduct + { + get + { + object[] attributes = Assembly.GetExecutingAssembly().GetCustomAttributes(typeof(AssemblyProductAttribute), false); + if (attributes.Length == 0) + { + return ""; + } + return ((AssemblyProductAttribute)attributes[0]).Product; + } + } + + public string AssemblyCopyright + { + get + { + object[] attributes = Assembly.GetExecutingAssembly().GetCustomAttributes(typeof(AssemblyCopyrightAttribute), false); + if (attributes.Length == 0) + { + return ""; + } + return ((AssemblyCopyrightAttribute)attributes[0]).Copyright; + } + } + + public string AssemblyCompany + { + get + { + object[] attributes = Assembly.GetExecutingAssembly().GetCustomAttributes(typeof(AssemblyCompanyAttribute), false); + if (attributes.Length == 0) + { + return ""; + } + return ((AssemblyCompanyAttribute)attributes[0]).Company; + } + } + + #endregion Assembly Attribute Accessors + } +} \ No newline at end of file diff --git a/AboutBox.resx b/AboutBox.resx new file mode 100644 index 0000000..b8ad9bc --- /dev/null +++ b/AboutBox.resx @@ -0,0 +1,1106 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + 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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 + AAABAAgAaAUAAD4rAAAwMAAAAQAgAKglAACmMAAAICAAAAEAIACoEAAATlYAABgYAAABACAAiAkAAPZm + AAAQEAAAAQAgAGgEAAB+cAAAKAAAADAAAABgAAAAAQAEAAAAAACABAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAIAAAIAAAACAgACAAAAAgACAAICAAACAgIAAwMDAAAAA/wAA/wAAAP//AP8AAAD/AP8A//8AAP// + /wAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAgqIqIqIqgAAAAAAAAAAAAAAAAAAAAAAIKH + d3d3d4KAAAAAAAAAAAAAAAAAAAAAACiqqqqqoqegAAAAAAAAAAAAAAAAAAAAAKeioiIiIiegAAAAAAAA + AAAAAAAAAAAAACeqOioqKiegAAAAAAAAAAAAAAAAAAAAAKiioqKiIqegAAAAAAAAAAAAAAAAAAAAACej + oqMqoiegAAAAAAAAAAAAAAAAAAAAAKiqKjoqOiegAAAAAAAAAAAAAAAAAAAAACijp6oqIqegAAAAAAAA + AAAAAAAAAAAAAKeqqio6KiegAAAAAAAAAAAAAAAAAAAAACinOjoqOqegAAAAAAAAAAAAAAAAAAAAAKij + p6p6KiigAAAAAAAAAAAAAAAAAAAAACg6ejqjoqegAAAAAAAAAAAAAAAAAAAAAKirp6eqeqegAAAAAAAA + AAAAAAAAAAAAACi2uno6o6ggAAAAAAAAAAAAAAAAAAAAAKinp6OnqjegAAAAAAAAAAAIKiKiKiKiKji6 + irejp6iiOiKjKiKiKACC+Pj4+Pj4+IeoN6eoqqd3qHh6h3d3ioAop6irerererqKuoq6c6qqOqqiqqqq + J6AoqKt3eKi6ioe3e6inq3o6o6KjIiIip6Aoo3p6uoqIqLp6ioO6iqenqnoqqioqJ6Aop6ioqHt3uKi3 + q6ioq3q6eqOiOioipyAnp6OnqKioqIeHiHurenp6OjqqoqOip6Aoo3qKinqLereouoiKirerp6eno6Ki + J6Anp6enq6ineKi4iLqIuKiop6o6Kio6p6Aop6enp3qKuoioqIi3eIuKi3p6OnoqKKAno6eranq3eKi3 + uoqHe3eLeoe6iqejp6Aop6enqKenp7qKiLh7iod3iKioqHp6eKAop6eno6inqKioqKh3iLeKuLeHuoqK + qCCCioh4iHh4uIqLeLd7qHiPiIiIiIiIioAIIqKioqKiKiiop6ioh7iiqiqiqiqjqAAAAAAAAAAAACin + t4uKh4ggAAAAAAAAAAAAAAAAAAAAACioqnqLe6igAAAAAAAAAAAAAAAAAAAAACijioqKh4ggAAAAAAAA + AAAAAAAAAAAAACenqKi3qKggAAAAAAAAAAAAAAAAAAAAAKinp7p6i4igAAAAAAAAAAAAAAAAAAAAACer + p6eop6ggAAAAAAAAAAAAAAAAAAAAACinp6ioqLggAAAAAAAAAAAAAAAAAAAAACenqKereoigAAAAAAAA + AAAAAAAAAAAAAKino6enqKggAAAAAAAAAAAAAAAAAAAAACenqKenp6ggAAAAAAAAAAAAAAAAAAAAACij + p6eoq3igAAAAAAAAAAAAAAAAAAAAACenp6ejp6ggAAAAAAAAAAAAAAAAAAAAAKenp6Oop6ggAAAAAAAA + AAAAAAAAAAAAACijp6inp6igAAAAAAAAAAAAAAAAAAAAAIKId3d3h4KAAAAAAAAAAAAAAAAAAAAAAAii + qqoqKigAAAAAAAAAAAD///////8AAP//gAP//wAA//8AAf//AAD//wAB//8AAP//AAH//wAA//8AAf// + AAD//wAB//8AAP//AAH//wAA//8AAf//AAD//wAB//8AAP//AAH//wAA//8AAf//AAD//wAB//8AAP// + AAH//wAA//8AAf//AAD//wAB//8AAP//AAH//wAAgAAAAAADAAAAAAAAAAEAAAAAAAAAAQAAAAAAAAAB + AAAAAAAAAAEAAAAAAAAAAQAAAAAAAAABAAAAAAAAAAEAAAAAAAAAAQAAAAAAAAABAAAAAAAAAAEAAAAA + AAAAAQAAAAAAAAABAAAAAAAAAAEAAIAAAAAAAwAA//8AAf//AAD//wAB//8AAP//AAH//wAA//8AAf// + AAD//wAB//8AAP//AAH//wAA//8AAf//AAD//wAB//8AAP//AAH//wAA//8AAf//AAD//wAB//8AAP// + AAH//wAA//8AAf//AAD//wAB//8AAP//AAH//wAA//+AA///AAAoAAAAIAAAAEAAAAABAAQAAAAAAAAC + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAgAAAgAAAAICAAIAAAACAAIAAgIAAAICAgADAwMAAAAD/AAD/ + AAAA//8A/wAAAP8A/wD//wAA////AAAAAAAAACoioioAAAAAAAAAAAAAAAJ3qHp3oAAAAAAAAAAAAAAK + eqKip6AAAAAAAAAAAAAAAno6IqcgAAAAAAAAAAAAAAp6oqIqMAAAAAAAAAAAAAACijoqOKAAAAAAAAAA + AAAACnqjoqogAAAAAAAAAAAAAAKKOqOooAAAAAAAAAAAAAAKijp6J6AAAAAAAAAAAAAAArenqqggAAAA + AAAAAAAAAAqKijo3oAAAAAAAAiIioiIii6enqKKioqKiICd4uIeIuKirqKd3iod3d6Mqqqqrq2e3dzq6 + qqOqqqp6J6N6ioqKirqKenuqOioieio6o6N7q3d7e6ijp6o6Knonqnp6p3qKvqireno6oqOjKjqqOrp7 + qKuLd6unp6OqeieiOqenp6uKiot4qKOnoooqenp6eot6e3uoqLqLp6p6AqIqIqIiqKeoeCoioqI6IAAA + AAAAAoq6irggAAAAAAAAAAAAAAKjp6tooAAAAAAAAAAAAAADenp6uCAAAAAAAAAAAAAACqo6unogAAAA + AAAAAAAAAAJ6p6eoIAAAAAAAAAAAAAACejqqOKAAAAAAAAAAAAAAAqqjp6sgAAAAAAAAAAAAAAJ6Omqn + IAAAAAAAAAAAAAACo6o6OiAAAAAAAAAAAAAAA6enp6ggAAAAAAAAAAAAAAAiIioiAAAAAAAA//AP///g + B///4Af//+AH///gB///4Af//+AH///gB///4Af//+AH///gB/+AAAABAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAACAAAAB/+AH///gB///4Af//+AH///gB///4Af//+AH///gB///4Af//+AH///w + D/8oAAAAGAAAADAAAAABAAQAAAAAACABAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAgAAAgAAAAICAAIAA + AACAAIAAgIAAAICAgADAwMAAAAD/AAD/AAAA//8A/wAAAP8A/wD//wAA////AAAAAAB6IqInAAAAAAAA + AACnp3qKAAAAAAAAAAAnqqJ6AAAAAAAAAACnoqKiAAAAAAAAAAAnqip6AAAAAAAAAACoo6J6AAAAAAAA + AAArqjqjAAAAAAAAAACop6qKAAAAAHoiKiIoq6OiKioqJyeouIuLenqIqHd3qio6qjp6erqjqqqqciej + eoqKt6iro6Kioyqqo6uoqLp6eqOqeiejqnq3uot7p6o6eip6eoqKc3qIi4eoonoioiIoq6i6KioqNwAA + AACjp6eCAAAAAAAAAAAoqrqKAAAAAAAAAAAqOnqyAAAAAAAAAAAnqqOCAAAAAAAAAACjo6qiAAAAAAAA + AAAnqiqCAAAAAAAAAAAqenp6AAAAAAAAAAB6IionAAAAAP8A/wD/AP8A/wD/AP8A/wD/AP8A/wD/AP8A + /wD/AP8AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAD/AP8A/wD/AP8A/wD/AP8A/wD/AP8A + /wD/AP8A/wD/ACgAAAAQAAAAIAAAAAEABAAAAAAAgAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAACAAACA + AAAAgIAAgAAAAIAAgACAgAAAgICAAMDAwAAAAP8AAP8AAAD//wD/AAAA/wD/AP//AAD///8AAAAHoiJw + AAAAAAJ6eqAAAAAACno3oAAAAAACuqegAAAAAAKHqCAAAHIiooqLKiInKHiIi6h4qKoqureoiqOjcien + qIeIi3p6J6iououIeKOiojp4qKKipwAAAqe4IAAAAAACiqigAAAAAAKjqCAAAAAAAneoIAAAAAAHqjKg + AAD4HwAA+B8AAPgfAAD4HwAA+B8AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAPgfAAD4HwAA+B8AAPgf + AAD4HwAAKAAAADAAAABgAAAAAQAIAAAAAAAACQAAAAAAAAAAAAAAAQAAAAEAAAAAAAAAkwAAA5IHAACY + AAAAnQAAAKACAAClAwAApgQAAKkGAACuCAAAsQoAALQLAAC0DQABuA4AA7oQAAS8EgAGvhUAC7AZAAm/ + GQAGwRYACcIZAArFGgAKxhwADMYcAA3IHwAPyiAAEsQhABDLIQARzSQAFM4nABbPKQAaySkAF9AvABnR + MQAb1DIAHNQ3AB7VPAAlzzQAMsc/ADPJPwAi1TgALtM/ADXKQAA1zEIAN81EACHXQQAi10QAK9dHACTY + SAAn2UwAKdpPADjQRgA31kwAO9JIADrUSAA81EoAPtVNACrbUgAt21cAL91ZADbbVQAx3FoAMd5cADPf + YgA24GQAOOFnADzgZQA74W0APuJwAEDXUABC2FEAQ9lWAETaWABG3FkAQ9xcAEfcXQBC3mQASN1hAEvf + ZQBM32cATd9qAGHBYwBhxWUAYclmAGHKaABhzWkAY9BrAGPQbABk0m0AZtRvAHTBdgB2wnkAdMV4AHbM + fQBn1HAAadZyAGzWdQBr2XUAbth2AG7aeABv3HoAcdt6AHLcewBy3XwAdN59AFDgbgBA4nQAReN1AEjj + cgBO4nIARON5AEfkfABI5nsAS+V/AE3kfgBR4XEAVeJ3AFXjeABT5X8AWOR7AGHjewB4z4AAfdKEAH/U + hwB03oAATuWBAFPmhABV5oUAWeWAAFzmgQBa5oUAXOaEAFXohgBR54gAWuaJAF7nigBW6IgAWeiKAF7p + jQBp4IEAYeeJAGTnjgB24IEAduCEAHnjhwB34YwAeuOJAHvjjAB95Y8AYuiQAGbokgBp6ZUAbOuXAG7q + mQB+5ZMAfOOVAHbkmwBy7J4AdO2hAHftpQCO1pQAjd6fAIThjQCA5ZUAieGSAIvklgCC55kAgeadAITn + nACO5p0Amt2oAKPfqQCH56YAjOirAJfgoACR5qMAlOeoAJDprwCW6a0AkeqyAJnqsACY67cAnOq1AJ7r + uACg4LIAoOu6AKHtuwCl7boAo+y9AKXtvwCm7sEAqO7DAKruxQCt78cAvevBAL3swgC+7MQAsvDLALbw + zgC78dEAv/DTAMPDwwDHx8cAwOzDAMHtxQDI5soAxezJAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAP///wAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAMkRERER + EREREREREckAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAyRF5XllXV1dTU1JSWxHKAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAEV0NDQsLBwcHBwMDAVoRAAAAAAAAAAAAAAAAAAAA + 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 + NjhFRUVLTq8CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAWUrMzMzMzM2RUVFS6kCAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAl8zJiozMzM2NkVFRqUCAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAmIqJioqMzMzMzY1RaUBAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAqAmJiozJjMzMzZFOKsCAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAyQGgYl9i + YmJnZ2dnrgHJAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAMkCAQICAgICAQIBAskAAAAA + AAAAAAAAAAAAAAAAAAD///////8AAP//gAP//wAA//8AAf//AAD//wAB//8AAP//AAH//wAA//8AAf// + AAD//wAB//8AAP//AAH//wAA//8AAf//AAD//wAB//8AAP//AAH//wAA//8AAf//AAD//wAB//8AAP// + AAH//wAA//8AAf//AAD//wAB//8AAP//AAH//wAAgAAAAAADAAAAAAAAAAEAAAAAAAAAAQAAAAAAAAAB + AAAAAAAAAAEAAAAAAAAAAQAAAAAAAAABAAAAAAAAAAEAAAAAAAAAAQAAAAAAAAABAAAAAAAAAAEAAAAA + AAAAAQAAAAAAAAABAAAAAAAAAAEAAIAAAAAAAwAA//8AAf//AAD//wAB//8AAP//AAH//wAA//8AAf// + AAD//wAB//8AAP//AAH//wAA//8AAf//AAD//wAB//8AAP//AAH//wAA//8AAf//AAD//wAB//8AAP// + AAH//wAA//8AAf//AAD//wAB//8AAP//AAH//wAA//+AA///AAAoAAAAIAAAAEAAAAABAAgAAAAAAAAE + AAAAAAAAAAAAAAABAAAAAQAAAAAAAAOSBwAAowMAAKkGAACuCAAAsAoAALIMAAC1DQACuQ8ACKQSAAO6 + EQAEuxEABLwSAAW+FAALsBkAB8AVAAfBGAAIwhgACsQaAAvGHAAMxhwADcgeAA7JIAAQyiEAEMwiABLN + JQAUziYAFc4oABbQKQAW0CwAGNEtABnSMQAa0zUAHNM2ABvUNgAc1DYAHdQ6AB7VPQAg1j8AINo9AFa9 + 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 + AAAAAAAAAAAAAAAAAAABOyMlJyVFAQAAAAAAAAAAAAAAAAAAAAAbAQEBAQEBGwAAAAAAAAAA/wD/AP8A + /wD/AP8A/wD/AP8A/wD/AP8A/wD/AP8A/wAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAP8A + /wD/AP8A/wD/AP8A/wD/AP8A/wD/AP8A/wD/AP8AKAAAABAAAAAgAAAAAQAIAAAAAAAAAQAAAAAAAAAA + AAAAAQAAAAEAAAAAAAAFmgwABp4OAAimEwAAtx0ACb8rABLFNQAYyD0ARrRLAEi9TABIvVEAG8lAAB/M + RQAhzUYAJM5KACbPTQAp0E8AOMpRAD3NWAAx01gAM9VZADfWXwA612EAP9llAEjBTwBIyFgASMtcAEHQ + XgBD0WAARdJiAE7QZgBI1GUAT9JoAErVaABM1moAT9dtAEHZaABF2msAR9ttAEncbwBS02sAU9VtAFDY + bgBP3nUAVdp0AF7aegBa3HkAXd19AGDbegBU4HsAWOB9AGHfgQBf4oMAYeOFAGTjiABq4YkAbeGIAGjk + jABs5Y4AceOOAG/mkQBy5ZEAduSSAHPmlAB25pUAeeaXAHbomAB66ZoAfuqdAIHpnQCD6aAAieqlAIzr + pwCR7a0Ale2uAJrutACe77YAofC5AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAP///wAAAAAAAAoDAwMDCgAAAAAAAAAAAAADKRoYCQMAAAAAAAAAAAAAAyMGBBoDAAAA + AAAAAAAAAAMzEAYeAwAAAAAAAAAAAAADPiUQLQMAAAAAAAgCAgICA0YyJTgDAwMDAwoCOz5HSUlHOjI+ + OjApGhgDAiwUJzU+Qz45MiUTCwUaAwEjDBMlNTxDQ0M1KxQNIAMCGxsjLTo+PENLS0tGPi0DCAIBAgIB + My08TQICAgIDCgAAAAAAAiMXMkkCAAAAAAAAAAAAAAIcDxVFAgAAAAAAAAAAAAACEgcPNwEAAAAAAAAA + AAAAARIbHS0CAAAAAAAAAAAAAAgBAQIBCAAAAAAA+B8AAPgfAAD4HwAA+B8AAPgfAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAD4HwAA+B8AAPgfAAD4HwAA+B8AACgAAAAwAAAAYAAAAAEAIAAAAAAAgCUAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAABoAAAAaAAAAGgAAABoAAAAaAAAAGgAAABoAAAAaAAAAGgAA + ABoAAAAaAAAAGgAAABoAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + 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 + AAAAAAAAAAAAAAAAAAAAAAAAC7AZ/4zoq/824GT/NuBk/zHeXP8t21f/J9lM/yHXQf8e1Tz/GdEx/xXP + KP8RzST/D8og/2vadf8LsBn/AAAAGgAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAGgAAABoAAAAcAAAAHQAAAB0AAAAdAAAAHQAA + AB0AAAAdAAAAHQAAAB0AAAAdAAAAHQAAAB0AAAAaC7AZ/5Dpr/874W3/O+Ft/zjhZ/8x3lz/LdtX/yfZ + TP8h10H/HtU8/xvUMv8Vzyj/E80m/23bef8LsBn/AAAAHQAAABwAAAAdAAAAHQAAAB0AAAAdAAAAHQAA + AB0AAAAdAAAAHQAAAB0AAAAdAAAAHQAAABwAAAAaAAAAAAAAAAAAAAAakJCQiQuwGf8LsBn/C7AZ/wuw + Gf8LsBn/C7AZ/wuwGf8LsBn/C7AZ/wuwGf8LsBn/C7AZ/wuwGf8LsBn/C7AZ/5Hqsv9A4nT/QOJ0/zvh + bf844Wf/M99i/y3bV/8p2k//ItdE/x/WPv8b1DL/F88q/2/cev8LsBn/C7AZ/wuwGf8LsBn/C7AZ/wuw + Gf8LsBn/C7AZ/wuwGf8LsBn/C7AZ/wuwGf8LsBn/C7AZ/wuwGf+Xl5eJAAAAGgAAAACQkJCJA5IH/8jm + yv7G7cr+xezI/sLsxv7A7MP+vevB/r3swv697ML+vezC/r3sw/6+7MP+vuzE/r7txP/A7sX+pe26/3bk + m/5E43n/RON5/0DidP874W3/OOFn/zPfYv8v3Vn/KdpP/yTYSP8f1j7/G9Qy/2/cev9q2HX9aNVx/WbU + b/5l02/+ZdJt/mTRbP5j0Gv+Ys5q/mHMaf5hy2j+Ycpo/mHJZ/5hxmb+YcZl/nXCeP0LsBn/l5eXiQAA + ABoDkgf/jd6f/2Hje/9N32r/UuJz/1Xjef9c5YT/W+aJ/1boiP9V6Ib/T+WD/0/ng/9R54j/T+eD/0/n + g/9P54P/TeWA/0jme/9H5Hz/R+R8/0Tjef9A4nT/O+Ft/zjhZ/8z32L/L91Z/yrbUv8k2Ej/H9Y+/xzU + N/8Z0TH/F88q/xHNJP8NyB//CsUa/wfCF/8GvhT/A7oQ/wC0Df8Asgv/AK4J/wCpBv8ApgT/AKAC/wCc + AP90xXj/C7AZ/wAAABoDkgf/fuWT/0DXUP9E2lj/SN1h/0zfZ/9Q4G7/VeJ3/1jke/9c5oH/WuaF/1bm + hv9O5ID/ReN6/0DidP9E43n/R+R8/0fkfP9H5Hz/R+R8/0fkfP9H5Hz/QOJ0/z7icP844Wf/NuBk/y/d + Wf8q21L/JNhI/yHXQf8c1Df/F9Av/xPNJv8QyyH/DMYc/wnDGf8Hwhb/BL0T/wO6EP8AtA3/ALAL/wCu + Cf8Aqgb/AKYE/wCgAv9hxGT/C7AZ/wAAABoDkgf/e+OM/z7WTf9A11D/Q9lW/0fcXf9L32X/UOBu/1Li + c/9Y5Hv/XOaB/2DniP9k547/YuiQ/1rniv9T5oT/S+V//0fkfP9H5Hz/R+R8/0fkfP9H5Hz/R+R8/0Di + dP8+4nD/O+Ft/zbgZP8x3lz/KttS/yfZTP8h10H/HNQ3/xfQL/8Uzif/EMsh/w3HHf8KxRr/B8IW/wS9 + E/8DuhD/ALQN/wCyC/8Argn/AKkG/wCmBP9hxmX/C7AZ/wAAABoDkgf/eeOH/z3VS/8+1Uz/P9ZP/0PZ + Vv9H3F3/Sd5i/03fav9S4nP/WOR7/1zmgf9g54j/ZOeO/2fokv9s65f/a+mX/2Tokv9Z6Ir/TuWB/0fk + fP9H5Hz/R+R8/0fkfP9A4nT/PuJw/zvhbf824GT/Md5c/yrbUv8n2Uz/IddB/x7VPP8Z0TH/Fc8o/xHL + Iv8NyB//CsUa/wfCFv8GvhT/A7oQ/wG2Df8Asgv/AK8J/wCqBv9hyWf/C7AZ/wAAABoDkgf/d+CE/zzU + Sv881Er/PtVM/0DXUP9D2FL/R9xd/0neYv9N32r/UuJz/1bjeP9c5oH/YOeI/2Lni/9k547/bOuX/2/q + mv9y7J7/cuye/2jplf9e6Y3/VOaF/03lgP9E43n/QOJ0/z7icP874W3/OOFn/zHeXP8t21f/J9lM/yLX + RP8e1Tz/GdEx/xXPKP8RzST/Dcgf/wrGHP8Hwhf/Br4U/wO6EP8Btg3/ALIL/wCuCf9hzGj/C7AZ/wAA + ABoDkgf/dd+A/zrRR/870kn/PdVL/z7VTP8/1k//Q9hS/0bcWf9J3mL/TN9n/1Lic/9W43j/WeWA/13n + hP9i54v/ZOeO/2zrl/9v6pr/cuye/3Ttof907aH/cuye/27qmf9k6pL/W+eK/03kfv9F43X/O+Ft/zjh + Z/8z32L/LdtX/ynaT/8i10T/HtU8/xnRMf8Vzyj/Ec0k/w/KIP8Kxhz/B8IX/wa+Fv8DuhL/AbgO/wCy + C/9izmr/C7AZ/wAAABoDkgf/dN6A/zjQRf860Uf/O9JJ/zzUSv8+1Uz/P9ZP/0PYUv9G3Fn/Sd5i/03f + av9R4XD/VuN4/1nlgP9d54T/YueL/2fokv9q6ZX/b+qa/3Lsnv907aH/dO2h/3Ttof907aH/cuye/2/q + mv9q6ZX/XueK/1Plf/9I43L/POBl/zHcWv8p2k//ItdE/x/WPv8b1DL/F88q/xPNJv8PyiD/DMYc/wnC + Gf8Gvhb/A7oS/wG4Dv9k0Wz/C7AZ/wAAABoDkgf/c959/zfNRP83zkT/ONFH/zvSSf881Er/PtVM/z/W + T/9D2FL/RtxZ/0neYv9M32f/UeFw/1Xid/9Z5YD/XeeE/2Lni/9n6JL/aumV/2/qmv9y7J7/dO2h/3Tt + of907aH/dO2h/3Ttof907aH/cuye/2zrl/9k547/YOeI/1rmgP9O4nL/Qt5k/zbbVf8r10f/ItU4/xbP + Kf8RzST/D8og/wrGHP8Jwhn/Br4W/wO6Ev9l02//C7AZ/wAAABoDkgf/ctx7/zbNQv83zUT/ONBF/zjR + R/870kj/PNRK/z7VTP8+1k3/QdhQ/0TaWP9I3WH/TN9n/1Dgbv9V4nf/WOR7/13nhP9i54v/ZOeO/2rp + lf9s65f/cuye/3Ttof907aH/dO2h/3Ttof907aH/dO2h/3Lsnv9v6pr/bOuX/2fokv9i54v/XOaB/1bj + eP9S4nP/TN9n/0PcXP831kz/LtM//yXPNP8aySn/EsQh/wm/Gf9n1XD/C7AZ/wAAABoDkgf/cdt6/zXK + QP81zEL/N81E/zfORP840Uf/O9JI/zzUSv891Uv/PtZN/0HYUP9E2lj/SN1h/0vfZf9Q4G7/VeJ3/1jk + e/9d54T/YueL/2Tnjv9q6ZX/bOuX/3Lsnv907aH/dO2h/3Ttof907aH/dO2h/3Ttof9y7J7/b+qa/2zr + l/9q6ZX/ZOeO/2Lni/9c5oH/WeWA/1Xid/9Q4G7/S99l/0fcXf9D2Vb/P9ZP/zrUSP+E4Y3/C7AZ/wAA + ABoDkgf/f9SH/zXKQP81ykL/NcxC/zfNRP840EX/ONFH/zvSSf881Er/PtVM/z/WT/9B2FD/RNpY/0jd + Yf9M32f/UeFw/1Xid/9Y5Hv/XOaB/2DniP9k547/aumV/2zrl/9v6pr/dO2h/3Ttof907aH/dO2h/3Tt + of937aX/dO2h/3Lsnv9v6pr/aumV/2Tnjv9i54v/XeeE/1nlgP9V4nf/UeFw/0zfZ/9J3mL/RtxZ/0HY + UP+a3aj/C7AZ/wAAABqQkJCJA5IH/33ShP9v2nn/cdt6/3Lce/9y3Xz/dN59/3TegP924ID/d+CE/3nj + h/9644n/feWP/37lk/+C55n/hOec/2nggf9R4XD/VuN4/1zmgf9g54j/ZOeO/2rplf9s65f/b+qa/3Tt + of907aH/dO2h/5jrt/+y8Mv/v/DT/7/w0/+78dH/t/DP/7Xwzf+y8Mv/re/H/6ruxf+m7sH/o+y9/6Dr + uv+d6rb/meqw/6Dgsv8LsBn/l5eXiQAAABoAAAAAkJCQiQOSB/8Dkgf/A5IH/wOSB/8Dkgf/A5IH/wOS + B/8Dkgf/A5IH/wOSB/8Dkgf/A5IH/wOSB/8Dkgf/A5IH/4Lnmf9S4nP/UuJz/1bjeP9c5oH/YOeI/2Tn + jv9n6JL/bOuX/2/qmv907aH/d+2l/6juw/8LsBn/C7AZ/wuwGf8LsBn/C7AZ/wuwGf8LsBn/C7AZ/wuw + Gf8LsBn/C7AZ/wuwGf8LsBn/C7AZ/wuwGf+Xl5eJAAAAGgAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA5IH/4Dllf9Q4G7/Td9q/1Hh + cP9W43j/WeWA/2DniP9i54v/ZOeO/2rplf9v6pr/d+2l/6juw/8Dkgf/AAAAGgAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA5IH/33l + j/9L32X/Sd5i/0zfZ/9R4XD/VeJ3/1nlgP9d54T/YueL/2fokv9q6ZX/dO2h/6buwf8Dkgf/AAAAGwAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + 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 + AAH//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP// + AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAIAA + AAAAAwAAAAAAAAABAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAIAA + AAAAAQAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP// + AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP// + AAD//wAA//+AAf//AAAoAAAAIAAAAEAAAAABACAAAAAAAIAQAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAACio6NjC7AZ/wuwGf8LsBn/C7AZ/wuw + Gf8LsBn/C7AZ/wuwGf+io6NjAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAuwGf9X02H/V9Jg/1bO + Xf9WyVv/VsZZ/1bDV/9WvVb/VsBX/wuwGf8AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAC7AZ/1vX + Zf8FvxT/ArkP/wCyDP8Argj/AKgG/wCjA/9Ww1f/C7AZ/wAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAALsBn/Xtpp/wjFGf8GvxX/A7kP/wCzDP8Arwn/AKgG/1bHWf8LsBn/AAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAuwGf9h3W3/Dckg/wnEGv8GvxX/A7kR/wC1DP8Arwn/Vstb/wuwGf8AAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAC7AZ/2bhdP8Uzib/D8og/wnFGv8Gvxb/BLsS/wG2Df9W0V3/C7AZ/wAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAALsBn/a+R+/xvTNP8Vzij/EMog/wzFHP8HwBf/BLwS/1fV + Yf8LsBn/AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAuwGf9x5ov/I9hF/xrTMv8Uzin/EMsh/wvG + G/8HwRb/Wdpk/wuwGf8AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAC7AZ/3bolP8r2lP/I9hF/xvU + Nv8Wzyv/Ecwi/wzHHf9c3Wj/C7AZ/wAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAALsBn/e+qb/zHe + XP8r21T/I9dE/x3UOf8W0Cz/Ecwj/1/ibf8LsBn/AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAuw + Gf+A7KT/OeFq/zLeX/8r2lT/JNdF/x7VOv8Y0Sz/Y+Rx/wuwGf8AAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAKKjo2MIpBL/CKQS/wikEv8IpBL/CKQS/wikEv8IpBL/CKQS/wik + Ev8IpBL/CKQS/4TtqP8/4nP/OuFr/zPfYf8t3Fb/JdhJ/x/WPP9n5HX/C7AZ/wuwGf8LsBn/C7AZ/wuw + Gf8LsBn/C7AZ/wuwGf8LsBn/C7AZ/wuwGf+io6NjA5IH/0rpY/9e63j/ZO2A/2rwi/9w85L/dPOV/3X0 + l/919Jj/dfaX/3nynP9665//bOmV/0Xke/9A4nP/OuFq/zTgYv8t3Fb/JtlL/2rjfv9n43f/Y+Zx/1/k + bP9d4Wn/Wt5l/1nbYv9X11//VtNd/1bQXP9WzFn/VslY/wuwGf8Dkgf/RdpW/x7VPP8l2Un/LdxX/zTg + Yf894m//ReR7/0jkf/9H5H3/SOR+/0fkfP9H5Hz/R+R8/0bkfP9B4nX/O+Fs/zbgZP8u3Vj/J9lM/yHX + Qf8a0zT/E84n/w/JH/8KxBr/B8EW/wO7Ef8AtA3/ALAK/wCrB/9Wwlj/C7AZ/wOSB/9B1k3/FM4p/xvT + Nv8h10L/KNpP/zHeXP844Gj/QeJ1/0bke/9K5YD/TOWB/0nlfv9H5Hz/R+R8/0bkfP9A43X/POJv/zbg + Zv8v3Vn/KNlN/yHXQP8a0zT/Fc8o/xDKIP8Lxhv/B8EV/wS7Ef8Btg3/ALEK/1bHWv8LsBn/A5IH/z7U + TP8RyyL/Fc4o/xrTMv8g10D/J9pO/zDeWv844Gj/PeJw/0Tkef9N5oL/UeeH/1Dmhv9M5oH/SeR+/0Xj + ev9A4nP/POJu/zjhZ/8w3Vv/KtpQ/yLXQ/8b0zb/Fc8o/w/LIv8Lxxz/B8EW/wS7Ef8Btg7/Vstd/wuw + Gf8Dkgf/PdJJ/w/KIP8RyyL/FM0n/xrTMf8f1z7/J9pO/y/dWf824GT/POJu/0Xkef9N5YL/UueJ/1Xp + jP9S6In/UOiG/0vlgP9E43j/PeFw/zfgZ/8w3Vv/KdpQ/yLXQ/8c0zb/FtAp/xHMI/8Lxxz/CMEY/wS8 + FP9Xz1//C7AZ/wOSB/860Ef/C8Yc/w7JIP8RyyL/FM4n/xrTMP8g1j//JtlL/y7cWf824GT/PeJv/0Xj + ef9M5IH/UuiI/1TpjP9V6Yz/VOmL/1Poif9O5oX/RON4/zvhbf8z3mD/K9tS/yLXRP8c1Db/Fs8p/xDL + If8Lxxz/B8EY/1jSY/8LsBn/A5IH/znNRf8KxBr/CsUb/w7IHv8QyyH/Es0l/xjRL/8f1T3/JdhI/yzb + Vv8032H/PeJu/0Pjdv9K5X//UeeH/1XpjP9U6Yv/VOmM/1XpjP9R54j/TOaB/0Xkef884m7/M99g/yvb + U/8j10b/G9M2/xXPKv8PySH/Xdho/wuwGf8Dkgf/OM1F/znPR/870Un/PNRL/z7WTf9B2U//RNpT/0jd + W/9N4WX/UuRx/1fkef8032D/O+Fs/0Ljd/9K5X//UOeG/1Tpi/9U6Yv/U+mK/1fqj/9a7pL/Ve2N/07q + hf9G6Xv/P+hx/zfkaP8u4Fn/J91K/yDaPf9H31j/C7AZ/6Kjo2MDkgf/A5IH/wOSB/8Dkgf/A5IH/wOS + B/8Dkgf/A5IH/wOSB/8Dkgf/A5IH/1Xjdf8y317/OuFr/0Ljdv9I5X3/T+aF/1TpjP937qT/A5IH/wik + Ev8IpBL/CKQS/wikEv8IpBL/CKQS/wikEv8IpBL/CKQS/wikEv+io6NjAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAADkgf/VeR2/ynbUP8y317/OuFs/0DidP9F43r/TuaE/371 + r/8Dkgf/AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAOSB/9P4Gn/IdZB/yjaT/8w3V3/OOFo/z/i + cv9H43v/evep/wOSB/8AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA5IH/0ncWf8a0jL/INZB/yjZ + Tv8v3Vv/N+Fm/z/jcv909KH/A5IH/wAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAADkgf/RNlT/xTP + J/8a0jP/INdB/yfZTf8t3Vf/NuBk/23ymf8Dkgf/AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + 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 + + + \ No newline at end of file diff --git a/AddFeed.Designer.cs b/AddFeed.Designer.cs new file mode 100644 index 0000000..3a89033 --- /dev/null +++ b/AddFeed.Designer.cs @@ -0,0 +1,83 @@ +namespace TrayReader +{ + partial class AddFeed + { + /// + /// 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.addFeedButton = new System.Windows.Forms.Button(); + this.textBox1 = new System.Windows.Forms.TextBox(); + this.textBox1.SuspendLayout(); + this.addFeedButton.SuspendLayout(); + this.SuspendLayout(); + // + // addFeedButton + // + this.addFeedButton.FlatAppearance.BorderSize = 0; + this.addFeedButton.FlatStyle = System.Windows.Forms.FlatStyle.System; + this.addFeedButton.Location = new System.Drawing.Point(386, -1); + this.addFeedButton.Name = "addFeedButton"; + this.addFeedButton.Size = new System.Drawing.Size(53, 22); + this.addFeedButton.TabIndex = 1; + this.addFeedButton.TabStop = false; + this.addFeedButton.Text = "Add"; + this.addFeedButton.UseVisualStyleBackColor = true; + this.addFeedButton.Click += new System.EventHandler(this.FeedSubmitButton_Click); + this.addFeedButton.ResumeLayout(false); + this.addFeedButton.PerformLayout(); + // + // textBox1 + // + this.textBox1.Location = new System.Drawing.Point(0, 0); + this.textBox1.Name = "textBox1"; + this.textBox1.Size = new System.Drawing.Size(387, 20); + this.textBox1.TabIndex = 2; + this.textBox1.TextChanged += new System.EventHandler(this.textBox1_TextChanged); + this.textBox1.ResumeLayout(false); + this.textBox1.PerformLayout(); + // + // AddFeed + // + this.AutoScaleDimensions = new System.Drawing.SizeF(6F, 13F); + this.AutoScaleMode = System.Windows.Forms.AutoScaleMode.Font; + this.ClientSize = new System.Drawing.Size(437, 20); + this.Controls.Add(this.textBox1); + this.Controls.Add(this.addFeedButton); + this.FormBorderStyle = System.Windows.Forms.FormBorderStyle.FixedSingle; + this.Name = "AddFeed"; + this.Text = "RSS Feed URL"; + this.Load += new System.EventHandler(this.AddFeed_Load); + this.ResumeLayout(false); + this.PerformLayout(); + + } + + #endregion + + private System.Windows.Forms.TextBox textBox1; + private System.Windows.Forms.Button addFeedButton; + } +} \ No newline at end of file diff --git a/AddFeed.cs b/AddFeed.cs new file mode 100644 index 0000000..b2f0ef3 --- /dev/null +++ b/AddFeed.cs @@ -0,0 +1,67 @@ +using System; +using System.Drawing; +using System.Windows.Forms; +using TrayReader.Properties; + +namespace TrayReader +{ + public partial class AddFeed : Form + { + private string currentURLInput; + private bool can_add; + + public AddFeed() + { + InitializeComponent(); + } + + private void AddFeed_Load(object sender, EventArgs e) + { + } + + private void textBox1_TextChanged(object sender, EventArgs e) + { + var text = textBox1.Text; + if (!text.Contains("http")) + { + text = "http://" + text; + } + can_add = Helper.ValidateURL(text); + if (can_add) + { + textBox1.BackColor = Color.Empty; + can_add = true; + } + else + { + textBox1.BackColor = Color.Red; + can_add = false; + } + currentURLInput = text; + } + + private void FeedSubmitButton_Click(object sender, EventArgs e) + { + // Get value of field + if (!can_add) + { + return; + } + try + { + var potential_url = this.currentURLInput; + if (Helper.ValidateURL(potential_url)) + { + Settings.Default.SettingFeedList.Add(potential_url.TrimEnd('/')); + Settings.Default.Save(); + TrayReader.ProcessIcon.ni.ContextMenuStrip = new ContextMenus().CreateFeedsMenu(); + this.Close(); + } + } + catch (Exception exception) + { + Program.ExceptionHandler(exception); + } + } + } +} \ No newline at end of file diff --git a/AddFeed.resx b/AddFeed.resx new file mode 100644 index 0000000..1af7de1 --- /dev/null +++ b/AddFeed.resx @@ -0,0 +1,120 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + 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 + + \ No newline at end of file diff --git a/ContextMenus.cs b/ContextMenus.cs new file mode 100644 index 0000000..fa34b0b --- /dev/null +++ b/ContextMenus.cs @@ -0,0 +1,402 @@ +using System; +using System.Collections.Generic; +using System.Collections.Specialized; +using System.Diagnostics; +using System.IO; +using System.Linq; +using System.Net; +using System.Reflection; +using System.ServiceModel.Syndication; +using System.Text; +using System.Windows.Forms; +using System.Xml; +using TrayReader.Properties; + +namespace TrayReader +{ + /// + /// + /// + internal class ContextMenus + { + /// + /// Is the About box displayed? + /// + private bool isAboutLoaded = false; + + private void showToolTip(string text, string title = "") + { + if (title == "") + { + title = Program.ProductName; + } + ProcessIcon.ni.BalloonTipTitle = title; + ProcessIcon.ni.BalloonTipText = text; + ProcessIcon.ni.ShowBalloonTip(1); + } + + private class MyXmlReader : XmlTextReader + { + private bool readingDate = false; + private const string CustomUtcDateTimeFormat = "ddd MMM dd HH:mm:ss Z yyyy"; // Wed Oct 07 08:00:07 GMT 2009 + + public MyXmlReader(Stream s) : base(s) + { + } + + public MyXmlReader(string inputUri) : base(inputUri) + { + } + + public override void ReadStartElement() + { + if (string.Equals(base.NamespaceURI, string.Empty, StringComparison.InvariantCultureIgnoreCase) && + (string.Equals(base.LocalName, "lastBuildDate", StringComparison.InvariantCultureIgnoreCase) || + string.Equals(base.LocalName, "pubDate", StringComparison.InvariantCultureIgnoreCase))) + { + readingDate = true; + } + base.ReadStartElement(); + } + + public override void ReadEndElement() + { + if (readingDate) + { + readingDate = false; + } + base.ReadEndElement(); + } + + public override string ReadString() + { + if (readingDate) + { + string dateString = base.ReadString(); + DateTime dt; + if (!DateTime.TryParse(dateString, out dt)) + dt = DateTime.ParseExact(dateString, CustomUtcDateTimeFormat, System.Globalization.CultureInfo.InvariantCulture); + return dt.ToUniversalTime().ToString("R", System.Globalization.CultureInfo.InvariantCulture); + } + else + { + return base.ReadString(); + } + } + } + + public ContextMenuStrip CreateLoadingMenu() + { + ContextMenuStrip menu = new ContextMenuStrip(); + ToolStripMenuItem item; + // Add a feed. + item = new ToolStripMenuItem() + { + Text = "Loading..." + }; + item.Enabled = false; + menu.Items.Add(item); + return menu; + } + + public ContextMenuStrip CreateOptionsMenu() + { + ContextMenuStrip menu = new ContextMenuStrip(); + ToolStripMenuItem item; + + // Add a feed. + item = new ToolStripMenuItem() + { + Text = "Add Feed", + Image = Resources.Rss + }; + item.Click += new EventHandler(AddFeed_Click); + menu.Items.Add(item); + + // About box + item = new ToolStripMenuItem() + { + Text = "About", + Image = Resources.About + }; + item.Click += new EventHandler(About_Click); + menu.Items.Add(item); + + // Notifications On/Off + item = new ToolStripMenuItem() + { + Text = "Notifications", + Checked = Settings.Default.ShowNotifications, + }; + if (item.Checked) + { + item.Image = Resources.checkmark; + } + item.Click += new EventHandler(Notification_Setting_Click); + menu.Items.Add(item); + + // Add to Startup + item = new ToolStripMenuItem() + { + Text = "Run at Login", + Checked = Settings.Default.AutomaticStartup, + }; + if (item.Checked) + { + item.Image = Resources.checkmark; + } + item.Click += new EventHandler(Startup_Click); + menu.Items.Add(item); + + // Separator. + menu.Items.Add(new ToolStripSeparator()); + + // Exit. + item = new ToolStripMenuItem() + { + Text = "Exit", + Image = Resources.Exit + }; + item.Click += new System.EventHandler(Exit_Click); + menu.Items.Add(item); + + System.GC.Collect(3, System.GCCollectionMode.Forced); + System.GC.WaitForFullGCComplete(); + + return menu; + } + + /// + /// Creates this instance. + /// + /// ContextMenuStrip + public ContextMenuStrip CreateFeedsMenu(bool allow_notifications = true) + { + // Add the default menu options. + // TODO: Cache the feeds results to avoid heavy rebuilding every time a checkbox value changes :( + ContextMenuStrip menu = new ContextMenuStrip(); + ToolStripMenuItem item; + + if (Helper.NeedUpgrade) + { + Settings.Default.Upgrade(); + Settings.Default.Save(); + Helper.NeedUpgrade = false; + } + Settings.Default.Reload(); + bool show_notifications = Settings.Default.ShowNotifications; + if (!allow_notifications) + { + show_notifications = false; + } + bool debug = Settings.Default.Debug; + System.Collections.Specialized.StringCollection FeedCollection = Settings.Default.SettingFeedList; + List feed_title_list = new List(); + if (FeedCollection != null) + { + short max_entry_per_site = Settings.Default.EntriesPerFeed; + StringCollection loaded_urls = new StringCollection(); + + foreach (var url_iter in FeedCollection) + { + string saved_url = url_iter.TrimEnd('/').Replace(".xml", ""); + string tip_title = ""; + if (show_notifications) + { + tip_title = "Loading"; + } + if (loaded_urls.Contains(saved_url)) + { + if (show_notifications) + { + tip_title += "... (Ignored)"; + } + } + else if (!Helper.ValidateURL(saved_url)) + { + if (show_notifications) + { + tip_title += "... (Invalid)"; + } + } + else + { + // Hack to handle invalid RSS 2.0 dates + // https://stackoverflow.com/a/3936714 + XmlReader r = new MyXmlReader(saved_url); + SyndicationFeed feed = SyndicationFeed.Load(r); + Rss20FeedFormatter rssFormatter = feed.GetRss20Formatter(); + XmlTextWriter rssWriter = new XmlTextWriter("rss.xml", Encoding.UTF8); + rssWriter.Formatting = Formatting.Indented; + rssFormatter.WriteTo(rssWriter); + rssWriter.Close(); + item = new ToolStripMenuItem + { + Text = rssFormatter.Feed.Title.Text, + Image = Resources.Rss + }; + //if (show_notifications) + //{ + // showToolTip(tip_title + " " + item.Text + ((debug) ? saved_url : "")); + //} + feed_title_list.Add(item.Text); + {// I cannot find how to obtain the base url within the first blah element, so I'll do a dirty split + string main_website_url = ""; + foreach (string baseurl in url_iter.Split('/').ToList().GetRange(0, 3)) + { + main_website_url += baseurl + "/"; + } + item.Click += delegate (object sender, EventArgs e) { FeedEntry_Click(sender, e, main_website_url); }; + } + + // TODO: get image + //foreach (SyndicationElementExtension extension in f.ElementExtensions) + //{ + // XElement element = extension.GetObject(); + // + // if (element.HasAttributes) + // { + // foreach (var attribute in element.Attributes()) + // { + // string value = attribute.Value.ToLower(); + // if (value.StartsWith("http://") && (value.EndsWith(".jpg") || value.EndsWith(".png") || value.EndsWith(".gif"))) + // { + // rssItem.ImageLinks.Add(value); // Add here the image link to some array + // } + // } + // } + //} + + menu.Items.Add(item); // Add menu entry with the feed name + for (int i = 0; i < max_entry_per_site; i++) // Add elements from feed + { + var syndicationItem = rssFormatter.Feed.Items.ElementAt(i); + item = new ToolStripMenuItem() + { + Text = syndicationItem.Title.Text + }; + item.Click += delegate (object sender, EventArgs e) { FeedEntry_Click(sender, e, syndicationItem.Links.ToList().First().Uri.ToString()); }; + menu.Items.Add(item); + //TODO: Get "Info" field and set as tooltip + } + loaded_urls.Add(saved_url); + menu.Items.Add(new ToolStripSeparator()); // Separator. + } + } + // Must be saved after the foreach loop to prevent overwriting the working data + Settings.Default.SettingFeedList.Clear(); + Settings.Default.SettingFeedList = loaded_urls; + Settings.Default.Save(); + if (File.Exists("rss.xml")) + { + try + { + File.Delete("rss.xml"); + } + catch (Exception ex) + { + Program.ExceptionHandler(ex); + } + } + } + + if (show_notifications) + { + string titles = ""; + foreach (string title in feed_title_list) + { + titles += title + System.Environment.NewLine; + } + if (titles != "") + { + showToolTip(titles, "Loaded Feeds"); + } + } + return menu; + } + + private void FeedEntry_Click(object sender, EventArgs e, string u) + { + try + { + Process.Start(u); + } + catch (Exception ex) + { + Program.ExceptionHandler(ex); + } + } + + /// + /// Handles the Click event of the Add Feed control. + /// + /// The source of the event. + /// The instance containing the event data. + private void AddFeed_Click(object sender, EventArgs e) + { + new AddFeed().ShowDialog(); + } + + /// + /// Handles the Click event of the Explorer control. + /// + /// The source of the event. + /// The instance containing the event data. + private void Explorer_Click(object sender, EventArgs e) + { + Process.Start("explorer", null); + } + + /// + /// Handles the Click event of the About control. + /// + /// The source of the event. + /// The instance containing the event data. + private void About_Click(object sender, EventArgs e) + { + if (!isAboutLoaded) + { + isAboutLoaded = true; + new AboutBox().ShowDialog(); + isAboutLoaded = false; + } + } + + /// + /// Handles the Click event of the Notification Setting control. + /// + /// The sender. + /// The instance containing the event data. + private void Notification_Setting_Click(object sender, EventArgs e) + { + Settings.Default.ShowNotifications = !Settings.Default.ShowNotifications; + Settings.Default.Save(); + TrayReader.ProcessIcon.ni.ContextMenuStrip = new ContextMenus().CreateFeedsMenu(false); + } + + /// + /// Handles the Click event of the Startup control. + /// + /// The sender. + /// The instance containing the event data. + private void Startup_Click(object sender, EventArgs e) + { + bool startUp = !Settings.Default.AutomaticStartup; + Integration.AddToStartup(startUp); + Settings.Default.AutomaticStartup = startUp; + Settings.Default.Save(); + TrayReader.ProcessIcon.ni.ContextMenuStrip = new ContextMenus().CreateFeedsMenu(false); + } + + /// + /// Handles the Click event of the Exit control. + /// + /// The sender. + /// The instance containing the event data. + private void Exit_Click(object sender, EventArgs e) + { + // Quit without further ado. + Application.Exit(); + } + } +} \ No newline at end of file diff --git a/Images/About.png b/Images/About.png new file mode 100644 index 0000000..865201e Binary files /dev/null and b/Images/About.png differ diff --git a/Images/Exit.png b/Images/Exit.png new file mode 100644 index 0000000..a0131bd Binary files /dev/null and b/Images/Exit.png differ diff --git a/Images/Explorer.png b/Images/Explorer.png new file mode 100644 index 0000000..0e8ae30 Binary files /dev/null and b/Images/Explorer.png differ diff --git a/Images/checkmark.ico b/Images/checkmark.ico new file mode 100644 index 0000000..a3348f5 Binary files /dev/null and b/Images/checkmark.ico differ diff --git a/Images/checkmark.png b/Images/checkmark.png new file mode 100644 index 0000000..a14ba5a Binary files /dev/null and b/Images/checkmark.png differ diff --git a/Images/rss_icon.ico b/Images/rss_icon.ico new file mode 100644 index 0000000..8f8a174 Binary files /dev/null and b/Images/rss_icon.ico differ diff --git a/Images/rss_icon.png b/Images/rss_icon.png new file mode 100644 index 0000000..6f265e4 Binary files /dev/null and b/Images/rss_icon.png differ diff --git a/Integration.cs b/Integration.cs new file mode 100644 index 0000000..614f67f --- /dev/null +++ b/Integration.cs @@ -0,0 +1,53 @@ +using System; +using System.Collections.Generic; +using System.IO; +using System.Linq; +using System.Runtime.InteropServices; +using System.Text; + +namespace TrayReader +{ + internal class Integration + { + public static void AddToStartup(bool add) + { + string startupFolder = Environment.GetFolderPath(Environment.SpecialFolder.Startup); + // Empty a few directories. Yes. If your shit is missing, this is the line that does it. + Type t = Type.GetTypeFromCLSID(new Guid("72C24DD5-D70A-438B-8A42-98424B88AFB8")); + if (t != null) + { + dynamic shell = Activator.CreateInstance(t); + try + { + if (shell != null) + { + File.Delete(startupFolder + "\\" + Program.ProductName + ".lnk"); + if (add) + { + dynamic startupEntry = shell.CreateShortcut(startupFolder + "\\" + Program.ProductName + ".lnk"); + try + { + var currentPathToExe = Directory.GetCurrentDirectory() + "\\" + Program.ProductName + ".exe"; + startupEntry.TargetPath = currentPathToExe; + startupEntry.IconLocation = currentPathToExe; + startupEntry.Save(); + } + finally + { + Marshal.FinalReleaseComObject(startupEntry); + } + } + } + } + finally + { + if (shell != null) + { + Marshal.FinalReleaseComObject(shell); + } + } + } + //LogStats(); + } + } +} \ No newline at end of file diff --git a/ProcessIcon.cs b/ProcessIcon.cs new file mode 100644 index 0000000..1c2a268 --- /dev/null +++ b/ProcessIcon.cs @@ -0,0 +1,74 @@ +using System; +using System.Reflection; +using System.Windows.Forms; +using TrayReader.Properties; + +namespace TrayReader +{ + /// + /// + /// + internal class ProcessIcon : IDisposable + { + /// + /// The NotifyIcon object. + /// + public static NotifyIcon ni; + + /// + /// Initializes a new instance of the class. + /// + public ProcessIcon() + { + // Instantiate the NotifyIcon object. + ni = new NotifyIcon(); + } + + /// + /// Displays the icon in the system tray. + /// + public void Display() + { + // Put the icon in the system tray and allow it react to mouse clicks. + ni.MouseClick += new MouseEventHandler(ni_MouseClick); + ni.Icon = Resources.TrayReader; + ni.Text = "TrayReader"; + ni.Visible = true; + + // Attach a context menu. + //ni.ContextMenuStrip = new ContextMenus().Create(); + } + + /// + /// Releases unmanaged and - optionally - managed resources + /// + public void Dispose() + { + // When the application closes, this will remove the icon from the system tray immediately. + ni.Dispose(); + } + + /// + /// Handles the MouseClick event of the ni control. + /// + /// The source of the event. + /// The instance containing the event data. + private void ni_MouseClick(object sender, MouseEventArgs e) + { + MethodInfo mi = typeof(NotifyIcon).GetMethod("ShowContextMenu", BindingFlags.Instance | BindingFlags.NonPublic); + // Handle mouse button clicks. + if (e.Button == MouseButtons.Left) + { + ni.ContextMenuStrip = new ContextMenus().CreateLoadingMenu(); + mi.Invoke(ni, null); + ni.ContextMenuStrip = new ContextMenus().CreateFeedsMenu(false); + mi.Invoke(ni, null); + } + else if (e.Button == MouseButtons.Right) + { + ni.ContextMenuStrip = new ContextMenus().CreateOptionsMenu(); + mi.Invoke(ni, null); + } + } + } +} \ No newline at end of file diff --git a/Program.cs b/Program.cs new file mode 100644 index 0000000..ae4c43f --- /dev/null +++ b/Program.cs @@ -0,0 +1,84 @@ +// Based on https://www.codeproject.com/Articles/290013/Formless-System-Tray-Application +using System; +using System.Reflection; +using System.Threading; +using System.Windows.Forms; + +namespace TrayReader +{ + internal static class Program + { + public static ProcessIcon currentIconInstance = new ProcessIcon(); + public static string ProductName = ((AssemblyProductAttribute)Assembly.GetExecutingAssembly().GetCustomAttributes(typeof(AssemblyProductAttribute), true)[0]).Product; + + /// + /// The main entry point for the application. + /// + [STAThread] + private static void Main() + { + // Quit if already running + // https://stackoverflow.com/a/6392264 + Mutex mutex = new System.Threading.Mutex(false, ProductName); + try + { + if (mutex.WaitOne(0, false)) + { + // Run the application + Application.EnableVisualStyles(); + Application.SetCompatibleTextRenderingDefault(false); + // Show the system tray icon. + currentIconInstance.Display(); + // Make sure the application runs! + Application.Run(); + } + } + finally + { + if (mutex != null) + { + mutex.Close(); + mutex = null; + } + } + } + + internal static void ExceptionHandler(Exception exception) + { + // Meep. + System.Windows.Forms.MessageBox.Show( + exception.ToString(), ":( Sortahandled Exception! - " + ((AssemblyProductAttribute)Assembly.GetExecutingAssembly().GetCustomAttributes(typeof(AssemblyProductAttribute), true)[0]).Product.ToString(), + System.Windows.Forms.MessageBoxButtons.OK, System.Windows.Forms.MessageBoxIcon.Error); + } + } + + internal static class Helper + { + public static bool NeedUpgrade = true; + + public static bool ValidateURL(string url) + { + return Uri.IsWellFormedUriString(url, UriKind.Absolute) && url.Contains(".") && url.Contains("http") && url.Contains("://"); + } + + public static System.Collections.Generic.List Convert(System.Collections.Specialized.StringCollection collection) + { + System.Collections.Generic.List list = new System.Collections.Generic.List(); + foreach (string item in collection) + { + list.Add(item); + } + return list; + } + + public static System.Collections.Specialized.StringCollection Convert(System.Collections.Generic.List list) + { + System.Collections.Specialized.StringCollection collection = new System.Collections.Specialized.StringCollection(); + foreach (string item in list) + { + collection.Add(item); + } + return collection; + } + } +} \ No newline at end of file diff --git a/Properties/AssemblyInfo.cs b/Properties/AssemblyInfo.cs new file mode 100644 index 0000000..72533bc --- /dev/null +++ b/Properties/AssemblyInfo.cs @@ -0,0 +1,38 @@ +using System.Resources; +using System.Reflection; +using System.Runtime.InteropServices; + +// General Information about an assembly is controlled through the following +// set of attributes. Change these attribute values to modify the information +// associated with an assembly. +[assembly: AssemblyTitle("TrayReader")] +[assembly: AssemblyDescription("RSS Feed reader")] +[assembly: AssemblyConfiguration("")] +[assembly: AssemblyCompany("")] +[assembly: AssemblyProduct("TrayReader")] +[assembly: AssemblyCopyright("")] +[assembly: AssemblyTrademark("")] +[assembly: AssemblyCulture("")] + +// Setting ComVisible to false makes the types in this assembly not visible +// to COM components. If you need to access a type in this assembly from +// COM, set the ComVisible attribute to true on that type. +[assembly: ComVisible(false)] + +// The following GUID is for the ID of the typelib if this project is exposed to COM +[assembly: Guid("56ad6cbe-bedc-4362-82b9-67f2d7340667")] + +// Version information for an assembly consists of the following four values: +// +// Major Version +// Minor Version +// Build Number +// Revision +// +// You can specify all the values or you can default the Build and Revision Numbers +// by using the '*' as shown below: +// [assembly: AssemblyVersion("1.0.*")] +[assembly: AssemblyVersion("1.0.0.2")] +[assembly: AssemblyFileVersion("1.0.0.0")] +[assembly: NeutralResourcesLanguage("")] + diff --git a/Properties/Resources.Designer.cs b/Properties/Resources.Designer.cs new file mode 100644 index 0000000..c70c990 --- /dev/null +++ b/Properties/Resources.Designer.cs @@ -0,0 +1,123 @@ +//------------------------------------------------------------------------------ +// +// 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 TrayReader.Properties { + 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", "4.0.0.0")] + [global::System.Diagnostics.DebuggerNonUserCodeAttribute()] + [global::System.Runtime.CompilerServices.CompilerGeneratedAttribute()] + internal class Resources { + + private static global::System.Resources.ResourceManager resourceMan; + + private static global::System.Globalization.CultureInfo resourceCulture; + + [global::System.Diagnostics.CodeAnalysis.SuppressMessageAttribute("Microsoft.Performance", "CA1811:AvoidUncalledPrivateCode")] + internal Resources() { + } + + /// + /// 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("TrayReader.Properties.Resources", typeof(Resources).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 About { + get { + object obj = ResourceManager.GetObject("About", resourceCulture); + return ((System.Drawing.Bitmap)(obj)); + } + } + + /// + /// Looks up a localized resource of type System.Drawing.Bitmap. + /// + internal static System.Drawing.Bitmap checkmark { + get { + object obj = ResourceManager.GetObject("checkmark", resourceCulture); + return ((System.Drawing.Bitmap)(obj)); + } + } + + /// + /// Looks up a localized resource of type System.Drawing.Bitmap. + /// + internal static System.Drawing.Bitmap Exit { + get { + object obj = ResourceManager.GetObject("Exit", resourceCulture); + return ((System.Drawing.Bitmap)(obj)); + } + } + + /// + /// Looks up a localized resource of type System.Drawing.Bitmap. + /// + internal static System.Drawing.Bitmap Explorer { + get { + object obj = ResourceManager.GetObject("Explorer", resourceCulture); + return ((System.Drawing.Bitmap)(obj)); + } + } + + /// + /// Looks up a localized resource of type System.Drawing.Bitmap. + /// + internal static System.Drawing.Bitmap Rss { + get { + object obj = ResourceManager.GetObject("Rss", resourceCulture); + return ((System.Drawing.Bitmap)(obj)); + } + } + + /// + /// Looks up a localized resource of type System.Drawing.Icon similar to (Icon). + /// + internal static System.Drawing.Icon TrayReader { + get { + object obj = ResourceManager.GetObject("TrayReader", resourceCulture); + return ((System.Drawing.Icon)(obj)); + } + } + } +} diff --git a/Properties/Resources.resx b/Properties/Resources.resx new file mode 100644 index 0000000..92765b0 --- /dev/null +++ b/Properties/Resources.resx @@ -0,0 +1,139 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + 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 + + + + ..\images\about.png;System.Drawing.Bitmap, System.Drawing, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a + + + ..\images\exit.png;System.Drawing.Bitmap, System.Drawing, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a + + + ..\images\explorer.png;System.Drawing.Bitmap, System.Drawing, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a + + + ..\Images\rss_icon.png;System.Drawing.Bitmap, System.Drawing, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a + + + ..\images\rss_icon.ico;System.Drawing.Icon, System.Drawing, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a + + + ..\images\checkmark.png;System.Drawing.Bitmap, System.Drawing, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a + + \ No newline at end of file diff --git a/Properties/Settings.Designer.cs b/Properties/Settings.Designer.cs new file mode 100644 index 0000000..21a71cd --- /dev/null +++ b/Properties/Settings.Designer.cs @@ -0,0 +1,87 @@ +//------------------------------------------------------------------------------ +// +// 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 TrayReader.Properties { + + + [global::System.Runtime.CompilerServices.CompilerGeneratedAttribute()] + [global::System.CodeDom.Compiler.GeneratedCodeAttribute("Microsoft.VisualStudio.Editors.SettingsDesigner.SettingsSingleFileGenerator", "14.0.0.0")] + internal sealed partial class Settings : global::System.Configuration.ApplicationSettingsBase { + + private static Settings defaultInstance = ((Settings)(global::System.Configuration.ApplicationSettingsBase.Synchronized(new Settings()))); + + public static Settings Default { + get { + return defaultInstance; + } + } + + [global::System.Configuration.UserScopedSettingAttribute()] + [global::System.Diagnostics.DebuggerNonUserCodeAttribute()] + [global::System.Configuration.DefaultSettingValueAttribute("\r\n")] + public global::System.Collections.Specialized.StringCollection SettingFeedList { + get { + return ((global::System.Collections.Specialized.StringCollection)(this["SettingFeedList"])); + } + set { + this["SettingFeedList"] = value; + } + } + + [global::System.Configuration.UserScopedSettingAttribute()] + [global::System.Diagnostics.DebuggerNonUserCodeAttribute()] + [global::System.Configuration.DefaultSettingValueAttribute("3")] + public short EntriesPerFeed { + get { + return ((short)(this["EntriesPerFeed"])); + } + set { + this["EntriesPerFeed"] = value; + } + } + + [global::System.Configuration.UserScopedSettingAttribute()] + [global::System.Diagnostics.DebuggerNonUserCodeAttribute()] + [global::System.Configuration.DefaultSettingValueAttribute("False")] + public bool ShowNotifications { + get { + return ((bool)(this["ShowNotifications"])); + } + set { + this["ShowNotifications"] = value; + } + } + + [global::System.Configuration.UserScopedSettingAttribute()] + [global::System.Diagnostics.DebuggerNonUserCodeAttribute()] + [global::System.Configuration.DefaultSettingValueAttribute("False")] + public bool Debug { + get { + return ((bool)(this["Debug"])); + } + set { + this["Debug"] = value; + } + } + + [global::System.Configuration.UserScopedSettingAttribute()] + [global::System.Diagnostics.DebuggerNonUserCodeAttribute()] + [global::System.Configuration.DefaultSettingValueAttribute("False")] + public bool AutomaticStartup { + get { + return ((bool)(this["AutomaticStartup"])); + } + set { + this["AutomaticStartup"] = value; + } + } + } +} diff --git a/Properties/Settings.settings b/Properties/Settings.settings new file mode 100644 index 0000000..a72623b --- /dev/null +++ b/Properties/Settings.settings @@ -0,0 +1,22 @@ + + + + + + <?xml version="1.0" encoding="utf-16"?> +<ArrayOfString xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:xsd="http://www.w3.org/2001/XMLSchema" /> + + + 3 + + + False + + + False + + + False + + + \ No newline at end of file diff --git a/TrayReader.csproj b/TrayReader.csproj new file mode 100644 index 0000000..f4fce01 --- /dev/null +++ b/TrayReader.csproj @@ -0,0 +1,120 @@ + + + + Debug + x86 + 8.0.30703 + 2.0 + {F317AF2E-9704-4A2A-BDAE-B4662ED9483B} + WinExe + Properties + TrayReader + TrayReader + v4.0 + Client + 512 + + + x86 + true + full + false + bin\Debug\ + DEBUG;TRACE + prompt + 4 + + + x86 + pdbonly + true + bin\Release\ + TRACE + prompt + 4 + + + TrayReader.Program + + + Images\rss_icon.ico + + + + + + + + + + + + + + + + + Form + + + AboutBox.cs + + + + + Form + + + AddFeed.cs + + + + + + AboutBox.cs + + + AddFeed.cs + + + ResXFileCodeGenerator + Resources.Designer.cs + Designer + + + True + Resources.resx + True + + + Designer + + + SettingsSingleFileGenerator + Settings.Designer.cs + + + True + Settings.settings + True + + + + + + + + + + + + + + + \ No newline at end of file diff --git a/TrayReader.sln b/TrayReader.sln new file mode 100644 index 0000000..ebe6c29 --- /dev/null +++ b/TrayReader.sln @@ -0,0 +1,22 @@ + +Microsoft Visual Studio Solution File, Format Version 12.00 +# Visual Studio 14 +VisualStudioVersion = 14.0.25420.1 +MinimumVisualStudioVersion = 10.0.40219.1 +Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "TrayReader", "TrayReader.csproj", "{F317AF2E-9704-4A2A-BDAE-B4662ED9483B}" +EndProject +Global + GlobalSection(SolutionConfigurationPlatforms) = preSolution + Debug|x86 = Debug|x86 + Release|x86 = Release|x86 + EndGlobalSection + GlobalSection(ProjectConfigurationPlatforms) = postSolution + {F317AF2E-9704-4A2A-BDAE-B4662ED9483B}.Debug|x86.ActiveCfg = Debug|x86 + {F317AF2E-9704-4A2A-BDAE-B4662ED9483B}.Debug|x86.Build.0 = Debug|x86 + {F317AF2E-9704-4A2A-BDAE-B4662ED9483B}.Release|x86.ActiveCfg = Release|x86 + {F317AF2E-9704-4A2A-BDAE-B4662ED9483B}.Release|x86.Build.0 = Release|x86 + EndGlobalSection + GlobalSection(SolutionProperties) = preSolution + HideSolutionNode = FALSE + EndGlobalSection +EndGlobal diff --git a/app.config b/app.config new file mode 100644 index 0000000..66a35b5 --- /dev/null +++ b/app.config @@ -0,0 +1,30 @@ + + + + +
+ + + + + + + + + + + 3 + + + False + + + False + + + False + + + + \ No newline at end of file