Интерфейс ICustomDestinationList (shobjidl_core.h)
Предоставляет методы, позволяющие приложению предоставлять настраиваемый список переходов, включая назначения и задачи, для отображения на панели задач.
Наследование
Интерфейс ICustomDestinationList наследуется от интерфейса IUnknown . ICustomDestinationList также имеет следующие типы элементов:
Методы
Интерфейс ICustomDestinationList содержит следующие методы.
ICustomDestinationList::AbortList Прекращает сеанс создания списка переходов, инициированный ICustomDestinationList::BeginList, без фиксации каких-либо изменений. |
ICustomDestinationList::AddUserTasks Указывает элементы, которые нужно включить в категорию Задачи настраиваемого списка переходов. |
ICustomDestinationList::AppendCategory Определяет пользовательскую категорию и содержащиеся в ней назначения для включения в настраиваемый список переходов. |
ICustomDestinationList::AppendKnownCategory Указывает, что категория "Часто" или "Последние" должна быть включена в настраиваемый список переходов. |
ICustomDestinationList::BeginList Инициирует сеанс сборки для настраиваемого списка переходов. |
ICustomDestinationList::CommitList Объявляет, что список переходов, инициированный вызовом ICustomDestinationList::BeginList, завершен и готов к отображению. |
ICustomDestinationList::D eleteList Удаляет пользовательский список переходов для указанного приложения. |
ICustomDestinationList::GetRemovedDestinations Извлекает текущий список назначений, удаленных пользователем, из существующего списка переходов, который должен заменить этот настраиваемый список переходов. |
ICustomDestinationList::SetAppID Указывает уникальный идентификатор пользовательской модели приложения (AppUserModelID) для приложения, кнопка панели задач которого будет содержать настраиваемый список переходов, созданный с помощью методов этого интерфейса. Этот метод является необязательным. |
Комментарии
Когда следует реализовать
Реализация этого интерфейса предоставляется в Windows как CLSID_DestinationList. Этот интерфейс не реализуется сторонними производителями.Когда следует использовать
Переходные Списки содержат как целевые, так и списки задач.- Назначения — это элементы, которые отображаются в категориях "Последние", "Частые" или "Пользовательские" в зависимости от использования пользователем. Назначения могут быть файлами, папками, веб-сайтами или другими элементами на основе содержимого, но не обязательно являются файлами. Назначения можно рассматривать как вещи или существительные. Назначения могут быть закреплены или удалены из списка переходов пользователем. Как правило, они представлены объектами IShellItem , но также могут быть объектами IShellLink .
- Задачи — это стандартные действия, выполняемые в приложении, которые применяются ко всем пользователям этого приложения независимо от шаблонов использования отдельных пользователей. Задачи можно рассматривать как действия или глаголы. Задачи нельзя закрепить или удалить. Они представлены объектами IShellLink .
Панель задач предоставляет каждой кнопке панели задач список переходов. По умолчанию список переходов содержит категорию Последние , которая автоматически заполняется для файловых приложений с помощью SHAddToRecentDocs или общего диалогового окна файлов. Чтобы заменить категорию Последние категорией Часто или определить, добавить и заполнить собственные пользовательские категории, приложение должно вызвать методы этого интерфейса. Приложение также может предоставлять собственные задачи на основе архитектуры приложения и предполагаемого использования.
Приложение должно вызвать этот объект, чтобы предоставить настраиваемый список переходов в пользовательский интерфейс панели задач. Система никогда не запрашивает у приложения информацию.
Когда приложение предоставляет пользовательский список переходов, оно берет на себя определенные обязанности в отношении этого списка. Пользовательские категории должны заполняться таким образом, чтобы они соответствовали предполагаемому использованию списка переходов. Элементы в списке должны проверяться на допустимость или корректно завершаются ошибкой, если они были удалены. Если пользователь удаляет элемент из списка, это удаление должно соблюдаться.
Пользовательский список переходов никогда не обновляется в смысле изменения элементов в существующем списке. Вместо этого старый список заменяется новым.
Основная последовательность вызовов метода ICustomDestinationList для сборки и отображения настраиваемого списка переходов выглядит следующим образом:
- SetAppID (требуется только в том случае, если приложение предоставляет собственный Идентификатор AppUserModelID)
- BeginList
- AppendCategory, AppendKnownCategory, AddUserTasks или любое сочетание этих трех методов.
- CommitList
Требования
Требование | Значение |
---|---|
Минимальная версия клиента | Windows 7 [только классические приложения] |
Минимальная версия сервера | Windows Server 2008 R2 [только классические приложения] |
Целевая платформа | Windows |
Header | shobjidl_core.h (включая Shobjidl.h) |