Расширение VS2010, использующее MEF tagger, хочет использовать модель кода - PullRequest
2 голосов
/ 12 августа 2011

Я хочу написать расширение Visual Studio 2010, отображающее глифы полей для каждого класса, метода, свойства, поля и определения события (всплывающая подсказка / всплывающее окно с дополнительной информацией).

В основе нового MEFФреймворк действительно аккуратный, но единственное, что я могу пометить для создания маржинальных глифов - это снимки.к сожалению, у них нет какой-либо модели или структуры кода, и я вынужден искать имена классов и т. д. путем разбора строк => абсолютно не то, что я хочу делать.

Мы обнаружили, что можем использовать

[Import]
internal SVsServiceProvider ServiceProvider;

для получения объекта DTE для текущего документа.К сожалению, у нас все еще есть проблемы с вызовом fileCodeModel.CodeElementFromPoint(), потому что у нас нет объекта TextPoint.

Кто-нибудь знает, как преобразовать SnapshotSpan в TextPoint?

Есть ли другой способ напрямую пометить тегмодель кода вместо текста?Единственное, что я нашел в Google, было: Расширяемость Visual Studio / Поля - также забывал о том, как конвертировать из SnapshotSpan в TextPoint: (

С наилучшими пожеланиями. DR

1 Ответ

0 голосов
/ 14 августа 2011

Я не знаю, как это сделать сам, но вы могли бы понять это, посмотрев код RapidMEF .

...