cocos2d-x  3.3
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Properties Friends Macros Groups Pages
Widget Class Reference

NA NA More...

#include <UIWidget.h>

Inheritance diagram for Widget:
ProtectedNode LayoutParameterProtocol Node Ref VideoPlayer WebView Button CheckBox EditBox ImageView Layout LoadingBar RichText Slider Text TextAtlas TextBMFont TextField

Public Types

enum  FocusDirection { LEFT, RIGHT, UP, DOWN }
 
enum  PositionType { ABSOLUTE, PERCENT }
 
enum  SizeType { ABSOLUTE, PERCENT }
 
enum  TouchEventType { BEGAN, MOVED, ENDED, CANCELED }
 
enum  TextureResType { LOCAL = 0, PLIST = 1 }
 
enum  BrightStyle { NONE = -1, NORMAL, HIGHLIGHT }
 
typedef std::function< void(Ref
*, Widget::TouchEventType)> 
ccWidgetTouchCallback
 
typedef std::function< void(Ref *)> ccWidgetClickCallback
 
typedef std::function< void(Ref
*, int)> 
ccWidgetEventCallback
 
- Public Types inherited from Node
enum  { FLAGS_TRANSFORM_DIRTY = (1 << 0), FLAGS_CONTENT_SIZE_DIRTY = (1 << 1), FLAGS_DIRTY_MASK = (FLAGS_TRANSFORM_DIRTY | FLAGS_CONTENT_SIZE_DIRTY) }
 

Public Member Functions

 Widget (void)
 Default constructor. More...
 
virtual ~Widget ()
 Default destructor. More...
 
virtual void setEnabled (bool enabled)
 Sets whether the widget is enabled. More...
 
bool isEnabled () const
 Determines if the widget is enabled. More...
 
void setBright (bool bright)
 Sets whether the widget is bright. More...
 
bool isBright () const
 Determines if the widget is bright. More...
 
virtual void setTouchEnabled (bool enabled)
 Sets whether the widget is touch enabled. More...
 
void setBrightStyle (BrightStyle style)
 To set the bright style of widget. More...
 
bool isTouchEnabled () const
 Determines if the widget is touch enabled. More...
 
bool isHighlighted () const
 Determines if the widget is highlighted. More...
 
void setHighlighted (bool hilight)
 Sets whether the widget is hilighted. More...
 
float getLeftInParent ()
 Gets the left boundary position of this widget in parent's coordination system. More...
 
float getLeftBoundary () const
 
float getBottomInParent ()
 Gets the bottom boundary position of this widget in parent's coordination system. More...
 
float getBottomBoundary () const
 
float getRightInParent ()
 Gets the right boundary position of this widget in parent's coordination system. More...
 
float getRightBoundary () const
 
float getTopInParent ()
 Gets the top boundary position of this widget in parent's coordination system. More...
 
float getTopBoundary () const
 
virtual void visit (cocos2d::Renderer *renderer, const Mat4 &parentTransform, uint32_t parentFlags) override
 Visits this node's children and draw them recursively. More...
 
void addTouchEventListener (Ref *target, SEL_TouchEvent selector)
 Sets the touch event target/selector to the widget. More...
 
void addTouchEventListener (const ccWidgetTouchCallback &callback)
 
void addClickEventListener (const ccWidgetClickCallback &callback)
 Set a click event handler to the widget. More...
 
virtual void addCCSEventListener (const ccWidgetEventCallback &callback)
 Set a event handler to the widget in order to use cocostudio editor and framework. More...
 
virtual void setPosition (const Vec2 &pos) override
 Changes the position (x,y) of the widget in OpenGL coordinates. More...
 
void setPositionPercent (const Vec2 &percent)
 Set the percent(x,y) of the widget in OpenGL coordinates. More...
 
const Vec2getPositionPercent () const
 Gets the percent (x,y) of the widget in OpenGL coordinates. More...
 
void setPositionType (PositionType type)
 Changes the position type of the widget. More...
 
PositionType getPositionType () const
 Gets the position type of the widget. More...
 
virtual void setFlippedX (bool flippedX)
 Sets whether the widget should be flipped horizontally or not. More...
 
virtual bool isFlippedX () const
 Returns the flag which indicates whether the widget is flipped horizontally or not. More...
 
virtual void setFlippedY (bool flippedY)
 Sets whether the widget should be flipped vertically or not. More...
 
virtual bool isFlippedY () const
 Return the flag which indicates whether the widget is flipped vertically or not. More...
 
bool isFlipX ()
 
void setFlipX (bool flipX)
 
bool isFlipY ()
 
void setFlipY (bool flipY)
 
virtual void setScaleX (float scaleX) override
 Sets the scale (x) of the node. More...
 
virtual void setScaleY (float scaleY) override
 Sets the scale (y) of the node. More...
 
virtual void setScale (float scale) override
 Sets the scale (x,y,z) of the node. More...
 
virtual void setScale (float scalex, float scaley) override
 Sets the scale (x,y) of the node. More...
 
virtual float getScaleX () const override
 Returns the scale factor on X axis of this node. More...
 
virtual float getScaleY () const override
 Returns the scale factor on Y axis of this node. More...
 
virtual float getScale () const override
 Gets the scale factor of the node, when X and Y have the same scale factor. More...
 
bool clippingParentAreaContainPoint (const Vec2 &pt)
 
bool isClippingParentContainsPoint (const Vec2 &pt)
 
const Vec2getTouchStartPos () const
 
const Vec2getTouchBeganPosition () const
 
const Vec2getTouchMovePos () const
 
const Vec2getTouchMovePosition () const
 
const Vec2getTouchEndPos () const
 
const Vec2getTouchEndPosition () const
 
virtual void setSize (const Size &size)
 Changes the size that is widget's size. More...
 
virtual void setContentSize (const Size &contentSize) override
 Sets the untransformed size of the node. More...
 
virtual void setSizePercent (const Vec2 &percent)
 Changes the percent that is widget's percent size. More...
 
void setSizeType (SizeType type)
 Changes the size type of widget. More...
 
SizeType getSizeType () const
 Gets the size type of widget. More...
 
const SizegetSize () const
 Returns size of widget. More...
 
const SizegetCustomSize () const
 
virtual const SizegetLayoutSize ()
 
const Vec2getSizePercent ()
 Returns size percent of widget. More...
 
virtual bool hitTest (const Vec2 &pt)
 Checks a point if is in widget's space. More...
 
virtual bool onTouchBegan (Touch *touch, Event *unusedEvent)
 
virtual void onTouchMoved (Touch *touch, Event *unusedEvent)
 
virtual void onTouchEnded (Touch *touch, Event *unusedEvent)
 
virtual void onTouchCancelled (Touch *touch, Event *unusedEvent)
 
void setLayoutParameter (LayoutParameter *parameter)
 Sets a LayoutParameter to widget. More...
 
LayoutParametergetLayoutParameter () const override
 Gets LayoutParameter of widget. More...
 
LayoutParametergetLayoutParameter (LayoutParameter::Type type)
 
virtual void ignoreContentAdaptWithSize (bool ignore)
 Note: when you set _ignoreSize to true, no matther you call setContentSize or not, the widget size is always equal to the return value of the member function getVirtualRendererSize. More...
 
