Minor design/functionality changes in "About" window

- Removed app logo;
-  Able to get (copied to clipboard) debug info by clicking to app version text;
- Left only the main information about the app;
This commit is contained in:
Alexander 2019-11-20 13:49:47 +02:00
parent 52c9adc044
commit 1c1c072a0f
7 changed files with 1309 additions and 455 deletions

View file

@ -28,171 +28,74 @@ protected override void Dispose(bool disposing)
/// </summary>
private void InitializeComponent()
{
this.components = new System.ComponentModel.Container();
System.ComponentModel.ComponentResourceManager resources = new System.ComponentModel.ComponentResourceManager(typeof(AboutFrom));
this.appVersionLabel = new System.Windows.Forms.Label();
this.appLogoPictureBox = new System.Windows.Forms.PictureBox();
this.thirdPartyDevLabel = new System.Windows.Forms.Label();
this.appInfoLabel1 = new System.Windows.Forms.LinkLabel();
this.appInfoLabel2 = new System.Windows.Forms.LinkLabel();
this.appInfoLabel3 = new System.Windows.Forms.LinkLabel();
this.contributorsLabel = new System.Windows.Forms.Label();
this.contributorsRichTextBox = new Crypto_Notepad.ExRichTextBox();
this.thirdPartyDevRichTextBox = new Crypto_Notepad.ExRichTextBox();
((System.ComponentModel.ISupportInitialize)(this.appLogoPictureBox)).BeginInit();
this.randomColorTimer = new System.Windows.Forms.Timer(this.components);
this.copyToClipboardLabel = new System.Windows.Forms.Label();
this.appInfoRichTextBox = new Crypto_Notepad.HideCaretRichTextBox();
this.SuspendLayout();
//
// appVersionLabel
//
this.appVersionLabel.AutoSize = true;
this.appVersionLabel.Cursor = System.Windows.Forms.Cursors.Hand;
this.appVersionLabel.Font = new System.Drawing.Font("Consolas", 14.25F, ((System.Drawing.FontStyle)((System.Drawing.FontStyle.Bold | System.Drawing.FontStyle.Underline))), System.Drawing.GraphicsUnit.Point, ((byte)(204)));
this.appVersionLabel.ForeColor = System.Drawing.SystemColors.Highlight;
this.appVersionLabel.Location = new System.Drawing.Point(5, 9);
this.appVersionLabel.Font = new System.Drawing.Font("Consolas", 14.25F, System.Drawing.FontStyle.Underline, System.Drawing.GraphicsUnit.Point, ((byte)(204)));
this.appVersionLabel.ForeColor = System.Drawing.SystemColors.HotTrack;
this.appVersionLabel.Location = new System.Drawing.Point(4, 10);
this.appVersionLabel.Name = "appVersionLabel";
this.appVersionLabel.Size = new System.Drawing.Size(220, 22);
this.appVersionLabel.TabIndex = 0;
this.appVersionLabel.Text = "Crypto Notepad v1.0.0";
this.appVersionLabel.Click += new System.EventHandler(this.AppVersionLabel_Click);
this.appVersionLabel.Size = new System.Drawing.Size(210, 22);
this.appVersionLabel.TabIndex = 1;
this.appVersionLabel.Text = "Crypto Notepad 1.0.0";
this.appVersionLabel.MouseClick += new System.Windows.Forms.MouseEventHandler(this.appVersionLabel_MouseClick);
//
// appLogoPictureBox
// randomColorTimer
//
this.appLogoPictureBox.Cursor = System.Windows.Forms.Cursors.Hand;
this.appLogoPictureBox.Image = ((System.Drawing.Image)(resources.GetObject("appLogoPictureBox.Image")));
this.appLogoPictureBox.Location = new System.Drawing.Point(341, 2);
this.appLogoPictureBox.Name = "appLogoPictureBox";
this.appLogoPictureBox.Size = new System.Drawing.Size(77, 68);
this.appLogoPictureBox.SizeMode = System.Windows.Forms.PictureBoxSizeMode.Zoom;
this.appLogoPictureBox.TabIndex = 1;
this.appLogoPictureBox.TabStop = false;
this.appLogoPictureBox.Click += new System.EventHandler(this.AppLogoPictureBox_Click);
this.randomColorTimer.Interval = 200;
this.randomColorTimer.Tick += new System.EventHandler(this.RandomColorTimer_Tick);
//
// thirdPartyDevLabel
// copyToClipboardLabel
//
this.thirdPartyDevLabel.AutoSize = true;
this.thirdPartyDevLabel.Font = new System.Drawing.Font("Consolas", 11.25F, System.Drawing.FontStyle.Bold, System.Drawing.GraphicsUnit.Point, ((byte)(204)));
this.thirdPartyDevLabel.ForeColor = System.Drawing.SystemColors.Highlight;
this.thirdPartyDevLabel.Location = new System.Drawing.Point(5, 173);
this.thirdPartyDevLabel.Name = "thirdPartyDevLabel";
this.thirdPartyDevLabel.Size = new System.Drawing.Size(200, 18);
this.thirdPartyDevLabel.TabIndex = 4;
this.thirdPartyDevLabel.Text = "Third-party developments";
this.copyToClipboardLabel.AutoSize = true;
this.copyToClipboardLabel.BorderStyle = System.Windows.Forms.BorderStyle.FixedSingle;
this.copyToClipboardLabel.Font = new System.Drawing.Font("Segoe UI Semibold", 6.75F, System.Drawing.FontStyle.Bold, System.Drawing.GraphicsUnit.Point, ((byte)(204)));
this.copyToClipboardLabel.ForeColor = System.Drawing.SystemColors.ControlDarkDark;
this.copyToClipboardLabel.Location = new System.Drawing.Point(214, 15);
this.copyToClipboardLabel.Name = "copyToClipboardLabel";
this.copyToClipboardLabel.Size = new System.Drawing.Size(143, 14);
this.copyToClipboardLabel.TabIndex = 3;
this.copyToClipboardLabel.Text = "debug info was copied to clipboard";
this.copyToClipboardLabel.Visible = false;
//
// appInfoLabel1
// appInfoRichTextBox
//
this.appInfoLabel1.ActiveLinkColor = System.Drawing.Color.White;
this.appInfoLabel1.AutoSize = true;
this.appInfoLabel1.DisabledLinkColor = System.Drawing.Color.White;
this.appInfoLabel1.Font = new System.Drawing.Font("Consolas", 9F, System.Drawing.FontStyle.Regular, System.Drawing.GraphicsUnit.Point, ((byte)(204)));
this.appInfoLabel1.ForeColor = System.Drawing.SystemColors.Control;
this.appInfoLabel1.LinkArea = new System.Windows.Forms.LinkArea(38, 8);
this.appInfoLabel1.LinkColor = System.Drawing.Color.White;
this.appInfoLabel1.Location = new System.Drawing.Point(8, 38);
this.appInfoLabel1.Name = "appInfoLabel1";
this.appInfoLabel1.Size = new System.Drawing.Size(317, 19);
this.appInfoLabel1.TabIndex = 9;
this.appInfoLabel1.TabStop = true;
this.appInfoLabel1.Text = "This is an open-source app created by Sigmanor";
this.appInfoLabel1.UseCompatibleTextRendering = true;
this.appInfoLabel1.LinkClicked += new System.Windows.Forms.LinkLabelLinkClickedEventHandler(this.AppInfoLabel1_LinkClicked);
//
// appInfoLabel2
//
this.appInfoLabel2.ActiveLinkColor = System.Drawing.Color.White;
this.appInfoLabel2.AutoSize = true;
this.appInfoLabel2.DisabledLinkColor = System.Drawing.Color.White;
this.appInfoLabel2.Font = new System.Drawing.Font("Consolas", 9F, System.Drawing.FontStyle.Regular, System.Drawing.GraphicsUnit.Point, ((byte)(204)));
this.appInfoLabel2.ForeColor = System.Drawing.SystemColors.Control;
this.appInfoLabel2.LinkArea = new System.Windows.Forms.LinkArea(18, 3);
this.appInfoLabel2.LinkColor = System.Drawing.Color.White;
this.appInfoLabel2.Location = new System.Drawing.Point(8, 57);
this.appInfoLabel2.Name = "appInfoLabel2";
this.appInfoLabel2.Size = new System.Drawing.Size(202, 19);
this.appInfoLabel2.TabIndex = 9;
this.appInfoLabel2.TabStop = true;
this.appInfoLabel2.Text = "Distributed under MIT license";
this.appInfoLabel2.UseCompatibleTextRendering = true;
this.appInfoLabel2.LinkClicked += new System.Windows.Forms.LinkLabelLinkClickedEventHandler(this.AppInfoLabel1_LinkClicked);
//
// appInfoLabel3
//
this.appInfoLabel3.ActiveLinkColor = System.Drawing.Color.White;
this.appInfoLabel3.AutoSize = true;
this.appInfoLabel3.DisabledLinkColor = System.Drawing.Color.White;
this.appInfoLabel3.Font = new System.Drawing.Font("Consolas", 9F, System.Drawing.FontStyle.Regular, System.Drawing.GraphicsUnit.Point, ((byte)(204)));
this.appInfoLabel3.ForeColor = System.Drawing.SystemColors.Control;
this.appInfoLabel3.LinkArea = new System.Windows.Forms.LinkArea(52, 6);
this.appInfoLabel3.LinkColor = System.Drawing.Color.White;
this.appInfoLabel3.Location = new System.Drawing.Point(8, 75);
this.appInfoLabel3.Name = "appInfoLabel3";
this.appInfoLabel3.Size = new System.Drawing.Size(399, 19);
this.appInfoLabel3.TabIndex = 9;
this.appInfoLabel3.TabStop = true;
this.appInfoLabel3.Text = "The source code, issues and documentation posted on GitHub";
this.appInfoLabel3.UseCompatibleTextRendering = true;
this.appInfoLabel3.LinkClicked += new System.Windows.Forms.LinkLabelLinkClickedEventHandler(this.AppInfoLabel3_LinkClicked);
//
// contributorsLabel
//
this.contributorsLabel.AutoSize = true;
this.contributorsLabel.Font = new System.Drawing.Font("Consolas", 11.25F, System.Drawing.FontStyle.Bold, System.Drawing.GraphicsUnit.Point, ((byte)(204)));
this.contributorsLabel.ForeColor = System.Drawing.SystemColors.Highlight;
this.contributorsLabel.Location = new System.Drawing.Point(5, 105);
this.contributorsLabel.Name = "contributorsLabel";
this.contributorsLabel.Size = new System.Drawing.Size(168, 18);
this.contributorsLabel.TabIndex = 4;
this.contributorsLabel.Text = "Contributors/testers";
//
// contributorsRichTextBox
//
this.contributorsRichTextBox.BackColor = System.Drawing.Color.FromArgb(((int)(((byte)(45)))), ((int)(((byte)(45)))), ((int)(((byte)(50)))));
this.contributorsRichTextBox.BorderStyle = System.Windows.Forms.BorderStyle.None;
this.contributorsRichTextBox.Font = new System.Drawing.Font("Consolas", 8.25F, System.Drawing.FontStyle.Regular, System.Drawing.GraphicsUnit.Point, ((byte)(204)));
this.contributorsRichTextBox.ForeColor = System.Drawing.SystemColors.Control;
this.contributorsRichTextBox.Location = new System.Drawing.Point(-1, 126);
this.contributorsRichTextBox.Name = "contributorsRichTextBox";
this.contributorsRichTextBox.ReadOnly = true;
this.contributorsRichTextBox.RightMargin = 700;
this.contributorsRichTextBox.ScrollBars = System.Windows.Forms.RichTextBoxScrollBars.None;
this.contributorsRichTextBox.ShowSelectionMargin = true;
this.contributorsRichTextBox.Size = new System.Drawing.Size(414, 40);
this.contributorsRichTextBox.TabIndex = 11;
this.contributorsRichTextBox.Text = "h5p9sl https://github.com/h5p9sl\nsmaragdus https://github.com/smaragdus";
this.contributorsRichTextBox.WordWrap = false;
this.contributorsRichTextBox.LinkClicked += new System.Windows.Forms.LinkClickedEventHandler(this.ContributorsRichTextBox_LinkClicked);
//
// thirdPartyDevRichTextBox
//
this.thirdPartyDevRichTextBox.BackColor = System.Drawing.Color.FromArgb(((int)(((byte)(45)))), ((int)(((byte)(45)))), ((int)(((byte)(50)))));
this.thirdPartyDevRichTextBox.BorderStyle = System.Windows.Forms.BorderStyle.None;
this.thirdPartyDevRichTextBox.Font = new System.Drawing.Font("Consolas", 8.25F, System.Drawing.FontStyle.Regular, System.Drawing.GraphicsUnit.Point, ((byte)(204)));
this.thirdPartyDevRichTextBox.ForeColor = System.Drawing.SystemColors.Control;
this.thirdPartyDevRichTextBox.Location = new System.Drawing.Point(-1, 194);
this.thirdPartyDevRichTextBox.Name = "thirdPartyDevRichTextBox";
this.thirdPartyDevRichTextBox.ReadOnly = true;
this.thirdPartyDevRichTextBox.RightMargin = 700;
this.thirdPartyDevRichTextBox.ScrollBars = System.Windows.Forms.RichTextBoxScrollBars.ForcedHorizontal;
this.thirdPartyDevRichTextBox.ShowSelectionMargin = true;
this.thirdPartyDevRichTextBox.Size = new System.Drawing.Size(414, 141);
this.thirdPartyDevRichTextBox.TabIndex = 10;
this.thirdPartyDevRichTextBox.Text = resources.GetString("thirdPartyDevRichTextBox.Text");
this.thirdPartyDevRichTextBox.WordWrap = false;
this.thirdPartyDevRichTextBox.LinkClicked += new System.Windows.Forms.LinkClickedEventHandler(this.ThirdPartyDevRichTextBox_LinkClicked);
this.appInfoRichTextBox.BackColor = System.Drawing.Color.FromArgb(((int)(((byte)(45)))), ((int)(((byte)(45)))), ((int)(((byte)(50)))));
this.appInfoRichTextBox.BorderStyle = System.Windows.Forms.BorderStyle.None;
this.appInfoRichTextBox.Cursor = System.Windows.Forms.Cursors.IBeam;
this.appInfoRichTextBox.Font = new System.Drawing.Font("Consolas", 8.25F, System.Drawing.FontStyle.Regular, System.Drawing.GraphicsUnit.Point, ((byte)(204)));
this.appInfoRichTextBox.ForeColor = System.Drawing.SystemColors.ButtonFace;
this.appInfoRichTextBox.Location = new System.Drawing.Point(0, 44);
this.appInfoRichTextBox.Name = "appInfoRichTextBox";
this.appInfoRichTextBox.ReadOnly = true;
this.appInfoRichTextBox.RightMargin = 700;
this.appInfoRichTextBox.ScrollBars = System.Windows.Forms.RichTextBoxScrollBars.None;
this.appInfoRichTextBox.ShowSelectionMargin = true;
this.appInfoRichTextBox.Size = new System.Drawing.Size(439, 303);
this.appInfoRichTextBox.TabIndex = 2;
this.appInfoRichTextBox.TabStop = false;
this.appInfoRichTextBox.Text = resources.GetString("appInfoRichTextBox.Text");
this.appInfoRichTextBox.WordWrap = false;
this.appInfoRichTextBox.LinkClicked += new System.Windows.Forms.LinkClickedEventHandler(this.AppInfoRichTextBox_LinkClicked);
//
// AboutFrom
//
this.AutoScaleDimensions = new System.Drawing.SizeF(6F, 13F);
this.AutoScaleMode = System.Windows.Forms.AutoScaleMode.Font;
this.BackColor = System.Drawing.Color.FromArgb(((int)(((byte)(45)))), ((int)(((byte)(45)))), ((int)(((byte)(50)))));
this.ClientSize = new System.Drawing.Size(411, 335);
this.Controls.Add(this.contributorsRichTextBox);
this.Controls.Add(this.thirdPartyDevRichTextBox);
this.Controls.Add(this.appInfoLabel3);
this.Controls.Add(this.appInfoLabel2);
this.Controls.Add(this.appInfoLabel1);
this.Controls.Add(this.appLogoPictureBox);
this.ClientSize = new System.Drawing.Size(435, 323);
this.Controls.Add(this.copyToClipboardLabel);
this.Controls.Add(this.appInfoRichTextBox);
this.Controls.Add(this.appVersionLabel);
this.Controls.Add(this.contributorsLabel);
this.Controls.Add(this.thirdPartyDevLabel);
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.Icon = ((System.Drawing.Icon)(resources.GetObject("$this.Icon")));
@ -203,8 +106,6 @@ private void InitializeComponent()
this.StartPosition = System.Windows.Forms.FormStartPosition.CenterParent;
this.Text = "About";
this.Load += new System.EventHandler(this.AboutWindow_Load);
this.Click += new System.EventHandler(this.AboutFrom_Click);
((System.ComponentModel.ISupportInitialize)(this.appLogoPictureBox)).EndInit();
this.ResumeLayout(false);
this.PerformLayout();
@ -213,13 +114,8 @@ private void InitializeComponent()
#endregion
private System.Windows.Forms.Label appVersionLabel;
private System.Windows.Forms.PictureBox appLogoPictureBox;
private System.Windows.Forms.Label thirdPartyDevLabel;
private System.Windows.Forms.LinkLabel appInfoLabel1;
private System.Windows.Forms.LinkLabel appInfoLabel2;
private System.Windows.Forms.LinkLabel appInfoLabel3;
private System.Windows.Forms.Label contributorsLabel;
private ExRichTextBox thirdPartyDevRichTextBox;
private ExRichTextBox contributorsRichTextBox;
private HideCaretRichTextBox appInfoRichTextBox;
private System.Windows.Forms.Timer randomColorTimer;
private System.Windows.Forms.Label copyToClipboardLabel;
}
}

