net9.0-ios17.2
namespace UIKit
{
    [Protocol(Name = "NSTextSelectionDataSource", WrapperType = typeof(NSTextSelectionDataSourceWrapper))]
    [ProtocolMember(IsProperty = false, IsRequired = true, IsStatic = false, Name = "EnumerateSubstrings", ParameterBlockProxy = new[] { null, null, typeof(NIDNSTextSelectionDataSourceEnumerateSubstringsDelegate) }, ParameterByRef = new[] { false, false, false }, ParameterType = new[] { typeof(INSTextLocation), typeof(NSStringEnumerationOptions), typeof(NSTextSelectionDataSourceEnumerateSubstringsDelegate) }, Selector = "enumerateSubstringsFromLocation:options:usingBlock:")]
    [ProtocolMember(IsProperty = false, IsRequired = true, IsStatic = false, Name = "GetTextRange", ParameterByRef = new[] { false, false }, ParameterType = new[] { typeof(NSTextSelectionGranularity), typeof(INSTextLocation) }, ReturnType = typeof(NSTextRange), Selector = "textRangeForSelectionGranularity:enclosingLocation:")]
    [ProtocolMember(IsProperty = false, IsRequired = true, IsStatic = false, Name = "GetLocation", ParameterByRef = new[] { false, false }, ParameterType = new[] { typeof(INSTextLocation), typeof(IntPtr) }, ReturnType = typeof(INSTextLocation), Selector = "locationFromLocation:withOffset:")]
    [ProtocolMember(IsProperty = false, IsRequired = true, IsStatic = false, Name = "GetOffsetFromLocation", ParameterByRef = new[] { false, false }, ParameterType = new[] { typeof(INSTextLocation), typeof(INSTextLocation) }, ReturnType = typeof(IntPtr), Selector = "offsetFromLocation:toLocation:")]
    [ProtocolMember(IsProperty = false, IsRequired = true, IsStatic = false, Name = "GetBaseWritingDirection", ParameterByRef = new[] { false }, ParameterType = new[] { typeof(INSTextLocation) }, ReturnType = typeof(NSTextSelectionNavigationWritingDirection), Selector = "baseWritingDirectionAtLocation:")]
    [ProtocolMember(IsProperty = false, IsRequired = true, IsStatic = false, Name = "EnumerateCaretOffsets", ParameterBlockProxy = new[] { null, typeof(NIDNSTextSelectionDataSourceEnumerateCaretOffsetsDelegate) }, ParameterByRef = new[] { false, false }, ParameterType = new[] { typeof(INSTextLocation), typeof(NSTextSelectionDataSourceEnumerateCaretOffsetsDelegate) }, Selector = "enumerateCaretOffsetsInLineFragmentAtLocation:usingBlock:")]
    [ProtocolMember(IsProperty = false, IsRequired = true, IsStatic = false, Name = "GetLineFragmentRange", ParameterByRef = new[] { false, false }, ParameterType = new[] { typeof(CGPoint), typeof(INSTextLocation) }, ReturnType = typeof(NSTextRange), Selector = "lineFragmentRangeForPoint:inContainerAtLocation:")]
    [ProtocolMember(IsProperty = false, IsRequired = false, IsStatic = false, Name = "EnumerateContainerBoundaries", ParameterBlockProxy = new[] { null, null, typeof(NIDNSTextSelectionDataSourceEnumerateContainerBoundariesDelegate) }, ParameterByRef = new[] { false, false, false }, ParameterType = new[] { typeof(INSTextLocation), typeof(bool), typeof(NSTextSelectionDataSourceEnumerateContainerBoundariesDelegate) }, Selector = "enumerateContainerBoundariesFromLocation:reverse:usingBlock:")]
    [ProtocolMember(IsProperty = false, IsRequired = false, IsStatic = false, Name = "GetTextLayoutOrientation", ParameterByRef = new[] { false }, ParameterType = new[] { typeof(INSTextLocation) }, ReturnType = typeof(NSTextSelectionNavigationLayoutOrientation), Selector = "textLayoutOrientationAtLocation:")]
    [ProtocolMember(ArgumentSemantic = ArgumentSemantic.Retain, GetterSelector = "documentRange", IsProperty = true, IsRequired = true, IsStatic = false, Name = "DocumentRange", PropertyType = typeof(NSTextRange), Selector = "documentRange")]
    [SupportedOSPlatform("tvos15.0")]
    [SupportedOSPlatform("ios15.0")]
    [SupportedOSPlatform("maccatalyst15.0")]
    [UnsupportedOSPlatform("macos")]
    public interface INSTextSelectionDataSource : INativeObject, IDisposable
    {
        [BindingImpl(BindingImplOptions.GeneratedCode | BindingImplOptions.Optimizable)]
        [Export("textRangeForSelectionGranularity:enclosingLocation:")]
        [Preserve(Conditional = true)]
        NSTextRange? GetTextRange(NSTextSelectionGranularity selectionGranularity, INSTextLocation! location);
    }
}
.NET 6.07.08.09.0
Information specific to net9.0
Platforms This API is only available when you target a specific platform:
iOS 10.010.110.210.311.011.111.211.311.412.012.112.212.312.413.013.113.213.313.413.513.614.014.114.214.314.414.515.015.215.416.016.116.216.417.017.2
Mac Catalyst 13.113.213.313.413.514.214.314.414.515.015.215.416.116.216.417.017.2
tvOS 10.010.110.211.011.111.211.311.412.012.112.212.312.413.013.213.313.414.014.214.314.414.515.015.215.416.016.116.417.017.2
Information specific to net9.0-ios17.2
Assembly

Microsoft.iOS , Version=17.2.0.0, PublicKeyToken=84e04ff9cfb79065

Referencing

The API is automatically referenced.

Platform Restrictions

This API is only supported on the following platforms:

  • iOS >= 15
  • Mac Catalyst >= 15
  • macOS
  • tvOS >= 15
  • Built-in API
  • Package-provided API

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