bool isIgnoreContentAdaptWithSize () const
 Query whether the widget ignores user deinfed content size or not. More...
 
Vec2 getWorldPosition () const
 Gets world position of widget. More...
 
virtual NodegetVirtualRenderer ()
 Gets the Virtual Renderer of widget. More...
 
virtual Size getVirtualRendererSize () const
 
virtual std::string getDescription () const override
 Returns the "class name" of widget. More...
 
Widgetclone ()
 
virtual void onEnter () override
 Event callback that is invoked every time when Node enters the 'stage'. More...
 
virtual void onExit () override
 Event callback that is invoked every time the Node leaves the 'stage'. More...
 
void updateSizeAndPosition ()
 
void updateSizeAndPosition (const Size &parentSize)
 
void setActionTag (int tag)
 
int getActionTag () const
 
void setPropagateTouchEvents (bool isPropagate)
 Allow widget touch events to propagate to its parents. More...
 
bool isPropagateTouchEvents () const
 Return whether the widget is propagate touch events to its parents or not. More...
 
void setSwallowTouches (bool swallow)
 Specify widget to swallow touches or not. More...
 
bool isSwallowTouches () const
 Return whether the widget is swallowing touch or not. More...
 
bool isFocused () const
 
void setFocused (bool focus)
 
bool isFocusEnabled () const
 
void setFocusEnabled (bool enable)
 
virtual WidgetfindNextFocusedWidget (FocusDirection direction, Widget *current)
 When a widget is in a layout, you could call this method to get the next focused widget within a specified direction. More...
 
void requestFocus ()
 when a widget calls this method, it will get focus immediately. More...
 
WidgetgetCurrentFocusedWidget (bool isWidget)
 no matter what widget object you call this method on , it will return you the exact one focused widget More...
 
WidgetgetCurrentFocusedWidget () const
 
void setUnifySizeEnabled (bool enable)
 
bool isUnifySizeEnabled () const
 
void setCallbackName (const std::string &callbackName)
 callbackName getter and setter. More...
 
const std::string & getCallbackName () const
 
void setCallbackType (const std::string &callbackType)
 callbackType getter and setter. More...
 
const std::string & getCallbackType () const
 
virtual void interceptTouchEvent (TouchEventType event, Widget *sender, Touch *touch)
 
void propagateTouchEvent (TouchEventType event, Widget *sender, Touch *touch)
 Propagate touch events to its parents. More...
 
void onFocusChange (Widget *widgetLostFocus, Widget *widgetGetFocus)
 This method is called when a focus change event happens. More...
 
void dispatchFocusEvent (Widget *widgetLoseFocus, Widget *widgetGetFocus)
 Dispatch a EventFocus through a EventDispatcher. More...
 
- Public Member Functions inherited from ProtectedNode
virtual void cleanup () override
 Stops all running actions and schedulers. More...
 
virtual void onEnterTransitionDidFinish () override
 Event callback that is invoked when the Node enters in the 'stage'. More...
 
virtual void onExitTransitionDidStart () override
 Event callback that is called every time the Node leaves the 'stage'. More...
 
virtual void updateDisplayedOpacity (GLubyte parentOpacity) override
 
virtual void updateDisplayedColor (const Color3B &parentColor) override
 
virtual void disableCascadeColor () override
 
virtual void disableCascadeOpacity () override
 
virtual ~ProtectedNode ()
 
virtual void addProtectedChild (Node *child)
 Adds a child to the container with z-order as 0. More...
 
virtual void addProtectedChild (Node *child, int localZOrder)
 Adds a child to the container with a local z-order. More...
 
virtual void addProtectedChild (Node *child, int localZOrder, int tag)
 Adds a child to the container with z order and tag. More...
 
virtual NodegetProtectedChildByTag (int tag)
 Gets a child from the container with its tag. More...
 
virtual void removeProtectedChild (Node *child, bool cleanup=true)
 Removes a child from the container. More...
 
virtual void removeProtectedChildByTag (int tag, bool cleanup=true)
 Removes a child from the container by tag value. More...
 
virtual void removeAllProtectedChildren ()
 Removes all children from the container with a cleanup. More...
 
virtual void removeAllProtectedChildrenWithCleanup (bool cleanup)
 Removes all children from the container, and do a cleanup to all running actions depending on the cleanup parameter. More...
 
virtual void reorderProtectedChild (Node *child, int localZOrder)
 Reorders a child according to a new z value. More...
 
virtual void sortAllProtectedChildren ()
 Sorts the children array once before drawing, instead of every time when a child is added or reordered. More...
 
- Public Member Functions inherited from Node
virtual bool isRunning () const
 Returns whether or not the node is "running". More...
 
void scheduleUpdateWithPriorityLua (int handler, int priority)
 Schedules for lua script. More...
 
virtual void draw (Renderer *renderer, const Mat4 &transform, uint32_t flags)
 Override this method to draw your own node. More...
 
virtual void draw () final
 
virtual void visit () final
 
virtual ScenegetScene () const
 Returns the Scene that contains the Node. More...
 
virtual Rect getBoundingBox () const
 Returns an AABB (axis-aligned bounding-box) in its parent's coordinate system. More...
 
virtual Rect boundingBox () const
 
virtual void setEventDispatcher (EventDispatcher *dispatcher)
 
virtual EventDispatchergetEventDispatcher () const
 
void setPhysicsBody (PhysicsBody *body)
 set the PhysicsBody that let the sprite effect with physics More...
 
PhysicsBodygetPhysicsBody () const
 get the PhysicsBody the sprite have More...
 
void removeFromPhysicsWorld ()
 remove this node from physics world. More...
 
virtual GLubyte getOpacity () const
 
virtual GLubyte getDisplayedOpacity () const
 
virtual void setOpacity (GLubyte opacity)
 
virtual bool isCascadeOpacityEnabled () const
 
virtual void setCascadeOpacityEnabled (bool cascadeOpacityEnabled)
 
virtual const Color3BgetColor () const
 
virtual const Color3BgetDisplayedColor () const
 
virtual void setColor (const Color3B &color)
 
virtual bool isCascadeColorEnabled () const
 
virtual void setCascadeColorEnabled (bool cascadeColorEnabled)
 
virtual void setOpacityModifyRGB (bool value)
 
virtual bool isOpacityModifyRGB () const
 
void setOnEnterCallback (const std::function< void()> &callback)
 
const std::function< void()> & getOnEnterCallback () const
 
void setOnExitCallback (const std::function< void()> &callback)
 
const std::function< void()> & getOnExitCallback () const
 
void setonEnterTransitionDidFinishCallback (const std::function< void()> &callback)
 
const std::function< void()> & getonEnterTransitionDidFinishCallback () const
 
void setonExitTransitionDidStartCallback (const std::function< void()> &callback)
 
const std::function< void()> & getonExitTransitionDidStartCallback () const
 
unsigned short getCameraMask () const
 get & set camera mask, the node is visible by the camera whose camera flag & node's camera mask is true More...
 
void setCameraMask (unsigned short mask, bool applyChildren=true)
 
virtual ~Node ()
 
virtual bool init ()
 
virtual void setLocalZOrder (int localZOrder)
 LocalZOrder is the 'key' used to sort the node relative to its siblings. More...
 
virtual void setZOrder (int localZOrder)
 
virtual void _setLocalZOrder (int z)
 
