<> <> <> <> <<>> DIRECTORY Imager USING [Color, Context], Rope USING [ROPE], ViewersWorld USING [Ref], ViewersWorldClasses USING [ViewersWorldClass], ViewerScreenTypes USING [ContextCreatorProc, Screen], Xl USING [RGBRec], XlBitmap USING [Bitmap], XlColorAccess USING [ColorData], XTk USING [Widget], XTkTIPSource USING [TipSourceHandle]; X11Viewers: CEDAR DEFINITIONS = BEGIN <> <> <> Start: PROC [server: Rope.ROPE ¬ NIL]; <> baseClass: PRIVATE ViewersWorldClasses.ViewersWorldClass; <> <> <<>> debugging: PRIVATE BOOL; <> <> <> <<>> ScreenServerData: TYPE = REF ScreenServerDataRec; ScreenServerDataRec: PRIVATE TYPE = RECORD [ viewersWorld: ViewersWorld.Ref, --backpointer... instable: BOOL ¬ TRUE, --TRUE when known problems with widget or connection top: XTk.Widget, useBitmap: BOOL ¬ TRUE, bitmap: XTk.Widget, focusTarget: XTk.Widget, --either top or bitmap possibleBitsPerPixel: NAT ¬ 1, --according to widget preparedBitsPerPixel: NAT ¬ 1, actualBitsPerPixel: NAT ¬ 0, --of sampleMap preparedSurfaceUnitsPerPixel: NAT ¬ 1, actualSurfaceUnitsPerPixel: NAT ¬ 0, bm: XlBitmap.Bitmap ¬ NIL, width, height: NAT ¬ 200, --size of world; not widget imagerCursorColor: Imager.Color ¬ NIL, xCursorColor: REF Xl.RGBRec ¬ NIL, tsh: XTkTIPSource.TipSourceHandle ¬ NIL, contextCreator: ViewerScreenTypes.ContextCreatorProc ¬ NIL, reservedForColorMap: XlColorAccess.ColorData ¬ NIL, reservedForColorIndices: REF ¬ NIL, invGamma: REAL ¬ 0.4545454, --1.0/2.2 cursorInfo: CursorInfo ¬ NIL, class: ViewersWorldClasses.ViewersWorldClass ¬ NIL, thisScreen: ViewerScreenTypes.Screen ¬ main, screens: ARRAY ViewerScreenTypes.Screen OF ScreenServerData ¬ ALL[NIL] <<--screens[thisScreen] will point to this ScreenServerDataRec... >> ]; CursorInfo: TYPE = REF CursorInfoRec; CursorInfoRec: TYPE; afterWidgetCreation: <>PRIVATE ATOM ~ $X11ViewersAfterWidgetCreation; <> <> <> beforeWindowCreation: <>PRIVATE ATOM ~ $X11ViewersBeforeWindowCreation; <> <> <> bitmapReplaced: <>PRIVATE ATOM ~ $X11ViewersBitmapReplaced; <> <> <> bitsPerPixelOk: PRIVATE ERROR; --raised on success checkBitsPerPixel: <>PRIVATE ATOM ~ $X11ViewersCheckBitsPerPixel; <> <> <> <> Reset: PROC [screenServerData: REF ANY]; <> <<>> Warning: PROC [screenServerData: REF ANY, screen: INT ¬ -1]; <> <> SetGCMode: PROC [doingGC: BOOL]; <> <<>> END.