Глава 26. Многодокументный интерфейс___________________________753
// Создание экземпляра TMDIChild TMDIChild* child = new TMDIChild(*this, title, 0) ;
// Назначение значка для child child->SetIconSm(GetApplication(), IDI_DOC) ;
// Если активное дочернее окно развернуто,
// то новое дочернее окно также открыть развернутым
TMDIChild *curChild = GetActiveMDIChild();
if (curChild && (curChild->GetWindowLong(GWL_STYLE) & WS_MAXIMIZE))
child->Attr.Style ]= WS_MAXIMIZE;
// создание оконного интерфейса для нового дочернего окна child-create () ;
}
//////////////////////////////////////////////////////////////////
// SimpleMDiClient::CmFileCloseО
//
// Обработчик команды CM_FILECLOSE
void SimpleMDiClient::CmFileClose()
{
// Активное дочернее MDI окно — то, которое будет закрыто
TMDIChild* child = GetActiveMDIChild();
// Уничтожение интерфейса дочернего окна //и удаление соответствующего объекта child->Destroy() ;
delete child;
//////////////////////////////////////////////////////////////////
// SimpleMDiClient::CeFileClose()
//
// Разрешение или запрет выполнения команды CM FILECLOSE
void SiropleMDiClient::CeFileClose(TCommandEnablers tee)
{
// Разрешить только если есть активное дочернее MDI окно
tee.Enable(GetActiveMDIChild() != NULL) ;
}
/////////////////////////////////////////////////////////////////////
// OwlMainf)
//
// Все начинается и заканчивается здесь '
int OwlMain (int, char* [])
{
SimpleMDIApp app;
return app.Run() ;
}