Готовый перевод Mac OS X Human Interface Guidelines / Руководство по проектированию пользовательских интерфейсов для Мак ОС X: Chapter 6 — UI Element Guidelines: Menus

Внимание! Этот перевод, возможно, ещё не готов, так как модераторы установили для него статус «идёт перевод»

Параграф 6 — Руководства по элементам пользовательского интерфейса: меню

Меню представляют собой списки вариантов — команд, свойств или состояний — один из которых пользователь может выбрать

Пользователи часто обращаются к меню, особенно когда ищут функцию, которую не нашли в других местах. В этом случае лишь правильно организованные, понятные и правильно работающие меню помогут найти нужную функцию и воспользоваться ею.

В Mac OS X есть несколько видов меню:

* Строка меню в верхней части экрана — в ней располагаются команды активного приложения. Приложение здесь обычно отображает несколько разных меню (Подробнее см. «все приложения используют одну строку меню» на стр.17)

* Меню Дока, которое содержит команды, назначенные системой (такие, как «показывать в Finder» или «не убирать из Дока»), а также характерные для конкретного приложения (например, «новое окно»). Увидеть это меню можно, нажав на значок в Доке, удерживая Control, либо просто нажатием и удержанием кнопки мыши на значке.

* Контекстные меню, команды в котором зависят от выбранного объекта. Увидеть его можно, нажав удерживая Control на объект или область экрана.

На рисунке изображены примеры (с лева на право) строка меню TextEdit, Доковое меню Mail и контекстное меню Finder-а.

[Изображение]

Меню содержат различные элементы управления, такие как всплывающие меню, поля со списком, значки и кнопки. Многие рекомендации в этом разделе применимым к различным видам меню. Для отдельных видов см. « Руководства по элементам пользовательского интерфейса: контролы» (стр. 195)

Внешний вид и поведение меню.

Как минимум, меню отображает список пунктов. Также меню может содержать заголовки для групп элементов, подсказки по сочетаниям клавиш, вложенные меню (или подменю), переключатели, разделители, пиктограммы и символы. Например в меню TextEdit-а мы видим список команд, заголовок, сочетания клавиш, подменю, и разделители групп элементов меню.

[Изображение]

Строка меню может содержать эти же элементы, но она не похожа на другие виды меню. К примеру, контекстные меню не требуют заголовка, потому что оно автоматически подстраивается под выбранный пользователем объект. Рекомендации по созданию контекстных меню ищите в разделе «разработка контекстных меню» (стр.129).

Меню — это пример реализации парадигмы «увидел — показал»: пользователь находит то, что ему нужно и выбирает соответствующий пункт меню.

Чтобы выбрать пункт пользователь вызывает меню и наводит указатель на нужный. Выбранный пункт меню подсвечивается, а если это подменю — оно раскрывается. Но ничего больше не происходит, пока пользователь не сделает выбор. Тогда пользователь может вызвать меню и просто просматривать все пункты, первоначально не имея цели выбрать какой-либо из них. Когда пользователь подтверждает выбор, пункт меню быстро мигает, сигнализируя о выборе, и начинается выполнение команды.

Открытое меню не закрывается, пока не произойдёт одно из следующих событий:

* Будет выбран пункт меню

* Пользователь наведёт курсор на другой пункт в строке меню

* Пользователь нажмёт на область за пределами меню

* Появится предупреждение от ОС

* ОС переключит или завершит программу.

Заголовки в меню

В строке меню кроме системных, таких как«Файл» и «Окно» у приложения могут быть собственные подменю, в которых располагаются различные команды. Пользователь судит о назначении подменю по его названию, которое должно быть понятным и точным. Контекстные меню и меню Дока не требуют заголовков, так как вызываются нажатием на окно или выбором значка в Доке

Следуйте этим рекомендациям, когда пишете заголовок для меню

Заголовок должен точно отражать состав меню. Взглянув на заголовок пользователь должен определить, найдёт ли он здесь нужную команду. К примеру, меню, названное «Шрифт» должно предоставлять выбор семейства шрифта, такого как «Helvetica», или «Geneva», а не команды для правки текста, такие как «Вырезать» и «Вставить»

Заголовок меню должен быть как можно короче, лучше — в одно слово, так как оно будет занимать меньше места, а пользователю будет проще его найти.

Не используйте пиктограммы в заголовке меню, если не хотите, чтобы пользователь перепутал его с системным треем. Использовать одновременно текст и пиктограмму в заголовке меню и вовсе невозможно.

Заголовок меню не должен затеняться, когда недоступен ни один пункт меню. Пользователь должен видеть все пункты меню даже когда ни один не доступен. Также не следует скрывать недоступные пункты меню — пользователь должен знать о возможностях программы.

Названия пунктов меню

Выбор названия для пункта меню не менее важен, чем для заголовка. Прочитав его, пользователь должен понять, что его ждёт если он выберет этот пункт.

Текст пункта меню должен описывать действие над объектом или свойством, которое будет выполнено после выбора. Заметьте:

* Действие предполагает глагол или глагольное словосочетание в названии. К примеру, распечатать документ можно по команде «Распечатать», а скопировать выбранный фрагмент — по команде «Копировать».

* Свойство предполагает прилагательное или словосочетание, которое описывает каким станет это свойство после выполнения команды. Прилагательное в названии пункта меню тоже предполагает действие, которое можно описать, подставив название в предложение «изменить выбранный объект на ...» — к примеру Жирный или Курсивный

Следуйте этим рекомендациям когда создаёте пункты меню.

(Для английского языка) Не следует использовать артикли как определённые, так и неопределённые в названиях пунктов меню. Изредка возможно использовать, если нужно выделить определённое слово в контексте. Примеры: «Add Account», а не «Add an Account», или «Hide Toolbar», а не «Hide the Toolbar». Убедитесь, что этот стиль применяется везде по ходу статьи.

