diff --git a/src/AddIns/Analysis/CodeAnalysis/CodeAnalysis.addin b/src/AddIns/Analysis/CodeAnalysis/CodeAnalysis.addin
index c425dff52b..3c129771c6 100644
--- a/src/AddIns/Analysis/CodeAnalysis/CodeAnalysis.addin
+++ b/src/AddIns/Analysis/CodeAnalysis/CodeAnalysis.addin
@@ -62,8 +62,8 @@
-
+ class = "ICSharpCode.CodeAnalysis.AnalysisIdeOptionsPanel"/>
diff --git a/src/AddIns/Analysis/CodeAnalysis/CodeAnalysis.csproj b/src/AddIns/Analysis/CodeAnalysis/CodeAnalysis.csproj
index 03f8e2d14c..7d36df78b8 100644
--- a/src/AddIns/Analysis/CodeAnalysis/CodeAnalysis.csproj
+++ b/src/AddIns/Analysis/CodeAnalysis/CodeAnalysis.csproj
@@ -60,8 +60,8 @@
Configuration\GlobalAssemblyInfo.cs
-
- AnalysisIdeOptionsPanelXaml.xaml
+
+ AnalysisIdeOptionsPanel.xaml
Code
@@ -118,7 +118,7 @@
-
+
diff --git a/src/AddIns/Analysis/CodeAnalysis/Src/AnalysisIdeOptionsPanelXaml.xaml b/src/AddIns/Analysis/CodeAnalysis/Src/AnalysisIdeOptionsPanel.xaml
similarity index 98%
rename from src/AddIns/Analysis/CodeAnalysis/Src/AnalysisIdeOptionsPanelXaml.xaml
rename to src/AddIns/Analysis/CodeAnalysis/Src/AnalysisIdeOptionsPanel.xaml
index 314430dfae..59fe0c8600 100644
--- a/src/AddIns/Analysis/CodeAnalysis/Src/AnalysisIdeOptionsPanelXaml.xaml
+++ b/src/AddIns/Analysis/CodeAnalysis/Src/AnalysisIdeOptionsPanel.xaml
@@ -1,4 +1,4 @@
-
+ /// Interaction logic for AnalysisIdeOptionsPanelXaml.xaml
+ ///
+ public partial class AnalysisIdeOptionsPanel : OptionPanel
+ {
+ public AnalysisIdeOptionsPanel()
+ {
+ InitializeComponent();
+ ShowStatus();
+ }
+
+
+ private void ShowStatus()
+ {
+ string path = FxCopWrapper.FindFxCopPath();
+ if (path == null) {
+ status.Text = StringParser.Parse("${res:ICSharpCode.CodeAnalysis.IdeOptions.FxCopNotFound}");
+ } else {
+ status.Text = StringParser.Parse("${res:ICSharpCode.CodeAnalysis.IdeOptions.FxCopFoundInPath}")
+ + Environment.NewLine + path;
+ }
+ }
+
+
+ private void FindFxCopPath_Click(object sender, System.Windows.RoutedEventArgs e)
+ {
+ string s = OptionsHelper.OpenFile("${res:SharpDevelop.FileFilter.ExecutableFiles}|*.exe;");
+ if (!String.IsNullOrEmpty(s)) {
+ string path = Path.GetDirectoryName(s);
+ if (FxCopWrapper.IsFxCopPath(path)) {
+ FxCopPath = path;
+ } else {
+ MessageService.ShowError("${res:ICSharpCode.CodeAnalysis.IdeOptions.DirectoryDoesNotContainFxCop}");
+ }
+ }
+ ShowStatus();
+ }
+
+
+ public static string FxCopPath {
+ get {
+ return PropertyService.Get("CodeAnalysis.FxCopPath");
+ }
+ set {
+ PropertyService.Set("CodeAnalysis.FxCopPath", value);
+ }
+ }
+ }
+}
\ No newline at end of file
diff --git a/src/AddIns/Analysis/CodeAnalysis/Src/old_AnalysisIdeOptionsPanel.cs b/src/AddIns/Analysis/CodeAnalysis/Src/old_AnalysisIdeOptionsPanel.cs
index 3dd2bc63d5..f98c43f708 100644
--- a/src/AddIns/Analysis/CodeAnalysis/Src/old_AnalysisIdeOptionsPanel.cs
+++ b/src/AddIns/Analysis/CodeAnalysis/Src/old_AnalysisIdeOptionsPanel.cs
@@ -13,7 +13,7 @@ namespace ICSharpCode.CodeAnalysis
///
/// Option panel to choose the FxCop path from.
///
- public class AnalysisIdeOptionsPanel : XmlFormsOptionPanel
+ public class old_AnalysisIdeOptionsPanel : XmlFormsOptionPanel
{
public override void LoadPanelContents()
{