public void RemoveDocument(IDocumentTabViewModel document)
{
IDocumentTabViewModel newSelectedTab = DocumentTabs.SelectedDocument;
if (DocumentTabs.SelectedDocument == document)
{
if (DocumentTabs.SelectedDocument != DocumentTabs.Documents.Last())
{
newSelectedTab = DocumentTabs.Documents.SkipWhile(d => d == document).FirstOrDefault();
}
else
{
newSelectedTab = DocumentTabs.Documents.Reverse().Skip(1).FirstOrDefault();
}
}
DocumentTabs.SelectedDocument = newSelectedTab;
DocumentTabs.Documents.Remove(document);
if (DocumentTabs.TemporaryDocument == document)
{
DocumentTabs.TemporaryDocument = null;
}
}