public void Initialise(IDockFactory layoutFactory = null) { if (layoutFactory == null) { Factory = new DefaultLayoutFactory(); } else { Factory = layoutFactory; } LoadLayout(); foreach (var extension in _extensions) { if (extension.Value is IActivatableExtension activatable) { activatable.BeforeActivation(); } } _layout.WhenAnyValue(l => l.FocusedView).Subscribe(focused => { if (focused?.Context is IDocumentTabViewModel doc) { SelectedDocument = doc; } else { SelectedDocument = null; } }); foreach (var extension in _extensions) { if (extension.Value is IActivatableExtension activatable) { activatable.Activation(); } } foreach (var command in _commandService.GetKeyGestures()) { foreach (var keyGesture in command.Value) { _keyBindings.Add(new KeyBinding { Command = command.Key.Command, Gesture = KeyGesture.Parse(keyGesture) }); } } IoC.Get <IStatusBar>().ClearText(); }
public void Initialise(IFactory layoutFactory = null) { if (layoutFactory == null) { Factory = new DefaultLayoutFactory(); } else { Factory = layoutFactory; } LoadLayout(); foreach (var extension in _extensions) { if (extension.Value is IActivatableExtension activatable) { activatable.BeforeActivation(); } } foreach (var extension in _extensions) { if (extension.Value is IActivatableExtension activatable) { activatable.Activation(); } } foreach (var command in _commandService.GetKeyGesture()) { if (command.Value != null) { _keyBindings.Add(new KeyBinding { Command = command.Key.Command, Gesture = KeyGesture.Parse(command.Value) }); } } IoC.Get <IStatusBar>().ClearText(); }
public void Initialise(IDockFactory layoutFactory = null) { foreach (var extension in _extensions) { if (extension.Value is IActivatableExtension activatable) { activatable.BeforeActivation(); } } if (layoutFactory == null) { Factory = new DefaultLayoutFactory(); } else { Factory = layoutFactory; } LoadLayout(); Layout.WhenAnyValue(l => l.FocusedView).Subscribe(focused => { if (focused is IDocumentTabViewModel doc) { SelectedDocument = doc; } else { SelectedDocument = null; } }); if (Layout.Factory.ViewLocator.ContainsKey("LeftDock")) { _leftPane = Layout.Factory.ViewLocator["LeftDock"]() as ToolDock; } if (Layout.Factory.ViewLocator.ContainsKey("DocumentDock")) { _documentDock = Layout.Factory.ViewLocator["DocumentDock"]() as DocumentDock; } if (Layout.Factory.ViewLocator.ContainsKey("RightDock")) { _rightPane = Layout.Factory.ViewLocator["RightDock"]() as ToolDock; } if (Layout.Factory.ViewLocator.ContainsKey("BottomDock")) { _bottomPane = Layout.Factory.ViewLocator["BottomDock"]() as ToolDock; } foreach (var extension in _extensions) { if (extension.Value is IActivatableExtension activatable) { activatable.Activation(); } } foreach (var command in _commandService.GetKeyGestures()) { foreach (var keyGesture in command.Value) { _keyBindings.Add(new KeyBinding { Command = command.Key.Command, Gesture = KeyGesture.Parse(keyGesture) }); } } foreach (var tool in _toolControls) { switch (tool.Value.DefaultLocation) { case Location.Bottom: DockView(_bottomPane, tool.Value); break; //case Location.BottomRight: // BottomRightTabs.Tools.Add(tool); // break; //case Location.RightBottom: // RightBottomTabs.Tools.Add(tool); // break; //case Location.RightMiddle: // RightMiddleTabs.Tools.Add(tool); // break; //case Location.RightTop: // RightTopTabs.Tools.Add(tool); // break; //case Location.MiddleTop: // MiddleTopTabs.Tools.Add(tool); // break; case Location.Left: DockView(_leftPane, tool.Value); break; case Location.Right: DockView(_rightPane, tool.Value); break; } } IoC.Get <IStatusBar>().ClearText(); }