• Open Menu Close Menu
  • Apple
  • Shopping Bag
  • Apple
  • Mac
  • iPad
  • iPhone
  • Watch
  • TV
  • Music
  • Support
  • Search apple.com
  • Shopping Bag

Lists

Open Menu Close Menu
  • Terms and Conditions
  • Lists hosted on this site
  • Email the Postmaster
  • Tips for posting to public mailing lists
Re: Delete action from variety of key presses
[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

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


  • Follow-Ups:
    • Re: Delete action from variety of key presses
      • From: Ken Thomases <email@hidden>
    • Re: Delete action from variety of key presses
      • From: Graham Cox <email@hidden>
    • Re: Delete action from variety of key presses
      • From: Greg Titus <email@hidden>
References: 
 >Delete action from variety of key presses (From: Nathan Vander Wilt <email@hidden>)
 >Re: Delete action from variety of key presses (From: Ken Thomases <email@hidden>)

  • Prev by Date: Re: [NSTextStorage/NSAttributedString] How can we know the height of a rendered string?
  • Next by Date: Re: Delete action from variety of key presses
  • Previous by thread: Re: Delete action from variety of key presses
  • Next by thread: Re: Delete action from variety of key presses
  • Index(es):
    • Date
    • Thread