146 _____________ _______________________Глава 5

Сохраняет в файле F текущее состояние объекта: вызывает унаследованный метод TEMSArea. Store, затем записывает в файл заголовок RegHeadTEMSType и поле Роз. Перед обращением к методу файловую переменную F необходимо связать с уже существующим нетипизи— рованным файлом, а сам файл должен быть открыт для записи блоками длиной в 1 байт.

Getltem Procedure Getltem (var Dest; Sz: Longint);

Перекрывается: Часто

Читает из участка EMS— памяти со смещением Pos байт от ее начала Sz байт в переменную Dest: вызывает родительский метод TEMSArea.ReadEMS с параметрами Pos, Dest и Sz, затем увеличивает значение поля Pos на величину Sz.

Setltem Procedure Setltem (var Source; Sz: Longint);

Перекрывается: Часто

Помещает в участок EMS— памяти со смещением Pos байт от ее начала Sz байт из переменной Source: вызывает родительский метод TEMSArea.WriteEMS с параметрами Source, Pos и Sz, затем увеличивает значение поля Pos на величину Sz.

TEMSText______

Объект позволяет разместить в EMS—памяти набор текстовых строк. В какой—то степени этому объекту соответствует текстовый файл стандартного типа Text. Объект порожден от TEMSType и наследует его поле Pos, содержащее текущее положение указателя чтения/записи от начала памяти. Метод Setltem размещает в памяти очередную строку S и увеличивает значение Pos на Length(S)+l. Метод Getltem читает строку из памяти и точно также смещает указатель Pos. Строка в EMS— памяти хранится в стандартном формате Паскаля: первый байт строки содержит ее Длину, затем следует цепочка символов. Эта форма не совпадает с форматом ASCII— строк, в соответствии с которым строка содержит цепочку символов, заканчибающуюся признаком EOL (последовательностью символов #13#10). Таким образом, объект нельзя считать полным аналогом текстового файла.

Методы

Getltem Function Getltem: String;

Возвращает размещенную в EMS— памяти текстовую строку, на которую указывает Pos, и увеличивает значение Pos на длину строки плюс один байт.

Setltem Procedure Setltem (S: String);

Помещает в участок EMS— памяти, на который указывает Pos, строку 5 и увеличивает значение Pos на величину Length(S)+l.

TEMSScreen______________________________________

Объект TEMSScreen предназначен для копирования текущего состояния экрана (текстового или графического) в EMS— память и восстановления экрана по его копии. Его метод Init определяет текущий режим работы