SVStateImpl.mesa
Copyright © 1986 by Xerox Corporation. All rights reserved.
Last edited by Bier on March 30, 1987 12:52:26 pm PST
Contents: Routines for getting and setting the state or "modes" of the Solidviews interface.
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[svData.drag.sliceToExtend];
RETURN[NIL];
};
SetSliceToExtend: PUBLIC PROC [svData: SVData, slice: SliceDescriptor] = {
svData.drag.sliceToExtend ← slice;
};
END.