View file

@ -1,29 +1,115 @@
using System;
using JCS;
using Microsoft.Win32;
using System;
using System.Diagnostics;
using System.Drawing;
using System.Text;
using System.Threading.Tasks;
using System.Windows.Forms;
namespace Crypto_Notepad
{
public partial class AboutFrom : Form
{
private Random rnd = new Random();
public AboutFrom()
{
InitializeComponent();
}
private static string CheckFor45DotVersion(int releaseKey)
{
if (releaseKey >= 461808)
{
return "4.7.2 or later";
}
if (releaseKey >= 461308)
{
return "4.7.1 or later";
}
if (releaseKey >= 460798)
{
return "4.7 or later";
}
if (releaseKey >= 394802)
{
return "4.6.2 or later";
}
if (releaseKey >= 394254)
{
return "4.6.1 or later";
}
if (releaseKey >= 393295)
{
return "4.6 or later";
}
if (releaseKey >= 393273)
{
return "4.6 RC or later";
}
if ((releaseKey >= 379893))
{
return "4.5.2 or later";
}
if ((releaseKey >= 378675))
{
return "4.5.1 or later";
}
if ((releaseKey >= 378389))
{
return "4.5 or later";
}
return "No 4.5 or later version detected";
}
/*Form Events*/
private async void GetDebugInfo()
{
copyToClipboardLabel.Visible = true;
Version vrs = new Version(Application.ProductVersion);
StringBuilder sb = new StringBuilder(string.Empty);
sb.AppendLine("App Information");
sb.AppendLine("----------------------------");
sb.AppendLine("Version = " + vrs);
sb.AppendLine();
sb.AppendLine("Operation System Information");
sb.AppendLine("----------------------------");
sb.AppendLine(string.Format("Name = {0}", OSVersionInfo.Name));
if (!string.IsNullOrEmpty(OSVersionInfo.Edition))
sb.AppendLine(string.Format("Edition = {0}", OSVersionInfo.Edition));
else
sb.AppendLine(string.Format("Edition = None"));
if (!string.IsNullOrEmpty(OSVersionInfo.ServicePack))
sb.AppendLine(string.Format("Service Pack = {0}", OSVersionInfo.ServicePack));
else
sb.AppendLine("Service Pack = None");
sb.AppendLine(string.Format("Version = {0}", OSVersionInfo.VersionString));
sb.AppendLine(string.Format("OSBits = {0}", OSVersionInfo.OSBits));
sb.AppendLine(string.Format("ProcessorBits = {0}", OSVersionInfo.ProcessorBits));
sb.AppendLine(string.Format("ProgramBits = {0}", OSVersionInfo.ProgramBits));
sb.AppendLine();
sb.AppendLine(".Net Framework Information");
sb.AppendLine("----------------------------");
using (RegistryKey ndpKey = RegistryKey.OpenBaseKey(RegistryHive.LocalMachine, RegistryView.Registry32).OpenSubKey("SOFTWARE\\Microsoft\\NET Framework Setup\\NDP\\v4\\Full\\"))
{
int releaseKey = Convert.ToInt32(ndpKey.GetValue("Release"));
sb.AppendLine("Version = " + CheckFor45DotVersion(releaseKey));
}
Clipboard.SetText(sb.ToString());
await Task.Delay(3000);
copyToClipboardLabel.Visible = false;
}
/*Event Handlers*/
private void AboutWindow_Load(object sender, EventArgs e)
{
Version vrs = new Version(Application.ProductVersion);
appVersionLabel.Text = string.Format(PublicVar.appName + " {0}.{1}.{2}", vrs.Major, vrs.Minor, vrs.Build);
}
private void AboutFrom_Click(object sender, EventArgs e)
{
appLogoPictureBox.Focus();
}
protected override bool ProcessDialogKey(Keys keyData)
{
if (ModifierKeys == Keys.None && keyData == Keys.Escape)
@ -33,48 +119,41 @@ protected override bool ProcessDialogKey(Keys keyData)
}
return base.ProcessDialogKey(keyData);
}
/*Form Events*/
/*Main Information*/
private void AppVersionLabel_Click(object sender, EventArgs e)
private void RandomColorTimer_Tick(object sender, EventArgs e)
{
Process.Start("https://github.com/Crypto-Notepad/Crypto-Notepad/wiki/Release-Notes");
Color randomColor = Color.FromArgb(rnd.Next(256), rnd.Next(256), rnd.Next(256));
appVersionLabel.ForeColor = randomColor;
}
private void AppInfoLabel1_LinkClicked(object sender, LinkLabelLinkClickedEventArgs e)
{
Process.Start("https://sigmanor.github.io/");
}
private void AppInfoLabel2_LinkClicked(object sender, LinkLabelLinkClickedEventArgs e)
{
Process.Start("https://github.com/Crypto-Notepad/Crypto-Notepad/blob/master/LICENSE");
}
private void AppInfoLabel3_LinkClicked(object sender, LinkLabelLinkClickedEventArgs e)
{
Process.Start("https://github.com/Crypto-Notepad/Crypto-Notepad");
}
private void AppLogoPictureBox_Click(object sender, EventArgs e)
{
Process.Start("https://crypto-notepad.github.io/");
}
/*Main Information*/
/*Event Handlers*/
/*Perform open links*/
private void ThirdPartyDevRichTextBox_LinkClicked(object sender, LinkClickedEventArgs e)
/*Main*/
private void AppInfoRichTextBox_LinkClicked(object sender, LinkClickedEventArgs e)
{
Process.Start(e.LinkText);
}
private void ContributorsRichTextBox_LinkClicked(object sender, LinkClickedEventArgs e)
private void appVersionLabel_MouseClick(object sender, MouseEventArgs e)
{
Process.Start(e.LinkText);
if (e.Button == MouseButtons.Left)
{
GetDebugInfo();
}
if (e.Button == MouseButtons.Right)
{
if (randomColorTimer.Enabled)
{
randomColorTimer.Stop();
}
else
{
randomColorTimer.Start();
}
}
}
/*Perform open links*/
/*Main*/
}
}

