Разработка панели задач Windows 7 - списки переходов. Часть IИсточник: winline Данила Корнев
Приглашаем присоединиться к еще одной теме, посвященной панели задач Windows 7! В предыдущей статье "Разработка для панели задач Windows 7 - AppID" мы рассказали об очень важном элементе внутренней архитектуры панели задач - Application ID (AppID), который является ключевым компонентом, определяющим, как разные приложения группируются под одной кнопкой панели задач. AppID также имеет прямое влияние на то, как заполняется и группируется содержимое списков переходов (jumplists). Microsoft разрабатывала панель задач Windows 7, чтобы обеспечить пользователям простой и быстрый доступ к тем функциям и документам, которые используются чаще всего. Сюда относятся изображения, музыка, документы или ссылки/ярлыки к приложениям или папкам, или любой иной тип контента Windows. Под "быстрым и простым" имеется в виду возможность получать доступ к часто используемым программам с помощью единственного щелчка мышью или, в худшем случае, с помощью значительно сократившегося количества щелчков. "Быстрый и легкий доступ" также обозначает, что пользователи должны иметь возможность быстро перейти к тем документам/приложениям, с которыми они хотят работать, начав процесс одним щелчком мышью. Чтобы обеспечить такую функциональность, в панели задач Windows 7 была представлена концепция списков переходов. Дополнительную информацию о предпосылках создания выпадающих списков панели задач можно найти в статье Чайтаньи Сарин "Панель задач в Windows 7". Так как мне нравится говорить о причинах создания новой панели задач (поскольку я люблю пользовательскую функциональность и простоту использования в общем), то я сфокусируюсь на API панели задач. Как разработчик вы должны думать о списках переходов, как о собственной мини-версии меню Start для приложения. Списки переходов открывают доступ к часто используемым назначениям (являющимся именами существительными) и действиям (обозначаемым глаголами) программы. Это позволяет реализовать простой пользовательский доступ к назначениям, избавляя от необходимости заблаговременно запускать приложение. Следующее изображение показывает, как списки переходов работают в Office Word 2007. Вы можете заметить, что в категории Recent есть список недавних документов, которые я использовал в Office Word. Щелчок по одному из них запустит Office Word с уже выбранным документом. Раньше мы упоминали Word 2007, как пример приложения, которое отлично взаимодействует с панелью задач Windows 7, даже при том, что оно было выпущено задолго до появления панели задач Windows 7. Все кнопки панели задач группируются под одной иконкой, а список переходов автоматически заполняется недавно использовавшимися документами Word. В следующей статье я подробно расскажу, как заполняются списки переходов. Сейчас давайте сконцентрируемся на понимании сути списков переходов. Стандартные задания "из коробки" предоставляют возможность запуска новых экземпляров приложения, прикрепление или открепление приложения в панели задач и его закрытие. Вы можете получить доступ к спискам переходов, щелкнув правой кнопкой на иконке приложения в панели задач. Однако, как показывает следующее изображение, вы сможете лучше контролировать панель задач путем настройки контекста выпадающих списков для вашего приложения. Определения из Windows 7 SDK:
Под "заданиями" следует понимать часто исполняемые в приложении действия, которые доступны всем его пользователям независимо от индивидуальных шаблонов. Задания не могут быть прикреплены или удалены. Задания представлены объектами IShellLink, так как фактически являются ссылками, с необязательными параметрами на команду "Actions". Как разработчики мы можем: 1. Контролировать назначения у приложений (контроль тех элементов, к которым мы хотим обеспечить доступ через список переходов)
2. Определять задания
В следующей статье мы углубимся в API списков переходов на панели задач. Но сначала нам необходимо обратится к программной модели панели задач. Панель задач имеет свой набор API, как и любой другой компонент оболочки Windows, доступных через набор COM-интерфейсов. Однако, есть несколько действий, которые мы, разработчики, можем сделать до того, как начать использовать COM API панели задач. |