virtual int getLocalZOrder () const
 Gets the local Z order of this node. More...
 
virtual int getZOrder () const
 
virtual void setGlobalZOrder (float globalZOrder)
 Defines the oder in which the nodes are renderer. More...
 
virtual float getGlobalZOrder () const
 Returns the Node's Global Z Order. More...
 
virtual void setScaleZ (float scaleZ)
 Changes the scale factor on Z axis of this node. More...
 
virtual float getScaleZ () const
 Returns the scale factor on Z axis of this node. More...
 
virtual void setNormalizedPosition (const Vec2 &position)
 Sets the position (x,y) using values between 0 and 1. More...
 
virtual const Vec2getPosition () const
 Gets the position (x,y) of the node in its parent's coordinate system. More...
 
virtual const Vec2getNormalizedPosition () const
 returns the normalized position More...
 
virtual void setPosition (float x, float y)
 Sets the position (x,y) of the node in its parent's coordinate system. More...
 
virtual void getPosition (float *x, float *y) const
 Gets position in a more efficient way, returns two number instead of a Vec2 object. More...
 
virtual void setPositionX (float x)
 Gets/Sets x or y coordinate individually for position. More...
 
virtual float getPositionX (void) const
 
virtual void setPositionY (float y)
 
virtual float getPositionY (void) const
 
virtual void setPosition3D (const Vec3 &position)
 Sets the position (X, Y, and Z) in its parent's coordinate system. More...
 
virtual Vec3 getPosition3D () const
 returns the position (X,Y,Z) in its parent's coordinate system More...
 
virtual void setPositionZ (float positionZ)
 Sets the 'z' coordinate in the position. More...
 
virtual void setVertexZ (float vertexZ)
 
virtual float getPositionZ () const
 Gets position Z coordinate of this node. More...
 
virtual float getVertexZ () const
 
virtual void setSkewX (float skewX)
 Changes the X skew angle of the node in degrees. More...
 
virtual float getSkewX () const
 Returns the X skew angle of the node in degrees. More...
 
virtual void setSkewY (float skewY)
 Changes the Y skew angle of the node in degrees. More...
 
virtual float getSkewY () const
 Returns the Y skew angle of the node in degrees. More...
 
virtual void setAnchorPoint (const Vec2 &anchorPoint)
 Sets the anchor point in percent. More...
 
virtual const Vec2getAnchorPoint () const
 Returns the anchor point in percent. More...
 
virtual const Vec2getAnchorPointInPoints () const
 Returns the anchorPoint in absolute pixels. More...
 
virtual const SizegetContentSize () const
 Returns the untransformed size of the node. More...
 
virtual void setVisible (bool visible)
 Sets whether the node is visible. More...
 
virtual bool isVisible () const
 Determines if the node is visible. More...
 
virtual void setRotation (float rotation)
 Sets the rotation (angle) of the node in degrees. More...
 
virtual float getRotation () const
 Returns the rotation of the node in degrees. More...
 
virtual void setRotation3D (const Vec3 &rotation)
 Sets the rotation (X,Y,Z) in degrees. More...
 
virtual Vec3 getRotation3D () const
 returns the rotation (X,Y,Z) in degrees. More...
 
virtual void setRotationSkewX (float rotationX)
 Sets the X rotation (angle) of the node in degrees which performs a horizontal rotational skew. More...
 
virtual void setRotationX (float rotationX)
 
virtual float getRotationSkewX () const
 Gets the X rotation (angle) of the node in degrees which performs a horizontal rotation skew. More...
 
virtual float getRotationX () const
 
virtual void setRotationSkewY (float rotationY)
 Sets the Y rotation (angle) of the node in degrees which performs a vertical rotational skew. More...
 
virtual void setRotationY (float rotationY)
 
virtual float getRotationSkewY () const
 Gets the Y rotation (angle) of the node in degrees which performs a vertical rotational skew. More...
 
virtual float getRotationY () const
 
void setOrderOfArrival (int orderOfArrival)
 Sets the arrival order when this node has a same ZOrder with other children. More...
 
int getOrderOfArrival () const
 Returns the arrival order, indicates which children is added previously. More...
 
void setGLServerState (int serverState)
 
int getGLServerState () const
 
virtual void ignoreAnchorPointForPosition (bool ignore)
 Sets whether the anchor point will be (0,0) when you position this node. More...
 
virtual bool isIgnoreAnchorPointForPosition () const
 Gets whether the anchor point will be (0,0) when you position this node. More...
 
virtual void addChild (Node *child)
 Adds a child to the container with z-order as 0. More...
 
virtual void addChild (Node *child, int localZOrder)
 Adds a child to the container with a local z-order. More...
 
virtual void addChild (Node *child, int localZOrder, int tag)
 Adds a child to the container with z order and tag. More...
 
virtual void addChild (Node *child, int localZOrder, const std::string &name)
 Adds a child to the container with z order and tag. More...
 
virtual NodegetChildByTag (int tag) const
 Gets a child from the container with its tag. More...
 
virtual NodegetChildByName (const std::string &name) const
 Gets a child from the container with its name. More...
 
template<typename T >
getChildByName (const std::string &name) const
 Gets a child from the container with its name that can be cast to Type T. More...
 
virtual void enumerateChildren (const std::string &name, std::function< bool(Node *node)> callback) const
 Search the children of the receiving node to perform processing for nodes which share a name. More...
 
virtual Vector< Node * > & getChildren ()
 Returns the array of the node's children. More...
 
virtual const Vector< Node * > & getChildren () const
 
virtual ssize_t getChildrenCount () const
 Returns the amount of children. More...
 
virtual void setParent (Node *parent)
 Sets the parent node. More...
 
virtual NodegetParent ()
 Returns a pointer to the parent node. More...
 
virtual const NodegetParent () const
 
virtual void removeFromParent ()
 Removes this node itself from its parent node with a cleanup. More...
 
virtual void removeFromParentAndCleanup (bool cleanup)
 Removes this node itself from its parent node. More...
 
virtual void removeChild (Node *child, bool cleanup=true)
 Removes a child from the container. More...
 
virtual void removeChildByTag (int tag, bool cleanup=true)
 Removes a child from the container by tag value. More...
 
virtual void removeChildByName (const std::string &name, bool cleanup=true)
 Removes a child from the container by tag value. More...
 
virtual void removeAllChildren ()
 Removes all children from the container with a cleanup. More...
 
virtual void removeAllChildrenWithCleanup (bool cleanup)
 Removes all children from the container, and do a cleanup to all running actions depending on the cleanup parameter. More...
 
virtual void reorderChild (Node *child, int localZOrder)
 Reorders a child according to a new z value. More...
 
virtual void sortAllChildren ()
 Sorts the children array once before drawing, instead of every time when a child is added or reordered. More...
 
virtual int getTag () const
 Returns a tag that is used to identify the node easily. More...
 
virtual void setTag (int tag)
 Changes the tag that is used to identify the node easily. More...
 
virtual std::string getName () const
 Returns a string that is used to identify the node. More...
 
virtual void setName (const std::string &name)
 Changes the name that is used to identify the node easily. More...
 
virtual void * getUserData ()
 Returns a custom user data pointer. More...
 
virtual const void * getUserData () const
 NA NA More...
 
virtual void setUserData (void *userData)
 Sets a custom user data pointer. More...
 