View file

@ -117,270 +117,36 @@
<resheader name="writer">
<value>System.Resources.ResXResourceWriter, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089</value>
</resheader>
<assembly alias="System.Drawing" name="System.Drawing, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a" />
<data name="appLogoPictureBox.Image" type="System.Drawing.Bitmap, System.Drawing" mimetype="application/x-microsoft.net.object.bytearray.base64">
<value>
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
</value>
</data>
<data name="thirdPartyDevRichTextBox.Text" xml:space="preserve">
<value>Custom TextBox with Watermark: https://www.codeproject.com/Articles/319910/Custom-TextBox-with-watermark
CustomSettingsProvider: http://www.codeproject.com/Articles/20917/Settings-Provider
Farm-Fresh Web Icons: https://www.fatcow.com/free-icons
MsgBoxCenterParent: http://stackoverflow.com/a/2576220/4430027
<metadata name="randomColorTimer.TrayLocation" type="System.Drawing.Point, System.Drawing, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a">
<value>21, 17</value>
</metadata>
<data name="appInfoRichTextBox.Text" xml:space="preserve">
<value>This is an open-source app created by Sigmanor and licensed under MIT.
The source code, issues and documentation posted on GitHub.
Github: https://github.com/Crypto-Notepad/Crypto-Notepad
Website: https://crypto-notepad.info/
Contributors/testers:
smaragdus https://github.com/smaragdus
h5p9sl https://github.com/h5p9sl
External libraries:
CustomSettingsProvider: http://www.codeproject.com/Articles/20917/1
TextBox Placeholder: https://www.codeproject.com/Articles/319910/0
PasswordGenerator: https://github.com/prjseal/PasswordGenerator/
Fugue Icons: https://p.yusukekamiyamane.com/
OS Version Info: https://www.codeproject.com/Articles/73000/2
Farm-Fresh Web Icons: https://www.fatcow.com/free-icons
DotNetZip: https://www.nuget.org/packages/DotNetZip/
Fody: https://github.com/Fody/Fody
AES: http://www.codeproject.com/Answers/391219/AES#answer2</value>
Fugue Icons: https://p.yusukekamiyamane.com/
Fody: https://github.com/Fody/Fody</value>
</data>
<metadata name="$this.TrayHeight" type="System.Int32, mscorlib, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089">
<value>44</value>
<value>94</value>
</metadata>
<assembly alias="System.Drawing" name="System.Drawing, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a" />
<data name="$this.Icon" type="System.Drawing.Icon, System.Drawing" mimetype="application/x-microsoft.net.object.bytearray.base64">
<value>
AAABAAYAAAAAAAEAIAAwBwAAZgAAAICAAAABACAAKAgBAJYHAABAQAAAAQAgAChCAAC+DwEAMDAAAAEA

