git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@51476
c3d73ce0-8a6f-49c7-b76d-
6d57e0e08775
wxWindow* wxTopLevelWindowCocoa::SetDefaultItem(wxWindow *win)
{
wxWindow *old = wxTopLevelWindowBase::SetDefaultItem(win);
wxWindow* wxTopLevelWindowCocoa::SetDefaultItem(wxWindow *win)
{
wxWindow *old = wxTopLevelWindowBase::SetDefaultItem(win);
- NSView *newView = win->GetNSView();
- // newView does not have to be an NSControl, we only cast to NSControl*
- // to silence the warning about cell not being implemented.
- if(newView != nil && [newView respondsToSelector:@selector(cell)])
- newCell = [(NSControl*)newView cell];
+ if(win != NULL)
+ {
+ NSView *newView = win->GetNSView();
+ // newView does not have to be an NSControl, we only cast to NSControl*
+ // to silence the warning about cell not being implemented.
+ if(newView != nil && [newView respondsToSelector:@selector(cell)])
+ newCell = [(NSControl*)newView cell];
+ else
+ newCell = nil;
+
+ if(newCell != nil && ![newCell isKindOfClass:[NSButtonCell class]])
+ { // It's not an NSButtonCell, set the default to nil.
+ newCell = nil;
+ }
+ }
- if(newCell != nil && ![newCell isKindOfClass:[NSButtonCell class]])
- { // It's not an NSButtonCell, set the default to nil.
- newCell = nil;
- }
-
[GetNSWindow() setDefaultButtonCell:(NSButtonCell*)newCell];
return old;
}
[GetNSWindow() setDefaultButtonCell:(NSButtonCell*)newCell];
return old;
}