namespace AppKit
{
    [Protocol(Name = "NSLayoutManagerDelegate", WrapperType = typeof(NSLayoutManagerDelegateWrapper))]
    [ProtocolMember(IsProperty = false, IsRequired = false, IsStatic = false, Name = "DidInvalidatedLayout", ParameterByRef = new[] { false }, ParameterType = new[] { typeof(NSLayoutManager) }, Selector = "layoutManagerDidInvalidateLayout:")]
    [ProtocolMember(IsProperty = false, IsRequired = false, IsStatic = false, Name = "DidCompleteLayout", ParameterByRef = new[] { false, false, false }, ParameterType = new[] { typeof(NSLayoutManager), typeof(NSTextContainer), typeof(bool) }, Selector = "layoutManager:didCompleteLayoutForTextContainer:atEnd:")]
    [ProtocolMember(IsProperty = false, IsRequired = false, IsStatic = false, Name = "DidChangeGeometry", ParameterByRef = new[] { false, false, false }, ParameterType = new[] { typeof(NSLayoutManager), typeof(NSTextContainer), typeof(CGSize) }, Selector = "layoutManager:textContainer:didChangeGeometryFromSize:")]
    [ProtocolMember(IsProperty = false, IsRequired = false, IsStatic = false, Name = "ShouldUseTemporaryAttributes", ParameterByRef = new[] { false, false, false, false, true }, ParameterType = new[] { typeof(NSLayoutManager), typeof(NSDictionary<NSString, NSObject>), typeof(bool), typeof(UIntPtr), typeof(NSRange) }, ReturnType = typeof(NSDictionary<NSString, NSObject>), Selector = "layoutManager:shouldUseTemporaryAttributes:forDrawingToScreen:atCharacterIndex:effectiveRange:")]
    [ProtocolMember(IsProperty = false, IsRequired = false, IsStatic = false, Name = "ShouldGenerateGlyphs", ParameterByRef = new[] { false, false, false, false, false, false }, ParameterType = new[] { typeof(NSLayoutManager), typeof(IntPtr), typeof(IntPtr), typeof(IntPtr), typeof(NSFont), typeof(NSRange) }, ReturnType = typeof(UIntPtr), Selector = "layoutManager:shouldGenerateGlyphs:properties:characterIndexes:font:forGlyphRange:")]
    [ProtocolMember(IsProperty = false, IsRequired = false, IsStatic = false, Name = "GetLineSpacingAfterGlyph", ParameterByRef = new[] { false, false, false }, ParameterType = new[] { typeof(NSLayoutManager), typeof(UIntPtr), typeof(CGRect) }, ReturnType = typeof(NFloat), Selector = "layoutManager:lineSpacingAfterGlyphAtIndex:withProposedLineFragmentRect:")]
    [ProtocolMember(IsProperty = false, IsRequired = false, IsStatic = false, Name = "GetParagraphSpacingBeforeGlyph", ParameterByRef = new[] { false, false, false }, ParameterType = new[] { typeof(NSLayoutManager), typeof(UIntPtr), typeof(CGRect) }, ReturnType = typeof(NFloat), Selector = "layoutManager:paragraphSpacingBeforeGlyphAtIndex:withProposedLineFragmentRect:")]
    [ProtocolMember(IsProperty = false, IsRequired = false, IsStatic = false, Name = "GetParagraphSpacingAfterGlyph", ParameterByRef = new[] { false, false, false }, ParameterType = new[] { typeof(NSLayoutManager), typeof(UIntPtr), typeof(CGRect) }, ReturnType = typeof(NFloat), Selector = "layoutManager:paragraphSpacingAfterGlyphAtIndex:withProposedLineFragmentRect:")]
    [ProtocolMember(IsProperty = false, IsRequired = false, IsStatic = false, Name = "ShouldUseAction", ParameterByRef = new[] { false, false, false }, ParameterType = new[] { typeof(NSLayoutManager), typeof(NSControlCharacterAction), typeof(UIntPtr) }, ReturnType = typeof(NSControlCharacterAction), Selector = "layoutManager:shouldUseAction:forControlCharacterAtIndex:")]
    [ProtocolMember(IsProperty = false, IsRequired = false, IsStatic = false, Name = "ShouldBreakLineByWordBeforeCharacter", ParameterByRef = new[] { false, false }, ParameterType = new[] { typeof(NSLayoutManager), typeof(UIntPtr) }, ReturnType = typeof(bool), Selector = "layoutManager:shouldBreakLineByWordBeforeCharacterAtIndex:")]
    [ProtocolMember(IsProperty = false, IsRequired = false, IsStatic = false, Name = "ShouldBreakLineByHyphenatingBeforeCharacter", ParameterByRef = new[] { false, false }, ParameterType = new[] { typeof(NSLayoutManager), typeof(UIntPtr) }, ReturnType = typeof(bool), Selector = "layoutManager:shouldBreakLineByHyphenatingBeforeCharacterAtIndex:")]
    [ProtocolMember(IsProperty = false, IsRequired = false, IsStatic = false, Name = "GetBoundingBox", ParameterByRef = new[] { false, false, false, false, false, false }, ParameterType = new[] { typeof(NSLayoutManager), typeof(UIntPtr), typeof(NSTextContainer), typeof(CGRect), typeof(CGPoint), typeof(UIntPtr) }, ReturnType = typeof(CGRect), Selector = "layoutManager:boundingBoxForControlGlyphAtIndex:forTextContainer:proposedLineFragment:glyphPosition:characterIndex:")]
    [ProtocolMember(IsProperty = false, IsRequired = false, IsStatic = false, Name = "ShouldSetLineFragmentRect", ParameterByRef = new[] { false, true, true, true, false, false }, ParameterType = new[] { typeof(NSLayoutManager), typeof(CGRect), typeof(CGRect), typeof(NFloat), typeof(NSTextContainer), typeof(NSRange) }, ReturnType = typeof(bool), Selector = "layoutManager:shouldSetLineFragmentRect:lineFragmentUsedRect:baselineOffset:inTextContainer:forGlyphRange:")]
    [SupportedOSPlatform("maccatalyst")]
    [SupportedOSPlatform("macos")]
    public interface INSLayoutManagerDelegate : INativeObject, IDisposable
}
Assembly Microsoft.macOS , Version=14.0.0.0, PublicKeyToken=84e04ff9cfb79065
Help Documentation
.NET 6.0-macos7.0-macos8.0-macos9.0-macos
Xamarin macOS 0.0
OS Platforms

For the selected framework this API is only supported on the following OS platforms:

  • Mac Catalyst
  • macOS
  • Built-in API
  • Package-provided API

03/28/2024
An error has occurred. This application may no longer respond until reloaded. Reload 🗙