virtual RefgetUserObject ()
 Returns a user assigned Object. More...
 
virtual const RefgetUserObject () const
 NA NA More...
 
virtual void setUserObject (Ref *userObject)
 Returns a user assigned Object. More...
 
GLProgramgetGLProgram () const
 Return the GLProgram (shader) currently used for this node. More...
 
GLProgramgetShaderProgram () const
 
GLProgramStategetGLProgramState () const
 
virtual void setGLProgramState (GLProgramState *glProgramState)
 
virtual void setGLProgram (GLProgram *glprogram)
 Sets the shader program for this node. More...
 
void setShaderProgram (GLProgram *glprogram)
 
virtual void setActionManager (ActionManager *actionManager)
 Sets the ActionManager object that is used by all actions. More...
 
virtual ActionManagergetActionManager ()
 Gets the ActionManager object that is used by all actions. More...
 
virtual const ActionManagergetActionManager () const
 
ActionrunAction (Action *action)
 Executes an action, and returns the action that is executed. More...
 
void stopAllActions ()
 Stops and removes all actions from the running action list . More...
 
void stopAction (Action *action)
 Stops and removes an action from the running action list. More...
 
void stopActionByTag (int tag)
 Removes an action from the running action list by its tag. More...
 
void stopAllActionsByTag (int tag)
 Removes all actions from the running action list by its tag. More...
 
ActiongetActionByTag (int tag)
 Gets an action from the running action list by its tag. More...
 
ssize_t getNumberOfRunningActions () const
 Returns the numbers of actions that are running plus the ones that are schedule to run (actions in actionsToAdd and actions arrays). More...
 
ssize_t numberOfRunningActions () const
 
virtual void setScheduler (Scheduler *scheduler)
 Sets a Scheduler object that is used to schedule all "updates" and timers. More...
 
virtual SchedulergetScheduler ()
 Gets a Sheduler object. More...
 
virtual const SchedulergetScheduler () const
 
bool isScheduled (SEL_SCHEDULE selector)
 Checks whether a selector is scheduled. More...
 
bool isScheduled (const std::string &key)
 Checks whether a lambda function is scheduled. More...
 
void scheduleUpdate (void)
 Schedules the "update" method. More...
 
void scheduleUpdateWithPriority (int priority)
 Schedules the "update" method with a custom priority. More...
 
void unscheduleUpdate (void)
 
void schedule (SEL_SCHEDULE selector, float interval, unsigned int repeat, float delay)
 Schedules a custom selector. More...
 
void schedule (SEL_SCHEDULE selector, float interval)
 Schedules a custom selector with an interval time in seconds. More...
 
void scheduleOnce (SEL_SCHEDULE selector, float delay)
 Schedules a selector that runs only once, with a delay of 0 or larger. More...
 
void scheduleOnce (const std::function< void(float)> &callback, float delay, const std::string &key)
 Schedules a lambda function that runs only once, with a delay of 0 or larger. More...
 
void schedule (SEL_SCHEDULE selector)
 Schedules a custom selector, the scheduled selector will be ticked every frame. More...
 
void schedule (const std::function< void(float)> &callback, const std::string &key)
 Schedules a lambda function. More...
 
void schedule (const std::function< void(float)> &callback, float interval, const std::string &key)
 Schedules a lambda function. More...
 
void schedule (const std::function< void(float)> &callback, float interval, unsigned int repeat, float delay, const std::string &key)
 Schedules a lambda function. More...
 
void unschedule (SEL_SCHEDULE selector)
 Unschedules a custom selector. More...
 
void unschedule (const std::string &key)
 Unschedules a lambda function. More...
 
void unscheduleAllCallbacks ()
 Unschedule all scheduled selectors and lambda functions: custom selectors, and the 'update' selector and lambda functions Actions are not affected by this method. More...
 
void unscheduleAllSelectors ()
 
virtual void resume (void)
 Resumes all scheduled selectors, actions and event listeners. More...
 
virtual void pause (void)
 Pauses all scheduled selectors, actions and event listeners. More...
 
void resumeSchedulerAndActions ()
 Resumes all scheduled selectors, actions and event listeners. More...
 
void pauseSchedulerAndActions ()
 Pauses all scheduled selectors, actions and event listeners. More...
 
virtual void update (float delta)
 
virtual void updateTransform ()
 Calls children's updateTransform() method recursively. More...
 
virtual const Mat4getNodeToParentTransform () const
 Returns the matrix that transform the node's (local) space coordinates into the parent's space coordinates. More...
 
virtual AffineTransform getNodeToParentAffineTransform () const
 
virtual void setNodeToParentTransform (const Mat4 &transform)
 Sets the Transformation matrix manually. More...
 
virtual AffineTransform nodeToParentTransform () const
 
virtual const Mat4getParentToNodeTransform () const
 Returns the matrix that transform parent's space coordinates to the node's (local) space coordinates. More...
 
virtual AffineTransform getParentToNodeAffineTransform () const
 
virtual AffineTransform parentToNodeTransform () const
 
virtual Mat4 getNodeToWorldTransform () const
 Returns the world affine transform matrix. More...
 
virtual AffineTransform getNodeToWorldAffineTransform () const
 
virtual AffineTransform nodeToWorldTransform () const
 
virtual Mat4 getWorldToNodeTransform () const
 Returns the inverse world affine transform matrix. More...
 
virtual AffineTransform getWorldToNodeAffineTransform () const
 
virtual AffineTransform worldToNodeTransform () const
 
Vec2 convertToNodeSpace (const Vec2 &worldPoint) const
 Converts a Vec2 to node (local) space coordinates. More...
 
Vec2 convertToWorldSpace (const Vec2 &nodePoint) const
 Converts a Vec2 to world space coordinates. More...
 
Vec2 convertToNodeSpaceAR (const Vec2 &worldPoint) const
 Converts a Vec2 to node (local) space coordinates. More...
 
Vec2 convertToWorldSpaceAR (const Vec2 &nodePoint) const
 Converts a local Vec2 to world space coordinates.The result is in Points. More...
 
Vec2 convertTouchToNodeSpace (Touch *touch) const
 convenience methods which take a Touch instead of Vec2 More...
 
Vec2 convertTouchToNodeSpaceAR (Touch *touch) const
 converts a Touch (world coordinates) into a local coordinate. More...
 
void setAdditionalTransform (Mat4 *additionalTransform)
 Sets an additional transform matrix to the node. More...
 
void setAdditionalTransform (const AffineTransform &additionalTransform)
 
ComponentgetComponent (const std::string &name)
 gets a component by its name More...
 
virtual bool addComponent (Component *component)
 adds a component More...
 
virtual bool removeComponent (const std::string &name)
 removes a component by its name More...
 
virtual bool removeComponent (Component *component)
 removes a component by its pointer More...
 
virtual void removeAllComponents ()
 removes all components More...
 
- Public Member Functions inherited from Ref
void retain ()
 Retains the ownership. More...
 
void release ()
 Releases the ownership immediately. More...
 
Refautorelease ()
 Releases the ownership sometime soon automatically. More...
 
unsigned int getReferenceCount () const
 Returns the Ref's current reference count. More...
 
virtual ~Ref ()
 NA NA More...
 
- Public Member Functions inherited from LayoutParameterProtocol
virtual ~LayoutParameterProtocol ()
 

