Skip to content
This repository

HTTPS clone URL

Subversion checkout URL

You can clone with HTTPS or Subversion.

Download ZIP

GestureRecognizers support for cocos2d, just include category and you are ready to use gesture recognizers. Works with both 2.x and 1.x cocos2d.

branch: master

This branch is 0 commits ahead and 0 commits behind master

Fetching latest commit…

Cannot retrieve the latest commit at this time

README.md

Purpose

CCNode+SFGestureRecognizers is a category designed to simplify adding UIGestureRecognizers support in cocos2d. It removes the need to change cocos2d source code so that you can update your cocos2d anytime new versions are released.

Supported OS & SDK Versions

  • iOS 4.0 (Xcode 4.3, Apple LLVM compiler 3.1)
  • cocos2d version 1.x or 2.x works fine.

ARC Compatibility

CCNode+SFGestureRecognizers automatically works with both ARC and non-ARC projects through conditional compilation. There is no need to exclude CCNode+SFGestureRecognizers files from the ARC validation process, or to convert CCNode+SFGestureRecognizers using the ARC conversion tool.

Installation

To use the CCNode+SFGestureRecognizers category in an app, just drag the category files (demo files and assets are not needed) into your project. Include the CCNode+SFGestureRecognizers.h in your Prefix.pch file so that you can use it everywhere.

Properties

CCNode+SFGestureRecognizers adds following properties / methods to CCNode:

@property (nonatomic, assign) BOOL isTouchEnabled;

Defines if touches are enabled, if you disable it no gesture will be working.

@property (nonatomic, assign) CGRect touchRect;

Defines touchable rectangle in node local coordinate space.

- (void)addGestureRecognizer:(UIGestureRecognizer*)aGestureRecognizer;

Adds gesture recognizer to node.

- (void)removeGestureRecognizer:(UIGestureRecognizer*)aGestureRecognizer;

Removes gesture recognizer from node.

- (NSArray*)gestureRecognizers;

Returns all gesture recognizers that are bound to this node.

- (BOOL)isPointTouchableInArea:(CGPoint)pt;

Tests if point is touchable in selected area without testing children nodes (node must be visible and running to pass this check, isTouchEnabled also has to be set to YES )

- (BOOL)isNodeInTreeTouched:(CGPoint)pt;

Tests if points is touchable in a node or any of its children nodes.

- (BOOL)isPointInArea:(CGPoint)pt;

Tests if point is inside in selected area without testing children nodes (node must be visible and running to pass this check, ignores isTouchEnabled ).

CCNode+SFGestureRecognizers also adds this property in UIGestureRecognizer class:

@property (nonatomic, readonly) CCNode *node;

Node that this gesture is added to.

Something went wrong with that request. Please try again.