CTFrame

Struct CTFrame 

Source
#[repr(C)]
pub struct CTFrame { /* private fields */ }
Available on crate feature CTFrame only.
Expand description

Implementations§

Source§

impl CTFrame

Source

pub unsafe fn string_range(self: &CTFrame) -> CFRange

Returns the range of characters that were originally requested to fill the frame.

Parameter frame: The frame that you want to get the character range from.

Returns: This function will return a CFRange containing the backing store range of characters that were originally requested to fill the frame. If the function call is not successful, then an empty range will be returned.

Source

pub unsafe fn visible_string_range(self: &CTFrame) -> CFRange

Returns the range of characters that actually fit in the frame.

This can be used to chain frames, as it returns the range of characters that can be seen in the frame. The next frame would start where this frame ends.

Parameter frame: The frame that you want to get the visible character range from.

Returns: This function will return a CFRange containing the backing store range of characters that fit into the frame. If the function call is not successful, or if no characters fit in the frame, then an empty range will be returned.

Source

pub unsafe fn path(self: &CTFrame) -> CFRetained<CGPath>

Available on crate feature objc2-core-graphics only.

Returns the path used to create the frame.

Parameter frame: The frame that you want to obtain the path from.

Source

pub unsafe fn frame_attributes( self: &CTFrame, ) -> Option<CFRetained<CFDictionary>>

Returns the frame attributes used to create the frame.

It is possible to create a frame with an attributes dictionary in order to control various aspects of the framing process. These attributes are different from the ones that are used to create an attributed string.

Parameter frame: The frame that you want to obtain the frame attributes from.

Returns: This function will return a CFDictionary containing the frame attributes that were used to create the frame. If the frame was created without any frame attributes, this function will return NULL.

Source

pub unsafe fn lines(self: &CTFrame) -> CFRetained<CFArray>

Returns an array of lines that make up the frame.

This function will return an array of CTLine objects that are stored in the frame. These line objects can be accessed and manipulated in any way that normal line objects can be. It is possible that an empty frame exists. That is, a frame in which no lines exist. In this case, the returned array will have 0 entries.

Parameter frame: The frame that you want to obtain the line array from.

Returns: This function will return a CFArray object containing the CTLine objects that make up the frame.

Source

pub unsafe fn line_origins( self: &CTFrame, range: CFRange, origins: NonNull<CGPoint>, )

Copies a range of line origins for a frame.

This function will copy a range of CGPoint structures. Each CGPoint is the origin of the corresponding line in the array of lines returned by CTFrameGetLines, relative to the origin of the frame’s path. The maximum number of line origins returned by this function is the count of the array of lines.

Parameter frame: The frame that you want to obtain the line origin array from.

Parameter range: The range of line origins you wish to copy. If the length of the range is set to 0, then the copy operation will continue from the range’s start index to the last line origin.

Parameter origins: The buffer to which the origins will be copied. The buffer must have at least as many elements as specified by range’s length. When using the origins to calculate measurements for a frame’s contents, remember that line origins do not always correspond to line metrics; paragraph style settings can affect line origins, for one. The overall typographic bounds of a frame may generally be calculated as the difference between the top of the frame and the descent of the last line. This will obviously exclude any spacing following the last line, but such spacing has no effect on framesetting in the first place.

Source

pub unsafe fn draw(self: &CTFrame, context: &CGContext)

Available on crate feature objc2-core-graphics only.

Draws an entire frame to a context.

This function will draw an entire frame to the context. Note that this call may leave the context in any state and does not flush it after the draw operation.

Parameter frame: The frame that you want to draw.

Parameter context: The context to draw the frame to.

If both the frame and the context are valid, the frame will be drawn in the context.

Methods from Deref<Target = CFType>§

Source

pub fn downcast_ref<T>(&self) -> Option<&T>
where T: ConcreteType,

Attempt to downcast the type to that of type T.

This is the reference-variant. Use CFRetained::downcast if you want to convert a retained type. See also ConcreteType for more details on which types support being converted to.

Source

pub fn retain_count(&self) -> usize

Get the reference count of the object.

This function may be useful for debugging. You normally do not use this function otherwise.

Beware that some things (like CFNumbers, small CFStrings etc.) may not have a normal retain count for optimization purposes, and can return usize::MAX in that case.

Trait Implementations§

Source§

impl AsRef<AnyObject> for CTFrame

Source§

fn as_ref(&self) -> &AnyObject

Converts this type into a shared reference of the (usually inferred) input type.
Source§

impl AsRef<CFType> for CTFrame

Source§

fn as_ref(&self) -> &CFType

Converts this type into a shared reference of the (usually inferred) input type.
Source§

impl AsRef<CTFrame> for CTFrame

Source§

fn as_ref(&self) -> &Self

Converts this type into a shared reference of the (usually inferred) input type.
Source§