Static Public Member Functions

static Widgetcreate ()
 Allocates and initializes a widget. More...
 
static void enableDpadNavigation (bool enable)
 
- Static Public Member Functions inherited from ProtectedNode
static ProtectedNodecreate (void)
 
- Static Public Member Functions inherited from Node
static Nodecreate ()
 Allocates and initializes a node. More...
 

Public Attributes

std::function< void(Widget
*, Widget *)> 
onFocusChanged
 When a widget lose/get focus, this method will be called. More...
 
std::function< Widget
*(FocusDirection)> 
onNextFocusedWidget
 use this function to manually specify the next focused widget regards to each direction More...
 
CC_CONSTRUCTOR_ACCESS __pad0__: virtual bool init() override
 
- Public Attributes inherited from ProtectedNode
CC_CONSTRUCTOR_ACCESS __pad0__: ProtectedNode()
 
- Public Attributes inherited from Node
CC_CONSTRUCTOR_ACCESS __pad0__: Node()
 

Protected Member Functions

virtual void onSizeChanged ()
 
virtual void initRenderer ()
 
virtual void onPressStateChangedToNormal ()
 
virtual void onPressStateChangedToPressed ()
 
virtual void onPressStateChangedToDisabled ()
 
void pushDownEvent ()
 
void moveEvent ()
 
virtual void releaseUpEvent ()
 
virtual void cancelUpEvent ()
 
virtual void adaptRenderers ()
 
void updateChildrenDisplayedRGBA ()
 
void copyProperties (Widget *model)
 
virtual WidgetcreateCloneInstance ()
 
virtual void copySpecialProperties (Widget *model)
 
virtual void copyClonedWidgetChildren (Widget *model)
 
WidgetgetWidgetParent ()
 
void updateContentSizeWithTextureSize (const Size &size)
 
bool isAncestorsEnabled ()
 
WidgetgetAncensterWidget (Node *node)
 
bool isAncestorsVisible (Node *node)
 
void cleanupWidget ()
 
LayoutComponentgetOrCreateLayoutComponent ()
 
- Protected Member Functions inherited from ProtectedNode
void insertProtectedChild (Node *child, int z)
 helper that reorder a child More...
 
- Protected Member Functions inherited from Node
void childrenAlloc (void)
 lazy allocs More...
 
void insertChild (Node *child, int z)
 helper that reorder a child More...
 
void detachChild (Node *child, ssize_t index, bool doCleanup)
 Removes a child, call child->onExit(), do cleanup, remove it from children array. More...
 
Vec2 convertToWindowSpace (const Vec2 &nodePoint) const
 Convert cocos2d coordinates to UI windows coordinate. More...
 
Mat4 transform (const Mat4 &parentTransform)
 
uint32_t processParentFlags (const Mat4 &parentTransform, uint32_t parentFlags)
 
virtual void updateCascadeOpacity ()
 
virtual void updateCascadeColor ()
 
virtual void updateColor ()
 
bool doEnumerate (std::string name, std::function< bool(Node *)> callback) const
 
bool doEnumerateRecursive (const Node *node, const std::string &name, std::function< bool(Node *)> callback) const
 
bool isVisitableByVisitingCamera () const
 
void updatePhysicsBodyTransform (Scene *layer)
 
virtual void updatePhysicsBodyPosition (Scene *layer)
 
virtual void updatePhysicsBodyRotation (Scene *layer)
 
virtual void updatePhysicsBodyScale (Scene *scene)
 
- Protected Member Functions inherited from Ref
 Ref ()
 Constructor. More...
 

Protected Attributes

bool _unifySize
 
bool _enabled
 
bool _bright
 
bool _touchEnabled
 
bool _highlight
 
bool _affectByClipping
 
bool _ignoreSize
 
bool _propagateTouchEvents
 
BrightStyle _brightStyle
 
SizeType _sizeType
 
PositionType _positionType
 
int _actionTag
 
Size _customSize
 
Vec2 _sizePercent
 
Vec2 _positionPercent
 
bool _hitted
 
EventListenerTouchOneByOne_touchListener
 
Vec2 _touchBeganPosition
 
Vec2 _touchMovePosition
 
Vec2 _touchEndPosition
 
bool _flippedX
 
bool _flippedY
 
Map< int, LayoutParameter * > _layoutParameterDictionary
 
LayoutParameter::Type _layoutParameterType
 
bool _focused
 
bool _focusEnabled
 
Ref_touchEventListener
 
SEL_TouchEvent _touchEventSelector
 
ccWidgetTouchCallback _touchEventCallback
 
ccWidgetClickCallback _clickEventListener
 
ccWidgetEventCallback _ccEventCallback
 
std::string _callbackType
 
std::string _callbackName
 
- Protected Attributes inherited from ProtectedNode
Vector< Node * > _protectedChildren
 array of children nodes More...
 
bool _reorderProtectedChildDirty
 
- Protected Attributes inherited from Node
float _rotationX
 rotation on the X-axis More...
 
float _rotationY
 rotation on the Y-axis More...
 
float _rotationZ_X
 rotation angle on Z-axis, component X More...
 
float _rotationZ_Y
 rotation angle on Z-axis, component Y More...
 
float _scaleX
 scaling factor on x-axis More...
 
float _scaleY
 scaling factor on y-axis More...
 
float _scaleZ
 scaling factor on z-axis More...
 
Vec2 _position
 position of the node More...
 
float _positionZ
 OpenGL real Z position. More...
 
Vec2 _normalizedPosition
 
bool _usingNormalizedPosition
 
bool _normalizedPositionDirty
 
float _skewX
 skew angle on x-axis More...
 
float _skewY
 skew angle on y-axis More...
 
Vec2 _anchorPointInPoints
 anchor point in points More...
 
Vec2 _anchorPoint
 anchor point normalized (NOT in points) More...
 
Size _contentSize
 untransformed size of the node More...
 
bool _contentSizeDirty
 whether or not the contentSize is dirty More...
 
Mat4 _modelViewTransform
 ModelView transform of the Node. More...
 
Mat4 _transform
 transform More...
 
bool _transformDirty
 transform dirty flag More...
 
Mat4 _inverse
 inverse transform More...
 
bool _inverseDirty
 inverse transform dirty flag More...
 
Mat4 _additionalTransform
 transform More...
 
bool _useAdditionalTransform
 The flag to check whether the additional transform is dirty. More...
 
bool _transformUpdated
 Whether or not the Transform object was updated since the last frame. More...
 
int _localZOrder
 Local order (relative to its siblings) used to sort the node. More...
 
float _globalZOrder
 Global order used to sort the node. More...
 
Vector< Node * > _children
 array of children nodes More...
 
Node_parent
 weak reference to parent node More...
 
int _tag
 a tag. Can be any number you assigned just to identify this node More...
 
std::string _name
 a string label, an user defined string to identify this node More...
 
size_t _hashOfName
 hash value of _name, used for speed in getChildByName More...
 
void * _userData
 A user assingned void pointer, Can be point to any cpp object. More...
 
Ref_userObject
 A user assigned Object. More...
 
GLProgramState_glProgramState
 OpenGL Program State. More...
 
int _orderOfArrival
 used to preserve sequence while sorting children with the same localZOrder More...
 