Если для выполнения команды необходимы дополнительные действия со стороны пользователя, используйте незавершённые высказывания. Многоточие показывает, что будет открыто диалоговое окно для ввода дополнительной информации, необходимой для завершения выполнения команды. Подробнее см. «Использование многоточия» (стр. 247)

(для английского языка) Следует использовать заглавные буквы как в заголовках. Подробнее см. «Заглавные буквы в надписях и тексте» (стр. 252)

Недоступные пункты меню следует затенять (выделять серым) — тогда пользователь поймёт, что этот пункт выбрать нельзя — например, его нельзя применить к данному объекту. Когда курсор находится над затенённым пунктом меню, последний не подсвечивается.

Группировка пунктов меню.

Группируйте пункты меню в соответствии с их логикой, чтобы пользователь понял, где искать тот, который ему нужен. Рекомендации в этом разделе помогут расположить пункты меню в порядке, понятном пользователю.

Пункты меню, необходимые чаще лучше располагать выше. Верхнюю часть меню пользователи замечают прежде всего. Но не следует располагать пункты меню в порядке частоты их использования: правильнее будет собирать их в группы, и уже их располагать в зависимости от частоты использования. К примеру, как бы редко не использовалась команда «Найти далее», она должна следовать за частоиспользуемой командой «Найти...»

В одной группе не следует располагать и команды, и свойства. Для пользователя выполнить команду и изменить свойство — совершенно разные понятия, поэтому лучше располагать их в разных группах.

Зависимые свойства следует располагать в одной группе. Пользователь будет искать похожие атрибуты в одной группе. Группы могут быть специальными (к примеру — группы, где можно выбрать только один элемент, например размер шрифта) и сборными (где пользователь может выбрать любые из атрибутов независимо, например, жирный и курсивный шрифт)

Следует группировать команды с помощью смарт-контейнеров. Если в программе предусмотрено создание смарт-групп или смарт-контейнеров, таких как смарт-папки в Finder-е, следует группировать все команды смарт-группы в соответствующем меню. Тогда пользователю будет проще найти команды для создания, изменения и удаления смарт-групп.

Старайтесь по возможности объединять схожие пункты меню. Если в названиях пунктов одно слово повторяется более двух раз, подумайте о создании отдельного меню (или подменю) для него. К примеру, «Показать информацию», «Показать цвета», «Показать слои», «Показать инструменты» и т.п. следует объединять в меню или подменю «Показать»

Следует знать меру при группировке пунктов меню. Когда групп слишком много, это выглядит некрасиво, а пользоваться таким меню неудобно. К примеру, на рисунке слева пункты сгруппированы удачно, в середине — группы слишком маленькие, а справа пункты меню почти не разделены на группы. Посмотрите на этот рисунок, чтобы понять, удачно ли сгруппированы пункты меню.

Удачная группировка/группы слишком маленькие/пункты меню не почти сгруппированы

[Изображение]

Меню не должны быть слишком большими. Длинные списки сложны для восприятия и пользователь может не справиться с ними. Если в меню слишком много пунктов, их следует перегруппировать; возможно некоторые пункты уместны в другом меню, или требуют отдельного списка. Можно создать подменю, но не всегда это приемлемо. Подробнее см. «Создание вложенных меню» (стр. 113).

Заметьте, что некоторые меню, куда постоянно добавляются новые пункты могут стать очень большими. Например, меню истории в Safari разрастается до больших размеров пока пользователь посещает новые и новые сайты. В некоторых случаях такие меню могут прокручиваться с помощью стрелок на верхнем и нижнем конце. Скроллинг уместен только если пользователи добавляют много значений в настраиваемое меню, или когда новые пункты добавляются во время работы приложения (например список окон в меню «Окно»). В остальных случаях прокручиваемое меню недопустимо.

Динамические пункты в меню

Динамические команды меняются при нажатии на клавишу-модификатор. К примеру, в меню «окно» Finder-а при нажатии на клавишу «Option» пункты «Свернуть» и «Увеличить» меняются.

[Изображение]

Такие меню можно создавать, используя Interface Builder. Для таких пунктов меню нужно задать «setAlternate»: специальный метод для «NSMenuItem», показывающий, что пункт меню может изменяться на другой.

Следуйте этим указаниям, если вы хотите использовать динамические пункты меню

Не следует использовать динамические команды как единственный способ доступа к функции. Такие команды скрыты от пользователя, если он не нажал клавишу-модификатор, поэтому с их помощью лучше давать подсказки по сочетаниям клавиш опытным пользователям. В частности, не стоит требовать от пользователя искать динамические меню, пока он в достаточной степени не изучил ваше приложение. К примеру, если пользователь не нашёл пункт «Свернуть все окна», который появляется при нажатии клавиши-модификатора, он может добиться этого, сворачивая окна по-отдельности.

Хотя можно создавать динамические контекстные меню, или динамические меню Дока, нужно понимать, что обнаружить их будет вдвойне сложно. Как и в ситуации с меню приложения, следует убедиться, что функциональность контекстного меню или меню Дока не зависит от того, знает ли пользователь о динамическом меню.

Следует использовать только одну клавишу-модификатор для динамических команд. Нажимать несколько клавиш и одновременно выбирать команду в меню неудобно. К тому же, чем больше кнопок нужно нажать, чтобы появился пункт меню, тем меньше шансов, что пользователь его найдёт.

Примечание: Mac OS X автоматически подбирает размер меню, чтобы в него поместилась наиболее длинная команда, включая скрытую до нажатия клавиши-модификатора.

Пункты-переключатели в меню

Пункты-переключатели имеют два состояния, одно из которых может выбрать пользователь. Существуют три типа таких пунктов:

