Fix a regression in the alert sheet functions which has introduced a

variant of #26101 where only one callback was used.


git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/gui/trunk@28959 72102866-910b-0410-8b05-ffd578937521
This commit is contained in:
wlux 2009-11-05 21:56:42 +00:00
parent fb935e532f
commit cb299e33c8
2 changed files with 27 additions and 0 deletions

View file

@ -1547,6 +1547,13 @@ void NSBeginAlertSheet(NSString *title,
contextInfo: contextInfo];
[panel close];
if (modalDelegate && [modalDelegate respondsToSelector: didEndSelector])
{
void (*didEnd)(id, SEL, id, int, void*);
didEnd = (void (*)(id, SEL, id, int, void*))[modalDelegate
methodForSelector: didEndSelector];
didEnd(modalDelegate, didEndSelector, panel, [panel result], contextInfo);
}
NSReleaseAlertPanel(panel);
}
@ -1579,6 +1586,13 @@ void NSBeginCriticalAlertSheet(NSString *title,
didEndSelector: willEndSelector
contextInfo: contextInfo];
[panel close];
if (modalDelegate && [modalDelegate respondsToSelector: didEndSelector])
{
void (*didEnd)(id, SEL, id, int, void*);
didEnd = (void (*)(id, SEL, id, int, void*))[modalDelegate
methodForSelector: didEndSelector];
didEnd(modalDelegate, didEndSelector, panel, [panel result], contextInfo);
}
NSReleaseAlertPanel(panel);
}
@ -1613,6 +1627,13 @@ void NSBeginInformationalAlertSheet(NSString *title,
didEndSelector: willEndSelector
contextInfo: contextInfo];
[panel close];
if (modalDelegate && [modalDelegate respondsToSelector: didEndSelector])
{
void (*didEnd)(id, SEL, id, int, void*);
didEnd = (void (*)(id, SEL, id, int, void*))[modalDelegate
methodForSelector: didEndSelector];
didEnd(modalDelegate, didEndSelector, panel, [panel result], contextInfo);
}
NSReleaseAlertPanel(panel);
}