diff --git a/src/Main/Base/Project/ICSharpCode.SharpDevelop.addin b/src/Main/Base/Project/ICSharpCode.SharpDevelop.addin
index 6fb67b8f65..f6d455093e 100755
--- a/src/Main/Base/Project/ICSharpCode.SharpDevelop.addin
+++ b/src/Main/Base/Project/ICSharpCode.SharpDevelop.addin
@@ -1258,6 +1258,11 @@
+
+
+
diff --git a/src/Main/Base/Project/ICSharpCode.SharpDevelop.csproj b/src/Main/Base/Project/ICSharpCode.SharpDevelop.csproj
index e03a3c9bbd..239d017d7b 100644
--- a/src/Main/Base/Project/ICSharpCode.SharpDevelop.csproj
+++ b/src/Main/Base/Project/ICSharpCode.SharpDevelop.csproj
@@ -225,6 +225,10 @@
AbstractAttachToProcessForm.cs
+
+ OutputWindowOptionsPanelXaml.xaml
+ Code
+
@@ -843,6 +847,7 @@
+
diff --git a/src/Main/Base/Project/Src/Gui/Dialogs/OptionPanels/OutputWindowOptionsPanelXaml.xaml b/src/Main/Base/Project/Src/Gui/Dialogs/OptionPanels/OutputWindowOptionsPanelXaml.xaml
new file mode 100644
index 0000000000..04a4ec4b44
--- /dev/null
+++ b/src/Main/Base/Project/Src/Gui/Dialogs/OptionPanels/OutputWindowOptionsPanelXaml.xaml
@@ -0,0 +1,18 @@
+
+
+
+
+
+
+
+
+
+
+
+
\ No newline at end of file
diff --git a/src/Main/Base/Project/Src/Gui/Dialogs/OptionPanels/OutputWindowOptionsPanelXaml.xaml.cs b/src/Main/Base/Project/Src/Gui/Dialogs/OptionPanels/OutputWindowOptionsPanelXaml.xaml.cs
new file mode 100644
index 0000000000..5f0ec57988
--- /dev/null
+++ b/src/Main/Base/Project/Src/Gui/Dialogs/OptionPanels/OutputWindowOptionsPanelXaml.xaml.cs
@@ -0,0 +1,76 @@
+/*
+ * Created by SharpDevelop.
+ * User: Peter Forstmeier
+ * Date: 27.12.2012
+ * Time: 19:36
+ *
+ * To change this template use Tools | Options | Coding | Edit Standard Headers.
+ */
+using System;
+using System.Drawing;
+using ICSharpCode.Core;
+
+namespace ICSharpCode.SharpDevelop.Gui.OptionPanels
+{
+ ///
+ /// Interaction logic for OutputWindowOptionsPanelXaml.xaml
+ ///
+ public partial class OutputWindowOptionsPanelXaml : OptionPanel
+ {
+ private static readonly string OutputWindowsProperty = "SharpDevelop.UI.OutputWindowOptions";
+
+ public OutputWindowOptionsPanelXaml()
+ {
+ InitializeComponent();
+ this.DataContext = this;
+ }
+
+
+ public override void LoadOptions()
+ {
+ base.LoadOptions();
+ var properties = PropertyService.NestedProperties(OutputWindowsProperty);
+ WordWrap = properties.Get("WordWrap", true);
+ var fontStr = properties.Get("DefaultFont", SD.WinForms.DefaultMonospacedFont.ToString()).ToString();
+ var font = ParseFont(fontStr);
+ fontSelectionPanel.SelectedFontFamily = new System.Windows.Media.FontFamily(font.Name);
+ fontSelectionPanel.SelectedFontSize = (int)font.Size;
+ font.Dispose();
+ }
+
+
+ private static Font ParseFont(string font)
+ {
+ try {
+ string[] descr = font.Split(new char[]{',', '='});
+ return new Font(descr[1], Single.Parse(descr[3]));
+ } catch (Exception ex) {
+ LoggingService.Warn(ex);
+ return SD.WinForms.DefaultMonospacedFont;
+ }
+ }
+
+
+ public override bool SaveOptions()
+ {
+ var properties = PropertyService.NestedProperties(OutputWindowsProperty);
+ properties.Set("WordWrap", WordWrap);
+
+ var font = new Font(new System.Drawing.FontFamily(fontSelectionPanel.SelectedFontName),
+ (float)fontSelectionPanel.SelectedFontSize);
+ Console.WriteLine(font.ToString());
+ font.Dispose();
+ return base.SaveOptions();
+ }
+
+
+ bool wordWrap;
+
+ public bool WordWrap {
+ get { return wordWrap; }
+ set { wordWrap = value;
+ base.RaisePropertyChanged(() => WordWrap);}
+ }
+
+ }
+}
\ No newline at end of file