* Набор из пары пунктов противоположных по назначению. К примеру «Включить сетку» и «Выключить сетку». Выбранный пункт можно определить по наличию возле него отметки о выборе.

* Пункт меню, название которого изменяется в зависимости от текущего состояния — к примеру, «Показать линейку» и «Скрыть линейку».

* Пункт меню, который помечается галочкой, когда он в состоянии «Включено» — к примеру, галочка в пункте «Жирный шрифт».

Такие переключатели могут быть очень удобны, но требуются нечасто. Если вы хотите их использовать, следуйте этим указаниям, чтобы быть уверенными, что они будут понятны пользователю.

Если есть место, лучше показывать оба возможных состояния. Если пользователь видит оба состояния одновременно, меньше вероятности, что он не поймёт, что последует за выбором соответствующей команды. К примеру, в меню Mail-а «Mailbox» есть пункты «Take All Accouns Online» и «Take All Accouns Offline». Когда аккаунт пользователя Online, только второй пункт меню доступен, и пользователю понятно, что будет, если он его выберет.

[Изображение]

Если места недостаточно, используйте изменяющийся в зависимости от состояния пункт меню. Вы также можете использовать этот приём, если уверены, что пользователь будет снова открывать меню и увидит, что состояние пункта изменилось. В этом случае имя команды должно недвусмысленно намекать на то, что есть противоположное значение.

К примеру команды «Включить сетку» и «Выключить сетку» недвусмысленно говорят о наличии второго значения. Но если бы мы назвали команду «Использовать сетку», кто-то может быть и понял бы, что есть противоположная команда «Не использовать сетку», но большинство поймёт это, как команду, применяемую однократно. Другой способ — помечать включенное состояние галочкой — тогда пользователь поймёт, что так обозначается текущее состояние.

К примеру, в Mail используются пункты меню с галочками в разделе «Вид» — чтобы пользователь мог включать и выключать различные элементы управления, такие как список контактов и панель инструментов.

[Изображение]

Используйте галочку, чтобы показать, что то или иное свойство включено. Очень удобно, когда это сделано в списке значений и позволяет быстро найти выбранные свойства. К примеру, в меню Mail-а «Форматирование» пользователь может быстро определить, какие стили применены к выбранному тексту.

[Изображение]

Не используйте галочки, когда выбранный пункт показывает наличие или отсутствие возможности. Тогда пользователь не может быть уверен, означает ли галочка, что возможность применена, или будет применена когда он выберет пункт меню.

Значки в меню

Иногда значки в меню помогают узнать пункт меню и соотнести с другими известными пунктами меню. Но нужно быть уверенным, что значки не внесут путаницу, или не введут пользователя в заблуждение. Следуйте рекомендациями в этом разделе, если хотите использовать значки в меню

Никогда не используйте значки без текста. Хоть пользователь и легко узнает его, нужно подкрепить его догадку подписью.

Используйте только узнаваемые значки. Можно использовать значки, либо однозначно соответствующие пункту меню, либо уникальные для него. Например, в меню «Переход» Finder-а используются значки, потому что пользователь может соотнести их с аналогичными по значению значками в сайдбаре

[Изображение]

Ещё пример: в Safari значки из заголовков веб-страниц помогают пользователю определить, к какой странице относится пнкт меню.

[Изображение]

Не используйте значки для всех пунктов меню. Если в вашем меню есть значки, они должны отображаться только для важных значений. Меню, в котором значков слишком много, или они нарисованы некачественно, выглядит неряшливо и плохо читается

Использование символов в меню

Существуют стандартные символы, которые можно использовать для расширения информативности меню. Они используются одинаково во всей системе и привычны для пользователей.

Таблица 6-1: Список стандартных символов и их назначение

Таблица 6-1: Стандартные символы для меню

Символ|Назначение

✓ |В меню «Окно» обозначает активное окно; В остальных меню — полностью включенное свойство.

- |Обозначает, что свойство применено не ко всем выбранным объектам.

• |Обозначает окно с несохранёнными изменениями (Если не включено автосохранение)

♦ |В меню «Окно» этим знаком обозначаются свёрнутые окна

Используя эти символы, следуйте этим рекомендациям.

Не используйте собственные символы в меню. Если в меню используются необычные символы, пользователь не знает, что он означает. Лишние символы ещё и неряшливо выглядят.

Используйте галочку для активных в текущий момент элементов. К примеру, в меню «Окно» галочкой обозначается название активного окна. В прочих меню галочка означает, что помеченное ей свойство вклчючено. Как описывается в разделе «Пункты-переключатели в меню» (стр. 108), можно использовать галочки в группах как зависимых пунктов (где выбирается только один пункт из списка, например размер шрифта), так и в независимых (где можно выбрать любое количество пунктов, например одновременно «Жирный шрифт» и «Курсив»).

Используйте чёрточку, чтобы обозначать свойства, применённые не ко всем выбранным объектам. К примеру, если в выделенном тексте присутствуют сразу два стиля, в меню их названия должны быть помечены чёрточкой. Вы можете обозначить галочкой все применённые стили. Если это необходимо, можно использовать одновременно чёрточки и галочки в одном меню.

Если возможно, используйте точку только если выключена функция автосохранения. Если используется автосохранение, пользователь не должен сомневаться, что его документ сохранён. Однако точку можно выводить при ошибке записи, если автосохранение невозможно. Об автосохранении см. «Автосохранение и версии» (стр. 59).

Ромбик или галочка должна закрывать точку (если они используются). Свёрнутый документ обозначается только ромбиком, даже если в нём есть несохранённые изменения. Аналогично для активного окна.

Применяйте стиль текста к пункту меню, отвечающему за выбор текущего стиля текста. Если есть меню стилей, применяйте стиль выбираемый текста, если это возможно, это поможет пользователю лучше понять, как будет выглядеть применяемый стиль в тексте. За пределами меню стилей этим приёмом пользоваться не следует. К стати, тогда не будет создаваться впечатление, что к меню применяется стиль списка или пометки.

