mirror of
https://github.com/gnustep/libs-gui.git
synced 2025-05-31 01:50:48 +00:00
Make window controller a subclass of NSResponder and manage the
responder chain. Patch by Wolfgang Lux <wolfgang.lux@gmail.com>. git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/gui/trunk@26956 72102866-910b-0410-8b05-ffd578937521
This commit is contained in:
parent
39d06834ab
commit
5a50f7ad69
3 changed files with 34 additions and 15 deletions
|
@ -310,32 +310,44 @@
|
|||
|
||||
if (_window != nil)
|
||||
{
|
||||
NSResponder *responder;
|
||||
|
||||
[nc removeObserver: self
|
||||
name: NSWindowWillCloseNotification
|
||||
object: _window];
|
||||
name: NSWindowWillCloseNotification
|
||||
object: _window];
|
||||
// Remove self from the responder chain
|
||||
responder = _window;
|
||||
while (responder && [responder nextResponder] != self)
|
||||
{
|
||||
responder = [responder nextResponder];
|
||||
}
|
||||
[responder setNextResponder: [self nextResponder]];
|
||||
[_window setWindowController: nil];
|
||||
}
|
||||
|
||||
ASSIGN (_window, aWindow);
|
||||
ASSIGN(_window, aWindow);
|
||||
|
||||
if (_window != nil)
|
||||
{
|
||||
[_window setWindowController: self];
|
||||
// Put self into the responder chain
|
||||
[self setNextResponder: [_window nextResponder]];
|
||||
[_window setNextResponder: self];
|
||||
[nc addObserver: self
|
||||
selector: @selector(_windowWillClose:)
|
||||
name: NSWindowWillCloseNotification
|
||||
object: _window];
|
||||
selector: @selector(_windowWillClose:)
|
||||
name: NSWindowWillCloseNotification
|
||||
object: _window];
|
||||
|
||||
/* For information on the following, see the description in
|
||||
-setDocument: */
|
||||
-setDocument: */
|
||||
if (_document == nil)
|
||||
{
|
||||
[_window setReleasedWhenClosed: NO];
|
||||
}
|
||||
{
|
||||
[_window setReleasedWhenClosed: NO];
|
||||
}
|
||||
else
|
||||
{
|
||||
[_window setReleasedWhenClosed: YES];
|
||||
}
|
||||
{
|
||||
[_window setReleasedWhenClosed: YES];
|
||||
}
|
||||
|
||||
}
|
||||
}
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue