-- TEditBitmapCache.mesa; Edited by McGregor on 4-Dec-81 9:45:28 DIRECTORY GraphicsExtra USING [BitmapRef, NewBitmap], TextNode USING [Location]; TEditBitmapCache: DEFINITIONS IMPORTS GraphicsExtra = BEGIN Bitmap: TYPE = REF BitmapRec; BitmapRec: TYPE = RECORD [ bits: GraphicsExtra.BitmapRef, chars: INTEGER ← 0, leftIndent: INTEGER ← 0 ]; Fetch: PROC [key: TextNode.Location] RETURNS [Bitmap] ; AddCacheEntry: PROC [key: TextNode.Location, bitmap: Bitmap] ; FlushCacheEntry: PROC [key: TextNode.Location] ; FlushOldCacheRange: PROC [key: TextNode.Location] ; AllocateCachedBitmap: PROC [width, height: INTEGER] RETURNS [bitmap: Bitmap] = INLINE { bitmap ← NEW[TEditBitmapCache.BitmapRec ← [bits: GraphicsExtra.NewBitmap[width, height]]] }; END.