Вложенные меню

Вложенные меню (или подменю) содержат наборы пунктов, которые относятся к текущему меню, но должны значительно увеличивать его размер. На пунктах меню, содержащих подменю, таких как строка «Поиск» в меню «Правка» Mail-а, отображается индикатор подменю, позволяющий определить, за ним скрываются дополнительные пункты. Найти их просто, так как подменю автоматчески разворачивается при наведении курсора.

[Изображение]

У подменю могут быть все те же элементы, что и у обычного меню, включая подсказки по сочетаниям клавиш, маркеры (такие, как галочка) и т.д. Если вы используете подменю, следуйте этим рекомендациям.

Заголовок подменю не должен затеняться, даже если ни одна из команд меню не доступна. Ситуация здесь аналогична пунктам в строке меню: пользователь должен знать, какие возможности есть у программы, даже если сейчас они недоступны.

Используйте подменю с осторожностью. Подменю добавляют запутанности в интерфейс и пользоваться ими сложнее, особенно когда их слишком много. Ими можно пользоваться, если вы хотите выделить наборы команд, имеющих сходное назначение (или способов выполнения одной команды, например «Найти»), и при этом хотите сэкономить место.

Примечание: если пользователь может выбрать несколько типов стилей для выбранного текста, желательно добавить команду наподобие «Простой текст» для сброса форматирования одним нажатием.

Если возможно, используйте только один уровень подменю. Многоуровневые подменю использовать достаточно сложно. Также, если в подменю больше пяти пунктов, лучше использовать для них отдельное меню.

Заголовок подменю должен точно указывать на его содержание. Содержимое подменю должно быть логически связанным с его заголовком. К примеру, подменю «Пометки» в меню «Сообщения» Mail-а содержит команды для пометки сообщений, к примеру «Мусор» или «Важно». Лучше всего подменю подходят для списка значений, а не команд.

Используйте вложенные меню вместо отступов. При использовании отступов сложнее сразу определить взаимозависимость между пунктами меню, чем при использовании подменю.

Меню для строки меню

В строке меню, которая отображается в верхней части экрана располагается меню верхнего уровня для вашего приложения. В дополнение к системным и пользовательским элементам (см. «All Apps Use the Single Menu Bar», стр 17)) вы можете добавлять свои элементы в строку меню. Подробнее об упорядочивании меню см. «Make Your App Easy to Use» (стр.37).

В этом разделе приводятся указания, которые помогут определить, какие меню нужны и какие пункты должны в них входить.

Если пункту меню соответствует сочетание клавиш, оно должно быть указано. Вообще, следует прежде всего назначить сочетания клавиш на обязательные пункты меню. На другие пункты меню назначать сочетания клавиш следует только если они часто используются. Подробнее о сочетаниях клавиш см. «Keyboard Shortcuts» (стр. 257).

Важно: если пункт меню помечен, как обязательный, он должен присутствовать, если конечно программа может с ним работать. Остальные пункты меню не обязательно будут во всех приложениях, но если они есть в вашем, они должны обозначаться и работать как описано.

Меню Apple.

В меню Apple содержатся пункты, которые доступны всем пользователям вне зависимости от запущенного приложения. Содержимое меню Apple нельзя править ни пользователю, ни разработчикам программ.

[Изображение]

Меню приложения.

В меню приложения входят команды приложения, которые не зависят от выбранного окна или документа. Чтобы помочь пользователю найти его (заголовок этого меню соответствует названию приложения), оно выделяется полужирным шрифтом.

[Изображение]

Если возможно, название должно писаться в одно слово не длиннее 16 символов. Это позволит оставить достаточно места для меню приложения. Если название приложения слишком длинное, для заголовка нужно создать короткое название (не более 16 символов). В противном случае название приложения будет писаться не полностью и завершаться многоточием.

Ни в коем случае не пишите версию в заголовке приложения. Для этого есть окно «О программе»

В меню приложения содержится несколько стандартных пунктов, описанных в таблице ниже

Пункт меню| Обязательный|Сочетание клавиш|Описание

О (название программы)|Да|-|Раскрывает окно, в котором расписана информация о лицензии и номер версии. Подробнее см.About Windows (стр.173)

Параметры...|Да|Command+,|Открывает окно настроек программы. Подробнее см. «Preferences» (стр. 80).

Сервисы|Да|-|Раскрывает меню сервисов, доступных в данном контексте. Подробнее о сервисах см.«Services» (стр.81).

Свернуть (название программы)|Да|Command+H|Сворачивает все окна текущей программы и переводит фокус на последнюю использовавшуюся программу.

Свернуть прочие|Да|Command+Option+H|Сворачивает все открытые окна, кроме текущего приложения.

Показать все|Да|-|Показывает все окна запущенных в текущий момент приложений

Выход из (название программы)|Да|Command+Q|Выход из программы

Используйте короткое название программы в пунктах меню, которые должны его отображать. Если такое название есть, подставьте его в пункты «О программе», «Скрыть» и «Выход».

Между пунктами «О программе» и «Параметры» должен быть разделитель. Эти команды абсолютно разные и должны быть в разных группах. Заметьте, что свойства открытого документа должны находиться в меню «Файл» (описанном в «The File Menu» (стр. 117)).

Вообще, размещайте пункт «Параметры» выше пунктов, характерных только для вашего приложения. К примеру, в Mail-е пункт «Provide Mail Feedback» идёт после параметров. Можно поставить разделитель между «Параметрами» и пунктами меню вашего приложения (о группировке пунктов меню см. «Grouping Items in Menus» (стр.106)).