impl Borrow<AnyObject> for CTFrame

Source§

fn borrow(&self) -> &AnyObject

Immutably borrows from an owned value. Read more
Source§

impl Borrow<CFType> for CTFrame

Source§

fn borrow(&self) -> &CFType

Immutably borrows from an owned value. Read more
Source§

impl ConcreteType for CTFrame

Source§

fn type_id() -> CFTypeID

Returns the CFType of the frame object

Source§

impl Debug for CTFrame

Source§

fn fmt(&self, f: &mut Formatter<'_>) -> Result

Formats the value using the given formatter. Read more
Source§

impl Deref for CTFrame

Source§

type Target = CFType

The resulting type after dereferencing.
Source§

fn deref(&self) -> &Self::Target

Dereferences the value.
Source§

impl Hash for CTFrame

Source§

fn hash<H: Hasher>(&self, state: &mut H)

Feeds this value into the given Hasher. Read more
1.3.0 · Source§

fn hash_slice<H>(data: &[Self], state: &mut H)
where H: Hasher, Self: Sized,

Feeds a slice of this type into the given Hasher. Read more
Source§

impl Message for CTFrame

Source§

fn retain(&self) -> Retained<Self>
where Self: Sized,

Increment the reference count of the receiver. Read more
Source§

impl PartialEq for CTFrame

Source§

fn eq(&self, other: &Self) -> bool

Tests for self and other values to be equal, and is used by ==.
1.0.0 · Source§

fn ne(&self, other: &Rhs) -> bool

Tests for !=. The default implementation is almost always sufficient, and should not be overridden without very good reason.
Source§

impl RefEncode for CTFrame

Source§

const ENCODING_REF: Encoding

The Objective-C type-encoding for a reference of this type. Read more
Source§

impl Type for CTFrame

Source§

fn retain(&self) -> CFRetained<Self>
where Self: Sized,

Increment the reference count of the receiver. Read more
Source§

fn as_concrete_TypeRef(&self) -> &Self

👎Deprecated: this is redundant
Helper for easier transition from the core-foundation crate.
Source§

unsafe fn wrap_under_get_rule(ptr: *const Self) -> CFRetained<Self>
where Self: Sized,

👎Deprecated: use CFRetained::retain
Helper for easier transition from the core-foundation crate. Read more
Source§

fn as_CFTypeRef(&self) -> &CFType
where Self: AsRef<CFType>,

👎Deprecated: this is redundant (CF types deref to CFType)
Helper for easier transition from the core-foundation crate.
Source§

unsafe fn wrap_under_create_rule(ptr: *const Self) -> CFRetained<Self>
where Self: Sized,

👎Deprecated: use CFRetained::from_raw
Helper for easier transition from the core-foundation crate. Read more
Source§

impl Eq for CTFrame

Auto Trait Implementations§

§

impl !Freeze for CTFrame

§

impl !RefUnwindSafe for CTFrame

§

impl !Send for CTFrame

§

impl !Sync for CTFrame

§

impl !Unpin for CTFrame

§

impl !UnwindSafe for CTFrame

Blanket Implementations§

Source§

impl<T> Any for T
where T: 'static + ?Sized,

Source§

fn type_id(&self) -> TypeId

Gets the TypeId of self. Read more
Source§

impl<T> Borrow<T> for T
where T: ?Sized,

Source§

fn borrow(&self) -> &T

Immutably borrows from an owned value. Read more
Source§

impl<T> BorrowMut<T> for T
where T: ?Sized,

Source§

fn borrow_mut(&mut self) -> &mut T

Mutably borrows from an owned value. Read more
Source§

impl<T> From<T> for T

Source§

fn from(t: T) -> T

Returns the argument unchanged.

Source§

impl<T, U> Into<U> for T
where U: From<T>,

Source§

fn into(self) -> U

Calls U::from(self).

That is, this conversion is whatever the implementation of From<T> for U chooses to do.

Source§

impl<P, T> Receiver for P
where P: Deref<Target = T> + ?Sized, T: ?Sized,

Source§

type Target = T

🔬This is a nightly-only experimental API. (arbitrary_self_types)
The target type on which the method may be called.
Source§

impl<T, U> TryFrom<U> for T
where U: Into<T>,

Source§

type Error = Infallible

The type returned in the event of a conversion error.
Source§

fn try_from(value: U) -> Result<T, <T as TryFrom<U>>::Error>

Performs the conversion.
Source§

impl<T, U> TryInto<U> for T
where U: TryFrom<T>,

Source§

type Error = <U as TryFrom<T>>::Error

The type returned in the event of a conversion error.
Source§

fn try_into(self) -> Result<U, <U as TryFrom<T>>::Error>

Performs the conversion.
Source§

impl<T> AutoreleaseSafe for T
where T: ?Sized,