[svn] r6706: vs-plugin/trunk:
Nemerle.Compiler.Utils/Nemerle.Completion2/CodeModel/Project.n
Nemerle.VsInt...
IT
svnadmin at nemerle.org
Mon Sep 25 05:12:03 CEST 2006
Log:
Working on regions.
Author: IT
Date: Mon Sep 25 05:11:58 2006
New Revision: 6706
Modified:
vs-plugin/trunk/Nemerle.Compiler.Utils/Nemerle.Completion2/CodeModel/Project.n
vs-plugin/trunk/Nemerle.VsIntegration/LanguageService/NemerleLanguageService.cs
vs-plugin/trunk/Nemerle.VsIntegration/NemerlePackage.cs
vs-plugin/trunk/Nemerle.VsIntegration/Project/ProjectInfo.cs
vs-plugin/trunk/Nemerle.VsIntegration/Resources.Designer.cs
vs-plugin/trunk/Nemerle.VsIntegration/Resources.resx
Modified: vs-plugin/trunk/Nemerle.Compiler.Utils/Nemerle.Completion2/CodeModel/Project.n
==============================================================================
--- vs-plugin/trunk/Nemerle.Compiler.Utils/Nemerle.Completion2/CodeModel/Project.n (original)
+++ vs-plugin/trunk/Nemerle.Compiler.Utils/Nemerle.Completion2/CodeModel/Project.n Mon Sep 25 05:11:58 2006
@@ -1,5 +1,4 @@
using System.Diagnostics;
-using SCG = System.Collections.Generic;
using Nemerle.Assertions;
using Nemerle.Compiler;
@@ -10,10 +9,13 @@
using Nemerle.Compiler.Utils;
+using SCG = System.Collections.Generic;
+
namespace Nemerle.Completion2
{
public delegate GetText (line : int, col : int, lineEnd : int, colEnd : int) : string;
- public delegate AddError(compilerMessage : CompilerMessage) : void;
+ public delegate AddHiddenRegion(location : Location) : void;
+ public delegate AddError (compilerMessage : CompilerMessage) : void;
[Record]
public partial class Project
@@ -141,7 +143,13 @@
}
}
- public CheckErrors([NotNull] fileName : string, addError : AddError, getText : GetText) : void
+ public Check(
+ [NotNull] fileName : string,
+ [NotNull] addHiddenRegion : AddHiddenRegion,
+ [NotNull] addError : AddError,
+ [NotNull] getText : GetText
+ )
+ : void
{
foreach (cm in _engine.CompilerMessages)
addError(cm);
@@ -150,7 +158,7 @@
foreach (decl in _compileUnits[fileIndex].Decls)
{
- | Type(builder) =>
+ | Type(builder) as tp =>
foreach (member in builder.GetMembers())
{
@@ -164,8 +172,13 @@
foreach (cm in _engine.CompilerMessages)
addError(cm);
+ addHiddenRegion(location);
+
| _ => ()
}
+
+ addHiddenRegion(tp.Location);
+
| _ => ()
}
}
Modified: vs-plugin/trunk/Nemerle.VsIntegration/LanguageService/NemerleLanguageService.cs
==============================================================================
--- vs-plugin/trunk/Nemerle.VsIntegration/LanguageService/NemerleLanguageService.cs (original)
+++ vs-plugin/trunk/Nemerle.VsIntegration/LanguageService/NemerleLanguageService.cs Mon Sep 25 05:11:58 2006
@@ -124,17 +124,16 @@
public override Source CreateSource(IVsTextLines buffer)
{
- return new NemerleSource(this, buffer,
- new Colorizer(this, buffer, GetScanner(buffer)));
+ return new NemerleSource(this, buffer, new Colorizer(this, buffer, GetScanner(buffer)));
}
public override LanguagePreferences GetLanguagePreferences()
{
if (_preferences == null)
{
- _preferences = new LanguagePreferences(Site,
- typeof(NemerleLanguageService).GUID, Name);
+ _preferences = new LanguagePreferences(Site, typeof(NemerleLanguageService).GUID, Name);
_preferences.Init();
+
#if DEBUG
//VladD2: Switch on synchronous mode for debugging purpose!
//TODO: Comment it if necessary.
@@ -204,10 +203,23 @@
projectInfo.Engine.ProcessMessages = true;
projectInfo.UpdateFile(request);
- Nemerle.Completion2.Project project = projectInfo.Project;
-
- project.CheckErrors(
+ projectInfo.Project.Check(
request.FileName,
+ delegate(Location location)
+ {
+ NewHiddenRegion r = new NewHiddenRegion();
+
+ r.tsHiddenText = Convert(location);
+ r.iType = (int)HIDDEN_REGION_TYPE.hrtCollapsible;
+ r.dwBehavior = (int)HIDDEN_REGION_BEHAVIOR.hrbEditorControlled; //hrbClientControlled;
+ r.dwState = (int)HIDDEN_REGION_STATE.hrsDefault;
+ r.pszBanner = null;
+ r.dwClient = 25;
+
+ request.Sink.AddHiddenRegion(r);
+
+ request.Sink.ProcessHiddenRegions = true;
+ },
delegate(CompilerMessage cm)
{
TextSpan ts = Convert(cm.Location);
Modified: vs-plugin/trunk/Nemerle.VsIntegration/NemerlePackage.cs
==============================================================================
--- vs-plugin/trunk/Nemerle.VsIntegration/NemerlePackage.cs (original)
+++ vs-plugin/trunk/Nemerle.VsIntegration/NemerlePackage.cs Mon Sep 25 05:11:58 2006
@@ -68,6 +68,7 @@
typeof(NemerleLanguageService),
NemerleConstants.LanguageName,
100,
+ AutoOutlining = true,
CodeSense = true,
EnableCommenting = true,
MatchBraces = true,
@@ -82,8 +83,7 @@
NemerleConstants.LanguageName,
@"CodeSnippets\SnippetsIndex.xml",
@"CodeSnippets\Snippets\",
- @"CodeSnippets\Snippets\")
- ]
+ @"CodeSnippets\Snippets\")]
#endregion
Modified: vs-plugin/trunk/Nemerle.VsIntegration/Project/ProjectInfo.cs
==============================================================================
--- vs-plugin/trunk/Nemerle.VsIntegration/Project/ProjectInfo.cs (original)
+++ vs-plugin/trunk/Nemerle.VsIntegration/Project/ProjectInfo.cs Mon Sep 25 05:11:58 2006
@@ -247,8 +247,7 @@
string filePath,
int newEndIndex, int newEndLine,
int oldEndIndex, int oldEndLine,
- int startIndex, int startLine
- )
+ int startIndex, int startLine)
{
if (!IsTypeTreeParsed)
return;
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 Mon Sep 25 05:11:58 2006
@@ -61,7 +61,7 @@
}
/// <summary>
- /// Looks up a localized string similar to Nemerle Language.
+ /// Looks up a localized string similar to Nemerle.
/// </summary>
internal static string _100 {
get {
@@ -294,7 +294,7 @@
}
/// <summary>
- /// Looks up a localized string similar to Iron Nemerle Project File (*.pyproj){0}*.pyproj{1}.
+ /// Looks up a localized string similar to Nemerle Project File (*.nproj){0}*.nproj{1}.
/// </summary>
internal static string ProjectFileExtensionFilter {
get {
Modified: vs-plugin/trunk/Nemerle.VsIntegration/Resources.resx
==============================================================================
--- vs-plugin/trunk/Nemerle.VsIntegration/Resources.resx (original)
+++ vs-plugin/trunk/Nemerle.VsIntegration/Resources.resx Mon Sep 25 05:11:58 2006
@@ -187,10 +187,10 @@
<value>The location of the target platform</value>
</data>
<data name="ProjectFileExtensionFilter" xml:space="preserve">
- <value>Iron Nemerle Project File (*.pyproj){0}*.pyproj{1}</value>
+ <value>Nemerle Project File (*.nproj){0}*.nproj{1}</value>
</data>
<data name="100" xml:space="preserve">
- <value>Nemerle Language</value>
+ <value>Nemerle</value>
</data>
<data name="BaseTypesNodeText" xml:space="preserve">
<value>Base Types</value>
More information about the svn
mailing list