<> <> <> <> <<>> DIRECTORY SVInterfaceTypes, SVRayTypes, SVSceneTypes, SVState; SVStateImpl: CEDAR PROGRAM IMPORTS EXPORTS SVState = BEGIN ExtendMode: TYPE = SVSceneTypes.ExtendMode; GravityType: TYPE = SVInterfaceTypes.GravityType; SearchDepth: TYPE = SVRayTypes.SearchDepth; SelectMode: TYPE = SVSceneTypes.SelectMode; SliceDescriptor: TYPE = SVSceneTypes.SliceDescriptor; SVData: TYPE = SVInterfaceTypes.SVData; GetGravityType: PUBLIC PROC [svData: SVData] RETURNS [type: GravityType] = { type _ svData.hitTest.gravityType; }; GetSearchDepth: PUBLIC PROC [svData: SVData] RETURNS [searchDepth: SearchDepth] = { searchDepth _ first; }; GetSelectMode: PUBLIC PROC [svData: SVData] RETURNS [selectMode: SelectMode] = { RETURN[svData.drag.selectState]; }; SetSelectMode: PUBLIC PROC [svData: SVData, selectMode: SelectMode] = { svData.drag.selectState _ selectMode; }; GetExtendMode: PUBLIC PROC [svData: SVData] RETURNS [extendMode: ExtendMode] = { RETURN[svData.drag.extendMode]; }; SetExtendMode: PUBLIC PROC [svData: SVData, extendMode: ExtendMode] = { svData.drag.extendMode _ extendMode; }; GetSliceToExtend: PUBLIC PROC [svData: SVData] RETURNS [slice: SliceDescriptor] = { <> RETURN[NIL]; }; SetSliceToExtend: PUBLIC PROC [svData: SVData, slice: SliceDescriptor] = { <> }; END.