From b3d0faf751d26369e37ee438e6143f7396217efb Mon Sep 17 00:00:00 2001 From: "vitaliiy@outlook.com" Date: Wed, 12 Mar 2014 20:32:19 -0700 Subject: [PATCH] rest of the files --- VsDingExtension/AssemblyInfo.cs | 51 +++++++++ VsDingExtension/Connect.cs | 65 ++++++++++++ VsDingExtension/VsDingExtension.AddIn | Bin 0 -> 42266 bytes VsDingExtension/VsDingExtension.csproj | 139 +++++++++++++++++++++++++ VsDingExtension/VsDingExtension.xml | 43 ++++++++ 5 files changed, 298 insertions(+) create mode 100644 VsDingExtension/AssemblyInfo.cs create mode 100644 VsDingExtension/Connect.cs create mode 100644 VsDingExtension/VsDingExtension.AddIn create mode 100644 VsDingExtension/VsDingExtension.csproj create mode 100644 VsDingExtension/VsDingExtension.xml diff --git a/VsDingExtension/AssemblyInfo.cs b/VsDingExtension/AssemblyInfo.cs new file mode 100644 index 0000000..9f505ee --- /dev/null +++ b/VsDingExtension/AssemblyInfo.cs @@ -0,0 +1,51 @@ +using System.Reflection; +using System.Runtime.CompilerServices; + +// +// General Information about an assembly is controlled through the following +// set of attributes. Change these attribute values to modify the information +// associated with an assembly. +// +[assembly: AssemblyTitle("")] +[assembly: AssemblyDescription("")] +[assembly: AssemblyConfiguration("")] +[assembly: AssemblyCompany("")] +[assembly: AssemblyProduct("")] +[assembly: AssemblyCopyright("")] +[assembly: AssemblyTrademark("")] +[assembly: AssemblyCulture("")] + +// +// Version information for an assembly consists of the following four values: +// +// Major Version +// Minor Version +// Revision +// Build Number +// +// You can specify all the value or you can default the Revision and Build Numbers +// by using the '*' as shown below: + +[assembly: AssemblyVersion("1.0.*")] + +// +// In order to sign your assembly you must specify a key to use. Refer to the +// Microsoft .NET Framework documentation for more information on assembly signing. +// +// Use the attributes below to control which key is used for signing. +// +// Notes: +// (*) If no key is specified - the assembly cannot be signed. +// (*) KeyName refers to a key that has been installed in the Crypto Service +// Provider (CSP) on your machine. +// (*) If the key file and a key name attributes are both specified, the +// following processing occurs: +// (1) If the KeyName can be found in the CSP - that key is used. +// (2) If the KeyName does not exist and the KeyFile does exist, the key +// in the file is installed into the CSP and used. +// (*) Delay Signing is an advanced option - see the Microsoft .NET Framework +// documentation for more information on this. +// +[assembly: AssemblyDelaySign(false)] +[assembly: AssemblyKeyFile("")] +[assembly: AssemblyKeyName("")] diff --git a/VsDingExtension/Connect.cs b/VsDingExtension/Connect.cs new file mode 100644 index 0000000..908b1cc --- /dev/null +++ b/VsDingExtension/Connect.cs @@ -0,0 +1,65 @@ +using System; +using Extensibility; +using EnvDTE; +using EnvDTE80; +namespace VsDingExtension +{ + /// The object for implementing an Add-in. + /// + public class Connect : IDTExtensibility2 + { + /// Implements the constructor for the Add-in object. Place your initialization code within this method. + public Connect() + { + } + + /// Implements the OnConnection method of the IDTExtensibility2 interface. Receives notification that the Add-in is being loaded. + /// Root object of the host application. + /// Describes how the Add-in is being loaded. + /// Object representing this Add-in. + /// + public void OnConnection(object application, ext_ConnectMode connectMode, object addInInst, ref Array custom) + { + applicationObject = (DTE2)application; + addInInstance = (AddIn)addInInst; + } + + /// Implements the OnDisconnection method of the IDTExtensibility2 interface. Receives notification that the Add-in is being unloaded. + /// Describes how the Add-in is being unloaded. + /// Array of parameters that are host application specific. + /// + public void OnDisconnection(ext_DisconnectMode disconnectMode, ref Array custom) + { + } + + /// Implements the OnAddInsUpdate method of the IDTExtensibility2 interface. Receives notification when the collection of Add-ins has changed. + /// Array of parameters that are host application specific. + /// + public void OnAddInsUpdate(ref Array custom) + { + } + + /// Implements the OnStartupComplete method of the IDTExtensibility2 interface. Receives notification that the host application has completed loading. + /// Array of parameters that are host application specific. + /// + public void OnStartupComplete(ref Array custom) + { + applicationObject.Events.BuildEvents.OnBuildDone += BuildEventsOnOnBuildDone; + } + + private void BuildEventsOnOnBuildDone(vsBuildScope scope, vsBuildAction action) + { + System.Media.SystemSounds.Asterisk.Play(); + } + + /// Implements the OnBeginShutdown method of the IDTExtensibility2 interface. Receives notification that the host application is being unloaded. + /// Array of parameters that are host application specific. + /// + public void OnBeginShutdown(ref Array custom) + { + } + + private DTE2 applicationObject; + private AddIn addInInstance; + } +} \ No newline at end of file diff --git a/VsDingExtension/VsDingExtension.AddIn b/VsDingExtension/VsDingExtension.AddIn new file mode 100644 index 0000000000000000000000000000000000000000..55ebe90077d684735df3740a58ae2b53c054f67d GIT binary patch literal 42266 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 + + + Debug + AnyCPU + 8.0.30424 + 2.0 + {54C786E5-FD14-4036-92AE-E9F25B71534B} + Library + + + false + VsDingExtension + .\bin\ + v4.5 + + + + true + false + .\bin\Debug\ + false + DEBUG;TRACE + 4 + false + false + VsDingExtension.xml + + + false + true + .\bin\Release\ + false + TRACE + 4 + false + false + VsDingExtension.xml + + + VsDingExtension + + + + False + + + + + + + + + + Code + + + Code + + + + + {80CC9F66-E7D8-4DDD-85B6-D9E6CD0E93E2} + 8 + 0 + 0 + primary + False + False + + + {26AD1324-4B7C-44BC-84F8-B86AED45729F} + 10 + 0 + 0 + primary + False + False + + + {1A31287A-4D7D-413E-8E32-3B374931BD89} + 8 + 0 + 0 + primary + False + False + + + {2CE2370E-D744-4936-A090-3FFFE667B0E1} + 9 + 0 + 0 + primary + False + False + + + {1CBA492E-7263-47BB-87FE-639000619B15} + 8 + 0 + 0 + primary + False + False + + + {00020430-0000-0000-C000-000000000046} + 2 + 0 + 0 + primary + False + False + + + + + VsDingExtension - For Testing.AddIn + + + + + + + + + + + + + + + + + + + + \ No newline at end of file diff --git a/VsDingExtension/VsDingExtension.xml b/VsDingExtension/VsDingExtension.xml new file mode 100644 index 0000000..ffa1530 --- /dev/null +++ b/VsDingExtension/VsDingExtension.xml @@ -0,0 +1,43 @@ + + + + VsDingExtension + + + + The object for implementing an Add-in. + + + + Implements the constructor for the Add-in object. Place your initialization code within this method. + + + Implements the OnConnection method of the IDTExtensibility2 interface. Receives notification that the Add-in is being loaded. + Root object of the host application. + Describes how the Add-in is being loaded. + Object representing this Add-in. + + + + Implements the OnDisconnection method of the IDTExtensibility2 interface. Receives notification that the Add-in is being unloaded. + Describes how the Add-in is being unloaded. + Array of parameters that are host application specific. + + + + Implements the OnAddInsUpdate method of the IDTExtensibility2 interface. Receives notification when the collection of Add-ins has changed. + Array of parameters that are host application specific. + + + + Implements the OnStartupComplete method of the IDTExtensibility2 interface. Receives notification that the host application has completed loading. + Array of parameters that are host application specific. + + + + Implements the OnBeginShutdown method of the IDTExtensibility2 interface. Receives notification that the host application is being unloaded. + Array of parameters that are host application specific. + + + +