Re: Delete action from variety of key presses
Re: Delete action from variety of key presses
- Subject: Re: Delete action from variety of key presses
- From: Nathan Vander Wilt <email@hidden>
- Date: Mon, 7 Jul 2008 16:59:04 -0700
The Cocoa Text Bindings system already translates keys and key
combinations into invocations of NSResponder methods. <http://developer.apple.com/documentation/Cocoa/Conceptual/EventOverview/TextDefaultsBindings/chapter_9_section_1.html
>
So, what you need to do is determine which methods those keys are
already mapping to, override those methods in the appropriate place
in your responder chain (e.g. on your custom view or application
delegate), and have them all invoke some common method to do what
you want.
Thanks, I forgot to mention that I tried overriding some of those
action methods. However, I couldn't get them to fire.
If I implement:
- (BOOL)acceptsFirstResponder {
return YES;
}
- (void)keyDown:(NSEvent*)keyEvent {
(void)keyEvent;
printf("key event received\n");
}
- (void)deleteBackward:(id)sender {
(void)sender;
printf("delete backward received\n");
}
- (void)deleteForward:(id)sender {
(void)sender;
printf("delete forward received\n");
}
...and then press delete or forward-delete, I only ever get "key event
received". According to the chart at http://developer.apple.com/documentation/Cocoa/Conceptual/EventOverview/EventArchitecture/chapter_2_section_3.html#/
/apple_ref/doc/uid/10000060i-CH3-SW10, it looks like the event should
flow all the way down to the "Key Action?" conditional, and since it's
a bound key binding I thought I should get the "Yes: Send action
message to first responder" path.
However, on further investigation, I see that this is just a
"potential" path diagram, and seems to be an example for if the first
responder view is a text one, which mine will rarely be. Under what
circumstances will the Cocoa Text Bindings system convert keypresses
to the "text" actions, so that a non-NSResponder (ie, a window/app
delegate) can perform the action?
thanks,
-natevw
_______________________________________________
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