public IDropHandler GetAssociatedDropHandler(IWpfTextView view) { try { ITextBufferUndoManager undoManager = this.UndoProvider.GetTextBufferUndoManager(view.TextBuffer); var vsa = new VisualStudioAbstraction(Logger, Package, dte); var projType = ProjectType.Unknown; if (this.TextDocumentFactoryService.TryGetTextDocument(view.TextBuffer, out ITextDocument textDocument)) { var proj = ProjectHelpers.Dte.Solution.GetProjectContainingFile(textDocument.FilePath); projType = vsa.GetProjectType(proj); Logger?.RecordInfo(StringRes.Info_DetectedProjectType.WithParams(projType.GetDescription())); } return(view.Properties.GetOrCreateSingletonProperty(() => new RapidXamlDropHandler(Logger, view, undoManager, vsa, projType, solution))); } catch (Exception exc) { RxtOutputPane.Instance.Write(RxtLogger.TimeStampMessage(StringRes.Error_UnableToGetDropHandler)); Logger?.RecordException(exc); return(null); } }
public IDropHandler GetAssociatedDropHandler(IWpfTextView view) { ITextBufferUndoManager undoManager = this.UndoProvider.GetTextBufferUndoManager(view.TextBuffer); var vsa = new VisualStudioAbstraction(Logger, Package, dte); return(view.Properties.GetOrCreateSingletonProperty(() => new RapidXamlDropHandler(Logger, view, undoManager, vsa))); }