private static void Show(ManageLayoutsViewModel dataContext, IWindowLayoutSettings settings = null) { Validate.IsNotNull(dataContext, "DataContext"); var manageLayoutsDialog = new ManageLayoutsDialog(); if (settings != null) { var layoutsDialogWidth = settings.ManageLayoutsDialogWidth; if (layoutsDialogWidth != 0) { manageLayoutsDialog.Width = layoutsDialogWidth; } var layoutsDialogHeight = settings.ManageLayoutsDialogHeight; if (layoutsDialogHeight != 0) { manageLayoutsDialog.Height = layoutsDialogHeight; } } manageLayoutsDialog.DataContext = dataContext; dataContext.Layouts.CollectionChanged += manageLayoutsDialog.OnLayoutsCollectionChanged; try { manageLayoutsDialog.ShowModal(); } finally { dataContext.Layouts.CollectionChanged -= manageLayoutsDialog.OnLayoutsCollectionChanged; } if (settings == null) { return; } settings.ManageLayoutsDialogWidth = (int)manageLayoutsDialog.Width; settings.ManageLayoutsDialogHeight = (int)manageLayoutsDialog.Height; }
internal LayoutManager(LayoutManagementService layoutSystem, IStatusBarDataModelService statusBar, IWindowLayoutSettings layoutSettings, IWindowLayoutStore layoutStore) { Validate.IsNotNull(layoutStore, nameof(layoutStore)); Validate.IsNotNull(layoutSettings, nameof(layoutSettings)); Validate.IsNotNull(layoutSystem, nameof(layoutSystem)); _layoutSystem = layoutSystem; _statusBar = statusBar; _layoutSettings = layoutSettings; _layoutManagementUserInput = new DialogUserInput(layoutSettings); _layoutStore = layoutStore; }
internal static IEnumerable <KeyValuePair <string, WindowLayout> > Show(IEnumerable <KeyValuePair <string, WindowLayout> > layoutKeyInfoCollection, IWindowLayoutSettings settings = null) { ManageLayoutsViewModel dataContext = new ManageLayoutsViewModel(layoutKeyInfoCollection, new DialogUserInput()); Show(dataContext, settings); return(dataContext.Layouts.Select(layout => new KeyValuePair <string, WindowLayout>(layout.Key, layout.Layout))); }
public DialogUserInput(IWindowLayoutSettings settings = null) { _settings = settings; }