Не располагайте меню «Справка» вместе с другими пунктами меню программы. У всех программ должно быть отдельное меню «справка» (описанное в разделе «The Help Menu» (стр 128))

Размещайте команду «Выход» в самом низу. Эта команда должна быть отделена от всех остальных разделителем. Подробнее о способах размещения команды выхода из программы см. «Avoid Burdening Users with App-Management Tasks» (стр.35).

Меню «Файл»

Команды, размещённые в меню «Файл» относятся к одному файлу (обычно, созданному пользователем документу). Если ваше приложение не поддерживает работу с документами, этому меню можно дать другое более удобное название.

[Изображение]

Меню «Файл» включает в себя следующие стандартные команды, описанные в таблице ниже:

Пункт меню| Обязательный или нет|Сочетание клавиш|Описание

Создать|Да|Command+N|Создание нового документа. Подробнее о названиях для новых окон см. «Naming New Windows» (стр.159)

Открыть...|Да|Command+O|Открытие диалога выбора файла, который можно открыть. (Заметьте, в Finder-е команда «Открыть» размещена без многоточия потому, что имеет другое назначение — она нужна для открытия в другой программе уже выбранного в Finder-е файла).
Подробности см. в разделе «The Open Dialog».

Открыть последний|Нет|| Открытие подменю со списком недавно открытых документов. (Заметьте, существует стандартное решение для организация такого списка).

Закрыть|Да|Command+W|Закрытие активного окна. Если выбрать этот пункт, удерживая клавишу «Option»? либо нажать «Option+Command+W», закроются все открытые окна в программе.

Закрыть файл|Нет|Command+Shift+W|Закрыть файл и все ассоциированные с ним окна. Команда может быть полезна в программе, отображающей несколько представлений файла в разных окнах.

Сохранить|Нет|Command+S|Выводит диалог сохранения файла, где пользователь может указать место для сохранения файла.
Если для файла уже указано место размещения, название команды должно заменяться на «Сохранить версию». (Подробнее см. «Save Dialogs» (стр.188).)

Дублировать|Да||Дублирует текущий документ, оставляя оба открытыми.

Сохранить как...|Нет|Command+Shift+S|Устаревшая команда, по смыслу близкая к команде «дублировать».

Экспорт...|Нет||Выводит диалог сохранения файла, через который создаётся копия файла в формате, не поддерживаемом данной программой в полной мере. После закрытия диалога пользователь будет продолжать работать с уже открытым файлом в формате, в котором он был открыт изначально, а не в экспортированном.

Сохранить всё|Нет||Позволяет сохранить данные во всех открытых доументах.

Открыть версию(дословно «вернуться к сохранённому», как вариант — «откатить»)|Да||Отображает список доступных для открытия версий (при включенном автосохранении). Пользователь может выбрать версию, к которой он может вернуть свой документ, а текущая версия будет заменена на выбранную.

Печать...|Да|Command+P|Отображает стандартный диалог печати, через который пользователь может отправить документ на печать, послать по факсу или сохранить в формате PDF. Подробнее см. «The Print and Page Setup Dialogs.»(стр.184)

Параметры страницы|Нет|Command+Shift+P|Отображает диалог, где пользователь может выбрать параметры, необходимые при печати документа — такие, как размер и положение бумаги (которые будут сохранены вместе с документом).

В списке недавно открытых документов должны быть только имена файлов. Не должно быть, к примеру, путей к файлам. Пользователи сами смогут найти свой документ, и не стоит отображать полный путь к файлу, если пользователь этого не просил.

Диалог сохранения файла должен давать пользователю свободу выбора имени и расположения файла. Если возможно, старайтесь не совмещать сохранение файла и выбор местоположения для него [Лучше сказать «позвольте пользователю сохранить файл не выбирая местоположения для него»]. В подобных случаях лучше предоставить пользователю функции автосохранения документа. (см. также «Auto Save and Versions.» (стр.59))

Лучше использовать команду «дублировать...», а не «Сохранить как...» и «экспорт...». Иногда пользователю не сразу понятно, какая версия файла осталась открыта после того, как он выбрал команду «сохранить как...» или «экспорт...». В Mac OS X v10.7 при использовании команды «Дублировать...» также сохраняются сведения о происхождении документа (они копируются из оригинального документа) и добавляется информация о версии (копия помечается соответствующей меткой в названии). Вдобавок, после выбора команды «дублировать...» открытыми остаются оба документа, что даёт пользователю возможность выбирать, с каким документом работать.

Особые команды в меню «файл» нужно помещать над командами печати. Также у особых команд для работы с файлами должно быть своё собственное имя, например вместо «Параметры» нужно использовать, к примеру, команду «Параметры страницы». Запомните: команды «Параметры» и «выход» располагаются в меню приложения.

Не следует располагать в меню команды «сохранить в (формат файла) ...». Если необходимо, используйте меню выбора формата в диалоге сохранения файла. К примеру, меню выбора формата в программе «Preview» позволяет выбрать множество форматов файлов, таких как TIFF, PNG и JPG.

Если нужно соханить документ в формате, который не поддерживается, а потом продолжить работу с текущим документом, следует использовать команду «экспорт...».

Не следует давать особые имена для команд, наподобие «сохранить копию» или «сохрхранить в». Используйте команду «дублировать...».

Меню «Правка»

Меню «Правка» содержит команды, позволяющие изменять (править) содержимое документов и прочих теткстовых полей. Также в этом меню содержатся команды для обмена данными с другими приложениями с помощью буфера обмена.

[Изображение]

Если программа не предназначена для правки текста, содержащиеся в меню «правка» команды также можно использовать в различных диалогах и прочих местах, где пользователю потребуется править тексты.

Меню «Правка» включает в себя следующие стандартные команды, описанные в таблице ниже:

Пункт меню| Обязательный или нет|Сочетание клавиш|Описание

