DIRECTORY AdobeOps USING [ARNumber, ARSystemHandle, EnumeratedSequence, FieldList, FieldType, KeyedPossibilities, ToolType], ARAccess USING [ARStorage], BasicTime USING [GMT], IO USING [STREAM], Rope USING [ROPE]; AdobeToolContext: CEDAR DEFINITIONS = BEGIN DefaultType: TYPE = {systemMust, userDefault}; BlockTooSmall: ERROR; StreamError: ERROR [type: Type]; Type: TYPE = { fieldListEmpty, fieldNameNotFound, badValueField, badFieldNameField, missingFieldNameField, missingValueField}; EnumError: ERROR [why: EnumProblemType]; EnumProblemType: TYPE = {noMatch}; CreateStream: PROCEDURE[fL: AdobeOps.FieldList] RETURNS[ARAccess.ARStorage]; DisplayType: TYPE = {displayedField, nonDisplayedField}; Indices: TYPE = [1..50); UserContextHandle: TYPE = REF UserContextObject; UserContext: TYPE = REF UserContextRec; UserContextRec: TYPE = RECORD[ arSH: AdobeOps.ARSystemHandle, context: SEQUENCE length: CARDINAL OF UserContextObject]; UserContextObject: TYPE = REF UserContextObjectRec; UserContextObjectRec: TYPE = RECORD[ dirty: BOOLEAN ¬ FALSE, body: SELECT type: DisplayType FROM nonDisplayedField => [readOnlyField: Rope.ROPE], displayedField => [editableField: UserContextBody], ENDCASE]; UserContextBody: TYPE = REF UserContextBodyRec; UserContextBodyRec: TYPE = RECORD [ SELECT type: AdobeOps.FieldType FROM arId => [arn: AdobeOps.ARNumber], fixedLengthString, string => [s: Rope.ROPE], dateTime => [temp: Rope.ROPE, dt: BasicTime.GMT], numeric => [num: CARDINAL], enumerated => [value: CARD16], ENDCASE]; InitializeUserContext: PROCEDURE[arSH: AdobeOps.ARSystemHandle, tool: AdobeOps.ToolType] RETURNS[userContext: UserContext]; FreeUserContext: PROCEDURE[uCPtr: REF UserContext]; ResetUserContext: PROCEDURE[uC: UserContext]; ClearUserContext: PROCEDURE[uC: UserContext]; FindPossibilities: PROCEDURE[value: CARDINAL, possibilities: AdobeOps.KeyedPossibilities] RETURNS[AdobeOps.EnumeratedSequence]; GetValueFromEnumString: PROCEDURE[s: Rope.ROPE, uC: AdobeToolContext.UserContext, index: CARDINAL] RETURNS[value: CARDINAL]; GetEnumValueFromUC: PROCEDURE[uC: AdobeToolContext.UserContext, index: CARDINAL] RETURNS[value: CARDINAL]; ConvertStreamDataToUserContext: PROCEDURE[sH: IO.STREAM, to: UserContext]; ConvertUserContextToStreamData: PROCEDURE[sH: IO.STREAM, from: UserContext]; GetValuePairFromTable: PROCEDURE[index: CARDINAL, sH: ARAccess.ARStorage --IO.STREAM--] RETURNS[value: Rope.ROPE]; ResetDataTableValues: PROCEDURE[sH: IO.STREAM]; END... ά Copyright Σ 1985 , 1992by Xerox Corporation. All rights reserved. AdobeToolContext.mesa MXF x RSF 20-Mar-85 16:18:10 JCS 12-Sep-85 14:17:17 Philip James, February 19, 1991 4:34 pm PST Stream USING [Handle], Time USING [Packed]; raised if GetBlock called with block size less than 2 raised from calls to GetFieldValue, GetFieldValuePair and ReadAR For Report to use in getting strings from an AR file For Report. Resets the length of value to 0. ΚΖ•NewlineDelimiter –(cedarcode) style™šœ Οeœ7™CJšœ™Jšœ ™ Jšœ™Jšœ™Jšœ+™+—Icode˜šΟk ˜ šœ žœ/˜=K˜4—Kšœ žœ ˜Kšœ žœžœ˜Kšžœžœžœ˜Kšœžœžœ˜Jšœžœ ™Jšœžœ ™K˜—KšΟnœžœ˜%šž˜Kšœ žœ˜.K˜Jšœ5™5KšŸ œžœ˜—˜Jšœ@™@KšŸ œžœ˜ šœžœ˜K˜DK˜*K˜—KšŸ œžœ˜(Kšœžœ ˜"K˜KšŸ œž œžœ˜LK˜Kšœ žœ'˜8K˜šœ žœ ˜K˜—K˜Kšœžœžœ˜0Kšœ žœžœ˜'šœžœžœ˜K˜Kšœ žœ žœžœ˜9K˜—Kšœžœžœ˜3šœžœžœ˜$Kšœžœžœ˜˜šžœž˜Kšœ*žœ˜0K˜3Kšžœ˜ —K˜——Kšœžœžœ˜/šœžœžœ˜#šžœž˜$K˜!Kšœ&žœ˜.Kšœžœžœ˜2Kšœžœ˜Kšœžœ˜Kšžœ˜ K˜——KšŸœž œ9žœ˜|KšŸœž œžœ˜3KšŸœž œ˜-KšŸœž œ˜-K˜šŸœž œžœ-˜YKšžœ˜%—Kš Ÿœž œ žœ+žœžœžœ˜~šŸœž œ*žœ˜PKšžœžœ˜—K˜KšŸœž œžœžœ˜JKšŸœž œžœžœ˜L—˜Jšœ6™6šŸœž œžœΟc œ˜WKšžœ žœ˜—Jšœ,™,šŸœž œžœžœ˜/K˜——šžœ˜ K˜—K˜K˜—…— Ί\