<> <> <> <> <> <> <<>> DIRECTORY GGCoreTypes, GGInterfaceTypes, GGModelTypes, GGSegmentTypes, Imager; GGRefresh: CEDAR DEFINITIONS = BEGIN BoundBox: TYPE = GGModelTypes.BoundBox; FeatureData: TYPE = GGInterfaceTypes.FeatureData; GGData: TYPE = GGInterfaceTypes.GGData; Sandwich: TYPE = REF SandwichObj; SandwichObj: TYPE; -- opaque so GGRefresh doesn't depend on BufferedRefresh SelectionClass: TYPE = GGSegmentTypes.SelectionClass; Slice: TYPE = GGModelTypes.Slice; SliceDescriptor: TYPE = GGModelTypes.SliceDescriptor; PaintProc: TYPE = PROC [ggData: GGData, request: REF _ NIL, bounds: BoundBox, clientData: REF _ NIL]; <> DisableRefresh: PROC [ggData: GGData]; <> <<>> EnableRefresh: PROC [ggData: GGData]; <> <> CreateSandwich: PROC [] RETURNS [sandwich: Sandwich]; <> <<>> SetScreen: PROC [ggData: GGData, cw, ch: INTEGER, screen: Imager.Context]; <> <<>> <> ActionAreaPaint: PROC [screen: Imager.Context, whatHasChanged: ATOM, ggData: GGData, handleViewerAbort: BOOL]; <> <> <> <<>> RepaintArea: PROC [screen: Imager.Context, ggData: GGData, whatHasChanged: ATOM, bounds: BoundBox]; <> SetStartBox: PROC [ggData: GGData, dragInProgress: BOOL, caret, anchor, selectedParts, movingParts, selectedCPs, hotCPs, attractor, alignments: BOOL _ FALSE]; <> <<>> EnlargeStartBox: PROC [ggData: GGData, by, andBy: BoundBox]; <> <<>> NullStartBox: PROC [ggData: GGData]; <> <<>> GetABox: PROC [ggData: GGData, dragInProgress: BOOL, caret, anchor, selectedParts, movingParts, selectedCPs, hotCPs, attractor, alignments: BOOL _ FALSE, into: BoundBox] RETURNS [box: BoundBox]; <> GetPaintBox: PROC [ggData: GGData, paintAction: ATOM, into: BoundBox]; <> <<>> PaintInParent: PROC [ggData: GGData, paintAction: ATOM]; <> RegisterPaintProc: PROC [ggData: GGData, paintProc: PaintProc, clientData: REF _ NIL]; <> <<>> <> <> <> <> <> <> <> <> <> <> <> <<>> <> MoveToOverlay: PROC [sliceD: SliceDescriptor, ggData: GGData]; <> MoveToBackground: PROC [sliceD: SliceDescriptor, ggData: GGData]; <> MoveAllSelectedToOverlay: PROC [ggData: GGData, selectClass: SelectionClass]; MoveOverlayToBackground: PROC [ggData: GGData]; EmptyOverlay: PROC [ggData: GGData] RETURNS [BOOL]; <> RepairBackgroundInBoundBox: PROC [ggData: GGData, bBox: BoundBox, eraseFirst: BOOL _ TRUE, overObject: Slice _ NIL]; InvalidateBackground: PROC [ggData: GGData]; <> NoteNewForeground: PROC [ggData: GGData, alignObjects: LIST OF FeatureData]; UpdateForeground: PROC [ggData: GGData, eraseFirst: BOOL _ FALSE]; <> InvalidateForeground: PROC [ggData: GGData]; SaveForeground: PROC [ggData: GGData]; RestoreForeground: PROC [ggData: GGData]; <> PaintEntireScene: PROC [screen: Imager.Context, ggData: GGData, buffer: BOOL _ TRUE]; <> InterpressEntireScene: PROC [dc: Imager.Context, ggData: GGData]; SnapShot: PROC [dc: Imager.Context, ggData: GGData]; <> END.