Scheduler_scheduler
 scheduler used to schedule timers and updates More...
 
ActionManager_actionManager
 a pointer to ActionManager singleton, which is used to handle all the actions More...
 
EventDispatcher_eventDispatcher
 event dispatcher used to dispatch all kinds of events More...
 
bool _running
 is running More...
 
bool _visible
 is this node visible More...
 
bool _ignoreAnchorPointForPosition
 true if the Anchor Vec2 will be (0,0) when you position the Node, false otherwise. More...
 
bool _reorderChildDirty
 children order dirty flag More...
 
bool _isTransitionFinished
 flag to indicate whether the transition was finished More...
 
ComponentContainer_componentContainer
 Dictionary of components. More...
 
PhysicsBody_physicsBody
 the physicsBody the node have More...
 
float _physicsScaleStartX
 the scale x value when setPhysicsBody More...
 
float _physicsScaleStartY
 the scale y value when setPhysicsBody More...
 
GLubyte _displayedOpacity
 
GLubyte _realOpacity
 
Color3B _displayedColor
 
Color3B _realColor
 
bool _cascadeColorEnabled
 
bool _cascadeOpacityEnabled
 
unsigned short _cameraMask
 
std::function< void()> _onEnterCallback
 
std::function< void()> _onExitCallback
 
std::function< void()> _onEnterTransitionDidFinishCallback
 
std::function< void()> _onExitTransitionDidStartCallback
 
- Protected Attributes inherited from Ref
unsigned int _referenceCount
 count of references More...
 

Static Protected Attributes

static Widget_focusedWidget
 store the only one focued widget More...
 
- Static Protected Attributes inherited from Node
static int s_globalOrderOfArrival
 

Friends

class PageView
 

Additional Inherited Members

- Static Public Attributes inherited from Node
static const int INVALID_TAG = -1
 Default tag used for all the nodes. More...
 

Detailed Description

NA NA

Member Typedef Documentation

typedef std::function<void(Ref*)> ccWidgetClickCallback
typedef std::function<void(Ref*, int)> ccWidgetEventCallback
typedef std::function<void(Ref*,Widget::TouchEventType)> ccWidgetTouchCallback

Member Enumeration Documentation

enum BrightStyle
strong
Enumerator
NONE 
NORMAL 
HIGHLIGHT 
enum FocusDirection
strong
Enumerator
LEFT 
RIGHT 
UP 
DOWN 
enum PositionType
strong
Enumerator
ABSOLUTE 
PERCENT 
enum SizeType
strong
Enumerator
ABSOLUTE 
PERCENT 
enum TextureResType
strong
Enumerator
LOCAL 
PLIST 
enum TouchEventType
strong
Enumerator
BEGAN 
MOVED 
ENDED 
CANCELED 

Constructor & Destructor Documentation

Widget ( void  )

Default constructor.

virtual ~Widget ( )
virtual

Default destructor.

Member Function Documentation

virtual void adaptRenderers ( )
inlineprotectedvirtual
virtual void addCCSEventListener ( const ccWidgetEventCallback callback)
virtual

Set a event handler to the widget in order to use cocostudio editor and framework.

void addClickEventListener ( const ccWidgetClickCallback callback)

Set a click event handler to the widget.

void addTouchEventListener ( Ref target,
SEL_TouchEvent  selector 
)

Sets the touch event target/selector to the widget.

void addTouchEventListener ( const ccWidgetTouchCallback callback)
virtual void cancelUpEvent ( )
protectedvirtual
void cleanupWidget ( )
protected
bool clippingParentAreaContainPoint ( const Vec2 pt)
inline
Widget* clone ( )
virtual void copyClonedWidgetChildren ( Widget model)
protectedvirtual

Reimplemented in Layout, ScrollView, PageView, and ListView.

void copyProperties ( Widget model)
protected
virtual void copySpecialProperties ( Widget model)
protectedvirtual
static Widget* create ( )
static

Allocates and initializes a widget.

virtual Widget* createCloneInstance ( )
protectedvirtual
void dispatchFocusEvent ( Widget widgetLoseFocus,
Widget widgetGetFocus 
)

Dispatch a EventFocus through a EventDispatcher.

Parameters
widgetLoseFocusThe widget which lose its focus
widgetGetFocushe widget whihc get its focus
Returns
void
static void enableDpadNavigation ( bool  enable)
static
virtual Widget* findNextFocusedWidget ( FocusDirection  direction,
Widget current 
)
virtual

When a widget is in a layout, you could call this method to get the next focused widget within a specified direction.

If the widget is not in a layout, it will return itself

Parameters
dirthe direction to look for the next focused widget in a layout
currentthe current focused widget
Returns
the next focused widget in a layout

Reimplemented in ScrollView.

int getActionTag ( ) const
Widget* getAncensterWidget ( Node node)
protected
float getBottomBoundary ( ) const
float getBottomInParent ( )
inline

Gets the bottom boundary position of this widget in parent's coordination system.

Returns
The bottom boundary position of this widget.
const std::string& getCallbackName ( ) const
inline
const std::string& getCallbackType ( ) const
inline
Widget* getCurrentFocusedWidget ( bool  isWidget)
inline

no matter what widget object you call this method on , it will return you the exact one focused widget

Parameters
isWidgetif your set isWidget to true, it will return the _realFocusedWidget which is always a widget otherwise, it will return a widget or a layout
Widget* getCurrentFocusedWidget ( ) const
const Size& getCustomSize ( ) const
virtual std::string getDescription ( ) const
overridevirtual

Returns the "class name" of widget.

Reimplemented from Node.

Reimplemented in ScrollView, Layout, Slider, CheckBox, ListView, TextField, Button, PageView, Text, LoadingBar, RichText, ImageView, TextAtlas, and TextBMFont.

LayoutParameter* getLayoutParameter ( ) const
overridevirtual

Gets LayoutParameter of widget.

See also
LayoutParameter
Parameters
typeRelative or Linear
Returns
LayoutParameter

Implements LayoutParameterProtocol.

LayoutParameter* getLayoutParameter ( LayoutParameter::Type  type)
virtual const Size& getLayoutSize ( )
inlinevirtual
float getLeftBoundary ( ) const
float getLeftInParent ( )
inline

Gets the left boundary position of this widget in parent's coordination system.

Returns
The left boundary position of this widget.
LayoutComponent* getOrCreateLayoutComponent ( )
protected
const Vec2& getPositionPercent ( ) const

Gets the percent (x,y) of the widget in OpenGL coordinates.

See also
setPosition(const Vec2&)
Returns
The percent (x,y) of the widget in OpenGL coordinates
PositionType getPositionType ( ) const

Gets the position type of the widget.

See also
PositionType
Returns
type the position type of widget
float getRightBoundary ( ) const
float getRightInParent ( )
inline

Gets the right boundary position of this widget in parent's coordination system.

Returns
The right boundary position of this widget.
virtual float getScale ( ) const
overridevirtual

Gets the scale factor of the node, when X and Y have the same scale factor.

Warning
Assert when _scaleX != _scaleY
See also
setScale(float)
Returns
The scale factor of the node.

Reimplemented from Node.

virtual float getScaleX ( ) const
overridevirtual

Returns the scale factor on X axis of this node.

See also
setScaleX(float)
Returns
The scale factor on X axis.

Reimplemented from Node.

