diff --git a/src/AddIns/BackendBindings/FSharp/FSharpBinding/Project/FSharpBinding.fsproj b/src/AddIns/BackendBindings/FSharp/FSharpBinding/Project/FSharpBinding.fsproj
index d242818832..ecfbad2ba2 100644
--- a/src/AddIns/BackendBindings/FSharp/FSharpBinding/Project/FSharpBinding.fsproj
+++ b/src/AddIns/BackendBindings/FSharp/FSharpBinding/Project/FSharpBinding.fsproj
@@ -116,4 +116,4 @@
False
-
+
\ No newline at end of file
diff --git a/src/AddIns/Misc/SourceAnalysis/Configuration/AssemblyInfo.cs b/src/AddIns/Misc/SourceAnalysis/Configuration/AssemblyInfo.cs
new file mode 100644
index 0000000000..ed796611ca
--- /dev/null
+++ b/src/AddIns/Misc/SourceAnalysis/Configuration/AssemblyInfo.cs
@@ -0,0 +1,20 @@
+//
+//
+//
+//
+// $Revision$
+//
+
+using System.Reflection;
+
+// Information about this assembly is defined by the following
+// attributes.
+//
+// change them to the information which is associated with the assembly
+// you compile.
+
+[assembly: AssemblyTitle("SourceAnalysis")]
+[assembly: AssemblyDescription("AddIn for SharpDevelop")]
+[assembly: AssemblyConfiguration("")]
+[assembly: AssemblyTrademark("")]
+[assembly: AssemblyCulture("")]
diff --git a/src/AddIns/Misc/SourceAnalysis/Resources/AnalysisIdeOptionPanel.xfrm b/src/AddIns/Misc/SourceAnalysis/Resources/AnalysisIdeOptionPanel.xfrm
new file mode 100644
index 0000000000..ae34100f5f
--- /dev/null
+++ b/src/AddIns/Misc/SourceAnalysis/Resources/AnalysisIdeOptionPanel.xfrm
@@ -0,0 +1,43 @@
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
\ No newline at end of file
diff --git a/src/AddIns/Misc/SourceAnalysis/Settings.SourceAnalysis b/src/AddIns/Misc/SourceAnalysis/Settings.SourceAnalysis
new file mode 100644
index 0000000000..e175a2613f
--- /dev/null
+++ b/src/AddIns/Misc/SourceAnalysis/Settings.SourceAnalysis
@@ -0,0 +1,34 @@
+
+
+
+
+
+
+ True
+
+
+
+
+ True
+
+
+
+
+ True
+
+
+
+
+ True
+
+
+
+
+ True
+
+
+
+
+
+
+
\ No newline at end of file
diff --git a/src/AddIns/Misc/SourceAnalysis/SharpDevelop.SourceAnalysis.targets b/src/AddIns/Misc/SourceAnalysis/SharpDevelop.SourceAnalysis.targets
new file mode 100644
index 0000000000..e9b000b5f7
--- /dev/null
+++ b/src/AddIns/Misc/SourceAnalysis/SharpDevelop.SourceAnalysis.targets
@@ -0,0 +1,50 @@
+
+
+
+
+
+ $(BuildDependsOn);SourceAnalysis
+ SourceAnalysisForceFullAnalysis;$(RebuildDependsOn)
+
+
+
+ false
+ true
+ true
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
diff --git a/src/AddIns/Misc/SourceAnalysis/SourceAnalysis.addin b/src/AddIns/Misc/SourceAnalysis/SourceAnalysis.addin
new file mode 100644
index 0000000000..2613790176
--- /dev/null
+++ b/src/AddIns/Misc/SourceAnalysis/SourceAnalysis.addin
@@ -0,0 +1,41 @@
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
diff --git a/src/AddIns/Misc/SourceAnalysis/SourceAnalysis.csproj b/src/AddIns/Misc/SourceAnalysis/SourceAnalysis.csproj
new file mode 100644
index 0000000000..40930869e1
--- /dev/null
+++ b/src/AddIns/Misc/SourceAnalysis/SourceAnalysis.csproj
@@ -0,0 +1,99 @@
+
+
+ Library
+ MattEverson.SourceAnalysis
+ SourceAnalysis
+ Debug
+ AnyCPU
+ {3EAA45A9-735C-4AC7-A799-947B93EA449D}
+ ..\..\..\..\AddIns\AddIns\Misc\SourceAnalysis
+ False
+ False
+ False
+ Auto
+ 134217728
+ AnyCPU
+ 4096
+ 4
+ false
+ v2.0
+ False
+ False
+
+
+ obj\Debug\
+ False
+ DEBUG;TRACE
+ true
+ Full
+ True
+
+
+ obj\Release\
+ True
+ TRACE
+ false
+ None
+ False
+
+
+
+
+
+
+
+
+
+
+ Always
+
+
+ Always
+
+
+ Always
+
+
+
+
+ AnalysisProjectOptions.cs
+
+
+
+ AnalysisProjectOptions.cs
+
+
+
+
+
+
+
+
+
+ {2D18BE89-D210-49EB-A9DD-2246FBB3DF6D}
+ ICSharpCode.TextEditor
+ False
+
+
+ {3A9AE6AA-BC07-4A2F-972C-581E3AE2F195}
+ NRefactory
+ False
+
+
+ {2748AD25-9C63-4E12-877B-4DCE96FBED54}
+ ICSharpCode.SharpDevelop
+ False
+
+
+ {35CEF10F-2D4C-45F2-9DD1-161E0FEC583C}
+ ICSharpCode.Core
+ False
+
+
+ {924EE450-603D-49C1-A8E5-4AFAA31CE6F3}
+ ICSharpCode.SharpDevelop.Dom
+ False
+
+
+
+
\ No newline at end of file
diff --git a/src/AddIns/Misc/SourceAnalysis/SourceAnalysis.sln b/src/AddIns/Misc/SourceAnalysis/SourceAnalysis.sln
new file mode 100644
index 0000000000..9f0d44d85a
--- /dev/null
+++ b/src/AddIns/Misc/SourceAnalysis/SourceAnalysis.sln
@@ -0,0 +1,48 @@
+
+Microsoft Visual Studio Solution File, Format Version 10.00
+# Visual Studio 2008
+# SharpDevelop 3.0.0.3280
+Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "SourceAnalysis", "SourceAnalysis.csproj", "{3EAA45A9-735C-4AC7-A799-947B93EA449D}"
+EndProject
+Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "ICSharpCode.SharpDevelop", "..\..\..\Main\Base\Project\ICSharpCode.SharpDevelop.csproj", "{2748AD25-9C63-4E12-877B-4DCE96FBED54}"
+EndProject
+Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "ICSharpCode.Core", "..\..\..\Main\Core\Project\ICSharpCode.Core.csproj", "{35CEF10F-2D4C-45F2-9DD1-161E0FEC583C}"
+EndProject
+Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "NRefactory", "..\..\..\Libraries\NRefactory\Project\NRefactory.csproj", "{3A9AE6AA-BC07-4A2F-972C-581E3AE2F195}"
+EndProject
+Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "ICSharpCode.SharpDevelop.Dom", "..\..\..\Main\ICSharpCode.SharpDevelop.Dom\Project\ICSharpCode.SharpDevelop.Dom.csproj", "{924EE450-603D-49C1-A8E5-4AFAA31CE6F3}"
+EndProject
+Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "ICSharpCode.TextEditor", "..\..\..\Libraries\ICSharpCode.TextEditor\Project\ICSharpCode.TextEditor.csproj", "{2D18BE89-D210-49EB-A9DD-2246FBB3DF6D}"
+EndProject
+Global
+ GlobalSection(SolutionConfigurationPlatforms) = preSolution
+ Debug|Any CPU = Debug|Any CPU
+ Release|Any CPU = Release|Any CPU
+ EndGlobalSection
+ GlobalSection(ProjectConfigurationPlatforms) = postSolution
+ {3EAA45A9-735C-4AC7-A799-947B93EA449D}.Debug|Any CPU.Build.0 = Debug|Any CPU
+ {3EAA45A9-735C-4AC7-A799-947B93EA449D}.Debug|Any CPU.ActiveCfg = Debug|Any CPU
+ {3EAA45A9-735C-4AC7-A799-947B93EA449D}.Release|Any CPU.Build.0 = Release|Any CPU
+ {3EAA45A9-735C-4AC7-A799-947B93EA449D}.Release|Any CPU.ActiveCfg = Release|Any CPU
+ {2748AD25-9C63-4E12-877B-4DCE96FBED54}.Debug|Any CPU.Build.0 = Debug|Any CPU
+ {2748AD25-9C63-4E12-877B-4DCE96FBED54}.Debug|Any CPU.ActiveCfg = Debug|Any CPU
+ {2748AD25-9C63-4E12-877B-4DCE96FBED54}.Release|Any CPU.Build.0 = Release|Any CPU
+ {2748AD25-9C63-4E12-877B-4DCE96FBED54}.Release|Any CPU.ActiveCfg = Release|Any CPU
+ {35CEF10F-2D4C-45F2-9DD1-161E0FEC583C}.Debug|Any CPU.Build.0 = Debug|Any CPU
+ {35CEF10F-2D4C-45F2-9DD1-161E0FEC583C}.Debug|Any CPU.ActiveCfg = Debug|Any CPU
+ {35CEF10F-2D4C-45F2-9DD1-161E0FEC583C}.Release|Any CPU.Build.0 = Release|Any CPU
+ {35CEF10F-2D4C-45F2-9DD1-161E0FEC583C}.Release|Any CPU.ActiveCfg = Release|Any CPU
+ {3A9AE6AA-BC07-4A2F-972C-581E3AE2F195}.Debug|Any CPU.Build.0 = Debug|Any CPU
+ {3A9AE6AA-BC07-4A2F-972C-581E3AE2F195}.Debug|Any CPU.ActiveCfg = Debug|Any CPU
+ {3A9AE6AA-BC07-4A2F-972C-581E3AE2F195}.Release|Any CPU.Build.0 = Release|Any CPU
+ {3A9AE6AA-BC07-4A2F-972C-581E3AE2F195}.Release|Any CPU.ActiveCfg = Release|Any CPU
+ {924EE450-603D-49C1-A8E5-4AFAA31CE6F3}.Debug|Any CPU.Build.0 = Debug|Any CPU
+ {924EE450-603D-49C1-A8E5-4AFAA31CE6F3}.Debug|Any CPU.ActiveCfg = Debug|Any CPU
+ {924EE450-603D-49C1-A8E5-4AFAA31CE6F3}.Release|Any CPU.Build.0 = Release|Any CPU
+ {924EE450-603D-49C1-A8E5-4AFAA31CE6F3}.Release|Any CPU.ActiveCfg = Release|Any CPU
+ {2D18BE89-D210-49EB-A9DD-2246FBB3DF6D}.Debug|Any CPU.Build.0 = Debug|Any CPU
+ {2D18BE89-D210-49EB-A9DD-2246FBB3DF6D}.Debug|Any CPU.ActiveCfg = Debug|Any CPU
+ {2D18BE89-D210-49EB-A9DD-2246FBB3DF6D}.Release|Any CPU.Build.0 = Release|Any CPU
+ {2D18BE89-D210-49EB-A9DD-2246FBB3DF6D}.Release|Any CPU.ActiveCfg = Release|Any CPU
+ EndGlobalSection
+EndGlobal
diff --git a/src/AddIns/Misc/SourceAnalysis/SourceAnalysisViolations.xml b/src/AddIns/Misc/SourceAnalysis/SourceAnalysisViolations.xml
new file mode 100644
index 0000000000..eb95051423
--- /dev/null
+++ b/src/AddIns/Misc/SourceAnalysis/SourceAnalysisViolations.xml
@@ -0,0 +1,489 @@
+
+ The file has no header, the header Xml is invalid, or the header is not located at the top of the file.
+ A single-line comment must not be followed by a blank line. To ignore this error when commenting out a line of code, begin the comment with '////' rather than '//'.
+ The class must have a documentation header.
+ The method must have a documentation header.
+ The method must have a documentation header.
+ The file has no header, the header Xml is invalid, or the header is not located at the top of the file.
+ An opening curly bracket must not be followed by a blank line.
+ The method must have an access modifier.
+ All using directives must be placed inside of the namespace.
+ All using directives must be placed inside of the namespace.
+ All using directives must be placed inside of the namespace.
+ All using directives must be placed inside of the namespace.
+ All using directives must be placed inside of the namespace.
+ All using directives must be placed inside of the namespace.
+ If the method parameters are on separate lines, the first parameter must begin on the line following the name of the method.
+ If the method parameters are on separate lines, the first parameter must begin on the line following the name of the method.
+ If the method parameters are on separate lines, the first parameter must begin on the line following the name of the method.
+ The call to ModifyStyleCopSettingsClick must begin with the 'this.' prefix to indicate that the item is a member of the class.
+ Tabs are not allowed. Use spaces instead.
+ Tabs are not allowed. Use spaces instead.
+ Tabs are not allowed. Use spaces instead.
+ Tabs are not allowed. Use spaces instead.
+ Tabs are not allowed. Use spaces instead.
+ Tabs are not allowed. Use spaces instead.
+ Tabs are not allowed. Use spaces instead.
+ Tabs are not allowed. Use spaces instead.
+ Tabs are not allowed. Use spaces instead.
+ Tabs are not allowed. Use spaces instead.
+ Tabs are not allowed. Use spaces instead.
+ Tabs are not allowed. Use spaces instead.
+ Tabs are not allowed. Use spaces instead.
+ Tabs are not allowed. Use spaces instead.
+ Tabs are not allowed. Use spaces instead.
+ Tabs are not allowed. Use spaces instead.
+ Tabs are not allowed. Use spaces instead.
+ Tabs are not allowed. Use spaces instead.
+ Tabs are not allowed. Use spaces instead.
+ Tabs are not allowed. Use spaces instead.
+ Tabs are not allowed. Use spaces instead.
+ Tabs are not allowed. Use spaces instead.
+ Tabs are not allowed. Use spaces instead.
+ Tabs are not allowed. Use spaces instead.
+ Tabs are not allowed. Use spaces instead.
+ Tabs are not allowed. Use spaces instead.
+ Tabs are not allowed. Use spaces instead.
+ Tabs are not allowed. Use spaces instead.
+ Tabs are not allowed. Use spaces instead.
+ Tabs are not allowed. Use spaces instead.
+ Tabs are not allowed. Use spaces instead.
+ Tabs are not allowed. Use spaces instead.
+ Tabs are not allowed. Use spaces instead.
+ Tabs are not allowed. Use spaces instead.
+ Tabs are not allowed. Use spaces instead.
+ Tabs are not allowed. Use spaces instead.
+ Tabs are not allowed. Use spaces instead.
+ Tabs are not allowed. Use spaces instead.
+ Tabs are not allowed. Use spaces instead.
+ Tabs are not allowed. Use spaces instead.
+ Tabs are not allowed. Use spaces instead.
+ Tabs are not allowed. Use spaces instead.
+ Tabs are not allowed. Use spaces instead.
+ Tabs are not allowed. Use spaces instead.
+ Tabs are not allowed. Use spaces instead.
+ Tabs are not allowed. Use spaces instead.
+ Tabs are not allowed. Use spaces instead.
+ Tabs are not allowed. Use spaces instead.
+ Tabs are not allowed. Use spaces instead.
+ Tabs are not allowed. Use spaces instead.
+ Tabs are not allowed. Use spaces instead.
+ Tabs are not allowed. Use spaces instead.
+ Tabs are not allowed. Use spaces instead.
+ Tabs are not allowed. Use spaces instead.
+ Tabs are not allowed. Use spaces instead.
+ Tabs are not allowed. Use spaces instead.
+ Tabs are not allowed. Use spaces instead.
+ Tabs are not allowed. Use spaces instead.
+ Tabs are not allowed. Use spaces instead.
+ Tabs are not allowed. Use spaces instead.
+ Tabs are not allowed. Use spaces instead.
+ Tabs are not allowed. Use spaces instead.
+ Tabs are not allowed. Use spaces instead.
+ Tabs are not allowed. Use spaces instead.
+ The spacing around the keyword 'using' is invalid.
+ Tabs are not allowed. Use spaces instead.
+ Tabs are not allowed. Use spaces instead.
+ Tabs are not allowed. Use spaces instead.
+ Tabs are not allowed. Use spaces instead.
+ Tabs are not allowed. Use spaces instead.
+ The class must have a documentation header.
+ The method must have a documentation header.
+ The method must have a documentation header.
+ The file has no header, the header Xml is invalid, or the header is not located at the top of the file.
+ The body of the if statement must be wrapped in opening and closing curly brackets.
+ The body of the else statement must be wrapped in opening and closing curly brackets.
+ If a statement spans multiple lines, the opening curly bracket must be placed on its own line.
+ Statements or elements wrapped in curly brackets must be followed by a blank line.
+ All using directives must be placed inside of the namespace.
+ All using directives must be placed inside of the namespace.
+ All using directives must be placed inside of the namespace.
+ Tabs are not allowed. Use spaces instead.
+ Tabs are not allowed. Use spaces instead.
+ Tabs are not allowed. Use spaces instead.
+ Tabs are not allowed. Use spaces instead.
+ Tabs are not allowed. Use spaces instead.
+ Tabs are not allowed. Use spaces instead.
+ Tabs are not allowed. Use spaces instead.
+ Tabs are not allowed. Use spaces instead.
+ Tabs are not allowed. Use spaces instead.
+ Tabs are not allowed. Use spaces instead.
+ Tabs are not allowed. Use spaces instead.
+ Tabs are not allowed. Use spaces instead.
+ Tabs are not allowed. Use spaces instead.
+ Tabs are not allowed. Use spaces instead.
+ Tabs are not allowed. Use spaces instead.
+ Tabs are not allowed. Use spaces instead.
+ Tabs are not allowed. Use spaces instead.
+ Tabs are not allowed. Use spaces instead.
+ Tabs are not allowed. Use spaces instead.
+ The class must have a documentation header.
+ The method must have a documentation header.
+ The file has no header, the header Xml is invalid, or the header is not located at the top of the file.
+ All using directives must be placed inside of the namespace.
+ All using directives must be placed inside of the namespace.
+ All using directives must be placed inside of the namespace.
+ All using directives must be placed inside of the namespace.
+ Tabs are not allowed. Use spaces instead.
+ Tabs are not allowed. Use spaces instead.
+ Tabs are not allowed. Use spaces instead.
+ Tabs are not allowed. Use spaces instead.
+ Tabs are not allowed. Use spaces instead.
+ Tabs are not allowed. Use spaces instead.
+ Tabs are not allowed. Use spaces instead.
+ Tabs are not allowed. Use spaces instead.
+ Tabs are not allowed. Use spaces instead.
+ Tabs are not allowed. Use spaces instead.
+ The method must have a documentation header.
+ The method must have a documentation header.
+ The method must have a documentation header.
+ The method must have a documentation header.
+ The property must have a documentation header.
+ The file has no header, the header Xml is invalid, or the header is not located at the top of the file.
+ If a statement spans multiple lines, the opening curly bracket must be placed on its own line.
+ If a statement spans multiple lines, the closing curly bracket must be placed on its own line.
+ If a statement spans multiple lines, the opening curly bracket must be placed on its own line.
+ If a statement spans multiple lines, the opening curly bracket must be placed on its own line.
+ If a statement spans multiple lines, the opening curly bracket must be placed on its own line.
+ If a statement spans multiple lines, the closing curly bracket must be placed on its own line.
+ If a statement spans multiple lines, the opening curly bracket must be placed on its own line.
+ If a statement spans multiple lines, the opening curly bracket must be placed on its own line.
+ If a statement spans multiple lines, the opening curly bracket must be placed on its own line.
+ Statements or elements wrapped in curly brackets must be followed by a blank line.
+ Statements or elements wrapped in curly brackets must be followed by a blank line.
+ The method must have an access modifier.
+ The method must have an access modifier.
+ The method must have an access modifier.
+ All using directives must be placed inside of the namespace.
+ All using directives must be placed inside of the namespace.
+ All using directives must be placed inside of the namespace.
+ All using directives must be placed inside of the namespace.
+ All using directives must be placed inside of the namespace.
+ All using directives must be placed inside of the namespace.
+ All methods must be placed after all properties.
+ A line may only contain a single statement.
+ A line may only contain a single statement.
+ The call to ShowStatus must begin with the 'this.' prefix to indicate that the item is a member of the class.
+ The call to FindStyleCopPathClick must begin with the 'this.' prefix to indicate that the item is a member of the class.
+ The call to ModifyStyleCopSettingsClick must begin with the 'this.' prefix to indicate that the item is a member of the class.
+ The call to ShowStatus must begin with the 'this.' prefix to indicate that the item is a member of the class.
+ Tabs are not allowed. Use spaces instead.
+ Tabs are not allowed. Use spaces instead.
+ Tabs are not allowed. Use spaces instead.
+ Tabs are not allowed. Use spaces instead.
+ Tabs are not allowed. Use spaces instead.
+ Tabs are not allowed. Use spaces instead.
+ Tabs are not allowed. Use spaces instead.
+ Tabs are not allowed. Use spaces instead.
+ Tabs are not allowed. Use spaces instead.
+ Tabs are not allowed. Use spaces instead.
+ Tabs are not allowed. Use spaces instead.
+ Tabs are not allowed. Use spaces instead.
+ Tabs are not allowed. Use spaces instead.
+ Tabs are not allowed. Use spaces instead.
+ Tabs are not allowed. Use spaces instead.
+ Tabs are not allowed. Use spaces instead.
+ Tabs are not allowed. Use spaces instead.
+ Tabs are not allowed. Use spaces instead.
+ Tabs are not allowed. Use spaces instead.
+ Tabs are not allowed. Use spaces instead.
+ Tabs are not allowed. Use spaces instead.
+ Tabs are not allowed. Use spaces instead.
+ Tabs are not allowed. Use spaces instead.
+ Tabs are not allowed. Use spaces instead.
+ Tabs are not allowed. Use spaces instead.
+ Tabs are not allowed. Use spaces instead.
+ Tabs are not allowed. Use spaces instead.
+ Tabs are not allowed. Use spaces instead.
+ Tabs are not allowed. Use spaces instead.
+ Tabs are not allowed. Use spaces instead.
+ Tabs are not allowed. Use spaces instead.
+ Tabs are not allowed. Use spaces instead.
+ Tabs are not allowed. Use spaces instead.
+ Tabs are not allowed. Use spaces instead.
+ Tabs are not allowed. Use spaces instead.
+ Tabs are not allowed. Use spaces instead.
+ Tabs are not allowed. Use spaces instead.
+ Tabs are not allowed. Use spaces instead.
+ Tabs are not allowed. Use spaces instead.
+ Tabs are not allowed. Use spaces instead.
+ Tabs are not allowed. Use spaces instead.
+ Tabs are not allowed. Use spaces instead.
+ Tabs are not allowed. Use spaces instead.
+ Tabs are not allowed. Use spaces instead.
+ Tabs are not allowed. Use spaces instead.
+ The spacing around the keyword 'using' is invalid.
+ Tabs are not allowed. Use spaces instead.
+ Tabs are not allowed. Use spaces instead.
+ Tabs are not allowed. Use spaces instead.
+ Tabs are not allowed. Use spaces instead.
+ Tabs are not allowed. Use spaces instead.
+ Tabs are not allowed. Use spaces instead.
+ Tabs are not allowed. Use spaces instead.
+ Tabs are not allowed. Use spaces instead.
+ Tabs are not allowed. Use spaces instead.
+ Tabs are not allowed. Use spaces instead.
+ Tabs are not allowed. Use spaces instead.
+ Tabs are not allowed. Use spaces instead.
+ Tabs are not allowed. Use spaces instead.
+ Tabs are not allowed. Use spaces instead.
+ The partial class element must have a documentation header containing either a summary tag or a content tag.
+ The field must have a documentation header.
+ The field must have a documentation header.
+ The field must have a documentation header.
+ The field must have a documentation header.
+ The field must have a documentation header.
+ The file has no header, the header Xml is invalid, or the header is not located at the top of the file.
+ If a statement spans multiple lines, the opening curly bracket must be placed on its own line.
+ If a statement spans multiple lines, the opening curly bracket must be placed on its own line.
+ Statements or elements wrapped in curly brackets must be followed by a blank line.
+ A single-line comment must be preceded by a blank line or another single-line comment, or must be the first item in its scope. To ignore this error when commenting out a line of code, begin the comment with '////' rather than '//'.
+ A single-line comment must be preceded by a blank line or another single-line comment, or must be the first item in its scope. To ignore this error when commenting out a line of code, begin the comment with '////' rather than '//'.
+ A single-line comment must be preceded by a blank line or another single-line comment, or must be the first item in its scope. To ignore this error when commenting out a line of code, begin the comment with '////' rather than '//'.
+ A single-line comment must be preceded by a blank line or another single-line comment, or must be the first item in its scope. To ignore this error when commenting out a line of code, begin the comment with '////' rather than '//'.
+ A single-line comment must be preceded by a blank line or another single-line comment, or must be the first item in its scope. To ignore this error when commenting out a line of code, begin the comment with '////' rather than '//'.
+ A single-line comment must be preceded by a blank line or another single-line comment, or must be the first item in its scope. To ignore this error when commenting out a line of code, begin the comment with '////' rather than '//'.
+ Statements or elements wrapped in curly brackets must be followed by a blank line.
+ The class must have an access modifier.
+ All methods must be placed after all fields.
+ All methods must be placed after all fields.
+ All methods must be placed after all fields.
+ All methods must be placed after all fields.
+ All methods must be placed after all fields.
+ The line contains unnecessary parenthesis.
+ The call to components must begin with the 'this.' prefix to indicate that the item is a member of the class.
+ The call to components must begin with the 'this.' prefix to indicate that the item is a member of the class.
+ The comment is empty. Add text to the comment or remove it.
+ The comment is empty. Add text to the comment or remove it.
+ The comment is empty. Add text to the comment or remove it.
+ The comment is empty. Add text to the comment or remove it.
+ The comment is empty. Add text to the comment or remove it.
+ The comment is empty. Add text to the comment or remove it.
+ The comment is empty. Add text to the comment or remove it.
+ The comment is empty. Add text to the comment or remove it.
+ The comment is empty. Add text to the comment or remove it.
+ The comment is empty. Add text to the comment or remove it.
+ The comment is empty. Add text to the comment or remove it.
+ The comment is empty. Add text to the comment or remove it.
+ Tabs are not allowed. Use spaces instead.
+ Tabs are not allowed. Use spaces instead.
+ Tabs are not allowed. Use spaces instead.
+ Tabs are not allowed. Use spaces instead.
+ Tabs are not allowed. Use spaces instead.
+ Tabs are not allowed. Use spaces instead.
+ Tabs are not allowed. Use spaces instead.
+ Tabs are not allowed. Use spaces instead.
+ Tabs are not allowed. Use spaces instead.
+ Tabs are not allowed. Use spaces instead.
+ Tabs are not allowed. Use spaces instead.
+ Tabs are not allowed. Use spaces instead.
+ Tabs are not allowed. Use spaces instead.
+ Tabs are not allowed. Use spaces instead.
+ Tabs are not allowed. Use spaces instead.
+ Tabs are not allowed. Use spaces instead.
+ Tabs are not allowed. Use spaces instead.
+ Tabs are not allowed. Use spaces instead.
+ Tabs are not allowed. Use spaces instead.
+ Tabs are not allowed. Use spaces instead.
+ Tabs are not allowed. Use spaces instead.
+ Tabs are not allowed. Use spaces instead.
+ Tabs are not allowed. Use spaces instead.
+ Tabs are not allowed. Use spaces instead.
+ Tabs are not allowed. Use spaces instead.
+ Tabs are not allowed. Use spaces instead.
+ Tabs are not allowed. Use spaces instead.
+ Tabs are not allowed. Use spaces instead.
+ Tabs are not allowed. Use spaces instead.
+ Tabs are not allowed. Use spaces instead.
+ Tabs are not allowed. Use spaces instead.
+ Tabs are not allowed. Use spaces instead.
+ Tabs are not allowed. Use spaces instead.
+ Tabs are not allowed. Use spaces instead.
+ Tabs are not allowed. Use spaces instead.
+ Tabs are not allowed. Use spaces instead.
+ Tabs are not allowed. Use spaces instead.
+ Tabs are not allowed. Use spaces instead.
+ Tabs are not allowed. Use spaces instead.
+ Tabs are not allowed. Use spaces instead.
+ Tabs are not allowed. Use spaces instead.
+ Tabs are not allowed. Use spaces instead.
+ Tabs are not allowed. Use spaces instead.
+ Tabs are not allowed. Use spaces instead.
+ Tabs are not allowed. Use spaces instead.
+ Tabs are not allowed. Use spaces instead.
+ Tabs are not allowed. Use spaces instead.
+ Tabs are not allowed. Use spaces instead.
+ Tabs are not allowed. Use spaces instead.
+ Tabs are not allowed. Use spaces instead.
+ Tabs are not allowed. Use spaces instead.
+ Tabs are not allowed. Use spaces instead.
+ Tabs are not allowed. Use spaces instead.
+ Tabs are not allowed. Use spaces instead.
+ Tabs are not allowed. Use spaces instead.
+ Tabs are not allowed. Use spaces instead.
+ Tabs are not allowed. Use spaces instead.
+ Tabs are not allowed. Use spaces instead.
+ Tabs are not allowed. Use spaces instead.
+ Tabs are not allowed. Use spaces instead.
+ Tabs are not allowed. Use spaces instead.
+ Tabs are not allowed. Use spaces instead.
+ Tabs are not allowed. Use spaces instead.
+ Tabs are not allowed. Use spaces instead.
+ Tabs are not allowed. Use spaces instead.
+ Tabs are not allowed. Use spaces instead.
+ Tabs are not allowed. Use spaces instead.
+ Tabs are not allowed. Use spaces instead.
+ Tabs are not allowed. Use spaces instead.
+ Tabs are not allowed. Use spaces instead.
+ Tabs are not allowed. Use spaces instead.
+ Tabs are not allowed. Use spaces instead.
+ Tabs are not allowed. Use spaces instead.
+ Tabs are not allowed. Use spaces instead.
+ Tabs are not allowed. Use spaces instead.
+ Tabs are not allowed. Use spaces instead.
+ Tabs are not allowed. Use spaces instead.
+ Tabs are not allowed. Use spaces instead.
+ Tabs are not allowed. Use spaces instead.
+ Tabs are not allowed. Use spaces instead.
+ Tabs are not allowed. Use spaces instead.
+ Tabs are not allowed. Use spaces instead.
+ Tabs are not allowed. Use spaces instead.
+ Tabs are not allowed. Use spaces instead.
+ Tabs are not allowed. Use spaces instead.
+ Tabs are not allowed. Use spaces instead.
+ Tabs are not allowed. Use spaces instead.
+ Tabs are not allowed. Use spaces instead.
+ Tabs are not allowed. Use spaces instead.
+ The partial class element must have a documentation header containing either a summary tag or a content tag.
+ The constructor must have a documentation header.
+ The property must have a documentation header.
+ The property must have a documentation header.
+ The property must have a documentation header.
+ The property must have a documentation header.
+ The method must have a documentation header.
+ The class must have a documentation header.
+ The field must have a documentation header.
+ The constructor must have a documentation header.
+ The method must have a documentation header.
+ The method must have a documentation header.
+ The event must have a documentation header.
+ The method must have a documentation header.
+ The method must have a documentation header.
+ The file has no header, the header Xml is invalid, or the header is not located at the top of the file.
+ If a statement spans multiple lines, the opening curly bracket must be placed on its own line.
+ If a statement spans multiple lines, the opening curly bracket must be placed on its own line.
+ If a statement spans multiple lines, the opening curly bracket must be placed on its own line.
+ If a statement spans multiple lines, the opening curly bracket must be placed on its own line.
+ If a statement spans multiple lines, the opening curly bracket must be placed on its own line.
+ If a statement spans multiple lines, the opening curly bracket must be placed on its own line.
+ If a statement spans multiple lines, the opening curly bracket must be placed on its own line.
+ If a statement spans multiple lines, the opening curly bracket must be placed on its own line.
+ An opening curly bracket must not be followed by a blank line.
+ The code must not contain multiple blank lines in a row.
+ An opening curly bracket must not be followed by a blank line.
+ A closing curly bracket must not be preceded by a blank line.
+ The class must have an access modifier.
+ The field must have an access modifier.
+ The method must have an access modifier.
+ All using directives must be placed inside of the namespace.
+ All using directives must be placed inside of the namespace.
+ All using directives must be placed inside of the namespace.
+ All using directives must be placed inside of the namespace.
+ All using directives must be placed inside of the namespace.
+ All using directives must be placed inside of the namespace.
+ All using directives must be placed inside of the namespace.
+ All using directives must be placed inside of the namespace.
+ All using directives must be placed inside of the namespace.
+ All properties must be placed after all events.
+ All classes must be placed after all methods.
+ All classes must be placed after all methods.
+ The call to InitializeComponent must begin with the 'this.' prefix to indicate that the item is a member of the class.
+ The call to enableCheckBox must begin with the 'this.' prefix to indicate that the item is a member of the class.
+ The call to enableCheckBox must begin with the 'this.' prefix to indicate that the item is a member of the class.
+ The call to settingsFileTextBox must begin with the 'this.' prefix to indicate that the item is a member of the class.
+ The call to browseButton must begin with the 'this.' prefix to indicate that the item is a member of the class.
+ The call to modifyStyleCopSettingsButton must begin with the 'this.' prefix to indicate that the item is a member of the class.
+ The call to OptionChanged must begin with the 'this.' prefix to indicate that the item is a member of the class.
+ The call to OptionChanged must begin with the 'this.' prefix to indicate that the item is a member of the class.
+ The call to settingsFileTextBox must begin with the 'this.' prefix to indicate that the item is a member of the class.
+ The call to openFileDialog1 must begin with the 'this.' prefix to indicate that the item is a member of the class.
+ The comment is empty. Add text to the comment or remove it.
+ The comment is empty. Add text to the comment or remove it.
+ Tabs are not allowed. Use spaces instead.
+ Tabs are not allowed. Use spaces instead.
+ Tabs are not allowed. Use spaces instead.
+ Tabs are not allowed. Use spaces instead.
+ Tabs are not allowed. Use spaces instead.
+ Tabs are not allowed. Use spaces instead.
+ Tabs are not allowed. Use spaces instead.
+ Tabs are not allowed. Use spaces instead.
+ Tabs are not allowed. Use spaces instead.
+ Tabs are not allowed. Use spaces instead.
+ Tabs are not allowed. Use spaces instead.
+ Tabs are not allowed. Use spaces instead.
+ Tabs are not allowed. Use spaces instead.
+ Tabs are not allowed. Use spaces instead.
+ Tabs are not allowed. Use spaces instead.
+ Tabs are not allowed. Use spaces instead.
+ Tabs are not allowed. Use spaces instead.
+ Tabs are not allowed. Use spaces instead.
+ Tabs are not allowed. Use spaces instead.
+ Tabs are not allowed. Use spaces instead.
+ Tabs are not allowed. Use spaces instead.
+ Tabs are not allowed. Use spaces instead.
+ Tabs are not allowed. Use spaces instead.
+ Tabs are not allowed. Use spaces instead.
+ Tabs are not allowed. Use spaces instead.
+ Tabs are not allowed. Use spaces instead.
+ Tabs are not allowed. Use spaces instead.
+ Tabs are not allowed. Use spaces instead.
+ Tabs are not allowed. Use spaces instead.
+ Tabs are not allowed. Use spaces instead.
+ Tabs are not allowed. Use spaces instead.
+ Tabs are not allowed. Use spaces instead.
+ Tabs are not allowed. Use spaces instead.
+ Tabs are not allowed. Use spaces instead.
+ Tabs are not allowed. Use spaces instead.
+ Tabs are not allowed. Use spaces instead.
+ Tabs are not allowed. Use spaces instead.
+ Tabs are not allowed. Use spaces instead.
+ Tabs are not allowed. Use spaces instead.
+ Tabs are not allowed. Use spaces instead.
+ Tabs are not allowed. Use spaces instead.
+ Tabs are not allowed. Use spaces instead.
+ Tabs are not allowed. Use spaces instead.
+ Tabs are not allowed. Use spaces instead.
+ Tabs are not allowed. Use spaces instead.
+ Tabs are not allowed. Use spaces instead.
+ Tabs are not allowed. Use spaces instead.
+ Tabs are not allowed. Use spaces instead.
+ Tabs are not allowed. Use spaces instead.
+ Tabs are not allowed. Use spaces instead.
+ Tabs are not allowed. Use spaces instead.
+ Tabs are not allowed. Use spaces instead.
+ Tabs are not allowed. Use spaces instead.
+ Tabs are not allowed. Use spaces instead.
+ Tabs are not allowed. Use spaces instead.
+ Tabs are not allowed. Use spaces instead.
+ Tabs are not allowed. Use spaces instead.
+ Tabs are not allowed. Use spaces instead.
+ Tabs are not allowed. Use spaces instead.
+ Tabs are not allowed. Use spaces instead.
+ Tabs are not allowed. Use spaces instead.
+ Tabs are not allowed. Use spaces instead.
+ Tabs are not allowed. Use spaces instead.
+ Tabs are not allowed. Use spaces instead.
+ Tabs are not allowed. Use spaces instead.
+ Tabs are not allowed. Use spaces instead.
+ Tabs are not allowed. Use spaces instead.
+ Tabs are not allowed. Use spaces instead.
+ Tabs are not allowed. Use spaces instead.
+ Tabs are not allowed. Use spaces instead.
+ Tabs are not allowed. Use spaces instead.
+ The spacing around the keyword 'if' is invalid.
+ Tabs are not allowed. Use spaces instead.
+ Tabs are not allowed. Use spaces instead.
+ Tabs are not allowed. Use spaces instead.
+ Tabs are not allowed. Use spaces instead.
+ Tabs are not allowed. Use spaces instead.
+
\ No newline at end of file
diff --git a/src/AddIns/Misc/SourceAnalysis/Src/AnalysisIdeOptionsPanel.cs b/src/AddIns/Misc/SourceAnalysis/Src/AnalysisIdeOptionsPanel.cs
new file mode 100644
index 0000000000..5f89ba39b3
--- /dev/null
+++ b/src/AddIns/Misc/SourceAnalysis/Src/AnalysisIdeOptionsPanel.cs
@@ -0,0 +1,79 @@
+//
+//
+//
+//
+// $Revision$
+//
+
+using System;
+using System.IO;
+using System.Windows.Forms;
+using System.Diagnostics;
+
+using ICSharpCode.Core;
+using ICSharpCode.SharpDevelop.Gui;
+
+namespace MattEverson.SourceAnalysis
+{
+ ///
+ /// Option panel to choose the StyleCop path from.
+ ///
+ public class AnalysisIdeOptionsPanel : AbstractOptionPanel
+ {
+ public override void LoadPanelContents()
+ {
+ SetupFromXmlStream(this.GetType().Assembly.GetManifestResourceStream("MattEverson.SourceAnalysis.Resources.AnalysisIdeOptionPanel.xfrm"));
+
+ ShowStatus();
+ Get