Отменить|Да|Command+Z|Отменить действие последней команды пользователя.

Вернуть|Да|Command+Shift+Z|Отменить действие последней команды «отменить»

Вырезать|Да|Command+X|Удалить выделенный фрагмент, поместив его в буфер обмена. Предыдущий фрагмент в буфере обмена затирается.

Копировать|Да|Command+C|Создать копию выбранного фрагмента и поместить в буфер обмена.

Вставить|Да|Command+V|Вставить фрагмент из буфера обмена перед курсором. Фрагмент в буфере обмена сохраняется.

Вставить с сохранением стиля|Нет|Command+Option+Shift+V|Вставить содержимое буфера обмена, применив к нему стиль текста вокруг курсора.

Удалить|Да||Удалить выбранный фрагмент, не помещая его в буфер обмена.

Выбделить всё|Да|Command+A|Выбрать всё содержимое документа или окна, либо весь текст в поле ввода

Найти|Да|Command+F|Открыть диалог поиска.

Найти далее|Нет|Command+G|Повторить предыдущую операцию поиска.(Найти следующий фрагмент, удовлетворяющий уже заданным условиям поиска.)

Правописание...|нет|Command+:|Проверить правописание в выделенном фрагменте и открыть интерфейс, позволяющий исправить ошибочно написанное слово и найти следующую ошибку.

Речь|Нет||отобразить подменю с командами «Проговорить» и «Закончить проговаривать». Пользователи могут выбрать эту команду, чтобы система проговорила выбранный фрагмент текста с помощью синтезатора речи.

Специальные символы|Да||Отобразить диалог выбора специальных символов любой из поддерживаемых операционной системой кодировок[, которые пользователь не может ввести с клавиатуры]. Эта команда добавляется в меню «правка» автоматически.

Если это возможно, не следует пренебрегать функциями «Отменить» и «повторить». В частности, обязательно команда должна применяться для:

* операций, при которых меняется содержимое документа

* операций, которые сложно отменить вручную

* большинства команд из меню

* большинства вводимых с клавиатур команд.

Не все команды можно отменить с помощью команды «отмена»: например, выделение, прокрутку, изменение размера, положения окна и его разделение.

Пользователь должен знать, когда кнопка «Отменить» не сработает. Если последнюю операцию нельзя отменить, замените пункт меню на недоступную строку «нельзя отменить», чтобы пользователь знал, что она не работает.

Если пользователь собирается выполнить операцию, которую нельзя отменить с помощью кнопки «отменить», его необходимо предупредить (о том, как это сделать, читайте раздел «Alerts»).

Имя последней выполненной и отменённой операции нужно добавить к командам «отменить» и «повторить». Если последняя операция может быть вызвана из меню — здесь должно быть название команды. К примеру, если пользователь ввёл какой-либо текст, назвать этот пункт нужно «отменить ввод», а если пользователь выберет эту команду, в меню должна появиться команда «вернуть ввод», а к команде «отменить» нужно добавить название команды, совершённой ДО ввода отменённого текста.

Команда удаления должна назыаться «удалить», и никак иначе. Не «Очистить», или «Стереть». Выбор этого пункта меню аналогично нажатию на клавишу «Delete» или «Clear» на клавиатуре.

Определите наилучшее расположение для команды «найти». К примеру, её можно расположить в меню «Файл», если поиск ведётся по имени файла, но если используется поиск и замена в тексте, команда должна располагаться в меню «правка». Подробнее см. «Find Windows».

Используйте подменю поиска, если это будет удобнее. С помощью подменю поиска можно расширить возможности поиска, добавив туда кроме команд «Найти...» (Command+F), «Найти следующий» (Command+G), «Найти предыдущий» (Command+Shift+G), «Найти выделенный фрагмент» (Command+E), «Перейти к выделенному фрагменту» (Command+J). При наличии подменю поиска, команда «Найти» пишется без многоточия.

Команды «Найти» и «Найти далее» следует отделять от других команд. Вне зависимости от того, расположена ли команда «найти» в меню «Файл» или «Правка», так как для пользователя эти команды близки по смыслу.

Можно использовать подменю грамматики, если это уместно. Если в программе есть несколько команд для проверки правописания, можно в подменю «Грамматика» добавить команды «Проверить правописание» (Command+;) и «Автоматическая проверка правописания». Если команда «Правописания» находится в соответствующем подменю, она не снабжается многоточием.

Меню «Форматирование»

Если в приложении поддерживаются средства форматирования текста, меню «Форматирование» можно расположить как отдельно в строке меню, так и как подменю в разделе «Правка». Меню форматирования имеет смысл разделить на несколько групп, размещённых по подменю: таким, как «Шрифт», «Текст» и «Стиль».

[Изображение]

Меню «Форматирование» включает в себя следующие стандартные команды, описанные в таблице ниже:

Пункт меню| Обязательный или нет|Сочетание клавиш|Описание

Выбрать шрифт|Да|Command+T|Вызвать окно шрифтов. Команда «Выбрать шрифт» должна быть первой в меню «форматирование».

Выбрать цвет|Да|Command+Shift+C|Вызывает окно выбора цвета

Жирный|Нет|Command+B|Включить или выключить выделение выбранного текста жирным шрифтом

Курсив|Нет|Command+I|Включить или выключить выделение выбранного текста курсивом

Подчёркивание|Нет|Command+U|Включить или выключить выделение выбранного текста подчёркиванием

Увеличить|Нет|Command+Shift+= |Увеличить размер шрифта для выделенного текста

Уменьшить|Нет|Command+-|Уменьшить размер шрифта для выделенного текста

Скопировать стиль|Нет|Command+Option+C|Запомнить стиль, включая шрифт, цвет и размер выделенного текста

