pub struct SKFieldNode { /* private fields */ }SKFieldNode and crate feature SKNode and crate feature objc2-app-kit and macOS only.Expand description
Implementations§
Source§impl SKFieldNode
impl SKFieldNode
Sourcepub unsafe fn region(&self) -> Option<Retained<SKRegion>>
Available on crate feature SKRegion only.
pub unsafe fn region(&self) -> Option<Retained<SKRegion>>
SKRegion only.The region property is the domain of the field’s effect. No force is applied to objects outside the region.
Sourcepub unsafe fn setRegion(&self, region: Option<&SKRegion>)
Available on crate feature SKRegion only.
pub unsafe fn setRegion(&self, region: Option<&SKRegion>)
SKRegion only.Setter for region.
Sourcepub unsafe fn setStrength(&self, strength: c_float)
pub unsafe fn setStrength(&self, strength: c_float)
Setter for strength.
Sourcepub unsafe fn falloff(&self) -> c_float
pub unsafe fn falloff(&self) -> c_float
The falloff exponent used to calculate field strength at a distance. Falloff starts at the minimum radius.
The default exponent is zero, which results in a uniform field with no falloff.
See: minimumRadius
Sourcepub unsafe fn setFalloff(&self, falloff: c_float)
pub unsafe fn setFalloff(&self, falloff: c_float)
Setter for falloff.
Sourcepub unsafe fn minimumRadius(&self) -> c_float
pub unsafe fn minimumRadius(&self) -> c_float
minimum radius of effect. Default is very small.
Sourcepub unsafe fn setMinimumRadius(&self, minimum_radius: c_float)
pub unsafe fn setMinimumRadius(&self, minimum_radius: c_float)
Setter for minimumRadius.
Sourcepub unsafe fn setEnabled(&self, enabled: bool)
pub unsafe fn setEnabled(&self, enabled: bool)
Setter for isEnabled.
Sourcepub unsafe fn isExclusive(&self) -> bool
pub unsafe fn isExclusive(&self) -> bool
If a field is exclusive, it suppresses any other field in its region of effect. If two or more exclusive fields overlap, it is undefined which one of them will take effect
See: region
Sourcepub unsafe fn setExclusive(&self, exclusive: bool)
pub unsafe fn setExclusive(&self, exclusive: bool)
Setter for isExclusive.
Sourcepub unsafe fn categoryBitMask(&self) -> u32
pub unsafe fn categoryBitMask(&self) -> u32
Logical categories the field belongs to. Default is all categories. These categories correspond to fieldBitMasks, and can be used to enforce that a particular field applies to a particular category of objects.
See: SKPhysicsBody.fieldBitMask
See: SKEmitterNode.fieldBitMask
Sourcepub unsafe fn setCategoryBitMask(&self, category_bit_mask: u32)
pub unsafe fn setCategoryBitMask(&self, category_bit_mask: u32)
Setter for categoryBitMask.
Sourcepub unsafe fn smoothness(&self) -> c_float
pub unsafe fn smoothness(&self) -> c_float
fields without a smoothness component will return 0
See: noiseFieldWithSmoothness:smoothness:animationSpeed
See: turbulenceFieldWithSmoothness:smoothness:animationSpeed
Sourcepub unsafe fn setSmoothness(&self, smoothness: c_float)
pub unsafe fn setSmoothness(&self, smoothness: c_float)
Setter for smoothness.
Sourcepub unsafe fn animationSpeed(&self) -> c_float
pub unsafe fn animationSpeed(&self) -> c_float
fields that can be animated can have non zero values.
A value of 2 will animated twice as fast as a value of 1.
See: noiseFieldWithSmoothness:smoothness:animationSpeed
See: turbulenceFieldWithSmoothness:smoothness:animationSpeed
Sourcepub unsafe fn setAnimationSpeed(&self, animation_speed: c_float)
pub unsafe fn setAnimationSpeed(&self, animation_speed: c_float)
Setter for animationSpeed.
Sourcepub unsafe fn texture(&self) -> Option<Retained<SKTexture>>
Available on crate feature SKTexture only.
pub unsafe fn texture(&self) -> Option<Retained<SKTexture>>
SKTexture only.fields constructed with a texture can be uppdated by assigning a new texture
See: velocityFieldWithTexture:velocityTexture
Sourcepub unsafe fn setTexture(&self, texture: Option<&SKTexture>)
Available on crate feature SKTexture only.
pub unsafe fn setTexture(&self, texture: Option<&SKTexture>)
SKTexture only.Setter for texture.
Sourcepub unsafe fn dragField(mtm: MainThreadMarker) -> Retained<SKFieldNode>
pub unsafe fn dragField(mtm: MainThreadMarker) -> Retained<SKFieldNode>
Slows an object proportionally to the object’s velocity. Use this to simulate effects such as friction from motion through the air.
Sourcepub unsafe fn vortexField(mtm: MainThreadMarker) -> Retained<SKFieldNode>
pub unsafe fn vortexField(mtm: MainThreadMarker) -> Retained<SKFieldNode>
Applies a force tangential to the direction from the sample point to the field’s position. The force will be CCW to the direction. Make the strength negative to apply force in the CW direction. Amount is proportional to distance from center and the object’s mass. Use this to create effects such as tornadoes.
Sourcepub unsafe fn radialGravityField(mtm: MainThreadMarker) -> Retained<SKFieldNode>
pub unsafe fn radialGravityField(mtm: MainThreadMarker) -> Retained<SKFieldNode>
Applies a force in the direction of the origin of the field in local space. To repel objects, use a negative strength. The force is proportional to the distance from the field origin. Varies with the mass of the object according to F = ma The field node’s rotation property can be used to orient the gravity in a particular direction.
Sourcepub unsafe fn velocityFieldWithTexture(
velocity_texture: &SKTexture,
mtm: MainThreadMarker,
) -> Retained<SKFieldNode>
Available on crate feature SKTexture only.
pub unsafe fn velocityFieldWithTexture( velocity_texture: &SKTexture, mtm: MainThreadMarker, ) -> Retained<SKFieldNode>
SKTexture only.The supplied texture contains velocity values for any object entering the field’s area of effect. If no texture is supplied, the direction property is used instead. Velocity fields override the effect of any other acceleration applied to the body. Velocity fields are typically used for such effects as advection, for example, a velocity field might describe the velocity on the surface of a river. An object placed in the river would then follow the river.
Parameter velocityTexture: The R and G channels of the supplied texture become x and y components of velocity. B and A, if present in the SKTexture, are ignored.
See: texture
Sourcepub unsafe fn noiseFieldWithSmoothness_animationSpeed(
smoothness: CGFloat,
speed: CGFloat,
mtm: MainThreadMarker,
) -> Retained<SKFieldNode>
Available on crate feature objc2-core-foundation only.
pub unsafe fn noiseFieldWithSmoothness_animationSpeed( smoothness: CGFloat, speed: CGFloat, mtm: MainThreadMarker, ) -> Retained<SKFieldNode>
objc2-core-foundation only.A time varying differentiable Perlin simplex noise field. By default a smooth noise is calculated, and the field is time varying. Use this to simulate such effects as fireflies, or snow. To freeze the noise in place, set animationSpeed to 0.0. Mass is ignored.
Parameter smoothness: value of 0 means as noisy as possible, 1 means as smooth as possible
Parameter speed: is the general rate in Hz that any particular texel changes to a different value
See: smoothness
See: animationSpeed
Sourcepub unsafe fn turbulenceFieldWithSmoothness_animationSpeed(
smoothness: CGFloat,
speed: CGFloat,
mtm: MainThreadMarker,
) -> Retained<SKFieldNode>
Available on crate feature objc2-core-foundation only.
pub unsafe fn turbulenceFieldWithSmoothness_animationSpeed( smoothness: CGFloat, speed: CGFloat, mtm: MainThreadMarker, ) -> Retained<SKFieldNode>
objc2-core-foundation only.Just like Noise, except the strength of the noise is proportional to the velocity of the object in the field.
Parameter smoothness: value of 0 means as noisy as possible, 1 means as smooth as possible
Parameter speed: is the general rate in Hz that any particular texel changes to a different value
See: smoothness
See: animationSpeed
Sourcepub unsafe fn springField(mtm: MainThreadMarker) -> Retained<SKFieldNode>
pub unsafe fn springField(mtm: MainThreadMarker) -> Retained<SKFieldNode>
A Hooke’s law force - a force linearly proportional to distance from the center of the field. An object in this field will oscillate with a period proportional to the inverse of the mass. An example use is to keep objects confined to a particular region.
Sourcepub unsafe fn electricField(mtm: MainThreadMarker) -> Retained<SKFieldNode>
pub unsafe fn electricField(mtm: MainThreadMarker) -> Retained<SKFieldNode>
A force proportional to the charge on the object. A charge property has been added to SKPhysicsBodies to accomplish this. An example use of this field is to make objects behavior differently from one another when they enter a region, or to make an object’s behavior different than its mass based behavior This field models the first part of the Lorentz equation, F = qE
Sourcepub unsafe fn magneticField(mtm: MainThreadMarker) -> Retained<SKFieldNode>
pub unsafe fn magneticField(mtm: MainThreadMarker) -> Retained<SKFieldNode>
A force proportional to the charge on the object and the object’s velocity. A charge property has been added to SKPhysicsBodies to accomplish this. An example use of this field is to make objects behavior differently from one another when they enter a region, or to make an object’s behavior different than its mass based behavior This field models the second part of the Lorentz equation, F = qvB
Source§impl SKFieldNode
Methods declared on superclass SKNode.
impl SKFieldNode
Methods declared on superclass SKNode.
pub unsafe fn init(this: Allocated<Self>) -> Retained<Self>
Sourcepub unsafe fn initWithCoder(
this: Allocated<Self>,
a_decoder: &NSCoder,
) -> Option<Retained<Self>>
pub unsafe fn initWithCoder( this: Allocated<Self>, a_decoder: &NSCoder, ) -> Option<Retained<Self>>
Support coding and decoding via NSKeyedArchiver.
§Safety
a_decoder possibly has further requirements.
pub unsafe fn node(mtm: MainThreadMarker) -> Retained<Self>
pub unsafe fn nodeWithFileNamed( filename: &NSString, mtm: MainThreadMarker, ) -> Option<Retained<Self>>
Source§impl SKFieldNode
Methods declared on superclass NSObject.
impl SKFieldNode
Methods declared on superclass NSObject.
pub unsafe fn new(mtm: MainThreadMarker) -> Retained<Self>
Methods from Deref<Target = SKNode>§
pub unsafe fn frame(&self) -> CGRect
objc2-core-foundation only.Sourcepub unsafe fn calculateAccumulatedFrame(&self) -> CGRect
Available on crate feature objc2-core-foundation only.
pub unsafe fn calculateAccumulatedFrame(&self) -> CGRect
objc2-core-foundation only.Calculates the bounding box including all child nodes in parents coordinate system.
Sourcepub unsafe fn position(&self) -> CGPoint
Available on crate feature objc2-core-foundation only.
pub unsafe fn position(&self) -> CGPoint
objc2-core-foundation only.The position of the node in the parent’s coordinate system
Sourcepub unsafe fn setPosition(&self, position: CGPoint)
Available on crate feature objc2-core-foundation only.
pub unsafe fn setPosition(&self, position: CGPoint)
objc2-core-foundation only.Setter for position.
Sourcepub unsafe fn zPosition(&self) -> CGFloat
Available on crate feature objc2-core-foundation only.
pub unsafe fn zPosition(&self) -> CGFloat
objc2-core-foundation only.The z-order of the node (used for ordering). Negative z is “into” the screen, Positive z is “out” of the screen. A greater zPosition will sort in front of a lesser zPosition.
Sourcepub unsafe fn setZPosition(&self, z_position: CGFloat)
Available on crate feature objc2-core-foundation only.
pub unsafe fn setZPosition(&self, z_position: CGFloat)
objc2-core-foundation only.Setter for zPosition.
Sourcepub unsafe fn zRotation(&self) -> CGFloat
Available on crate feature objc2-core-foundation only.
pub unsafe fn zRotation(&self) -> CGFloat
objc2-core-foundation only.The Euler rotation about the z axis (in radians)
Sourcepub unsafe fn setZRotation(&self, z_rotation: CGFloat)
Available on crate feature objc2-core-foundation only.
pub unsafe fn setZRotation(&self, z_rotation: CGFloat)
objc2-core-foundation only.Setter for zRotation.
Sourcepub unsafe fn xScale(&self) -> CGFloat
Available on crate feature objc2-core-foundation only.
pub unsafe fn xScale(&self) -> CGFloat
objc2-core-foundation only.The scaling in the X axis
Sourcepub unsafe fn setXScale(&self, x_scale: CGFloat)
Available on crate feature objc2-core-foundation only.
pub unsafe fn setXScale(&self, x_scale: CGFloat)
objc2-core-foundation only.Setter for xScale.
Sourcepub unsafe fn yScale(&self) -> CGFloat
Available on crate feature objc2-core-foundation only.
pub unsafe fn yScale(&self) -> CGFloat
objc2-core-foundation only.The scaling in the Y axis
Sourcepub unsafe fn setYScale(&self, y_scale: CGFloat)
Available on crate feature objc2-core-foundation only.
pub unsafe fn setYScale(&self, y_scale: CGFloat)
objc2-core-foundation only.Setter for yScale.
Sourcepub unsafe fn speed(&self) -> CGFloat
Available on crate feature objc2-core-foundation only.
pub unsafe fn speed(&self) -> CGFloat
objc2-core-foundation only.The speed multiplier applied to all actions run on this node. Inherited by its children.
Sourcepub unsafe fn setSpeed(&self, speed: CGFloat)
Available on crate feature objc2-core-foundation only.
pub unsafe fn setSpeed(&self, speed: CGFloat)
objc2-core-foundation only.Setter for speed.
Sourcepub unsafe fn alpha(&self) -> CGFloat
Available on crate feature objc2-core-foundation only.
pub unsafe fn alpha(&self) -> CGFloat
objc2-core-foundation only.Alpha of this node (multiplied by the output color to give the final result)
Sourcepub unsafe fn setAlpha(&self, alpha: CGFloat)
Available on crate feature objc2-core-foundation only.
pub unsafe fn setAlpha(&self, alpha: CGFloat)
objc2-core-foundation only.Setter for alpha.
Sourcepub unsafe fn isPaused(&self) -> bool
pub unsafe fn isPaused(&self) -> bool
Controls whether or not the node’s actions is updated or paused.
Sourcepub unsafe fn isHidden(&self) -> bool
pub unsafe fn isHidden(&self) -> bool
Controls whether or not the node and its children are rendered.
Sourcepub unsafe fn isUserInteractionEnabled(&self) -> bool
pub unsafe fn isUserInteractionEnabled(&self) -> bool
Controls whether or not the node receives touch events
Sourcepub unsafe fn setUserInteractionEnabled(&self, user_interaction_enabled: bool)
pub unsafe fn setUserInteractionEnabled(&self, user_interaction_enabled: bool)
Setter for isUserInteractionEnabled.
Sourcepub unsafe fn focusBehavior(&self) -> SKNodeFocusBehavior
pub unsafe fn focusBehavior(&self) -> SKNodeFocusBehavior
Determines how this node participates in the focus system. The default is SKNodeFocusBehaviorNone.
Sourcepub unsafe fn setFocusBehavior(&self, focus_behavior: SKNodeFocusBehavior)
pub unsafe fn setFocusBehavior(&self, focus_behavior: SKNodeFocusBehavior)
Setter for focusBehavior.
Sourcepub unsafe fn parent(&self) -> Option<Retained<SKNode>>
pub unsafe fn parent(&self) -> Option<Retained<SKNode>>
The parent of the node.
If this is nil the node has not been added to another group and is thus the root node of its own graph.
Sourcepub unsafe fn name(&self) -> Option<Retained<NSString>>
pub unsafe fn name(&self) -> Option<Retained<NSString>>
The client assignable name.
In general, this should be unique among peers in the scene graph.
Sourcepub unsafe fn scene(&self) -> Option<Retained<SKScene>>
Available on crate features SKEffectNode and SKScene only.
pub unsafe fn scene(&self) -> Option<Retained<SKScene>>
SKEffectNode and SKScene only.The scene that the node is currently in.
Sourcepub unsafe fn physicsBody(&self) -> Option<Retained<SKPhysicsBody>>
Available on crate feature SKPhysicsBody only.
pub unsafe fn physicsBody(&self) -> Option<Retained<SKPhysicsBody>>
SKPhysicsBody only.Physics body attached to the node, with synchronized scale, rotation, and position
Sourcepub unsafe fn setPhysicsBody(&self, physics_body: Option<&SKPhysicsBody>)
Available on crate feature SKPhysicsBody only.
pub unsafe fn setPhysicsBody(&self, physics_body: Option<&SKPhysicsBody>)
SKPhysicsBody only.Setter for physicsBody.
Sourcepub unsafe fn userData(&self) -> Option<Retained<NSMutableDictionary>>
pub unsafe fn userData(&self) -> Option<Retained<NSMutableDictionary>>
An optional dictionary that can be used to store your own data in a node. Defaults to nil.
§Safety
The returned generic should be of the correct type.
Sourcepub unsafe fn setUserData(&self, user_data: Option<&NSMutableDictionary>)
pub unsafe fn setUserData(&self, user_data: Option<&NSMutableDictionary>)
Sourcepub unsafe fn reachConstraints(&self) -> Option<Retained<SKReachConstraints>>
Available on crate feature SKReachConstraints only.
pub unsafe fn reachConstraints(&self) -> Option<Retained<SKReachConstraints>>
SKReachConstraints only.Kinematic constraints, used in IK solving
Sourcepub unsafe fn setReachConstraints(
&self,
reach_constraints: Option<&SKReachConstraints>,
)
Available on crate feature SKReachConstraints only.
pub unsafe fn setReachConstraints( &self, reach_constraints: Option<&SKReachConstraints>, )
SKReachConstraints only.Setter for reachConstraints.
This is copied when set.
Sourcepub unsafe fn constraints(&self) -> Option<Retained<NSArray<SKConstraint>>>
Available on crate feature SKConstraint only.
pub unsafe fn constraints(&self) -> Option<Retained<NSArray<SKConstraint>>>
SKConstraint only.Optional array of SKConstraints Constraints are evaluated each frame after actions and physics. The node’s transform will be changed to satisfy the constraint.
Sourcepub unsafe fn setConstraints(&self, constraints: Option<&NSArray<SKConstraint>>)
Available on crate feature SKConstraint only.
pub unsafe fn setConstraints(&self, constraints: Option<&NSArray<SKConstraint>>)
SKConstraint only.Setter for constraints.
This is copied when set.
Sourcepub unsafe fn attributeValues(
&self,
) -> Retained<NSDictionary<NSString, SKAttributeValue>>
👎DeprecatedAvailable on crate feature SKAttribute only.
pub unsafe fn attributeValues( &self, ) -> Retained<NSDictionary<NSString, SKAttributeValue>>
SKAttribute only.Optional dictionary of SKAttributeValues Attributes can be used with custom SKShaders. DEPRECATED: Attributes are only available for node classes supporting SKShader (see SKSpriteNode etc.).
Sourcepub unsafe fn setAttributeValues(
&self,
attribute_values: &NSDictionary<NSString, SKAttributeValue>,
)
👎DeprecatedAvailable on crate feature SKAttribute only.
pub unsafe fn setAttributeValues( &self, attribute_values: &NSDictionary<NSString, SKAttributeValue>, )
SKAttribute only.Setter for attributeValues.
This is copied when set.
pub unsafe fn valueForAttributeNamed( &self, key: &NSString, ) -> Option<Retained<SKAttributeValue>>
SKAttribute only.pub unsafe fn setValue_forAttributeNamed( &self, value: &SKAttributeValue, key: &NSString, )
SKAttribute only.Sourcepub unsafe fn setScale(&self, scale: CGFloat)
Available on crate feature objc2-core-foundation only.
pub unsafe fn setScale(&self, scale: CGFloat)
objc2-core-foundation only.Sets both the x & y scale
Parameter scale: the uniform scale to set.
Sourcepub unsafe fn addChild(&self, node: &SKNode)
pub unsafe fn addChild(&self, node: &SKNode)
Adds a node as a child node of this node
The added node must not have a parent.
Parameter node: the child node to add.
pub unsafe fn insertChild_atIndex(&self, node: &SKNode, index: NSInteger)
pub unsafe fn removeChildrenInArray(&self, nodes: &NSArray<SKNode>)
pub unsafe fn removeAllChildren(&self)
pub unsafe fn removeFromParent(&self)
pub unsafe fn moveToParent(&self, parent: &SKNode)
pub unsafe fn childNodeWithName( &self, name: &NSString, ) -> Option<Retained<SKNode>>
pub unsafe fn enumerateChildNodesWithName_usingBlock( &self, name: &NSString, block: &DynBlock<dyn Fn(NonNull<SKNode>, NonNull<Bool>)>, )
block2 only.Sourcepub unsafe fn objectForKeyedSubscript(
&self,
name: &NSString,
) -> Retained<NSArray<SKNode>>
pub unsafe fn objectForKeyedSubscript( &self, name: &NSString, ) -> Retained<NSArray<SKNode>>
Simplified shorthand for enumerateChildNodesWithName that returns an array of the matching nodes. This allows subscripting of the form: NSArray *childrenMatchingName = node[ “ name“]
or even complex like: NSArray siblingsBeginningWithA = node[ “ ../a“]
Parameter name: An Xpath style path that can include simple regular expressions for matching node names.
See: enumerateChildNodesWithName:usingBlock:
pub unsafe fn inParentHierarchy(&self, parent: &SKNode) -> bool
pub unsafe fn runAction(&self, action: &SKAction)
SKAction only.pub unsafe fn runAction_completion( &self, action: &SKAction, block: &DynBlock<dyn Fn()>, )
SKAction and block2 only.pub unsafe fn runAction_withKey(&self, action: &SKAction, key: &NSString)
SKAction only.pub unsafe fn hasActions(&self) -> bool
pub unsafe fn actionForKey(&self, key: &NSString) -> Option<Retained<SKAction>>
SKAction only.pub unsafe fn removeActionForKey(&self, key: &NSString)
pub unsafe fn removeAllActions(&self)
pub unsafe fn containsPoint(&self, p: CGPoint) -> bool
objc2-core-foundation only.Sourcepub unsafe fn nodeAtPoint(&self, p: CGPoint) -> Retained<SKNode>
Available on crate feature objc2-core-foundation only.
pub unsafe fn nodeAtPoint(&self, p: CGPoint) -> Retained<SKNode>
objc2-core-foundation only.Returns the node itself or a child node at the point given. If the receiver is returned there is no child node at the given point.
Returns: a child node or self at the given location.
pub unsafe fn nodesAtPoint(&self, p: CGPoint) -> Retained<NSArray<SKNode>>
objc2-core-foundation only.pub unsafe fn convertPoint_fromNode( &self, point: CGPoint, node: &SKNode, ) -> CGPoint
objc2-core-foundation only.pub unsafe fn convertPoint_toNode( &self, point: CGPoint, node: &SKNode, ) -> CGPoint
objc2-core-foundation only.pub unsafe fn intersectsNode(&self, node: &SKNode) -> bool
pub unsafe fn isEqualToNode(&self, node: &SKNode) -> bool
pub unsafe fn isAccessibilityElement(&self) -> bool
SKNode_NSAccessibility only.Sourcepub unsafe fn setAccessibilityElement(&self, accessibility_element: bool)
Available on crate feature SKNode_NSAccessibility only.
pub unsafe fn setAccessibilityElement(&self, accessibility_element: bool)
SKNode_NSAccessibility only.Setter for isAccessibilityElement.
pub unsafe fn accessibilityRole(&self) -> Option<Retained<NSString>>
SKNode_NSAccessibility only.Sourcepub unsafe fn setAccessibilityRole(&self, accessibility_role: Option<&NSString>)
Available on crate feature SKNode_NSAccessibility only.
pub unsafe fn setAccessibilityRole(&self, accessibility_role: Option<&NSString>)
SKNode_NSAccessibility only.Setter for accessibilityRole.
This is copied when set.
pub unsafe fn accessibilityRoleDescription(&self) -> Option<Retained<NSString>>
SKNode_NSAccessibility only.Sourcepub unsafe fn setAccessibilityRoleDescription(
&self,
accessibility_role_description: Option<&NSString>,
)
Available on crate feature SKNode_NSAccessibility only.
pub unsafe fn setAccessibilityRoleDescription( &self, accessibility_role_description: Option<&NSString>, )
SKNode_NSAccessibility only.Setter for accessibilityRoleDescription.
This is copied when set.
pub unsafe fn accessibilitySubrole(&self) -> Option<Retained<NSString>>
SKNode_NSAccessibility only.Sourcepub unsafe fn setAccessibilitySubrole(
&self,
accessibility_subrole: Option<&NSString>,
)
Available on crate feature SKNode_NSAccessibility only.
pub unsafe fn setAccessibilitySubrole( &self, accessibility_subrole: Option<&NSString>, )
SKNode_NSAccessibility only.Setter for accessibilitySubrole.
This is copied when set.
pub unsafe fn accessibilityFrame(&self) -> CGRect
SKNode_NSAccessibility and objc2-core-foundation only.Sourcepub unsafe fn setAccessibilityFrame(&self, accessibility_frame: CGRect)
Available on crate features SKNode_NSAccessibility and objc2-core-foundation only.
pub unsafe fn setAccessibilityFrame(&self, accessibility_frame: CGRect)
SKNode_NSAccessibility and objc2-core-foundation only.Setter for accessibilityFrame.
pub unsafe fn accessibilityParent(&self) -> Option<Retained<AnyObject>>
SKNode_NSAccessibility only.Sourcepub unsafe fn setAccessibilityParent(
&self,
accessibility_parent: Option<&AnyObject>,
)
Available on crate feature SKNode_NSAccessibility only.
pub unsafe fn setAccessibilityParent( &self, accessibility_parent: Option<&AnyObject>, )
SKNode_NSAccessibility only.Setter for accessibilityParent.
This is a weak property.
§Safety
accessibility_parent should be of the correct type.
pub unsafe fn accessibilityChildren(&self) -> Option<Retained<NSArray>>
SKNode_NSAccessibility only.Sourcepub unsafe fn setAccessibilityChildren(
&self,
accessibility_children: Option<&NSArray>,
)
Available on crate feature SKNode_NSAccessibility only.
pub unsafe fn setAccessibilityChildren( &self, accessibility_children: Option<&NSArray>, )
SKNode_NSAccessibility only.Setter for accessibilityChildren.
This is copied when set.
§Safety
accessibility_children generic should be of the correct type.
pub unsafe fn accessibilityHelp(&self) -> Option<Retained<NSString>>
SKNode_NSAccessibility only.Sourcepub unsafe fn setAccessibilityHelp(&self, accessibility_help: Option<&NSString>)
Available on crate feature SKNode_NSAccessibility only.
pub unsafe fn setAccessibilityHelp(&self, accessibility_help: Option<&NSString>)
SKNode_NSAccessibility only.Setter for accessibilityHelp.
This is copied when set.
pub unsafe fn accessibilityLabel(&self) -> Option<Retained<NSString>>
SKNode_NSAccessibility only.Sourcepub unsafe fn setAccessibilityLabel(
&self,
accessibility_label: Option<&NSString>,
)
Available on crate feature SKNode_NSAccessibility only.
pub unsafe fn setAccessibilityLabel( &self, accessibility_label: Option<&NSString>, )
SKNode_NSAccessibility only.Setter for accessibilityLabel.
This is copied when set.
pub unsafe fn isAccessibilityEnabled(&self) -> bool
SKNode_NSAccessibility only.Sourcepub unsafe fn setAccessibilityEnabled(&self, accessibility_enabled: bool)
Available on crate feature SKNode_NSAccessibility only.
pub unsafe fn setAccessibilityEnabled(&self, accessibility_enabled: bool)
SKNode_NSAccessibility only.Setter for isAccessibilityEnabled.
pub unsafe fn accessibilityHitTest( &self, point: CGPoint, ) -> Option<Retained<AnyObject>>
SKNode_NSAccessibility and objc2-core-foundation only.Methods from Deref<Target = NSResponder>§
Sourcepub unsafe fn nextResponder(&self) -> Option<Retained<NSResponder>>
pub unsafe fn nextResponder(&self) -> Option<Retained<NSResponder>>
§Safety
This is not retained internally, you must ensure the object is still alive.
Sourcepub unsafe fn setNextResponder(&self, next_responder: Option<&NSResponder>)
pub unsafe fn setNextResponder(&self, next_responder: Option<&NSResponder>)
Setter for nextResponder.
§Safety
This is unretained, you must ensure the object is kept alive while in use.
Sourcepub unsafe fn tryToPerform_with(
&self,
action: Sel,
object: Option<&AnyObject>,
) -> bool
pub unsafe fn tryToPerform_with( &self, action: Sel, object: Option<&AnyObject>, ) -> bool
§Safety
actionmust be a valid selector.objectshould be of the correct type.
pub fn performKeyEquivalent(&self, event: &NSEvent) -> bool
pub fn mouseDown(&self, event: &NSEvent)
pub fn rightMouseDown(&self, event: &NSEvent)
pub fn otherMouseDown(&self, event: &NSEvent)
pub fn mouseUp(&self, event: &NSEvent)
pub fn rightMouseUp(&self, event: &NSEvent)
pub fn otherMouseUp(&self, event: &NSEvent)
pub fn mouseMoved(&self, event: &NSEvent)
pub fn mouseDragged(&self, event: &NSEvent)
pub fn mouseCancelled(&self, event: &NSEvent)
pub fn scrollWheel(&self, event: &NSEvent)
pub fn rightMouseDragged(&self, event: &NSEvent)
pub fn otherMouseDragged(&self, event: &NSEvent)
pub fn mouseEntered(&self, event: &NSEvent)
pub fn mouseExited(&self, event: &NSEvent)
pub fn keyDown(&self, event: &NSEvent)
pub fn keyUp(&self, event: &NSEvent)
pub fn flagsChanged(&self, event: &NSEvent)
pub fn tabletPoint(&self, event: &NSEvent)
pub fn tabletProximity(&self, event: &NSEvent)
pub fn cursorUpdate(&self, event: &NSEvent)
pub fn magnifyWithEvent(&self, event: &NSEvent)
pub fn rotateWithEvent(&self, event: &NSEvent)
pub fn swipeWithEvent(&self, event: &NSEvent)
pub fn beginGestureWithEvent(&self, event: &NSEvent)
pub fn endGestureWithEvent(&self, event: &NSEvent)
pub fn smartMagnifyWithEvent(&self, event: &NSEvent)
pub fn changeModeWithEvent(&self, event: &NSEvent)
pub fn touchesBeganWithEvent(&self, event: &NSEvent)
pub fn touchesMovedWithEvent(&self, event: &NSEvent)
pub fn touchesEndedWithEvent(&self, event: &NSEvent)
pub fn touchesCancelledWithEvent(&self, event: &NSEvent)
pub fn quickLookWithEvent(&self, event: &NSEvent)
pub fn pressureChangeWithEvent(&self, event: &NSEvent)
Sourcepub fn contextMenuKeyDown(&self, event: &NSEvent)
pub fn contextMenuKeyDown(&self, event: &NSEvent)
Handle a key event that should present a context menu at the user focus.
Most applications should not override this method. Instead, you should customize the context menu displayed from a keyboard event by implementing menuForEvent: and selectionAnchorRect, or showContextMenuForSelection:, rather than this method.
You should only override this method when you do not want the system-provided default behavior for the context menu hotkey, either for a specific key combination, or for the hotkey in general. For example, if your application already provides a different behavior for control-Return (the default context menu hotkey definition), and you want to preserve that behavior, you should override this method to handle that specific key combination, and then return without calling super. Note that the user may customize the hotkey to a different key combination, so in this example, if any other key combination is passed to your method, you would call super.
An implementation of this method should call [super contextMenuKeyDown:event] to pass the request up the responder chain. If the message reaches the application object, NSApplication’s implementation of this method will send showContextMenuForSelection: to the responder chain. If you do not call super, then no further handling of the key event will be performed.
Note: In some cases, showContextMenuForSelection: will be called without a prior call to contextMenuKeyDown:. This occurs when a view receives an Accessibility ShowMenu action, or when the user has created a Cocoa Text key binding to map a different key combination to the showContextMenuForSelection: action.
Parameter event: The key down event that matches the system-wide context menu hotkey combination.
See also: showContextMenuForSelection:
Sourcepub unsafe fn noResponderFor(&self, event_selector: Sel)
pub unsafe fn noResponderFor(&self, event_selector: Sel)
§Safety
event_selector must be a valid selector.
pub fn acceptsFirstResponder(&self) -> bool
pub fn becomeFirstResponder(&self) -> bool
pub fn resignFirstResponder(&self) -> bool
pub fn interpretKeyEvents(&self, event_array: &NSArray<NSEvent>)
pub fn flushBufferedKeyEvents(&self)
Sourcepub unsafe fn showContextHelp(&self, sender: Option<&AnyObject>)
pub unsafe fn showContextHelp(&self, sender: Option<&AnyObject>)
§Safety
sender should be of the correct type.
pub fn helpRequested(&self, event_ptr: &NSEvent)
pub fn shouldBeTreatedAsInkEvent(&self, event: &NSEvent) -> bool
pub fn wantsScrollEventsForSwipeTrackingOnAxis( &self, axis: NSEventGestureAxis, ) -> bool
pub fn wantsForwardedScrollEventsForAxis( &self, axis: NSEventGestureAxis, ) -> bool
Sourcepub unsafe fn supplementalTargetForAction_sender(
&self,
action: Sel,
sender: Option<&AnyObject>,
) -> Option<Retained<AnyObject>>
pub unsafe fn supplementalTargetForAction_sender( &self, action: Sel, sender: Option<&AnyObject>, ) -> Option<Retained<AnyObject>>
§Safety
actionmust be a valid selector.sendershould be of the correct type.
pub fn undoManager(&self) -> Option<Retained<NSUndoManager>>
pub fn validateProposedFirstResponder_forEvent( &self, responder: &NSResponder, event: Option<&NSEvent>, ) -> bool
pub fn presentError(&self, error: &NSError) -> bool
pub fn willPresentError(&self, error: &NSError) -> Retained<NSError>
Sourcepub unsafe fn performTextFinderAction(&self, sender: Option<&AnyObject>)
pub unsafe fn performTextFinderAction(&self, sender: Option<&AnyObject>)
§Safety
sender should be of the correct type.
Sourcepub unsafe fn newWindowForTab(&self, sender: Option<&AnyObject>)
pub unsafe fn newWindowForTab(&self, sender: Option<&AnyObject>)
§Safety
sender should be of the correct type.
Sourcepub unsafe fn showWritingTools(&self, sender: Option<&AnyObject>)
pub unsafe fn showWritingTools(&self, sender: Option<&AnyObject>)
§Safety
sender should be of the correct type.
pub fn performMnemonic(&self, string: &NSString) -> bool
Methods from Deref<Target = NSObject>§
Sourcepub fn doesNotRecognizeSelector(&self, sel: Sel) -> !
pub fn doesNotRecognizeSelector(&self, sel: Sel) -> !
Handle messages the object doesn’t recognize.
See Apple’s documentation for details.
Methods from Deref<Target = AnyObject>§
Sourcepub fn class(&self) -> &'static AnyClass
pub fn class(&self) -> &'static AnyClass
Dynamically find the class of this object.
§Panics
May panic if the object is invalid (which may be the case for objects
returned from unavailable init/new methods).
§Example
Check that an instance of NSObject has the precise class NSObject.
use objc2::ClassType;
use objc2::runtime::NSObject;
let obj = NSObject::new();
assert_eq!(obj.class(), NSObject::class());Sourcepub unsafe fn get_ivar<T>(&self, name: &str) -> &Twhere
T: Encode,
👎Deprecated: this is difficult to use correctly, use Ivar::load instead.
pub unsafe fn get_ivar<T>(&self, name: &str) -> &Twhere
T: Encode,
Ivar::load instead.Use Ivar::load instead.
§Safety
The object must have an instance variable with the given name, and it
must be of type T.
See Ivar::load_ptr for details surrounding this.
Sourcepub fn downcast_ref<T>(&self) -> Option<&T>where
T: DowncastTarget,
pub fn downcast_ref<T>(&self) -> Option<&T>where
T: DowncastTarget,
Attempt to downcast the object to a class of type T.
This is the reference-variant. Use Retained::downcast if you want
to convert a retained object to another type.
§Mutable classes
Some classes have immutable and mutable variants, such as NSString
and NSMutableString.
When some Objective-C API signature says it gives you an immutable class, it generally expects you to not mutate that, even though it may technically be mutable “under the hood”.
So using this method to convert a NSString to a NSMutableString,
while not unsound, is generally frowned upon unless you created the
string yourself, or the API explicitly documents the string to be
mutable.
See Apple’s documentation on mutability and on
isKindOfClass: for more details.
§Generic classes
Objective-C generics are called “lightweight generics”, and that’s because they aren’t exposed in the runtime. This makes it impossible to safely downcast to generic collections, so this is disallowed by this method.
You can, however, safely downcast to generic collections where all the
type-parameters are AnyObject.
§Panics
This works internally by calling isKindOfClass:. That means that the
object must have the instance method of that name, and an exception
will be thrown (if CoreFoundation is linked) or the process will abort
if that is not the case. In the vast majority of cases, you don’t need
to worry about this, since both root objects NSObject and
NSProxy implement this method.
§Examples
Cast an NSString back and forth from NSObject.
use objc2::rc::Retained;
use objc2_foundation::{NSObject, NSString};
let obj: Retained<NSObject> = NSString::new().into_super();
let string = obj.downcast_ref::<NSString>().unwrap();
// Or with `downcast`, if we do not need the object afterwards
let string = obj.downcast::<NSString>().unwrap();Try (and fail) to cast an NSObject to an NSString.
use objc2_foundation::{NSObject, NSString};
let obj = NSObject::new();
assert!(obj.downcast_ref::<NSString>().is_none());Try to cast to an array of strings.
use objc2_foundation::{NSArray, NSObject, NSString};
let arr = NSArray::from_retained_slice(&[NSObject::new()]);
// This is invalid and doesn't type check.
let arr = arr.downcast_ref::<NSArray<NSString>>();This fails to compile, since it would require enumerating over the array to ensure that each element is of the desired type, which is a performance pitfall.
Downcast when processing each element instead.
use objc2_foundation::{NSArray, NSObject, NSString};
let arr = NSArray::from_retained_slice(&[NSObject::new()]);
for elem in arr {
if let Some(data) = elem.downcast_ref::<NSString>() {
// handle `data`
}
}Trait Implementations§
Source§impl AsRef<AnyObject> for SKFieldNode
impl AsRef<AnyObject> for SKFieldNode
Source§impl AsRef<NSObject> for SKFieldNode
impl AsRef<NSObject> for SKFieldNode
Source§impl AsRef<NSResponder> for SKFieldNode
impl AsRef<NSResponder> for SKFieldNode
Source§fn as_ref(&self) -> &NSResponder
fn as_ref(&self) -> &NSResponder
Source§impl AsRef<SKFieldNode> for SKFieldNode
impl AsRef<SKFieldNode> for SKFieldNode
Source§impl AsRef<SKNode> for SKFieldNode
impl AsRef<SKNode> for SKFieldNode
Source§impl Borrow<AnyObject> for SKFieldNode
impl Borrow<AnyObject> for SKFieldNode
Source§impl Borrow<NSObject> for SKFieldNode
impl Borrow<NSObject> for SKFieldNode
Source§impl Borrow<NSResponder> for SKFieldNode
impl Borrow<NSResponder> for SKFieldNode
Source§fn borrow(&self) -> &NSResponder
fn borrow(&self) -> &NSResponder
Source§impl Borrow<SKNode> for SKFieldNode
impl Borrow<SKNode> for SKFieldNode
Source§impl ClassType for SKFieldNode
impl ClassType for SKFieldNode
Source§const NAME: &'static str = "SKFieldNode"
const NAME: &'static str = "SKFieldNode"
Source§type ThreadKind = <<SKFieldNode as ClassType>::Super as ClassType>::ThreadKind
type ThreadKind = <<SKFieldNode as ClassType>::Super as ClassType>::ThreadKind
Source§impl CopyingHelper for SKFieldNode
impl CopyingHelper for SKFieldNode
Source§type Result = SKFieldNode
type Result = SKFieldNode
Self if the type has no
immutable counterpart. Read moreSource§impl Debug for SKFieldNode
impl Debug for SKFieldNode
Source§impl Deref for SKFieldNode
impl Deref for SKFieldNode
Source§impl Hash for SKFieldNode
impl Hash for SKFieldNode
Source§impl Message for SKFieldNode
impl Message for SKFieldNode
Source§impl NSCoding for SKFieldNode
impl NSCoding for SKFieldNode
Source§impl NSCopying for SKFieldNode
impl NSCopying for SKFieldNode
Source§impl NSObjectProtocol for SKFieldNode
impl NSObjectProtocol for SKFieldNode
Source§fn isEqual(&self, other: Option<&AnyObject>) -> bool
fn isEqual(&self, other: Option<&AnyObject>) -> bool
Source§fn hash(&self) -> usize
fn hash(&self) -> usize
Source§fn isKindOfClass(&self, cls: &AnyClass) -> bool
fn isKindOfClass(&self, cls: &AnyClass) -> bool
Source§fn is_kind_of<T>(&self) -> bool
fn is_kind_of<T>(&self) -> bool
isKindOfClass directly, or cast your objects with AnyObject::downcast_refSource§fn isMemberOfClass(&self, cls: &AnyClass) -> bool
fn isMemberOfClass(&self, cls: &AnyClass) -> bool
Source§fn respondsToSelector(&self, aSelector: Sel) -> bool
fn respondsToSelector(&self, aSelector: Sel) -> bool
Source§fn conformsToProtocol(&self, aProtocol: &AnyProtocol) -> bool
fn conformsToProtocol(&self, aProtocol: &AnyProtocol) -> bool
Source§fn debugDescription(&self) -> Retained<NSObject>
fn debugDescription(&self) -> Retained<NSObject>
Source§impl NSSecureCoding for SKFieldNode
impl NSSecureCoding for SKFieldNode
Source§impl PartialEq for SKFieldNode
impl PartialEq for SKFieldNode
Source§impl RefEncode for SKFieldNode
impl RefEncode for SKFieldNode
Source§const ENCODING_REF: Encoding = <SKNode as ::objc2::RefEncode>::ENCODING_REF
const ENCODING_REF: Encoding = <SKNode as ::objc2::RefEncode>::ENCODING_REF
impl DowncastTarget for SKFieldNode
impl Eq for SKFieldNode
Auto Trait Implementations§
impl !Freeze for SKFieldNode
impl !RefUnwindSafe for SKFieldNode
impl !Send for SKFieldNode
impl !Sync for SKFieldNode
impl !Unpin for SKFieldNode
impl !UnwindSafe for SKFieldNode
Blanket Implementations§
Source§impl<T> BorrowMut<T> for Twhere
T: ?Sized,
impl<T> BorrowMut<T> for Twhere
T: ?Sized,
Source§fn borrow_mut(&mut self) -> &mut T
fn borrow_mut(&mut self) -> &mut T
Source§impl<'a, T> MainThreadOnly for T
impl<'a, T> MainThreadOnly for T
Source§fn mtm(&self) -> MainThreadMarker
fn mtm(&self) -> MainThreadMarker
MainThreadMarker from the main-thread-only object. Read more