home *** CD-ROM | disk | FTP | other *** search
Text File | 1998-04-09 | 3.9 KB | 131 lines | [TEXT/MPS ] |
- {
- File: ATSLayoutTypes.p
-
- Contains: Apple Text Services layout public structures and constants.
-
- Version: Technology: Allegro
- Release: QuickTime 3.0
-
- Copyright: © 1994-1998 by Apple Computer, Inc., all rights reserved.
-
- Bugs?: Please include the the file and version information (from above) with
- the problem description. Developers belonging to one of the Apple
- developer programs can submit bug reports to:
-
- devsupport@apple.com
-
- }
- {$IFC UNDEFINED UsingIncludes}
- {$SETC UsingIncludes := 0}
- {$ENDC}
-
- {$IFC NOT UsingIncludes}
- UNIT ATSLayoutTypes;
- INTERFACE
- {$ENDC}
-
- {$IFC UNDEFINED __ATSLAYOUTTYPES__}
- {$SETC __ATSLAYOUTTYPES__ := 1}
-
- {$I+}
- {$SETC ATSLayoutTypesIncludes := UsingIncludes}
- {$SETC UsingIncludes := 1}
-
- {$IFC UNDEFINED __MACTYPES__}
- {$I MacTypes.p}
- {$ENDC}
- {$IFC UNDEFINED __SFNTTYPES__}
- {$I SFNTTypes.p}
- {$ENDC}
- {$IFC UNDEFINED __SFNTLAYOUTTYPES__}
- {$I SFNTLayoutTypes.p}
- {$ENDC}
-
-
- {$PUSH}
- {$ALIGN MAC68K}
- {$LibExport+}
-
- { ----------------------------------------------------------------------------------------- }
- { CONSTANTS }
- { LineOptions flags }
-
- CONST
- kATSLineNoLayoutOptions = $00000000;
- kATSLineIsDisplayOnly = $00000001;
- kATSLineHasNoHangers = $00000002;
- kATSLineHasNoOpticalAlignment = $00000004;
- kATSLineKeepSpacesInMargin = $00000008;
- kATSLineTwoLevelReordering = $00000010;
- kATSLineLeftEdgeNotMargin = $00000020;
- kATSLineRightEdgeNotMargin = $00000040;
- kATSLineDoReordering = $00000080;
- kATSLineNoJustPostComp = $00000100;
-
- { Run controls flags (in the style rec) }
- kATSRunNoLigatureSplits = $80000000;
- kATSRunNoCaretAngle = $40000000;
- kATSRunImposeWidth = $20000000;
- kATSRunNoCrossKerning = $10000000;
- kATSRunNoOpticalAlignment = $08000000;
- kATSRunForceHanging = $04000000;
- kATSRunNoSpecialJustification = $02000000;
- kATSRunIsVertical = $01000000;
- kATSRunDirectionOverrideMask = $00000003;
-
- { Direction overrides }
- kATSNoDirectionOverride = 0;
- kATSImposeLeftToRight = 1;
- kATSImposeRightToLeft = 2;
-
- { Miscellaneous constants }
- kATSNoTracking = $80000000; { negativeInfinity }
- kATSDeletedGlyphcode = $FFFF;
- kATSSelectToEnd = $FFFFFFFF;
- kATSOffsetToNoData = $FFFFFFFF;
-
- { --------------------------------------------------------------------------- }
- { TYPES }
- { --------------------------------------------------------------------------- }
-
- TYPE
- ATSLineLayoutOptions = UInt32;
- {
- The JustWidthDeltaEntryOverride structure specifies values for the grow and shrink case during
- justification, both on the left and on the right. It also contains flags. This particular structure
- is used for passing justification overrides to LLC.
- }
- ATSJustWidthDeltaEntryOverridePtr = ^ATSJustWidthDeltaEntryOverride;
- ATSJustWidthDeltaEntryOverride = RECORD
- beforeGrowLimit: Fixed; { ems AW can grow by at most on LT }
- beforeShrinkLimit: Fixed; { ems AW can shrink by at most on LT }
- afterGrowLimit: Fixed; { ems AW can grow by at most on RB }
- afterShrinkLimit: Fixed; { ems AW can shrink by at most on RB }
- growFlags: JustificationFlags; { flags controlling grow case }
- shrinkFlags: JustificationFlags; { flags controlling shrink case }
- END;
-
- { The JustPriorityOverrides type is an array of 4 width delta records, one per priority level override. }
- ATSJustPriorityWidthDeltaOverrides = ARRAY [0..3] OF ATSJustWidthDeltaEntryOverride;
- {
- The JustGlyphWidthDeltaOverride structure specifies justification override information for a
- single specified glyph.
- }
- ATSJustGlyphWidthDeltaOverridePtr = ^ATSJustGlyphWidthDeltaOverride;
- ATSJustGlyphWidthDeltaOverride = RECORD
- glyph: UInt16;
- override: ATSJustWidthDeltaEntryOverride;
- END;
-
- { --------------------------------------------------------------------------- }
- {$ALIGN RESET}
- {$POP}
-
- {$SETC UsingIncludes := ATSLayoutTypesIncludes}
-
- {$ENDC} {__ATSLAYOUTTYPES__}
-
- {$IFC NOT UsingIncludes}
- END.
- {$ENDC}
-