public void Remove(IClosedDocument closedDocument) { if (ClosedDocuments.Remove(closedDocument)) { OnHistoryChanged(); } }
public ClosedDocumentHistoryItem(IClosedDocument closedDocument, int index, BitmapSource typeIcon) { Index = index; ClosedDocument = closedDocument; IsExists = ClosedDocument.IsValid(); LanguageIcon = typeIcon; }
public void ItShould_Remove_Document() { _documentHistoryManager.Add(NullDocument.Instance); _documentHistoryManager.Add(new ClosedDocument() { FullName = "c:\\test.cs", ClosedAt = DateTime.Now }); _documentHistoryManager.Add(new ClosedDocument() { FullName = "c:\\test2.cs", ClosedAt = DateTime.Now }); _documentHistoryManager.Add(new ClosedDocument() { FullName = "c:\\test3.cs", ClosedAt = DateTime.Now }); IClosedDocument doc = _documentHistoryManager.Get(2).Last(); //test2.cs _documentHistoryManager.Remove(doc); var all = _documentHistoryManager.GetAll(); Assert.True(_historyChanged); Assert.Equal(3, _documentHistoryManager.Count); Assert.Equal(3, all.Count()); Assert.Equal("c:\\test3.cs", all.ElementAt(0).FullName); Assert.Equal("c:\\test.cs", all.ElementAt(1).FullName); Assert.Equal(NullDocument.Instance, all.ElementAt(2)); }
public Icon GetIcon(IClosedDocument document) { if (document.IsValid()) { var iconForFile = Icon.ExtractAssociatedIcon(document.FullName); return(iconForFile); } return(null); }
private BitmapSource GetFileTypeBitmapSource(IClosedDocument doc) { var extension = Path.GetExtension(doc.FullName).ToLower(); if (!_fileTypeImages.ContainsKey(extension)) { var bitmapSource = WpfImageSourceConverter.CreateBitmapSource(_fileExtensionIconResolver.GetIcon(doc).ToBitmap()); _fileTypeImages.Add(extension, bitmapSource); return(bitmapSource); } return(_fileTypeImages[extension]); }
//https://msdn.microsoft.com/en-us/library/mt628927.aspx?f=255&MSPPError=-2147217396 public Icon GetIcon(IClosedDocument document) { Icon icon = null; if (!string.IsNullOrWhiteSpace(document?.Name)) { IVsUIObject uIObj = _vsImageService2.GetIconForFile(document.Name, __VSUIDATAFORMAT.VSDF_WINFORMS); if (uIObj != null) { icon = (Icon)GelUtilities.GetObjectData(uIObj); } } return(icon); }
public void ItShould_Create_Command_With_Documents() { var factory = new HistoryCommandFactory <FakeCommand2>(_documentHistoryCommandsMock.Object, _documentCommandFactoryMock.Object); var docs = new IClosedDocument[] { NullDocument.Instance }; var command = factory.CreateCommand(docs); Assert.NotNull(command); Assert.IsType <FakeCommand2>(command); Assert.Equal((command as FakeCommand2).ClosedDocuments, docs); }
public Icon GetIcon(IClosedDocument document) { var extension = Path.GetExtension(document?.FullName)?.ToLower() ?? NoIconKey; if (!Icons.ContainsKey(extension)) { var icon = _fileExtensionIconResolver.GetIcon(document); if (icon is null) { return(Icons[NoIconKey]); } Icons.Add(extension, icon); return(icon); } return(Icons[extension]); }
public void Add(IClosedDocument document) { if (document == null) { return; } //Remove duplications var docs = ClosedDocuments .Where(x => _closedDocumentComparer.Equals(x, document)) .ToArray(); //TODO: use intersect foreach (var doc in docs) { ClosedDocuments.Remove(doc); } //TODO: filter history by MaxAllowed Number and Days... ClosedDocuments.AddFirst(document); OnHistoryChanged(); }
public IDocumentCommand CreateCommand(IClosedDocument closedDocument) => DoNothingCommand.Instance;
public IDocumentCommand CreateCommand(IClosedDocument closedDocument) { return(new ReopenDocumentCommand(_dte, closedDocument)); }
public ReopenDocumentCommand(_DTE dte, IClosedDocument closedDocument) { _dte = dte; _closedDocument = closedDocument; }