virtual float getScaleY ( ) const
overridevirtual

Returns the scale factor on Y axis of this node.

See also
setScaleY(float)
Returns
The scale factor on Y axis.

Reimplemented from Node.

const Size& getSize ( ) const

Returns size of widget.

Returns
size
const Vec2& getSizePercent ( )

Returns size percent of widget.

Returns
size percent
SizeType getSizeType ( ) const

Gets the size type of widget.

See also
SizeType
Parameters
typethat is widget's size type
float getTopBoundary ( ) const
float getTopInParent ( )
inline

Gets the top boundary position of this widget in parent's coordination system.

Returns
The top boundary position of this widget.
const Vec2& getTouchBeganPosition ( ) const
const Vec2& getTouchEndPos ( ) const
inline
const Vec2& getTouchEndPosition ( ) const
const Vec2& getTouchMovePos ( ) const
inline
const Vec2& getTouchMovePosition ( ) const
const Vec2& getTouchStartPos ( ) const
inline
virtual Node* getVirtualRenderer ( )
virtual

Gets the Virtual Renderer of widget.

For example, a button's Virtual Renderer is it's texture renderer.

Returns
Node pointer.

Reimplemented in Slider, TextField, CheckBox, Button, Text, LoadingBar, ImageView, TextAtlas, and TextBMFont.

virtual Size getVirtualRendererSize ( ) const
virtual
Widget* getWidgetParent ( )
protected
Vec2 getWorldPosition ( ) const

Gets world position of widget.

Returns
world position of widget.
virtual bool hitTest ( const Vec2 pt)
virtual

Checks a point if is in widget's space.

Parameters
point
Returns
true if the point is in widget's space, flase otherwise.

Reimplemented in Slider, and TextField.

virtual void ignoreContentAdaptWithSize ( bool  ignore)
virtual

Note: when you set _ignoreSize to true, no matther you call setContentSize or not, the widget size is always equal to the return value of the member function getVirtualRendererSize.

Parameters
ignore,setmember variabl _ignoreSize to ignore

Reimplemented in Slider, Button, LoadingBar, RichText, and ImageView.

virtual void initRenderer ( )
protectedvirtual
virtual void interceptTouchEvent ( TouchEventType  event,
Widget sender,
Touch touch 
)
virtual

Reimplemented in ScrollView, PageView, and ListView.

bool isAncestorsEnabled ( )
protected
bool isAncestorsVisible ( Node node)
protected
bool isBright ( ) const

Determines if the widget is bright.

Returns
true if the widget is bright, false if the widget is dark.
bool isClippingParentContainsPoint ( const Vec2 pt)
bool isEnabled ( ) const

Determines if the widget is enabled.

Returns
true if the widget is enabled, false if the widget is disabled.
virtual bool isFlippedX ( void  ) const
inlinevirtual

Returns the flag which indicates whether the widget is flipped horizontally or not.

It only flips the texture of the widget, and not the texture of the widget's children. Also, flipping the texture doesn't alter the anchorPoint. If you want to flip the anchorPoint too, and/or to flip the children too use: widget->setScaleX(sprite->getScaleX() * -1);

Returns
true if the widget is flipped horizaontally, false otherwise.
virtual bool isFlippedY ( void  ) const
inlinevirtual

Return the flag which indicates whether the widget is flipped vertically or not.

It only flips the texture of the widget, and not the texture of the widget's children. Also, flipping the texture doesn't alter the anchorPoint. If you want to flip the anchorPoint too, and/or to flip the children too use: widget->setScaleY(widget->getScaleY() * -1);

Returns
true if the widget is flipped vertically, flase otherwise.
bool isFlipX ( )
inline
bool isFlipY ( )
inline
bool isFocused ( ) const
Returns
whether the widget is focused or not
bool isFocusEnabled ( ) const
Returns
true represent the widget could accept focus, false represent the widget couldn't accept focus
bool isHighlighted ( ) const

Determines if the widget is highlighted.

Returns
true if the widget is highlighted, false if the widget is not hignlighted .
bool isIgnoreContentAdaptWithSize ( ) const

Query whether the widget ignores user deinfed content size or not.

Returns
bool
bool isPropagateTouchEvents ( ) const

Return whether the widget is propagate touch events to its parents or not.

Since
v3.3
bool isSwallowTouches ( ) const

Return whether the widget is swallowing touch or not.

Since
v3.3
bool isTouchEnabled ( ) const

Determines if the widget is touch enabled.

Returns
true if the widget is touch enabled, false if the widget is touch disabled.
bool isUnifySizeEnabled ( ) const
Returns
true represent the widget use Unify Size, false represent the widget couldn't use Unify Size
void moveEvent ( )
protected
virtual void onEnter ( )
overridevirtual

Event callback that is invoked every time when Node enters the 'stage'.

If the Node enters the 'stage' with a transition, this event is called when the transition starts. During onEnter you can't access a "sister/brother" node. If you override onEnter, you shall call its parent's one, e.g., Node::onEnter(). NA NA

Reimplemented from ProtectedNode.

Reimplemented in EditBox, ScrollView, Layout, TextField, and PageView.

virtual void onExit ( )
overridevirtual

Event callback that is invoked every time the Node leaves the 'stage'.

If the Node leaves the 'stage' with a transition, this event is called when the transition finishes. During onExit you can't access a sibling node. If you override onExit, you shall call its parent's one, e.g., Node::onExit(). NA NA

Reimplemented from ProtectedNode.

Reimplemented in EditBox, and Layout.

void onFocusChange ( Widget widgetLostFocus,
Widget widgetGetFocus 
)

This method is called when a focus change event happens.

Parameters
widgetLostFocusThe widget which lose its focus
widgetGetFocusThe widget whihc get its focus
Returns
void
virtual void onPressStateChangedToDisabled ( )
protectedvirtual

Reimplemented in Slider, Button, CheckBox, and Text.

virtual void onPressStateChangedToNormal ( )
protectedvirtual

Reimplemented in Slider, Button, CheckBox, and Text.

virtual void onPressStateChangedToPressed ( )
protectedvirtual

Reimplemented in Slider, Button, CheckBox, and Text.

virtual void onSizeChanged ( )
protectedvirtual
virtual bool onTouchBegan ( Touch touch,
Event unusedEvent 
)
virtual

Reimplemented in ScrollView, Slider, TextField, and PageView.

virtual void onTouchCancelled ( Touch touch,
Event unusedEvent 
)
virtual

Reimplemented in ScrollView, Slider, and PageView.

virtual void onTouchEnded ( Touch touch,
Event unusedEvent 
)
virtual

Reimplemented in ScrollView, Slider, and PageView.

virtual void onTouchMoved ( Touch touch,
Event unusedEvent 
)
virtual

Reimplemented in ScrollView, Slider, and PageView.

void propagateTouchEvent ( TouchEventType  event,
Widget sender,
Touch touch 
)

Propagate touch events to its parents.

void pushDownEvent ( )
protected
virtual void releaseUpEvent ( )
protectedvirtual

Reimplemented in CheckBox.

void requestFocus ( )

when a widget calls this method, it will get focus immediately.

void setActionTag ( int  tag)
void setBright ( bool  bright)

Sets whether the widget is bright.

The default value is true, a widget is default to bright