View file

@ -115,6 +115,9 @@
<DependentUpon>ChangeKeyForm.cs</DependentUpon>
</Compile>
<Compile Include="EncryptedString.cs" />
<Compile Include="HideCaretRichTextBox.cs">
<SubType>Component</SubType>
</Compile>
<Compile Include="MainForm.cs">
<SubType>Form</SubType>
</Compile>
@ -131,6 +134,7 @@
<Compile Include="ExRichTextBox.cs">
<SubType>Component</SubType>
</Compile>
<Compile Include="OSVersionInfoClass.cs" />
<Compile Include="PasswordGeneratorFrom.cs">
<SubType>Form</SubType>
</Compile>

View file

@ -8,9 +8,14 @@ namespace Crypto_Notepad
public class ExRichTextBox : RichTextBox
{
[DllImport("user32.dll", CharSet = CharSet.Auto, SetLastError = false)]
static extern IntPtr SendMessage(IntPtr hWnd, uint Msg, IntPtr wParam, IntPtr lParam);
private static extern IntPtr SendMessage(IntPtr hWnd, uint Msg, IntPtr wParam, IntPtr lParam);
[DllImport("kernel32.dll", EntryPoint = "LoadLibraryW", CharSet = CharSet.Unicode, SetLastError = true)]
private static extern IntPtr LoadLibraryW(string s_File);
private const int WM_VSCROLL = 0x115;
private const int WM_MOUSEWHEEL = 0x20A;
protected override void WndProc(ref Message m)
{
if (m.Msg == WM_MOUSEWHEEL)
@ -32,12 +37,9 @@ protected override void WndProc(ref Message m)
}
return;
}
base.WndProc(ref m);
}
[DllImport("kernel32.dll", EntryPoint = "LoadLibraryW",
CharSet = CharSet.Unicode, SetLastError = true)]
private static extern IntPtr LoadLibraryW(string s_File);
protected override CreateParams CreateParams
{
get

View file

@ -0,0 +1,18 @@
using System;
using System.Runtime.InteropServices;
using System.Windows.Forms;
namespace Crypto_Notepad
{
public class HideCaretRichTextBox : ExRichTextBox
{
[DllImport("user32.dll", EntryPoint = "HideCaret")]
private static extern long HideCaret(IntPtr hwnd);
protected override void WndProc(ref Message m)
{
HideCaret(this.Handle);
base.WndProc(ref m);
}
}
}

File diff suppressed because it is too large Load diff