Exemplo n.º 1
0
        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)));
        }