Welcome to mirror list, hosted at ThFree Co, Russian Federation.

github.com/mono/monodevelop.git - Unnamed repository; edit this file 'description' to name the repository.
summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorMichael Hutchinson <mhutchinson@novell.com>2007-09-06 00:40:07 +0400
committerMichael Hutchinson <mhutchinson@novell.com>2007-09-06 00:40:07 +0400
commita7f98fbd645da7765311db8846c7017292c7f843 (patch)
tree294e5b5c58b25ba9d5dbf03b3fbacaf3287d6a8e /Extras/AspNetAddIn/Project/AspNetAppProject.cs
parentb69715208e9d5c16e7a5584625dc935654964a5b (diff)
* Project/AspNetAppProject.cs: Set correct BuildAction for added
ASP.NET files. Convert cachedDocuments to generic collection. svn path=/trunk/monodevelop/; revision=85378
Diffstat (limited to 'Extras/AspNetAddIn/Project/AspNetAppProject.cs')
-rw-r--r--Extras/AspNetAddIn/Project/AspNetAppProject.cs39
1 files changed, 20 insertions, 19 deletions
diff --git a/Extras/AspNetAddIn/Project/AspNetAppProject.cs b/Extras/AspNetAddIn/Project/AspNetAppProject.cs
index 94cb117aff..2c90339372 100644
--- a/Extras/AspNetAddIn/Project/AspNetAppProject.cs
+++ b/Extras/AspNetAddIn/Project/AspNetAppProject.cs
@@ -32,7 +32,7 @@
using System;
using System.IO;
using System.Xml;
-using System.Collections;
+using System.Collections.Generic;
using MonoDevelop.Core;
using MonoDevelop.Core.Execution;
using MonoDevelop.Core.ProgressMonitoring;
@@ -51,7 +51,7 @@ namespace AspNetAddIn
{
//caching to avoid too much reparsing
//may have to drop at some point to avoid memory issues
- private Hashtable cachedDocuments = new Hashtable ();
+ private Dictionary<ProjectFile, Document> cachedDocuments = new Dictionary<ProjectFile, Document> ();
[ItemProperty("XspParameters")]
protected XspParameters xspParameters = new XspParameters ();
@@ -213,9 +213,8 @@ namespace AspNetAddIn
public Document GetDocument (ProjectFile file)
{
- Document doc = this.cachedDocuments [file] as Document;
-
- if (doc != null)
+ Document doc = null;
+ if (cachedDocuments.TryGetValue (file, out doc))
return doc;
switch (DetermineWebSubtype (file)) {
@@ -328,32 +327,34 @@ namespace AspNetAddIn
protected override void OnFileAddedToProject (ProjectFileEventArgs e)
{
- OnFileEvent (e);
+ SetDefaultBuildAction (e.ProjectFile);
+ InvalidateDocumentCache (e.ProjectFile);
base.OnFileAddedToProject (e);
}
protected override void OnFileChangedInProject (ProjectFileEventArgs e)
{
- OnFileEvent (e);
+ InvalidateDocumentCache (e.ProjectFile);
base.OnFileChangedInProject (e);
}
- protected override void OnFilePropertyChangedInProject (ProjectFileEventArgs e)
+ //protected override void OnFilePropertyChangedInProject (ProjectFileEventArgs e)
+ //{
+ // base.OnFilePropertyChangedInProject (e);
+ //}
+
+ void InvalidateDocumentCache (ProjectFile file)
{
- OnFileEvent (e);
- base.OnFilePropertyChangedInProject (e);
+ if (cachedDocuments.ContainsKey (file))
+ cachedDocuments.Remove (file);
}
- void OnFileEvent (ProjectFileEventArgs e)
+ void SetDefaultBuildAction (ProjectFile file)
{
- this.cachedDocuments [e.ProjectFile] = null;
-
- //WebSubtype type = DetermineWebSubtype (e.ProjectFile);
-
- //switch (type)
- //{
- //special actions for various types
- //}
+ //make sure web files are deployed, not built
+ WebSubtype type = DetermineWebSubtype (file);
+ if (type != WebSubtype.None)
+ file.BuildAction = BuildAction.FileCopy;
}
#endregion