Mac Developer Library

Developer

InputMethodKit Framework Reference

The Input Method Kit Reference Collection

Classes   Protocols  

The Input Method Kit, introduced in OS X v10.5, provides a streamlined programming interface that lets you develop input methods with far less code than older Mac programming interfaces. It is fully integrated with the Text Services Manager. The Input Method Kit allows 32-bit applications to work with 64-bit applications.

The Input Method Kit provides classes and protocols for managing communication with client applications, candidates windows, and input method modes. Input methods supply text from a conversion engine (written in any language, such as C, C++, Objective-C, Python, and so on), key bindings and optional event handling, and information about your input method in an extended Info.plist file. You also have the option to provide menu items that support input-method-specific commands or preferences settings.

Classes

NSObject

NSObject is the root class of most Objective-C class hierarchies.

IMKInputController

The IMKInputController class provides a base class for custom input controller classes.

IMKServer

The IMKServer class manages client connections to your input method.

NSResponder

NSResponder is an abstract class that forms the basis of event and command processing in the Application Kit.

IMKCandidates

The IMKCandidates class presents candidates to users and notifies the appropriate IMKInputController object when the user selects a candidate.

Protocols

IMKMouseHandling

The IMKMouseHandling protocol defines methods that your input method can implement to handle mouse events.

IMKServerInput

IMKServerInput is an informal protocol that defines methods for receiving text events.

IMKStateSetting

The IMKStateSetting protocol defines methods for setting or accessing values that indicate the state of an input method.

IMKTextInput

The IMKTextInput protocol defines methods for communicating with client input sessions.