use objc2::__framework_prelude::*;
use objc2_foundation::*;
#[cfg(feature = "objc2-quartz-core")]
#[cfg(not(target_os = "watchos"))]
use objc2_quartz_core::*;
use crate::*;
extern_class!(
#[derive(Debug, PartialEq, Eq, Hash)]
pub struct UIFocusMovementHint;
unsafe impl ClassType for UIFocusMovementHint {
type Super = NSObject;
type Mutability = InteriorMutable;
}
);
unsafe impl NSCopying for UIFocusMovementHint {}
unsafe impl NSObjectProtocol for UIFocusMovementHint {}
extern_methods!(
unsafe impl UIFocusMovementHint {
#[method(movementDirection)]
pub unsafe fn movementDirection(&self) -> CGVector;
#[cfg(feature = "objc2-quartz-core")]
#[cfg(not(target_os = "watchos"))]
#[method(perspectiveTransform)]
pub unsafe fn perspectiveTransform(&self) -> CATransform3D;
#[method(rotation)]
pub unsafe fn rotation(&self) -> CGVector;
#[method(translation)]
pub unsafe fn translation(&self) -> CGVector;
#[cfg(feature = "objc2-quartz-core")]
#[cfg(not(target_os = "watchos"))]
#[method(interactionTransform)]
pub unsafe fn interactionTransform(&self) -> CATransform3D;
#[method_id(@__retain_semantics Init init)]
pub unsafe fn init(this: Allocated<Self>) -> Retained<Self>;
#[method_id(@__retain_semantics New new)]
pub unsafe fn new() -> Retained<Self>;
}
);