<> <> <> <> <> <> <<>> DIRECTORY ImagerFont USING [Font], Menus USING [MenuProc], TiogaOpsDefs USING [Ref], ViewerClasses USING [Viewer], VoiceViewers USING [VoiceViewerInfo, SoundInterval, TextMarkEntry], Rope USING [ROPE]; <<>> VoiceMarkers: CEDAR DEFINITIONS = BEGIN <<---- constants describing the size of characters used in the voiceProfile/voicePlay fonts>> <<>> <> <<>> <> <<>> voiceCharWidth: REAL = 8.0; voiceCharAscent: REAL = 9.0; voiceCharDescent: REAL = 1.0; voiceCharHeight: REAL = voiceCharAscent + voiceCharDescent; <<---- routines to do with character markers>> AddCharMark: Menus.MenuProc; DeleteCharMarks: Menus.MenuProc; LockedAddCharMark: PROC [viewer: ViewerClasses.Viewer, position: INT]; DisplayCharMarks: PROC [unMarkedRope: Rope.ROPE, charMarkList: LIST OF INT, skipChars: INT] RETURNS [Rope.ROPE]; <> <<>> ExtractCharMarks: PUBLIC PROC [viewerInfo: VoiceViewers.VoiceViewerInfo, soundInterval: VoiceViewers.SoundInterval]; <> <<>> EditCharMarks: PROC [viewerInfo: VoiceViewers.VoiceViewerInfo, unchangedHead, deleteChars, insertChars: INT, soundInterval: VoiceViewers.SoundInterval]; <> << >> <<---- routines to do with textual markers>> <<>> voiceMarkerFont: ImagerFont.Font; -- the font used to display the text voiceCharSet: BYTE = 0; -- since at times a 16-bit Xerox character code is called for TextInput: PROC [viewer: ViewerClasses.Viewer, input: Rope.ROPE]; <> <<>> BackSpace: PROC [viewer: ViewerClasses.Viewer]; <> BackWord: PROC [viewer: ViewerClasses.Viewer]; <> RedrawTextMarkers: PROC [viewer: ViewerClasses.Viewer, voiceCharNode: TiogaOpsDefs.Ref]; <> ExtractTextMarks: PUBLIC PROC [viewerInfo: VoiceViewers.VoiceViewerInfo, soundInterval: VoiceViewers.SoundInterval]; <> EditTextMarks: PROC [viewerInfo: VoiceViewers.VoiceViewerInfo, unchangedHead, deleteChars, insertChars: INT, soundInterval: VoiceViewers.SoundInterval]; <> <<>> RopeFromTextList: PROC [LIST OF VoiceViewers.TextMarkEntry] RETURNS [Rope.ROPE]; <> TextListFromRope: PROC [Rope.ROPE] RETURNS [LIST OF VoiceViewers.TextMarkEntry]; <> <<>> <<>> END.