Re: How a window was closed?
Re: How a window was closed?
- Subject: Re: How a window was closed?
- From: Eric Gorr <email@hidden>
- Date: Wed, 3 Mar 2010 10:20:33 -0500
On Mar 2, 2010, at 6:42 PM, Jens Alfke wrote:
>
> On Mar 2, 2010, at 3:32 PM, Eric Gorr wrote:
>
>> Is there any way to determine how a window was closed?
>> I need to base what I do on whether or not a window will be closed by the user pressing the close (red) button or some other way.
>
> If you have an NSWindow subclass, you can override -performClose:, which is called when the user takes action to close the window.
I tried this, but performClose: was not called after I pressed the close (red) button. The intent of this method seems to be to simulate the click, not respond to it.
> Otherwise, you can make your class implement the NSWindow delegate method -windowShouldClose:, which will also be called when the user tries to close the window.
This method is called after I press the close (red) button. My only concern here is that the method does not necessarily lend itself to be exclusively called at this time and it would be a problem if it was ever called if the window was being closed for any other reason. So, how certain is it that it will _only_ be called if the user presses the close (red) button?
With the old toolbox, one would receive a mouse down event and be able to determine what window and what part of the window it belonged to. One of these parts was "inGoAway". I just need the same information with the same reliability.
Now, I suppose I could attach a carbon event handler to my window and ask for kEventClassWindow / kEventWindowClickCloseRgn events, but I was hoping to avoid this and am surprised that there isn't something as clear in Cocoa.
_______________________________________________
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