Оболочка Visual Studio
Оболочка Visual Studio является основным агентом интеграции в Visual Studio. Оболочка предоставляет необходимые функциональные возможности для предоставления vsPackages общего доступа к общим службам. Так как архитектурная цель Visual Studio заключается в предоставлении основных функций в VSPackages, оболочка — это платформа для предоставления основных функций и поддержки перекрестного взаимодействия между компонентами VSPackages.
Обязанности оболочки
Оболочка несет следующие ключевые обязанности:
Поддержка основных элементов пользовательского интерфейса (через com-интерфейсы). К ним относятся меню по умолчанию и панели инструментов, кадры окна документов или дочерние окна многодокументного интерфейса (MDI), а также окна инструментов и поддержка закрепления.
Поддержание запущенного списка всех открытых в настоящее время документов в работающей таблице документов (RDT) для координации сохраняемости документов и обеспечения того, что один документ не может быть открыт несколькими способами или несовместимыми способами.
Поддержка интерфейса
IOleCommandTarget
маршрутизации команд и обработки команд.Загрузка VSPackages в соответствующее время. Задержка загрузки ПАКЕТА VSPackage необходима для повышения производительности оболочки.
Управление определенными общими службами, такими как SVsShell, предоставляющее базовые функции оболочки и SVsUIShellпредоставляющее базовые функции окна.
Управление файлами решения (SLN). Решения содержат группы связанных проектов, аналогичные файлам рабочей области (DSW) в Visual C++ 6.0.
Отслеживание выбора оболочки, контекста и валюты. Оболочка отслеживает следующие типы элементов:
Текущий проект
Текущий элемент проекта или ItemID текущего IVsHierarchy
Текущий выбор для окна "Свойства " или
SelectionContainer
Идентификаторы контекста пользовательского интерфейса или CmdUIGuids, которые управляют видимостью команд, меню и панелей инструментов
Активные элементы, такие как активное окно, документ и диспетчер отмены
Атрибуты контекста пользователя, которые управляют динамической справкой
Оболочка также обеспечивает обмен данными между установленными vsPackages и текущими службами. Он поддерживает основные функции оболочки и делает их доступными для всех vsPackages, интегрированных в Visual Studio. Эти основные функции включают следующие элементы:
Диалоговое окно и экран-заставка
Диалоговое окно "Добавление новых и добавление существующих элементов"
Окно представления классов и браузер объектов
Диалоговое окно "Ссылки"
Окно структуры документа
Окно динамической справки
Поиск и замена
Диалоговое окно "Открыть проект " и "Открыть файл " в меню "Создать "
Диалоговое окно "Параметры" в меню "Сервис"
Окно "Свойства"
Обозреватель решений
Окно списка задач
Панель элементов