IMKTextInput
IMKTextInput протокол определяет методы для связи с клиентскими входными сеансами. Метод ввода использует этот протокол, чтобы отправить текст или получить информацию о клиентском тексте.
Наследование
Не применимый
Соответствует
Не применимый
Оператор импорта
Swift
import Carbon
Objective C
@import Carbon;
Доступность
Доступный в OS X v10.5 и позже.
-
Отправляет полностью преобразованный текст во входной сеанс. (требуемый)
Объявление
Swift
func insertText(_string: AnyObject!, replacementRangereplacementRange: NSRange)Objective C
- (void)insertText:(id)stringreplacementRange:(NSRange)replacementRangeПараметры
stringПреобразованный текст.
replacementRangeЗаменяющий диапазон. Этот параметр позволяет методам ввода вставить текст в расположении кроме текущего выбора. При использовании его заменяющий диапазон должен быть относительно начала клиентского документа. Если строка должна быть вставлена по текущему выбору, указывают заменяющий диапазон с расположением и длиной
NSNotFound. Если клиент не поддерживаетTSMDocumentAccessпротокол, этот метод игнорирует заменяющую строку диапазона.Обсуждение
Когда метод ввода заканчивает преобразование, он вызывает этот метод и передает законченный текст как
NSStringилиNSAttributedStringобъект.Оператор импорта
Objective C
@import Carbon;Swift
import CarbonДоступность
Доступный в OS X v10.5 и позже.
-
setMarkedText (_: selectionRange:replacementRange:) - setMarkedText:selectionRange:replacementRange:ТребуемыйВставляет предоставленный текст и отмечает его, чтобы указать, что это - часть активного входного сеанса. (требуемый)
Объявление
Параметры
stringNSStringилиNSAttributedStringобъект. ПередачаNSStringобъект производит маркировку по умолчанию. На экране 72 точек на дюйм маркировка по умолчанию является черным подчеркиванием на 2 пикселя для всей строки.selectionRangeДиапазон выбора, который является относительно
stringпараметр. Например, если строка содержит эти символы: «INPUT» и диапазон (5,0), выбор сразу установлен после «T».replacementRangeДиапазон, указывающий расположение в клиентском документе, куда должен быть помещен отмеченный текст. Если отмеченный текст должен быть помещен в текущую позицию курсора
replacementRangeравняетсяNSNotFound. Если нетNSNotFound, заменяющий диапазон относительно клиентского документа (0начало документа), а НЕ строковый параметр. В настоящее время заменяющий диапазон отправляется клиенту через kEventParamTextInputSendReplaceRange Параметр события Углерода. Для этого параметра, который будет использоваться, клиент должен поддерживать протокол TSMDocumentAccess. Если клиент не поддерживает протокол TSMDocumentAccessreplacementRangeпараметр проигнорирован.Оператор импорта
Objective C
@import Carbon;Swift
import CarbonДоступность
Доступный в OS X v10.5 и позже.
См. также
-
selectedRange () - selectedRangeТребуемыйВозвращает текущий диапазон выбора. (требуемый)
Возвращаемое значение
Текущий диапазон выбора, относительно клиентского документа. Если клиент не поддерживает
TSMDocumentAccessпротокол возвращенный диапазон имеет значение расположенияNSNotFoundи длинаNSNotFound.Оператор импорта
Objective C
@import Carbon;Swift
import CarbonДоступность
Доступный в OS X v10.5 и позже.
-
markedRange () - markedRangeТребуемыйВозвращает диапазон в документе, занятом отмеченным текстом, т.е. текущим встроенным сеансом. (требуемый)
Возвращаемое значение
Диапазон отмеченного текста.
Обсуждение
В то время как метод ввода преобразовывает ввод текста и отправляет его клиенту, клиент поддерживает диапазон отмеченного текста. Отмеченный текст подчеркивается определенными способами указать пользователю, что их нажатия клавиш находятся в процессе того, чтобы быть преобразованным методом ввода, и преобразование еще не было завершено. Метод ввода использует этот метод для запроса того диапазона.
Оператор импорта
Objective C
@import Carbon;Swift
import CarbonДоступность
Доступный в OS X v10.5 и позже.
-
Возвращает приписанную строку для предоставленного диапазона текста. (требуемый)
Объявление
Swift
func attributedSubstringFromRange(_range: NSRange) -> NSAttributedString!Objective C
- (NSAttributedString *)attributedSubstringFromRange:(NSRange)rangeПараметры
rangeДиапазон текста, относительно документа, указывающего строку для получения.
Возвращаемое значение
Приписанная строка. Посмотрите
CTStringAttributes.hзаголовочный файл для атрибутов, которые могут быть включены в эту строку. Если клиент не поддерживает протокол TSMDocumentAccess, возвращаемая строка создается из данных, полученных путем отправки клиентского приложения akEventTextInputGetSelectedTextСобытие Carbon.Оператор импорта
Objective C
@import Carbon;Swift
import CarbonДоступность
Доступный в OS X v10.5 и позже.
-
characterIndexForPoint (_: tracking:inMarkedRange:) - characterIndexForPoint:tracking:inMarkedRange:ТребуемыйВозвращает расположение в текстовом документе, отображающемся на глобальную точку. (требуемый)
Объявление
Swift
func characterIndexForPoint(_point: NSPoint, trackingmappingMode: IMKLocationToOffsetMappingMode, inMarkedRangeinMarkedRange: UnsafeMutablePointer<ObjCBool>) -> IntObjective C
- (NSInteger)characterIndexForPoint:(NSPoint)pointtracking:(IMKLocationToOffsetMappingMode)mappingModeinMarkedRange:(BOOL *)inMarkedRangeПараметры
pointТочка для отображения. Это - глобальная точка, обычно от мыши вниз работа.
mappingModeРежим отображения. Если метод ввода отслеживает мышь, режим должен быть
kIMKMouseTrackingMode. Если метод ввода просто хочет отобразить экранную позицию на смещение, чем набор режим к kIMKNearestBoundaryMode.inMarkedRangeПо возврату, если точка в текстовой организации и в отмеченном диапазоне, этот параметр устанавливается на
YEStrue. Иначе, если точка вне отмеченного диапазона, то по возврату этот параметр устанавливается наNOfalse.Возвращаемое значение
Расположение в текстовом документе.
Обсуждение
Если метод ввода отслеживает мышь, приложение должно выделиться к активной встроенной области.
Оператор импорта
Objective C
@import Carbon;Swift
import CarbonДоступность
Доступный в OS X v10.5 и позже.
-
attributesForCharacterIndex (_: lineHeightRectangle:) - attributesForCharacterIndex:lineHeightRectangle:ТребуемыйВозвращает словарь текстовых атрибутов для текста в предоставленном индексе символа. (требуемый)
Объявление
Swift
func attributesForCharacterIndex(_index: Int, lineHeightRectanglelineRect: UnsafeMutablePointer<NSRect>) -> [NSObject : AnyObject]!Objective C
- (NSDictionary *)attributesForCharacterIndex:(NSUInteger)indexlineHeightRectangle:(NSRect *)lineRectПараметры
indexИндекс символа, атрибуты которого Вы хотите получить. Индекс относительно встроенного сеанса. Обратите внимание на то, что, если нет никакого встроенного сеанса, значение индекса должно быть
0, который указывает, что информация должна быть взята от текущего выбора.lineRectПо возврату, прямоугольник, структурирующий прямоугольник один пиксель шириной с высотой строки. Этот прямоугольник ориентирован тем же путем, строка ориентирована.
Возвращаемое значение
Словарь, содержащий текстовые атрибуты для текста в предоставленном индексе символа. Атрибуты включают
CTFontRefдля текста в том индексе и текстовой ориентации. Текстовая ориентация обозначенаNSNumberчье значение 0, если текст вертикально ориентирован и 1, если горизонтально ориентирован текст. Ключ для этого значенияIMKTextOrientationKey.Обсуждение
Метод ввода вызывает этот метод для размещения окна кандидата в экран.
Оператор импорта
Objective C
@import Carbon;Swift
import CarbonДоступность
Доступный в OS X v10.5 и позже.
-
Возвращает длину текстового документа. (требуемый)
Возвращаемое значение
Длина текстового документа. Если клиент не поддерживает
TSMDocumentAccessпротокол возвращенное значениеNSNotFound.Обсуждение
Этот метод может быть в вычислительном отношении расходом в зависимости от того, как клиент хранит текст. По этой причине необходимо избежать вызывать этот метод часто.
Оператор импорта
Objective C
@import Carbon;Swift
import CarbonДоступность
Доступный в OS X v10.5 и позже.
-
Возвращает массив имен для атрибутов, поддерживаемых получателем. (требуемый)
Объявление
Swift
func validAttributesForMarkedText() -> [AnyObject]!Objective C
- (NSArray *)validAttributesForMarkedTextВозвращаемое значение
Массив названий атрибута.
Обсуждение
Методы ввода должны ограничить атрибуты, используемые для создания приписанных строк к атрибутам в этом массиве.
Оператор импорта
Objective C
@import Carbon;Swift
import CarbonДоступность
Доступный в OS X v10.5 и позже.
-
Переопределяет текущую клавиатуру. (требуемый)
Объявление
Swift
func overrideKeyboardWithKeyboardNamed(_keyboardUniqueName: String!)Objective C
- (void)overrideKeyboardWithKeyboardNamed:(NSString *)keyboardUniqueNameПараметры
keyboardUniqueNameУникальное имя клавиатуры.
Обсуждение
Клиент пытается определить местоположение раскладки клавиатуры с тем именем в пакете метода ввода. Если расположение найдено, оно передается клиенту, тогда говорящему текстовому менеджеру по сервису использовать то расположение для событий клавиатуры. Методы ввода должны вызвать метод каждый раз, когда они активируются. Если метод ввода использует системную клавиатуру для переопределения текущей клавиатуры, они ответственны за определение уникального имени клавиатуры. Обычно это имя имя типа DNS, такое как:
com.apple.<some name>.Оператор импорта
Objective C
@import Carbon;Swift
import CarbonДоступность
Доступный в OS X v10.5 и позже.
-
selectInputMode (_:) - selectInputMode:ТребуемыйВыбирает новый режим ввода. (требуемый)
Объявление
Swift
func selectInputMode(_modeIdentifier: String!)Objective C
- (void)selectInputMode:(NSString *)modeIdentifierПараметры
modeIdentifierNSStringобъект с форматом DNS, таким как:com.<company name> .inputmethod.<some name>. Идентификатор должен соответствовать один из ключей в словаре режима ввода компонента.Обсуждение
Этот метод позволяет методу ввода изменить его режим непосредственно.
Оператор импорта
Objective C
@import Carbon;Swift
import CarbonДоступность
Доступный в OS X v10.5 и позже.
-
supportsUnicode () - supportsUnicodeТребуемыйТесты, чтобы видеть, поддерживает ли текущий входной сеанс текст Unicode. (требуемый)
Объявление
Swift
func supportsUnicode() -> BoolObjective C
- (BOOL)supportsUnicodeВозвращаемое значение
YEStrueесли текущий входной сеанс поддерживает текст Unicode; иначеNOfalse.Обсуждение
Методы ввода, ограничивающие коды символов, отправленные клиенту, если тот клиент не поддерживает текст Unicode, должны вызвать этот метод, чтобы учиться, поддерживает ли данный входной сеанс текст Unicode.
Оператор импорта
Objective C
@import Carbon;Swift
import CarbonДоступность
Доступный в OS X v10.5 и позже.
-
bundleIdentifier () - bundleIdentifierТребуемыйВозвращает идентификатор пакета для процесса, к которому присоединен входной сеанс. (требуемый)
Возвращаемое значение
Идентификатор пакета для процесса, к которому присоединен входной сеанс.
Обсуждение
Много методов ввода должны быть в состоянии идентифицировать процесс, которому принадлежат входные сеансы. Этот метод предоставляет ту услугу.
Оператор импорта
Objective C
@import Carbon;Swift
import CarbonДоступность
Доступный в OS X v10.5 и позже.
-
windowLevel () - windowLevelТребуемыйВозвращает уровень окна для клиентского окна. (требуемый)
Возвращаемое значение
Уровень окна для клиентского окна.
Обсуждение
Вызовите это для определения клиентского уровня окна. Внутренне,
IMKCandidatesкласс использует этот метод для определения корректного уровня для дисплея кандидата. Поэтому методы ввода то использованиеIMKCandidatesне имейте никакой причины вызвать этот метод. Однако много разработчиков метода ввода создают свою собственную систему отображения кандидата, и этот метод предоставлен для их использования. Для отображения окна кандидата на корректном уровне используйте этот метод для получения клиентского уровня окна, постепенно увеличьте возвращенный уровень, и затем примените тот уровень к любым окнам кандидата.Оператор импорта
Objective C
@import Carbon;Swift
import CarbonДоступность
Доступный в OS X v10.5 и позже.
-
Режимы списка для отображения расположения на экране к тексту смещаются.
Объявление
Swift
typealias IMKLocationToOffsetMappingMode = IntObjective C
enum { kIMKMouseTrackingMode = (1<<0), kIMKNearestBoundaryMode = (1<<1) };typedef NSInteger IMKLocationToOffsetMappingMode;Константы
-
kIMKMouseTrackingModekIMKMouseTrackingModeРежим отслеживания мыши. При отслеживании координата не изменяет смещение, пока координата полностью не проходит данный символ.
Доступный в OS X v10.5 и позже.
-
kIMKNearestBoundaryModekIMKNearestBoundaryModeСамый близкий граничный режим. При попытке поместить точку вставки, координата отображается на самой близкой символьной границе.
Доступный в OS X v10.5 и позже.
Оператор импорта
Objective C
@import Carbon;Swift
import CarbonДоступность
Доступный в OS X v10.5 и позже.
-
-
Текстовая ориентация называет ключ.
Объявление
Swift
var IMKTextOrientationName: NSString!Objective C
extern const *NSString IMKTextOrientationName;Константы
-
IMKTextOrientationNameIMKTextOrientationNameКлюч раньше находил клиентское текстовое значение ориентации, которое является частью словаря, возвращенного методом
attributesForCharacterIndex:lineHeightRectangle:. Присваиваемое значениеNSNumberобъект, представляющий aBOOLзначение. Значение1означает, что клиентский текст использует горизонтальный макет. Значение0средние значения, что клиентский текст использует вертикальный макет.Доступный в OS X v10.5 и позже.
-
