if ( win != this && win->IsShown() )
{
// there remains at least one other visible TLW, we can hide this
if ( win != this && win->IsShown() )
{
// there remains at least one other visible TLW, we can hide this
if ( win->ShouldPreventAppExit() )
{
// there remains at least one important TLW, don't exit
if ( win->ShouldPreventAppExit() )
{
// there remains at least one important TLW, don't exit
for ( i = wxTopLevelWindows.begin(); i != end; ++i )
{
// don't close twice the windows which are already marked for deletion
for ( i = wxTopLevelWindows.begin(); i != end; ++i )
{
// don't close twice the windows which are already marked for deletion
if ( !wxPendingDelete.Member(win) && !win->Close() )
{
// one of the windows refused to close, don't exit
if ( !wxPendingDelete.Member(win) && !win->Close() )
{
// one of the windows refused to close, don't exit
{
// on some platforms centering top level windows is impossible
// because they are always maximized by guidelines or limitations
{
// on some platforms centering top level windows is impossible
// because they are always maximized by guidelines or limitations
// parent frame under Mac but could happen elsewhere too if the frame
// was hidden/moved away for some reason), don't use it as otherwise
// this window wouldn't be visible at all
// parent frame under Mac but could happen elsewhere too if the frame
// was hidden/moved away for some reason), don't use it as otherwise
// this window wouldn't be visible at all
{
// we were explicitly asked to centre this window on the entire screen
// or if we have no parent anyhow and so can't centre on it
rectParent = rectDisplay;
}
{
// we were explicitly asked to centre this window on the entire screen
// or if we have no parent anyhow and so can't centre on it
rectParent = rectDisplay;
}