Re: Help with text input
Re: Help with text input
- Subject: Re: Help with text input
- From: Douglas Davidson <email@hidden>
- Date: Fri, 30 Apr 2010 10:04:42 -0700
On Apr 30, 2010, at 9:59 AM, Charles Srstka wrote:
> On Apr 30, 2010, at 11:41 AM, Douglas Davidson wrote:
>
>> Here is the normal sequence when a text-handling view receives key events: the keyDown: method passes events to interpretKeyEvents:, which is where they enter key binding and input management. They come out either as insertText: or as doCommandBySelector: (see NSResponder.h for these three methods). insertText: will be used for text input, doCommandBySelector: with an appropriate selector for special keys like arrow keys. The relevant selectors are mostly listed in NSResponder.h. The default NSResponder implementation of doCommandBySelector: checks whether the receiver responds to the given selector, and if so calls it; otherwise it is passed on to the next responder's doCommandBySelector:.
>
> That’s actually for NSTextInput, which according to the docs is slated for deprecation in favor of NSTextInputClient. If you need to be compatible with Mac OS X 10.4 and earlier, than NSTextInput is the way to go, but otherwise, NSTextInputClient is probably a better choice.
Yes, with NSTextInputClient that would be insertText:replacementRange:. The other NSTextInputClient methods would be used for input methods. A full custom implementation of all of this would typically be used only with a completely custom text object; most clients just use NSTextView or a custom subclass thereof, and override only the methods they are especially concerned with.
Douglas Davidson
_______________________________________________
Cocoa-dev mailing list (email@hidden)
Please do not post admin requests or moderator comments to the list.
Contact the moderators at cocoa-dev-admins(at)lists.apple.com
Help/Unsubscribe/Update your Subscription:
This email sent to email@hidden