NSTextStorage
NSTextStorage полуконкретный подкласс NSMutableAttributedString это управляет рядом клиента NSLayoutManager объекты, уведомляя их относительно любых изменений в его символах или атрибутах так, чтобы они могли передать и восстановить изображение текста по мере необходимости. NSTextStorage определяет фундаментальный механизм хранения расширенной текстовой системы обработки Набора Приложения.
Наследование
-
NSObject -
NSAttributedString -
NSMutableAttributedString -
NSTextStorage
-
NSObject -
NSAttributedString -
NSMutableAttributedString -
NSTextStorage
Соответствует
-
AnyObject -
CVarArgType -
Сопоставимый -
Hashable -
NSCoding -
NSCopying -
NSMutableCopying -
NSObjectProtocol -
NSPasteboardReading -
NSPasteboardWriting -
NSSecureCoding -
Печатаемый -
NSCopying -
NSMutableCopying -
NSObject -
NSSecureCoding
Оператор импорта
Swift
import AppKit
Objective C
@import AppKit;
Доступность
Доступный в OS X v10.0 и позже.
-
Добавляет менеджер по расположению к группе получателя менеджеров по расположению.
Объявление
Swift
func addLayoutManager(_aLayoutManager: NSLayoutManager)Objective C
- (void)addLayoutManager:(NSLayoutManager *)aLayoutManagerПараметры
aLayoutManagerМенеджер по расположению для добавления.
Оператор импорта
Objective C
@import AppKit;Swift
import AppKitДоступность
Доступный в OS X v10.0 и позже.
См. также
-
Удаляет менеджера по расположению из группы получателя менеджеров по расположению.
Объявление
Swift
func removeLayoutManager(_aLayoutManager: NSLayoutManager)Objective C
- (void)removeLayoutManager:(NSLayoutManager *)aLayoutManagerПараметры
aLayoutManagerМенеджер по расположению для удаления.
Оператор импорта
Objective C
@import AppKit;Swift
import AppKitДоступность
Доступный в OS X v10.0 и позже.
См. также
-
Возвращает менеджеров по расположению получателя.
Объявление
Swift
var layoutManagers: [AnyObject] { get }Objective C
@property(readonly, copy) NSArray *layoutManagersВозвращаемое значение
Менеджеры по расположению получателя.
Оператор импорта
Objective C
@import AppKit;Swift
import AppKitДоступность
Доступный в OS X v10.0 и позже.
-
Изменения дорожек, внесенные в получатель, позволяя текстовому хранению записать в полной мере внесенные изменения.
Объявление
Objective C
- (void)edited:(NSUInteger)maskrange:(NSRange)oldRangechangeInLength:(NSInteger)lengthChangeПараметры
maskМаска, указывающая природу изменений. Значение сделано путем объединения с оператором битового «ИЛИ» C опций, описанных в
“Change notifications”.oldRangeСтепень символов, затронутых перед изменением, имела место.
lengthChangeЧисло символов добавило к или удаленный из
oldRange. Если никакие символы, где отредактировано, как отмеченоmask, его значение не важно и не определено. Например, при замене с «Несколькими» в строке “Файлы не могли быть сохранены”,oldRange{0, 3} иlengthChange4.Обсуждение
Этот метод вызывает
processEditingесли там являются не выдающимисяbeginEditingвызовы.NSTextStorageвызывает этот метод автоматически каждый раз, когда он вносит изменение в свою приписанную строку. Подклассы, переопределяющие или добавляющие методы, изменяющие их приписанные строки непосредственно, должны вызвать этот метод после внесения тех изменений; иначе Вы не должны вызывать этот метод. Информация, накопленная с этим методом, тогда используется в вызовеprocessEditingсообщить о затронутой части получателя.Методы для запросов изменений,
editedRangeиchangeInLength, укажите степень символов, затронутых после изменения. Этот метод ожидает символы перед изменением, потому что та информация легко доступна, поскольку параметр любому методу выполняет изменение (такой какreplaceCharactersInRange:withString:).Оператор импорта
Objective C
@import AppKit;Swift
import AppKitДоступность
Доступный в OS X v10.0 и позже.
-
Гарантирует, что атрибуты фиксируются в данном диапазоне.
Объявление
Swift
func ensureAttributesAreFixedInRange(_range: NSRange)Objective C
- (void)ensureAttributesAreFixedInRange:(NSRange)rangeПараметры
rangeДиапазон символов, атрибуты которых могли бы быть исследованы.
Обсуждение
NSTextStorageобъект с помощью ленивой фиксации атрибута требуется, чтобы вызывать этот метод прежде, чем получить доступ к любым атрибутам вrange. Этот метод дает атрибут, фиксирующий шанс произойти при необходимости.NSTextStorageподклассы, желающие поддерживать лень, должны вызвать этот метод от всех средств доступа атрибута, которые они реализуют.Оператор импорта
Objective C
@import AppKit;Swift
import AppKitДоступность
Доступный в OS X v10.0 и позже.
-
Возвраты, фиксирует ли получатель атрибуты лениво.
Объявление
Swift
var fixesAttributesLazily: Bool { get }Objective C
@property(readonly) BOOL fixesAttributesLazilyВозвращаемое значение
YEStrueесли текстовое хранение фиксирует атрибуты лениво,NOfalseиначе.Обсуждение
По умолчанию, пользовательский
NSTextStorageподклассы не ленивы, но предоставленный конкретный подкласс ленив по умолчанию.Оператор импорта
Objective C
@import AppKit;Swift
import AppKitДоступность
Доступный в OS X v10.0 и позже.
-
Лишает законной силы атрибуты в указанном диапазоне.
Объявление
Swift
func invalidateAttributesInRange(_range: NSRange)Objective C
- (void)invalidateAttributesInRange:(NSRange)rangeПараметры
rangeДиапазон символов, атрибуты которых должны быть лишены законной силы.
Обсуждение
Вызванный от
processEditingлишить законной силы атрибуты когда текстовые изменения среды хранения. Если получатель не ленив, этот метод просто вызываетfixAttributesInRange:. Если ленивая фиксация атрибута имеет силу, этот метод вместо этого записывает фиксацию необходимости диапазона.Оператор импорта
Objective C
@import AppKit;Swift
import AppKitДоступность
Доступный в OS X v10.0 и позже.
-
Очищает изменения, внесенные в получатель, и уведомляет его делегата и менеджеров по расположению изменений.
Объявление
Swift
func processEditing()Objective C
- (void)processEditingОбсуждение
Этот метод автоматически вызывается в ответ на
edited:range:changeInLength:обменивайтесь сообщениями илиendEditingобменивайтесь сообщениями, если редактирования были сделаны в рамках abeginEditingблок. Вы никогда не должны должны быть вызывать его непосредственно.Этот метод начинается путем регистрации
NSTextStorageWillProcessEditingNotificationк центру уведомления по умолчанию (который приводит к делегату, получающему atextStorageWillProcessEditing:сообщение). Тогда это фиксирует атрибуты. После этого это отправляетNSTextStorageDidProcessEditingNotificationк центру уведомления по умолчанию (который приводит к делегату, получающему atextStorageDidProcessEditing:сообщение). Наконец, это отправляет atextStorage:edited:range:changeInLength:invalidatedRange:обменивайтесь сообщениями каждому из менеджеров по расположению получателя, использующих предоставленные значения аргументов.Оператор импорта
Objective C
@import AppKit;Swift
import AppKitДоступность
Доступный в OS X v10.0 и позже.
-
Возвращает виды редактирований, ожидающих для получателя
Возвращаемое значение
Маска, описывающая виды редактирований, ожидающих для получателя.
Обсуждение
Используйте C поразрядная операция И для тестирования маски; если дополнительные флаги маски будут добавлены позже, тестирование на равенство перестанет работать. Делегат получателя и менеджеры по расположению могут использовать эту информацию для определения природы редактирований в их соответствующих методах уведомления.
Оператор импорта
Objective C
@import AppKit;Swift
import AppKitДоступность
Доступный в OS X v10.0 и позже.
См. также
-
Возвращает диапазон получателя, в который незаконченные изменения были внесены, ли из символов или атрибутов.
Объявление
Swift
var editedRange: NSRange { get }Objective C
@property(readonly) NSRange editedRangeВозвращаемое значение
Диапазон получателя, в который незаконченные изменения были внесены, ли из символов или атрибутов.
Обсуждение
Делегат получателя и менеджеры по расположению могут использовать эту информацию для определения природы редактирований в их соответствующих методах уведомления.
Оператор импорта
Objective C
@import AppKit;Swift
import AppKitДоступность
Доступный в OS X v10.0 и позже.
См. также
-
Возвращает различие между текущей длиной отредактированного диапазона и его длиной, прежде чем началось редактирование.
Объявление
Swift
var changeInLength: Int { get }Objective C
@property(readonly) NSInteger changeInLengthВозвращаемое значение
Различие между текущей длиной отредактированного диапазона и его длиной перед редактированием началось. Т.е. прежде чем получатель был отправлен первое
beginEditingобменивайтесь сообщениями или синглedited:range:changeInLength:сообщение.Обсуждение
Это различие накапливается с каждым вызовом
edited:range:changeInLength:, до заключительные обработки сообщений изменения.Делегат получателя и менеджеры по расположению могут использовать эту информацию для определения природы редактирований в их соответствующих методах уведомления.
Оператор импорта
Objective C
@import AppKit;Swift
import AppKitДоступность
Доступный в OS X v10.0 и позже.
См. также
-
Устанавливает делегата получателя.
Объявление
Swift
unowned(unsafe) var delegate: NSTextStorageDelegate?Objective C
@property(assign) id<NSTextStorageDelegate> delegateПараметры
anObjectНовый делегат.
Оператор импорта
Objective C
@import AppKit;Swift
import AppKitДоступность
Доступный в OS X v10.0 и позже.
См. также
-
Возвращает делегата получателя.
Объявление
Swift
unowned(unsafe) var delegate: NSTextStorageDelegate?Objective C
@property(assign) id<NSTextStorageDelegate> delegateВозвращаемое значение
Делегат получателя.
Оператор импорта
Objective C
@import AppKit;Swift
import AppKitДоступность
Доступный в OS X v10.0 и позже.
См. также
-
Возвращает массив выполнений атрибута получателя.
Объявление
Swift
var attributeRuns: [AnyObject]Objective C
@property(copy) NSArray *attributeRunsВозвращаемое значение
Массив выполнений атрибута получателя.
Специальные замечания
Если Вы не имеете дело с scriptability, Вы не должны вызывать этот метод непосредственно.
Оператор импорта
Objective C
@import AppKit;Swift
import AppKitДоступность
Доступный в OS X v10.0 и позже.
-
Устанавливает выполнения атрибута получателя.
Объявление
Swift
var attributeRuns: [AnyObject]Objective C
@property(copy) NSArray *attributeRunsПараметры
attributeRunsМассив атрибута работает для установки.
Специальные замечания
Если Вы не имеете дело с scriptability, Вы не должны вызывать этот метод непосредственно.
Оператор импорта
Objective C
@import AppKit;Swift
import AppKitДоступность
Доступный в OS X v10.0 и позже.
-
Возвращает текст получателя как массив символов.
Объявление
Swift
var characters: [AnyObject]Objective C
@property(copy) NSArray *charactersСпециальные замечания
Не используйте этот метод, если Вы не имеете дело непосредственно с scriptability. Для индексного доступа к символам использовать
NSAttributedStringlengthметод для доступа к строке, иNSStringcharacterAtIndex:метод для доступа к отдельным символам.Оператор импорта
Objective C
@import AppKit;Swift
import AppKitДоступность
Доступный в OS X v10.0 и позже.
-
Устанавливает текстовый текст хранения.
Объявление
Swift
var characters: [AnyObject]Objective C
@property(copy) NSArray *charactersПараметры
charactersСимволы для установки как текст текстового хранения.
Специальные замечания
Не используйте этот метод, если Вы не имеете дело непосредственно с scriptability. Использовать
NSMutableAttributedStringmutableStringметод для возврата строкового объекта, который будет прослежен соответствующей приписанной строкой для модификаций.Оператор импорта
Objective C
@import AppKit;Swift
import AppKitДоступность
Доступный в OS X v10.0 и позже.
-
Возвращает шрифт получателя.
Возвращаемое значение
Шрифт получателя.
Обсуждение
В OS X v10.5 и позже, если шрифт не был установлен, этот метод и связанные со шрифтом команды сценариев принимают Helvetica 12.
Специальные замечания
Если Вы не имеете дело с scriptability, Вы не должны вызывать этот метод непосредственно.
Оператор импорта
Objective C
@import AppKit;Swift
import AppKitДоступность
Доступный в OS X v10.0 и позже.
-
Устанавливает текстовый шрифт хранения.
Параметры
fontНовый шрифт.
Специальные замечания
Если Вы не имеете дело с scriptability, Вы не должны вызывать этот метод непосредственно.
Оператор импорта
Objective C
@import AppKit;Swift
import AppKitДоступность
Доступный в OS X v10.0 и позже.
-
Возвращает текстовый основной цвет хранения.
Объявление
Swift
var foregroundColor: NSColor?Objective C
@property(strong) NSColor *foregroundColorВозвращаемое значение
Текстовый основной цвет хранения.
Специальные замечания
Если Вы не имеете дело с scriptability, Вы не должны вызывать этот метод непосредственно.
Оператор импорта
Objective C
@import AppKit;Swift
import AppKitДоступность
Доступный в OS X v10.0 и позже.
-
Выбирает текстовый основной цвет хранения.
Объявление
Swift
var foregroundColor: NSColor?Objective C
@property(strong) NSColor *foregroundColorПараметры
colorНовый основной цвет.
Специальные замечания
Если Вы не имеете дело с scriptability, Вы не должны вызывать этот метод непосредственно.
Оператор импорта
Objective C
@import AppKit;Swift
import AppKitДоступность
Доступный в OS X v10.0 и позже.
-
Возвращает массив текстовых абзацев хранения.
Объявление
Swift
var paragraphs: [AnyObject]Objective C
@property(copy) NSArray *paragraphsВозвращаемое значение
Массив текстовых абзацев хранения.
Специальные замечания
Если Вы не имеете дело с scriptability, Вы не должны вызывать этот метод непосредственно.
Оператор импорта
Objective C
@import AppKit;Swift
import AppKitДоступность
Доступный в OS X v10.0 и позже.
-
Устанавливает текстовые абзацы хранения.
Объявление
Swift
var paragraphs: [AnyObject]Objective C
@property(copy) NSArray *paragraphsПараметры
paragraphsМассив строк для установки как текстовые абзацы хранения.
Специальные замечания
Если Вы не имеете дело с scriptability, Вы не должны вызывать этот метод непосредственно.
Оператор импорта
Objective C
@import AppKit;Swift
import AppKitДоступность
Доступный в OS X v10.0 и позже.
-
Возвращает массив текстовых слов хранения.
Объявление
Swift
var words: [AnyObject]Objective C
@property(copy) NSArray *wordsВозвращаемое значение
Массив текстовых слов хранения.
Специальные замечания
Если Вы не имеете дело с scriptability, Вы не должны вызывать этот метод непосредственно.
Оператор импорта
Objective C
@import AppKit;Swift
import AppKitДоступность
Доступный в OS X v10.0 и позже.
-
Устанавливает текстовые слова хранения.
Объявление
Swift
var words: [AnyObject]Objective C
@property(copy) NSArray *wordsПараметры
wordsМассив строк для установки как текстовые слова хранения.
Специальные замечания
Если Вы не имеете дело с scriptability, Вы не должны вызывать этот метод непосредственно.
Оператор импорта
Objective C
@import AppKit;Swift
import AppKitДоступность
Доступный в OS X v10.0 и позже.
-
Эти константы используются в
edited:range:changeInLength:.Объявление
Swift
struct NSTextStorageEditedOptions : RawOptionSetType { init(_rawValue: UInt) init(rawValuerawValue: UInt) static var Attributes: NSTextStorageEditedOptions { get } static var Characters: NSTextStorageEditedOptions { get } }Objective C
enum { NSTextStorageEditedAttributes = 1, NSTextStorageEditedCharacters = 2 };Константы
-
AttributesNSTextStorageEditedAttributesАтрибуты были добавлены, удалены или изменены.
Доступный в OS X v10.0 и позже.
-
CharactersNSTextStorageEditedCharactersСимволы были добавлены, удалены или заменены.
Доступный в OS X v10.0 и позже.
Обсуждение
Этими значениями является также OR'ed вместе в уведомлениях для информирования экземпляров
NSLayoutManagerбыл изменен — посмотритеtextStorage:edited:range:changeInLength:invalidatedRange:. -
-
Отправленный после того, как текстовое хранение заканчивает обрабатывать редактирования в
processEditing.Наблюдатели кроме делегата не должны вносить дальнейшие изменения в текстовое хранение. Объект уведомления является текстовым объектом хранения, обработавшим редактирования. Это уведомление не содержит a
userInfoсловарь.Оператор импорта
Objective C
@import AppKit;Swift
import AppKitДоступность
Доступный в OS X v10.0 и позже.
-
Отправленный, прежде чем текстовое хранение заканчивает обрабатывать редактирования в
processEditing.Наблюдатели кроме делегата не должны вносить дальнейшие изменения в текстовое хранение. Объект уведомления является текстовым объектом хранения, собирающимся обработать редактирования. Это уведомление не содержит a
userInfoсловарь.Оператор импорта
Objective C
@import AppKit;Swift
import AppKitДоступность
Доступный в OS X v10.0 и позже.
