/// <inheritdoc/> public override IDock CreateLayout() { var editorView = new EditorView { Id = nameof(EditorView), Title = "Editor" }; var dashboardView = new DashboardView { Id = nameof(DashboardView), Title = "Dashboard" }; var layout = new RootDock { Id = nameof(IRootDock), Title = "Root", CurrentView = dashboardView, DefaultView = dashboardView, Views = new ObservableCollection <IView> { dashboardView, editorView } }; return(layout); }
/// <inheritdoc/> public override IDock CreateLayout() { // MainLayout = CreatePerspectiveLayout("Main").root; // Root Root = new RootDock { Id = "Root", Title = "Root", Views = new ObservableCollection <IView> { } }; return(Root); }
public void RootDock_Ctor() { var actual = new RootDock(); Assert.NotNull(actual); }
/// <inheritdoc/> public override IDock CreateLayout() { // Documents var pageDocument = new PageDocument { Id = nameof(PageDocument), Title = "Page" }; // Tools var projectTool = new ProjectTool { Id = nameof(ProjectTool), Title = "Project" }; var optionsTool = new OptionsTool { Id = nameof(OptionsTool), Title = "Options" }; var imagesTool = new ImagesTool { Id = nameof(ImagesTool), Title = "Images" }; var groupsTool = new GroupsTool { Id = nameof(GroupsTool), Title = "Groups" }; var databasesTool = new DatabasesTool { Id = nameof(DatabasesTool), Title = "Databases" }; var scriptTool = new ScriptTool { Id = nameof(ScriptTool), Title = "Script" }; var browserTool = new BrowserTool { Id = nameof(BrowserTool), Title = "Browser" }; var stylesTool = new StylesTool { Id = nameof(StylesTool), Title = "Styles" }; var templatesTool = new TemplatesTool { Id = nameof(TemplatesTool), Title = "Templates" }; var containerTool = new ContainerTool { Id = nameof(ContainerTool), Title = "Container" }; var zoomTool = new ZoomTool { Id = nameof(ZoomTool), Title = "Zoom" }; var shapeTool = new ShapeTool { Id = nameof(ShapeTool), Title = "Shape" }; var toolsTool = new ToolsTool { Id = nameof(ToolsTool), Title = "Tools" }; var dataTool = new DataTool { Id = nameof(DataTool), Title = "Data" }; var styleTool = new StyleTool { Id = nameof(StyleTool), Title = "Style" }; var templateTool = new TemplateTool { Id = nameof(TemplateTool), Title = "Template" }; // Panes var leftPane = new LayoutDock { Id = nameof(ILayoutDock), Title = "EditorLeft", Orientation = Orientation.Vertical, Proportion = 0.17, CurrentView = null, Views = new ObservableCollection <IView> { new ToolDock { Id = nameof(IToolDock), Title = "EditorLeftTop", Proportion = double.NaN, CurrentView = projectTool, Views = new ObservableCollection <IView> { projectTool, optionsTool, imagesTool } }, new SplitterDock() { Id = nameof(ISplitterDock), Title = "LeftTopSplitter" }, new ToolDock { Id = nameof(IToolDock), Title = "EditorLeftBottom", Proportion = double.NaN, CurrentView = groupsTool, Views = new ObservableCollection <IView> { groupsTool, databasesTool, scriptTool, browserTool } } } }; var rightPane = new LayoutDock { Id = nameof(ILayoutDock), Title = "EditorRight", Orientation = Orientation.Vertical, Proportion = 0.17, CurrentView = null, Views = new ObservableCollection <IView> { new ToolDock { Id = nameof(IToolDock), Title = "EditorRightTop", Proportion = double.NaN, CurrentView = stylesTool, Views = new ObservableCollection <IView> { stylesTool, templatesTool, containerTool, zoomTool } }, new SplitterDock() { Id = nameof(ISplitterDock), Title = "RightTopSplitter" }, new ToolDock { Id = nameof(IToolDock), Title = "EditorRightBottom", Proportion = double.NaN, CurrentView = shapeTool, Views = new ObservableCollection <IView> { shapeTool, toolsTool, dataTool, styleTool, templateTool } } } }; var documentsPane = new DocumentDock { Id = nameof(IDocumentDock), Title = "DocumentsPane", Proportion = double.NaN, CurrentView = pageDocument, Views = new ObservableCollection <IView> { pageDocument } }; // Editor var editorLayout = new LayoutDock { Id = nameof(ILayoutDock), Title = "EditorLayout", Orientation = Orientation.Horizontal, Proportion = double.NaN, CurrentView = null, Views = new ObservableCollection <IView> { leftPane, new SplitterDock() { Id = nameof(ISplitterDock), Title = "LeftSplitter" }, documentsPane, new SplitterDock() { Id = nameof(ISplitterDock), Title = "RightSplitter" }, rightPane } }; // Views var editorView = new EditorView { Id = nameof(EditorView), Title = "Editor", CurrentView = editorLayout, Views = new ObservableCollection <IView> { editorLayout } }; var aboutView = new AboutView { Id = nameof(AboutView), Title = "About" }; var browserView = new BrowserView { Id = nameof(BrowserView), Title = "Browser" }; var scriptView = new ScriptView { Id = nameof(ScriptView), Title = "Script" }; var documentView = new DocumentView { Id = nameof(DocumentView), Title = "Document" }; var dashboardView = new DashboardView { Id = nameof(DashboardView), Title = "Dashboard" }; // Root var layout = new RootDock { Id = nameof(IRootDock), Title = "Root", CurrentView = dashboardView, DefaultView = dashboardView, Views = new ObservableCollection <IView> { dashboardView, editorView, aboutView, browserView, scriptView, documentView } }; return(layout); }
/// <inheritdoc/> public override IDock CreateLayout() { // Documents var document1 = new Document1 { Id = "Document1", Width = double.NaN, Height = double.NaN, Title = "Document1" }; var document2 = new Document2 { Id = "Document2", Width = double.NaN, Height = double.NaN, Title = "Document2" }; var document3 = new Document3 { Id = "Document3", Width = double.NaN, Height = double.NaN, Title = "Document3" }; // Left / Top var leftTopTool1 = new LeftTopTool1 { Id = "LeftTop1", Width = double.NaN, Height = double.NaN, Title = "LeftTop1" }; var leftTopTool2 = new LeftTopTool2 { Id = "LeftTop2", Width = 200, Height = 200, Title = "LeftTop2" }; var leftTopTool3 = new LeftTopTool3 { Id = "LeftTop3", Width = double.NaN, Height = double.NaN, Title = "LeftTop3" }; // Left / Bottom var leftBottomTool1 = new LeftBottomTool1 { Id = "LeftBottom1", Width = double.NaN, Height = double.NaN, Title = "LeftBottom1" }; var leftBottomTool2 = new LeftBottomTool2 { Id = "LeftBottom2", Width = double.NaN, Height = double.NaN, Title = "LeftBottom2" }; var leftBottomTool3 = new LeftBottomTool3 { Id = "LeftBottom3", Width = double.NaN, Height = double.NaN, Title = "LeftBottom3" }; // Right / Top var rightTopTool1 = new RightTopTool1 { Id = "RightTop1", Width = double.NaN, Height = double.NaN, Title = "RightTop1" }; var rightTopTool2 = new RightTopTool2 { Id = "RightTop2", Width = double.NaN, Height = double.NaN, Title = "RightTop2" }; var rightTopTool3 = new RightTopTool3 { Id = "RightTop3", Width = double.NaN, Height = double.NaN, Title = "RightTop3" }; // Right / Bottom var rightBottomTool1 = new RightBottomTool1 { Id = "RightBottom1", Width = double.NaN, Height = double.NaN, Title = "RightBottom1" }; var rightBottomTool2 = new RightBottomTool2 { Id = "RightBottom2", Width = double.NaN, Height = double.NaN, Title = "RightBottom2" }; var rightBottomTool3 = new RightBottomTool3 { Id = "RightBottom3", Width = double.NaN, Height = double.NaN, Title = "RightBottom3" }; // Left Pane var leftPane = new LayoutDock { Id = "LeftPane", Dock = "Left", Width = 200, Height = double.NaN, Title = "LeftPane", CurrentView = null, Views = CreateList <IView> ( new ToolDock { Id = "LeftPaneTop", Dock = "Top", Width = double.NaN, Height = 340, Title = "LeftPaneTop", CurrentView = leftTopTool1, Views = CreateList <IView> ( leftTopTool1, leftTopTool2, leftTopTool3 ) }, new SplitterDock() { Id = "LeftPaneTopSplitter", Dock = "Top", Title = "LeftPaneTopSplitter" }, new ToolDock { Id = "LeftPaneBottom", Dock = "Bottom", Width = double.NaN, Height = double.NaN, Title = "LeftPaneBottom", CurrentView = leftBottomTool1, Views = CreateList <IView> ( leftBottomTool1, leftBottomTool2, leftBottomTool3 ) } ) }; // Right Pane var rightPane = new LayoutDock { Id = "RightPane", Dock = "Right", Width = 240, Height = double.NaN, Title = "RightPane", CurrentView = null, Views = CreateList <IView> ( new ToolDock { Id = "RightPaneTop", Dock = "Top", Width = double.NaN, Height = 340, Title = "RightPaneTop", CurrentView = rightTopTool1, Views = CreateList <IView> ( rightTopTool1, rightTopTool2, rightTopTool3 ) }, new SplitterDock() { Id = "RightPaneTopSplitter", Dock = "Top", Title = "RightPaneTopSplitter" }, new ToolDock { Id = "RightPaneBottom", Dock = "Bottom", Width = double.NaN, Height = double.NaN, Title = "RightPaneBottom", CurrentView = rightBottomTool1, Views = CreateList <IView> ( rightBottomTool1, rightBottomTool2, rightBottomTool3 ) } ) }; // Documents var documentsPane = new DocumentDock { Id = "DocumentsPane", Dock = "", Width = double.NaN, Height = double.NaN, Title = "DocumentsPane", CurrentView = document1, Views = CreateList <IView> ( document1, document2, document3 ) }; // Main var mainLayout = new LayoutDock { Id = "MainLayout", Dock = "", Width = double.NaN, Height = double.NaN, Title = "MainLayout", CurrentView = null, Views = CreateList <IView> ( leftPane, new SplitterDock() { Id = "LeftSplitter", Dock = "Left", Title = "LeftSplitter" }, rightPane, new SplitterDock() { Id = "RightSplitter", Dock = "Right", Title = "RightSplitter" }, documentsPane ) }; var mainView = new MainView { Id = "Main", Width = double.NaN, Height = double.NaN, Title = "Main", CurrentView = mainLayout, Views = CreateList <IView> ( mainLayout ) }; // Home var homeView = new HomeView { Id = "Home", Width = double.NaN, Height = double.NaN, Title = "Home" }; // Root var root = new RootDock { Id = "Root", Width = double.NaN, Height = double.NaN, Title = "Root", CurrentView = homeView, DefaultView = homeView, Views = CreateList <IView>(homeView, mainView) }; return(root); }
/// <inheritdoc/> public override IDock CreateLayout() { LeftDock = new ToolDock { Id = "LeftPaneTop", Proportion = double.NaN, Title = "LeftPaneTop", CurrentView = null, Views = new ObservableCollection <IView>() }; // Left Pane LeftPane = new LayoutDock { Id = "LeftPane", Proportion = 0.15, Orientation = Orientation.Vertical, Title = "LeftPane", CurrentView = null, Views = CreateList <IView> ( LeftDock ) }; RightDock = new ToolDock { Id = "RightDock", Title = "RightDock", CurrentView = null, Views = new ObservableCollection <IView>() }; var RightPane = new LayoutDock { Id = "RightPane", Proportion = 0.15, Orientation = Orientation.Vertical, Title = "LeftPane", CurrentView = null, Views = CreateList <IView> ( RightDock ) }; BottomDock = new ToolDock { Id = "BottomDock", Title = "BottomDock", CurrentView = null, Proportion = 0.3, Views = new ObservableCollection <IView>() }; // Documents DocumentDock = new DocumentDock { Id = "DocumentsPane", Proportion = double.NaN, Title = "DocumentsPane", CurrentView = null, Views = new ObservableCollection <IView>() }; CenterPane = new LayoutDock { Id = "CenterPane", Proportion = double.NaN, Orientation = Orientation.Vertical, Title = "LeftPane", CurrentView = null, Views = CreateList <IView> ( DocumentDock, new SplitterDock(), BottomDock ) }; // Main var mainLayout = new LayoutDock { Id = "MainLayout", Proportion = double.NaN, Orientation = Orientation.Horizontal, Title = "MainLayout", CurrentView = null, Views = new ObservableCollection <IView> { LeftPane, new SplitterDock() { Id = "LeftSplitter", Title = "LeftSplitter" }, CenterPane, new SplitterDock() { Id = "RightSplitter", Title = "RightSplitter" }, RightPane } }; var mainView = new MainView { Id = "Main", Title = "Main", CurrentView = mainLayout, Views = new ObservableCollection <IView> { mainLayout } }; // Root var root = new RootDock { Id = "Root", Title = "Root", CurrentView = mainView, DefaultView = mainView, Views = new ObservableCollection <IView> { mainView, } }; return(root); }
/// <inheritdoc/> public override IDock CreateLayout() { // Right Pane RightDock = new ToolDock { Id = "RightDock", Dock = "Right", Width = 300, Height = double.NaN, Title = "RightDock", CurrentView = null, Views = new ObservableCollection <IView>() }; // Documents DocumentDock = new DocumentDock { Id = "DocumentsPane", Dock = "", Width = double.NaN, Height = double.NaN, Title = "DocumentsPane", CurrentView = null, Views = new ObservableCollection <IView>() }; // Main var mainLayout = new LayoutDock { Id = "MainLayout", Dock = "", Width = double.NaN, Height = double.NaN, Title = "MainLayout", CurrentView = null, Views = new ObservableCollection <IView> { RightDock, DocumentDock } }; var mainView = new MainView { Id = "Main", Width = double.NaN, Height = double.NaN, Title = "Main", CurrentView = mainLayout, Views = new ObservableCollection <IView> { mainLayout } }; // Root var root = new RootDock { Id = "Root", Width = double.NaN, Height = double.NaN, Title = "Root", CurrentView = mainView, DefaultView = mainView, Views = new ObservableCollection <IView> { mainView, } }; return(root); }
/// <inheritdoc/> public override IDock CreateLayout() { var documentDock = new AvalonStudioDocumentDock { Id = "DocumentsPane", Proportion = double.NaN, Title = "DocumentsPane", ActiveDockable = null, IsCollapsable = false, VisibleDockables = _documents }; var verticalContainer = new ProportionalDock { Id = "VerticalContainer", Proportion = double.NaN, Orientation = Orientation.Vertical, Title = "VerticalContainer", ActiveDockable = null, VisibleDockables = new ObservableCollection <IDockable> { documentDock, } }; var horizontalContainer = new ProportionalDock { Id = "HorizontalContainer", Proportion = double.NaN, Orientation = Orientation.Horizontal, Title = "HorizontalContainer", ActiveDockable = null, VisibleDockables = new ObservableCollection <IDockable> { verticalContainer, } }; var mainLayout = new RootDock { Id = "Perspective", Title = "Perspective", ActiveDockable = horizontalContainer, VisibleDockables = new ObservableCollection <IDockable> { horizontalContainer } }; Root = new RootDock { Id = "Root", Title = "Root", ActiveDockable = mainLayout, VisibleDockables = new ObservableCollection <IDockable> { mainLayout } }; Root.WhenAnyValue(x => x.VisibleDockables) .Subscribe(x => { }); (Root.VisibleDockables as ObservableCollection <IDockable>).CollectionChanged += DefaultLayoutFactory_CollectionChanged; return(Root); }
/// <inheritdoc/> public override IDock CreateLayout() { // Documents var pageDocument = new PageDocument { Id = nameof(PageDocument), Width = double.NaN, Height = double.NaN, Title = "Page" }; // Left / Top var projectView = new ProjectTool { Id = nameof(ProjectTool), Width = double.NaN, Height = double.NaN, Title = "Project" }; var optionsView = new OptionsTool { Id = nameof(OptionsTool), Width = 200, Height = 200, Title = "Options" }; var imagesView = new ImagesTool { Id = nameof(ImagesTool), Width = double.NaN, Height = double.NaN, Title = "Images" }; // Left / Bottom var groupsView = new GroupsTool { Id = nameof(GroupsTool), Width = double.NaN, Height = double.NaN, Title = "Groups" }; var databasesView = new DatabasesTool { Id = nameof(DatabasesTool), Width = double.NaN, Height = double.NaN, Title = "Databases" }; // Right / Top var stylesView = new StylesTool { Id = nameof(StylesTool), Width = double.NaN, Height = double.NaN, Title = "Styles" }; var templatesView = new TemplatesTool { Id = nameof(TemplatesTool), Width = double.NaN, Height = double.NaN, Title = "Templates" }; var containerView = new ContainerTool { Id = nameof(ContainerTool), Width = double.NaN, Height = double.NaN, Title = "Container" }; var zoomView = new ZoomTool { Id = nameof(ZoomTool), Width = double.NaN, Height = double.NaN, Title = "Zoom" }; // Right / Bottom var toolsView = new ToolsTool { Id = nameof(ToolsTool), Width = double.NaN, Height = double.NaN, Title = "Tools" }; var shapeView = new ShapeTool { Id = nameof(ShapeTool), Width = double.NaN, Height = double.NaN, Title = "Shape" }; var dataView = new DataTool { Id = nameof(DataTool), Width = double.NaN, Height = double.NaN, Title = "Data" }; var styleView = new StyleTool { Id = nameof(StyleTool), Width = double.NaN, Height = double.NaN, Title = "Style" }; var templateView = new TemplateTool { Id = nameof(TemplateTool), Width = double.NaN, Height = double.NaN, Title = "Template" }; // Left Pane var leftPane = new LayoutDock { Id = nameof(ILayoutDock), Dock = "Left", Width = 200, Height = double.NaN, Title = "EditorLeft", CurrentView = null, Views = new ObservableCollection <IView> { new ToolDock { Id = nameof(IToolDock), Dock = "Top", Width = double.NaN, Height = 340, Title = "EditorLeftTop", CurrentView = projectView, Views = new ObservableCollection <IView> { projectView, optionsView, imagesView } }, new SplitterDock() { Id = nameof(ISplitterDock), Dock = "Top", Title = "LeftTopSplitter" }, new ToolDock { Id = nameof(IToolDock), Dock = "Bottom", Width = double.NaN, Height = double.NaN, Title = "EditorLeftBottom", CurrentView = groupsView, Views = new ObservableCollection <IView> { groupsView, databasesView } } } }; // Right Pane var rightPane = new LayoutDock { Id = nameof(ILayoutDock), Dock = "Right", Width = 240, Height = double.NaN, Title = "EditorRight", CurrentView = null, Views = new ObservableCollection <IView> { new ToolDock { Id = nameof(IToolDock), Dock = "Top", Width = double.NaN, Height = 340, Title = "EditorRightTop", CurrentView = stylesView, Views = new ObservableCollection <IView> { stylesView, templatesView, containerView, zoomView } }, new SplitterDock() { Id = nameof(ISplitterDock), Dock = "Top", Title = "RightTopSplitter" }, new ToolDock { Id = nameof(IToolDock), Dock = "Bottom", Width = double.NaN, Height = double.NaN, Title = "EditorRightBottom", CurrentView = toolsView, Views = new ObservableCollection <IView> { toolsView, shapeView, dataView, styleView, templateView } } } }; // Documents var documentsPane = new DocumentDock { Id = nameof(IDocumentDock), Dock = "", Width = double.NaN, Height = double.NaN, Title = "DocumentsPane", CurrentView = pageDocument, Views = new ObservableCollection <IView> { pageDocument } }; // Main var editorLayout = new LayoutDock { Id = nameof(ILayoutDock), Dock = "", Width = double.NaN, Height = double.NaN, Title = "EditorLayout", CurrentView = null, Views = new ObservableCollection <IView> { leftPane, new SplitterDock() { Id = nameof(ISplitterDock), Dock = "Left", Title = "LeftSplitter" }, rightPane, new SplitterDock() { Id = nameof(ISplitterDock), Dock = "Right", Title = "RightSplitter" }, documentsPane } }; var editorView = new EditorView { Id = nameof(EditorView), Width = double.NaN, Height = double.NaN, Title = "Editor", CurrentView = editorLayout, Views = new ObservableCollection <IView> { editorLayout } }; // About var aboutView = new AboutView { Id = nameof(AboutView), Width = double.NaN, Height = double.NaN, Title = "About" }; // Browser var browserView = new BrowserView { Id = nameof(BrowserView), Width = double.NaN, Height = double.NaN, Title = "Browser" }; // Document var documentView = new DocumentView { Id = nameof(DocumentView), Width = double.NaN, Height = double.NaN, Title = "Document" }; // Dashboard var dashboardView = new DashboardView { Id = nameof(DashboardView), Width = double.NaN, Height = double.NaN, Title = "Dashboard" }; // Main var layout = new RootDock { Id = nameof(IRootDock), Width = double.NaN, Height = double.NaN, Title = "Root", CurrentView = dashboardView, DefaultView = dashboardView, Views = new ObservableCollection <IView> { dashboardView, editorView, aboutView, browserView, documentView } }; return(layout); }