private void WindowLoadedHandler(object sender, RoutedEventArgs args) { _windowDatabaseMonitor.Owner = WindowTraceLog.Instance.Owner = this; CommandBindings.Add(new CommandBinding(GenericCommands.SaveAll, SaveAllCommandExecutedHandler)); WorkDocumentCollection.RestoreWindowProperties(this); _windowDatabaseMonitor.RestoreAppearance(); if (WorkDocumentCollection.WorkingDocuments.Count > 0) { foreach (var workingDocument in WorkDocumentCollection.WorkingDocuments.OrderBy(d => d.TabIndex)) { AddNewDocumentPage(workingDocument); } } else { AddNewDocumentPage(); } DocumentTabControl.SelectionChanged += TabControlSelectionChangedHandler; DocumentTabControl.SelectedIndex = WorkDocumentCollection.ActiveDocumentIndex; ClipboardManager.RegisterWindow(this); ClipboardManager.ClipboardChanged += ClipboardChangedHandler; EditorNavigationService.Initialize(ActiveDocument.WorkDocument); }
public void RestoreAppearance() { _customProperties = WorkDocumentCollection.RestoreWindowProperties(this); double sessionDataGridHeight = 0; if (_customProperties?.TryGetValue(SessionDataGridHeightProperty, out sessionDataGridHeight) == true) { RowDefinitionSessionDataGrid.Height = new GridLength(sessionDataGridHeight); } }
public static void Initialize() { if (Instance != null) { throw new InvalidOperationException("Trace log window has been already initialized. "); } var contentBuilder = new StringBuilder(); foreach (var message in _messages.OrderBy(m => m)) { contentBuilder.AppendLine(message); } Instance = new WindowTraceLog { TraceLog = contentBuilder.ToString() }; _messages = new ConcurrentBag <string>(); WorkDocumentCollection.RestoreWindowProperties(Instance); }