|
/*
EnvMan - The Open-Source Windows Environment Variables Manager
Copyright (C) 2006-2007 Vlad Setchin <v_setchin@yahoo.com.au>
This program is free software; you can redistribute it and/or modify
it under the terms of the GNU General Public License as published by
the Free Software Foundation; either version 2 of the License, or
(at your option) any later version.
This program is distributed in the hope that it will be useful,
but WITHOUT ANY WARRANTY; without even the implied warranty of
MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
GNU General Public License for more details.
You should have received a copy of the GNU General Public License
along with this program; if not, write to the Free Software
Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA
*/
using System;
using System.Collections.Generic;
using System.ComponentModel;
using System.Drawing;
using System.Windows.Forms;
using System.Reflection;
namespace EnvManager
{
public partial class FrmAbout : Form
{
public FrmAbout ( )
{
InitializeComponent();
// Initialize the AboutBox to display the product information from the assembly information.
// Change assembly information settings for your application through either:
// - Project->Properties->Application->Assembly Information
// - AssemblyInfo.cs
this.Text = String.Format( "About {0}", AssemblyTitle );
this.lblProductName.Text = AssemblyProduct;
this.lblVersion.Text = String.Format( "Version {0}", AssemblyVersion );
this.lblCopyright.Text = AssemblyCopyright;
this.txtDescription.Text = AssemblyDescription;
}
#region Assembly Attribute Accessors
public string AssemblyTitle
{
get
{
// Get all Title attributes on this assembly
object[ ] attributes = Assembly.GetExecutingAssembly().GetCustomAttributes( typeof( AssemblyTitleAttribute ), false );
// If there is at least one Title attribute
if ( attributes.Length > 0 )
{
// Select the first one
AssemblyTitleAttribute titleAttribute = ( AssemblyTitleAttribute ) attributes[ 0 ];
// If it is not an empty string, return it
if ( titleAttribute.Title != "" )
return titleAttribute.Title;
}
// If there was no Title attribute, or if the Title attribute was the empty string, return the .exe name
return System.IO.Path.GetFileNameWithoutExtension( Assembly.GetExecutingAssembly().CodeBase );
}
}
public string AssemblyVersion
{
get
{
return Assembly.GetExecutingAssembly().GetName().Version.ToString();
}
}
public string AssemblyDescription
{
get
{
// Get all Description attributes on this assembly
object[ ] attributes = Assembly.GetExecutingAssembly().GetCustomAttributes( typeof( AssemblyDescriptionAttribute ), false );
// If there aren't any Description attributes, return an empty string
if ( attributes.Length == 0 )
return "";
// If there is a Description attribute, return its value
return ( ( AssemblyDescriptionAttribute ) attributes[ 0 ] ).Description;
}
}
public string AssemblyProduct
{
get
{
// Get all Product attributes on this assembly
object[ ] attributes = Assembly.GetExecutingAssembly().GetCustomAttributes( typeof( AssemblyProductAttribute ), false );
// If there aren't any Product attributes, return an empty string
if ( attributes.Length == 0 )
return "";
// If there is a Product attribute, return its value
return ( ( AssemblyProductAttribute ) attributes[ 0 ] ).Product;
}
}
public string AssemblyCopyright
{
get
{
// Get all Copyright attributes on this assembly
object[ ] attributes = Assembly.GetExecutingAssembly().GetCustomAttributes( typeof( AssemblyCopyrightAttribute ), false );
// If there aren't any Copyright attributes, return an empty string
if ( attributes.Length == 0 )
return "";
// If there is a Copyright attribute, return its value
return ( ( AssemblyCopyrightAttribute ) attributes[ 0 ] ).Copyright;
}
}
public string AssemblyCompany
{
get
{
// Get all Company attributes on this assembly
object[ ] attributes = Assembly.GetExecutingAssembly().GetCustomAttributes( typeof( AssemblyCompanyAttribute ), false );
// If there aren't any Company attributes, return an empty string
if ( attributes.Length == 0 )
return "";
// If there is a Company attribute, return its value
return ( ( AssemblyCompanyAttribute ) attributes[ 0 ] ).Company;
}
}
#endregion
private void LblLinkClicked(object sender, LinkLabelLinkClickedEventArgs e)
{
if(sender.Equals(lblProjectHomePage))
{
System.Diagnostics.Process.Start( @"http://env-man.blogspot.com/" );
lblProjectHomePage.LinkVisited = true;
}
else if(sender.Equals(lblSourceForge))
{
System.Diagnostics.Process.Start( @"http://sourceforge.net/projects/env-man" );
lblSourceForge.LinkVisited = true;
}
}
}
}
|
By viewing downloads associated with this article you agree to the Terms of Service and the article's licence.
If a file you wish to view isn't highlighted, and is a text file (not binary), please
let us know and we'll add colourisation support for it.