<> <> <> <<>> DIRECTORY StyleDefs USING [StyleHandle, Font, StringType, StringRotation], Rope USING [ROPE], GriffinFontDefs USING [FontDescriptorHandle]; GriffinStyle: CEDAR DEFINITIONS ~ BEGIN StyleHandle: TYPE = StyleDefs.StyleHandle; StringType: TYPE = StyleDefs.StringType; <> <> <> <> <<>> CurrentStyle: PROCEDURE RETURNS [StyleHandle]; <> CopyCurrentStyle: PROCEDURE RETURNS [StyleHandle]; <> SetCurrentStyle: PROC[style: StyleHandle]; <> <> Initialize: PROC; --initialize the current style <> <> <> <> <> <> NextName: PROCEDURE RETURNS [Rope.ROPE]; <> Font: TYPE = StyleDefs.Font; InternalFont: TYPE = GriffinFontDefs.FontDescriptorHandle; FontSequence: TYPE = REF FontSequenceRec; FontSequenceRec: TYPE = RECORD[element: SEQUENCE length:NAT OF Font]; StyleSequence: TYPE = REF StyleSequenceRec; StyleSequenceRec: TYPE = RECORD[element: SEQUENCE length: NAT OF StyleHandle]; CreateStyleList: PROC RETURNS[styles: StyleSequence]; CreateFontList: PROC[styles: StyleSequence] RETURNS[fonts: FontSequence]; NumberOfStyle: PROC[style: StyleHandle, styles: StyleSequence] RETURNS [CARDINAL]; NumberOfFont: PROC[font: Font, fonts: FontSequence] RETURNS[CARDINAL]; FindEquivalentStyle: PROC[style: StyleHandle, styles: StyleSequence] RETURNS [StyleHandle]; InternalFontFromFont: PROC[Font] RETURNS[InternalFont]; FontFromInternalFont: PROC[ifont: InternalFont] RETURNS[Font]; ComputeStringType: PROC[stringRotation: StyleDefs.StringRotation, font: Font] RETURNS[StyleDefs.StringType]; END.