public IWorkspaceDocumentScreen CreateDocumentScreen(IWorkspaceDocument document) { switch (document) { case IMonitoringConfiguration monitoringConfiguration: return(CreateSpecifiedDocumentScreen(monitoringConfiguration)); case IEventsDocument eventsDocument: return(CreateSpecifiedDocumentScreen(eventsDocument)); case null: throw new ArgumentNullException(nameof(document)); default: throw new ArgumentException($"Unsupported document type {document.GetType()}"); } }
/// <summary> /// Initialize a document opened message with an instance of the document that was opened. /// </summary> /// <param name="theDocumentViewModel"></param> public DocumentOpenedMessage(IWorkspaceDocument theDocumentViewModel) : base(theDocumentViewModel) { }
/// <summary> /// Initialize the document message with a document. /// </summary> /// <param name="theDocumentViewModel">Document view model</param> protected DocumentChangedMessage(IWorkspaceDocument theDocumentViewModel) { Document = theDocumentViewModel; }