Index: Core/Common/src/Core.Common.Gui/Forms/ViewManager/AvalonDockDockingManager.cs =================================================================== diff -u -r60284d242516286b70997e1894fa22b67d7f10ab -re00a8a09daf851d9bf0486ff19f37285e3ad15ef --- Core/Common/src/Core.Common.Gui/Forms/ViewManager/AvalonDockDockingManager.cs (.../AvalonDockDockingManager.cs) (revision 60284d242516286b70997e1894fa22b67d7f10ab) +++ Core/Common/src/Core.Common.Gui/Forms/ViewManager/AvalonDockDockingManager.cs (.../AvalonDockDockingManager.cs) (revision e00a8a09daf851d9bf0486ff19f37285e3ad15ef) @@ -10,7 +10,6 @@ using System.Windows.Forms; using System.Windows.Forms.Integration; using System.Windows.Input; -using System.Windows.Media; using System.Windows.Media.Imaging; using Core.Common.Controls.Views; using Core.Common.Gui.Properties; @@ -204,6 +203,15 @@ } } + public void SetImage(IView view, Image image) + { + var layoutDocument = GetLayoutContent(view); + if (layoutDocument != null) + { + layoutDocument.IconSource = BitmapImageFromBitmap(image); + } + } + public void ActivateView(IView view) { if (view == null || !views.Contains(view)) @@ -565,8 +573,7 @@ { Title = view.Text, Content = hostControl, - ContentId = view.Text, - IconSource = GetImage(view) + ContentId = view.Text }; var firstDocumentPane = dockingManager.Layout.Descendents().OfType().First(); @@ -618,11 +625,6 @@ hostControls.RemoveAt(index); } - private ImageSource GetImage(IView view) - { - return BitmapImageFromBitmap(view.ViewInfo.Image); - } - private LayoutContent GetLayoutContent(IView view) { var descendents = dockingManager.Layout.Descendents(); @@ -660,7 +662,6 @@ } layoutContent.Title = view.Text; - layoutContent.IconSource = GetImage(view); //update image aswell } } } \ No newline at end of file Index: Core/Common/src/Core.Common.Gui/Forms/ViewManager/IDockingManager.cs =================================================================== diff -u -r0c09106be1dfa0dad80232e39fea48b274ecdf37 -re00a8a09daf851d9bf0486ff19f37285e3ad15ef --- Core/Common/src/Core.Common.Gui/Forms/ViewManager/IDockingManager.cs (.../IDockingManager.cs) (revision 0c09106be1dfa0dad80232e39fea48b274ecdf37) +++ Core/Common/src/Core.Common.Gui/Forms/ViewManager/IDockingManager.cs (.../IDockingManager.cs) (revision e00a8a09daf851d9bf0486ff19f37285e3ad15ef) @@ -1,5 +1,6 @@ using System; using System.Collections.Generic; +using System.Drawing; using System.Windows.Forms; using Core.Common.Controls; using Core.Common.Controls.Views; @@ -47,6 +48,13 @@ void SetToolTip(IView view, string tooltip); /// + /// Sets the image of the container of the view + /// + /// + /// + void SetImage(IView view, Image image); + + /// /// Activates view. /// /// Index: Core/Common/src/Core.Common.Gui/Forms/ViewManager/ViewList.cs =================================================================== diff -u -rfa33f7c078c5d17f92f6a519f147a0a371593944 -re00a8a09daf851d9bf0486ff19f37285e3ad15ef --- Core/Common/src/Core.Common.Gui/Forms/ViewManager/ViewList.cs (.../ViewList.cs) (revision fa33f7c078c5d17f92f6a519f147a0a371593944) +++ Core/Common/src/Core.Common.Gui/Forms/ViewManager/ViewList.cs (.../ViewList.cs) (revision e00a8a09daf851d9bf0486ff19f37285e3ad15ef) @@ -1,6 +1,7 @@ using System; using System.Collections; using System.Collections.Generic; +using System.Drawing; using System.Linq; using System.Windows.Forms; using Core.Common.Controls.Views; @@ -240,6 +241,11 @@ dockingManager.SetToolTip(view, tooltip); } + public void SetImage(IView view, Image image) + { + dockingManager.SetImage(view, image); + } + IEnumerator IEnumerable.GetEnumerator() { return views.GetEnumerator(); Index: Core/Common/src/Core.Common.Gui/Forms/ViewManager/ViewResolver.cs =================================================================== diff -u -r60284d242516286b70997e1894fa22b67d7f10ab -re00a8a09daf851d9bf0486ff19f37285e3ad15ef --- Core/Common/src/Core.Common.Gui/Forms/ViewManager/ViewResolver.cs (.../ViewResolver.cs) (revision 60284d242516286b70997e1894fa22b67d7f10ab) +++ Core/Common/src/Core.Common.Gui/Forms/ViewManager/ViewResolver.cs (.../ViewResolver.cs) (revision e00a8a09daf851d9bf0486ff19f37285e3ad15ef) @@ -228,8 +228,11 @@ return true; } - viewList.Add(CreateViewForData(data, viewInfo)); + var newView = CreateViewForData(data, viewInfo); + viewList.Add(newView); + viewList.SetImage(newView, viewInfo.Image); + return true; } @@ -238,9 +241,9 @@ var view = (IView) Activator.CreateInstance(viewInfo.ViewType); view.Data = viewInfo.GetViewData(data); - view.ViewInfo = viewInfo; viewInfo.AfterCreate(view, data); + view.Text = viewInfo.GetViewName(view, view.Data); viewInfo.OnActivateView(view, data); Index: Core/Common/test/Core.Common.Test/TestObjects/TestDockingManager.cs =================================================================== diff -u -r0c09106be1dfa0dad80232e39fea48b274ecdf37 -re00a8a09daf851d9bf0486ff19f37285e3ad15ef --- Core/Common/test/Core.Common.Test/TestObjects/TestDockingManager.cs (.../TestDockingManager.cs) (revision 0c09106be1dfa0dad80232e39fea48b274ecdf37) +++ Core/Common/test/Core.Common.Test/TestObjects/TestDockingManager.cs (.../TestDockingManager.cs) (revision e00a8a09daf851d9bf0486ff19f37285e3ad15ef) @@ -1,7 +1,7 @@ using System; using System.Collections.Generic; +using System.Drawing; using System.Windows.Forms; -using Core.Common.Controls; using Core.Common.Controls.Views; using Core.Common.Gui; using Core.Common.Gui.Forms.ViewManager; @@ -34,6 +34,8 @@ public void SetToolTip(IView view, string tooltip) {} + public void SetImage(IView view, Image image) {} + public void ActivateView(IView view) {} public void Dispose() {}