diff options
Diffstat (limited to 'script-editor/AboutBox.cs')
-rw-r--r-- | script-editor/AboutBox.cs | 75 |
1 files changed, 75 insertions, 0 deletions
diff --git a/script-editor/AboutBox.cs b/script-editor/AboutBox.cs new file mode 100644 index 0000000..dc107d0 --- /dev/null +++ b/script-editor/AboutBox.cs @@ -0,0 +1,75 @@ +using System; +using System.Reflection; +using System.Windows.Forms; + +namespace VPScriptEditor +{ + partial class AboutBox : Form + { + public AboutBox() + { + InitializeComponent(); + Text = String.Format("About {0}", AssemblyTitle); + labelProductName.Text = AssemblyProduct; + labelVersion.Text = String.Format("Version {0}", AssemblyVersion); + labelCopyright.Text = AssemblyCopyright; + } + + public static string AssemblyTitle + { + get + { + object[] attributes = Assembly.GetExecutingAssembly().GetCustomAttributes(typeof(AssemblyTitleAttribute), false); + if (attributes.Length > 0) + { + AssemblyTitleAttribute titleAttribute = (AssemblyTitleAttribute)attributes[0]; + if (titleAttribute.Title != "") + return titleAttribute.Title; + } + return System.IO.Path.GetFileNameWithoutExtension(Assembly.GetExecutingAssembly().CodeBase); + } + } + + public static string AssemblyVersion + { + get + { + return Assembly.GetExecutingAssembly().GetName().Version.ToString(); + } + } + + public static string AssemblyProduct + { + get + { + object[] attributes = Assembly.GetExecutingAssembly().GetCustomAttributes(typeof(AssemblyProductAttribute), false); + if (attributes.Length == 0) + return ""; + else + return ((AssemblyProductAttribute)attributes[0]).Product; + } + } + + public static string AssemblyCopyright + { + get + { + object[] attributes = Assembly.GetExecutingAssembly().GetCustomAttributes(typeof(AssemblyCopyrightAttribute), false); + if (attributes.Length == 0) + return ""; + else + return ((AssemblyCopyrightAttribute)attributes[0]).Copyright; + } + } + + private void okButton_Click(object sender, EventArgs e) + { + Close(); + } + + private void linkLblWebsite_LinkClicked(object sender, LinkLabelLinkClickedEventArgs e) + { + System.Diagnostics.Process.Start(linkLblWebsite.Text); + } + } +} |