Exemplo n.º 1
0
		public void OpenDocument(DocumentBase document)
		{			
			if(document == null)
				return;

			DocumentBase doc = GetOpenDocument(document); //HACK
			if (doc != null)
				CurrentDocument = doc;
			else
			{
				Documents.Add(document);
				CurrentDocument = document;
			}
			
			OnDocumentOpened(this, new DataEventArgs<DocumentBase>(document));
		}
Exemplo n.º 2
0
		DocumentBase GetOpenDocument(DocumentBase document)
		{
			if (document == null || this.Documents == null || this.Documents.Count <= 0)
				return null;

			foreach (DocumentBase doc in this.Documents)
			{
				if (doc.DocumentTitle.Equals(document.DocumentTitle))
					return doc;
			}

			return null;
		}
		public DocumentClosingEventArgs(DocumentBase doc, bool cancel)
			: base(cancel)
		{
			this.Document = doc;
		}
Exemplo n.º 4
0
		public void CloseDocument(DocumentBase document)
		{
			if (Documents.Contains(document))
			{
				DocumentClosingEventArgs closeArgs = new DocumentClosingEventArgs(document);

				OnDocumentClosing(this, closeArgs);
				if (closeArgs.Cancel)
				{					
					return;
				}

				if (document.Equals(CurrentDocument))
				{
					CurrentDocument = null;
				}
											
				Documents.Remove(document);
				document.Dispose();
				OnDocumentClosed(this, new DataEventArgs<DocumentBase>(document));
			}
		}
		public DocumentClosingEventArgs(DocumentBase doc)
			: this(doc, false)
		{
		}