Применить стиль|Нет|Command+Option+V|Применить сохранённый стиль к выделенному участку текста

По левому краю|Нет|Command+{|Выключка текста по левому краю

По центру|Нет|Command+| |Выключка текста по центру

По ширине|Нет||Выключка по ширине страницы

По правому краю|Нет|Command+}|Выключка текста по правому краю.

Показать линейку|Нет||Показать линейку форматирования

Скопировать линейку|Нет|Command+Control+C|Скопировать настройки форматирования, такие, как отступы и выключка

Применить линейку|Нет|Command+Control+V|Применить настройки форматирования, сохранённые в буфере обмена

Меню «Вид»

В меню «Вид» расположены команды управления отображением содержимого окон; В этом меню не должно быть команд для управлением окон, для этих целей есть меню «Окно» (Подробнее см.«The Window Menu» (стр.126))

[Изображение]

Меню «Вид» включает в себя следующие стандартные команды, описанные в таблице ниже: (tucvbif) [≈]

Пункт меню| Обязательный или нет|Сочетание клавиш|Описание

Показать/Скрыть панель инструментов|Да|Command+Option+T|Показать или скрыть панель инструментов.

Настройка панели инструментов...|Да||Открытие диалога, позволяющего изменять настройки панели инструментов.

Во весь экран|Нет|Command+Control+F|Развернуть окно на весь экран на новом рабочем столе. Работает в программах, поддерживающих данную функцию под управлением Mac OS X v10.7

Меню «Вид» должно быть, если окно программы можно развернуть на весь экран, или в нём есть панели инструментов, даже если в него войдут только команда разворота на весь экран, или команды управления панелью инструментов. Запомните, что в полноэкранном режиме команду «Во весь экран» нужно заменить на «выйти из полноэкранного режима»

Не стоит использовать меню «вид» для управления окнами-панелями инструментов (так называемыми палитрами) — для этой цели есть меню «Окно»

Команды управления видимостью панели инструментов должны отражать её состояние. Если она видна, должна быть команда «скрыть панель инструментов», если же она скрыта — «показать панель инструментов»

Меню, характерные для отдельных приложений

Если это необходимо, у приложений могут быть свои меню. Их следует располагать между меню «Вид» и «Окно». К примеру, у Safari строка меню включает в себя такие разделы, как «История» и «Закладки», расположенные между разделами «Вид»ю и «Окно».

Меню «Окно».

Меню «Окно» включает в себя команды для управления окнами прилоения.

Кроме таких команд, как «Свернуть» и «Раскрыть» (См. ниже), в меню «Окно» не входят команды, применение которых влияет на отображение содержимого окон — эти команды следует помещать в меню «Вид» (см. «The View Menu» (стр.125)).

[Изображение]

В меню «Окно» входят следующие стандартные команды, описанные в таблице ниже:

Команда|Обязательная или нет|Горячая клавиша|Описание

Свернуть|Да|Command+M|Позволяет свернуть текущее окно в Док.

Свернуть все|Нет|Command+Option+M|Позволяет свернуть все окна активного прилоения в док.

Раскрыть|Да||Позволяет переключаться между предварительно установленным по размером окна, определяемым его содержимым, и установленным пользователем.

На передний план|Нет||Позволяет вывести все открытые окна данного приложения на передний план, в порядке, как они расположены, включая размер и положение на экране (То же самое произойдёт, если нажать на значок приложения в Доке).
Заметьте, что если выбрать опцию «Упорядочить окна», удерживая клавишу Option, произойдёт то же, что и при выборе опции «на передний план».

Упорядочить окна|Нет||Позволяет вывести все окна прилоения на передний план по порядку и расположить их «Плиткой».
Заметьте, что если выбрать опцию «Упорядочить окна», удерживая клавишу Option, произойдёт то же, что и при выборе опции «на передний план».

Заметьте, что при использовании функции полноэкранного режима в Mac OS X v10.7 желательно располагать команду «Во весь экран» в меню «Вид». Если же меню «Вид» отсутствует, допускается располагать команду «Во весь экран»

Следуйте этим указанием, если вы хотите, чтобы меню «Окно» помогало пользователям работать с вашей программой.

Желательно наличие списка открытых окон. В меню «Окно» должен располагаться список всех открытых (в том числе свёрнутых) окон в порядке, в котором они были открыты — снизу вверх. Документы, в которых есть несохранённые изменения должны быть помечены точкой.

Не следует в меню «Окно» располагать список палитр. Однако можно добавить в меню команду управления палитрами (Подробнее см. «Panels» (стр.195))

Меню «Окно» должно быть, если есть команды «Свертуть» и «Раскрыть». Если приложение не поддерживает многооконный режим, чтобы можно было вызвать эти функции и с клавиатуры.

Соблюдайте порядок расположения пунктов в меню «Окно». Располагать команды нужно в следующем порядке:

Свернуть

Развернуть

-----------

Команды вашего приложения

Поверх всех окон

Разделитель

Перечень открытых окон

Заметьте, что команда «Закрыть» должна располагаться в меню «Файл» (см.«The File Menu»(стр.135)).

Команда «Раскрыть» не предназначена для того, чтобы разворачивать окно на весь экран. Она предназначена для того, чтобы пользователь мог выбирать два варианта размера окна. Подробнее см. «Resizing and Zooming Windows» (стр.168).

Меню «Справка»

Если к вашей программе прилагается справочная информация, следует располагать меню «Справка» в правой части строки меню.

[Изображение]

Если справка вашего приложения зарегистрирована в системе, возможно исползовать справочное поле Spotlight в верхней строке меню «справка» (о регистрации справочных см. Apple Help Programming Guide).

Вторым в списке идёт пункт «Справка по [название программы]», по выбору которого отображается первая страница справочного файла. Подробнее см. «User Assistance» (стр.95).

Если возможно, в меню кроме стандартных должно быть не более одной команды. Желательно, чтобы это была только команда «Справка по [название программы]». Если нужны ещё команды, их следует располагать ниже команды «Справка по [название программы]». Если эти команды не связаны напрямую со справкой включая, команды регистрации, ссылки на сайт компании, информацию о версиях и т.д. — следует разместить их в файле справке, а не располагать как отдельные пункты справочного меню.

Не следует располагать оглавление справки непосредственно в меню «Справка». Оглавление должно появляться когда пользователь вызовет команду «Справка по [название программы]». Выносить отдельные разделы руководства в меню можно только если вы уверены, что это действительно необходимо.

Расширения строки меню

Как уже отмечалось в «All Apps Use the Single Menu Bar» (стр.15), пользователь сам выбирает, какие значки должны быть в правой части строки меню. Обычно пользователь сам выбирает нужные значки с помощью соответствующих диалогов настройки.
Когда не хватает места для отображения меню, Mac OS X автоматически скрывает эти значки, пока не появится достаточно места. Также, если значков становится слишком много, некоторые значки будут скрыты.

Не следует надеяться на наличие значка. Значок может быть скрыт системой, и нельзя быть однозначно уверенным в его наличии.

Не следует сигнализировать о состоянии како-го либо значка с помощью всплывающих окон. Всплывающие окна-«пузыри» нужны для вывода предупреждений о состоянии элементов управления формы и областей окна (подробнее см. «Popovers» (стр.191)). Однако значки можно оснащать собственным меню, как например у значка «клавиатура и спецсимволы» на рисунке ниже.

[Изображение]

Желательно предоставить альтернативу значкам в строке меню. К примеру, можно использовать меню Дока, которое открывается при нажатии на значок приложения в Доке. Подробнее см. «Disigning a Dock Menu» (стр.152).

Контекстные меню

Контекстные меню нужны для доступа к относительно редкоиспользуемым функциям, относящихся к определённому объекту. Можно представить контекстное меню как ссылку на небольшой список команд, связанных в определённом контексте с выбранным объектом. Контекстное меню появляется при нажатии на объект или выделенную область кнопкой мыши при зажатой клавише Control.

На рисунке ниже приведён пример контекстного меню Finder-а в контексте выбранного файла.

[Изображение]

Если выделить текст и вызвать для него контекстное меню, в состав его войдут специфические функции для текста. К примеру, контекстное меню для текста в редакторе «TextEdit» выводится список команд, среди которых команды выбора шрифта, проверки правописания и т.д.

[Изображение]

Если возможно, следует оснащать приложение кнопкой «Действия» для вызова контекстного меню. Кнопку «Действия» для вызова контекстного меню в пределах приложения принято располагать в панели инструментов. К примеру, на рисунке ниже изображено окно Finder-а после нажатия кнопки «Действия», в результате чего открылось контекстное меню для выбранной папки. Подробнее об использовании кнопки «Действия» см. «Меню действий» (стр. 247).

[Изображение]

В контекстное меню следует добавлять наиболее частоиспользуемые команды, применимые только в данном контексте. К примеру, для выделенного текста можно использовать элементы меню «правка», но не команды «сохранить» и «печать».

С осторожностью можно добавлять подменю в контекстное меню. Конечно, это лучше, чем станет слишком длинное контекстное меню (вплоть до выхода за пределы экрана и появления кнопок прокрутки), но следует помнить, что подменю использовать не слишком удобно. Некоторые пользователи считают, что очень неудобно, когда из-за неловкого движения из подменю в основное меню, подменю может закрыться. Следите за тем, чтобы у контекстного меню было не больше одного уровня подменю.

У контекстного меню не должно быть команды по умолчанию. Если пользователь закрывает меню, не выбрав ни одной команды, ни одна команда и не должна быть выполнена.

Следите за тем, чтобы команды из контекстного меню были доступны и через другие команды. Пользователь не всегда знает о наличии контекстного меню у объекта, поэтому не должно быть команд, доступных только через него. Следует понимать контекстное меню как удобную функцию для опытных пользователей.

В контекстном меню не должно быть подсказок по горячим клавишам. Сочетания клавиш могут иметь иное значение в другом контексте. Подсказки по сочетаниям клавиш должны располагаться в строке меню (см. «Designing Menus for the Menu Bar» (Стр.132))

Меню Дока.

Меню Дока появляется вызывается как контекстное меню на значке приложения в Доке, однако имеет несколько иной внешний вид, чем контекстное меню. По умолчанию, в этом меню отображаются команды из малого меню Дока, которое можно вызвать нажав и удерживая кнопку мыши на значке в Доке когда приложение не запущено.

[Изображение]

Дополнительно, в меню дока можно добавить команды для приложения, которые пользователь может вызвать, щёлкнув по значку при нажатой Control.

* частоиспользуемые команды по запуску действий в приложении, если (it is not frontmost)

* Команды, доступные когда ни одного документа не открыто.

* Сообщения и индикацию состояния приложения.

К примеру, в программе «Mail» с помощью этого меню можно вызвать команду «Новые сообщения», чтобы проверить наличие новых сообщений. Подробнее см. «Dock Tile Programming Guide».

Следите за тем, чтобы команды меню Дока можно было вызвать из строки меню. Пользователь не всегда знает о наличии этого меню, поэтому оно не должно стать единственным способом вызова той или иной команды.

Следует располагать пункты меню вашего приложения над стандартными пунктами меню Дока. Так пользователю легче найти сатндартные команды меню Дока.

Внимание! Этот перевод, возможно, ещё не готов.
Его статус: идёт перевод

Переведено на Нотабеноиде
http://notabenoid.org/book/21170/69915

Переводчики: tucvbif

Настройки

Готово:

100.00% КП = 1.0