diff --git a/src/AddIns/Analysis/CodeCoverage/Project/CodeCoverage.addin b/src/AddIns/Analysis/CodeCoverage/Project/CodeCoverage.addin
index 7b2ab73202..a0421426ee 100644
--- a/src/AddIns/Analysis/CodeCoverage/Project/CodeCoverage.addin
+++ b/src/AddIns/Analysis/CodeCoverage/Project/CodeCoverage.addin
@@ -52,6 +52,8 @@
label = "${res:ICSharpCode.UnitTesting.CodeCoverage}"
insertafter = "CodeAnalysisOptionPanel"
class = "ICSharpCode.CodeCoverage.CodeCoverageOptionsPanel"/>
+
+
@@ -108,6 +110,7 @@
+
diff --git a/src/AddIns/Analysis/CodeCoverage/Project/CodeCoverage.csproj b/src/AddIns/Analysis/CodeCoverage/Project/CodeCoverage.csproj
index c763fe5e61..a146ac0c4a 100644
--- a/src/AddIns/Analysis/CodeCoverage/Project/CodeCoverage.csproj
+++ b/src/AddIns/Analysis/CodeCoverage/Project/CodeCoverage.csproj
@@ -60,6 +60,10 @@
+
+ CodeCoverageProjectOptionsPanel.xaml
+ Code
+
@@ -94,8 +98,6 @@
-
-
@@ -127,6 +129,11 @@
ICSharpCode.Core
False
+
+ {7E4A7172-7FF5-48D0-B719-7CD959DD1AC9}
+ ICSharpCode.Core.Presentation
+ False
+
{857CA1A3-FC88-4BE0-AB6A-D1EE772AB288}
ICSharpCode.Core.WinForms
@@ -143,5 +150,8 @@
False
+
+
+
\ No newline at end of file
diff --git a/src/AddIns/Analysis/CodeCoverage/Project/Resources/CodeCoverageProjectOptionsPanel.xfrm b/src/AddIns/Analysis/CodeCoverage/Project/Resources/CodeCoverageProjectOptionsPanel.xfrm
deleted file mode 100644
index 6e5649c73b..0000000000
--- a/src/AddIns/Analysis/CodeCoverage/Project/Resources/CodeCoverageProjectOptionsPanel.xfrm
+++ /dev/null
@@ -1,47 +0,0 @@
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
\ No newline at end of file
diff --git a/src/AddIns/Analysis/CodeCoverage/Project/Src/CodeCoverageProjectOptionsPanel.cs b/src/AddIns/Analysis/CodeCoverage/Project/Src/CodeCoverageProjectOptionsPanel.cs
deleted file mode 100644
index 09420d2ec5..0000000000
--- a/src/AddIns/Analysis/CodeCoverage/Project/Src/CodeCoverageProjectOptionsPanel.cs
+++ /dev/null
@@ -1,101 +0,0 @@
-// Copyright (c) AlphaSierraPapa for the SharpDevelop Team (for details please see \doc\copyright.txt)
-// This code is distributed under the GNU LGPL (for details please see \doc\license.txt)
-
-using System;
-using System.Collections.Generic;
-using System.Collections.Specialized;
-using System.IO;
-using System.Text;
-using System.Windows.Forms;
-
-using ICSharpCode.SharpDevelop.Gui.OptionPanels;
-
-namespace ICSharpCode.CodeCoverage
-{
- public class CodeCoverageProjectOptionsPanel : AbstractXmlFormsProjectOptionPanel
- {
- static readonly string IncludeListTextBoxName = "includeListTextBox";
- static readonly string ExcludeListTextBoxName = "excludeListTextBox";
-
- TextBox includeListTextBox;
- TextBox excludeListTextBox;
-
- public CodeCoverageProjectOptionsPanel()
- {
- }
-
- public override void LoadPanelContents()
- {
- SetupFromXmlStream(this.GetType().Assembly.GetManifestResourceStream("ICSharpCode.CodeCoverage.Resources.CodeCoverageProjectOptionsPanel.xfrm"));
- InitializeHelper();
-
- includeListTextBox = (TextBox)ControlDictionary[IncludeListTextBoxName];
- excludeListTextBox = (TextBox)ControlDictionary[ExcludeListTextBoxName];
-
- ReadPartCoverSettings();
-
- includeListTextBox.TextChanged += TextBoxTextChanged;
- excludeListTextBox.TextChanged += TextBoxTextChanged;
- }
-
- public override bool StorePanelContents()
- {
- SavePartCoverSettings();
- IsDirty = false;
- return true;
- }
-
- void TextBoxTextChanged(object sender, EventArgs e)
- {
- IsDirty = true;
- }
-
- void SavePartCoverSettings()
- {
- PartCoverSettings settings = new PartCoverSettings();
- settings.Include.AddRange(RemoveEmptyStrings(includeListTextBox.Lines));
- settings.Exclude.AddRange(RemoveEmptyStrings(excludeListTextBox.Lines));
- settings.Save(PartCoverSettings.GetFileName(project));
- }
-
- void ReadPartCoverSettings()
- {
- string settingsFileName = PartCoverSettings.GetFileName(project);
- if (File.Exists(settingsFileName)) {
- PartCoverSettings settings = new PartCoverSettings(settingsFileName);
- includeListTextBox.Text = ConvertToMultLineString(settings.Include);
- excludeListTextBox.Text = ConvertToMultLineString(settings.Exclude);
- }
- }
-
- ///
- /// Each item in the string collection is added as a separate line
- /// followed by a carriage return and line feed except the last
- /// item.
- ///
- static string ConvertToMultLineString(StringCollection items)
- {
- StringBuilder text = new StringBuilder();
- foreach (String item in items) {
- text.Append(item);
- text.Append("\r\n");
- }
- return text.ToString().Trim();
- }
-
- ///
- /// Creates a new string array but with any lines that are empty
- /// in the original lines array removed from it.
- ///
- static string[] RemoveEmptyStrings(string[] lines)
- {
- List convertedLines = new List();
- foreach (string line in lines) {
- if (line.Trim().Length > 0) {
- convertedLines.Add(line);
- }
- }
- return convertedLines.ToArray();
- }
- }
-}
diff --git a/src/AddIns/Analysis/CodeCoverage/Project/Src/CodeCoverageProjectOptionsPanel.xaml b/src/AddIns/Analysis/CodeCoverage/Project/Src/CodeCoverageProjectOptionsPanel.xaml
new file mode 100644
index 0000000000..ab89d715c0
--- /dev/null
+++ b/src/AddIns/Analysis/CodeCoverage/Project/Src/CodeCoverageProjectOptionsPanel.xaml
@@ -0,0 +1,35 @@
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
\ No newline at end of file
diff --git a/src/AddIns/Analysis/CodeCoverage/Project/Src/CodeCoverageProjectOptionsPanel.xaml.cs b/src/AddIns/Analysis/CodeCoverage/Project/Src/CodeCoverageProjectOptionsPanel.xaml.cs
new file mode 100644
index 0000000000..7ee67cb76f
--- /dev/null
+++ b/src/AddIns/Analysis/CodeCoverage/Project/Src/CodeCoverageProjectOptionsPanel.xaml.cs
@@ -0,0 +1,89 @@
+/*
+ * Created by SharpDevelop.
+ * User: Peter Forstmeier
+ * Date: 09.06.2012
+ * Time: 15:01
+ * To change this template use Tools | Options | Coding | Edit Standard Headers.
+ */
+using System;
+using System.Collections.Specialized;
+using System.IO;
+using System.Text;
+using System.Windows.Controls;
+
+using ICSharpCode.SharpDevelop.Gui.OptionPanels;
+using ICSharpCode.SharpDevelop.Project;
+
+namespace ICSharpCode.CodeCoverage
+{
+ ///
+ /// Interaction logic for CodeCoverageOptionsPanelXaml.xaml
+ ///
+ public partial class CodeCoverageProjectOptionsPanel : ProjectOptionPanel
+ {
+ public CodeCoverageProjectOptionsPanel()
+ {
+ InitializeComponent();
+ }
+
+ protected override void Load(MSBuildBasedProject project, string configuration, string platform)
+ {
+ ReadPartCoverSettings();
+ base.Load(project, configuration, platform);
+ }
+
+
+ protected override bool Save(MSBuildBasedProject project, string configuration, string platform)
+ {
+ SavePartCoverSettings();
+ return base.Save(project, configuration, platform);
+ }
+
+
+ void ReadPartCoverSettings()
+ {
+ string settingsFileName = PartCoverSettings.GetFileName(base.Project);
+ if (File.Exists(settingsFileName)) {
+ PartCoverSettings settings = new PartCoverSettings(settingsFileName);
+ includeListTextBox.Text = ConvertToMultLineString(settings.Include);
+ excludeListTextBox.Text = ConvertToMultLineString(settings.Exclude);
+ }
+ }
+
+
+ private void SavePartCoverSettings()
+ {
+ PartCoverSettings settings = new PartCoverSettings();
+ settings.Include.AddRange(MakeStringArray(includeListTextBox.Text));
+ settings.Exclude.AddRange(MakeStringArray(excludeListTextBox.Text));
+ settings.Save(PartCoverSettings.GetFileName(base.Project));
+ }
+
+
+ private string[] MakeStringArray(string str)
+ {
+ return str.Split(new char[]{'\r','\n'}, StringSplitOptions.RemoveEmptyEntries);
+ }
+
+ ///
+ /// Each item in the string collection is added as a separate line
+ /// followed by a carriage return and line feed except the last
+ /// item.
+ ///
+ private static string ConvertToMultLineString(StringCollection items)
+ {
+ StringBuilder text = new StringBuilder();
+ foreach (String item in items) {
+ text.Append(item);
+ text.Append("\r\n");
+ }
+ return text.ToString().Trim();
+ }
+
+
+ void TextBox_TextChanged(object sender, TextChangedEventArgs e)
+ {
+ IsDirty = true;
+ }
+ }
+}
\ No newline at end of file
diff --git a/src/AddIns/BackendBindings/CppBinding/CppBinding/CppBinding.csproj b/src/AddIns/BackendBindings/CppBinding/CppBinding/CppBinding.csproj
index 78a513458c..72fba9f328 100644
--- a/src/AddIns/BackendBindings/CppBinding/CppBinding/CppBinding.csproj
+++ b/src/AddIns/BackendBindings/CppBinding/CppBinding/CppBinding.csproj
@@ -137,6 +137,7 @@
{7E4A7172-7FF5-48D0-B719-7CD959DD1AC9}
ICSharpCode.Core.Presentation
+ False
{924EE450-603D-49C1-A8E5-4AFAA31CE6F3}
@@ -146,6 +147,7 @@
{8035765F-D51F-4A0C-A746-2FD100E19419}
ICSharpCode.SharpDevelop.Widgets
+ False