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)
string
replacementRange:(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:
ТребуемыйВставляет предоставленный текст и отмечает его, чтобы указать, что это - часть активного входного сеанса. (требуемый)
Объявление
Параметры
string
NSString
или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)
point
tracking:(IMKLocationToOffsetMappingMode)mappingMode
inMarkedRange:(BOOL *)inMarkedRange
Параметры
point
Точка для отображения. Это - глобальная точка, обычно от мыши вниз работа.
mappingMode
Режим отображения. Если метод ввода отслеживает мышь, режим должен быть
kIMKMouseTrackingMode
. Если метод ввода просто хочет отобразить экранную позицию на смещение, чем набор режим к kIMKNearestBoundaryMode
.inMarkedRange
По возврату, если точка в текстовой организации и в отмеченном диапазоне, этот параметр устанавливается на
YES
true
. Иначе, если точка вне отмеченного диапазона, то по возврату этот параметр устанавливается наNO
false
.Возвращаемое значение
Расположение в текстовом документе.
Обсуждение
Если метод ввода отслеживает мышь, приложение должно выделиться к активной встроенной области.
Оператор импорта
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)
index
lineHeightRectangle:(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
Параметры
modeIdentifier
NSString
объект с форматом DNS, таким как:com.<company name> .inputmethod.<some name>
. Идентификатор должен соответствовать один из ключей в словаре режима ввода компонента.Обсуждение
Этот метод позволяет методу ввода изменить его режим непосредственно.
Оператор импорта
Objective C
@import Carbon;
Swift
import Carbon
Доступность
Доступный в OS X v10.5 и позже.
-
supportsUnicode () - supportsUnicode
ТребуемыйТесты, чтобы видеть, поддерживает ли текущий входной сеанс текст Unicode. (требуемый)
Объявление
Swift
func supportsUnicode() -> Bool
Objective C
- (BOOL)supportsUnicode
Возвращаемое значение
YES
true
если текущий входной сеанс поддерживает текст Unicode; иначеNO
false
.Обсуждение
Методы ввода, ограничивающие коды символов, отправленные клиенту, если тот клиент не поддерживает текст 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 = Int
Objective C
enum { kIMKMouseTrackingMode = (1<<0), kIMKNearestBoundaryMode = (1<<1) };typedef NSInteger IMKLocationToOffsetMappingMode;
Константы
-
kIMKMouseTrackingMode
kIMKMouseTrackingMode
Режим отслеживания мыши. При отслеживании координата не изменяет смещение, пока координата полностью не проходит данный символ.
Доступный в OS X v10.5 и позже.
-
kIMKNearestBoundaryMode
kIMKNearestBoundaryMode
Самый близкий граничный режим. При попытке поместить точку вставки, координата отображается на самой близкой символьной границе.
Доступный в 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;
Константы
-
IMKTextOrientationName
IMKTextOrientationName
Ключ раньше находил клиентское текстовое значение ориентации, которое является частью словаря, возвращенного методом
attributesForCharacterIndex:lineHeightRectangle:
. Присваиваемое значениеNSNumber
объект, представляющий aBOOL
значение. Значение1
означает, что клиентский текст использует горизонтальный макет. Значение0
средние значения, что клиентский текст использует вертикальный макет.Доступный в OS X v10.5 и позже.
-