замечание

(Реализация класса ResTextApp содержится в листинге 26.6, приведенном в конце этой главы.

Многодокументные стороны ResTextApp и класса приложения проекта SimpleMDI весьма похожи. Конструктор ResTextApp выглядит так:

ResTextApp::ResTextApp() : TApplication("ResourceText") (

//Инициализация флагов и курсора справочной системы

HelpState = false; . .

ContextHelp = false;

HelpCursor = 0;

}

Он инициализирует два флага и курсор, относящиеся к системе оперативной помощи.

Наиболее значимые инициализации выполняются в функции in,LtMainWindow (), Эта функция выглядит следующим образом:

void ResTextApp::InitMainWindow()

(

// Создание MDI обрамления (и MDI клиента) TDecoratedMDIFrame* frame = new TDecoratedMDIFrame(Name,

MDI_MENU, *(new ResMDIClient), true);

// Установка значков, меню и таблицы быстрых клавиш приложения frame->Set!conSm(this, IDI_MDIAPPLICATION) ;

frame->AssignMenu(MDI_MENU) ;

frame->Attr.AccelTable = MDI_MENU;

// Установка панели инструментов SetupToolbar(frame) ;

// Инициализация панели состояния TStatusBar *sb == new TStatusBar(frame, TGadget::Recessed,

TStatusBar::CapsLock ¦

TStatusBar::NumLock ¦

TStatusBar::Overtype);

frame->Insert(*sb, TDecoratedFrame::Bottom) ;

// Назначение обрамления главным окном приложения S e tMa i nWi ndow(frame);

// Установка флагов, фильтров и расширения // для диалога выбора файлов

FileData. Flags = OFN_FILEMUSTES^IST ¦ OFN_HIDEREADONLY ' I OFN_OVERWRITEPROMPT;

FileData.DefExt = "RC";

FileData.SetFilter("Resource Scripts (*.RC)¦*.rc¦\ Dialog Resources (*.DLG)I*.dig[Resource Headers (*.RH)¦*.rh¦");