Re: Locating a contextual menu

2011-01-09 Thread Andy Lee
On Jan 9, 2011, at 8:58 AM, Thomas Davie wrote:
> I'd like in my app to be able to position an item by right clicking, and 
> selecting something from a contextual menu.  I'm struggling with this though, 
> I don't see any way to find the position of the click that caused the 
> contextual menu to appear.

Check out NSView's menuForEvent: method.

--Andy


___

Cocoa-dev mailing list (Cocoa-dev@lists.apple.com)

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:
http://lists.apple.com/mailman/options/cocoa-dev/archive%40mail-archive.com

This email sent to arch...@mail-archive.com


Locating a contextual menu

2011-01-09 Thread Thomas Davie
Heya,

I'd like in my app to be able to position an item by right clicking, and 
selecting something from a contextual menu.  I'm struggling with this though, I 
don't see any way to find the position of the click that caused the contextual 
menu to appear.

Things I've tried:
1) using standard responder like stuff to find the last click in the view, and 
memorise it.  Unfortunately, NSView eats the right click that causes the 
contextual menu popup so you never get to know where it was.
2) Tracking mouseMoved events until the menu pops up – unfortunately you get no 
way to figure out when the menu opens, so the best you can get is the position 
of the mouse when your action was sent (which is possibly a long way off the 
original click).
3) Searching the docs for some kind of position/location/frame/etc property on 
NSMenu and friends – no luck.

Is there a correct way to do this?

Thanks

Tom Davie___

Cocoa-dev mailing list (Cocoa-dev@lists.apple.com)

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:
http://lists.apple.com/mailman/options/cocoa-dev/archive%40mail-archive.com

This email sent to arch...@mail-archive.com