[svn] r6560: vs-plugin/trunk/Nemerle.VsIntegration:
Nemerle.VsIntegration.csproj NemerleConstants.cs Nemer...
NoiseEHC
svnadmin at nemerle.org
Sat Aug 19 21:58:16 CEST 2006
Log:
implementing splash screen and about box as Andrei did
Author: NoiseEHC
Date: Sat Aug 19 21:58:14 2006
New Revision: 6560
Modified:
vs-plugin/trunk/Nemerle.VsIntegration/Nemerle.VsIntegration.csproj
vs-plugin/trunk/Nemerle.VsIntegration/NemerleConstants.cs
vs-plugin/trunk/Nemerle.VsIntegration/NemerlePackage.cs
vs-plugin/trunk/Nemerle.VsIntegration/Resources.Designer.cs
vs-plugin/trunk/Nemerle.VsIntegration/Resources.resx
Modified: vs-plugin/trunk/Nemerle.VsIntegration/Nemerle.VsIntegration.csproj
==============================================================================
--- vs-plugin/trunk/Nemerle.VsIntegration/Nemerle.VsIntegration.csproj (original)
+++ vs-plugin/trunk/Nemerle.VsIntegration/Nemerle.VsIntegration.csproj Sat Aug 19 21:58:14 2006
@@ -249,8 +249,8 @@
</ItemGroup>
<ItemGroup>
<Content Include="ObjectModelExtenders\!Info.txt" />
+ <None Include="Resources\Nemerle.ico" />
<EmbeddedResource Include="Resources\NemerleImageList.bmp" />
- <Content Include="Resources\Nemerle.ico" />
<ZipProject Include="Templates\Projects\WindowsApplication\NemerleMacroLibrary.vstemplate" />
<ZipProject Include="Templates\Projects\WindowsApplication\Nemerle.ico" />
<ZipProject Include="Templates\Projects\ClassLibrary\Nemerle.ico" />
Modified: vs-plugin/trunk/Nemerle.VsIntegration/NemerleConstants.cs
==============================================================================
--- vs-plugin/trunk/Nemerle.VsIntegration/NemerleConstants.cs (original)
+++ vs-plugin/trunk/Nemerle.VsIntegration/NemerleConstants.cs Sat Aug 19 21:58:14 2006
@@ -13,6 +13,10 @@
public const string FileExtension = ".n";
public const string ProjectExtension = "nproj";
+ // used by registration and about box/splash screen
+ public const string ProductDetails = "Nemerle Visual Studio Integration";
+ public const string ProductID = "1.0";
+
// Âíčěŕíčĺ, GUID LanguageServiceGuidString íóćíî čçěĺíčňü ĺůĺ č çäĺńü:
// Nemerle.VsIntegration\CodeSnippets\SnippetsIndex.xml
Modified: vs-plugin/trunk/Nemerle.VsIntegration/NemerlePackage.cs
==============================================================================
--- vs-plugin/trunk/Nemerle.VsIntegration/NemerlePackage.cs (original)
+++ vs-plugin/trunk/Nemerle.VsIntegration/NemerlePackage.cs Sat Aug 19 21:58:14 2006
@@ -16,6 +16,7 @@
using Microsoft.VisualStudio;
using Microsoft.VisualStudio.OLE.Interop;
using Microsoft.VisualStudio.Shell;
+using Microsoft.VisualStudio.Shell.Interop;
using Microsoft.VisualStudio.Package;
using NP = Nemerle.VsIntegration.Project;
@@ -59,7 +60,14 @@
// "{7651a701-06e5-11d1-8ebd-00a0c90f26ea}")
//] //LOGVIEWID_Code
[PackageRegistration(UseManagedResourcesOnly = true)]
- [ProvideLoadKey("standard", "1.0", "Nemerle VS Integration", "", 104)]
+ // Showing the splash screen requires "devenv /rootsuffix Exp /setup" during the installation.
+ // For more information please see: http://blogs.msdn.com/jim_glass/archive/2005/05/23/421152.aspx
+ [InstalledProductRegistration(true,
+ GlobalConstants.LanguageName,
+ GlobalConstants.ProductDetails,
+ GlobalConstants.ProductID,
+ IconResourceID=300)]
+ [ProvideLoadKey("standard", GlobalConstants.ProductID, GlobalConstants.ProductDetails, "nemerle.org", 104)]
[ProvideService(typeof(NemerleLanguage), ServiceName = GlobalConstants.LanguageName)]
[ProvideService(typeof(INemerleLibraryManager))]
[ProvideLanguageService(typeof(NemerleLanguage), GlobalConstants.LanguageName, 100,
@@ -78,7 +86,7 @@
]
#endregion
- public class NemerlePackage : ProjectPackage/*Package*/, IOleComponent
+ public class NemerlePackage : ProjectPackage/*Package*/, IOleComponent, IVsInstalledProduct
{
private uint _componentID;
private NemerleLibraryManager _libraryManager;
@@ -280,5 +288,57 @@
public void Terminate() { }
#endregion
+
+ #region IVsInstalledProduct Members
+ /// <summary>
+ /// This method is called during Devenv /Setup to get the bitmap to display on the splash screen for this package.
+ /// </summary>
+ /// <param name="pIdBmp">The resource id corresponding to the bitmap to display on the splash screen</param>
+ /// <returns>HRESULT, indicating success or failure</returns>
+ public int IdBmpSplash(out uint pIdBmp) {
+ pIdBmp = 300; // nevermind, does not called by VS2005
+ return VSConstants.S_OK;
+ }
+
+ /// <summary>
+ /// This method is called to get the icon that will be displayed in the Help About dialog when this package is selected.
+ /// </summary>
+ /// <param name="pIdIco">The resource id corresponding to the icon to display on the Help About dialog</param>
+ /// <returns>HRESULT, indicating success or failure</returns>
+ public int IdIcoLogoForAboutbox(out uint pIdIco) {
+ pIdIco = 300; // used for splash screen also
+ return VSConstants.S_OK;
+ }
+
+ /// <summary>
+ /// This methods provides the product official name, it will be displayed in the help about dialog.
+ /// </summary>
+ /// <param name="pbstrName">Out parameter to which to assign the product name</param>
+ /// <returns>HRESULT, indicating success or failure</returns>
+ public int OfficialName(out string pbstrName) {
+ pbstrName = GlobalConstants.LanguageName;
+ return VSConstants.S_OK;
+ }
+
+ /// <summary>
+ /// This methods provides the product description, it will be displayed in the help about dialog.
+ /// </summary>
+ /// <param name="pbstrProductDetails">Out parameter to which to assign the description of the package</param>
+ /// <returns>HRESULT, indicating success or failure</returns>
+ public int ProductDetails(out string pbstrProductDetails) {
+ pbstrProductDetails = GlobalConstants.ProductDetails;
+ return VSConstants.S_OK;
+ }
+
+ /// <summary>
+ /// This methods provides the product version, it will be displayed in the help about dialog.
+ /// </summary>
+ /// <param name="pbstrPID">Out parameter to which to assign the version number</param>
+ /// <returns>HRESULT, indicating success or failure</returns>
+ public int ProductID(out string pbstrPID) {
+ pbstrPID = GlobalConstants.ProductID;
+ return VSConstants.S_OK;
+ }
+ #endregion
}
}
Modified: vs-plugin/trunk/Nemerle.VsIntegration/Resources.Designer.cs
==============================================================================
--- vs-plugin/trunk/Nemerle.VsIntegration/Resources.Designer.cs (original)
+++ vs-plugin/trunk/Nemerle.VsIntegration/Resources.Designer.cs Sat Aug 19 21:58:14 2006
@@ -78,6 +78,13 @@
}
}
+ internal static System.Drawing.Icon _300 {
+ get {
+ object obj = ResourceManager.GetObject("300", resourceCulture);
+ return ((System.Drawing.Icon)(obj));
+ }
+ }
+
/// <summary>
/// Looks up a localized string similar to Application.
/// </summary>
Modified: vs-plugin/trunk/Nemerle.VsIntegration/Resources.resx
==============================================================================
--- vs-plugin/trunk/Nemerle.VsIntegration/Resources.resx (original)
+++ vs-plugin/trunk/Nemerle.VsIntegration/Resources.resx Sat Aug 19 21:58:14 2006
@@ -223,4 +223,8 @@
<data name="104" xml:space="preserve">
<value>KHJ1HZR1P2EMZKCRZCMAMCZEMPKEPEZJP1CEKQCEHDICAKMARHCTK9KJM8IMARZ3QEZCJ2RQIKEMHZR0MAE1JEQKZAIPCMP2PAE2EZZIMCJ8K9ZJAHI0EKD9MDAPE2HC</value>
</data>
+ <assembly alias="System.Windows.Forms" name="System.Windows.Forms, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089" />
+ <data name="300" type="System.Resources.ResXFileRef, System.Windows.Forms">
+ <value>Resources\Nemerle.ico;System.Drawing.Icon, System.Drawing, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a</value>
+ </data>
</root>
\ No newline at end of file
More information about the svn
mailing list