Уровень пользовательского интерфейса: класс NSTextView
Подавляющее большинство приложений взаимодействует с текстовой системой через один класс: NSTextView. Объект NSTextView обеспечивает богатый набор обрабатывающих текст функций, и может:
Текст дисплея в различных шрифтах, цветах и стилях абзаца
Изображения на дисплее
Считайте текст и изображения от (и запишите им в), диск или область монтажа
Позвольте пользователям управлять текстовыми атрибутами, такими как шрифт, преобразовав в верхний индекс и преобразовав в нижний индекс, использовав кернинг, и использование лигатур
Сотрудничайте с другими представлениями, чтобы позволить прокрутить и дисплей линейки
Сотрудничайте с панелью Font (Окно Fonts) и панелью Spelling
Поддерживайте различные привязки клавиш, такие как используемые в Emacs
Интерфейс, который объявляет этот класс (и наследовал от его суперкласса NSText) позволяет Вам программно:
Управляйте размером области, в которой выведен на экран текст
Управляйте editability и selectability текста
Выберите и действуйте на части текста
Объекты NSTextView используются всюду по пользовательскому интерфейсу Какао для обеспечения стандартного ввода текста и особенностей редактирования.
Объект NSTextView является удобным пакетом самых обычно полезных обрабатывающих текст функций. Если функции класса NSTextView удовлетворяют требования Вашего приложения, и Вам нужно больше программируемого управления символами и атрибутами, составляющими текст, необходимо будет узнать что-то об объекте, хранящем эти данные, NSTextStorage.
Одна из целей проекта NSTextView состоит в том, чтобы обеспечить исчерпывающий набор обрабатывающих текст функций так, чтобы Вы редко должны были создать подкласс. В его стандартном воплощении NSTextView создает необходимую группу объектов, поддерживающих текстовую систему — NSTextContainer, NSLayoutManager и объекты NSTextStorage. Вот основные опции, которые NSTextView добавляет к тем из NSText:
Линейки. Работы NSTextView с классом NSRulerView, чтобы позволить пользователям управлять форматированием абзаца, в дополнение к использованию команд в Текстовом меню, предоставленном Интерфейсным Разработчиком, который доступен как подменю меню Format, а также меню в строке меню.
Входное управление и привязка клавиш. Определенные сочетания клавиш связываются с определенными методами NSTextView так, чтобы пользователь мог, например, переместить точку вставки, не используя мышь.
Отмеченные текстовые атрибуты. NSTextView определяет ряд текстовых атрибутов, поддерживающих специальные характеристики дисплея во время входного управления. Отмеченные текстовые атрибуты влияют только на визуальные аспекты текста — цвет, подчеркивание, и т.д. — они не включают атрибутов, которые изменили бы расположение текста.
Файл и графические присоединения. Расширенная текстовая система обеспечивает программируемый доступ к текстовым присоединениям как экземпляры NSTextAttachment через классы NSTextView и NSTextStorage.
Делегат обменивается сообщениями и уведомления. NSTextView добавляет несколько сообщений делегата и уведомлений используемым NSText. Делегат и наблюдатели NSTextView могут получить любое из сообщений или уведомлений, объявленных любым классом.