From 53b1df8113da2cca10bb2137009bcf2d6b449904 Mon Sep 17 00:00:00 2001 From: Alexander Date: Mon, 11 Nov 2019 19:19:29 +0200 Subject: [PATCH] Resolved #42 --- Crypto Notepad/ChangeKeyForm.Designer.cs | 96 ++++++---- Crypto Notepad/ChangeKeyForm.cs | 10 + Crypto Notepad/ChangeKeyForm.resx | 27 +++ Crypto Notepad/EnterKeyForm.Designer.cs | 58 ++++-- Crypto Notepad/EnterKeyForm.cs | 10 + Crypto Notepad/EnterKeyForm.resx | 21 +++ Crypto Notepad/MainForm.Designer.cs | 67 ++++--- Crypto Notepad/MainForm.cs | 7 + .../PasswordGeneratorFrom.Designer.cs | 172 ++++++++++++++++++ Crypto Notepad/PasswordGeneratorFrom.cs | 77 ++++++++ Crypto Notepad/PasswordGeneratorFrom.resx | 120 ++++++++++++ .../Properties/Resources.Designer.cs | 10 + Crypto Notepad/Properties/Resources.resx | 24 +-- Crypto Notepad/Resources/key--plus.png | Bin 0 -> 812 bytes 14 files changed, 604 insertions(+), 95 deletions(-) create mode 100644 Crypto Notepad/PasswordGeneratorFrom.Designer.cs create mode 100644 Crypto Notepad/PasswordGeneratorFrom.cs create mode 100644 Crypto Notepad/PasswordGeneratorFrom.resx create mode 100644 Crypto Notepad/Resources/key--plus.png diff --git a/Crypto Notepad/ChangeKeyForm.Designer.cs b/Crypto Notepad/ChangeKeyForm.Designer.cs index a64ac8d..6cee681 100644 --- a/Crypto Notepad/ChangeKeyForm.Designer.cs +++ b/Crypto Notepad/ChangeKeyForm.Designer.cs @@ -28,54 +28,29 @@ protected override void Dispose(bool disposing) /// private void InitializeComponent() { - this.oldKeyTextBox = new System.Windows.Forms.PlaceholderTextBox(); - this.newKeyTextBox = new System.Windows.Forms.PlaceholderTextBox(); + this.components = new System.ComponentModel.Container(); this.acceptButton = new System.Windows.Forms.Button(); this.mainPanel = new System.Windows.Forms.Panel(); this.lockPictureBox = new System.Windows.Forms.PictureBox(); this.showNewKeyPictureBox = new System.Windows.Forms.PictureBox(); this.showOldKeyPictureBox = new System.Windows.Forms.PictureBox(); + this.oldKeyTextBox = new System.Windows.Forms.PlaceholderTextBox(); + this.newKeyTextBox = new System.Windows.Forms.PlaceholderTextBox(); this.statusLabel = new System.Windows.Forms.Label(); + this.changeKeyFormToolTip = new System.Windows.Forms.ToolTip(this.components); + this.passwordGeneratorButton = new System.Windows.Forms.Button(); this.mainPanel.SuspendLayout(); ((System.ComponentModel.ISupportInitialize)(this.lockPictureBox)).BeginInit(); ((System.ComponentModel.ISupportInitialize)(this.showNewKeyPictureBox)).BeginInit(); ((System.ComponentModel.ISupportInitialize)(this.showOldKeyPictureBox)).BeginInit(); this.SuspendLayout(); // - // oldKeyTextBox - // - this.oldKeyTextBox.Location = new System.Drawing.Point(63, 12); - this.oldKeyTextBox.Name = "oldKeyTextBox"; - this.oldKeyTextBox.Size = new System.Drawing.Size(177, 22); - this.oldKeyTextBox.TabIndex = 0; - this.oldKeyTextBox.UseSystemPasswordChar = true; - this.oldKeyTextBox.Placeholder = "Old key"; - this.oldKeyTextBox.PlaceholderActiveForeColor = System.Drawing.Color.DarkGray; - this.oldKeyTextBox.PlaceholderFont = new System.Drawing.Font("Segoe UI", 8.25F); - this.oldKeyTextBox.PlaceholderForeColor = System.Drawing.Color.DarkGray; - this.oldKeyTextBox.TextChanged += new System.EventHandler(this.OldKeyTextBox_TextChanged); - this.oldKeyTextBox.KeyDown += new System.Windows.Forms.KeyEventHandler(this.OldKeyTextBox_KeyDown); - // - // newKeyTextBox - // - this.newKeyTextBox.Location = new System.Drawing.Point(63, 37); - this.newKeyTextBox.Name = "newKeyTextBox"; - this.newKeyTextBox.Size = new System.Drawing.Size(177, 22); - this.newKeyTextBox.TabIndex = 1; - this.newKeyTextBox.UseSystemPasswordChar = true; - this.newKeyTextBox.Placeholder = "New key"; - this.newKeyTextBox.PlaceholderActiveForeColor = System.Drawing.Color.DarkGray; - this.newKeyTextBox.PlaceholderFont = new System.Drawing.Font("Segoe UI", 8.25F); - this.newKeyTextBox.PlaceholderForeColor = System.Drawing.Color.DarkGray; - this.newKeyTextBox.TextChanged += new System.EventHandler(this.NewKeyTextBox_TextChanged); - this.newKeyTextBox.KeyDown += new System.Windows.Forms.KeyEventHandler(this.NewKeyTextBox_KeyDown); - // // acceptButton // this.acceptButton.Enabled = false; - this.acceptButton.Location = new System.Drawing.Point(212, 79); + this.acceptButton.Location = new System.Drawing.Point(211, 80); this.acceptButton.Name = "acceptButton"; - this.acceptButton.Size = new System.Drawing.Size(53, 23); + this.acceptButton.Size = new System.Drawing.Size(53, 25); this.acceptButton.TabIndex = 4; this.acceptButton.Text = "Accept"; this.acceptButton.UseVisualStyleBackColor = true; @@ -92,14 +67,15 @@ private void InitializeComponent() this.mainPanel.Dock = System.Windows.Forms.DockStyle.Top; this.mainPanel.Location = new System.Drawing.Point(0, 0); this.mainPanel.Name = "mainPanel"; - this.mainPanel.Size = new System.Drawing.Size(269, 75); + this.mainPanel.Size = new System.Drawing.Size(295, 75); this.mainPanel.TabIndex = 6; // // lockPictureBox // this.lockPictureBox.BorderStyle = System.Windows.Forms.BorderStyle.FixedSingle; + this.lockPictureBox.Cursor = System.Windows.Forms.Cursors.Default; this.lockPictureBox.Image = global::Crypto_Notepad.Properties.Resources.gnupg_keys; - this.lockPictureBox.Location = new System.Drawing.Point(8, 12); + this.lockPictureBox.Location = new System.Drawing.Point(8, 14); this.lockPictureBox.Name = "lockPictureBox"; this.lockPictureBox.Size = new System.Drawing.Size(47, 47); this.lockPictureBox.SizeMode = System.Windows.Forms.PictureBoxSizeMode.CenterImage; @@ -111,7 +87,7 @@ private void InitializeComponent() this.showNewKeyPictureBox.BorderStyle = System.Windows.Forms.BorderStyle.FixedSingle; this.showNewKeyPictureBox.Cursor = System.Windows.Forms.Cursors.Hand; this.showNewKeyPictureBox.Image = global::Crypto_Notepad.Properties.Resources.eye_half; - this.showNewKeyPictureBox.Location = new System.Drawing.Point(239, 37); + this.showNewKeyPictureBox.Location = new System.Drawing.Point(269, 39); this.showNewKeyPictureBox.Name = "showNewKeyPictureBox"; this.showNewKeyPictureBox.Size = new System.Drawing.Size(18, 22); this.showNewKeyPictureBox.SizeMode = System.Windows.Forms.PictureBoxSizeMode.CenterImage; @@ -124,7 +100,7 @@ private void InitializeComponent() this.showOldKeyPictureBox.BorderStyle = System.Windows.Forms.BorderStyle.FixedSingle; this.showOldKeyPictureBox.Cursor = System.Windows.Forms.Cursors.Hand; this.showOldKeyPictureBox.Image = global::Crypto_Notepad.Properties.Resources.eye_half; - this.showOldKeyPictureBox.Location = new System.Drawing.Point(239, 12); + this.showOldKeyPictureBox.Location = new System.Drawing.Point(269, 14); this.showOldKeyPictureBox.Name = "showOldKeyPictureBox"; this.showOldKeyPictureBox.Size = new System.Drawing.Size(18, 22); this.showOldKeyPictureBox.SizeMode = System.Windows.Forms.PictureBoxSizeMode.CenterImage; @@ -132,25 +108,65 @@ private void InitializeComponent() this.showOldKeyPictureBox.TabStop = false; this.showOldKeyPictureBox.Click += new System.EventHandler(this.ShowOldKeyPictureBox_Click); // + // oldKeyTextBox + // + this.oldKeyTextBox.Location = new System.Drawing.Point(64, 14); + this.oldKeyTextBox.Name = "oldKeyTextBox"; + this.oldKeyTextBox.Placeholder = "Old key"; + this.oldKeyTextBox.PlaceholderActiveForeColor = System.Drawing.Color.DarkGray; + this.oldKeyTextBox.PlaceholderFont = new System.Drawing.Font("Segoe UI", 8.25F); + this.oldKeyTextBox.PlaceholderForeColor = System.Drawing.Color.DarkGray; + this.oldKeyTextBox.Size = new System.Drawing.Size(206, 22); + this.oldKeyTextBox.TabIndex = 0; + this.oldKeyTextBox.UseSystemPasswordChar = true; + this.oldKeyTextBox.TextChanged += new System.EventHandler(this.OldKeyTextBox_TextChanged); + this.oldKeyTextBox.KeyDown += new System.Windows.Forms.KeyEventHandler(this.OldKeyTextBox_KeyDown); + // + // newKeyTextBox + // + this.newKeyTextBox.Location = new System.Drawing.Point(64, 39); + this.newKeyTextBox.Name = "newKeyTextBox"; + this.newKeyTextBox.Placeholder = "New key"; + this.newKeyTextBox.PlaceholderActiveForeColor = System.Drawing.Color.DarkGray; + this.newKeyTextBox.PlaceholderFont = new System.Drawing.Font("Segoe UI", 8.25F); + this.newKeyTextBox.PlaceholderForeColor = System.Drawing.Color.DarkGray; + this.newKeyTextBox.Size = new System.Drawing.Size(206, 22); + this.newKeyTextBox.TabIndex = 1; + this.newKeyTextBox.UseSystemPasswordChar = true; + this.newKeyTextBox.TextChanged += new System.EventHandler(this.NewKeyTextBox_TextChanged); + this.newKeyTextBox.KeyDown += new System.Windows.Forms.KeyEventHandler(this.NewKeyTextBox_KeyDown); + // // statusLabel // this.statusLabel.AutoSize = true; this.statusLabel.Font = new System.Drawing.Font("Segoe UI", 9.75F, System.Drawing.FontStyle.Regular, System.Drawing.GraphicsUnit.Point, ((byte)(204))); this.statusLabel.ForeColor = System.Drawing.Color.Black; - this.statusLabel.Location = new System.Drawing.Point(5, 81); + this.statusLabel.Location = new System.Drawing.Point(3, 83); this.statusLabel.Name = "statusLabel"; this.statusLabel.Size = new System.Drawing.Size(42, 17); this.statusLabel.TabIndex = 7; this.statusLabel.Text = "status"; // + // passwordGeneratorButton + // + this.passwordGeneratorButton.Image = global::Crypto_Notepad.Properties.Resources.key__plus; + this.passwordGeneratorButton.Location = new System.Drawing.Point(266, 80); + this.passwordGeneratorButton.Name = "passwordGeneratorButton"; + this.passwordGeneratorButton.Size = new System.Drawing.Size(25, 25); + this.passwordGeneratorButton.TabIndex = 9; + this.changeKeyFormToolTip.SetToolTip(this.passwordGeneratorButton, "Password Generator"); + this.passwordGeneratorButton.UseVisualStyleBackColor = true; + this.passwordGeneratorButton.Click += new System.EventHandler(this.PasswordGeneratorButton_Click); + // // ChangeKeyForm // this.AutoScaleDimensions = new System.Drawing.SizeF(6F, 13F); this.AutoScaleMode = System.Windows.Forms.AutoScaleMode.Font; - this.ClientSize = new System.Drawing.Size(269, 106); + this.ClientSize = new System.Drawing.Size(295, 110); + this.Controls.Add(this.passwordGeneratorButton); this.Controls.Add(this.statusLabel); - this.Controls.Add(this.mainPanel); this.Controls.Add(this.acceptButton); + this.Controls.Add(this.mainPanel); this.Font = new System.Drawing.Font("Segoe UI", 8.25F, System.Drawing.FontStyle.Regular, System.Drawing.GraphicsUnit.Point, ((byte)(204))); this.FormBorderStyle = System.Windows.Forms.FormBorderStyle.FixedDialog; this.MaximizeBox = false; @@ -179,5 +195,7 @@ private void InitializeComponent() private System.Windows.Forms.Panel mainPanel; private System.Windows.Forms.PictureBox lockPictureBox; private System.Windows.Forms.Label statusLabel; + private System.Windows.Forms.ToolTip changeKeyFormToolTip; + private System.Windows.Forms.Button passwordGeneratorButton; } } \ No newline at end of file diff --git a/Crypto Notepad/ChangeKeyForm.cs b/Crypto Notepad/ChangeKeyForm.cs index bc40515..df5d7d2 100644 --- a/Crypto Notepad/ChangeKeyForm.cs +++ b/Crypto Notepad/ChangeKeyForm.cs @@ -50,6 +50,16 @@ private async void AcceptButton_Click(object sender, EventArgs e) statusLabel.Text = ""; } } + + private void PasswordGeneratorButton_Click(object sender, EventArgs e) + { + ActiveControl = null; + PasswordGeneratorFrom passwordGeneratorFrom = new PasswordGeneratorFrom(); + if ((Application.OpenForms["PasswordGeneratorFrom"] as PasswordGeneratorFrom) == null) + { + passwordGeneratorFrom.Show(this); + } + } /*Buttons*/ diff --git a/Crypto Notepad/ChangeKeyForm.resx b/Crypto Notepad/ChangeKeyForm.resx index 1af7de1..b2fe22f 100644 --- a/Crypto Notepad/ChangeKeyForm.resx +++ b/Crypto Notepad/ChangeKeyForm.resx @@ -117,4 +117,31 @@ System.Resources.ResXResourceWriter, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089 + + True + + + True + + + True + + + True + + + True + + + True + + + True + + + 17, 17 + + + True + \ No newline at end of file diff --git a/Crypto Notepad/EnterKeyForm.Designer.cs b/Crypto Notepad/EnterKeyForm.Designer.cs index ce43f6f..0d8613b 100644 --- a/Crypto Notepad/EnterKeyForm.Designer.cs +++ b/Crypto Notepad/EnterKeyForm.Designer.cs @@ -28,13 +28,16 @@ protected override void Dispose(bool disposing) /// private void InitializeComponent() { + this.components = new System.ComponentModel.Container(); System.ComponentModel.ComponentResourceManager resources = new System.ComponentModel.ComponentResourceManager(typeof(EnterKeyForm)); this.okButton = new System.Windows.Forms.Button(); this.mainPanel = new System.Windows.Forms.Panel(); this.lockPictureBox = new System.Windows.Forms.PictureBox(); this.fileNameLabel = new System.Windows.Forms.Label(); - this.showKeyPictureBox = new System.Windows.Forms.PictureBox(); this.keyTextBox = new System.Windows.Forms.PlaceholderTextBox(); + this.showKeyPictureBox = new System.Windows.Forms.PictureBox(); + this.enterKeyFormToolTip = new System.Windows.Forms.ToolTip(this.components); + this.passwordGeneratorButton = new System.Windows.Forms.Button(); this.mainPanel.SuspendLayout(); ((System.ComponentModel.ISupportInitialize)(this.lockPictureBox)).BeginInit(); ((System.ComponentModel.ISupportInitialize)(this.showKeyPictureBox)).BeginInit(); @@ -43,9 +46,9 @@ private void InitializeComponent() // okButton // this.okButton.Enabled = false; - this.okButton.Location = new System.Drawing.Point(190, 80); + this.okButton.Location = new System.Drawing.Point(211, 80); this.okButton.Name = "okButton"; - this.okButton.Size = new System.Drawing.Size(75, 23); + this.okButton.Size = new System.Drawing.Size(53, 25); this.okButton.TabIndex = 1; this.okButton.Text = "OK"; this.okButton.UseVisualStyleBackColor = true; @@ -61,14 +64,15 @@ private void InitializeComponent() this.mainPanel.Dock = System.Windows.Forms.DockStyle.Top; this.mainPanel.Location = new System.Drawing.Point(0, 0); this.mainPanel.Name = "mainPanel"; - this.mainPanel.Size = new System.Drawing.Size(269, 75); + this.mainPanel.Size = new System.Drawing.Size(295, 75); this.mainPanel.TabIndex = 5; // // lockPictureBox // this.lockPictureBox.BorderStyle = System.Windows.Forms.BorderStyle.FixedSingle; + this.lockPictureBox.Cursor = System.Windows.Forms.Cursors.Default; this.lockPictureBox.Image = global::Crypto_Notepad.Properties.Resources.key_solid; - this.lockPictureBox.Location = new System.Drawing.Point(8, 12); + this.lockPictureBox.Location = new System.Drawing.Point(8, 14); this.lockPictureBox.Name = "lockPictureBox"; this.lockPictureBox.Size = new System.Drawing.Size(47, 47); this.lockPictureBox.SizeMode = System.Windows.Forms.PictureBoxSizeMode.CenterImage; @@ -78,20 +82,34 @@ private void InitializeComponent() // fileNameLabel // this.fileNameLabel.AutoEllipsis = true; - this.fileNameLabel.Location = new System.Drawing.Point(61, 12); + this.fileNameLabel.Location = new System.Drawing.Point(61, 14); this.fileNameLabel.Name = "fileNameLabel"; this.fileNameLabel.Size = new System.Drawing.Size(196, 13); this.fileNameLabel.TabIndex = 6; this.fileNameLabel.Text = "File name"; this.fileNameLabel.TextAlign = System.Drawing.ContentAlignment.MiddleLeft; // + // keyTextBox + // + this.keyTextBox.Location = new System.Drawing.Point(64, 39); + this.keyTextBox.Name = "keyTextBox"; + this.keyTextBox.Placeholder = "Encryption key"; + this.keyTextBox.PlaceholderActiveForeColor = System.Drawing.Color.DarkGray; + this.keyTextBox.PlaceholderFont = new System.Drawing.Font("Segoe UI", 8.25F); + this.keyTextBox.PlaceholderForeColor = System.Drawing.Color.DarkGray; + this.keyTextBox.Size = new System.Drawing.Size(206, 22); + this.keyTextBox.TabIndex = 0; + this.keyTextBox.UseSystemPasswordChar = true; + this.keyTextBox.TextChanged += new System.EventHandler(this.KeyTextBox_TextChanged); + this.keyTextBox.KeyDown += new System.Windows.Forms.KeyEventHandler(this.KeyTextBox_KeyDown); + // // showKeyPictureBox // this.showKeyPictureBox.BorderStyle = System.Windows.Forms.BorderStyle.FixedSingle; this.showKeyPictureBox.Cursor = System.Windows.Forms.Cursors.Hand; this.showKeyPictureBox.Image = global::Crypto_Notepad.Properties.Resources.eye_half; this.showKeyPictureBox.InitialImage = global::Crypto_Notepad.Properties.Resources.eye_half; - this.showKeyPictureBox.Location = new System.Drawing.Point(240, 37); + this.showKeyPictureBox.Location = new System.Drawing.Point(269, 39); this.showKeyPictureBox.Name = "showKeyPictureBox"; this.showKeyPictureBox.Size = new System.Drawing.Size(18, 22); this.showKeyPictureBox.SizeMode = System.Windows.Forms.PictureBoxSizeMode.CenterImage; @@ -99,25 +117,23 @@ private void InitializeComponent() this.showKeyPictureBox.TabStop = false; this.showKeyPictureBox.Click += new System.EventHandler(this.ShowKeyPictureBox_Click); // - // keyTextBox + // passwordGeneratorButton // - this.keyTextBox.Location = new System.Drawing.Point(64, 37); - this.keyTextBox.Name = "keyTextBox"; - this.keyTextBox.Size = new System.Drawing.Size(177, 22); - this.keyTextBox.TabIndex = 0; - this.keyTextBox.UseSystemPasswordChar = true; - this.keyTextBox.Placeholder = "Encryption key"; - this.keyTextBox.PlaceholderActiveForeColor = System.Drawing.Color.DarkGray; - this.keyTextBox.PlaceholderFont = new System.Drawing.Font("Segoe UI", 8.25F); - this.keyTextBox.PlaceholderForeColor = System.Drawing.Color.DarkGray; - this.keyTextBox.TextChanged += new System.EventHandler(this.KeyTextBox_TextChanged); - this.keyTextBox.KeyDown += new System.Windows.Forms.KeyEventHandler(this.KeyTextBox_KeyDown); + this.passwordGeneratorButton.Image = global::Crypto_Notepad.Properties.Resources.key__plus; + this.passwordGeneratorButton.Location = new System.Drawing.Point(266, 80); + this.passwordGeneratorButton.Name = "passwordGeneratorButton"; + this.passwordGeneratorButton.Size = new System.Drawing.Size(25, 25); + this.passwordGeneratorButton.TabIndex = 10; + this.enterKeyFormToolTip.SetToolTip(this.passwordGeneratorButton, "Password Generator"); + this.passwordGeneratorButton.UseVisualStyleBackColor = true; + this.passwordGeneratorButton.Click += new System.EventHandler(this.PasswordGeneratorButton_Click); // // EnterKeyForm // this.AutoScaleDimensions = new System.Drawing.SizeF(6F, 13F); this.AutoScaleMode = System.Windows.Forms.AutoScaleMode.Font; - this.ClientSize = new System.Drawing.Size(269, 106); + this.ClientSize = new System.Drawing.Size(295, 110); + this.Controls.Add(this.passwordGeneratorButton); this.Controls.Add(this.mainPanel); this.Controls.Add(this.okButton); this.Font = new System.Drawing.Font("Segoe UI", 8.25F, System.Drawing.FontStyle.Regular, System.Drawing.GraphicsUnit.Point, ((byte)(204))); @@ -146,5 +162,7 @@ private void InitializeComponent() private System.Windows.Forms.Label fileNameLabel; private System.Windows.Forms.PictureBox lockPictureBox; public System.Windows.Forms.PlaceholderTextBox keyTextBox; + private System.Windows.Forms.ToolTip enterKeyFormToolTip; + private System.Windows.Forms.Button passwordGeneratorButton; } } \ No newline at end of file diff --git a/Crypto Notepad/EnterKeyForm.cs b/Crypto Notepad/EnterKeyForm.cs index a538294..0edc662 100644 --- a/Crypto Notepad/EnterKeyForm.cs +++ b/Crypto Notepad/EnterKeyForm.cs @@ -95,6 +95,16 @@ private void OkButton_Click(object sender, EventArgs e) PublicVar.okPressed = true; Hide(); } + + private void PasswordGeneratorButton_Click(object sender, EventArgs e) + { + ActiveControl = null; + PasswordGeneratorFrom passwordGeneratorFrom = new PasswordGeneratorFrom(); + if ((Application.OpenForms["PasswordGeneratorFrom"] as PasswordGeneratorFrom) == null) + { + passwordGeneratorFrom.Show(this); + } + } /*Buttons*/ diff --git a/Crypto Notepad/EnterKeyForm.resx b/Crypto Notepad/EnterKeyForm.resx index 3490cfe..8c5c0c0 100644 --- a/Crypto Notepad/EnterKeyForm.resx +++ b/Crypto Notepad/EnterKeyForm.resx @@ -117,6 +117,27 @@ System.Resources.ResXResourceWriter, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089 + + True + + + True + + + True + + + True + + + True + + + 17, 17 + + + True + diff --git a/Crypto Notepad/MainForm.Designer.cs b/Crypto Notepad/MainForm.Designer.cs index 8da3f9f..0a7835e 100644 --- a/Crypto Notepad/MainForm.Designer.cs +++ b/Crypto Notepad/MainForm.Designer.cs @@ -60,6 +60,7 @@ public void InitializeComponent() this.clearMainMenu = new System.Windows.Forms.ToolStripMenuItem(); this.toolsMainMenu = new System.Windows.Forms.ToolStripMenuItem(); this.alwaysOnTopMainMenu = new System.Windows.Forms.ToolStripMenuItem(); + this.passwordGeneratorMainMenu = new System.Windows.Forms.ToolStripMenuItem(); this.changeKeyMainMenu = new System.Windows.Forms.ToolStripMenuItem(); this.lockMainMenu = new System.Windows.Forms.ToolStripMenuItem(); this.settingsMainMenu = new System.Windows.Forms.ToolStripMenuItem(); @@ -118,13 +119,13 @@ public void InitializeComponent() this.fileLockedPanel = new System.Windows.Forms.Panel(); this.fileLockedCloseButton = new System.Windows.Forms.Button(); this.fileLockedOkButton = new System.Windows.Forms.Button(); + this.fileLockedKeyTextBox = new System.Windows.Forms.PlaceholderTextBox(); this.fileLockedShowKey = new System.Windows.Forms.PictureBox(); this.fileLockedLabel = new System.Windows.Forms.Label(); this.toolTip = new System.Windows.Forms.ToolTip(this.components); this.richTextBoxPanel = new System.Windows.Forms.Panel(); - this.statusPanelTimer = new System.Windows.Forms.Timer(this.components); - this.fileLockedKeyTextBox = new System.Windows.Forms.PlaceholderTextBox(); this.richTextBox = new Crypto_Notepad.ExRichTextBox(); + this.statusPanelTimer = new System.Windows.Forms.Timer(this.components); this.mainMenu.SuspendLayout(); this.contextMenu.SuspendLayout(); this.searchPanel.SuspendLayout(); @@ -397,6 +398,7 @@ public void InitializeComponent() // this.toolsMainMenu.DropDownItems.AddRange(new System.Windows.Forms.ToolStripItem[] { this.alwaysOnTopMainMenu, + this.passwordGeneratorMainMenu, this.changeKeyMainMenu, this.lockMainMenu, this.settingsMainMenu}); @@ -411,16 +413,24 @@ public void InitializeComponent() this.alwaysOnTopMainMenu.CheckOnClick = true; this.alwaysOnTopMainMenu.Name = "alwaysOnTopMainMenu"; this.alwaysOnTopMainMenu.ShortcutKeys = ((System.Windows.Forms.Keys)((System.Windows.Forms.Keys.Control | System.Windows.Forms.Keys.T))); - this.alwaysOnTopMainMenu.Size = new System.Drawing.Size(201, 22); + this.alwaysOnTopMainMenu.Size = new System.Drawing.Size(220, 22); this.alwaysOnTopMainMenu.Text = "Always on Top"; this.alwaysOnTopMainMenu.Click += new System.EventHandler(this.AlwaysOnTopMainMenu_Click); // + // passwordGeneratorMainMenu + // + this.passwordGeneratorMainMenu.Name = "passwordGeneratorMainMenu"; + this.passwordGeneratorMainMenu.ShortcutKeys = ((System.Windows.Forms.Keys)((System.Windows.Forms.Keys.Control | System.Windows.Forms.Keys.P))); + this.passwordGeneratorMainMenu.Size = new System.Drawing.Size(220, 22); + this.passwordGeneratorMainMenu.Text = "Password Generator"; + this.passwordGeneratorMainMenu.Click += new System.EventHandler(this.PasswordGeneratorMainMenu_Click); + // // changeKeyMainMenu // this.changeKeyMainMenu.Name = "changeKeyMainMenu"; this.changeKeyMainMenu.ShortcutKeys = ((System.Windows.Forms.Keys)(((System.Windows.Forms.Keys.Control | System.Windows.Forms.Keys.Alt) | System.Windows.Forms.Keys.K))); - this.changeKeyMainMenu.Size = new System.Drawing.Size(201, 22); + this.changeKeyMainMenu.Size = new System.Drawing.Size(220, 22); this.changeKeyMainMenu.Text = "Change Key"; this.changeKeyMainMenu.Click += new System.EventHandler(this.ChangeKeyMainMenu_Click); // @@ -428,7 +438,7 @@ public void InitializeComponent() // this.lockMainMenu.Name = "lockMainMenu"; this.lockMainMenu.ShortcutKeys = ((System.Windows.Forms.Keys)((System.Windows.Forms.Keys.Control | System.Windows.Forms.Keys.L))); - this.lockMainMenu.Size = new System.Drawing.Size(201, 22); + this.lockMainMenu.Size = new System.Drawing.Size(220, 22); this.lockMainMenu.Text = "Lock"; this.lockMainMenu.Click += new System.EventHandler(this.LockMainMenu_Click); // @@ -438,7 +448,7 @@ public void InitializeComponent() this.settingsMainMenu.ShortcutKeyDisplayString = ""; this.settingsMainMenu.ShortcutKeys = ((System.Windows.Forms.Keys)(((System.Windows.Forms.Keys.Control | System.Windows.Forms.Keys.Alt) | System.Windows.Forms.Keys.S))); - this.settingsMainMenu.Size = new System.Drawing.Size(201, 22); + this.settingsMainMenu.Size = new System.Drawing.Size(220, 22); this.settingsMainMenu.Text = "Settings"; this.settingsMainMenu.Click += new System.EventHandler(this.SettingsMainMenu_Click); // @@ -1114,6 +1124,20 @@ public void InitializeComponent() this.fileLockedOkButton.UseVisualStyleBackColor = true; this.fileLockedOkButton.Click += new System.EventHandler(this.FileLockedOkButton_Click); // + // fileLockedKeyTextBox + // + this.fileLockedKeyTextBox.Location = new System.Drawing.Point(6, 34); + this.fileLockedKeyTextBox.Name = "fileLockedKeyTextBox"; + this.fileLockedKeyTextBox.Placeholder = "Encryption key"; + this.fileLockedKeyTextBox.PlaceholderActiveForeColor = System.Drawing.Color.DarkGray; + this.fileLockedKeyTextBox.PlaceholderFont = new System.Drawing.Font("Segoe UI", 8.25F); + this.fileLockedKeyTextBox.PlaceholderForeColor = System.Drawing.Color.DarkGray; + this.fileLockedKeyTextBox.Size = new System.Drawing.Size(231, 22); + this.fileLockedKeyTextBox.TabIndex = 8; + this.fileLockedKeyTextBox.UseSystemPasswordChar = true; + this.fileLockedKeyTextBox.TextChanged += new System.EventHandler(this.FileLockedKeyTextBox_TextChanged); + this.fileLockedKeyTextBox.KeyDown += new System.Windows.Forms.KeyEventHandler(this.FileLockedKeyTextBox_KeyDown); + // // fileLockedShowKey // this.fileLockedShowKey.BorderStyle = System.Windows.Forms.BorderStyle.FixedSingle; @@ -1139,6 +1163,12 @@ public void InitializeComponent() this.fileLockedLabel.TabIndex = 7; this.fileLockedLabel.Text = "File locked"; // + // toolTip + // + this.toolTip.AutoPopDelay = 5000; + this.toolTip.InitialDelay = 500; + this.toolTip.ReshowDelay = 19000; + // // richTextBoxPanel // this.richTextBoxPanel.BorderStyle = System.Windows.Forms.BorderStyle.FixedSingle; @@ -1150,25 +1180,6 @@ public void InitializeComponent() this.richTextBoxPanel.Size = new System.Drawing.Size(504, 186); this.richTextBoxPanel.TabIndex = 21; // - // statusPanelTimer - // - this.statusPanelTimer.Interval = 1; - this.statusPanelTimer.Tick += new System.EventHandler(this.StatusPanelTimer_Tick); - // - // fileLockedKeyTextBox - // - this.fileLockedKeyTextBox.Location = new System.Drawing.Point(6, 34); - this.fileLockedKeyTextBox.Name = "fileLockedKeyTextBox"; - this.fileLockedKeyTextBox.Placeholder = "Encryption key"; - this.fileLockedKeyTextBox.PlaceholderActiveForeColor = System.Drawing.Color.DarkGray; - this.fileLockedKeyTextBox.PlaceholderFont = new System.Drawing.Font("Segoe UI", 8.25F); - this.fileLockedKeyTextBox.PlaceholderForeColor = System.Drawing.Color.DarkGray; - this.fileLockedKeyTextBox.Size = new System.Drawing.Size(231, 22); - this.fileLockedKeyTextBox.TabIndex = 8; - this.fileLockedKeyTextBox.UseSystemPasswordChar = true; - this.fileLockedKeyTextBox.TextChanged += new System.EventHandler(this.FileLockedKeyTextBox_TextChanged); - this.fileLockedKeyTextBox.KeyDown += new System.Windows.Forms.KeyEventHandler(this.FileLockedKeyTextBox_KeyDown); - // // richTextBox // this.richTextBox.AcceptsTab = true; @@ -1189,6 +1200,11 @@ public void InitializeComponent() this.richTextBox.TextChanged += new System.EventHandler(this.RichTextBox_TextChanged); this.richTextBox.KeyDown += new System.Windows.Forms.KeyEventHandler(this.RichTextBox_KeyDown); // + // statusPanelTimer + // + this.statusPanelTimer.Interval = 1; + this.statusPanelTimer.Tick += new System.EventHandler(this.StatusPanelTimer_Tick); + // // MainForm // this.AutoScaleDimensions = new System.Drawing.SizeF(6F, 13F); @@ -1340,5 +1356,6 @@ public void InitializeComponent() protected internal System.Windows.Forms.ToolStripStatusLabel statusPanelLinesLabel; protected internal System.Windows.Forms.ToolStripStatusLabel statusPanelModifiedLabel; protected internal System.Windows.Forms.ToolStripStatusLabel statusPanelSizeLabel; + private System.Windows.Forms.ToolStripMenuItem passwordGeneratorMainMenu; } } diff --git a/Crypto Notepad/MainForm.cs b/Crypto Notepad/MainForm.cs index 0c029d3..14a69e5 100644 --- a/Crypto Notepad/MainForm.cs +++ b/Crypto Notepad/MainForm.cs @@ -630,6 +630,7 @@ public void MenuIcons(bool menuIcons) aboutMainMenu.Image = Resources.information; alwaysOnTopMainMenu.Image = Resources.applications_blue; saveCloseFileMainMenu.Image = Resources.disk__minus; + passwordGeneratorMainMenu.Image = Resources.key__plus; } else { @@ -1404,6 +1405,12 @@ private void AlwaysOnTopMainMenu_Click(object sender, EventArgs e) } + private void PasswordGeneratorMainMenu_Click(object sender, EventArgs e) + { + PasswordGeneratorFrom passwordGeneratorFrom = new PasswordGeneratorFrom(); + passwordGeneratorFrom.ShowDialog(this); + } + private void ToolsMainMenu_DropDownOpened(object sender, EventArgs e) { if (string.IsNullOrEmpty(PublicVar.encryptionKey.Get())) diff --git a/Crypto Notepad/PasswordGeneratorFrom.Designer.cs b/Crypto Notepad/PasswordGeneratorFrom.Designer.cs new file mode 100644 index 0000000..4f45a0c --- /dev/null +++ b/Crypto Notepad/PasswordGeneratorFrom.Designer.cs @@ -0,0 +1,172 @@ +namespace Crypto_Notepad +{ + partial class PasswordGeneratorFrom + { + /// + /// 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.generateButton = new System.Windows.Forms.Button(); + this.passwordsList = new System.Windows.Forms.TextBox(); + this.clearPasswordsListButton = new System.Windows.Forms.Button(); + this.includeLowercaseCheckBox = new System.Windows.Forms.CheckBox(); + this.includeUppercaseCheckBox = new System.Windows.Forms.CheckBox(); + this.includeNumericCheckBox = new System.Windows.Forms.CheckBox(); + this.includeSpecialCheckBox = new System.Windows.Forms.CheckBox(); + this.passwordLengthTextBox = new System.Windows.Forms.PlaceholderTextBox(); + this.SuspendLayout(); + // + // generateButton + // + this.generateButton.Location = new System.Drawing.Point(303, 127); + this.generateButton.Name = "generateButton"; + this.generateButton.Size = new System.Drawing.Size(79, 23); + this.generateButton.TabIndex = 0; + this.generateButton.Text = "Generate"; + this.generateButton.UseVisualStyleBackColor = true; + this.generateButton.Click += new System.EventHandler(this.GenerateButton_Click); + // + // passwordsList + // + this.passwordsList.Font = new System.Drawing.Font("Consolas", 8.25F, System.Drawing.FontStyle.Regular, System.Drawing.GraphicsUnit.Point, ((byte)(204))); + this.passwordsList.Location = new System.Drawing.Point(7, 7); + this.passwordsList.Multiline = true; + this.passwordsList.Name = "passwordsList"; + this.passwordsList.ReadOnly = true; + this.passwordsList.ScrollBars = System.Windows.Forms.ScrollBars.Both; + this.passwordsList.Size = new System.Drawing.Size(290, 172); + this.passwordsList.TabIndex = 2; + this.passwordsList.WordWrap = false; + // + // clearPasswordsListButton + // + this.clearPasswordsListButton.Location = new System.Drawing.Point(303, 156); + this.clearPasswordsListButton.Name = "clearPasswordsListButton"; + this.clearPasswordsListButton.Size = new System.Drawing.Size(79, 23); + this.clearPasswordsListButton.TabIndex = 3; + this.clearPasswordsListButton.Text = "Clear"; + this.clearPasswordsListButton.UseVisualStyleBackColor = true; + this.clearPasswordsListButton.Click += new System.EventHandler(this.ClearPasswordsListButton_Click); + // + // includeLowercaseCheckBox + // + this.includeLowercaseCheckBox.AutoSize = true; + this.includeLowercaseCheckBox.Checked = true; + this.includeLowercaseCheckBox.CheckState = System.Windows.Forms.CheckState.Checked; + this.includeLowercaseCheckBox.Location = new System.Drawing.Point(303, 7); + this.includeLowercaseCheckBox.Name = "includeLowercaseCheckBox"; + this.includeLowercaseCheckBox.Size = new System.Drawing.Size(79, 17); + this.includeLowercaseCheckBox.TabIndex = 4; + this.includeLowercaseCheckBox.Text = "Lowercase"; + this.includeLowercaseCheckBox.UseVisualStyleBackColor = true; + // + // includeUppercaseCheckBox + // + this.includeUppercaseCheckBox.AutoSize = true; + this.includeUppercaseCheckBox.Checked = true; + this.includeUppercaseCheckBox.CheckState = System.Windows.Forms.CheckState.Checked; + this.includeUppercaseCheckBox.Location = new System.Drawing.Point(303, 30); + this.includeUppercaseCheckBox.Name = "includeUppercaseCheckBox"; + this.includeUppercaseCheckBox.Size = new System.Drawing.Size(80, 17); + this.includeUppercaseCheckBox.TabIndex = 5; + this.includeUppercaseCheckBox.Text = "Uppercase"; + this.includeUppercaseCheckBox.UseVisualStyleBackColor = true; + // + // includeNumericCheckBox + // + this.includeNumericCheckBox.AutoSize = true; + this.includeNumericCheckBox.Checked = true; + this.includeNumericCheckBox.CheckState = System.Windows.Forms.CheckState.Checked; + this.includeNumericCheckBox.Location = new System.Drawing.Point(303, 53); + this.includeNumericCheckBox.Name = "includeNumericCheckBox"; + this.includeNumericCheckBox.Size = new System.Drawing.Size(68, 17); + this.includeNumericCheckBox.TabIndex = 6; + this.includeNumericCheckBox.Text = "Numeric"; + this.includeNumericCheckBox.UseVisualStyleBackColor = true; + // + // includeSpecialCheckBox + // + this.includeSpecialCheckBox.AutoSize = true; + this.includeSpecialCheckBox.Checked = true; + this.includeSpecialCheckBox.CheckState = System.Windows.Forms.CheckState.Checked; + this.includeSpecialCheckBox.Location = new System.Drawing.Point(303, 76); + this.includeSpecialCheckBox.Name = "includeSpecialCheckBox"; + this.includeSpecialCheckBox.Size = new System.Drawing.Size(62, 17); + this.includeSpecialCheckBox.TabIndex = 7; + this.includeSpecialCheckBox.Text = "Special"; + this.includeSpecialCheckBox.UseVisualStyleBackColor = true; + // + // passwordLengthTextBox + // + this.passwordLengthTextBox.Location = new System.Drawing.Point(303, 99); + this.passwordLengthTextBox.Name = "passwordLengthTextBox"; + this.passwordLengthTextBox.Placeholder = "Length"; + this.passwordLengthTextBox.PlaceholderActiveForeColor = System.Drawing.Color.Gray; + this.passwordLengthTextBox.PlaceholderFont = new System.Drawing.Font("Microsoft Sans Serif", 8.25F, System.Drawing.FontStyle.Regular, System.Drawing.GraphicsUnit.Point, ((byte)(204))); + this.passwordLengthTextBox.PlaceholderForeColor = System.Drawing.Color.Gray; + this.passwordLengthTextBox.Size = new System.Drawing.Size(79, 22); + this.passwordLengthTextBox.TabIndex = 8; + this.passwordLengthTextBox.Text = "32"; + this.passwordLengthTextBox.KeyPress += new System.Windows.Forms.KeyPressEventHandler(this.PasswordLengthTextBox_KeyPress); + // + // PasswordGeneratorFrom + // + this.AutoScaleDimensions = new System.Drawing.SizeF(6F, 13F); + this.AutoScaleMode = System.Windows.Forms.AutoScaleMode.Font; + this.ClientSize = new System.Drawing.Size(388, 186); + this.Controls.Add(this.passwordLengthTextBox); + this.Controls.Add(this.includeSpecialCheckBox); + this.Controls.Add(this.includeNumericCheckBox); + this.Controls.Add(this.includeUppercaseCheckBox); + this.Controls.Add(this.includeLowercaseCheckBox); + this.Controls.Add(this.clearPasswordsListButton); + this.Controls.Add(this.passwordsList); + this.Controls.Add(this.generateButton); + this.Font = new System.Drawing.Font("Segoe UI", 8.25F, System.Drawing.FontStyle.Regular, System.Drawing.GraphicsUnit.Point, ((byte)(204))); + this.FormBorderStyle = System.Windows.Forms.FormBorderStyle.FixedSingle; + this.MaximizeBox = false; + this.Name = "PasswordGeneratorFrom"; + this.ShowIcon = false; + this.ShowInTaskbar = false; + this.StartPosition = System.Windows.Forms.FormStartPosition.Manual; + this.Text = "Password Generator"; + this.Shown += new System.EventHandler(this.PasswordGeneratorFrom_Shown); + this.ResumeLayout(false); + this.PerformLayout(); + + } + + #endregion + + private System.Windows.Forms.Button generateButton; + private System.Windows.Forms.TextBox passwordsList; + private System.Windows.Forms.Button clearPasswordsListButton; + private System.Windows.Forms.CheckBox includeLowercaseCheckBox; + private System.Windows.Forms.CheckBox includeUppercaseCheckBox; + private System.Windows.Forms.CheckBox includeNumericCheckBox; + private System.Windows.Forms.CheckBox includeSpecialCheckBox; + private System.Windows.Forms.PlaceholderTextBox passwordLengthTextBox; + } +} \ No newline at end of file diff --git a/Crypto Notepad/PasswordGeneratorFrom.cs b/Crypto Notepad/PasswordGeneratorFrom.cs new file mode 100644 index 0000000..4b66df5 --- /dev/null +++ b/Crypto Notepad/PasswordGeneratorFrom.cs @@ -0,0 +1,77 @@ +using PasswordGenerator; +using System; +using System.Runtime.InteropServices; +using System.Windows.Forms; + +namespace Crypto_Notepad +{ + public partial class PasswordGeneratorFrom : Form + { + [DllImport("user32.dll")] + static extern IntPtr CloseClipboard(); + public PasswordGeneratorFrom() + { + InitializeComponent(); + 11.Times(() => GenerateButton_Click(null, null)); + } + + private string GeneratePassword() + { + var pwd = new Password( + includeLowercase: includeLowercaseCheckBox.Checked, + includeUppercase: includeUppercaseCheckBox.Checked, + includeNumeric: includeNumericCheckBox.Checked, + includeSpecial: includeSpecialCheckBox.Checked, + passwordLength: int.Parse(passwordLengthTextBox.Text)); + return pwd.Next(); + } + + private void GenerateButton_Click(object sender, EventArgs e) + { + PublicVar.messageBoxCenterParent = true; + if (string.IsNullOrEmpty(passwordLengthTextBox.Text)) + { + passwordLengthTextBox.Text = 8.ToString(); + } + if (int.Parse(passwordLengthTextBox.Text) < 8) + { + passwordLengthTextBox.Text = 8.ToString(); + } + if (int.Parse(passwordLengthTextBox.Text) > 128) + { + passwordLengthTextBox.Text = 128.ToString(); + } + try + { + passwordsList.AppendLine(GeneratePassword()); + } + catch (ArgumentOutOfRangeException) + { + using (new CenterWinDialog(this)) + { + DialogResult res = MessageBox.Show(this, "Choose at least one character type", "Uh oh! Something went wrong", MessageBoxButtons.OK, MessageBoxIcon.Error); + } + } + } + + private void ClearPasswordsListButton_Click(object sender, EventArgs e) + { + passwordsList.Clear(); + } + + private void PasswordLengthTextBox_KeyPress(object sender, KeyPressEventArgs e) + { + if (!char.IsControl(e.KeyChar) & !char.IsDigit(e.KeyChar)) + { + e.Handled = true; + } + } + + private void PasswordGeneratorFrom_Shown(object sender, EventArgs e) + { + CenterToParent(); + } + + + } +} diff --git a/Crypto Notepad/PasswordGeneratorFrom.resx b/Crypto Notepad/PasswordGeneratorFrom.resx new file mode 100644 index 0000000..1af7de1 --- /dev/null +++ b/Crypto Notepad/PasswordGeneratorFrom.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/Crypto Notepad/Properties/Resources.Designer.cs b/Crypto Notepad/Properties/Resources.Designer.cs index ee48d2b..7e6f049 100644 --- a/Crypto Notepad/Properties/Resources.Designer.cs +++ b/Crypto Notepad/Properties/Resources.Designer.cs @@ -300,6 +300,16 @@ internal static System.Drawing.Bitmap key { } } + /// + /// Поиск локализованного ресурса типа System.Drawing.Bitmap. + /// + internal static System.Drawing.Bitmap key__plus { + get { + object obj = ResourceManager.GetObject("key__plus", resourceCulture); + return ((System.Drawing.Bitmap)(obj)); + } + } + /// /// Поиск локализованного ресурса типа System.Drawing.Bitmap. /// diff --git a/Crypto Notepad/Properties/Resources.resx b/Crypto Notepad/Properties/Resources.resx index 563549b..b039a96 100644 --- a/Crypto Notepad/Properties/Resources.resx +++ b/Crypto Notepad/Properties/Resources.resx @@ -1027,17 +1027,19 @@ - iVBORw0KGgoAAAANSUhEUgAAABAAAAAQCAYAAAAf8/9hAAAAAXNSR0IArs4c6QAAAARnQU1BAACxjwv8 - YQUAAAAZdEVYdFNvZnR3YXJlAEFkb2JlIEltYWdlUmVhZHlxyWU8AAAB6klEQVQ4T6XOXUhTcRjH8Wdn - u5f0IoiIontljqDbiKCii0CWKLZy5egi6ibwIkmhF3VtbcJsZqQW5VbD6AhR24qWCydSF2VFRvaCURkD - X/BlMNiv/+/gotgYRgc+HPj/n+9zjgD4L+I0+xT/MeWivbXVtRacZRMS9TSqBYp3cnBBLQRyRYy7XIja - bL/pW6zol3U/BkWuyGGzl3wTA2lkczlkstkCkepqrDgcBXpEnsshs4e6Xvb9xJIanlteLnDX6cRlq9UQ - VMv8m6vQIuUz5/gHDrObAi96v2E2k8H3+fmSOMNZNie1XSINWjsFx4PTmFFf+5ROl8QZzrJhK/XaeepN - BT7j49Qcvi4ulsQZzrJhK3XaWbqW9H9ArH1iTTjLhq3Uam00kPBOovPADXTYrxfFu7yx7i9gw1bs2hm6 - +ajzDTx1t5BKjWFkJPkXnvHuTnMSvoYwnnVNgQ1bqdFOUzh64RX8B28jHk+gZU+3YXj4gYFnvOOC4NF7 - eHrpPdiwlf1aMw3FO14j0DgEXY8ZbwqHdUP+jAv6jz/EE887sGErFaaNst1Us2Ov6USsbffV2Ugkip4m - 3RAK3Tfkz7ggdCqBx+634DxbPpuUyq2y7chOaRq1WCzuYnj3J5vs61ttpUxZr2z4R6qRsl9qPVVwJqmK - bwAAAABJRU5ErkJggg== + iVBORw0KGgoAAAANSUhEUgAAABAAAAAQCAYAAAAf8/9hAAAABGdBTUEAALGPC/xhBQAAABl0RVh0U29m + dHdhcmUAQWRvYmUgSW1hZ2VSZWFkeXHJZTwAAAHqSURBVDhPpc5dSFNxGMfxZ2e7l/QiiIiie2WOoNuI + oKKLQJYotnLl6CLqJvAiSaEXdW1twmxmpBblVsPoCFHbipYLJ1IXZUVG9oJRGQNf8GUw2K//7+Ci2BhG + Bz4c+P+f73OOAPgv4jT7FP8x5aK9tdW1FpxlExL1NKoFindycEEtBHJFjLtciNpsv+lbrOiXdT8GRa7I + YbOXfBMDaWRzOWSy2QKR6mqsOBwFekSeyyGzh7pe9v3EkhqeW14ucNfpxGWr1RBUy/ybq9Ai5TPn+AcO + s5sCL3q/YTaTwff5+ZI4w1k2J7VdIg1aOwXHg9OYUV/7lE6XxBnOsmEr9dp56k0FPuPj1By+Li6WxBnO + smErddpZupb0f0CsfWJNOMuGrdRqbTSQ8E6i88ANdNivF8W7vLHuL2DDVuzaGbr5qPMNPHW3kEqNYWQk + +Ree8e5OcxK+hjCedU2BDVup0U5TOHrhFfwHbyMeT6BlT7dhePiBgWe844Lg0Xt4euk92LCV/VozDcU7 + XiPQOARdjxlvCod1Q/6MC/qPP8QTzzuwYSsVpo2y3VSzY6/pRKxt99XZSCSKnibdEArdN+TPuCB0KoHH + 7rfgPFs+m5TKrbLtyE5pGrVYLO5iePcnm+zrW22lTFmvbPhHqpGyX2o9VXAmqYpvAAAAAElFTkSuQmCC + + ..\Resources\key--plus.png;System.Drawing.Bitmap, System.Drawing, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a + \ No newline at end of file diff --git a/Crypto Notepad/Resources/key--plus.png b/Crypto Notepad/Resources/key--plus.png new file mode 100644 index 0000000000000000000000000000000000000000..9c3e361d75e7b55a35c200817084d87c0e0bb87a GIT binary patch literal 812 zcmV+{1JnG8P)N4i5NzC?}cIrMI<_fei1b1g%wPfZ7qg@b7AVz zZEW*zJLhbt?>keOp&vZw{oe1q@B6*)^L{TQiXw&{Dxi{sk;#w`pqwBR(X~J@9*Mxl zg&|^>rP!2=5J7d){=AyQB{k)uTARyltUwHU9DlwKmH1qaeq!^1K-@Jzh!+b|vyNOj zR^4*lJl1QUoi+`JBLXtB4`!b{b*XM@v|sLBbk31vE&m6Q(NB;=WkFS=&T8s)IOc~9 z(E97;$!qnlfZbrTymcHcJFlZQA)a2g6H*5291bNUrl&1xRFpPCpx` z$fY)Wai_6!i@@#Wj+VO`OQN;VV- z!0TE-z&DSS1O{;#>99^s|D-kyv7Jd(N|5N}#cdKtjPDJ(?xm$rVe#oawPs&hoS+2{ z!96x+`enD;dKm^Iv*{{ymujQVgi)+Tz|eQ_NT8&OTqz0qF*;L-bD5Uvoy2)klCf>%g=oN7UizPR zeI%llIHRXHfz&C|n%RbPw^%AAeJcQUjsZ;)H=6HNko{9{ zoJ+SoHUL*kft(a6sMM~mXYKEZXybz-bzmzlRkHNlEx1u};jFYb4vucm0$zUwE*1g@ zvDP#p{t%EXzxR5aL^@zUzT#AZnW qf>kuDI!Ns-aWoS&Axn*a0t^5VdQVD;j5ZAb0000