Repository URL to install this package:
|
Version:
3.0.0 ▾
|
{ Parsed from Appkit.framework NSLayoutManager.h }
{$ifdef TYPES}
{$ifndef NSLAYOUTMANAGER_PAS_T}
{$define NSLAYOUTMANAGER_PAS_T}
{ Constants }
const
NSGlyphAttributeSoft = 0;
NSGlyphAttributeElastic = 1;
NSGlyphAttributeBidiLevel = 2;
NSGlyphAttributeInscribe = 5;
const
NSGlyphInscribeBase = 0;
NSGlyphInscribeBelow = 1;
NSGlyphInscribeAbove = 2;
NSGlyphInscribeOverstrike = 3;
NSGlyphInscribeOverBelow = 4;
const
NSTypesetterLatestBehavior = -1;
NSTypesetterOriginalBehavior = 0;
NSTypesetterBehavior_10_2_WithCompatibility = 1;
NSTypesetterBehavior_10_2 = 2;
NSTypesetterBehavior_10_3 = 3;
NSTypesetterBehavior_10_4 = 4;
{ Types }
type
NSGlyphInscription = NSUInteger;
NSGlyphInscriptionPtr = ^NSGlyphInscription;
NSTypesetterBehavior = NSInteger;
NSTypesetterBehaviorPtr = ^NSTypesetterBehavior;
{$endif}
{$endif}
{$ifdef RECORDS}
{$ifndef NSLAYOUTMANAGER_PAS_R}
{$define NSLAYOUTMANAGER_PAS_R}
{$endif}
{$endif}
{$ifdef FUNCTIONS}
{$ifndef NSLAYOUTMANAGER_PAS_F}
{$define NSLAYOUTMANAGER_PAS_F}
{$endif}
{$endif}
{$ifdef EXTERNAL_SYMBOLS}
{$ifndef NSLAYOUTMANAGER_PAS_S}
{$define NSLAYOUTMANAGER_PAS_S}
{$endif}
{$endif}
{$ifdef FORWARD}
NSLayoutManagerDelegateProtocol = objcprotocol;
NSLayoutManager = objcclass;
NSLayoutManagerPointer = ^NSLayoutManager;
NSLayoutManagerPtr = NSLayoutManagerPointer;
{$endif}
{$ifdef CLASSES}
{$ifndef NSLAYOUTMANAGER_PAS_C}
{$define NSLAYOUTMANAGER_PAS_C}
{ NSLayoutManager }
NSLayoutManager = objcclass external (NSObject, NSCodingProtocol)
private
_textStorage: NSTextStorage;
_glyphGenerator: NSGlyphGenerator;
_typesetter: NSTypesetter;
_textContainers: NSMutableArray;
_containerUsedRects: NSStorage;
_glyphs: NSStorage;
_containerRuns: NSRunStorage;
_fragmentRuns: NSRunStorage;
_glyphLocations: NSRunStorage;
_glyphRotationRuns: NSRunStorage;
_extraLineFragmentRect: NSRect;
_extraLineFragmentUsedRect: NSRect;
_extraLineFragmentContainer: NSTextContainer;
_glyphHoles: NSSortedArray;
_layoutHoles: NSSortedArray;
__lmFlags: record
case byte of
0: (_anonbitfield_NSLayoutManager0: cuint);
1: (data: bitpacked record
containersAreFull: 0..1;
glyphsMightDrawOutsideLines: 0..1;
_backgroundLayoutEnabled: 0..1;
resizingInProgress: 0..1;
allowScreenFonts: 0..1;
cachedRectArrayInUse: 0..1;
displayInvalidationInProgress: 0..1;
insertionPointNeedsUpdate: 0..1;
layoutManagerInDirtyList: 0..1;
usingGlyphCache: 0..1;
showInvisibleCharacters: 0..1;
showControlCharacters: 0..1;
delegateRespondsToDidInvalidate: 0..1;
delegateRespondsToDidComplete: 0..1;
glyphFormat: 0..((1 shl 2)-1);
textStorageRespondsToIsEditing: 0..1;
notifyEditedInProgress: 0..1;
containersChanged: 0..1;
isGeneratingGlyphs: 0..1;
hasNonGeneratedGlyphData: 0..1;
loggedBGLayoutException: 0..1;
isLayoutRequestedFromSubthread: 0..1;
_defaultAttachmentScaling: 0..((1 shl 2)-1);
isInUILayoutMode: 0..1;
seenRightToLeft: 0..1;
ignoresViewTransformations: 0..1;
needToFlushGlyph: 0..1;
flipsIfNeeded: 0..1;
allowNonContig: 0..1;
useNonContig: 0..1;
end;
);
end;
_delegate: id;
_textViewResizeDisableStack: cushort;
_displayInvalidationDisableStack: cushort;
_deferredDisplayCharRange: NSRange;
_firstTextView: NSTextView;
_cachedRectArray: NSRectPtr; {garbage collector: __strong }
_cachedRectArrayCapacity: NSUInteger;
_glyphBuffer: PChar; {garbage collector: __strong }
_glyphBufferSize: NSUInteger;
_cachedLocationNominalGlyphRange: NSRange;
_cachedLocationGlyphIndex: NSUInteger;
_cachedLocation: NSPoint;
_cachedFontCharRange: NSRange;
_cachedFont: NSFont;
_firstUnlaidGlyphIndex: NSUInteger;
_firstUnlaidCharIndex: NSUInteger;
_rulerAccView: NSBox;
_rulerAccViewAlignmentButtons: id;
_rulerAccViewSpacing: id;
_rulerAccViewLeftTabWell: NSTabWell;
_rulerAccViewRightTabWell: NSTabWell;
_rulerAccViewCenterTabWell: NSTabWell;
_rulerAccViewDecimalTabWell: NSTabWell;
_rulerAccViewStyles: id;
_rulerAccViewLists: id;
_newlyFilledGlyphRange: NSRange;
_extraData: id;
public
function init: id; message 'init';
function textStorage: NSTextStorage; message 'textStorage';
procedure setTextStorage(textStorage_: NSTextStorage); message 'setTextStorage:';
function attributedString: NSAttributedString; message 'attributedString';
procedure replaceTextStorage(newTextStorage: NSTextStorage); message 'replaceTextStorage:';
function glyphGenerator: NSGlyphGenerator; message 'glyphGenerator';
procedure setGlyphGenerator(glyphGenerator_: NSGlyphGenerator); message 'setGlyphGenerator:';
function typesetter: NSTypesetter; message 'typesetter';
procedure setTypesetter(typesetter_: NSTypesetter); message 'setTypesetter:';
function delegate: NSLayoutManagerDelegateProtocol; message 'delegate';
procedure setDelegate(delegate_: NSLayoutManagerDelegateProtocol); message 'setDelegate:';
function textContainers: NSArray; message 'textContainers';
procedure addTextContainer(container: NSTextContainer); message 'addTextContainer:';
procedure insertTextContainer_atIndex(container: NSTextContainer; index: NSUInteger); message 'insertTextContainer:atIndex:';
procedure removeTextContainerAtIndex(index: NSUInteger); message 'removeTextContainerAtIndex:';
procedure textContainerChangedGeometry(container: NSTextContainer); message 'textContainerChangedGeometry:';
procedure textContainerChangedTextView(container: NSTextContainer); message 'textContainerChangedTextView:';
procedure setBackgroundLayoutEnabled(flag: Boolean); message 'setBackgroundLayoutEnabled:';
function backgroundLayoutEnabled: Boolean; message 'backgroundLayoutEnabled';
procedure setUsesScreenFonts(flag: Boolean); message 'setUsesScreenFonts:';
function usesScreenFonts: Boolean; message 'usesScreenFonts';
procedure setShowsInvisibleCharacters(flag: Boolean); message 'setShowsInvisibleCharacters:';
function showsInvisibleCharacters: Boolean; message 'showsInvisibleCharacters';
procedure setShowsControlCharacters(flag: Boolean); message 'setShowsControlCharacters:';
function showsControlCharacters: Boolean; message 'showsControlCharacters';
procedure setHyphenationFactor(factor: single); message 'setHyphenationFactor:';
function hyphenationFactor: single; message 'hyphenationFactor';
procedure setDefaultAttachmentScaling(scaling: NSImageScaling); message 'setDefaultAttachmentScaling:';
function defaultAttachmentScaling: NSImageScaling; message 'defaultAttachmentScaling';
procedure setTypesetterBehavior(theBehavior: NSTypesetterBehavior); message 'setTypesetterBehavior:';
function typesetterBehavior: NSTypesetterBehavior; message 'typesetterBehavior';
function layoutOptions: NSUInteger; message 'layoutOptions';
procedure setAllowsNonContiguousLayout(flag: Boolean); message 'setAllowsNonContiguousLayout:';
function allowsNonContiguousLayout: Boolean; message 'allowsNonContiguousLayout';
function hasNonContiguousLayout: Boolean; message 'hasNonContiguousLayout';
procedure invalidateGlyphsForCharacterRange_changeInLength_actualCharacterRange(charRange: NSRange; delta: NSInteger; actualCharRange: NSRangePointer); message 'invalidateGlyphsForCharacterRange:changeInLength:actualCharacterRange:';
procedure invalidateLayoutForCharacterRange_actualCharacterRange(charRange: NSRange; actualCharRange: NSRangePointer); message 'invalidateLayoutForCharacterRange:actualCharacterRange:';
procedure invalidateLayoutForCharacterRange_isSoft_actualCharacterRange(charRange: NSRange; flag: Boolean; actualCharRange: NSRangePointer); message 'invalidateLayoutForCharacterRange:isSoft:actualCharacterRange:';
procedure invalidateDisplayForCharacterRange(charRange: NSRange); message 'invalidateDisplayForCharacterRange:';
procedure invalidateDisplayForGlyphRange(glyphRange: NSRange); message 'invalidateDisplayForGlyphRange:';
procedure textStorage_edited_range_changeInLength_invalidatedRange(str: NSTextStorage; editedMask: NSUInteger; newCharRange: NSRange; delta: NSInteger; invalidatedCharRange: NSRange); message 'textStorage:edited:range:changeInLength:invalidatedRange:';
procedure ensureGlyphsForCharacterRange(charRange: NSRange); message 'ensureGlyphsForCharacterRange:';
procedure ensureGlyphsForGlyphRange(glyphRange: NSRange); message 'ensureGlyphsForGlyphRange:';
procedure ensureLayoutForCharacterRange(charRange: NSRange); message 'ensureLayoutForCharacterRange:';
procedure ensureLayoutForGlyphRange(glyphRange: NSRange); message 'ensureLayoutForGlyphRange:';
procedure ensureLayoutForTextContainer(container: NSTextContainer); message 'ensureLayoutForTextContainer:';
procedure ensureLayoutForBoundingRect_inTextContainer(bounds: NSRect; container: NSTextContainer); message 'ensureLayoutForBoundingRect:inTextContainer:';
procedure insertGlyphs_length_forStartingGlyphAtIndex_characterIndex(glyphs: NSGlyphPtr; length: NSUInteger; glyphIndex: NSUInteger; charIndex: NSUInteger); message 'insertGlyphs:length:forStartingGlyphAtIndex:characterIndex:';
procedure insertGlyph_atGlyphIndex_characterIndex(glyph: NSGlyph; glyphIndex: NSUInteger; charIndex: NSUInteger); message 'insertGlyph:atGlyphIndex:characterIndex:';
procedure replaceGlyphAtIndex_withGlyph(glyphIndex: NSUInteger; newGlyph: NSGlyph); message 'replaceGlyphAtIndex:withGlyph:';
procedure deleteGlyphsInRange(glyphRange: NSRange); message 'deleteGlyphsInRange:';
procedure setCharacterIndex_forGlyphAtIndex(charIndex: NSUInteger; glyphIndex: NSUInteger); message 'setCharacterIndex:forGlyphAtIndex:';
procedure setIntAttribute_value_forGlyphAtIndex(attributeTag: NSInteger; val: NSInteger; glyphIndex: NSUInteger); message 'setIntAttribute:value:forGlyphAtIndex:';
procedure invalidateGlyphsOnLayoutInvalidationForGlyphRange(glyphRange: NSRange); message 'invalidateGlyphsOnLayoutInvalidationForGlyphRange:';
function numberOfGlyphs: NSUInteger; message 'numberOfGlyphs';
function glyphAtIndex_isValidIndex(glyphIndex: NSUInteger; isValidIndex: pboolean): NSGlyph; message 'glyphAtIndex:isValidIndex:';
function glyphAtIndex(glyphIndex: NSUInteger): NSGlyph; message 'glyphAtIndex:';
function isValidGlyphIndex(glyphIndex: NSUInteger): Boolean; message 'isValidGlyphIndex:';
function characterIndexForGlyphAtIndex(glyphIndex: NSUInteger): NSUInteger; message 'characterIndexForGlyphAtIndex:';
function glyphIndexForCharacterAtIndex(charIndex: NSUInteger): NSUInteger; message 'glyphIndexForCharacterAtIndex:';
function intAttribute_forGlyphAtIndex(attributeTag: NSInteger; glyphIndex: NSUInteger): NSInteger; message 'intAttribute:forGlyphAtIndex:';
function getGlyphsInRange_glyphs_characterIndexes_glyphInscriptions_elasticBits(glyphRange: NSRange; glyphBuffer: NSGlyphPtr; charIndexBuffer: NSUIntegerPtr; inscribeBuffer: NSGlyphInscriptionPtr; elasticBuffer: pboolean): NSUInteger; message 'getGlyphsInRange:glyphs:characterIndexes:glyphInscriptions:elasticBits:';
function getGlyphsInRange_glyphs_characterIndexes_glyphInscriptions_elasticBits_bidiLevels(glyphRange: NSRange; glyphBuffer: NSGlyphPtr; charIndexBuffer: NSUIntegerPtr; inscribeBuffer: NSGlyphInscriptionPtr; elasticBuffer: pboolean; bidiLevelBuffer: PByte): NSUInteger; message 'getGlyphsInRange:glyphs:characterIndexes:glyphInscriptions:elasticBits:bidiLevels:';
function getGlyphs_range(glyphArray: NSGlyphPtr; glyphRange: NSRange): NSUInteger; message 'getGlyphs:range:';
procedure setTextContainer_forGlyphRange(container: NSTextContainer; glyphRange: NSRange); message 'setTextContainer:forGlyphRange:';
procedure setLineFragmentRect_forGlyphRange_usedRect(fragmentRect: NSRect; glyphRange: NSRange; usedRect: NSRect); message 'setLineFragmentRect:forGlyphRange:usedRect:';
procedure setExtraLineFragmentRect_usedRect_textContainer(fragmentRect: NSRect; usedRect: NSRect; container: NSTextContainer); message 'setExtraLineFragmentRect:usedRect:textContainer:';
procedure setLocation_forStartOfGlyphRange(location: NSPoint; glyphRange: NSRange); message 'setLocation:forStartOfGlyphRange:';
procedure setLocations_startingGlyphIndexes_count_forGlyphRange(locations: NSPointArray; glyphIndexes: NSUIntegerPtr; count: NSUInteger; glyphRange: NSRange); message 'setLocations:startingGlyphIndexes:count:forGlyphRange:';
procedure setNotShownAttribute_forGlyphAtIndex(flag: Boolean; glyphIndex: NSUInteger); message 'setNotShownAttribute:forGlyphAtIndex:';
procedure setDrawsOutsideLineFragment_forGlyphAtIndex(flag: Boolean; glyphIndex: NSUInteger); message 'setDrawsOutsideLineFragment:forGlyphAtIndex:';
procedure setAttachmentSize_forGlyphRange(attachmentSize: NSSize; glyphRange: NSRange); message 'setAttachmentSize:forGlyphRange:';
procedure getFirstUnlaidCharacterIndex_glyphIndex(charIndex: NSUIntegerPtr; glyphIndex: NSUIntegerPtr); message 'getFirstUnlaidCharacterIndex:glyphIndex:';
function firstUnlaidCharacterIndex: NSUInteger; message 'firstUnlaidCharacterIndex';
function firstUnlaidGlyphIndex: NSUInteger; message 'firstUnlaidGlyphIndex';
function textContainerForGlyphAtIndex_effectiveRange(glyphIndex: NSUInteger; effectiveGlyphRange: NSRangePointer): NSTextContainer; message 'textContainerForGlyphAtIndex:effectiveRange:';
function usedRectForTextContainer(container: NSTextContainer): NSRect; message 'usedRectForTextContainer:';
function lineFragmentRectForGlyphAtIndex_effectiveRange(glyphIndex: NSUInteger; effectiveGlyphRange: NSRangePointer): NSRect; message 'lineFragmentRectForGlyphAtIndex:effectiveRange:';
function lineFragmentUsedRectForGlyphAtIndex_effectiveRange(glyphIndex: NSUInteger; effectiveGlyphRange: NSRangePointer): NSRect; message 'lineFragmentUsedRectForGlyphAtIndex:effectiveRange:';
function lineFragmentRectForGlyphAtIndex_effectiveRange_withoutAdditionalLayout(glyphIndex: NSUInteger; effectiveGlyphRange: NSRangePointer; flag: Boolean): NSRect; message 'lineFragmentRectForGlyphAtIndex:effectiveRange:withoutAdditionalLayout:';
function lineFragmentUsedRectForGlyphAtIndex_effectiveRange_withoutAdditionalLayout(glyphIndex: NSUInteger; effectiveGlyphRange: NSRangePointer; flag: Boolean): NSRect; message 'lineFragmentUsedRectForGlyphAtIndex:effectiveRange:withoutAdditionalLayout:';
function textContainerForGlyphAtIndex_effectiveRange_withoutAdditionalLayout(glyphIndex: NSUInteger; effectiveGlyphRange: NSRangePointer; flag: Boolean): NSTextContainer; message 'textContainerForGlyphAtIndex:effectiveRange:withoutAdditionalLayout:';
function extraLineFragmentRect: NSRect; message 'extraLineFragmentRect';
function extraLineFragmentUsedRect: NSRect; message 'extraLineFragmentUsedRect';
function extraLineFragmentTextContainer: NSTextContainer; message 'extraLineFragmentTextContainer';
function locationForGlyphAtIndex(glyphIndex: NSUInteger): NSPoint; message 'locationForGlyphAtIndex:';
function notShownAttributeForGlyphAtIndex(glyphIndex: NSUInteger): Boolean; message 'notShownAttributeForGlyphAtIndex:';
function drawsOutsideLineFragmentForGlyphAtIndex(glyphIndex: NSUInteger): Boolean; message 'drawsOutsideLineFragmentForGlyphAtIndex:';
function attachmentSizeForGlyphAtIndex(glyphIndex: NSUInteger): NSSize; message 'attachmentSizeForGlyphAtIndex:';
procedure setLayoutRect_forTextBlock_glyphRange(rect: NSRect; block: NSTextBlock; glyphRange: NSRange); message 'setLayoutRect:forTextBlock:glyphRange:';
procedure setBoundsRect_forTextBlock_glyphRange(rect: NSRect; block: NSTextBlock; glyphRange: NSRange); message 'setBoundsRect:forTextBlock:glyphRange:';
function layoutRectForTextBlock_glyphRange(block: NSTextBlock; glyphRange: NSRange): NSRect; message 'layoutRectForTextBlock:glyphRange:';
function boundsRectForTextBlock_glyphRange(block: NSTextBlock; glyphRange: NSRange): NSRect; message 'boundsRectForTextBlock:glyphRange:';
function layoutRectForTextBlock_atIndex_effectiveRange(block: NSTextBlock; glyphIndex: NSUInteger; effectiveGlyphRange: NSRangePointer): NSRect; message 'layoutRectForTextBlock:atIndex:effectiveRange:';
function boundsRectForTextBlock_atIndex_effectiveRange(block: NSTextBlock; glyphIndex: NSUInteger; effectiveGlyphRange: NSRangePointer): NSRect; message 'boundsRectForTextBlock:atIndex:effectiveRange:';
function glyphRangeForCharacterRange_actualCharacterRange(charRange: NSRange; actualCharRange: NSRangePointer): NSRange; message 'glyphRangeForCharacterRange:actualCharacterRange:';
function characterRangeForGlyphRange_actualGlyphRange(glyphRange: NSRange; actualGlyphRange: NSRangePointer): NSRange; message 'characterRangeForGlyphRange:actualGlyphRange:';
function glyphRangeForTextContainer(container: NSTextContainer): NSRange; message 'glyphRangeForTextContainer:';
function rangeOfNominallySpacedGlyphsContainingIndex(glyphIndex: NSUInteger): NSRange; message 'rangeOfNominallySpacedGlyphsContainingIndex:';
function rectArrayForCharacterRange_withinSelectedCharacterRange_inTextContainer_rectCount(charRange: NSRange; selCharRange: NSRange; container: NSTextContainer; rectCount: NSUIntegerPtr): NSRectArray; message 'rectArrayForCharacterRange:withinSelectedCharacterRange:inTextContainer:rectCount:';
function rectArrayForGlyphRange_withinSelectedGlyphRange_inTextContainer_rectCount(glyphRange: NSRange; selGlyphRange: NSRange; container: NSTextContainer; rectCount: NSUIntegerPtr): NSRectArray; message 'rectArrayForGlyphRange:withinSelectedGlyphRange:inTextContainer:rectCount:';
function boundingRectForGlyphRange_inTextContainer(glyphRange: NSRange; container: NSTextContainer): NSRect; message 'boundingRectForGlyphRange:inTextContainer:';
function glyphRangeForBoundingRect_inTextContainer(bounds: NSRect; container: NSTextContainer): NSRange; message 'glyphRangeForBoundingRect:inTextContainer:';
function glyphRangeForBoundingRectWithoutAdditionalLayout_inTextContainer(bounds: NSRect; container: NSTextContainer): NSRange; message 'glyphRangeForBoundingRectWithoutAdditionalLayout:inTextContainer:';
function glyphIndexForPoint_inTextContainer_fractionOfDistanceThroughGlyph(point: NSPoint; container: NSTextContainer; partialFraction: CGFloatPtr): NSUInteger; message 'glyphIndexForPoint:inTextContainer:fractionOfDistanceThroughGlyph:';
function glyphIndexForPoint_inTextContainer(point: NSPoint; container: NSTextContainer): NSUInteger; message 'glyphIndexForPoint:inTextContainer:';
function fractionOfDistanceThroughGlyphForPoint_inTextContainer(point: NSPoint; container: NSTextContainer): CGFloat; message 'fractionOfDistanceThroughGlyphForPoint:inTextContainer:';
function characterIndexForPoint_inTextContainer_fractionOfDistanceBetweenInsertionPoints(point: NSPoint; container: NSTextContainer; partialFraction: CGFloatPtr): NSUInteger; message 'characterIndexForPoint:inTextContainer:fractionOfDistanceBetweenInsertionPoints:';
function getLineFragmentInsertionPointsForCharacterAtIndex_alternatePositions_inDisplayOrder_positions_characterIndexes(charIndex: NSUInteger; aFlag: Boolean; dFlag: Boolean; positions: CGFloatPtr; charIndexes: NSUIntegerPtr): NSUInteger; message 'getLineFragmentInsertionPointsForCharacterAtIndex:alternatePositions:inDisplayOrder:positions:characterIndexes:';
function temporaryAttributesAtCharacterIndex_effectiveRange(charIndex: NSUInteger; effectiveCharRange: NSRangePointer): NSDictionary; message 'temporaryAttributesAtCharacterIndex:effectiveRange:';
procedure setTemporaryAttributes_forCharacterRange(attrs: NSDictionary; charRange: NSRange); message 'setTemporaryAttributes:forCharacterRange:';
procedure addTemporaryAttributes_forCharacterRange(attrs: NSDictionary; charRange: NSRange); message 'addTemporaryAttributes:forCharacterRange:';
procedure removeTemporaryAttribute_forCharacterRange(attrName: NSString; charRange: NSRange); message 'removeTemporaryAttribute:forCharacterRange:';
function temporaryAttribute_atCharacterIndex_effectiveRange(attrName: NSString; location: NSUInteger; range: NSRangePointer): id; message 'temporaryAttribute:atCharacterIndex:effectiveRange:';
function temporaryAttribute_atCharacterIndex_longestEffectiveRange_inRange(attrName: NSString; location: NSUInteger; range: NSRangePointer; rangeLimit: NSRange): id; message 'temporaryAttribute:atCharacterIndex:longestEffectiveRange:inRange:';
function temporaryAttributesAtCharacterIndex_longestEffectiveRange_inRange(location: NSUInteger; range: NSRangePointer; rangeLimit: NSRange): NSDictionary; message 'temporaryAttributesAtCharacterIndex:longestEffectiveRange:inRange:';
procedure addTemporaryAttribute_value_forCharacterRange(attrName: NSString; value: id; charRange: NSRange); message 'addTemporaryAttribute:value:forCharacterRange:';
function substituteFontForFont(originalFont: NSFont): NSFont; message 'substituteFontForFont:';
function defaultLineHeightForFont(theFont: NSFont): CGFloat; message 'defaultLineHeightForFont:';
function defaultBaselineOffsetForFont(theFont: NSFont): CGFloat; message 'defaultBaselineOffsetForFont:';
function usesFontLeading: Boolean; message 'usesFontLeading';
procedure setUsesFontLeading(flag: Boolean); message 'setUsesFontLeading:';
{ Adopted Protocols }
procedure encodeWithCoder(aCoder: NSCoder);
function initWithCoder(aDecoder: NSCoder): id;
end;
{ NSTextViewSupportCategory }
NSTextViewSupportCategory = objccategory external (NSLayoutManager)
function rulerMarkersForTextView_paragraphStyle_ruler(view: NSTextView; style: NSParagraphStyle; ruler: NSRulerView): NSArray; message 'rulerMarkersForTextView:paragraphStyle:ruler:';
function rulerAccessoryViewForTextView_paragraphStyle_ruler_enabled(view: NSTextView; style: NSParagraphStyle; ruler: NSRulerView; isEnabled: Boolean): NSView; message 'rulerAccessoryViewForTextView:paragraphStyle:ruler:enabled:';
function layoutManagerOwnsFirstResponderInWindow(window: NSWindow): Boolean; message 'layoutManagerOwnsFirstResponderInWindow:';
function firstTextView: NSTextView; message 'firstTextView';
function textViewForBeginningOfSelection: NSTextView; message 'textViewForBeginningOfSelection';
procedure drawBackgroundForGlyphRange_atPoint(glyphsToShow: NSRange; origin: NSPoint); message 'drawBackgroundForGlyphRange:atPoint:';
procedure drawGlyphsForGlyphRange_atPoint(glyphsToShow: NSRange; origin: NSPoint); message 'drawGlyphsForGlyphRange:atPoint:';
procedure showPackedGlyphs_length_glyphRange_atPoint_font_color_printingAdjustment(glyphs: PChar; glyphLen: NSUInteger; glyphRange: NSRange; point: NSPoint; font: NSFont; color: NSColor; printingAdjustment: NSSize); message 'showPackedGlyphs:length:glyphRange:atPoint:font:color:printingAdjustment:';
procedure showAttachmentCell_inRect_characterIndex(cell: NSCell; rect: NSRect; attachmentIndex: NSUInteger); message 'showAttachmentCell:inRect:characterIndex:';
procedure fillBackgroundRectArray_count_forCharacterRange_color(rectArray: NSRectArray; rectCount: NSUInteger; charRange: NSRange; color: NSColor); message 'fillBackgroundRectArray:count:forCharacterRange:color:';
procedure drawUnderlineForGlyphRange_underlineType_baselineOffset_lineFragmentRect_lineFragmentGlyphRange_containerOrigin(glyphRange: NSRange; underlineVal: NSInteger; baselineOffset: CGFloat; lineRect: NSRect; lineGlyphRange: NSRange; containerOrigin: NSPoint); message 'drawUnderlineForGlyphRange:underlineType:baselineOffset:lineFragmentRect:lineFragmentGlyphRange:containerOrigin:';
procedure underlineGlyphRange_underlineType_lineFragmentRect_lineFragmentGlyphRange_containerOrigin(glyphRange: NSRange; underlineVal: NSInteger; lineRect: NSRect; lineGlyphRange: NSRange; containerOrigin: NSPoint); message 'underlineGlyphRange:underlineType:lineFragmentRect:lineFragmentGlyphRange:containerOrigin:';
procedure drawStrikethroughForGlyphRange_strikethroughType_baselineOffset_lineFragmentRect_lineFragmentGlyphRange_containerOrigin(glyphRange: NSRange; strikethroughVal: NSInteger; baselineOffset: CGFloat; lineRect: NSRect; lineGlyphRange: NSRange; containerOrigin: NSPoint); message 'drawStrikethroughForGlyphRange:strikethroughType:baselineOffset:lineFragmentRect:lineFragmentGlyphRange:containerOrigin:';
procedure strikethroughGlyphRange_strikethroughType_lineFragmentRect_lineFragmentGlyphRange_containerOrigin(glyphRange: NSRange; strikethroughVal: NSInteger; lineRect: NSRect; lineGlyphRange: NSRange; containerOrigin: NSPoint); message 'strikethroughGlyphRange:strikethroughType:lineFragmentRect:lineFragmentGlyphRange:containerOrigin:';
end;
{$endif}
{$endif}
{$ifdef PROTOCOLS}
{$ifndef NSLAYOUTMANAGER_PAS_P}
{$define NSLAYOUTMANAGER_PAS_P}
{ NSLayoutManagerDelegate Protocol }
NSLayoutManagerDelegateProtocol = objcprotocol external name 'NSLayoutManagerDelegate'
optional
procedure layoutManagerDidInvalidateLayout(sender: NSLayoutManager); message 'layoutManagerDidInvalidateLayout:';
procedure layoutManager_didCompleteLayoutForTextContainer_atEnd(layoutManager: NSLayoutManager; textContainer: NSTextContainer; layoutFinishedFlag: Boolean); message 'layoutManager:didCompleteLayoutForTextContainer:atEnd:';
function layoutManager_shouldUseTemporaryAttributes_forDrawingToScreen_atCharacterIndex_effectiveRange(layoutManager: NSLayoutManager; attrs: NSDictionary; toScreen: Boolean; charIndex: NSUInteger; effectiveCharRange: NSRangePointer): NSDictionary; message 'layoutManager:shouldUseTemporaryAttributes:forDrawingToScreen:atCharacterIndex:effectiveRange:';
end;
{$endif}
{$endif}