<<>> <> <> <> <> <<>> DIRECTORY AtomButtonsTypes, BiScrollers, Containers, EBTypes, GGBasicTypes, GGCircleCache, GGInterfaceTypes, GGModelTypes, MultiCursors, ViewerClasses; GGControlPanelTypes: CEDAR DEFINITIONS = BEGIN Container: TYPE = Containers.Container; SliceDescriptor: TYPE = GGModelTypes.SliceDescriptor; GravityType: TYPE = GGInterfaceTypes.GravityType; Viewer: TYPE = ViewerClasses.Viewer; ControlsObj: TYPE = RECORD [ topper: Container, -- IF together THEN panel ELSE picture panel: Container, -- control panel container picture: Container, -- picture container biScroller: BiScrollers.BiScroller, -- inside the picture container actionArea: Viewer, -- the inner viewer of the BiScroller feedbackLine: Viewer, -- part of feedback, except when feedback is disabled yBounded: LIST OF Viewer _ NIL, -- used in GGContainerImpl for viewer resizing. xBounded: LIST OF Viewer _ NIL, active: BOOL _ FALSE, activeButton: AtomButtonsTypes.TwoState, paletteButton: AtomButtonsTypes.TwoState, palette: BOOL _ FALSE, bufferButton: AtomButtonsTypes.TwoState, showColors: AtomButtonsTypes.TwoState, screenStyle: AtomButtonsTypes.EnumTypeRef, alignments: AtomButtonsTypes.TwoState, gravityTypeMenu: AtomButtonsTypes.EnumTypeRef, -- initialized in GGWindowImpl gravityExtentButton: AtomButtonsTypes.GraphicsState, gravButton: AtomButtonsTypes.TwoState, midpointButton: AtomButtonsTypes.TwoState, heuristicsButton: AtomButtonsTypes.TwoState, slopeHandle: AtomButtonsTypes.SortedButtonHandle, slopeCount: NAT _ 0, angleHandle: AtomButtonsTypes.SortedButtonHandle, angleCount: NAT _ 0, radiusHandle: AtomButtonsTypes.SortedButtonHandle, radiusCount: NAT _ 0, radiusCircleCache: GGCircleCache.Cache, distanceHandle: AtomButtonsTypes.SortedButtonHandle, distanceCount: NAT _ 0, caret2: Viewer, slopeView: Viewer, angleView: Viewer, radiusView: Viewer, lineDistView: Viewer, typescript: Viewer, controlPanel: EBTypes.ActiveDoc, controlPanelViewer: Viewer, cursor: MultiCursors.CursorType _ crossHairsCircle ]; END.