Re: Movable by window background AND custom NSView
Re: Movable by window background AND custom NSView
- Subject: Re: Movable by window background AND custom NSView
- From: patrick machielse <email@hidden>
- Date: Mon, 31 Mar 2008 18:59:04 +0200
Op 31 mrt 2008, om 09:52 heeft vance het volgende geschreven:
I have a Textured Window with a NSView that has some custom drawing
done in drawRect.
When I click and drag outside the custom NSView
The window moves
(That is exactly what is needed)
When I click and drag within the custom NSView
The window moves
The custom NSView receives the mouseDragged messages
Since I am overriding mouseDragged (and most other mouse related
messages in NSResponder) I would expect for the custom NSView to
only receive the messages and since I am not calling [super
mouseXXXXX]; the message should not get outside the NSView therefore
the window should not move.
Clearly that is now what happens. The window moves when I click and
drag within the custom view which is something we dont want to happen.
Does anyone understands what is the flow of mouse events and what to
do to get around this?
The solution is to subclass NSControl instead of NSView. NSWindow
seems to check for the type of your 'control' like view when it is
movable by its background. If the drag event did not occur over an
NSContol type object it will move itself. It baffled me too at first,
but there is some logic to it.
patrick
_______________________________________________
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