[svn] r6725: vs-plugin/trunk/Nemerle.VsIntegration: Nemerle.VsIntegration.csproj Project/NemerleAssemblyRe...

Nuald svnadmin at nemerle.org
Wed Sep 27 07:31:19 CEST 2006


Log:
Fix initial creation of the Windows Forms application.

Author: Nuald
Date: Wed Sep 27 07:30:59 2006
New Revision: 6725

Added:
   vs-plugin/trunk/Nemerle.VsIntegration/Project/NemerleAssemblyReference.cs
   vs-plugin/trunk/Nemerle.VsIntegration/Project/NemerleAssemblyReferenceNode.cs
Modified:
   vs-plugin/trunk/Nemerle.VsIntegration/Nemerle.VsIntegration.csproj
   vs-plugin/trunk/Nemerle.VsIntegration/Project/NemerleReferenceContainerNode.cs
   vs-plugin/trunk/Nemerle.VsIntegration/Templates/Projects/WindowsApplication/Form1.Designer.n
   vs-plugin/trunk/Nemerle.VsIntegration/Templates/Projects/WindowsApplication/Form1.n

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	Wed Sep 27 07:30:59 2006
@@ -128,6 +128,8 @@
     <Compile Include="LanguageService\NemerleSource.cs" />
     <Compile Include="LanguageService\SourceTextManager.cs" />
     <Compile Include="NemerlePackage.cs" />
+    <Compile Include="Project\NemerleAssemblyReference.cs" />
+    <Compile Include="Project\NemerleAssemblyReferenceNode.cs" />
     <Compile Include="Project\NemerleOAFileItem.cs" />
     <Compile Include="Project\HierarchyEventArgs.cs" />
     <Compile Include="Project\INemerleLibraryManager.cs" />

Added: vs-plugin/trunk/Nemerle.VsIntegration/Project/NemerleAssemblyReference.cs
==============================================================================
--- (empty file)
+++ vs-plugin/trunk/Nemerle.VsIntegration/Project/NemerleAssemblyReference.cs	Wed Sep 27 07:30:59 2006
@@ -0,0 +1,24 @@
+using System;
+using System.Collections.Generic;
+using System.Text;
+
+using Microsoft.VisualStudio.Package.Automation;
+using Microsoft.VisualStudio.Package;
+using System.Runtime.InteropServices;
+
+namespace Nemerle.VisualStudio.Project
+{
+	public class NemerleAssemblyReference : Microsoft.VisualStudio.Package.Automation.OAAssemblyReference
+	{
+
+		public NemerleAssemblyReference(AssemblyReferenceNode assemblyReference)
+			: base(assemblyReference) { }
+
+
+		public override string PublicKeyToken
+		{
+			get { return String.Empty; }
+		}
+
+	}
+}

Added: vs-plugin/trunk/Nemerle.VsIntegration/Project/NemerleAssemblyReferenceNode.cs
==============================================================================
--- (empty file)
+++ vs-plugin/trunk/Nemerle.VsIntegration/Project/NemerleAssemblyReferenceNode.cs	Wed Sep 27 07:30:59 2006
@@ -0,0 +1,35 @@
+using System;
+using System.Collections.Generic;
+using System.Text;
+using Microsoft.VisualStudio.Package;
+using System.Runtime.InteropServices;
+
+namespace Nemerle.VisualStudio.Project
+{
+	class NemerleAssemblyReferenceNode : AssemblyReferenceNode
+	{
+
+		public NemerleAssemblyReferenceNode(ProjectNode root, ProjectElement e)
+			: base(root, e) { }
+
+		/// <summary>
+		/// Constructor for the AssemblyReferenceNode
+		/// </summary>
+		public NemerleAssemblyReferenceNode(ProjectNode root, string assemblyPath)
+			: base(root, assemblyPath) { }
+
+		private NemerleAssemblyReference _assemblyRef;
+
+		internal override object Object
+		{
+			get
+			{
+				if (null == _assemblyRef)
+				{
+					_assemblyRef = new NemerleAssemblyReference(this);
+				}
+				return _assemblyRef;
+			}
+		}
+	}
+}

Modified: vs-plugin/trunk/Nemerle.VsIntegration/Project/NemerleReferenceContainerNode.cs
==============================================================================
--- vs-plugin/trunk/Nemerle.VsIntegration/Project/NemerleReferenceContainerNode.cs	(original)
+++ vs-plugin/trunk/Nemerle.VsIntegration/Project/NemerleReferenceContainerNode.cs	Wed Sep 27 07:30:59 2006
@@ -3,6 +3,8 @@
 
 using Microsoft.VisualStudio.Package;
 using Microsoft.VisualStudio.Package.Automation;
+using System;
+using System.Diagnostics;
 
 namespace Nemerle.VisualStudio.Project
 {
@@ -24,11 +26,37 @@
 			// (via System.Reflection.AssemblyName()).
 
 			string item = element.Item.FinalItemSpec;
+			NemerleAssemblyReferenceNode node = null;
 
+			try
+			{
 			if (File.Exists(item))
-				return base.CreateAssemblyReferenceNode(item);
+					node = new NemerleAssemblyReferenceNode(ProjectMgr, item);
 			else
-				return base.CreateAssemblyReferenceNode(element);
+					node = new NemerleAssemblyReferenceNode(ProjectMgr, element);
+			}
+			catch (ArgumentNullException e)
+			{
+				Trace.WriteLine("Exception : " + e.Message);
+			}
+			catch (FileNotFoundException e)
+			{
+				Trace.WriteLine("Exception : " + e.Message);
+			}
+			catch (BadImageFormatException e)
+			{
+				Trace.WriteLine("Exception : " + e.Message);
+			}
+			catch (FileLoadException e)
+			{
+				Trace.WriteLine("Exception : " + e.Message);
+			}
+			catch (System.Security.SecurityException e)
+			{
+				Trace.WriteLine("Exception : " + e.Message);
+			}
+
+			return node;
 		}
 
 		public override void AddChild(HierarchyNode node)

Modified: vs-plugin/trunk/Nemerle.VsIntegration/Templates/Projects/WindowsApplication/Form1.Designer.n
==============================================================================
--- vs-plugin/trunk/Nemerle.VsIntegration/Templates/Projects/WindowsApplication/Form1.Designer.n	(original)
+++ vs-plugin/trunk/Nemerle.VsIntegration/Templates/Projects/WindowsApplication/Form1.Designer.n	Wed Sep 27 07:30:59 2006
@@ -20,8 +20,6 @@
             base.Dispose(disposing);
         }
 
-        #region
-
         /// <summary>
         /// Required method for Designer support - do not modify
         /// the contents of this method with the code editor.
@@ -32,7 +30,5 @@
             this.AutoScaleMode = System.Windows.Forms.AutoScaleMode.Font;
             this.Text = "Form1";
         }
-
-        #endregion
     }
 }

Modified: vs-plugin/trunk/Nemerle.VsIntegration/Templates/Projects/WindowsApplication/Form1.n
==============================================================================
--- vs-plugin/trunk/Nemerle.VsIntegration/Templates/Projects/WindowsApplication/Form1.n	(original)
+++ vs-plugin/trunk/Nemerle.VsIntegration/Templates/Projects/WindowsApplication/Form1.n	Wed Sep 27 07:30:59 2006
@@ -8,7 +8,7 @@
 
 namespace $safeprojectname$
 {
-    public partial class Form1 : Form
+    public partial class Form1 : System.Windows.Forms.Form
     {
         public this()
         {



More information about the svn mailing list