Существуют различные способы организации интерфейса пользователя для вы-
полнения операций над объектами: прямое манипулирование объектами, выбор ко-
манд из меню, посредством диалоговых панелей и, наконец, описание требуемых
операций на каком-либо языке программирования. Использование в приложении
любого из перечисленных подходов не исключает возможности совмещения его с
другой техникой. Например, пользователь может изменять размер окна, либо ис-
пользуя команду Размер, либо перемещая границу окна с помощью мыши.
Вместе с тем, целесообразно для каждого типа объектов определить собственное
подмножество допустимых операций и способов их применения. При этом и под-
множество допустимых операций, и способы их применения могут корректироваться
в зависимости от текущей ситуации. В связи с этим операции, которые могут быть
выполнены над данным объектом в данный момент времени, называют кон-
текстными. От текущей ситуации зависит, как правило, и перечень свойств объекта
которые может просматривать и редактировать пользователь. Например, меню для
некоторого объекта может содержать и команды, определенные типом объекта, и
команды, обусловленные типом контейнера, содержащего объект.
ОПЕРАЦИИ МНОЖЕСТВЕННОГО ВЫБОРА
В качестве операций, доступных для объектов множественного выбора, следует
использовать пересечение наборов операций, относящихся к каждому из участников
этого выбора. Таким образом, контекст множественного выбора может расширить
либо сократить перечень операций или команд, доступных пользователю.
Кроме того, для множественного выбора может быть переопределен эффект вы-
полнения некоторых операций над каким-либо объектом этого выбора. Например,
когда пользователь выбирает несколько графических объектов и применяет к ним
команду выравнивания, некоторые из них могут остаться на прежней позиции, «не
реагируя» на данную команду.
Следует иметь в виду, что область действия операций, выполняемых над объек-
тами множественного выбора, должна ограничиваться пределами активного окна.
Например, если пользователь удаляет выбранное слово в одном окне, это не должно
приводить к удалению выбранных фрагментов текста в других окнах (если в этих
окнах выбраны не те же самые объекты).
ПРЕДОПРЕДЕЛЕННЫЕ ОПЕРАЦИИ
Объект может иметь предопределенные операции. Предопределенные операции —
это операции, выполняемые над объектом по умолчанию, когда пользователь ис-
пользует технику ускоренного взаимодействия с данным объектом (в частности,
двойной щелчок ЛКМ). Например, двойной щелчок ЛКМ на пиктограмме каталога
файлов приводит к открытию окна с содержимым этого каталога; при редактировании
текста двойной щелчок ЛКМ обеспечивает выбор слова. Для различных объектов
могут использоваться разные предопределенные операции; в приведенном выше
примере в качестве предопределенной операции для каталога выполнялась команда
Открыть, а для текста — Выбрать.
Аналогично, когда пользователь перемещает объект в новую позицию с помощью
мыши, используя технику drag-and-drop («перетащи и оставь»), поведение объекта
зависит от установленной для него предопределенной операции. Перетаскивание
объекта в некоторую позицию может быть проинтерпретировано, в частности, и как
перемещение, и как копирование, и как связывание с другим объектом. В данном