revised about window to show markdown file as html in gecko web browser

This commit is contained in:
Faryan Rezagholi
2019-04-25 03:38:41 +02:00
parent 527d0b85ad
commit ee0fabca8e
4 changed files with 302 additions and 276 deletions

View File

@@ -1,37 +1,37 @@
# Contributors
## Current mRemoteNG dev team
David Sparer (github.com/sparerd)
Sean Kaim (github.com/kmscode)
Faryan Rezagholi (github.com/farosch)
[David Sparer](https://www.github.com/sparerd)
[Sean Kaim](https://www.github.com/kmscode)
[Faryan Rezagholi](https://www.github.com/farosch)
Thanks for the awesome new website!
Bennett Blodinger (github.com/benwa)
**Thanks for the awesome new website!**
[Bennett Blodinger](https://www.github.com/benwa)
Joe Cefoli (github.com/jcefoli)
countchappy (github.com/countchappy)
[Joe Cefoli](https://www.github.com/jcefoli)
[countchappy](https://www.github.com/countchappy)
Tony Lambert
Julien Roncaglia (github.com/vbfox)
github.com/peterchenadded
Brandon Wulf (github.com/mrwulf)
Pedro Rodrigues (github.com/pedro2555)
github.com/dekelMP
Bruce (github.com/brucetp)
Camilo Alvarez (github.com/jotatsu)
github.com/DamianBis
github.com/pfjason
github.com/sirLoaf
github.com/Fyers
Vladimir Semenov (github.com/sli-pro)
Stephan (github.com/st-schuler)
Aleksey Reytsman (github.com/areytsman)
Cristian Abelleira (github.com/CrAbelleira)
github.com/MitchellBot
[Julien Roncaglia](https://www.github.com/vbfox)
[peterchenadded](https://www.github.com/peterchenadded)
[Brandon Wulf](https://www.github.com/mrwulf)
[Pedro Rodrigues](https://www.github.com/pedro2555)
[dekelMP](https://www.github.com/dekelMP)
[Bruce](https://www.github.com/brucetp)
[Camilo Alvarez](https://www.github.com/jotatsu)
[DamianBis](https://www.github.com/DamianBis)
[pfjason](https://www.github.com/pfjason)
[sirLoaf](https://www.github.com/sirLoaf)
[Fyers](https://www.github.com/Fyers)
[Vladimir Semenov](https://www.github.com/sli-pro)
[Stephan](https://www.github.com/st-schuler)
[Aleksey Reytsman](https://www.github.com/areytsman)
[Cristian Abelleira](https://www.github.com/CrAbelleira)
[MitchellBot ](https://www.github.com/MitchellBot)
## Past Contributors
Felix Deimel - mRemote original developer
Riley McArdle - mRemoteNG original developer
Hayato Iriumi (github.com/hiriumi)
[Hayato Iriumi](https://www.github.com/hiriumi)
Jason Barbier
Wiktor Beryt
Lionel Caignec
@@ -40,98 +40,86 @@ Holger Henke
Tom Hiller
Apisitt Rattana
Andreas Rehm
David Vidmar
github.com/Brandhor
Dimitrij (github.com/Kvarkas)
[David Vidmar](https://www.github.com/Brandhor)
[Dimitrij](https://www.github.com/Kvarkas)
## Translators
Eugenio "Ryo567" Martínez
Eugenio *"Ryo567"* Martínez
Mathieu Pape
Emanuel Silva
Robert Siwiec
Hayato Iriumi
Sebastien Thieury (github.com/SebThieu)
[Sebastien Thieury](https://www.github.com/SebThieu)
Riza Emet
Lukas Plachy (github.com/rheingold)
[Lukas Plachy](https://www.github.com/rheingold)
Gyuha Shin
Stefan (github.com/polluks)
github.com/emazv72
Vladimir Semenov (github.com/sli-pro)
Marco Sousa (github.com/marcomsousa)
github.com/wwj402
github.com/Fyers
github.com/pablomh
[Stefan](https://www.github.com/polluks)
[emazv72](https://www.github.com/emazv72)
[Vladimir Semenov](https://www.github.com/sli-pro)
[Marco Sousa](https://www.github.com/marcomsousa)
[wwj402](https://www.github.com/wwj402)
[Fyers](https://www.github.com/Fyers)
[pablomh](https://www.github.com/pablomh)
## Included Source Code
Command Line Arguments Parser
[**Command Line Arguments Parser**](http://www.codeproject.com/KB/recipes/command_line.aspx)
Copyright © 2002 Richard Lopes
MIT License
http://www.codeproject.com/KB/recipes/command_line.aspx
FilteredPropertyGrid
[**FilteredPropertyGrid**](http://www.codeproject.com/KB/cs/FilteredPropertyGrid.aspx)
Copyright © 2006 Azuria
http://www.codeproject.com/KB/cs/FilteredPropertyGrid.aspx
InputBox
[**InputBox**](http://www.csharp-examples.net/inputbox/)
Copyright © 2016 Jan Slama
http://www.csharp-examples.net/inputbox/
IP TextBox
[**IP TextBox**](http://www.codeproject.com/Articles/11576/IP-TextBox)
Copyright © 2005 mawnkay
http://www.codeproject.com/Articles/11576/IP-TextBox
PortableSettingsProvider
[**PortableSettingsProvider**](https://https://www.github.com/crdx/PortableSettingsProvider)
Copyright © 2014 crdx
https://github.com/crdx/PortableSettingsProvider
## Included Components
ADTree
[**ADTree**](http://www.codeproject.com/KB/selection/ADPickerCtrl.aspx)
Copyright © 2004 Marc Merritt
Copyright © 2008 Felix Deimel
http://www.codeproject.com/KB/selection/ADPickerCtrl.aspx
DockPanel Suite
[**DockPanel Suite**](https://https://www.github.com/dockpanelsuite/dockpanelsuite)
Copyright © 2018 @roken and @lextm (formerly Weifen Luo)
MIT License
https://github.com/dockpanelsuite/dockpanelsuite
GeckoFX
[**GeckoFX**](https://bitbucket.org/geckofx/)
Copyright © 2016 Tom Hindle
Mozilla Public License
https://bitbucket.org/geckofx/
log4net
[**log4net**](http://logging.apache.org/log4net/)
Copyright © 2001-2015 The Apache Software Foundation
Apache License Version 2.0
http://logging.apache.org/log4net/
Magic Library
[**Magic Library**](http://www.dotnetmagic.com/magic_download.html)
Copyright © 2002-2003 Crownwood Consulting, Ltd.
Freely redistributable with attribution
http://www.dotnetmagic.com/magic_download.html
PuTTY
[**PuTTY**](http://www.chiark.greenend.org.uk/~sgtatham/putty/)
Copyright © 1997-2017 Simon Tatham
MIT License
http://www.chiark.greenend.org.uk/~sgtatham/putty/
Silk Icon Set
[**Silk Icon Set**](http://www.famfamfam.com/)
Copyright © 2005-2008 FAMFAMFAM
Creative Commons Attribution 2.5 License
http://www.famfamfam.com/
SSH.NET
[**SSH.NET**](https://https://www.github.com/sshnet/SSH.NET)
Copyright © 2016
MIT License
https://github.com/sshnet/SSH.NET
VncSharp
[**VncSharp**](https://https://www.github.com/humphd/VncSharp)
Copyright © 2004-2009 David Humphrey
GNU General Public License (GPL) Version 2
https://github.com/humphd/VncSharp
ObjectListView
[**ObjectListView**](https://sourceforge.net/projects/objectlistview/)
Copyright © 2006-2016 Phillip Piper
GNU General Public License (GPL) Version 3
https://sourceforge.net/projects/objectlistview/
[**Markdig**](https://https://www.github.com/lunet-io/markdig)
Copyright © 2016-2019 Alexandre Mutel
BSD 2-Clause "Simplified"

View File

@@ -0,0 +1,202 @@
namespace mRemoteNG.UI.Window
{
public partial class AboutWindow : BaseWindow
{
#region Windows Form Designer generated code
private void InitializeComponent()
{
System.ComponentModel.ComponentResourceManager resources = new System.ComponentModel.ComponentResourceManager(typeof(AboutWindow));
this.pnlTop = new System.Windows.Forms.Panel();
this.pbLogo = new System.Windows.Forms.PictureBox();
this.pnlBottom = new System.Windows.Forms.Panel();
this.lblTitle = new mRemoteNG.UI.Controls.Base.NGLabel();
this.lblVersion = new mRemoteNG.UI.Controls.Base.NGLabel();
this.lblLicense = new mRemoteNG.UI.Controls.Base.NGLabel();
this.lblCopyright = new mRemoteNG.UI.Controls.Base.NGLabel();
this.tlpBottom = new System.Windows.Forms.TableLayoutPanel();
this.gwbCredits = new Gecko.GeckoWebBrowser();
this.gwbChangeLog = new Gecko.GeckoWebBrowser();
this.tlpTop = new System.Windows.Forms.TableLayoutPanel();
this.pnlTop.SuspendLayout();
((System.ComponentModel.ISupportInitialize)(this.pbLogo)).BeginInit();
this.pnlBottom.SuspendLayout();
this.tlpBottom.SuspendLayout();
this.tlpTop.SuspendLayout();
this.SuspendLayout();
//
// pnlTop
//
this.pnlTop.BackColor = System.Drawing.Color.FromArgb(((int)(((byte)(52)))), ((int)(((byte)(58)))), ((int)(((byte)(64)))));
this.pnlTop.Controls.Add(this.pbLogo);
this.pnlTop.Dock = System.Windows.Forms.DockStyle.Fill;
this.pnlTop.ForeColor = System.Drawing.Color.White;
this.pnlTop.Location = new System.Drawing.Point(3, 3);
this.pnlTop.Name = "pnlTop";
this.pnlTop.Size = new System.Drawing.Size(1111, 116);
this.pnlTop.TabIndex = 0;
//
// pbLogo
//
this.pbLogo.Image = global::mRemoteNG.Resources.Header_dark;
this.pbLogo.Location = new System.Drawing.Point(0, 0);
this.pbLogo.Name = "pbLogo";
this.pbLogo.Size = new System.Drawing.Size(450, 120);
this.pbLogo.SizeMode = System.Windows.Forms.PictureBoxSizeMode.AutoSize;
this.pbLogo.TabIndex = 1;
this.pbLogo.TabStop = false;
//
// pnlBottom
//
this.pnlBottom.BackColor = System.Drawing.SystemColors.Control;
this.pnlBottom.Controls.Add(this.lblTitle);
this.pnlBottom.Controls.Add(this.lblVersion);
this.pnlBottom.Controls.Add(this.lblLicense);
this.pnlBottom.Controls.Add(this.lblCopyright);
this.pnlBottom.Dock = System.Windows.Forms.DockStyle.Fill;
this.pnlBottom.ForeColor = System.Drawing.SystemColors.ControlText;
this.pnlBottom.Location = new System.Drawing.Point(3, 125);
this.pnlBottom.Name = "pnlBottom";
this.pnlBottom.Size = new System.Drawing.Size(1111, 194);
this.pnlBottom.TabIndex = 1;
//
// lblTitle
//
this.lblTitle.AutoSize = true;
this.lblTitle.Font = new System.Drawing.Font("Segoe UI", 14.25F, System.Drawing.FontStyle.Bold, System.Drawing.GraphicsUnit.Point, ((byte)(0)));
this.lblTitle.ForeColor = System.Drawing.SystemColors.ControlText;
this.lblTitle.Location = new System.Drawing.Point(3, 3);
this.lblTitle.Name = "lblTitle";
this.lblTitle.Size = new System.Drawing.Size(126, 31);
this.lblTitle.TabIndex = 0;
this.lblTitle.Text = "mRemoteNG";
this.lblTitle.UseCompatibleTextRendering = true;
//
// lblVersion
//
this.lblVersion.AutoSize = true;
this.lblVersion.Font = new System.Drawing.Font("Segoe UI", 11F);
this.lblVersion.ForeColor = System.Drawing.SystemColors.ControlText;
this.lblVersion.Location = new System.Drawing.Point(3, 34);
this.lblVersion.Name = "lblVersion";
this.lblVersion.Size = new System.Drawing.Size(55, 25);
this.lblVersion.TabIndex = 1;
this.lblVersion.Text = "Version";
this.lblVersion.UseCompatibleTextRendering = true;
//
// lblLicense
//
this.lblLicense.AutoSize = true;
this.lblLicense.Font = new System.Drawing.Font("Segoe UI", 11F);
this.lblLicense.ForeColor = System.Drawing.SystemColors.ControlText;
this.lblLicense.Location = new System.Drawing.Point(3, 84);
this.lblLicense.Name = "lblLicense";
this.lblLicense.Size = new System.Drawing.Size(54, 25);
this.lblLicense.TabIndex = 5;
this.lblLicense.Text = "License";
this.lblLicense.UseCompatibleTextRendering = true;
//
// lblCopyright
//
this.lblCopyright.AutoSize = true;
this.lblCopyright.Font = new System.Drawing.Font("Segoe UI", 11F);
this.lblCopyright.ForeColor = System.Drawing.SystemColors.ControlText;
this.lblCopyright.Location = new System.Drawing.Point(3, 59);
this.lblCopyright.Name = "lblCopyright";
this.lblCopyright.Size = new System.Drawing.Size(71, 25);
this.lblCopyright.TabIndex = 2;
this.lblCopyright.Text = "Copyright";
this.lblCopyright.UseCompatibleTextRendering = true;
//
// tlpBottom
//
this.tlpBottom.ColumnCount = 2;
this.tlpBottom.ColumnStyles.Add(new System.Windows.Forms.ColumnStyle(System.Windows.Forms.SizeType.Percent, 50F));
this.tlpBottom.ColumnStyles.Add(new System.Windows.Forms.ColumnStyle(System.Windows.Forms.SizeType.Percent, 50F));
this.tlpBottom.Controls.Add(this.gwbCredits, 0, 0);
this.tlpBottom.Controls.Add(this.gwbChangeLog, 1, 0);
this.tlpBottom.Dock = System.Windows.Forms.DockStyle.Fill;
this.tlpBottom.Location = new System.Drawing.Point(0, 235);
this.tlpBottom.Name = "tlpBottom";
this.tlpBottom.RowCount = 1;
this.tlpBottom.RowStyles.Add(new System.Windows.Forms.RowStyle(System.Windows.Forms.SizeType.Percent, 50F));
this.tlpBottom.Size = new System.Drawing.Size(1117, 470);
this.tlpBottom.TabIndex = 13;
//
// gwbCredits
//
this.gwbCredits.Dock = System.Windows.Forms.DockStyle.Fill;
this.gwbCredits.FrameEventsPropagateToMainWindow = false;
this.gwbCredits.Location = new System.Drawing.Point(3, 3);
this.gwbCredits.Name = "gwbCredits";
this.gwbCredits.NoDefaultContextMenu = true;
this.gwbCredits.Size = new System.Drawing.Size(552, 464);
this.gwbCredits.TabIndex = 12;
this.gwbCredits.UseHttpActivityObserver = false;
//
// gwbChangeLog
//
this.gwbChangeLog.Dock = System.Windows.Forms.DockStyle.Fill;
this.gwbChangeLog.FrameEventsPropagateToMainWindow = false;
this.gwbChangeLog.Location = new System.Drawing.Point(561, 3);
this.gwbChangeLog.Name = "gwbChangeLog";
this.gwbChangeLog.NoDefaultContextMenu = true;
this.gwbChangeLog.Size = new System.Drawing.Size(553, 464);
this.gwbChangeLog.TabIndex = 13;
this.gwbChangeLog.UseHttpActivityObserver = false;
//
// tlpTop
//
this.tlpTop.ColumnCount = 1;
this.tlpTop.ColumnStyles.Add(new System.Windows.Forms.ColumnStyle(System.Windows.Forms.SizeType.Percent, 100F));
this.tlpTop.Controls.Add(this.pnlTop, 0, 0);
this.tlpTop.Controls.Add(this.pnlBottom, 0, 1);
this.tlpTop.Dock = System.Windows.Forms.DockStyle.Top;
this.tlpTop.Location = new System.Drawing.Point(0, 0);
this.tlpTop.Name = "tlpTop";
this.tlpTop.RowCount = 2;
this.tlpTop.RowStyles.Add(new System.Windows.Forms.RowStyle(System.Windows.Forms.SizeType.Absolute, 122F));
this.tlpTop.RowStyles.Add(new System.Windows.Forms.RowStyle(System.Windows.Forms.SizeType.Absolute, 200F));
this.tlpTop.Size = new System.Drawing.Size(1117, 235);
this.tlpTop.TabIndex = 14;
//
// AboutWindow
//
this.AutoScaleDimensions = new System.Drawing.SizeF(96F, 96F);
this.AutoScaleMode = System.Windows.Forms.AutoScaleMode.Dpi;
this.BackColor = System.Drawing.SystemColors.Control;
this.ClientSize = new System.Drawing.Size(1117, 705);
this.Controls.Add(this.tlpBottom);
this.Controls.Add(this.tlpTop);
this.Font = new System.Drawing.Font("Segoe UI", 8.25F, System.Drawing.FontStyle.Regular, System.Drawing.GraphicsUnit.Point, ((byte)(0)));
this.ForeColor = System.Drawing.SystemColors.ControlText;
this.Icon = ((System.Drawing.Icon)(resources.GetObject("$this.Icon")));
this.MaximumSize = new System.Drawing.Size(20000, 10000);
this.Name = "AboutWindow";
this.TabText = "About";
this.Text = "About";
this.Load += new System.EventHandler(this.About_Load);
this.pnlTop.ResumeLayout(false);
this.pnlTop.PerformLayout();
((System.ComponentModel.ISupportInitialize)(this.pbLogo)).EndInit();
this.pnlBottom.ResumeLayout(false);
this.pnlBottom.PerformLayout();
this.tlpBottom.ResumeLayout(false);
this.tlpTop.ResumeLayout(false);
this.ResumeLayout(false);
}
#endregion
internal Controls.Base.NGLabel lblCopyright;
internal Controls.Base.NGLabel lblTitle;
internal Controls.Base.NGLabel lblVersion;
internal Controls.Base.NGLabel lblLicense;
internal System.Windows.Forms.Panel pnlBottom;
internal System.Windows.Forms.PictureBox pbLogo;
private System.Windows.Forms.TableLayoutPanel tlpBottom;
private System.Windows.Forms.TableLayoutPanel tlpTop;
internal System.Windows.Forms.Panel pnlTop;
private Gecko.GeckoWebBrowser gwbCredits;
private Gecko.GeckoWebBrowser gwbChangeLog;
}
}

View File

@@ -1,4 +1,4 @@
using System;
using System;
using System.Windows.Forms;
using WeifenLuo.WinFormsUI.Docking;
using System.IO;
@@ -6,206 +6,23 @@ using System.Text;
using mRemoteNG.App;
using mRemoteNG.App.Info;
using mRemoteNG.Themes;
using Markdig;
using System.Diagnostics;
using System.Drawing;
using Gecko;
namespace mRemoteNG.UI.Window
{
public class AboutWindow : BaseWindow
public partial class AboutWindow : BaseWindow
{
#region Form Init
internal Controls.Base.NGLabel lblCopyright;
internal Controls.Base.NGLabel lblTitle;
internal Controls.Base.NGLabel lblVersion;
internal Controls.Base.NGLabel lblLicense;
internal Controls.Base.NGTextBox txtChangeLog;
internal Panel pnlBottom;
internal PictureBox pbLogo;
internal Controls.Base.NGTextBox txtCredits;
internal Panel pnlTop;
private void InitializeComponent()
{
System.ComponentModel.ComponentResourceManager resources =
new System.ComponentModel.ComponentResourceManager(typeof(AboutWindow));
this.pnlTop = new System.Windows.Forms.Panel();
this.pbLogo = new System.Windows.Forms.PictureBox();
this.pnlBottom = new System.Windows.Forms.Panel();
this.txtCredits = new mRemoteNG.UI.Controls.Base.NGTextBox();
this.txtChangeLog = new mRemoteNG.UI.Controls.Base.NGTextBox();
this.lblTitle = new mRemoteNG.UI.Controls.Base.NGLabel();
this.lblVersion = new mRemoteNG.UI.Controls.Base.NGLabel();
this.lblLicense = new mRemoteNG.UI.Controls.Base.NGLabel();
this.lblCopyright = new mRemoteNG.UI.Controls.Base.NGLabel();
this.pnlTop.SuspendLayout();
((System.ComponentModel.ISupportInitialize)(this.pbLogo)).BeginInit();
this.pnlBottom.SuspendLayout();
this.SuspendLayout();
//
// pnlTop
//
this.pnlTop.BackColor =
System.Drawing.Color.FromArgb(((int)(((byte)(52)))), ((int)(((byte)(58)))), ((int)(((byte)(64)))));
this.pnlTop.Controls.Add(this.pbLogo);
this.pnlTop.Dock = System.Windows.Forms.DockStyle.Top;
this.pnlTop.ForeColor = System.Drawing.Color.White;
this.pnlTop.Location = new System.Drawing.Point(0, 0);
this.pnlTop.Name = "pnlTop";
this.pnlTop.Size = new System.Drawing.Size(1117, 122);
this.pnlTop.TabIndex = 0;
//
// pbLogo
//
this.pbLogo.Image = global::mRemoteNG.Resources.Header_dark;
this.pbLogo.Location = new System.Drawing.Point(0, 0);
this.pbLogo.Name = "pbLogo";
this.pbLogo.Size = new System.Drawing.Size(450, 120);
this.pbLogo.SizeMode = System.Windows.Forms.PictureBoxSizeMode.AutoSize;
this.pbLogo.TabIndex = 1;
this.pbLogo.TabStop = false;
//
// pnlBottom
//
this.pnlBottom.BackColor = System.Drawing.SystemColors.Control;
this.pnlBottom.Controls.Add(this.txtCredits);
this.pnlBottom.Controls.Add(this.txtChangeLog);
this.pnlBottom.Controls.Add(this.lblTitle);
this.pnlBottom.Controls.Add(this.lblVersion);
this.pnlBottom.Controls.Add(this.lblLicense);
this.pnlBottom.Controls.Add(this.lblCopyright);
this.pnlBottom.Dock = System.Windows.Forms.DockStyle.Fill;
this.pnlBottom.ForeColor = System.Drawing.SystemColors.ControlText;
this.pnlBottom.Location = new System.Drawing.Point(0, 122);
this.pnlBottom.Name = "pnlBottom";
this.pnlBottom.Size = new System.Drawing.Size(1117, 583);
this.pnlBottom.TabIndex = 1;
//
// txtCredits
//
this.txtCredits.Anchor =
((System.Windows.Forms.AnchorStyles)(((System.Windows.Forms.AnchorStyles.Top |
System.Windows.Forms.AnchorStyles.Bottom)
| System.Windows.Forms.AnchorStyles.Left)));
this.txtCredits.BackColor = System.Drawing.SystemColors.Control;
this.txtCredits.BorderStyle = System.Windows.Forms.BorderStyle.None;
this.txtCredits.Cursor = System.Windows.Forms.Cursors.Default;
this.txtCredits.Font = new System.Drawing.Font("Consolas", 8.25F, System.Drawing.FontStyle.Regular,
System.Drawing.GraphicsUnit.Point, ((byte)(0)));
this.txtCredits.ForeColor = System.Drawing.SystemColors.ControlText;
this.txtCredits.Location = new System.Drawing.Point(8, 131);
this.txtCredits.MinimumSize = new System.Drawing.Size(370, 260);
this.txtCredits.Multiline = true;
this.txtCredits.Name = "txtCredits";
this.txtCredits.ReadOnly = true;
this.txtCredits.ScrollBars = System.Windows.Forms.ScrollBars.Vertical;
this.txtCredits.Size = new System.Drawing.Size(400, 449);
this.txtCredits.TabIndex = 7;
this.txtCredits.TabStop = false;
//
// txtChangeLog
//
this.txtChangeLog.Anchor =
((System.Windows.Forms.AnchorStyles)((((System.Windows.Forms.AnchorStyles.Top |
System.Windows.Forms.AnchorStyles.Bottom)
| System.Windows.Forms.AnchorStyles.Left)
| System.Windows.Forms.AnchorStyles.Right)));
this.txtChangeLog.BackColor = System.Drawing.SystemColors.Control;
this.txtChangeLog.BorderStyle = System.Windows.Forms.BorderStyle.None;
this.txtChangeLog.Cursor = System.Windows.Forms.Cursors.Default;
this.txtChangeLog.Font = new System.Drawing.Font("Consolas", 8.25F, System.Drawing.FontStyle.Regular,
System.Drawing.GraphicsUnit.Point, ((byte)(0)));
this.txtChangeLog.ForeColor = System.Drawing.SystemColors.ControlText;
this.txtChangeLog.Location = new System.Drawing.Point(414, 131);
this.txtChangeLog.MinimumSize = new System.Drawing.Size(370, 260);
this.txtChangeLog.Multiline = true;
this.txtChangeLog.Name = "txtChangeLog";
this.txtChangeLog.ReadOnly = true;
this.txtChangeLog.ScrollBars = System.Windows.Forms.ScrollBars.Vertical;
this.txtChangeLog.Size = new System.Drawing.Size(696, 449);
this.txtChangeLog.TabIndex = 10;
this.txtChangeLog.TabStop = false;
//
// lblTitle
//
this.lblTitle.AutoSize = true;
this.lblTitle.Font = new System.Drawing.Font("Segoe UI", 14.25F, System.Drawing.FontStyle.Bold,
System.Drawing.GraphicsUnit.Point, ((byte)(0)));
this.lblTitle.ForeColor = System.Drawing.SystemColors.ControlText;
this.lblTitle.Location = new System.Drawing.Point(3, 3);
this.lblTitle.Name = "lblTitle";
this.lblTitle.Size = new System.Drawing.Size(126, 31);
this.lblTitle.TabIndex = 0;
this.lblTitle.Text = "mRemoteNG";
this.lblTitle.UseCompatibleTextRendering = true;
//
// lblVersion
//
this.lblVersion.AutoSize = true;
this.lblVersion.Font = new System.Drawing.Font("Segoe UI", 11F);
this.lblVersion.ForeColor = System.Drawing.SystemColors.ControlText;
this.lblVersion.Location = new System.Drawing.Point(3, 34);
this.lblVersion.Name = "lblVersion";
this.lblVersion.Size = new System.Drawing.Size(55, 25);
this.lblVersion.TabIndex = 1;
this.lblVersion.Text = "Version";
this.lblVersion.UseCompatibleTextRendering = true;
//
// lblLicense
//
this.lblLicense.AutoSize = true;
this.lblLicense.Font = new System.Drawing.Font("Segoe UI", 11F);
this.lblLicense.ForeColor = System.Drawing.SystemColors.ControlText;
this.lblLicense.Location = new System.Drawing.Point(3, 84);
this.lblLicense.Name = "lblLicense";
this.lblLicense.Size = new System.Drawing.Size(54, 25);
this.lblLicense.TabIndex = 5;
this.lblLicense.Text = "License";
this.lblLicense.UseCompatibleTextRendering = true;
//
// lblCopyright
//
this.lblCopyright.AutoSize = true;
this.lblCopyright.Font = new System.Drawing.Font("Segoe UI", 11F);
this.lblCopyright.ForeColor = System.Drawing.SystemColors.ControlText;
this.lblCopyright.Location = new System.Drawing.Point(3, 59);
this.lblCopyright.Name = "lblCopyright";
this.lblCopyright.Size = new System.Drawing.Size(71, 25);
this.lblCopyright.TabIndex = 2;
this.lblCopyright.Text = "Copyright";
this.lblCopyright.UseCompatibleTextRendering = true;
//
// AboutWindow
//
this.AutoScaleDimensions = new System.Drawing.SizeF(96F, 96F);
this.AutoScaleMode = System.Windows.Forms.AutoScaleMode.Dpi;
this.BackColor = System.Drawing.SystemColors.Control;
this.ClientSize = new System.Drawing.Size(1117, 705);
this.Controls.Add(this.pnlBottom);
this.Controls.Add(this.pnlTop);
this.Font = new System.Drawing.Font("Segoe UI", 8.25F, System.Drawing.FontStyle.Regular,
System.Drawing.GraphicsUnit.Point, ((byte)(0)));
this.ForeColor = System.Drawing.SystemColors.ControlText;
this.Icon = ((System.Drawing.Icon)(resources.GetObject("$this.Icon")));
this.MaximumSize = new System.Drawing.Size(20000, 10000);
this.Name = "AboutWindow";
this.TabText = "About";
this.Text = "About";
this.Load += new System.EventHandler(this.About_Load);
this.pnlTop.ResumeLayout(false);
this.pnlTop.PerformLayout();
((System.ComponentModel.ISupportInitialize)(this.pbLogo)).EndInit();
this.pnlBottom.ResumeLayout(false);
this.pnlBottom.PerformLayout();
this.ResumeLayout(false);
}
#endregion
#region Public Methods
public AboutWindow()
{
WindowType = WindowType.About;
DockPnl = new DockContent();
if (!Xpcom.IsInitialized)
Xpcom.Initialize("Firefox");
InitializeComponent();
FontOverrider.FontOverride(this);
ThemeManager.getInstance().ThemeChanged += ApplyTheme;
@@ -233,6 +50,14 @@ namespace mRemoteNG.UI.Window
pnlBottom.ForeColor = ThemeManager.getInstance().ActiveTheme.ExtendedPalette.getColor("Dialog_Foreground");
pnlTop.ForeColor = ThemeManager.getInstance().ActiveTheme.ExtendedPalette.getColor("Dialog_Background");
pnlTop.ForeColor = ThemeManager.getInstance().ActiveTheme.ExtendedPalette.getColor("Dialog_Foreground");
//gwbCredits.Font = new Font("Segoe UI", 8.25F, FontStyle.Regular, GraphicsUnit.Point, 0);
//gwbCredits.BackColor = ThemeManager.getInstance().ActiveTheme.ExtendedPalette.getColor("Dialog_Background"); ;
//gwbCredits.ForeColor = ThemeManager.getInstance().ActiveTheme.ExtendedPalette.getColor("Dialog_Foreground"); ;
//gwbCHangelog.Font = new Font("Segoe UI", 8.25F, FontStyle.Regular, GraphicsUnit.Point, 0);
//gwbCHangelog.BackColor = ThemeManager.getInstance().ActiveTheme.ExtendedPalette.getColor("Dialog_Background"); ;
//gwbCHangelog.ForeColor = ThemeManager.getInstance().ActiveTheme.ExtendedPalette.getColor("Dialog_Foreground"); ;
}
private void ApplyEditions()
@@ -277,9 +102,10 @@ namespace mRemoteNG.UI.Window
try
{
lblCopyright.Text = GeneralAppInfo.Copyright;
lblVersion.Text = $@"Version {GeneralAppInfo.ApplicationVersion}";
var pipeline = new MarkdownPipelineBuilder().UseAdvancedExtensions().Build();
// AppVeyor seems to pull text files in UNIX format... This messes up the display on the about screen...
//
// This would be MUCH faster:
@@ -293,38 +119,42 @@ namespace mRemoteNG.UI.Window
if (File.Exists(GeneralAppInfo.HomePath + "\\CHANGELOG.md"))
{
var changelog = "";
using (var sR = new StreamReader(GeneralAppInfo.HomePath + "\\CHANGELOG.md", Encoding.UTF8, true))
{
string line;
var i = 0;
while ((line = sR.ReadLine()) != null && i < 128)
while ((line = sR.ReadLine()) != null)
{
txtChangeLog.Text += line + Environment.NewLine;
changelog += line + Environment.NewLine;
i++;
}
if (i == 128)
{
txtChangeLog.Text +=
$"{Environment.NewLine}****************************************{Environment.NewLine}See CHANGELOG.md for full History...{Environment.NewLine}****************************************{Environment.NewLine}";
if (i > 128 && line == string.Empty)
{
changelog += $"{Environment.NewLine}***See CHANGELOG.md for full History...***{Environment.NewLine}";
break;
}
}
}
var result = Markdown.ToHtml(changelog, pipeline);
var color = ColorTranslator.ToHtml(ThemeManager.getInstance().ActiveTheme.ExtendedPalette.getColor("Dialog_Background"));
result = "<body style=\"font-family:arial,helvetica,sans-serif;font-size:12px;\" bgcolor=\"" + color + "\">" + result + "</body>";
gwbChangeLog.LoadHtml(result);
}
if (File.Exists(GeneralAppInfo.HomePath + "\\CREDITS.md"))
{
using (var sR = new StreamReader(GeneralAppInfo.HomePath + "\\CREDITS.md", Encoding.UTF8, true))
{
string line;
while ((line = sR.ReadLine()) != null)
txtCredits.Text += line + Environment.NewLine;
}
var changelog = new StreamReader(GeneralAppInfo.HomePath + "\\CREDITS.md", Encoding.UTF8, true).ReadToEnd();
var result = Markdown.ToHtml(changelog, pipeline);
var color = ColorTranslator.ToHtml(ThemeManager.getInstance().ActiveTheme.ExtendedPalette.getColor("Dialog_Background"));
result = "<body style=\"font-family:arial,helvetica,sans-serif;font-size:12px;\" bgcolor=\"" + color + "\">" + result + "</body>";
gwbCredits.LoadHtml(result);
}
}
catch (Exception ex)
{
Runtime.MessageCollector.AddMessage(Messages.MessageClass.ErrorMsg,
"Loading About failed" + Environment.NewLine + ex.Message, true);
Runtime.MessageCollector.AddMessage(Messages.MessageClass.ErrorMsg, "Loading About failed" + Environment.NewLine + ex.Message, true);
}
}

View File

@@ -62,6 +62,9 @@
<Reference Include="log4net, Version=2.0.8.0, Culture=neutral, PublicKeyToken=669e0ddf0bb1aa2a, processorArchitecture=MSIL">
<HintPath>..\packages\log4net.2.0.8\lib\net45-full\log4net.dll</HintPath>
</Reference>
<Reference Include="Markdig, Version=0.16.0.0, Culture=neutral, processorArchitecture=MSIL">
<HintPath>..\packages\Markdig.0.16.0\lib\net40\Markdig.dll</HintPath>
</Reference>
<Reference Include="Microsoft.CSharp" />
<Reference Include="mscorlib" />
<Reference Include="MySql.Data, Version=8.0.13.0, Culture=neutral, PublicKeyToken=c5687fc88969c44d, processorArchitecture=MSIL">
@@ -744,6 +747,9 @@
<Compile Include="UI\Window\AboutWindow.cs">
<SubType>Form</SubType>
</Compile>
<Compile Include="UI\Window\AboutWindow.Designer.cs">
<DependentUpon>AboutWindow.cs</DependentUpon>
</Compile>
<Compile Include="UI\Window\ActiveDirectoryImportWindow.Designer.cs">
<DependentUpon>ActiveDirectoryImportWindow.cs</DependentUpon>
</Compile>