wxCHECK_MSG( node, false, _T("Failed to find child node") );
- wxSizerItem *item = node->GetData();
-
- if ( item->IsWindow() )
- item->GetWindow()->SetContainingSizer( NULL );
-
- delete item;
+ delete node->GetData();
m_children.Erase( node );
+
return true;
}
if (item->GetWindow() == window)
{
- item->GetWindow()->SetContainingSizer( NULL );
delete item;
m_children.Erase( node );
return true;
if ( item->IsSizer() )
item->DetachSizer();
- else if ( item->IsWindow() )
- item->GetWindow()->SetContainingSizer( NULL );
delete item;
m_children.Erase( node );
if (item->GetWindow() == oldwin)
{
- item->GetWindow()->SetContainingSizer( NULL );
- item->SetWindow(newwin);
+ item->AssignWindow(newwin);
newwin->SetContainingSizer( this );
return true;
}
if (item->GetSizer() == oldsz)
{
- wxSizer *old = item->GetSizer();
- item->SetSizer(newsz);
- delete old;
+ item->AssignSizer(newsz);
return true;
}
else if (recursive && item->IsSizer())
m_buttonNegative = mybutton;
break;
case wxID_CANCEL:
+ case wxID_CLOSE:
m_buttonCancel = mybutton;
break;
case wxID_HELP:
Add((wxWindow*)m_buttonNegative, 0, wxALIGN_CENTRE | wxLEFT | wxRIGHT, 3);
}
+ // according to HIG, in explicit apply windows the order is:
+ // [ Help Apply Cancel OK ]
+ if (m_buttonApply)
+ Add((wxWindow*)m_buttonApply, 0, wxALIGN_CENTRE | wxLEFT | wxRIGHT, 3);
+
if (m_buttonCancel){
Add((wxWindow*)m_buttonCancel, 0, wxALIGN_CENTRE | wxLEFT | wxRIGHT, 3);
// Cancel or help should be default
// m_buttonCancel->SetDefaultButton();
}
- if (m_buttonApply)
- Add((wxWindow*)m_buttonApply, 0, wxALIGN_CENTRE | wxLEFT | wxRIGHT, 3);
-
if (m_buttonAffirmative)
Add((wxWindow*)m_buttonAffirmative, 0, wxALIGN_CENTRE | wxLEFT, 6);
#elif defined(__WXMSW__)