Элементарные действия, выполняемые пользователем в различных комбинациях, порождают набор элементарных операций, которые применяются к содержанию и используются почти во всех интерфейсах. Перечислим, какие операции могут быть применены к содержанию:
• Указание. Пользователь может указать на то или иное содержание.
• Выделение. Пользователь может выделить какое-то содержание.
• Активизация. С помощью «клика» пользователь может активизировать содержание.
• Модификация или использование (с помощью команд):
• Генерация. Модификация из «пустого» в «непустое».
• Удаление. Модификация из «непустого» в «пустое».
• Перемещение. Вставка содержания в одно место и одновременное его удаление из другого.
• Трансформация. Преобразование в другой тип данных.
• Копирование. Содержание может быть отправлено или получено от внешнего устройства или скопировано в другую область внутри системы. Например, содержание можно распечатать, отправить по электронной почте, сохранить на жестком диске, копировать в другой документ и т. д.
Эти элементарные операции могут и должны быть основой компьютера или самой программы, т. е. они должны являться частью аппаратного или базового программного обеспечения, а не входить в состав множества программных пакетов, и каждая элементарная операция должна всегда вызываться одинаковым образом, независимо от того, к каким объектам они применяются. В основном когнитивные различия между программами заключаются в способах представления выделенного содержания и того, как пользователь может с ним оперировать. В электронных таблицах значения представляются в табличной форме, а применяемая к ним операция может состоять в том, что столбец без итогового значения внизу преобразуется в столбец, внизу которого указывается сумма значений всех его ячеек. В текстовом процессоре текст и иллюстрации представляются в виде страниц, а типичной операцией, применяемой к ним, является изменение начертания текста с обычного на наклонное. В программе обработки веб-страниц страница из текстового процессора может быть преобразована в HTML-формат. В программе обработки фотоизображений фотография с низким контрастом может быть преобразована в фотографию с высоким контрастом.
Большинство операций, выполняемых с содержанием, можно описать с помощью этих элементарных операций. Например, во многих системах имеется возможность сделать запрос о свойствах какого-нибудь объекта. (Если система оснащена двухкнопочным ГУВ, пользователь обычно может выполнить это действие с помощью нажатия на правую кнопку при условии, что курсор наведен на этот объект и система находится в соответствующем состоянии.) Запрос свойств объекта означает, что необходимо получить дальнейшую информацию об элементе или набор связанных с ним опций. Но также его можно рассматривать и как операцию, примененную к одному объекту, чтобы вывести на экран связанный с ним другой объект. С точки зрения пользователя, нет необходимости в том, чтобы операции, выполняемые в операционной системе, отличались от операций, выполняемых в приложениях, и поэтому такого различия не должно быть.
То, что интерфейсы всех приложений основаны на небольшом наборе элементарных операций, подтверждает тот факт, что приложения как таковые не очень отличаются друг от друга с точки зрения интерфейса, независимо от того, насколько они сложны и разнообразны с точки зрения задач, для которых они предназначены. Такое базовое подобие можно использовать для создания мощных компьютерных систем, обладающих беспрецедентной степенью простоты и эффективности.
Для начала нам следует определить несколько методов отбора и выделения содержания, к которому предполагается применить какую-то операцию. Эти методы будут рассмотрены в разделе 5.2.1.
5.2.1. Подсветка, указание и выделение
Подсветка (highlighting) означает, что с помощью каких-либо средств отображенному на экране объекту придается заметное отличие. Функция подсветки заключается в том, чтобы пользователь мог, пассивно наблюдая изображение на экране, определить, что некоторый объект получил от системы особый статус. Семантика этого статуса зависит от типа объекта и от команд, которые пользователь может применить к данному объекту. Для зрячих пользователей выделение обычно визуально. В качестве визуальных методов выделения может использоваться обращение яркости, изменение цвета или контраста, подчеркивание, мигание или любое другое периодическое изменение, добавление к объекту статичной или анимированной рамки. В качестве не визуальных методов выделения может использоваться набор разных голосов или изменение интонации.