Parameters
visibletrue if the widget is bright, false if the widget is dark.
void setBrightStyle ( BrightStyle  style)

To set the bright style of widget.

See also
BrightStyle
Parameters
styleBrightStyle::NORMAL means the widget is in normal state, BrightStyle::HIGHLIGHT means the widget is in highlight state.
void setCallbackName ( const std::string &  callbackName)
inline

callbackName getter and setter.

void setCallbackType ( const std::string &  callbackType)
inline

callbackType getter and setter.

virtual void setContentSize ( const Size contentSize)
overridevirtual

Sets the untransformed size of the node.

The contentSize remains the same no matter the node is scaled or rotated. All nodes has a size. Layer and Scene has the same size of the screen.

Parameters
contentSizeThe untransformed size of the node.

Reimplemented from Node.

Reimplemented in EditBox.

virtual void setEnabled ( bool  enabled)
virtual

Sets whether the widget is enabled.

true if the widget is enabled, widget may be touched , false if the widget is disabled, widget cannot be touched.

The default value is true, a widget is default to enabled

Parameters
enabled
virtual void setFlippedX ( bool  flippedX)
virtual

Sets whether the widget should be flipped horizontally or not.

Parameters
bFlippedXtrue if the widget should be flipped horizaontally, false otherwise.
virtual void setFlippedY ( bool  flippedY)
virtual

Sets whether the widget should be flipped vertically or not.

Parameters
bFlippedYtrue if the widget should be flipped vertically, flase otherwise.
void setFlipX ( bool  flipX)
inline
void setFlipY ( bool  flipY)
inline
void setFocused ( bool  focus)
Parameters
focuspass true to let the widget get focus or pass false to let the widget lose focus
Returns
void
void setFocusEnabled ( bool  enable)
Parameters
enablepass true/false to enable/disable the focus ability of a widget
Returns
void
void setHighlighted ( bool  hilight)

Sets whether the widget is hilighted.

The default value is false, a widget is default to not hilighted

Parameters
hilighttrue if the widget is hilighted, false if the widget is not hilighted.
void setLayoutParameter ( LayoutParameter parameter)

Sets a LayoutParameter to widget.

See also
LayoutParameter
Parameters
LayoutParameterpointer
typeRelative or Linear
virtual void setPosition ( const Vec2 pos)
overridevirtual

Changes the position (x,y) of the widget in OpenGL coordinates.

Usually we use p(x,y) to compose Vec2 object. The original point (0,0) is at the left-bottom corner of screen.

Parameters
positionThe position (x,y) of the widget in OpenGL coordinates

Reimplemented from Node.

Reimplemented in EditBox.

void setPositionPercent ( const Vec2 percent)

Set the percent(x,y) of the widget in OpenGL coordinates.

Parameters
percentThe percent (x,y) of the widget in OpenGL coordinates
void setPositionType ( PositionType  type)

Changes the position type of the widget.

See also
PositionType
Parameters
typethe position type of widget
void setPropagateTouchEvents ( bool  isPropagate)

Allow widget touch events to propagate to its parents.

Set false will disable propagation

Since
v3.3
virtual void setScale ( float  scale)
overridevirtual

Sets the scale (x,y,z) of the node.

It is a scaling factor that multiplies the width, height and depth of the node and its children.

Parameters
scaleThe scale factor for both X and Y axis.
Warning
The physics body doesn't support this.

Reimplemented from Node.

virtual void setScale ( float  scaleX,
float  scaleY 
)
overridevirtual

Sets the scale (x,y) of the node.

It is a scaling factor that multiplies the width and height of the node and its children.

Parameters
scaleXThe scale factor on X axis.
scaleYThe scale factor on Y axis.
Warning
The physics body doesn't support this.

Reimplemented from Node.

virtual void setScaleX ( float  scaleX)
overridevirtual

Sets the scale (x) of the node.

It is a scaling factor that multiplies the width of the node and its children.

Parameters
scaleXThe scale factor on X axis.
Warning
The physics body doesn't support this.

Reimplemented from Node.

virtual void setScaleY ( float  scaleY)
overridevirtual

Sets the scale (y) of the node.

It is a scaling factor that multiplies the height of the node and its children.

Parameters
scaleYThe scale factor on Y axis.
Warning
The physics body doesn't support this.

Reimplemented from Node.

virtual void setSize ( const Size size)
virtual

Changes the size that is widget's size.

Parameters
sizethat is widget's size
virtual void setSizePercent ( const Vec2 percent)
virtual

Changes the percent that is widget's percent size.

Parameters
percentthat is widget's percent size
void setSizeType ( SizeType  type)

Changes the size type of widget.

See also
SizeType
Parameters
typethat is widget's size type
void setSwallowTouches ( bool  swallow)

Specify widget to swallow touches or not.

Since
v3.3
virtual void setTouchEnabled ( bool  enabled)
virtual

Sets whether the widget is touch enabled.

The default value is false, a widget is default to touch disabled

Parameters
visibletrue if the widget is touch enabled, false if the widget is touch disabled.
void setUnifySizeEnabled ( bool  enable)
Parameters
enableUnify Size of a widget
Returns
void
void updateChildrenDisplayedRGBA ( )
protected
void updateContentSizeWithTextureSize ( const Size size)
protected
void updateSizeAndPosition ( )
void updateSizeAndPosition ( const Size parentSize)
virtual void visit ( cocos2d::Renderer renderer,
const Mat4 parentTransform,
uint32_t  parentFlags 
)
overridevirtual

Visits this node's children and draw them recursively.

Reimplemented from ProtectedNode.

Reimplemented in EditBox, and Layout.

Friends And Related Function Documentation

friend class PageView
friend

Member Data Documentation

int _actionTag
protected
bool _affectByClipping
protected
bool _bright
protected
BrightStyle _brightStyle
protected
std::string _callbackName
protected
std::string _callbackType
protected
ccWidgetEventCallback _ccEventCallback
protected
ccWidgetClickCallback _clickEventListener
protected
Size _customSize
protected
bool _enabled
protected
bool _flippedX
protected
bool _flippedY
protected
bool _focused
protected
Widget* _focusedWidget
staticprotected

store the only one focued widget

bool _focusEnabled
protected
bool _highlight
protected
bool _hitted
protected
bool _ignoreSize
protected
Map<int,LayoutParameter*> _layoutParameterDictionary
protected
LayoutParameter::Type _layoutParameterType
protected
Vec2 _positionPercent
protected
PositionType _positionType
protected
bool _propagateTouchEvents
protected
Vec2 _sizePercent
protected
SizeType _sizeType
protected
Vec2 _touchBeganPosition
protected
bool _touchEnabled
protected
Vec2 _touchEndPosition
protected
ccWidgetTouchCallback _touchEventCallback
protected
Ref* _touchEventListener
protected
SEL_TouchEvent _touchEventSelector
protected
EventListenerTouchOneByOne* _touchListener
protected
Vec2 _touchMovePosition
protected
bool _unifySize
protected
std::function<void(Widget*,Widget*)> onFocusChanged

When a widget lose/get focus, this method will be called.

Be Caution when you provide your own version, you must call widget->setFocused(true/false) to change the focus state of the current focused widget;

std::function<Widget*(FocusDirection)> onNextFocusedWidget

use this function to manually specify the next focused widget regards to each direction


The documentation for this class was generated from the following file: