Введение
Элемент пользовательского интерфейса
Balloon help — это система справки, представленная компанией Apple Computer в 1991 году в выпуске System 7.0. Название произошло от способа отображения текста справки в виде "облачков с речью", как в комиксах. С тех пор многие стали использовать это название для обозначения любого вида всплывающей справки.
Проблема в том,
В преддверии выхода System 7, Apple тщательно изучила проблему получения справки. Они выявили ряд распространенных вопросов, таких как "Где я?", "Как добраться до…?", или, что еще хуже, "Почему этот элемент неактивен?". В контексте использования компьютеров они определили два основных типа вопросов, которые задают пользователи: "Что это такое?" и "Как это сделать?". Существующие системы справки обычно не предоставляли полезной информации ни по одной из этих тем и часто были не более чем электронным переизданием бумажного руководства. Особенно сложной проблемой был вопрос "Что это такое?". В интерфейсах, которые часто включали нестандартные элементы управления или кнопки с неясными иконками, для многих функций пользователю приходилось обращаться к руководству. Пользователи, как правило, отказывались это делать и в итоге не использовали весь потенциал своих приложений, поскольку многие функции оставались "скрытыми". Именно эту проблему Apple решила решить, и после обширных испытаний остановилась на Balloon Help как на решении. Для вопроса "Как это сделать?" Apple разработала Apple Guide, который был добавлен в System 7.5 в 1994 году.
Механизм
Помощь в виде всплывающих подсказок активировалась выбором пункта "Показать всплывающие подсказки" из нового меню "Помощь" в System 7 (обозначенного значком всплывающей подсказки в System 7, значком "Руководство Apple" в System 7.5 и словом "Помощь" в Mac OS 8). Пока всплывающие подсказки были активны, наведение указателя мыши на элемент отображало подсказку для этого элемента. Отключить всплывающие подсказки можно было, выбрав пункт "Скрыть всплывающие подсказки" из того же меню. Базовая система основывалась на наборе ресурсов, включенных в приложение, содержащих текст, который отображался во всплывающих подсказках. Графика и изменение размера всплывающих подсказок обеспечивались самой операционной системой. Содержимое всплывающих подсказок, отображаемое в виде текста, обычно полностью бралось из ресурсов, поскольку их можно было относительно легко добавить с помощью компилятора ресурсов Apple Rez или стороннего программного обеспечения, такого как Resourcerer. Apple также предоставила специальный редактор, упрощающий этот процесс: он отображал список только тех объектов, которым требовались всплывающие подсказки, и позволял редактировать текст внутри контура всплывающей подсказки, чтобы разработчик мог примерно представить, как будет выглядеть конечный результат. Кроме того, существовал API системного уровня, который позволял программистам приложений напрямую создавать и отображать всплывающие подсказки, содержащие текст, графику или их комбинацию. Механизм автоматически отображал подходящую всплывающую подсказку, основываясь на положении мыши и текущем состоянии элемента. Он также позиционировал всплывающую подсказку с помощью алгоритма, разработанного для предотвращения перекрытия элементов, и корректировал указатель, чтобы он указывал на нужный объект. Текст справки для наиболее распространенных элементов пользовательского интерфейса, таких как кнопка закрытия окна, был встроен в систему. Разработчики также могли добавлять всплывающие подсказки для иконки своего приложения, позволяя пользователям идентифицировать неизвестное приложение в Finder без его запуска. Разработчикам рекомендовалось не только давать объектам имена, но и описывать их функции и объяснять их состояние. Например, для команды меню "Копировать" Apple предлагала подробное описание "Копирует выделенный текст в буфер обмена", а также вторую версию, которая добавляла "Недоступно сейчас, так как ничего не выделено". Эта функция объясняла пользователям, почему определенный пункт меню был недоступен.
Наследие
Microsoft впоследствии представила аналогичные "всплывающие подсказки" в Windows 95, которые выполняют схожую функцию, но обычно они меньше и появляются без предварительной активации. Аналогичная система под названием "метки справки" использовалась в OPENSTEP и была сохранена в Mac OS X. Концепция всплывающей справки в виде "шариков" впоследствии была принята как дополнительная альтернатива всплывающим подсказкам в более поздних версиях Microsoft Windows, таких как Windows XP, которая использует "шарики" для выделения и объяснения различных аспектов программ или функций операционной системы (Balloon Help в MSDN). Всплывающая справка в виде "шариков" также широко используется в среде Squeak Smalltalk, в оконном менеджере Enlightenment и в MUI AmigaOS. К слову, Microsoft смогла реализовать собственную версию всплывающей справки в виде "шариков", приобретя оригинальный патент среди множества других, купленных у Apple Computer в начале 1990-х годов. Описание этого первого, оригинального патента содержится в заявке "Метод вычисления размеров и позиционирования прямоугольных шариков", поданной в 1991 году.