From e333887de770733aaba0d211d52ff8c850865510 Mon Sep 17 00:00:00 2001 From: Levi <42508566+LeviBickel@users.noreply.github.com> Date: Tue, 12 Jan 2021 13:36:35 -0700 Subject: [PATCH 1/2] Add files via upload --- src/Handlers/ContextMenuHandler.cs | 264 ++++++++++++++++------------- 1 file changed, 144 insertions(+), 120 deletions(-) diff --git a/src/Handlers/ContextMenuHandler.cs b/src/Handlers/ContextMenuHandler.cs index 67864f7..39d83a3 100644 --- a/src/Handlers/ContextMenuHandler.cs +++ b/src/Handlers/ContextMenuHandler.cs @@ -1,121 +1,145 @@ -using System; -using System.Collections.Generic; -using System.Linq; -using System.Text; -using CefSharp; -using System.Windows.Forms; -using CefSharp.WinForms; - -namespace SharpBrowser { - internal class ContextMenuHandler : IContextMenuHandler { - - private const int ShowDevTools = 26501; - private const int CloseDevTools = 26502; - private const int SaveImageAs = 26503; - private const int SaveAsPdf = 26504; - private const int SaveLinkAs = 26505; - private const int CopyLinkAddress = 26506; - private const int OpenLinkInNewTab = 26507; - private const int CloseTab = 40007; - private const int RefreshTab = 40008; - readonly MainForm myForm; - - private string lastSelText = ""; - - public ContextMenuHandler(MainForm form) { - myForm = form; - } - - public void OnBeforeContextMenu(IWebBrowser browserControl, IBrowser browser, IFrame frame, IContextMenuParams parameters, IMenuModel model) { - - // clear the menu - model.Clear(); - - // save text - lastSelText = parameters.SelectionText; - - // to copy text - if (parameters.SelectionText.CheckIfValid()) { - model.AddItem(CefMenuCommand.Copy, "Copy"); - model.AddSeparator(); - } - - //Removing existing menu item - //bool removed = model.Remove(CefMenuCommand.ViewSource); // Remove "View Source" option - if (parameters.LinkUrl != "") { - model.AddItem((CefMenuCommand)OpenLinkInNewTab, "Open link in new tab"); - model.AddItem((CefMenuCommand)CopyLinkAddress, "Copy link"); - model.AddSeparator(); - } - - if (parameters.HasImageContents && parameters.SourceUrl.CheckIfValid()) { - - // RIGHT CLICKED ON IMAGE - - } - - if (parameters.SelectionText != null) { - - // TEXT IS SELECTED - - } - - //Add new custom menu items - //#if DEBUG - model.AddItem((CefMenuCommand)ShowDevTools, "Developer tools"); - model.AddItem(CefMenuCommand.ViewSource, "View source"); - model.AddSeparator(); - //#endif - - model.AddItem((CefMenuCommand)RefreshTab, "Refresh tab"); - model.AddItem((CefMenuCommand)CloseTab, "Close tab"); - - } - - public bool OnContextMenuCommand(IWebBrowser browserControl, IBrowser browser, IFrame frame, IContextMenuParams parameters, CefMenuCommand commandId, CefEventFlags eventFlags) { - - int id = (int)commandId; - - if (id == ShowDevTools) { - browser.ShowDevTools(); - } - if (id == CloseDevTools) { - browser.CloseDevTools(); - } - if (id == SaveImageAs) { - browser.GetHost().StartDownload(parameters.SourceUrl); - } - if (id == SaveLinkAs) { - browser.GetHost().StartDownload(parameters.LinkUrl); - } - if (id == OpenLinkInNewTab) { - ChromiumWebBrowser newBrowser = myForm.AddNewBrowserTab(parameters.LinkUrl, false, browser.MainFrame.Url); - } - if (id == CopyLinkAddress) { - Clipboard.SetText(parameters.LinkUrl); - } - if (id == CloseTab) { - myForm.InvokeOnParent(delegate () { - myForm.CloseActiveTab(); - }); - } - if (id == RefreshTab) { - myForm.InvokeOnParent(delegate () { - myForm.RefreshActiveTab(); - }); - } - - return false; - } - - public void OnContextMenuDismissed(IWebBrowser browserControl, IBrowser browser, IFrame frame) { - - } - - public bool RunContextMenu(IWebBrowser browserControl, IBrowser browser, IFrame frame, IContextMenuParams parameters, IMenuModel model, IRunContextMenuCallback callback) { - - // show default menu - return false; - } - } +using System; +using System.Collections.Generic; +using System.Linq; +using System.Text; +using CefSharp; +using System.Windows.Forms; +using CefSharp.WinForms; + +namespace SharpBrowser { + internal class ContextMenuHandler : IContextMenuHandler { + + private const int ShowDevTools = 26501; + private const int CloseDevTools = 26502; + private const int SaveImageAs = 26503; + private const int SaveAsPdf = 26504; + private const int SaveLinkAs = 26505; + private const int CopyLinkAddress = 26506; + private const int OpenLinkInNewTab = 26507; + private const int CloseTab = 40007; + private const int RefreshTab = 40008; + private const int Print = 26508; + readonly MainForm myForm; + + private string lastSelText = ""; + + public ContextMenuHandler(MainForm form) { + myForm = form; + } + + public void OnBeforeContextMenu(IWebBrowser browserControl, IBrowser browser, IFrame frame, IContextMenuParams parameters, IMenuModel model) { + + // clear the menu + model.Clear(); + + // save text + lastSelText = parameters.SelectionText; + + // to copy text + if (parameters.SelectionText.CheckIfValid()) { + model.AddItem(CefMenuCommand.Copy, "Copy"); + model.AddSeparator(); + } + + //Removing existing menu item + //bool removed = model.Remove(CefMenuCommand.ViewSource); // Remove "View Source" option + if (parameters.LinkUrl != "") { + model.AddItem((CefMenuCommand)OpenLinkInNewTab, "Open link in new tab"); + model.AddItem((CefMenuCommand)CopyLinkAddress, "Copy link"); + model.AddSeparator(); + } + + if (parameters.HasImageContents && parameters.SourceUrl.CheckIfValid()) { + + // RIGHT CLICKED ON IMAGE + + } + + if (parameters.SelectionText != null) { + + // TEXT IS SELECTED + + } + + //Add new custom menu items + //#if DEBUG + model.AddItem((CefMenuCommand)ShowDevTools, "Developer tools"); + model.AddItem(CefMenuCommand.ViewSource, "View source"); + model.AddSeparator(); + //#endif + + model.AddItem((CefMenuCommand)RefreshTab, "Refresh tab"); + model.AddItem((CefMenuCommand)CloseTab, "Close tab"); + model.AddSeparator(); + + model.AddItem((CefMenuCommand)SaveAsPdf, "Save as PDF"); + model.AddItem((CefMenuCommand)Print, "Print Page"); + + } + + public bool OnContextMenuCommand(IWebBrowser browserControl, IBrowser browser, IFrame frame, IContextMenuParams parameters, CefMenuCommand commandId, CefEventFlags eventFlags) { + + int id = (int)commandId; + + if (id == ShowDevTools) { + browser.ShowDevTools(); + } + if (id == CloseDevTools) { + browser.CloseDevTools(); + } + if (id == SaveImageAs) { + browser.GetHost().StartDownload(parameters.SourceUrl); + } + if (id == SaveLinkAs) { + browser.GetHost().StartDownload(parameters.LinkUrl); + } + if (id == OpenLinkInNewTab) { + ChromiumWebBrowser newBrowser = myForm.AddNewBrowserTab(parameters.LinkUrl, false, browser.MainFrame.Url); + } + if (id == CopyLinkAddress) { + Clipboard.SetText(parameters.LinkUrl); + } + if (id == CloseTab) { + myForm.InvokeOnParent(delegate () { + myForm.CloseActiveTab(); + }); + } + if (id == RefreshTab) { + myForm.InvokeOnParent(delegate () { + myForm.RefreshActiveTab(); + }); + } + if (id == SaveAsPdf) + { + + SaveFileDialog sfd = new SaveFileDialog(); + sfd.Filter = "PDF Files | *.pdf"; + if (sfd.ShowDialog() == DialogResult.OK) + { + //string path = Path.GetFileName(sfd.FileName); + browser.PrintToPdfAsync(sfd.FileName, new PdfPrintSettings() + { + SelectionOnly = false, + BackgroundsEnabled = true + }); + } + } + if (id == Print) + { + browser.Print(); + } + + return false; + } + + public void OnContextMenuDismissed(IWebBrowser browserControl, IBrowser browser, IFrame frame) { + + } + + public bool RunContextMenu(IWebBrowser browserControl, IBrowser browser, IFrame frame, IContextMenuParams parameters, IMenuModel model, IRunContextMenuCallback callback) { + + // show default menu + return false; + } + } } \ No newline at end of file From c11a020f14db4cfa010166da442b639a97a4354a Mon Sep 17 00:00:00 2001 From: Levi Date: Wed, 13 Jan 2021 20:38:52 -0700 Subject: [PATCH 2/2] Added Home button to the address bar. --- src/MainForm.Designer.cs | 605 ++++++++++++++++++++------------------- src/MainForm.cs | 10 +- src/MainForm.resx | 100 ++++--- 3 files changed, 374 insertions(+), 341 deletions(-) diff --git a/src/MainForm.Designer.cs b/src/MainForm.Designer.cs index 0460d68..0dec96b 100644 --- a/src/MainForm.Designer.cs +++ b/src/MainForm.Designer.cs @@ -28,305 +28,323 @@ protected override void Dispose(bool disposing) /// private void InitializeComponent() { - this.components = new System.ComponentModel.Container(); - System.ComponentModel.ComponentResourceManager resources = new System.ComponentModel.ComponentResourceManager(typeof(MainForm)); - this.menuStripTab = new System.Windows.Forms.ContextMenuStrip(this.components); - this.menuCloseTab = new System.Windows.Forms.ToolStripMenuItem(); - this.menuCloseOtherTabs = new System.Windows.Forms.ToolStripMenuItem(); - this.BtnRefresh = new System.Windows.Forms.Button(); - this.BtnStop = new System.Windows.Forms.Button(); - this.BtnForward = new System.Windows.Forms.Button(); - this.BtnBack = new System.Windows.Forms.Button(); - this.timer1 = new System.Windows.Forms.Timer(this.components); - this.BtnDownloads = new System.Windows.Forms.Button(); - this.TxtURL = new System.Windows.Forms.TextBox(); - this.PanelToolbar = new System.Windows.Forms.Panel(); - this.TabPages = new FarsiLibrary.Win.FATabStrip(); - this.tabStrip1 = new FarsiLibrary.Win.FATabStripItem(); - this.tabStripAdd = new FarsiLibrary.Win.FATabStripItem(); - this.PanelStatus = new System.Windows.Forms.Panel(); - this.PanelSearch = new System.Windows.Forms.Panel(); - this.BtnNextSearch = new System.Windows.Forms.Button(); - this.BtnPrevSearch = new System.Windows.Forms.Button(); - this.BtnCloseSearch = new System.Windows.Forms.Button(); - this.TxtSearch = new System.Windows.Forms.TextBox(); - this.menuStripTab.SuspendLayout(); - this.PanelToolbar.SuspendLayout(); - ((System.ComponentModel.ISupportInitialize)(this.TabPages)).BeginInit(); - this.TabPages.SuspendLayout(); - this.PanelSearch.SuspendLayout(); - this.SuspendLayout(); - // - // menuStripTab - // - this.menuStripTab.Items.AddRange(new System.Windows.Forms.ToolStripItem[] { + this.components = new System.ComponentModel.Container(); + System.ComponentModel.ComponentResourceManager resources = new System.ComponentModel.ComponentResourceManager(typeof(MainForm)); + this.menuStripTab = new System.Windows.Forms.ContextMenuStrip(this.components); + this.menuCloseTab = new System.Windows.Forms.ToolStripMenuItem(); + this.menuCloseOtherTabs = new System.Windows.Forms.ToolStripMenuItem(); + this.BtnRefresh = new System.Windows.Forms.Button(); + this.BtnStop = new System.Windows.Forms.Button(); + this.BtnForward = new System.Windows.Forms.Button(); + this.BtnBack = new System.Windows.Forms.Button(); + this.timer1 = new System.Windows.Forms.Timer(this.components); + this.BtnDownloads = new System.Windows.Forms.Button(); + this.TxtURL = new System.Windows.Forms.TextBox(); + this.PanelToolbar = new System.Windows.Forms.Panel(); + this.TabPages = new FarsiLibrary.Win.FATabStrip(); + this.tabStrip1 = new FarsiLibrary.Win.FATabStripItem(); + this.tabStripAdd = new FarsiLibrary.Win.FATabStripItem(); + this.PanelStatus = new System.Windows.Forms.Panel(); + this.PanelSearch = new System.Windows.Forms.Panel(); + this.BtnNextSearch = new System.Windows.Forms.Button(); + this.BtnPrevSearch = new System.Windows.Forms.Button(); + this.BtnCloseSearch = new System.Windows.Forms.Button(); + this.TxtSearch = new System.Windows.Forms.TextBox(); + this.BtnHome = new System.Windows.Forms.Button(); + this.menuStripTab.SuspendLayout(); + this.PanelToolbar.SuspendLayout(); + ((System.ComponentModel.ISupportInitialize)(this.TabPages)).BeginInit(); + this.TabPages.SuspendLayout(); + this.PanelSearch.SuspendLayout(); + this.SuspendLayout(); + // + // menuStripTab + // + this.menuStripTab.ImageScalingSize = new System.Drawing.Size(20, 20); + this.menuStripTab.Items.AddRange(new System.Windows.Forms.ToolStripItem[] { this.menuCloseTab, this.menuCloseOtherTabs}); - this.menuStripTab.Name = "menuStripTab"; - this.menuStripTab.Size = new System.Drawing.Size(198, 52); - // - // menuCloseTab - // - this.menuCloseTab.Name = "menuCloseTab"; - this.menuCloseTab.ShortcutKeys = ((System.Windows.Forms.Keys)((System.Windows.Forms.Keys.Control | System.Windows.Forms.Keys.F4))); - this.menuCloseTab.Size = new System.Drawing.Size(197, 24); - this.menuCloseTab.Text = "Close tab"; - this.menuCloseTab.Click += new System.EventHandler(this.menuCloseTab_Click); - // - // menuCloseOtherTabs - // - this.menuCloseOtherTabs.Name = "menuCloseOtherTabs"; - this.menuCloseOtherTabs.Size = new System.Drawing.Size(197, 24); - this.menuCloseOtherTabs.Text = "Close other tabs"; - this.menuCloseOtherTabs.Click += new System.EventHandler(this.menuCloseOtherTabs_Click); - // - // BtnRefresh - // - this.BtnRefresh.Anchor = ((System.Windows.Forms.AnchorStyles)((System.Windows.Forms.AnchorStyles.Top | System.Windows.Forms.AnchorStyles.Right))); - this.BtnRefresh.FlatStyle = System.Windows.Forms.FlatStyle.Flat; - this.BtnRefresh.ForeColor = System.Drawing.Color.White; - this.BtnRefresh.Image = ((System.Drawing.Image)(resources.GetObject("BtnRefresh.Image"))); - this.BtnRefresh.Location = new System.Drawing.Point(878, 0); - this.BtnRefresh.Margin = new System.Windows.Forms.Padding(3, 4, 3, 4); - this.BtnRefresh.Name = "BtnRefresh"; - this.BtnRefresh.Size = new System.Drawing.Size(25, 30); - this.BtnRefresh.TabIndex = 3; - this.BtnRefresh.UseVisualStyleBackColor = true; - this.BtnRefresh.Click += new System.EventHandler(this.bRefresh_Click); - // - // BtnStop - // - this.BtnStop.Anchor = ((System.Windows.Forms.AnchorStyles)((System.Windows.Forms.AnchorStyles.Top | System.Windows.Forms.AnchorStyles.Right))); - this.BtnStop.FlatStyle = System.Windows.Forms.FlatStyle.Flat; - this.BtnStop.ForeColor = System.Drawing.Color.White; - this.BtnStop.Image = ((System.Drawing.Image)(resources.GetObject("BtnStop.Image"))); - this.BtnStop.Location = new System.Drawing.Point(878, -2); - this.BtnStop.Margin = new System.Windows.Forms.Padding(3, 4, 3, 4); - this.BtnStop.Name = "BtnStop"; - this.BtnStop.Size = new System.Drawing.Size(25, 30); - this.BtnStop.TabIndex = 2; - this.BtnStop.UseVisualStyleBackColor = true; - this.BtnStop.Click += new System.EventHandler(this.bStop_Click); - // - // BtnForward - // - this.BtnForward.FlatStyle = System.Windows.Forms.FlatStyle.Flat; - this.BtnForward.ForeColor = System.Drawing.Color.White; - this.BtnForward.Image = ((System.Drawing.Image)(resources.GetObject("BtnForward.Image"))); - this.BtnForward.Location = new System.Drawing.Point(29, 0); - this.BtnForward.Margin = new System.Windows.Forms.Padding(3, 4, 3, 4); - this.BtnForward.Name = "BtnForward"; - this.BtnForward.Size = new System.Drawing.Size(25, 30); - this.BtnForward.TabIndex = 1; - this.BtnForward.UseVisualStyleBackColor = true; - this.BtnForward.Click += new System.EventHandler(this.bForward_Click); - // - // BtnBack - // - this.BtnBack.FlatStyle = System.Windows.Forms.FlatStyle.Flat; - this.BtnBack.ForeColor = System.Drawing.Color.White; - this.BtnBack.Image = ((System.Drawing.Image)(resources.GetObject("BtnBack.Image"))); - this.BtnBack.Location = new System.Drawing.Point(2, 0); - this.BtnBack.Margin = new System.Windows.Forms.Padding(3, 4, 3, 4); - this.BtnBack.Name = "BtnBack"; - this.BtnBack.Size = new System.Drawing.Size(25, 30); - this.BtnBack.TabIndex = 0; - this.BtnBack.UseVisualStyleBackColor = true; - this.BtnBack.Click += new System.EventHandler(this.bBack_Click); - // - // timer1 - // - this.timer1.Interval = 50; - this.timer1.Tick += new System.EventHandler(this.timer1_Tick); - // - // BtnDownloads - // - this.BtnDownloads.Anchor = ((System.Windows.Forms.AnchorStyles)((System.Windows.Forms.AnchorStyles.Top | System.Windows.Forms.AnchorStyles.Right))); - this.BtnDownloads.FlatStyle = System.Windows.Forms.FlatStyle.Flat; - this.BtnDownloads.ForeColor = System.Drawing.Color.White; - this.BtnDownloads.Image = ((System.Drawing.Image)(resources.GetObject("BtnDownloads.Image"))); - this.BtnDownloads.Location = new System.Drawing.Point(906, 0); - this.BtnDownloads.Margin = new System.Windows.Forms.Padding(3, 4, 3, 4); - this.BtnDownloads.Name = "BtnDownloads"; - this.BtnDownloads.Size = new System.Drawing.Size(25, 30); - this.BtnDownloads.TabIndex = 4; - this.BtnDownloads.Tag = "Downloads"; - this.BtnDownloads.UseVisualStyleBackColor = true; - this.BtnDownloads.Click += new System.EventHandler(this.bDownloads_Click); - // - // TxtURL - // - this.TxtURL.Anchor = ((System.Windows.Forms.AnchorStyles)(((System.Windows.Forms.AnchorStyles.Top | System.Windows.Forms.AnchorStyles.Left) + this.menuStripTab.Name = "menuStripTab"; + this.menuStripTab.Size = new System.Drawing.Size(198, 52); + // + // menuCloseTab + // + this.menuCloseTab.Name = "menuCloseTab"; + this.menuCloseTab.ShortcutKeys = ((System.Windows.Forms.Keys)((System.Windows.Forms.Keys.Control | System.Windows.Forms.Keys.F4))); + this.menuCloseTab.Size = new System.Drawing.Size(197, 24); + this.menuCloseTab.Text = "Close tab"; + this.menuCloseTab.Click += new System.EventHandler(this.menuCloseTab_Click); + // + // menuCloseOtherTabs + // + this.menuCloseOtherTabs.Name = "menuCloseOtherTabs"; + this.menuCloseOtherTabs.Size = new System.Drawing.Size(197, 24); + this.menuCloseOtherTabs.Text = "Close other tabs"; + this.menuCloseOtherTabs.Click += new System.EventHandler(this.menuCloseOtherTabs_Click); + // + // BtnRefresh + // + this.BtnRefresh.Anchor = ((System.Windows.Forms.AnchorStyles)((System.Windows.Forms.AnchorStyles.Top | System.Windows.Forms.AnchorStyles.Right))); + this.BtnRefresh.FlatStyle = System.Windows.Forms.FlatStyle.Flat; + this.BtnRefresh.ForeColor = System.Drawing.Color.White; + this.BtnRefresh.Image = ((System.Drawing.Image)(resources.GetObject("BtnRefresh.Image"))); + this.BtnRefresh.Location = new System.Drawing.Point(878, 0); + this.BtnRefresh.Margin = new System.Windows.Forms.Padding(3, 4, 3, 4); + this.BtnRefresh.Name = "BtnRefresh"; + this.BtnRefresh.Size = new System.Drawing.Size(25, 30); + this.BtnRefresh.TabIndex = 3; + this.BtnRefresh.UseVisualStyleBackColor = true; + this.BtnRefresh.Click += new System.EventHandler(this.bRefresh_Click); + // + // BtnStop + // + this.BtnStop.Anchor = ((System.Windows.Forms.AnchorStyles)((System.Windows.Forms.AnchorStyles.Top | System.Windows.Forms.AnchorStyles.Right))); + this.BtnStop.FlatStyle = System.Windows.Forms.FlatStyle.Flat; + this.BtnStop.ForeColor = System.Drawing.Color.White; + this.BtnStop.Image = ((System.Drawing.Image)(resources.GetObject("BtnStop.Image"))); + this.BtnStop.Location = new System.Drawing.Point(878, -2); + this.BtnStop.Margin = new System.Windows.Forms.Padding(3, 4, 3, 4); + this.BtnStop.Name = "BtnStop"; + this.BtnStop.Size = new System.Drawing.Size(25, 30); + this.BtnStop.TabIndex = 2; + this.BtnStop.UseVisualStyleBackColor = true; + this.BtnStop.Click += new System.EventHandler(this.bStop_Click); + // + // BtnForward + // + this.BtnForward.FlatStyle = System.Windows.Forms.FlatStyle.Flat; + this.BtnForward.ForeColor = System.Drawing.Color.White; + this.BtnForward.Image = ((System.Drawing.Image)(resources.GetObject("BtnForward.Image"))); + this.BtnForward.Location = new System.Drawing.Point(29, 0); + this.BtnForward.Margin = new System.Windows.Forms.Padding(3, 4, 3, 4); + this.BtnForward.Name = "BtnForward"; + this.BtnForward.Size = new System.Drawing.Size(25, 30); + this.BtnForward.TabIndex = 1; + this.BtnForward.UseVisualStyleBackColor = true; + this.BtnForward.Click += new System.EventHandler(this.bForward_Click); + // + // BtnBack + // + this.BtnBack.FlatStyle = System.Windows.Forms.FlatStyle.Flat; + this.BtnBack.ForeColor = System.Drawing.Color.White; + this.BtnBack.Image = ((System.Drawing.Image)(resources.GetObject("BtnBack.Image"))); + this.BtnBack.Location = new System.Drawing.Point(2, 0); + this.BtnBack.Margin = new System.Windows.Forms.Padding(3, 4, 3, 4); + this.BtnBack.Name = "BtnBack"; + this.BtnBack.Size = new System.Drawing.Size(25, 30); + this.BtnBack.TabIndex = 0; + this.BtnBack.UseVisualStyleBackColor = true; + this.BtnBack.Click += new System.EventHandler(this.bBack_Click); + // + // timer1 + // + this.timer1.Interval = 50; + this.timer1.Tick += new System.EventHandler(this.timer1_Tick); + // + // BtnDownloads + // + this.BtnDownloads.Anchor = ((System.Windows.Forms.AnchorStyles)((System.Windows.Forms.AnchorStyles.Top | System.Windows.Forms.AnchorStyles.Right))); + this.BtnDownloads.FlatStyle = System.Windows.Forms.FlatStyle.Flat; + this.BtnDownloads.ForeColor = System.Drawing.Color.White; + this.BtnDownloads.Image = ((System.Drawing.Image)(resources.GetObject("BtnDownloads.Image"))); + this.BtnDownloads.Location = new System.Drawing.Point(906, 0); + this.BtnDownloads.Margin = new System.Windows.Forms.Padding(3, 4, 3, 4); + this.BtnDownloads.Name = "BtnDownloads"; + this.BtnDownloads.Size = new System.Drawing.Size(25, 30); + this.BtnDownloads.TabIndex = 4; + this.BtnDownloads.Tag = "Downloads"; + this.BtnDownloads.UseVisualStyleBackColor = true; + this.BtnDownloads.Click += new System.EventHandler(this.bDownloads_Click); + // + // TxtURL + // + this.TxtURL.Anchor = ((System.Windows.Forms.AnchorStyles)(((System.Windows.Forms.AnchorStyles.Top | System.Windows.Forms.AnchorStyles.Left) | System.Windows.Forms.AnchorStyles.Right))); - this.TxtURL.BorderStyle = System.Windows.Forms.BorderStyle.None; - this.TxtURL.Font = new System.Drawing.Font("Segoe UI", 12F, System.Drawing.FontStyle.Regular, System.Drawing.GraphicsUnit.Point, ((byte)(0))); - this.TxtURL.Location = new System.Drawing.Point(60, 5); - this.TxtURL.Margin = new System.Windows.Forms.Padding(3, 4, 3, 4); - this.TxtURL.Name = "TxtURL"; - this.TxtURL.Size = new System.Drawing.Size(812, 27); - this.TxtURL.TabIndex = 5; - this.TxtURL.Click += new System.EventHandler(this.txtUrl_Click); - this.TxtURL.TextChanged += new System.EventHandler(this.txtUrl_TextChanged); - this.TxtURL.KeyDown += new System.Windows.Forms.KeyEventHandler(this.TxtURL_KeyDown); - // - // PanelToolbar - // - this.PanelToolbar.BackColor = System.Drawing.Color.White; - this.PanelToolbar.Controls.Add(this.TxtURL); - this.PanelToolbar.Controls.Add(this.BtnDownloads); - this.PanelToolbar.Controls.Add(this.BtnForward); - this.PanelToolbar.Controls.Add(this.BtnBack); - this.PanelToolbar.Controls.Add(this.BtnRefresh); - this.PanelToolbar.Controls.Add(this.BtnStop); - this.PanelToolbar.Dock = System.Windows.Forms.DockStyle.Top; - this.PanelToolbar.Location = new System.Drawing.Point(0, 0); - this.PanelToolbar.Margin = new System.Windows.Forms.Padding(3, 4, 3, 4); - this.PanelToolbar.Name = "PanelToolbar"; - this.PanelToolbar.Size = new System.Drawing.Size(934, 30); - this.PanelToolbar.TabIndex = 6; - // - // TabPages - // - this.TabPages.ContextMenuStrip = this.menuStripTab; - this.TabPages.Dock = System.Windows.Forms.DockStyle.Fill; - this.TabPages.Font = new System.Drawing.Font("Segoe UI", 10.8F, System.Drawing.FontStyle.Regular, System.Drawing.GraphicsUnit.Point, ((byte)(0))); - this.TabPages.Items.AddRange(new FarsiLibrary.Win.FATabStripItem[] { + this.TxtURL.BorderStyle = System.Windows.Forms.BorderStyle.None; + this.TxtURL.Font = new System.Drawing.Font("Segoe UI", 12F, System.Drawing.FontStyle.Regular, System.Drawing.GraphicsUnit.Point, ((byte)(0))); + this.TxtURL.Location = new System.Drawing.Point(60, 5); + this.TxtURL.Margin = new System.Windows.Forms.Padding(3, 4, 3, 4); + this.TxtURL.Name = "TxtURL"; + this.TxtURL.Size = new System.Drawing.Size(812, 27); + this.TxtURL.TabIndex = 5; + this.TxtURL.Click += new System.EventHandler(this.txtUrl_Click); + this.TxtURL.TextChanged += new System.EventHandler(this.txtUrl_TextChanged); + this.TxtURL.KeyDown += new System.Windows.Forms.KeyEventHandler(this.TxtURL_KeyDown); + // + // PanelToolbar + // + this.PanelToolbar.BackColor = System.Drawing.Color.White; + this.PanelToolbar.Controls.Add(this.BtnHome); + this.PanelToolbar.Controls.Add(this.TxtURL); + this.PanelToolbar.Controls.Add(this.BtnDownloads); + this.PanelToolbar.Controls.Add(this.BtnForward); + this.PanelToolbar.Controls.Add(this.BtnBack); + this.PanelToolbar.Controls.Add(this.BtnRefresh); + this.PanelToolbar.Controls.Add(this.BtnStop); + this.PanelToolbar.Dock = System.Windows.Forms.DockStyle.Top; + this.PanelToolbar.Location = new System.Drawing.Point(0, 0); + this.PanelToolbar.Margin = new System.Windows.Forms.Padding(3, 4, 3, 4); + this.PanelToolbar.Name = "PanelToolbar"; + this.PanelToolbar.Size = new System.Drawing.Size(934, 30); + this.PanelToolbar.TabIndex = 6; + // + // TabPages + // + this.TabPages.ContextMenuStrip = this.menuStripTab; + this.TabPages.Dock = System.Windows.Forms.DockStyle.Fill; + this.TabPages.Font = new System.Drawing.Font("Segoe UI", 10.8F, System.Drawing.FontStyle.Regular, System.Drawing.GraphicsUnit.Point, ((byte)(0))); + this.TabPages.Items.AddRange(new FarsiLibrary.Win.FATabStripItem[] { this.tabStrip1, this.tabStripAdd}); - this.TabPages.Location = new System.Drawing.Point(0, 30); - this.TabPages.Name = "TabPages"; - this.TabPages.SelectedItem = this.tabStrip1; - this.TabPages.Size = new System.Drawing.Size(934, 621); - this.TabPages.TabIndex = 4; - this.TabPages.Text = "faTabStrip1"; - this.TabPages.TabStripItemSelectionChanged += new FarsiLibrary.Win.TabStripItemChangedHandler(this.OnTabsChanged); - this.TabPages.TabStripItemClosed += new System.EventHandler(this.OnTabClosed); - this.TabPages.MouseClick += new System.Windows.Forms.MouseEventHandler(this.tabPages_MouseClick); - // - // tabStrip1 - // - this.tabStrip1.IsDrawn = true; - this.tabStrip1.Name = "tabStrip1"; - this.tabStrip1.Selected = true; - this.tabStrip1.Size = new System.Drawing.Size(932, 591); - this.tabStrip1.TabIndex = 0; - this.tabStrip1.Title = "Loading..."; - // - // tabStripAdd - // - this.tabStripAdd.CanClose = false; - this.tabStripAdd.IsDrawn = true; - this.tabStripAdd.Name = "tabStripAdd"; - this.tabStripAdd.Size = new System.Drawing.Size(931, 601); - this.tabStripAdd.TabIndex = 1; - this.tabStripAdd.Title = "+"; - // - // PanelStatus - // - this.PanelStatus.Dock = System.Windows.Forms.DockStyle.Bottom; - this.PanelStatus.Location = new System.Drawing.Point(0, 651); - this.PanelStatus.Name = "PanelStatus"; - this.PanelStatus.Size = new System.Drawing.Size(934, 20); - this.PanelStatus.TabIndex = 8; - // - // PanelSearch - // - this.PanelSearch.Anchor = ((System.Windows.Forms.AnchorStyles)((System.Windows.Forms.AnchorStyles.Top | System.Windows.Forms.AnchorStyles.Right))); - this.PanelSearch.BackColor = System.Drawing.Color.White; - this.PanelSearch.BorderStyle = System.Windows.Forms.BorderStyle.FixedSingle; - this.PanelSearch.Controls.Add(this.BtnNextSearch); - this.PanelSearch.Controls.Add(this.BtnPrevSearch); - this.PanelSearch.Controls.Add(this.BtnCloseSearch); - this.PanelSearch.Controls.Add(this.TxtSearch); - this.PanelSearch.Location = new System.Drawing.Point(625, 41); - this.PanelSearch.Name = "PanelSearch"; - this.PanelSearch.Size = new System.Drawing.Size(307, 40); - this.PanelSearch.TabIndex = 9; - this.PanelSearch.Visible = false; - // - // BtnNextSearch - // - this.BtnNextSearch.Anchor = ((System.Windows.Forms.AnchorStyles)((System.Windows.Forms.AnchorStyles.Top | System.Windows.Forms.AnchorStyles.Right))); - this.BtnNextSearch.FlatStyle = System.Windows.Forms.FlatStyle.Flat; - this.BtnNextSearch.ForeColor = System.Drawing.Color.White; - this.BtnNextSearch.Image = ((System.Drawing.Image)(resources.GetObject("BtnNextSearch.Image"))); - this.BtnNextSearch.Location = new System.Drawing.Point(239, 4); - this.BtnNextSearch.Margin = new System.Windows.Forms.Padding(3, 4, 3, 4); - this.BtnNextSearch.Name = "BtnNextSearch"; - this.BtnNextSearch.Size = new System.Drawing.Size(25, 30); - this.BtnNextSearch.TabIndex = 9; - this.BtnNextSearch.Tag = "Find next (Enter)"; - this.BtnNextSearch.UseVisualStyleBackColor = true; - this.BtnNextSearch.Click += new System.EventHandler(this.BtnNextSearch_Click); - // - // BtnPrevSearch - // - this.BtnPrevSearch.Anchor = ((System.Windows.Forms.AnchorStyles)((System.Windows.Forms.AnchorStyles.Top | System.Windows.Forms.AnchorStyles.Right))); - this.BtnPrevSearch.FlatStyle = System.Windows.Forms.FlatStyle.Flat; - this.BtnPrevSearch.ForeColor = System.Drawing.Color.White; - this.BtnPrevSearch.Image = ((System.Drawing.Image)(resources.GetObject("BtnPrevSearch.Image"))); - this.BtnPrevSearch.Location = new System.Drawing.Point(206, 4); - this.BtnPrevSearch.Margin = new System.Windows.Forms.Padding(3, 4, 3, 4); - this.BtnPrevSearch.Name = "BtnPrevSearch"; - this.BtnPrevSearch.Size = new System.Drawing.Size(25, 30); - this.BtnPrevSearch.TabIndex = 8; - this.BtnPrevSearch.Tag = "Find previous (Shift+Enter)"; - this.BtnPrevSearch.UseVisualStyleBackColor = true; - this.BtnPrevSearch.Click += new System.EventHandler(this.BtnPrevSearch_Click); - // - // BtnCloseSearch - // - this.BtnCloseSearch.Anchor = ((System.Windows.Forms.AnchorStyles)((System.Windows.Forms.AnchorStyles.Top | System.Windows.Forms.AnchorStyles.Right))); - this.BtnCloseSearch.FlatStyle = System.Windows.Forms.FlatStyle.Flat; - this.BtnCloseSearch.ForeColor = System.Drawing.Color.White; - this.BtnCloseSearch.Image = ((System.Drawing.Image)(resources.GetObject("BtnCloseSearch.Image"))); - this.BtnCloseSearch.Location = new System.Drawing.Point(272, 4); - this.BtnCloseSearch.Margin = new System.Windows.Forms.Padding(3, 4, 3, 4); - this.BtnCloseSearch.Name = "BtnCloseSearch"; - this.BtnCloseSearch.Size = new System.Drawing.Size(25, 30); - this.BtnCloseSearch.TabIndex = 7; - this.BtnCloseSearch.Tag = "Close (Esc)"; - this.BtnCloseSearch.UseVisualStyleBackColor = true; - this.BtnCloseSearch.Click += new System.EventHandler(this.BtnClearSearch_Click); - // - // TxtSearch - // - this.TxtSearch.Anchor = ((System.Windows.Forms.AnchorStyles)(((System.Windows.Forms.AnchorStyles.Top | System.Windows.Forms.AnchorStyles.Left) + this.TabPages.Location = new System.Drawing.Point(0, 30); + this.TabPages.Name = "TabPages"; + this.TabPages.SelectedItem = this.tabStrip1; + this.TabPages.Size = new System.Drawing.Size(934, 621); + this.TabPages.TabIndex = 4; + this.TabPages.Text = "faTabStrip1"; + this.TabPages.TabStripItemSelectionChanged += new FarsiLibrary.Win.TabStripItemChangedHandler(this.OnTabsChanged); + this.TabPages.TabStripItemClosed += new System.EventHandler(this.OnTabClosed); + this.TabPages.MouseClick += new System.Windows.Forms.MouseEventHandler(this.tabPages_MouseClick); + // + // tabStrip1 + // + this.tabStrip1.IsDrawn = true; + this.tabStrip1.Name = "tabStrip1"; + this.tabStrip1.Selected = true; + this.tabStrip1.Size = new System.Drawing.Size(932, 591); + this.tabStrip1.TabIndex = 0; + this.tabStrip1.Title = "Loading..."; + // + // tabStripAdd + // + this.tabStripAdd.CanClose = false; + this.tabStripAdd.IsDrawn = true; + this.tabStripAdd.Name = "tabStripAdd"; + this.tabStripAdd.Size = new System.Drawing.Size(931, 601); + this.tabStripAdd.TabIndex = 1; + this.tabStripAdd.Title = "+"; + // + // PanelStatus + // + this.PanelStatus.Dock = System.Windows.Forms.DockStyle.Bottom; + this.PanelStatus.Location = new System.Drawing.Point(0, 651); + this.PanelStatus.Name = "PanelStatus"; + this.PanelStatus.Size = new System.Drawing.Size(934, 20); + this.PanelStatus.TabIndex = 8; + // + // PanelSearch + // + this.PanelSearch.Anchor = ((System.Windows.Forms.AnchorStyles)((System.Windows.Forms.AnchorStyles.Top | System.Windows.Forms.AnchorStyles.Right))); + this.PanelSearch.BackColor = System.Drawing.Color.White; + this.PanelSearch.BorderStyle = System.Windows.Forms.BorderStyle.FixedSingle; + this.PanelSearch.Controls.Add(this.BtnNextSearch); + this.PanelSearch.Controls.Add(this.BtnPrevSearch); + this.PanelSearch.Controls.Add(this.BtnCloseSearch); + this.PanelSearch.Controls.Add(this.TxtSearch); + this.PanelSearch.Location = new System.Drawing.Point(625, 41); + this.PanelSearch.Name = "PanelSearch"; + this.PanelSearch.Size = new System.Drawing.Size(307, 40); + this.PanelSearch.TabIndex = 9; + this.PanelSearch.Visible = false; + // + // BtnNextSearch + // + this.BtnNextSearch.Anchor = ((System.Windows.Forms.AnchorStyles)((System.Windows.Forms.AnchorStyles.Top | System.Windows.Forms.AnchorStyles.Right))); + this.BtnNextSearch.FlatStyle = System.Windows.Forms.FlatStyle.Flat; + this.BtnNextSearch.ForeColor = System.Drawing.Color.White; + this.BtnNextSearch.Image = ((System.Drawing.Image)(resources.GetObject("BtnNextSearch.Image"))); + this.BtnNextSearch.Location = new System.Drawing.Point(239, 4); + this.BtnNextSearch.Margin = new System.Windows.Forms.Padding(3, 4, 3, 4); + this.BtnNextSearch.Name = "BtnNextSearch"; + this.BtnNextSearch.Size = new System.Drawing.Size(25, 30); + this.BtnNextSearch.TabIndex = 9; + this.BtnNextSearch.Tag = "Find next (Enter)"; + this.BtnNextSearch.UseVisualStyleBackColor = true; + this.BtnNextSearch.Click += new System.EventHandler(this.BtnNextSearch_Click); + // + // BtnPrevSearch + // + this.BtnPrevSearch.Anchor = ((System.Windows.Forms.AnchorStyles)((System.Windows.Forms.AnchorStyles.Top | System.Windows.Forms.AnchorStyles.Right))); + this.BtnPrevSearch.FlatStyle = System.Windows.Forms.FlatStyle.Flat; + this.BtnPrevSearch.ForeColor = System.Drawing.Color.White; + this.BtnPrevSearch.Image = ((System.Drawing.Image)(resources.GetObject("BtnPrevSearch.Image"))); + this.BtnPrevSearch.Location = new System.Drawing.Point(206, 4); + this.BtnPrevSearch.Margin = new System.Windows.Forms.Padding(3, 4, 3, 4); + this.BtnPrevSearch.Name = "BtnPrevSearch"; + this.BtnPrevSearch.Size = new System.Drawing.Size(25, 30); + this.BtnPrevSearch.TabIndex = 8; + this.BtnPrevSearch.Tag = "Find previous (Shift+Enter)"; + this.BtnPrevSearch.UseVisualStyleBackColor = true; + this.BtnPrevSearch.Click += new System.EventHandler(this.BtnPrevSearch_Click); + // + // BtnCloseSearch + // + this.BtnCloseSearch.Anchor = ((System.Windows.Forms.AnchorStyles)((System.Windows.Forms.AnchorStyles.Top | System.Windows.Forms.AnchorStyles.Right))); + this.BtnCloseSearch.FlatStyle = System.Windows.Forms.FlatStyle.Flat; + this.BtnCloseSearch.ForeColor = System.Drawing.Color.White; + this.BtnCloseSearch.Image = ((System.Drawing.Image)(resources.GetObject("BtnCloseSearch.Image"))); + this.BtnCloseSearch.Location = new System.Drawing.Point(272, 4); + this.BtnCloseSearch.Margin = new System.Windows.Forms.Padding(3, 4, 3, 4); + this.BtnCloseSearch.Name = "BtnCloseSearch"; + this.BtnCloseSearch.Size = new System.Drawing.Size(25, 30); + this.BtnCloseSearch.TabIndex = 7; + this.BtnCloseSearch.Tag = "Close (Esc)"; + this.BtnCloseSearch.UseVisualStyleBackColor = true; + this.BtnCloseSearch.Click += new System.EventHandler(this.BtnClearSearch_Click); + // + // TxtSearch + // + this.TxtSearch.Anchor = ((System.Windows.Forms.AnchorStyles)(((System.Windows.Forms.AnchorStyles.Top | System.Windows.Forms.AnchorStyles.Left) | System.Windows.Forms.AnchorStyles.Right))); - this.TxtSearch.BorderStyle = System.Windows.Forms.BorderStyle.None; - this.TxtSearch.Font = new System.Drawing.Font("Segoe UI", 13.8F, System.Drawing.FontStyle.Regular, System.Drawing.GraphicsUnit.Point, ((byte)(0))); - this.TxtSearch.Location = new System.Drawing.Point(10, 6); - this.TxtSearch.Margin = new System.Windows.Forms.Padding(3, 4, 3, 4); - this.TxtSearch.Name = "TxtSearch"; - this.TxtSearch.Size = new System.Drawing.Size(181, 31); - this.TxtSearch.TabIndex = 6; - this.TxtSearch.TextChanged += new System.EventHandler(this.TxtSearch_TextChanged); - this.TxtSearch.KeyDown += new System.Windows.Forms.KeyEventHandler(this.TxtSearch_KeyDown); - // - // MainForm - // - this.AutoScaleMode = System.Windows.Forms.AutoScaleMode.None; - this.ClientSize = new System.Drawing.Size(934, 671); - this.Controls.Add(this.PanelSearch); - this.Controls.Add(this.TabPages); - this.Controls.Add(this.PanelToolbar); - this.Controls.Add(this.PanelStatus); - this.Font = new System.Drawing.Font("Segoe UI", 9F, System.Drawing.FontStyle.Regular, System.Drawing.GraphicsUnit.Point, ((byte)(0))); - this.Margin = new System.Windows.Forms.Padding(4, 5, 4, 5); - this.Name = "MainForm"; - this.StartPosition = System.Windows.Forms.FormStartPosition.CenterScreen; - this.Text = "Title"; - this.WindowState = System.Windows.Forms.FormWindowState.Maximized; - this.FormClosing += new System.Windows.Forms.FormClosingEventHandler(this.MainForm_FormClosing); - this.Load += new System.EventHandler(this.MainForm_Load); - this.menuStripTab.ResumeLayout(false); - this.PanelToolbar.ResumeLayout(false); - this.PanelToolbar.PerformLayout(); - ((System.ComponentModel.ISupportInitialize)(this.TabPages)).EndInit(); - this.TabPages.ResumeLayout(false); - this.PanelSearch.ResumeLayout(false); - this.PanelSearch.PerformLayout(); - this.ResumeLayout(false); + this.TxtSearch.BorderStyle = System.Windows.Forms.BorderStyle.None; + this.TxtSearch.Font = new System.Drawing.Font("Segoe UI", 13.8F, System.Drawing.FontStyle.Regular, System.Drawing.GraphicsUnit.Point, ((byte)(0))); + this.TxtSearch.Location = new System.Drawing.Point(10, 6); + this.TxtSearch.Margin = new System.Windows.Forms.Padding(3, 4, 3, 4); + this.TxtSearch.Name = "TxtSearch"; + this.TxtSearch.Size = new System.Drawing.Size(181, 31); + this.TxtSearch.TabIndex = 6; + this.TxtSearch.TextChanged += new System.EventHandler(this.TxtSearch_TextChanged); + this.TxtSearch.KeyDown += new System.Windows.Forms.KeyEventHandler(this.TxtSearch_KeyDown); + // + // BtnHome + // + this.BtnHome.Anchor = ((System.Windows.Forms.AnchorStyles)((System.Windows.Forms.AnchorStyles.Top | System.Windows.Forms.AnchorStyles.Right))); + this.BtnHome.FlatStyle = System.Windows.Forms.FlatStyle.Flat; + this.BtnHome.ForeColor = System.Drawing.Color.White; + this.BtnHome.Image = ((System.Drawing.Image)(resources.GetObject("BtnHome.Image"))); + this.BtnHome.Location = new System.Drawing.Point(847, 0); + this.BtnHome.Margin = new System.Windows.Forms.Padding(3, 4, 3, 4); + this.BtnHome.Name = "BtnHome"; + this.BtnHome.Size = new System.Drawing.Size(25, 30); + this.BtnHome.TabIndex = 6; + this.BtnHome.Tag = "Home"; + this.BtnHome.UseVisualStyleBackColor = true; + this.BtnHome.Click += new System.EventHandler(this.BtnHome_Click); + // + // MainForm + // + this.AutoScaleMode = System.Windows.Forms.AutoScaleMode.None; + this.ClientSize = new System.Drawing.Size(934, 671); + this.Controls.Add(this.PanelSearch); + this.Controls.Add(this.TabPages); + this.Controls.Add(this.PanelToolbar); + this.Controls.Add(this.PanelStatus); + this.Font = new System.Drawing.Font("Segoe UI", 9F, System.Drawing.FontStyle.Regular, System.Drawing.GraphicsUnit.Point, ((byte)(0))); + this.Margin = new System.Windows.Forms.Padding(4, 5, 4, 5); + this.Name = "MainForm"; + this.StartPosition = System.Windows.Forms.FormStartPosition.CenterScreen; + this.Text = "Title"; + this.WindowState = System.Windows.Forms.FormWindowState.Maximized; + this.FormClosing += new System.Windows.Forms.FormClosingEventHandler(this.MainForm_FormClosing); + this.Load += new System.EventHandler(this.MainForm_Load); + this.menuStripTab.ResumeLayout(false); + this.PanelToolbar.ResumeLayout(false); + this.PanelToolbar.PerformLayout(); + ((System.ComponentModel.ISupportInitialize)(this.TabPages)).EndInit(); + this.TabPages.ResumeLayout(false); + this.PanelSearch.ResumeLayout(false); + this.PanelSearch.PerformLayout(); + this.ResumeLayout(false); } @@ -352,6 +370,7 @@ private void InitializeComponent() private System.Windows.Forms.Button BtnCloseSearch; private System.Windows.Forms.Button BtnPrevSearch; private System.Windows.Forms.Button BtnNextSearch; + private System.Windows.Forms.Button BtnHome; } } diff --git a/src/MainForm.cs b/src/MainForm.cs index 4bdc529..e905ffc 100644 --- a/src/MainForm.cs +++ b/src/MainForm.cs @@ -924,11 +924,17 @@ private void TxtSearch_KeyDown(object sender, KeyEventArgs e) { } } - #endregion + #endregion - } + #region Home Button + private void BtnHome_Click(object sender, EventArgs e) + { + CurBrowser.Load(HomepageURL); + } + #endregion + } } /// diff --git a/src/MainForm.resx b/src/MainForm.resx index 9487f86..4cc1acb 100644 --- a/src/MainForm.resx +++ b/src/MainForm.resx @@ -123,45 +123,43 @@ - iVBORw0KGgoAAAANSUhEUgAAABQAAAAUCAYAAACNiR0NAAAAAXNSR0IArs4c6QAAAARnQU1BAACxjwv8 - YQUAAAEZSURBVDhPxVRbEQIxDKwDJCABCfzwxXBXCUhAAlJOAgJoDwlIQMJJgGw7LUlf9AfITKcznXST - TbJR6mc2zFppOyltbtkZ5m1/Hod5QwB3Anu2DwWCL8wFJv/MdtdVHxgPZi4xsAAsgY32rECPH7xpuxSz - F4DekdOcqnVywe0jA40fvAOPWgfDp9Gc2hmO5vh2oIa0rAYmmoIagXKoWQuQ+4Y/4e6fpb977u06UuY0 - ehSBmro/1Idomg2nHJ3lQ4NYM0ktDJD0mkltidIqoaZCEGzcAkgAQaNlglU6aiVAH2ByskM2MNx+DqVK - wpIoUIZayjqtbR/RjIDo0/c1Q8frGTOtE03szKIBBIcbnP3CSJfAw72HMnx75l9XQGc65ZPKTwAAAABJ - RU5ErkJggg== + iVBORw0KGgoAAAANSUhEUgAAABQAAAAUCAYAAACNiR0NAAAABGdBTUEAALGPC/xhBQAAAQhJREFUOE/V + lNERwiAQROnAEizBEvzxyzFJCZZgCZaSEixAiCVYQkpICcpCIHdwYH50xjezo0M2Cwdc1O9ohk51pled + fmRqhv3sWsFp2NmXnjbsVZcNhhe4ie1YxuG+WRdGpW/xP0MKa83VlUeFsc5MzBfE8EZq6OcnOW5yMyZ+ + EugNdNZyGGj1hXgXRVp9Xh7YsmuUwqBI2JuwZzWoN9UfcTRbsYRP5QPsqfPbc4jQy8k1zQ4Zdpj0Zrge + ZUHQFFtLIm0EVo0UiDJqsKrSqyavEOrdzFgNwK+/h7xLskqWQHSL3KclscMI+OX7PcOJl1dMZMvEN1ME + IRAFZuxj/hEY3XjYhu+i1BtXQGc6/upxWQAAAABJRU5ErkJggg== - iVBORw0KGgoAAAANSUhEUgAAABQAAAAUCAYAAACNiR0NAAAAAXNSR0IArs4c6QAAAARnQU1BAACxjwv8 - YQUAAAEtSURBVDhPvZTbDcIwDEW9ASMwAiMwAiMwAiMwAr+8pI7ACB2BETpCRii+lZ06r8ZfVIpUqHN8 - r+OY6F/Pg2j3Ijrxuj6Jxmwd3ToA4nVjwLy1OOZzJzpsggFjyLcHM99DEyrKJg3m35PYTewBAHUWyu9l - CaRGanNoWQGQY4N1geRJvAQtMGT3wgBSMA4w7uMPZ2P1XANWlA1Sc1W7upJaLQrfRPscWINpDO8ZxNlq - W4tc1IJ3bcEAtWKiEHMgo1XXgyHW9mzcq1msQg8MABWTuOM/L3ooqKEXJodStpptG8lo+6zZk7Z+SduI - 9NqVa8KyVksbG8CKzVBk5TiUJLt6cy1uOSC5p7H7pa5QbseXnUIBSj0TB4De+Jq648tmwgSRHksGAW5G - V5V7+joCf9RfGvLkc7XEAAAAAElFTkSuQmCC + iVBORw0KGgoAAAANSUhEUgAAABQAAAAUCAYAAACNiR0NAAAABGdBTUEAALGPC/xhBQAAATlJREFUOE+9 + U9uNAkEMSweUQAmUQAmUQAmUcCXwy3FIWwIlUMKVQAlbAtg5BzIPdvk4YSnSyuN4PJlZ+xi+zRY/ZhvU + 19HsUtVasnnQCLVH022qoDkfzFZq64NmEP/WzRM1vjRVsmuI+a3jFsejAdOFDjXWGgdIziZEg+gGNMQ6 + TULrm2v5DxLF4ll0g9osn4gXKJkfd5tEW9EFOskGaDnz4J6n0qxceDJbin6gZ6Yljmogx7SiPKEPuSCF + KTMihxFVXMhFlGPOjECIx5sV9dwlJ3zHjADvYYrTgdipyWf4rhlMeCmtRgaxwB1nzYg8v+LZECB7v9xL + M6TLT625zN7MxmZXgCOBQf712nQBmnK3LEYxOccQlddGJlV7HxBw0HVjU9yYAdQ2DzSt0cQ3lsfA4i83 + ner/YHYH1F8a8lpKiKEAAAAASUVORK5CYII= - iVBORw0KGgoAAAANSUhEUgAAABQAAAAUCAYAAACNiR0NAAAAAXNSR0IArs4c6QAAAARnQU1BAACxjwv8 - YQUAAAEWSURBVDhPvZRNEcIwEIXjAAlIQAIXTgxNJCABCUhAAhIQQFIkIAEJlVB22ybk522bXtiZXDrJ - 1/dedqPUX+rotsrYhzKuo9WXy76Utpc6LU1rZFAOp58enhsZrO0ZK2Kl9i2qhcSm3YuwU7sbzhh3h3u0 - u5ZMQ7mgvPLNGNql1lkBDJ8zI6t5TgiaXBKrEIHDRXTK2/beCig5DBXb1e5W1w4gUwjky1lTxn2CO6yQ - Wqe2xux/zR/Osc35DHuajPRHOYwvL9Q4HWDEpm+LMNpXZB9nEcPzPiyUTT/l+U9KnBSaV18SDE7K3Gjx - yzP2Knh9QOMnSmsuKESyBPPk0T5+CAYYgarfw1guB80H2a5faxu/tqelfV9C2Z1KUaQMeQAAAABJRU5E - rkJggg== + iVBORw0KGgoAAAANSUhEUgAAABQAAAAUCAYAAACNiR0NAAAABGdBTUEAALGPC/xhBQAAAQtJREFUOE+9 + lNERwiAMhtnAERzBEXzxybMwgiM4giM4giM4gFBHcARH6Aiav0BLaLD0vPO7+19o+CEhqfoPe7dWxt6U + cR3pPZV9KG1PIXqGpjW0qWCUiw7d3Vdhp4C2R3kjDrBPYZ1EtxVp2q28gcwO7aaPMe6affPS7tx/Z+Ck + mmDZtOOp4wbToCBKNa+TZMoeCbfIA7jGtCMT07SWabraXcLqPLnpQGqIx1mCca/vhmidWnztx54dQJpx + saT8oNwMjzfgp4MbpJo1Q0xe+7QWPJD3oWQGYf4ZxUmheY2UzMRJAaXRgqnv1amZ1PiMmgcaNGcW8ekX + bguRUfX/MAWFxkakG7W08X9DqQ9C2Z1KjUXdLwAAAABJRU5ErkJggg== - iVBORw0KGgoAAAANSUhEUgAAABQAAAAUCAYAAACNiR0NAAAAAXNSR0IArs4c6QAAAARnQU1BAACxjwv8 - YQUAAAEHSURBVDhPvVTbDcIwEMsGjMAIjMAPX4gmIzACIzACI3QEBiApI3QERmCEckfaKJf6+vjpSZEq - wTm2a9eYTeYc9sb5p3HhS6cbH/821t+WcakapwOV4HTp6bXTga2/YkbhQ4xblS1ErJqjstAmFo6kIgts - uI8x4Z+JVS6Jn6Gn5LWQfmkOwHgJxhRcqBXATr4kpixuRswUuWmPfk8j5BZgU9kolUFAzuCayZVBwMWB - 7bchoA0P4SHnMZ8oTWnNEHayKk1sh6zYWlAmJcZxGxaBgm7T3sh7rSk5U62asClTwWU5MavAx7mYlS8I - V62XPQc2mBrl6zXjL8/aeP2x2WheZLnD4cu2nB+yNJ4saRMhYwAAAABJRU5ErkJggg== + iVBORw0KGgoAAAANSUhEUgAAABQAAAAUCAYAAACNiR0NAAAABGdBTUEAALGPC/xhBQAAAP9JREFUOE+9 + U8ERwiAQpANLsARL8OPLMVCCJViCJViCJViAEEtICZZgCcoSwnBwJ8knO7MzmWRvuSN7ah0c3VYZ+1DG + fTy/Ne1LaXuJ6ga63vgiwaikP/Tw3MRKBtqe+UL39sUD897Td8ui6/dCwZC6QDGn0e4avhOw4swMwHOl + CfzQ0U/9rhYVZoBx91oXSX4SWiYCrjNh3MT8LomY6UxCOVlCbogMLkHTcHZgI1hD7W7kA/KYYxytEXZ/ + VQnjdlDBUlM0RRC2oRSxplQzsbp7aVNyU2k12U0BpOBinDGrzMitmJU/6C/nZnYcX14zGC2NVwAuGoUY + dyIOWw9K/QCyNJ4sXzBxfQAAAABJRU5ErkJggg== @@ -169,37 +167,47 @@ - iVBORw0KGgoAAAANSUhEUgAAABQAAAAUCAYAAACNiR0NAAAAAXNSR0IArs4c6QAAAARnQU1BAACxjwv8 - YQUAAADWSURBVDhPY2AY8sDIyOi+sbHxfxAGsSn2EMwwGD1qIOEQAIYVPxCvB+L9UAyOECQME19vaGio - T9BEkIHA2HyPHhnY+EQZCLIRpJAIQ+MJug5ZAQFDSTMMZjC6oSBXE+VNoCJ5YBjlAzXUI2OQZpihMMOg - fBR1IL0gM+A+BCqejy3QodmOH6QYaikowuBZEVkPyAy4gTiSBzz/GhgY+IMwLsOgBu8nykAcyQeUFkFp - FVRgzIdaRL6BQAP6QWENtSweSJ8H+ZJgGBKTuJGKNkQYkpRA6a0YAGJH+ATjKEoQAAAAAElFTkSuQmCC + iVBORw0KGgoAAAANSUhEUgAAABQAAAAUCAYAAACNiR0NAAAABGdBTUEAALGPC/xhBQAAAM5JREFUOE/l + k20NwjAUReugEpBAP4QgYRKQgAQkTMIkTAISJgEJcO9yGzqybqW/ILzkJO3be6fduprfjxDCFGN8EI6V + bo8kSyjdHn8gRJMFAxjFQqgcGbz3R7WVA4UWp3lX8yZVQgYLK6SdyutiR/qZLMW7lOOq10TRAQ1nNFxy + 2JykJJsv6thLh3Tz9erTLnKQ57WzLCYcK7dW20s3n+za75EKJ+fciZRkYpRuW1hg/g855s60ULsQgivg + t+O8AzfwEnIVPWyGDum+Oox5AmJH+ASE2L9zAAAAAElFTkSuQmCC + + + + + iVBORw0KGgoAAAANSUhEUgAAABQAAAAUCAYAAACNiR0NAAAABGdBTUEAALGPC/xhBQAAAAlwSFlzAAAS + dAAAEnQB3mYfeAAAABl0RVh0U29mdHdhcmUAd3d3Lmlua3NjYXBlLm9yZ5vuPBoAAAEPSURBVDhP1ZIx + DkRAFIYdQekEnECh4yIUCp2IWqJRq/QSR5AonMAVhNoJHOBt3lszIZ7dodhk/+SPNzP//yUzoYGC+r4n + q+grMM9z0DSNjDNqmiZomga6roO2bWEYBtpHfQT6vi9hwkEQ0JnjOId9oUug67qHwt6e51EmSRK5J8QC + TdM8ADhblkXZqqpoLXQC6rp+Kl8Zs6i6rumLOgC5kor3otW6rmzwjpFBwGVZ2MATbyz+8LGLogDbtsEw + DD6gYOwiA1nyRbMsY8Mqxq6QBKZpyoZVjF2h3wP317l6llvAOI63BNDMZf4UGEURGw7DcEsAzVwGu0IS + OM8z/ZhlWUrjehzHLQE0cxnsvgXwAvr4W8D8LvUNAAAAAElFTkSuQmCC - iVBORw0KGgoAAAANSUhEUgAAABkAAAAZCAYAAADE6YVjAAAAAXNSR0IArs4c6QAAAARnQU1BAACxjwv8 - YQUAAACfSURBVEhLY2AYBaMhMExDwHefP4PfnnyifAdSB1JPEvDbE8/gv/c/FM/Hq9d/73y4Wp99+sTZ - 47VXHskC/BYhWwBx1HsGl938xFnkv+c8QYswLQBZgt/XKLaDXIPPIootgNmG26L7BH1JXHhBVeG2CBZX - JAYRLtvxWgSMO6IjmpD3sFpETQuwxhEtLECxCJhMqRZEhIJwVH40BAZFCAAAcuCqYT80zm4AAAAASUVO - RK5CYII= + iVBORw0KGgoAAAANSUhEUgAAABkAAAAZCAYAAADE6YVjAAAABGdBTUEAALGPC/xhBQAAAJpJREFUSEtj + GAWjYLgC333+DH578qE8/ACkDqSeJOC3J57Bf+9/KJ4PFcUOQPIwtT779KGiBIDXXnm4JgTGbhGyBRD8 + nsFlNz9UlgDw33MeTTMIo1qEaQGmGrwA5Bp8FlFsAQzgtug+FjEyLIAB3BYhYwosgAG8FgHFiY5oQgCr + RdS0AAZQLKKFBTAAtggYBzSzYBSMgkEIGBgAcuCqYV2//8YAAAAASUVORK5CYII= - iVBORw0KGgoAAAANSUhEUgAAABkAAAAZCAYAAADE6YVjAAAAAXNSR0IArs4c6QAAAARnQU1BAACxjwv8 - YQUAAACXSURBVEhLY2AYBaMhMHhCwG9PPG0d4793PoP/3v9APJ82FiEsAFlCA4swLaCyRaA4gLgcF6Yw - 6AhbQKGPsFqw5zyD1155Bn8gjekzEn2EywKX3fzgVAWiKbII7FL08Ae6HGYBLO3issh3nz1xydtvTz7C - IiwW4LaI1CDb2w8MkvUYPkB3JsRH6xn8gOpHwWgIjIYA2SEAAOtGqKV2Jt9uAAAAAElFTkSuQmCC + iVBORw0KGgoAAAANSUhEUgAAABkAAAAZCAYAAADE6YVjAAAABGdBTUEAALGPC/xhBQAAAIpJREFUSEtj + GAWjYBABvz3xUBaNgP/e+UD8H0zTBCAsgGEqW4RpAZUtAsUBdgtgmEKLCFsAw2RahNWCPecZvPbKg2kM + OVItwmWBy25+sDyIpsgisEvRNSNZAAO4LPLdZw9VQQD47clHaMRiAQxgWkRqkO3tBxqwHqcFMACxaD1Y + /SgYBaOATMDAAADrRqilMw6anwAAAABJRU5ErkJggg== - iVBORw0KGgoAAAANSUhEUgAAABkAAAAZCAYAAADE6YVjAAAAAXNSR0IArs4c6QAAAARnQU1BAACxjwv8 - YQUAAADTSURBVEhL7ZTBDYMwDEW9QUfoCIzQS09VCyN0lI7CICWs0FEyAs0nJBTsNDJCnGIpQjgJz/62 - ISpWFDhegev7RE33ocZYuveVGAD82Me5TeYBw7Q4KALimVbHuZnzD4CDOABnLCF7ldXdUwR5v5MoZuAB - KUmzUBkUMpufmwEhghwI+7tYbV6CdAPBv4vJRU53nRr6HzCD1F0VIkkDWi6dmyk1aJx21qauBlORxWbQ - gjjE0qO/LOTG+yIQLQRfG6de8e9SyxVCxsXcoCEYrGJFgbUCX35H/c2nacnTAAAAAElFTkSuQmCC + iVBORw0KGgoAAAANSUhEUgAAABkAAAAZCAYAAADE6YVjAAAABGdBTUEAALGPC/xhBQAAAMZJREFUSEtj + GAWjYACAy25+Bv895xn8975n8NmnDxVFBSBxkDxIHVkAYsF/KMa0CG4BXM18qAyRwGuvPJJmGEZYhGkB + RB7ke5KA3554NEMgBkHEMS1A9ynRALtFmJhsC2CAkEUgeaoAv7312C0AilMFYI9kGKYgLmAAvwUwTEaq + ggHcFszHFAPmKZItAud2LBbAIhlrYiDVIkxL3jP47rOHykIAiI+ihhzfgHM9uGghruwi2QIYAGkklHpA + jgHhUTAKUAEDAwB+R/3NjLhB/QAAAABJRU5ErkJggg== \ No newline at end of file