From 493b4d0fe4c7cea733d06d5c5e6fd04ed5a36927 Mon Sep 17 00:00:00 2001 From: Ivan Shumilin Date: Thu, 31 Jul 2008 08:42:35 +0000 Subject: [PATCH] Initial upload for XamlDesigner (successor of StandaloneDesigner). git-svn-id: svn://svn.sharpdevelop.net/sharpdevelop/trunk@3267 1ccf3a8d-04fe-1044-b7c0-cef0b8235c61 --- .../Project/Controls/ControlStyles.xaml | 6 +- .../Project/Controls/DragListener.cs | 38 +-- .../Project/Controls/NumericUpDown.cs | 69 +++-- .../Project/Controls/NumericUpDown.xaml | 2 + .../Project/ExtensionMethods.cs | 7 - .../Editors/BrushEditor/BrushEditor.cs | 35 ++- .../PropertyGrid/Editors/NumberEditor.xaml.cs | 13 + .../PropertyGrid/PropertyGridView.xaml.cs | 17 ++ .../Project/Services/CreateComponentTool.cs | 6 +- .../Project/Services/OptionService.cs | 2 +- .../Project/Services/SelectionService.cs | 22 +- .../Project/Services/UndoService.cs | 12 + .../Project/Xaml/XamlModelProperty.cs | 15 +- .../Project/MarkupExtensionParser.cs | 1 + .../DisplayBindings/WpfDesign/WpfDesign.sln | 6 + .../Project/PropertyGrid/PropertyNode.cs | 14 +- .../WpfDesign/XamlDesigner/ActionManager.cs | 181 ++++++++++++ .../WpfDesign/XamlDesigner/App.xaml | 22 ++ .../WpfDesign/XamlDesigner/App.xaml.cs | 37 +++ .../WpfDesign/XamlDesigner/BitmapButton.xaml | 32 +++ .../XamlDesigner/BitmapButton.xaml.cs | 45 +++ .../Configuration/AssemblyInfo.cs | 33 +++ .../Configuration/Settings.Designer.cs | 110 ++++++++ .../Configuration/Settings.settings | 46 +++ .../XamlDesigner/Configuration/app.config | 51 ++++ .../XamlDesigner/Configuration/app.manifest | 29 ++ .../WpfDesign/XamlDesigner/Converters.cs | 53 ++++ .../WpfDesign/XamlDesigner/Document.cs | 212 ++++++++++++++ .../WpfDesign/XamlDesigner/DocumentView.xaml | 40 +++ .../XamlDesigner/DocumentView.xaml.cs | 26 ++ .../WpfDesign/XamlDesigner/DragListener.cs | 57 ++++ .../XamlDesigner/ExtensionMethods.cs | 93 ++++++ .../XamlDesigner/Images/Reference.png | Bin 0 -> 1282 bytes .../WpfDesign/XamlDesigner/Images/Tag.png | Bin 0 -> 389 bytes .../XamlDesigner/Libraries/AvalonDock.dll | Bin 0 -> 115200 bytes .../Libraries/ICSharpCode.TextEditor.dll | Bin 0 -> 385024 bytes .../WpfDesign/XamlDesigner/MainWindow.xaml | 118 ++++++++ .../WpfDesign/XamlDesigner/MainWindow.xaml.cs | 181 ++++++++++++ .../XamlDesigner/MainWindow_Commands.cs | 71 +++++ .../XamlDesigner/NewFileTemplate.xaml | 4 + .../WpfDesign/XamlDesigner/Outline.xaml | 107 +++++++ .../WpfDesign/XamlDesigner/Outline.xaml.cs | 24 ++ .../WpfDesign/XamlDesigner/OutlineTree.cs | 267 ++++++++++++++++++ .../WpfDesign/XamlDesigner/Shell.cs | 238 ++++++++++++++++ .../WpfDesign/XamlDesigner/SimpleCommand.cs | 27 ++ .../WpfDesign/XamlDesigner/TestFiles/1.xaml | 31 ++ .../WpfDesign/XamlDesigner/TestFiles/2.xaml | 41 +++ .../WpfDesign/XamlDesigner/Toolbox.cs | 101 +++++++ .../WpfDesign/XamlDesigner/ToolboxView.xaml | 43 +++ .../XamlDesigner/ToolboxView.xaml.cs | 69 +++++ .../XamlDesigner/XamlDesigner.csproj | 168 +++++++++++ .../WpfDesign/XamlDesigner/XamlFormatter.cs | 204 +++++++++++++ 52 files changed, 2933 insertions(+), 93 deletions(-) create mode 100644 src/AddIns/DisplayBindings/WpfDesign/XamlDesigner/ActionManager.cs create mode 100644 src/AddIns/DisplayBindings/WpfDesign/XamlDesigner/App.xaml create mode 100644 src/AddIns/DisplayBindings/WpfDesign/XamlDesigner/App.xaml.cs create mode 100644 src/AddIns/DisplayBindings/WpfDesign/XamlDesigner/BitmapButton.xaml create mode 100644 src/AddIns/DisplayBindings/WpfDesign/XamlDesigner/BitmapButton.xaml.cs create mode 100644 src/AddIns/DisplayBindings/WpfDesign/XamlDesigner/Configuration/AssemblyInfo.cs create mode 100644 src/AddIns/DisplayBindings/WpfDesign/XamlDesigner/Configuration/Settings.Designer.cs create mode 100644 src/AddIns/DisplayBindings/WpfDesign/XamlDesigner/Configuration/Settings.settings create mode 100644 src/AddIns/DisplayBindings/WpfDesign/XamlDesigner/Configuration/app.config create mode 100644 src/AddIns/DisplayBindings/WpfDesign/XamlDesigner/Configuration/app.manifest create mode 100644 src/AddIns/DisplayBindings/WpfDesign/XamlDesigner/Converters.cs create mode 100644 src/AddIns/DisplayBindings/WpfDesign/XamlDesigner/Document.cs create mode 100644 src/AddIns/DisplayBindings/WpfDesign/XamlDesigner/DocumentView.xaml create mode 100644 src/AddIns/DisplayBindings/WpfDesign/XamlDesigner/DocumentView.xaml.cs create mode 100644 src/AddIns/DisplayBindings/WpfDesign/XamlDesigner/DragListener.cs create mode 100644 src/AddIns/DisplayBindings/WpfDesign/XamlDesigner/ExtensionMethods.cs create mode 100644 src/AddIns/DisplayBindings/WpfDesign/XamlDesigner/Images/Reference.png create mode 100644 src/AddIns/DisplayBindings/WpfDesign/XamlDesigner/Images/Tag.png create mode 100644 src/AddIns/DisplayBindings/WpfDesign/XamlDesigner/Libraries/AvalonDock.dll create mode 100644 src/AddIns/DisplayBindings/WpfDesign/XamlDesigner/Libraries/ICSharpCode.TextEditor.dll create mode 100644 src/AddIns/DisplayBindings/WpfDesign/XamlDesigner/MainWindow.xaml create mode 100644 src/AddIns/DisplayBindings/WpfDesign/XamlDesigner/MainWindow.xaml.cs create mode 100644 src/AddIns/DisplayBindings/WpfDesign/XamlDesigner/MainWindow_Commands.cs create mode 100644 src/AddIns/DisplayBindings/WpfDesign/XamlDesigner/NewFileTemplate.xaml create mode 100644 src/AddIns/DisplayBindings/WpfDesign/XamlDesigner/Outline.xaml create mode 100644 src/AddIns/DisplayBindings/WpfDesign/XamlDesigner/Outline.xaml.cs create mode 100644 src/AddIns/DisplayBindings/WpfDesign/XamlDesigner/OutlineTree.cs create mode 100644 src/AddIns/DisplayBindings/WpfDesign/XamlDesigner/Shell.cs create mode 100644 src/AddIns/DisplayBindings/WpfDesign/XamlDesigner/SimpleCommand.cs create mode 100644 src/AddIns/DisplayBindings/WpfDesign/XamlDesigner/TestFiles/1.xaml create mode 100644 src/AddIns/DisplayBindings/WpfDesign/XamlDesigner/TestFiles/2.xaml create mode 100644 src/AddIns/DisplayBindings/WpfDesign/XamlDesigner/Toolbox.cs create mode 100644 src/AddIns/DisplayBindings/WpfDesign/XamlDesigner/ToolboxView.xaml create mode 100644 src/AddIns/DisplayBindings/WpfDesign/XamlDesigner/ToolboxView.xaml.cs create mode 100644 src/AddIns/DisplayBindings/WpfDesign/XamlDesigner/XamlDesigner.csproj create mode 100644 src/AddIns/DisplayBindings/WpfDesign/XamlDesigner/XamlFormatter.cs diff --git a/src/AddIns/DisplayBindings/WpfDesign/WpfDesign.Designer/Project/Controls/ControlStyles.xaml b/src/AddIns/DisplayBindings/WpfDesign/WpfDesign.Designer/Project/Controls/ControlStyles.xaml index 3abca2a889..ac7cbc8a10 100644 --- a/src/AddIns/DisplayBindings/WpfDesign/WpfDesign.Designer/Project/Controls/ControlStyles.xaml +++ b/src/AddIns/DisplayBindings/WpfDesign/WpfDesign.Designer/Project/Controls/ControlStyles.xaml @@ -68,7 +68,11 @@ + + + diff --git a/src/AddIns/DisplayBindings/WpfDesign/XamlDesigner/App.xaml.cs b/src/AddIns/DisplayBindings/WpfDesign/XamlDesigner/App.xaml.cs new file mode 100644 index 0000000000..12ea48806c --- /dev/null +++ b/src/AddIns/DisplayBindings/WpfDesign/XamlDesigner/App.xaml.cs @@ -0,0 +1,37 @@ +using System; +using System.Collections.Generic; +using System.Configuration; +using System.Data; +using System.Linq; +using System.Windows; +using ICSharpCode.XamlDesigner.Configuration; +using System.Windows.Threading; +using System.Diagnostics; + +namespace ICSharpCode.XamlDesigner +{ + public partial class App + { + public static string[] Args; + + protected override void OnStartup(StartupEventArgs e) + { + DispatcherUnhandledException += App_DispatcherUnhandledException; + Args = e.Args; + System.Windows.Forms.Application.EnableVisualStyles(); + base.OnStartup(e); + } + + void App_DispatcherUnhandledException(object sender, DispatcherUnhandledExceptionEventArgs e) + { + Shell.ReportException(e.Exception); + e.Handled = true; + } + + protected override void OnExit(ExitEventArgs e) + { + Settings.Default.Save(); + base.OnExit(e); + } + } +} diff --git a/src/AddIns/DisplayBindings/WpfDesign/XamlDesigner/BitmapButton.xaml b/src/AddIns/DisplayBindings/WpfDesign/XamlDesigner/BitmapButton.xaml new file mode 100644 index 0000000000..7c1a28bd96 --- /dev/null +++ b/src/AddIns/DisplayBindings/WpfDesign/XamlDesigner/BitmapButton.xaml @@ -0,0 +1,32 @@ + diff --git a/src/AddIns/DisplayBindings/WpfDesign/XamlDesigner/BitmapButton.xaml.cs b/src/AddIns/DisplayBindings/WpfDesign/XamlDesigner/BitmapButton.xaml.cs new file mode 100644 index 0000000000..4200c1bc9d --- /dev/null +++ b/src/AddIns/DisplayBindings/WpfDesign/XamlDesigner/BitmapButton.xaml.cs @@ -0,0 +1,45 @@ +using System; +using System.Collections.Generic; +using System.Linq; +using System.Text; +using System.Windows; +using System.Windows.Controls; +using System.Windows.Data; +using System.Windows.Documents; +using System.Windows.Input; +using System.Windows.Media; +using System.Windows.Media.Imaging; +using System.Windows.Navigation; +using System.Windows.Shapes; + +namespace ICSharpCode.XamlDesigner +{ + public partial class BitmapButton + { + public BitmapButton() + { + InitializeComponent(); + DataContext = this; + } + + public string ImageHover { + get { return "Images/" + GetType().Name + ".Hover.png"; } + } + + public string ImageNormal { + get { return "Images/" + GetType().Name + ".Normal.png"; } + } + + public string ImagePressed { + get { return "Images/" + GetType().Name + ".Pressed.png"; } + } + + public string ImageDisabled { + get { return "Images/" + GetType().Name + ".Disabled.png"; } + } + } + + class CloseButton : BitmapButton + { + } +} diff --git a/src/AddIns/DisplayBindings/WpfDesign/XamlDesigner/Configuration/AssemblyInfo.cs b/src/AddIns/DisplayBindings/WpfDesign/XamlDesigner/Configuration/AssemblyInfo.cs new file mode 100644 index 0000000000..651ee86e68 --- /dev/null +++ b/src/AddIns/DisplayBindings/WpfDesign/XamlDesigner/Configuration/AssemblyInfo.cs @@ -0,0 +1,33 @@ +using System.Reflection; +using System.Resources; +using System.Runtime.CompilerServices; +using System.Runtime.InteropServices; +using System.Windows; + +// General Information about an assembly is controlled through the following +// set of attributes. Change these attribute values to modify the information +// associated with an assembly. +[assembly: AssemblyTitle("XamlDesigner")] +[assembly: AssemblyDescription("")] +[assembly: AssemblyConfiguration("")] +[assembly: AssemblyTrademark("")] +[assembly: AssemblyCulture("")] + +//In order to begin building localizable applications, set +//CultureYouAreCodingWith in your .csproj file +//inside a . For example, if you are using US english +//in your source files, set the to en-US. Then uncomment +//the NeutralResourceLanguage attribute below. Update the "en-US" in +//the line below to match the UICulture setting in the project file. + +//[assembly: NeutralResourcesLanguage("en-US", UltimateResourceFallbackLocation.Satellite)] + + +[assembly: ThemeInfo( + ResourceDictionaryLocation.None, //where theme specific resource dictionaries are located + //(used if a resource is not found in the page, + // or application resource dictionaries) + ResourceDictionaryLocation.SourceAssembly //where the generic resource dictionary is located + //(used if a resource is not found in the page, + // app, or any theme specific resource dictionaries) +)] diff --git a/src/AddIns/DisplayBindings/WpfDesign/XamlDesigner/Configuration/Settings.Designer.cs b/src/AddIns/DisplayBindings/WpfDesign/XamlDesigner/Configuration/Settings.Designer.cs new file mode 100644 index 0000000000..9a835b8cf5 --- /dev/null +++ b/src/AddIns/DisplayBindings/WpfDesign/XamlDesigner/Configuration/Settings.Designer.cs @@ -0,0 +1,110 @@ +//------------------------------------------------------------------------------ +// +// This code was generated by a tool. +// Runtime Version:2.0.50727.3031 +// +// Changes to this file may cause incorrect behavior and will be lost if +// the code is regenerated. +// +//------------------------------------------------------------------------------ + +namespace ICSharpCode.XamlDesigner.Configuration { + + + [global::System.Runtime.CompilerServices.CompilerGeneratedAttribute()] + [global::System.CodeDom.Compiler.GeneratedCodeAttribute("Microsoft.VisualStudio.Editors.SettingsDesigner.SettingsSingleFileGenerator", "9.0.0.0")] + internal sealed partial class Settings : global::System.Configuration.ApplicationSettingsBase { + + private static Settings defaultInstance = ((Settings)(global::System.Configuration.ApplicationSettingsBase.Synchronized(new Settings()))); + + public static Settings Default { + get { + return defaultInstance; + } + } + + [global::System.Configuration.UserScopedSettingAttribute()] + [global::System.Diagnostics.DebuggerNonUserCodeAttribute()] + [global::System.Configuration.DefaultSettingValueAttribute("0,0,0,0")] + public global::System.Windows.Rect MainWindowRect { + get { + return ((global::System.Windows.Rect)(this["MainWindowRect"])); + } + set { + this["MainWindowRect"] = value; + } + } + + [global::System.Configuration.UserScopedSettingAttribute()] + [global::System.Diagnostics.DebuggerNonUserCodeAttribute()] + [global::System.Configuration.DefaultSettingValueAttribute(@" + + + + + + + + + + + + + + + + + + + + + +")] + public string AvalonDockLayout { + get { + return ((string)(this["AvalonDockLayout"])); + } + set { + this["AvalonDockLayout"] = value; + } + } + + [global::System.Configuration.UserScopedSettingAttribute()] + [global::System.Diagnostics.DebuggerNonUserCodeAttribute()] + public global::System.Collections.Specialized.StringCollection RecentFiles { + get { + return ((global::System.Collections.Specialized.StringCollection)(this["RecentFiles"])); + } + set { + this["RecentFiles"] = value; + } + } + + [global::System.Configuration.UserScopedSettingAttribute()] + [global::System.Diagnostics.DebuggerNonUserCodeAttribute()] + [global::System.Configuration.DefaultSettingValueAttribute(@" + + %ProgramFiles%\Reference Assemblies\Microsoft\Framework\v3.0\PresentationFramework.dll +")] + public global::System.Collections.Specialized.StringCollection AssemblyList { + get { + return ((global::System.Collections.Specialized.StringCollection)(this["AssemblyList"])); + } + set { + this["AssemblyList"] = value; + } + } + + [global::System.Configuration.UserScopedSettingAttribute()] + [global::System.Diagnostics.DebuggerNonUserCodeAttribute()] + [global::System.Configuration.DefaultSettingValueAttribute("Maximized")] + public global::System.Windows.WindowState MainWindowState { + get { + return ((global::System.Windows.WindowState)(this["MainWindowState"])); + } + set { + this["MainWindowState"] = value; + } + } + } +} diff --git a/src/AddIns/DisplayBindings/WpfDesign/XamlDesigner/Configuration/Settings.settings b/src/AddIns/DisplayBindings/WpfDesign/XamlDesigner/Configuration/Settings.settings new file mode 100644 index 0000000000..65e359e302 --- /dev/null +++ b/src/AddIns/DisplayBindings/WpfDesign/XamlDesigner/Configuration/Settings.settings @@ -0,0 +1,46 @@ + + + + + + 0,0,0,0 + + + <DockingManager> + <ResizingPanel Orientation="Horizontal"> + <ResizingPanel ResizeWidth="200" Orientation="Vertical"> + <DockablePane ResizeHeight="441.36166666666668" Anchor="Left"> + <DockableContent Name="content1" AutoHide="false" /> + </DockablePane> + <DockablePane ResizeWidth="200" Anchor="Left"> + <DockableContent Name="content2" AutoHide="false" /> + </DockablePane> + </ResizingPanel> + <ResizingPanel Orientation="Vertical"> + <DocumentPanePlaceHolder /> + <DockablePane ResizeHeight="138" Anchor="Bottom"> + <DockableContent Name="content3" AutoHide="false" /> + </DockablePane> + </ResizingPanel> + <DockablePane ResizeWidth="271" Anchor="Right"> + <DockableContent Name="content4" AutoHide="false" /> + </DockablePane> + </ResizingPanel> + <Hidden /> + <Windows /> +</DockingManager> + + + + + + <?xml version="1.0" encoding="utf-16"?> +<ArrayOfString xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:xsd="http://www.w3.org/2001/XMLSchema"> + <string>%ProgramFiles%\Reference Assemblies\Microsoft\Framework\v3.0\PresentationFramework.dll</string> +</ArrayOfString> + + + Maximized + + + \ No newline at end of file diff --git a/src/AddIns/DisplayBindings/WpfDesign/XamlDesigner/Configuration/app.config b/src/AddIns/DisplayBindings/WpfDesign/XamlDesigner/Configuration/app.config new file mode 100644 index 0000000000..c49779f8d1 --- /dev/null +++ b/src/AddIns/DisplayBindings/WpfDesign/XamlDesigner/Configuration/app.config @@ -0,0 +1,51 @@ + + + + +
+ + + + + + 0,0,0,0 + + + <DockingManager> + <ResizingPanel Orientation="Horizontal"> + <ResizingPanel ResizeWidth="200" Orientation="Vertical"> + <DockablePane ResizeHeight="441.36166666666668" Anchor="Left"> + <DockableContent Name="content1" AutoHide="false" /> + </DockablePane> + <DockablePane ResizeWidth="200" Anchor="Left"> + <DockableContent Name="content2" AutoHide="false" /> + </DockablePane> + </ResizingPanel> + <ResizingPanel Orientation="Vertical"> + <DocumentPanePlaceHolder /> + <DockablePane ResizeHeight="138" Anchor="Bottom"> + <DockableContent Name="content3" AutoHide="false" /> + </DockablePane> + </ResizingPanel> + <DockablePane ResizeWidth="271" Anchor="Right"> + <DockableContent Name="content4" AutoHide="false" /> + </DockablePane> + </ResizingPanel> + <Hidden /> + <Windows /> +</DockingManager> + + + + + %ProgramFiles%\Reference Assemblies\Microsoft\Framework\v3.0\PresentationFramework.dll + + + + + Maximized + + + + \ No newline at end of file diff --git a/src/AddIns/DisplayBindings/WpfDesign/XamlDesigner/Configuration/app.manifest b/src/AddIns/DisplayBindings/WpfDesign/XamlDesigner/Configuration/app.manifest new file mode 100644 index 0000000000..e82a10f183 --- /dev/null +++ b/src/AddIns/DisplayBindings/WpfDesign/XamlDesigner/Configuration/app.manifest @@ -0,0 +1,29 @@ + + + + + + + + + + + + + + + + + + + diff --git a/src/AddIns/DisplayBindings/WpfDesign/XamlDesigner/Converters.cs b/src/AddIns/DisplayBindings/WpfDesign/XamlDesigner/Converters.cs new file mode 100644 index 0000000000..3590603bf4 --- /dev/null +++ b/src/AddIns/DisplayBindings/WpfDesign/XamlDesigner/Converters.cs @@ -0,0 +1,53 @@ +using System; +using System.Collections.Generic; +using System.Linq; +using System.Text; +using System.Windows.Data; +using System.Globalization; +using System.Windows; +using System.Collections; + +namespace ICSharpCode.XamlDesigner.Converters +{ + public class EnumToIntConverter : IValueConverter + { + public object Convert(object value, Type targetType, object parameter, CultureInfo culture) + { + return (int)value; + } + + public object ConvertBack(object value, Type targetType, object parameter, CultureInfo culture) + { + return value; + } + } + + public class CollapsedWhenFalse : IValueConverter + { + public object Convert(object value, Type targetType, object parameter, CultureInfo culture) + { + return (bool)value ? Visibility.Visible : Visibility.Collapsed; + } + + public object ConvertBack(object value, Type targetType, object parameter, CultureInfo culture) + { + throw new NotImplementedException(); + } + } + + public class FalseWhenZero : IValueConverter + { + public object Convert(object value, Type targetType, object parameter, CultureInfo culture) + { + if (value == null || (int)value == 0) { + return false; + } + return true; + } + + public object ConvertBack(object value, Type targetType, object parameter, CultureInfo culture) + { + throw new NotImplementedException(); + } + } +} diff --git a/src/AddIns/DisplayBindings/WpfDesign/XamlDesigner/Document.cs b/src/AddIns/DisplayBindings/WpfDesign/XamlDesigner/Document.cs new file mode 100644 index 0000000000..5c1da59c5b --- /dev/null +++ b/src/AddIns/DisplayBindings/WpfDesign/XamlDesigner/Document.cs @@ -0,0 +1,212 @@ +using System; +using System.Collections.Generic; +using System.Linq; +using System.Text; +using System.ComponentModel; +using System.IO; +using ICSharpCode.WpfDesign.Designer; +using ICSharpCode.WpfDesign.Designer.Xaml; +using System.Xml; +using ICSharpCode.WpfDesign; +using ICSharpCode.WpfDesign.Designer.Services; +using System.Diagnostics; + +namespace ICSharpCode.XamlDesigner +{ + public class Document : INotifyPropertyChanged + { + public Document(string tempName, string text) + { + this.tempName = tempName; + Text = text; + IsDirty = false; + } + + public Document(string filePath) + { + this.filePath = filePath; + ReloadFile(); + } + + string tempName; + DesignSurface designSurface = new DesignSurface(); + + string text; + + public string Text { + get { + return text; + } + set { + if (text != value) { + text = value; + IsDirty = true; + RaisePropertyChanged("Text"); + } + } + } + + DocumentMode mode; + + void SetMode(DocumentMode newMode) + { + mode = newMode; + if (IsDesign) { + UpdateDesign(); + } + else { + UpdateXaml(); + } + RaisePropertyChanged("IsXaml"); + RaisePropertyChanged("IsDesign"); + RaisePropertyChanged("SelectionService"); + } + + public bool IsXaml { + get { return mode == DocumentMode.Xaml; } + set { if (value) SetMode(DocumentMode.Xaml); } + } + + public bool IsDesign { + get { return mode == DocumentMode.Design; } + set { if (value) SetMode(DocumentMode.Design); } + } + + string filePath; + + public string FilePath { + get { + return filePath; + } + private set { + filePath = value; + RaisePropertyChanged("FilePath"); + RaisePropertyChanged("FileName"); + RaisePropertyChanged("Title"); + RaisePropertyChanged("Name"); + } + } + + bool isDirty; + + public bool IsDirty { + get { + return isDirty; + } + private set { + isDirty = value; + RaisePropertyChanged("IsDirty"); + RaisePropertyChanged("Name"); + RaisePropertyChanged("Title"); + } + } + + public string FileName { + get { + if (FilePath == null) return null; + return Path.GetFileName(FilePath); + } + } + + public string Name { + get { + return FileName ?? tempName; + } + } + + public string Title { + get { + return IsDirty ? Name + "*" : Name; + } + } + + public DesignSurface DesignSurface { + get { return designSurface; } + } + + public DesignContext DesignContext { + get { return designSurface.DesignContext; } + } + + public UndoService UndoService { + get { return DesignContext.Services.GetService(); } + } + + public ISelectionService SelectionService { + get { + if (IsDesign && DesignContext != null) { + return DesignContext.Services.Selection; + } + return null; + } + } + + void ReloadFile() + { + Text = File.ReadAllText(FilePath); + UpdateDesign(); + IsDirty = false; + } + + public void Save() + { + if (IsDesign) { + UpdateXaml(); + } + File.WriteAllText(FilePath, Text); + IsDirty = false; + } + + public void SaveAs(string filePath) + { + FilePath = filePath; + Save(); + } + + void UpdateXaml() + { + var sb = new StringBuilder(); + using (var xmlWriter = XmlWriter.Create(sb)) { + try { + DesignSurface.SaveDesigner(xmlWriter); + Text = XamlFormatter.Format(sb.ToString()); + } + catch (Exception x) { + Shell.ReportException(x); + } + } + } + + void UpdateDesign() + { + try { + XamlLoadSettings settings = new XamlLoadSettings(); + using (var xmlReader = XmlReader.Create(new StringReader(Text))) { + DesignSurface.LoadDesigner(xmlReader, settings); + } + UndoService.UndoStackChanged += delegate { IsDirty = true; }; + } + catch (Exception x) { + Shell.ReportException(x); + } + } + + #region INotifyPropertyChanged Members + + public event PropertyChangedEventHandler PropertyChanged; + + void RaisePropertyChanged(string name) + { + if (PropertyChanged != null) { + PropertyChanged(this, new PropertyChangedEventArgs(name)); + } + } + + #endregion + + enum DocumentMode + { + Xaml, Design + } + } +} diff --git a/src/AddIns/DisplayBindings/WpfDesign/XamlDesigner/DocumentView.xaml b/src/AddIns/DisplayBindings/WpfDesign/XamlDesigner/DocumentView.xaml new file mode 100644 index 0000000000..c2fc424bea --- /dev/null +++ b/src/AddIns/DisplayBindings/WpfDesign/XamlDesigner/DocumentView.xaml @@ -0,0 +1,40 @@ + + + + + + + + + + + + + + + + + + \ No newline at end of file diff --git a/src/AddIns/DisplayBindings/WpfDesign/XamlDesigner/DocumentView.xaml.cs b/src/AddIns/DisplayBindings/WpfDesign/XamlDesigner/DocumentView.xaml.cs new file mode 100644 index 0000000000..f567d7347d --- /dev/null +++ b/src/AddIns/DisplayBindings/WpfDesign/XamlDesigner/DocumentView.xaml.cs @@ -0,0 +1,26 @@ +using System; +using System.Collections.Generic; +using System.Linq; +using System.Text; +using System.Windows; +using System.Windows.Controls; +using System.Windows.Data; +using System.Windows.Documents; +using System.Windows.Input; +using System.Windows.Media; +using System.Windows.Media.Imaging; +using System.Windows.Navigation; +using System.Windows.Shapes; + +namespace ICSharpCode.XamlDesigner +{ + public partial class DocumentView + { + public DocumentView(Document doc) + { + InitializeComponent(); + uxTextEditor.SetHighlighting("XML"); + uxTextEditor.DataBindings.Add("Text", doc, "Text", true, System.Windows.Forms.DataSourceUpdateMode.OnPropertyChanged); + } + } +} diff --git a/src/AddIns/DisplayBindings/WpfDesign/XamlDesigner/DragListener.cs b/src/AddIns/DisplayBindings/WpfDesign/XamlDesigner/DragListener.cs new file mode 100644 index 0000000000..e2d3cec7c9 --- /dev/null +++ b/src/AddIns/DisplayBindings/WpfDesign/XamlDesigner/DragListener.cs @@ -0,0 +1,57 @@ +using System; +using System.Collections.Generic; +using System.Linq; +using System.Text; +using System.Windows; +using System.Windows.Input; + +namespace ICSharpCode.XamlDesigner +{ + class DragListener + { + public DragListener(IInputElement target) + { + this.target = target; + target.PreviewMouseLeftButtonDown += new MouseButtonEventHandler(target_PreviewMouseLeftButtonDown); + target.PreviewMouseMove += new MouseEventHandler(target_PreviewMouseMove); + } + + public event MouseEventHandler DragStarted; + + IInputElement target; + Window window; + Point startPoint; + bool readyToRaise; + + Point GetMousePosition() + { + if (window == null) { + window = Window.GetWindow(target as DependencyObject); + } + return Mouse.GetPosition(window); + } + + bool IsMovementBigEnough() + { + Point currentPoint = GetMousePosition(); + return (Math.Abs(currentPoint.X - startPoint.X) >= SystemParameters.MinimumHorizontalDragDistance || + Math.Abs(currentPoint.Y - startPoint.Y) >= SystemParameters.MinimumVerticalDragDistance); + } + + void target_PreviewMouseLeftButtonDown(object sender, MouseButtonEventArgs e) + { + readyToRaise = true; + startPoint = GetMousePosition(); + } + + void target_PreviewMouseMove(object sender, MouseEventArgs e) + { + if (readyToRaise && IsMovementBigEnough()) { + readyToRaise = false; + if (DragStarted != null) { + DragStarted(target, e); + } + } + } + } +} diff --git a/src/AddIns/DisplayBindings/WpfDesign/XamlDesigner/ExtensionMethods.cs b/src/AddIns/DisplayBindings/WpfDesign/XamlDesigner/ExtensionMethods.cs new file mode 100644 index 0000000000..4c9a1dd358 --- /dev/null +++ b/src/AddIns/DisplayBindings/WpfDesign/XamlDesigner/ExtensionMethods.cs @@ -0,0 +1,93 @@ +using System; +using System.Collections.Generic; +using System.Linq; +using System.Text; +using System.Windows; +using System.Windows.Documents; +using System.Windows.Media; +using System.IO; +using System.Collections.ObjectModel; +using System.Collections.Specialized; +using System.Collections; + +namespace ICSharpCode.XamlDesigner +{ + static class ExtensionMethods + { + public static IEnumerable Paths(this IDataObject data) + { + string[] paths = (string[])data.GetData(DataFormats.FileDrop); + if (paths != null) { + foreach (var path in paths) { + yield return path; + } + } + } + + public static T GetObject(this IDataObject data) + { + return (T)data.GetData(typeof(T).FullName); + } + + public static T FindAncestor(this DependencyObject d) where T : class + { + while (true) { + if (d == null) return null; + if (d is T) return d as T; + d = VisualTreeHelper.GetParent(d); + } + } + + public static Stream ToStream(this string s) + { + return new MemoryStream(Encoding.UTF8.GetBytes(s)); + } + + public static void AddRange(this ObservableCollection col, IEnumerable items) + { + foreach (var item in items) { + col.Add(item); + } + } + + public static void KeepSyncronizedWith(this IList target, ObservableCollection source, Func convert) + { + target.Clear(); + foreach (var item in source) { + target.Add(convert(item)); + } + + source.CollectionChanged += delegate(object sender, NotifyCollectionChangedEventArgs e) { + switch (e.Action) { + case NotifyCollectionChangedAction.Add: + target.Add(convert((S)e.NewItems[0])); + break; + + case NotifyCollectionChangedAction.Remove: + target.RemoveAt(e.OldStartingIndex); + break; + + case NotifyCollectionChangedAction.Move: + target.RemoveAt(e.OldStartingIndex); + target.Insert(e.NewStartingIndex, e.NewItems[0]); + break; + + case NotifyCollectionChangedAction.Replace: + target[e.NewStartingIndex] = convert((S)e.NewItems[0]); + break; + + case NotifyCollectionChangedAction.Reset: + target.Clear(); + break; + } + }; + } + + public static object GetDataContext(this RoutedEventArgs e) + { + var f = e.OriginalSource as FrameworkElement; + if (f != null) return f.DataContext; + return null; + } + } +} diff --git a/src/AddIns/DisplayBindings/WpfDesign/XamlDesigner/Images/Reference.png b/src/AddIns/DisplayBindings/WpfDesign/XamlDesigner/Images/Reference.png new file mode 100644 index 0000000000000000000000000000000000000000..da47049481f5aaf92973c6b6d8bc47377a3822c1 GIT binary patch literal 1282 zcmeAS@N?(olHy`uVBq!ia0vp^0wB!63?wyl`GbKJOS+@4BLl<6e(pbstPBjy3;{kN zu0U}!uM}(lEXUA%_vljpr0THDhWNtvPdx7Gpo85HS{lQpSrqx*2ez1K(ux8 z!fi8`?Ow9s=-QoUHtjyUdEfcH$F3edbMw^2yO(c1zW3bpHv#SClhqJ&VvY3HE zs1Sr1Ki{e90}4u%xJHx&=ckpFCl;kL1SDqWmFW4ohA5O7>lqt3w77#xn+#7E#}JL+ zx&6n58WaSa54MSj9&OtD_rLi%jp_oMS<(02s7N!(PrSe2%v6y%s)j#$9^KhqI`h~< zew!0~UnWhud5uA6Z|MQ4+$kTvZxfzk62-LSMKt?79<$J2?*wHST@oGS6W_l6FCVRU X-e)bP0l+XkKV4j%y literal 0 HcmV?d00001 diff --git a/src/AddIns/DisplayBindings/WpfDesign/XamlDesigner/Images/Tag.png b/src/AddIns/DisplayBindings/WpfDesign/XamlDesigner/Images/Tag.png new file mode 100644 index 0000000000000000000000000000000000000000..b7686f106b0931ea8140d4fbf72eb7413053f7d2 GIT binary patch literal 389 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%0DZi&!vlj2sX9rUD2hV+umB$L^#e+iktX2@UOQK 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 z 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 literal 0 HcmV?d00001 diff --git a/src/AddIns/DisplayBindings/WpfDesign/XamlDesigner/MainWindow.xaml b/src/AddIns/DisplayBindings/WpfDesign/XamlDesigner/MainWindow.xaml new file mode 100644 index 0000000000..3fda7bd62e --- /dev/null +++ b/src/AddIns/DisplayBindings/WpfDesign/XamlDesigner/MainWindow.xaml @@ -0,0 +1,118 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/src/AddIns/DisplayBindings/WpfDesign/XamlDesigner/MainWindow.xaml.cs b/src/AddIns/DisplayBindings/WpfDesign/XamlDesigner/MainWindow.xaml.cs new file mode 100644 index 0000000000..67c68bb513 --- /dev/null +++ b/src/AddIns/DisplayBindings/WpfDesign/XamlDesigner/MainWindow.xaml.cs @@ -0,0 +1,181 @@ +using System; +using System.Collections.Generic; +using System.Linq; +using System.Text; +using System.Windows; +using System.Windows.Controls; +using System.Windows.Data; +using System.Windows.Documents; +using System.Windows.Input; +using System.Windows.Media; +using System.Windows.Media.Imaging; +using System.Windows.Shapes; +using ICSharpCode.XamlDesigner.Configuration; +using System.ComponentModel; +using Microsoft.Win32; +using AvalonDock; +using System.IO; +using System.Collections.Specialized; + +namespace ICSharpCode.XamlDesigner +{ + public partial class MainWindow + { + public MainWindow() + { + RenameCommands(); + + Instance = this; + DataContext = Shell.Instance; + InitializeComponent(); + + Shell.Instance.PropertyGrid = uxPropertyGridView.PropertyGrid; + AvalonDockWorkaround(); + LoadSettings(); + ProcessPaths(App.Args); + } + + public static MainWindow Instance; + + OpenFileDialog openFileDialog; + SaveFileDialog saveFileDialog; + + protected override void OnDragEnter(DragEventArgs e) + { + ProcessDrag(e); + } + + protected override void OnDragOver(DragEventArgs e) + { + ProcessDrag(e); + } + + protected override void OnDrop(DragEventArgs e) + { + ProcessPaths(e.Data.Paths()); + } + + protected override void OnClosing(CancelEventArgs e) + { + if (Shell.Instance.PrepareExit()) { + SaveSettings(); + } + else { + e.Cancel = true; + } + base.OnClosing(e); + } + + void RecentFiles_Click(object sender, RoutedEventArgs e) + { + var path = (string)(e.OriginalSource as MenuItem).Header; + Shell.Instance.Open(path); + } + + void ProcessDrag(DragEventArgs e) + { + e.Effects = DragDropEffects.None; + e.Handled = true; + + foreach (var path in e.Data.Paths()) { + if (path.EndsWith(".dll", StringComparison.InvariantCultureIgnoreCase) || + path.EndsWith(".exe", StringComparison.InvariantCultureIgnoreCase)) { + e.Effects = DragDropEffects.Copy; + break; + } + else if (path.EndsWith(".xaml", StringComparison.InvariantCultureIgnoreCase)) { + e.Effects = DragDropEffects.Copy; + break; + } + } + } + + void ProcessPaths(IEnumerable paths) + { + foreach (var path in paths) { + if (path.EndsWith(".dll", StringComparison.InvariantCultureIgnoreCase) || + path.EndsWith(".exe", StringComparison.InvariantCultureIgnoreCase)) { + Toolbox.Instance.AddAssembly(path); + } + else if (path.EndsWith(".xaml", StringComparison.InvariantCultureIgnoreCase)) { + Shell.Instance.Open(path); + } + } + } + + public string AskOpenFileName() + { + if (openFileDialog == null) { + openFileDialog = new OpenFileDialog(); + openFileDialog.Filter = "Xaml Documents (*.xaml)|*.xaml"; + } + if ((bool)openFileDialog.ShowDialog()) { + return openFileDialog.FileName; + } + return null; + } + + public string AskSaveFileName(string initName) + { + if (saveFileDialog == null) { + saveFileDialog = new SaveFileDialog(); + saveFileDialog.Filter = "Xaml Documents (*.xaml)|*.xaml"; + } + saveFileDialog.FileName = initName; + if ((bool)saveFileDialog.ShowDialog()) { + return saveFileDialog.FileName; + } + return null; + } + + void LoadSettings() + { + WindowState = Settings.Default.MainWindowState; + + Rect r = Settings.Default.MainWindowRect; + if (r != new Rect()) { + Left = r.Left; + Top = r.Top; + Width = r.Width; + Height = r.Height; + } + + if (Settings.Default.AvalonDockLayout != null) { + uxDockingManager.RestoreLayout(Settings.Default.AvalonDockLayout.ToStream()); + } + } + + void SaveSettings() + { + Settings.Default.MainWindowState = WindowState; + if (WindowState == WindowState.Normal) { + Settings.Default.MainWindowRect = new Rect(Left, Top, Width, Height); + } + + var writer = new StringWriter(); + uxDockingManager.SaveLayout(writer); + Settings.Default.AvalonDockLayout = writer.ToString(); + + Shell.Instance.SaveSettings(); + } + + #region AvalonDockWorkaround + + void AvalonDockWorkaround() + { + uxDocumentPane.Items.KeepSyncronizedWith(Shell.Instance.Documents, d => CreateContentFor(d)); + } + + DocumentContent CreateContentFor(Document doc) + { + var content = new DocumentContent() { + DataContext = doc, + Content = new DocumentView(doc) + }; + content.SetBinding(DocumentContent.TitleProperty, "Title"); + return content; + } + + #endregion + } +} diff --git a/src/AddIns/DisplayBindings/WpfDesign/XamlDesigner/MainWindow_Commands.cs b/src/AddIns/DisplayBindings/WpfDesign/XamlDesigner/MainWindow_Commands.cs new file mode 100644 index 0000000000..26ebe8c10b --- /dev/null +++ b/src/AddIns/DisplayBindings/WpfDesign/XamlDesigner/MainWindow_Commands.cs @@ -0,0 +1,71 @@ +using System; +using System.Collections.Generic; +using System.Linq; +using System.Text; +using System.Windows.Input; + +namespace ICSharpCode.XamlDesigner +{ + public partial class MainWindow + { + public static SimpleCommand CloseAllCommand = new SimpleCommand("Close All"); + public static SimpleCommand SaveAllCommand = new SimpleCommand("Save All", ModifierKeys.Control | ModifierKeys.Shift, Key.S); + public static SimpleCommand ExitCommand = new SimpleCommand("Exit"); + + static void RenameCommands() + { + ApplicationCommands.Open.Text = "Open..."; + ApplicationCommands.SaveAs.Text = "Save As..."; + } + + void NewCommand_Executed(object sender, ExecutedRoutedEventArgs e) + { + Shell.Instance.New(); + } + + void OpenCommand_Executed(object sender, ExecutedRoutedEventArgs e) + { + Shell.Instance.Open(); + } + + void CloseCommand_Executed(object sender, ExecutedRoutedEventArgs e) + { + Shell.Instance.CloseCurrentDocument(); + } + + void CloseCommand_PreviewExecuted(object sender, ExecutedRoutedEventArgs e) + { + Shell.Instance.CloseCurrentDocument(); + } + + void CloseAllCommand_Executed(object sender, ExecutedRoutedEventArgs e) + { + Shell.Instance.CloseAll(); + } + + void SaveCommand_Executed(object sender, ExecutedRoutedEventArgs e) + { + Shell.Instance.SaveCurrentDocument(); + } + + void SaveAsCommand_Executed(object sender, ExecutedRoutedEventArgs e) + { + Shell.Instance.SaveCurrentDocumentAs(); + } + + void SaveAllCommand_Executed(object sender, ExecutedRoutedEventArgs e) + { + Shell.Instance.SaveAll(); + } + + void ExitCommand_Executed(object sender, ExecutedRoutedEventArgs e) + { + Shell.Instance.Exit(); + } + + void CurrentDocument_CanExecute(object sender, CanExecuteRoutedEventArgs e) + { + e.CanExecute = Shell.Instance.CurrentDocument != null; + } + } +} diff --git a/src/AddIns/DisplayBindings/WpfDesign/XamlDesigner/NewFileTemplate.xaml b/src/AddIns/DisplayBindings/WpfDesign/XamlDesigner/NewFileTemplate.xaml new file mode 100644 index 0000000000..1734c1d49d --- /dev/null +++ b/src/AddIns/DisplayBindings/WpfDesign/XamlDesigner/NewFileTemplate.xaml @@ -0,0 +1,4 @@ + + + \ No newline at end of file diff --git a/src/AddIns/DisplayBindings/WpfDesign/XamlDesigner/Outline.xaml b/src/AddIns/DisplayBindings/WpfDesign/XamlDesigner/Outline.xaml new file mode 100644 index 0000000000..4f82d8f516 --- /dev/null +++ b/src/AddIns/DisplayBindings/WpfDesign/XamlDesigner/Outline.xaml @@ -0,0 +1,107 @@ + + + + + + + + + + + + + + + + + + diff --git a/src/AddIns/DisplayBindings/WpfDesign/XamlDesigner/Outline.xaml.cs b/src/AddIns/DisplayBindings/WpfDesign/XamlDesigner/Outline.xaml.cs new file mode 100644 index 0000000000..f7186ac275 --- /dev/null +++ b/src/AddIns/DisplayBindings/WpfDesign/XamlDesigner/Outline.xaml.cs @@ -0,0 +1,24 @@ +using System; +using System.Collections.Generic; +using System.Linq; +using System.Text; +using System.Windows; +using System.Windows.Controls; +using System.Windows.Data; +using System.Windows.Documents; +using System.Windows.Input; +using System.Windows.Media; +using System.Windows.Media.Imaging; +using System.Windows.Navigation; +using System.Windows.Shapes; + +namespace ICSharpCode.XamlDesigner +{ + public partial class Outline + { + public Outline() + { + InitializeComponent(); + } + } +} diff --git a/src/AddIns/DisplayBindings/WpfDesign/XamlDesigner/OutlineTree.cs b/src/AddIns/DisplayBindings/WpfDesign/XamlDesigner/OutlineTree.cs new file mode 100644 index 0000000000..806cd34aa6 --- /dev/null +++ b/src/AddIns/DisplayBindings/WpfDesign/XamlDesigner/OutlineTree.cs @@ -0,0 +1,267 @@ +using System; +using System.Collections.Generic; +using System.Linq; +using System.Text; +using System.Windows.Controls; +using System.Windows; +using System.Collections.ObjectModel; +using System.Windows.Input; +using System.Windows.Media; +using System.Windows.Controls.Primitives; + +namespace ICSharpCode.XamlDesigner +{ + public class OutlineTree : TreeView + { + public OutlineTree() + { + AllowDrop = true; + new DragListener(this).DragStarted += new MouseEventHandler(TreeList_DragStarted); + DragEnter += new DragEventHandler(TreeList_DragEnter); + DragOver += new DragEventHandler(TreeList_DragOver); + Drop += new DragEventHandler(TreeList_Drop); + + //Selection = new ObservableCollection(); + } + + Border insertLine; + OutlineTreeItem markedItem; + OutlineTreeItem possibleSelection; + List selectionNodes = new List(); + + public static readonly DependencyProperty SelectionProperty = + DependencyProperty.Register("Selection", typeof(ObservableCollection), typeof(OutlineTree)); + + public ObservableCollection Selection { + get { return (ObservableCollection)GetValue(SelectionProperty); } + set { SetValue(SelectionProperty, value); } + } + + protected override void OnPropertyChanged(DependencyPropertyChangedEventArgs e) + { + base.OnPropertyChanged(e); + } + + public override void OnApplyTemplate() + { + base.OnApplyTemplate(); + insertLine = (Border)Template.FindName("PART_InsertLine", this); + } + + protected override DependencyObject GetContainerForItemOverride() + { + return new OutlineTreeItem(); + } + + protected override bool IsItemItsOwnContainerOverride(object item) + { + return item is OutlineTreeItem; + } + + protected virtual DragDropEffects CanDrag(object obj) + { + return DragDropEffects.Move; + } + + protected virtual DragDropEffects CanDrop(object obj, object parent, int index) + { + return DragDropEffects.Move; + } + + void TreeList_DragOver(object sender, DragEventArgs e) + { + ProcessDrag(e); + } + + void TreeList_DragEnter(object sender, DragEventArgs e) + { + ProcessDrag(e); + } + + void TreeList_Drop(object sender, DragEventArgs e) + { + ProcessDrop(e); + } + + protected override void OnDragLeave(DragEventArgs e) + { + HideDropMarkers(); + } + + void TreeList_DragStarted(object sender, MouseEventArgs e) + { + possibleSelection = null; + object obj = (e.OriginalSource as FrameworkElement).DataContext; + if (obj != null) { + DragDropEffects effects = CanDrag(obj); + if (effects != DragDropEffects.None) { + DragDrop.DoDragDrop(this, obj, effects); + } + } + } + + void ProcessDrag(DragEventArgs e) + { + e.Effects = DragDropEffects.Move; + e.Handled = true; + + OutlineTreeItem treeItem = (e.OriginalSource as DependencyObject).FindAncestor(); + if (treeItem != null) { + HideDropMarkers(); + + ContentPresenter header = treeItem.HeaderPresenter; + Point p = e.GetPosition(header); + int part = (int)(p.Y / (header.ActualHeight / 3)); + + if (part == 1) { + markedItem = treeItem; + markedItem.Background = insertLine.Background; + } + else { + insertLine.Visibility = Visibility.Visible; + p = header.TransformToVisual(this).Transform(new Point()); + double y = part == 0 ? p.Y : p.Y + header.ActualHeight; + insertLine.Margin = new Thickness(0, y, 0, 0); + } + } + } + + void ProcessDrop(DragEventArgs e) + { + HideDropMarkers(); + } + + void HideDropMarkers() + { + insertLine.Visibility = Visibility.Collapsed; + if (markedItem != null) { + markedItem.ClearValue(OutlineTreeItem.BackgroundProperty); + } + } + + void Select(OutlineTreeItem item) + { + item.IsSelected = true; + Selection.Add(item.Element); + selectionNodes.Add(item); + } + + void SelectOnly(OutlineTreeItem item) + { + foreach (var node in selectionNodes) { + node.IsSelected = false; + } + Selection.Clear(); + Select(item); + } + + void Unselect(OutlineTreeItem item) + { + item.IsSelected = false; + Selection.Remove(item.Element); + selectionNodes.Remove(item); + } + + internal void HandleItemMouseDown(OutlineTreeItem item) + { + bool control = Keyboard.IsKeyDown(Key.LeftCtrl); + if (item.IsSelected) { + if (control) { + Unselect(item); + } + else { + possibleSelection = item; + } + } + else { + if (control) { + Select(item); + } + else { + SelectOnly(item); + } + } + } + + internal void HandleItemMouseUp(OutlineTreeItem item) + { + if (possibleSelection != null) { + SelectOnly(possibleSelection); + } + } + } + + public class OutlineTreeItem : TreeViewItem + { + public new static readonly DependencyProperty IsSelectedProperty = + Selector.IsSelectedProperty.AddOwner(typeof(OutlineTreeItem)); + + public new bool IsSelected { + get { return (bool)GetValue(IsSelectedProperty); } + set { SetValue(IsSelectedProperty, value); } + } + + public ContentPresenter HeaderPresenter { + get { return (ContentPresenter)Template.FindName("PART_Header", this); } + } + + public DocumentElement Element { + get { return DataContext as DocumentElement; } + } + + public static readonly DependencyProperty IndentProperty = + DependencyProperty.Register("Indent", typeof(Thickness), typeof(OutlineTreeItem)); + + public Thickness Indent { + get { return (Thickness)GetValue(IndentProperty); } + set { SetValue(IndentProperty, value); } + } + + protected override void OnVisualParentChanged(DependencyObject oldParent) + { + base.OnVisualParentChanged(oldParent); + OutlineTreeItem parent = ItemsControl.ItemsControlFromItemContainer(this) as OutlineTreeItem; + Indent = parent == null ? new Thickness() : new Thickness(parent.Indent.Left + 19, 0, 0, 0); + } + + protected override DependencyObject GetContainerForItemOverride() + { + return new OutlineTreeItem(); + } + + protected override bool IsItemItsOwnContainerOverride(object item) + { + return item is OutlineTreeItem; + } + + protected override void OnPreviewMouseDown(MouseButtonEventArgs e) + { + if (e.Source is ToggleButton || e.Source is ItemsPresenter) return; + + OutlineTree tree = this.FindAncestor(); + if (tree != null) { + tree.HandleItemMouseDown(this); + e.Handled = true; + } + } + + protected override void OnMouseLeftButtonUp(MouseButtonEventArgs e) + { + OutlineTree tree = this.FindAncestor(); + if (tree != null) { + tree.HandleItemMouseUp(this); + } + } + } + + public class TreeNode : ContentControl + { + public static readonly DependencyProperty ImageProperty = + DependencyProperty.Register("Image", typeof(ImageSource), typeof(TreeNode)); + + public ImageSource Image { + get { return (ImageSource)GetValue(ImageProperty); } + set { SetValue(ImageProperty, value); } + } + } +} diff --git a/src/AddIns/DisplayBindings/WpfDesign/XamlDesigner/Shell.cs b/src/AddIns/DisplayBindings/WpfDesign/XamlDesigner/Shell.cs new file mode 100644 index 0000000000..c3962563f1 --- /dev/null +++ b/src/AddIns/DisplayBindings/WpfDesign/XamlDesigner/Shell.cs @@ -0,0 +1,238 @@ +using System; +using System.Collections.Generic; +using System.Linq; +using System.Text; +using System.ComponentModel; +using System.Collections.ObjectModel; +using ICSharpCode.WpfDesign.Designer.PropertyGrid; +using ICSharpCode.XamlDesigner.Configuration; +using System.Collections.Specialized; +using System.IO; +using System.Windows; +using System.Diagnostics; + +namespace ICSharpCode.XamlDesigner +{ + public class Shell : INotifyPropertyChanged + { + public Shell() + { + Documents = new ObservableCollection(); + RecentFiles = new ObservableCollection(); + LoadSettings(); + } + + public static Shell Instance = new Shell(); + public const string ApplicationTitle = "Xaml Designer"; + + //public Toolbox Toolbox { get; set; } + //public SceneTree SceneTree { get; set; } + public PropertyGrid PropertyGrid { get; internal set; } + //public ErrorList ErrorList { get; set; } + + public ObservableCollection Documents { get; private set; } + public ObservableCollection RecentFiles { get; private set; } + + Document currentDocument; + + public Document CurrentDocument { + get { + return currentDocument; + } + set { + currentDocument = value; + RaisePropertyChanged("CurrentDocument"); + RaisePropertyChanged("Title"); + } + } + + public string Title { + get { + if (CurrentDocument != null) { + return CurrentDocument.Title + " - " + ApplicationTitle; + } + return ApplicationTitle; + } + } + + void LoadSettings() + { + if (Settings.Default.RecentFiles != null) { + RecentFiles.AddRange(Settings.Default.RecentFiles.Cast()); + } + } + + public void SaveSettings() + { + if (Settings.Default.RecentFiles == null) { + Settings.Default.RecentFiles = new StringCollection(); + } + else { + Settings.Default.RecentFiles.Clear(); + } + foreach (var f in RecentFiles) { + Settings.Default.RecentFiles.Add(f); + } + } + + public static void ReportException(Exception x) + { + MessageBox.Show(x.ToString()); + } + + #region Files + + bool IsSomethingDirty { + get { + foreach (var doc in Shell.Instance.Documents) { + if (doc.IsDirty) return true; + } + return false; + } + } + + static int nonameIndex = 1; + + public void New() + { + Document doc = new Document("New" + nonameIndex++, File.ReadAllText("NewFileTemplate.xaml")); + Documents.Add(doc); + CurrentDocument = doc; + } + + public void Open() + { + var path = MainWindow.Instance.AskOpenFileName(); + if (path != null) { + Open(path); + } + } + + public void Open(string path) + { + path = Path.GetFullPath(path); + + if (RecentFiles.Contains(path)) { + RecentFiles.Remove(path); + } + RecentFiles.Insert(0, path); + + foreach (var doc in Documents) { + if (doc.FilePath == path) { + CurrentDocument = doc; + return; + } + } + + var newDoc = new Document(path); + Documents.Add(newDoc); + CurrentDocument = newDoc; + } + + public bool Save(Document doc) + { + if (doc.IsDirty) { + if (doc.FilePath == null) { + return SaveAs(doc); + } + doc.Save(); + } + return true; + } + + public bool SaveAs(Document doc) + { + var initName = doc.FileName ?? doc.Name + ".xaml"; + var path = MainWindow.Instance.AskSaveFileName(initName); + if (path != null) { + doc.SaveAs(path); + return true; + } + return false; + } + + public bool SaveAll() + { + foreach (var doc in Documents) { + if (!Save(doc)) return false; + } + return true; + } + + public bool Close(Document doc) + { + if (doc.IsDirty) { + var result = MessageBox.Show("Save \"" + doc.Name + "\" ?", Shell.ApplicationTitle, + MessageBoxButton.YesNoCancel, MessageBoxImage.Warning); + + if (result == MessageBoxResult.Yes) { + if (!Save(doc)) return false; + } + else if (result == MessageBoxResult.Cancel) { + return false; + } + } + Documents.Remove(doc); + return true; + } + + public bool CloseAll() + { + foreach (var doc in Documents) { + if (!Close(doc)) return false; + } + return true; + } + + public bool PrepareExit() + { + if (IsSomethingDirty) { + var result = MessageBox.Show("Save All?", Shell.ApplicationTitle, + MessageBoxButton.YesNoCancel, MessageBoxImage.Warning); + + if (result == MessageBoxResult.Yes) { + if (!SaveAll()) return false; + } + else if (result == MessageBoxResult.Cancel) { + return false; + } + } + return true; + } + + public void Exit() + { + MainWindow.Instance.Close(); + } + + public void SaveCurrentDocument() + { + Save(CurrentDocument); + } + + public void SaveCurrentDocumentAs() + { + SaveAs(CurrentDocument); + } + + public void CloseCurrentDocument() + { + Close(CurrentDocument); + } + + #endregion + + #region INotifyPropertyChanged Members + + public event PropertyChangedEventHandler PropertyChanged; + + void RaisePropertyChanged(string name) + { + if (PropertyChanged != null) { + PropertyChanged(this, new PropertyChangedEventArgs(name)); + } + } + + #endregion + } +} diff --git a/src/AddIns/DisplayBindings/WpfDesign/XamlDesigner/SimpleCommand.cs b/src/AddIns/DisplayBindings/WpfDesign/XamlDesigner/SimpleCommand.cs new file mode 100644 index 0000000000..3daea1f5f0 --- /dev/null +++ b/src/AddIns/DisplayBindings/WpfDesign/XamlDesigner/SimpleCommand.cs @@ -0,0 +1,27 @@ +using System; +using System.Collections.Generic; +using System.Linq; +using System.Text; +using System.Windows.Input; + +namespace ICSharpCode.XamlDesigner +{ + public class SimpleCommand : RoutedUICommand + { + public SimpleCommand(string text) + { + Text = text; + } + + public SimpleCommand(string text, ModifierKeys modifiers, Key key) + { + InputGestures.Add(new KeyGesture(key, modifiers)); + Text = text; + } + + public SimpleCommand(string text, Key key) + : this(text, ModifierKeys.None, key) + { + } + } +} diff --git a/src/AddIns/DisplayBindings/WpfDesign/XamlDesigner/TestFiles/1.xaml b/src/AddIns/DisplayBindings/WpfDesign/XamlDesigner/TestFiles/1.xaml new file mode 100644 index 0000000000..cca7754177 --- /dev/null +++ b/src/AddIns/DisplayBindings/WpfDesign/XamlDesigner/TestFiles/1.xaml @@ -0,0 +1,31 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + \ No newline at end of file diff --git a/src/AddIns/DisplayBindings/WpfDesign/XamlDesigner/TestFiles/2.xaml b/src/AddIns/DisplayBindings/WpfDesign/XamlDesigner/TestFiles/2.xaml new file mode 100644 index 0000000000..920dc86a5d --- /dev/null +++ b/src/AddIns/DisplayBindings/WpfDesign/XamlDesigner/TestFiles/2.xaml @@ -0,0 +1,41 @@ + + +