From 8a408f9951ed5d345a7ec8c0601a3fde92352fe2 Mon Sep 17 00:00:00 2001 From: samuele3 Date: Wed, 20 Nov 2013 12:04:47 +0800 Subject: [PATCH 1/2] Add doxygen comments for the CocoStudio --- .../editor-support/cocostudio/CCActionFrame.h | 27 ++++- .../cocostudio/CCActionFrameEasing.h | 4 + .../cocostudio/CCActionManagerEx.h | 7 ++ .../editor-support/cocostudio/CCActionNode.h | 4 + .../cocostudio/CCActionObject.h | 4 + cocos/editor-support/cocostudio/CCArmature.h | 41 ++++++- .../cocostudio/CCArmatureAnimation.h | 6 + cocos/editor-support/cocostudio/CCBatchNode.h | 11 +- cocos/editor-support/cocostudio/CCBone.h | 8 +- .../cocostudio/CCColliderDetector.h | 7 +- .../cocostudio/CCComAttribute.h | 4 +- .../cocostudio/CCComController.h | 3 + cocos/editor-support/cocostudio/CCComRender.h | 3 + .../cocostudio/CCDataReaderHelper.h | 5 +- cocos/editor-support/cocostudio/CCDatas.h | 51 ++++++-- .../cocostudio/CCDecorativeDisplay.h | 12 +- .../cocostudio/CCDisplayFactory.h | 5 +- .../cocostudio/CCDisplayManager.h | 12 +- .../cocostudio/CCInputDelegate.h | 112 ++++++++++-------- .../editor-support/cocostudio/CCProcessBase.h | 12 +- .../editor-support/cocostudio/CCSGUIReader.h | 20 ++++ .../cocostudio/CCSSceneReader.h | 4 + cocos/editor-support/cocostudio/CCSkin.h | 12 +- .../cocostudio/CCSpriteFrameCacheHelper.h | 11 +- .../cocostudio/CCTransformHelp.h | 2 + cocos/editor-support/cocostudio/CCTween.h | 11 +- .../cocostudio/CCTweenFunction.h | 5 +- .../cocostudio/CSContentJsonDictionary.h | 5 +- .../cocostudio/DictionaryHelper.h | 5 +- cocos/gui/UIButton.h | 7 +- cocos/gui/UICheckBox.h | 12 +- cocos/gui/UIHelper.h | 4 - cocos/gui/UIImageView.h | 24 +++- cocos/gui/UIInputManager.h | 5 +- cocos/gui/UILabel.h | 7 +- cocos/gui/UILabelBMFont.h | 7 +- cocos/gui/UILayer.h | 31 ++++- cocos/gui/UILayout.h | 8 +- cocos/gui/UILayoutParameter.h | 12 +- cocos/gui/UIListView.h | 3 + cocos/gui/UILoadingBar.h | 8 +- cocos/gui/UIPageView.h | 23 +++- cocos/gui/UIRootWidget.h | 6 +- cocos/gui/UIScrollView.h | 3 + cocos/gui/UISlider.h | 7 +- cocos/gui/UITextField.h | 19 ++- cocos/gui/UIWidget.h | 24 +++- 47 files changed, 447 insertions(+), 176 deletions(-) diff --git a/cocos/editor-support/cocostudio/CCActionFrame.h b/cocos/editor-support/cocostudio/CCActionFrame.h index c928db23cd..4d5b6570ca 100644 --- a/cocos/editor-support/cocostudio/CCActionFrame.h +++ b/cocos/editor-support/cocostudio/CCActionFrame.h @@ -39,6 +39,10 @@ enum FrameType kKeyframeMax }; +/** + * @js NA + * @lua NA + */ class ActionFrame:public cocos2d::Object { @@ -125,6 +129,10 @@ protected: float _fTime; }; +/** + * @js NA + * @lua NA + */ class ActionMoveFrame:public ActionFrame { public: @@ -165,6 +173,10 @@ protected: cocos2d::Point _position; }; +/** + * @js NA + * @lua NA + */ class ActionScaleFrame:public ActionFrame { public: @@ -219,7 +231,10 @@ protected: float _scaleX; float _scaleY; }; - +/** + * @js NA + * @lua NA + */ class ActionRotationFrame:public ActionFrame { public: @@ -259,7 +274,10 @@ public: protected: float _rotation; }; - +/** + * @js NA + * @lua NA + */ class ActionFadeFrame:public ActionFrame { public: @@ -299,7 +317,10 @@ public: protected: float _opacity; }; - +/** + * @js NA + * @lua NA + */ class ActionTintFrame:public ActionFrame { diff --git a/cocos/editor-support/cocostudio/CCActionFrameEasing.h b/cocos/editor-support/cocostudio/CCActionFrameEasing.h index 8e3fa2c1f4..219c3be679 100644 --- a/cocos/editor-support/cocostudio/CCActionFrameEasing.h +++ b/cocos/editor-support/cocostudio/CCActionFrameEasing.h @@ -53,6 +53,10 @@ enum FrameEasingType kframeEasingBackInOut, }; +/** + * @js NA + * @lua NA + */ class ActionFrameEasing:public cocos2d::Object { protected: diff --git a/cocos/editor-support/cocostudio/CCActionManagerEx.h b/cocos/editor-support/cocostudio/CCActionManagerEx.h index 3e5bb8511c..29e50d6189 100644 --- a/cocos/editor-support/cocostudio/CCActionManagerEx.h +++ b/cocos/editor-support/cocostudio/CCActionManagerEx.h @@ -37,21 +37,28 @@ public: /** * Default constructor + * @js ctor */ ActionManagerEx(); /** * Default destructor + * @js NA + * @lua NA */ virtual ~ActionManagerEx(); /** * Gets the static instance of ActionManager. + * @js getInstance + * @lua getInstance */ static ActionManagerEx* shareManager(); /** * Purges ActionManager point. + * @js purge + * @lua destroyActionManager */ static void purgeActionManager(); diff --git a/cocos/editor-support/cocostudio/CCActionNode.h b/cocos/editor-support/cocostudio/CCActionNode.h index fc081cfb8f..62cd5169cb 100644 --- a/cocos/editor-support/cocostudio/CCActionNode.h +++ b/cocos/editor-support/cocostudio/CCActionNode.h @@ -31,6 +31,10 @@ namespace cocostudio { +/** + * @js NA + * @lua NA + */ class ActionNode:public cocos2d::Object { public: diff --git a/cocos/editor-support/cocostudio/CCActionObject.h b/cocos/editor-support/cocostudio/CCActionObject.h index 8118fc5cf7..f9c5d176e6 100644 --- a/cocos/editor-support/cocostudio/CCActionObject.h +++ b/cocos/editor-support/cocostudio/CCActionObject.h @@ -31,6 +31,10 @@ namespace cocostudio { +/** + * @js NA + * @lua NA + */ class ActionObject:public cocos2d::Object { public: diff --git a/cocos/editor-support/cocostudio/CCArmature.h b/cocos/editor-support/cocostudio/CCArmature.h index 3ace91b05e..f9769434d7 100644 --- a/cocos/editor-support/cocostudio/CCArmature.h +++ b/cocos/editor-support/cocostudio/CCArmature.h @@ -89,6 +89,9 @@ public: static Armature *create(const char *name, Bone *parentBone); public: + /** + * @js ctor + */ Armature(); /** * @js NA @@ -159,8 +162,15 @@ public: virtual void draw() override; virtual const cocos2d::AffineTransform& getNodeToParentTransform() const override; - + /** + * @js NA + * @lua NA + */ inline void setBlendFunc(const cocos2d::BlendFunc &blendFunc) override { _blendFunc = blendFunc; } + /** + * @js NA + * @lua NA + */ inline const cocos2d::BlendFunc &getBlendFunc(void) const override{ return _blendFunc; } @@ -199,13 +209,31 @@ public: #if ENABLE_PHYSICS_BOX2D_DETECT virtual b2Fixture *getShapeList(); - + /** + * @js NA + * @lua NA + */ virtual void setBody(b2Body *body); + /** + * @js NA + * @lua NA + */ virtual b2Body *getBody() const; #elif ENABLE_PHYSICS_CHIPMUNK_DETECT + /** + * @js NA + * @lua NA + */ virtual cpShape *getShapeList(); - + /** + * @js NA + * @lua NA + */ virtual void setBody(cpBody *body); + /** + * @js NA + * @lua NA + */ virtual cpBody *getBody() const; #endif @@ -213,10 +241,15 @@ protected: /* * Used to create Bone internal + * @js NA + * @lua NA */ Bone *createBone(const char *boneName ); - //! Update blend function + /**! Update blend function + * @js NA + * @lua NA + */ void updateBlendType(BlendType blendType); protected: diff --git a/cocos/editor-support/cocostudio/CCArmatureAnimation.h b/cocos/editor-support/cocostudio/CCArmatureAnimation.h index 040c316672..9d87a11ab7 100644 --- a/cocos/editor-support/cocostudio/CCArmatureAnimation.h +++ b/cocos/editor-support/cocostudio/CCArmatureAnimation.h @@ -236,16 +236,22 @@ protected: /** * Update(float dt) will call this handler, you can handle your logic here + * @js NA + * @lua NA */ void updateHandler(); /** * Update current key frame, and process auto stop, pause + * @js NA + * @lua NA */ void updateFrameData(float currentPercent); /** * Emit a frame event + * @js NA + * @lua NA */ void frameEvent(Bone *bone, const char *frameEventName, int originFrameIndex, int currentFrameIndex); diff --git a/cocos/editor-support/cocostudio/CCBatchNode.h b/cocos/editor-support/cocostudio/CCBatchNode.h index fa654a19ba..f40690c770 100644 --- a/cocos/editor-support/cocostudio/CCBatchNode.h +++ b/cocos/editor-support/cocostudio/CCBatchNode.h @@ -38,14 +38,23 @@ public: * @js ctor */ BatchNode(); + /** + * @ js NA + * @ lua NA + */ ~BatchNode(); - + /** + * @js NA + */ virtual bool init() override; virtual void addChild(cocos2d::Node *pChild) override; virtual void addChild(cocos2d::Node *pChild, int zOrder) override; virtual void addChild(cocos2d::Node *pChild, int zOrder, int tag) override; virtual void removeChild(cocos2d::Node* child, bool cleanup) override; virtual void visit() override; + /** + * @js NA + */ void draw() override; virtual cocos2d::TextureAtlas *getTexureAtlasWithTexture(cocos2d::Texture2D *texture) const; diff --git a/cocos/editor-support/cocostudio/CCBone.h b/cocos/editor-support/cocostudio/CCBone.h index 8a603c1ad3..815d60ceb8 100644 --- a/cocos/editor-support/cocostudio/CCBone.h +++ b/cocos/editor-support/cocostudio/CCBone.h @@ -53,6 +53,9 @@ public: static Bone *create(const char *name); public: + /** + * @js ctor + */ Bone(); /** * @js NA @@ -173,12 +176,15 @@ public: virtual Armature *getChildArmature() const; virtual DisplayManager *getDisplayManager() const { return _displayManager; } - + /** + * @lua NA + */ virtual void setIgnoreMovementBoneData(bool ignore) { _ignoreMovementBoneData = ignore; } virtual bool isIgnoreMovementBoneData() const { return _ignoreMovementBoneData; } /* * This function is deprecated, please use isIgnoreMovementBoneData() + * @lua NA */ CC_DEPRECATED_ATTRIBUTE virtual bool getIgnoreMovementBoneData() const { return isIgnoreMovementBoneData(); } diff --git a/cocos/editor-support/cocostudio/CCColliderDetector.h b/cocos/editor-support/cocostudio/CCColliderDetector.h index 3e9277f3e8..29221af2a0 100644 --- a/cocos/editor-support/cocostudio/CCColliderDetector.h +++ b/cocos/editor-support/cocostudio/CCColliderDetector.h @@ -46,7 +46,10 @@ namespace cocostudio { class Bone; - +/** + * @js NA + * @lua NA + */ class ColliderFilter { public: @@ -124,6 +127,8 @@ private: /* * @brief ContourSprite used to draw the contour of the display + * @js NA + * @lua NA */ class ColliderDetector : public cocos2d::Object { diff --git a/cocos/editor-support/cocostudio/CCComAttribute.h b/cocos/editor-support/cocostudio/CCComAttribute.h index dea396c121..ccd797fba9 100644 --- a/cocos/editor-support/cocostudio/CCComAttribute.h +++ b/cocos/editor-support/cocostudio/CCComAttribute.h @@ -57,7 +57,9 @@ public: float getFloat(const char *key) const; bool getBool(const char *key) const; const char* getCString(const char *key) const; - + /** + * @js NA + */ JsonDictionary* getDict() const; private: diff --git a/cocos/editor-support/cocostudio/CCComController.h b/cocos/editor-support/cocostudio/CCComController.h index a6a877f77e..d1778b84e6 100644 --- a/cocos/editor-support/cocostudio/CCComController.h +++ b/cocos/editor-support/cocostudio/CCComController.h @@ -33,6 +33,9 @@ namespace cocostudio { class ComController : public cocos2d::Component, public InputDelegate { public: + /** + * @js ctor + */ ComController(void); public: diff --git a/cocos/editor-support/cocostudio/CCComRender.h b/cocos/editor-support/cocostudio/CCComRender.h index 08c9eff8d9..d35973314c 100644 --- a/cocos/editor-support/cocostudio/CCComRender.h +++ b/cocos/editor-support/cocostudio/CCComRender.h @@ -32,6 +32,9 @@ namespace cocostudio { class ComRender : public cocos2d::Component { protected: + /** + * @js ctor + */ ComRender(void); ComRender(cocos2d::Node *node, const char *comName); /** diff --git a/cocos/editor-support/cocostudio/CCDataReaderHelper.h b/cocos/editor-support/cocostudio/CCDataReaderHelper.h index 33088e0043..227481fca0 100644 --- a/cocos/editor-support/cocostudio/CCDataReaderHelper.h +++ b/cocos/editor-support/cocostudio/CCDataReaderHelper.h @@ -43,7 +43,10 @@ namespace tinyxml2 namespace cocostudio { - +/** + * @js NA + * @lua NA + */ class DataReaderHelper : cocos2d::Object { protected: diff --git a/cocos/editor-support/cocostudio/CCDatas.h b/cocos/editor-support/cocostudio/CCDatas.h index 065726472e..febc44cf1d 100644 --- a/cocos/editor-support/cocostudio/CCDatas.h +++ b/cocos/editor-support/cocostudio/CCDatas.h @@ -58,8 +58,10 @@ public: \ namespace cocostudio { /** -* The base node include a lot of attributes. -*/ + * The base node include a lot of attributes. + * @js NA + * @lua NA + */ class BaseData : public cocos2d::Object { public: @@ -125,7 +127,10 @@ enum DisplayType CS_DISPLAY_MAX }; - +/** + * @js NA + * @lua NA + */ class DisplayData : public cocos2d::Object { public: @@ -147,7 +152,10 @@ public: }; - +/** + * @js NA + * @lua NA + */ class SpriteDisplayData : public DisplayData { public: @@ -179,7 +187,10 @@ public: BaseData skinData; }; - +/** + * @js NA + * @lua NA + */ class ArmatureDisplayData : public DisplayData { public: @@ -209,7 +220,10 @@ public: }; - +/** + * @js NA + * @lua NA + */ class ParticleDisplayData : public DisplayData { public: @@ -238,6 +252,8 @@ public: * BoneData used to init a Bone. * BoneData keeps a DisplayData list, a Bone can have many display to change. * The display information saved in the DisplayData +* @js NA +* @lua NA */ class BoneData : public BaseData { @@ -270,6 +286,8 @@ public: * ArmatureData saved the Armature name and Bonedata needed for the CCBones in this Armature * When we create a Armature, we need to get each Bone's BoneData as it's init information. * So we can get a BoneData from the Dictionary saved in the ArmatureData. +* @js NA +* @lua NA */ class ArmatureData : public cocos2d::Object { @@ -313,7 +331,10 @@ enum BlendType BLEND_ERASE }; - +/** + * @js NA + * @lua NA + */ class FrameData : public BaseData { public: @@ -353,7 +374,10 @@ public: std::string strSoundEffect; }; - +/** + * @js NA + * @lua NA + */ class MovementBoneData : public cocos2d::Object { public: @@ -382,7 +406,10 @@ public: cocos2d::Array frameList; }; - +/** + * @js NA + * @lua NA + */ class MovementData : public cocos2d::Object { public: @@ -442,6 +469,8 @@ public: * AnimationData include all movement infomation for the Armature * The struct is AnimationData -> MovementData -> MovementBoneData -> FrameData * -> MovementFrameData +* @js NA +* @lua NA */ class AnimationData : public cocos2d::Object { @@ -482,6 +511,8 @@ struct ContourVertex2 : public cocos2d::Object /* * ContourData include a contour vertex information +* @js NA +* @lua NA */ class ContourData : public cocos2d::Object { @@ -509,6 +540,8 @@ public: /* * TextureData include a texture's information +* @js NA +* @lua NA */ class TextureData : public cocos2d::Object { diff --git a/cocos/editor-support/cocostudio/CCDecorativeDisplay.h b/cocos/editor-support/cocostudio/CCDecorativeDisplay.h index 0444cae440..8eb09f78c3 100644 --- a/cocos/editor-support/cocostudio/CCDecorativeDisplay.h +++ b/cocos/editor-support/cocostudio/CCDecorativeDisplay.h @@ -35,20 +35,16 @@ THE SOFTWARE. #endif namespace cocostudio { - +/** + * @js NA + * @lua NA + */ class DecorativeDisplay: public cocos2d::Object { public: static DecorativeDisplay *create(); public: - /** - * @js ctor - */ DecorativeDisplay(void); - /** - * @js NA - * @lua NA - */ ~DecorativeDisplay(void); virtual bool init(); diff --git a/cocos/editor-support/cocostudio/CCDisplayFactory.h b/cocos/editor-support/cocostudio/CCDisplayFactory.h index a62329d548..3f6fdd3ff0 100644 --- a/cocos/editor-support/cocostudio/CCDisplayFactory.h +++ b/cocos/editor-support/cocostudio/CCDisplayFactory.h @@ -34,7 +34,10 @@ class Skin; class Bone; class DecorativeDisplay; class DisplayData; - +/** + * @js NA + * @lua NA + */ class DisplayFactory { public: diff --git a/cocos/editor-support/cocostudio/CCDisplayManager.h b/cocos/editor-support/cocostudio/CCDisplayManager.h index 1f1b4190ba..bf08ceaffe 100644 --- a/cocos/editor-support/cocostudio/CCDisplayManager.h +++ b/cocos/editor-support/cocostudio/CCDisplayManager.h @@ -33,21 +33,17 @@ namespace cocostudio { class Bone; -//! DisplayManager manages Bone's display +/**! DisplayManager manages Bone's display + * @js NA + * @lua NA + */ class DisplayManager : public cocos2d::Object { public: static DisplayManager *create(Bone *bone); public: - /** - * @js ctor - */ DisplayManager(); - /** - * @js NA - * @lua NA - */ ~DisplayManager(); bool init(Bone *bone); diff --git a/cocos/editor-support/cocostudio/CCInputDelegate.h b/cocos/editor-support/cocostudio/CCInputDelegate.h index 12d9f50041..4ed72cf038 100644 --- a/cocos/editor-support/cocostudio/CCInputDelegate.h +++ b/cocos/editor-support/cocostudio/CCInputDelegate.h @@ -29,96 +29,114 @@ THE SOFTWARE. namespace cocostudio { +/** + * @lua NA + */ class InputDelegate { protected: /** - * @js NA - * @lua NA + * @js ctor */ InputDelegate(void); /** * @js NA - * @lua NA */ virtual ~InputDelegate(void); public: - /** - * @js NA - * @lua NA - */ virtual bool isTouchEnabled() const; - /** - * @js NA - * @lua NA - */ virtual void setTouchEnabled(bool value); - /** - * @js NA - * @lua NA - */ virtual bool isAccelerometerEnabled() const; - /** - * @js NA - * @lua NA - */ virtual void setAccelerometerEnabled(bool value); - /** - * @js NA - * @lua NA - */ virtual bool isKeypadEnabled() const; - /** - * @js NA - * @lua NA - */ virtual void setKeypadEnabled(bool value); - /** - * @js NA - * @lua NA - */ virtual void setTouchMode(cocos2d::Touch::DispatchMode mode); - /** - * @js NA - * @lua NA - */ virtual cocos2d::Touch::DispatchMode getTouchMode() const; - /** - * @js NA - * @lua NA - */ virtual void setTouchPriority(int priority); - /** - * @js NA - * @lua NA - */ virtual int getTouchPriority() const; /** @deprecated Please override onAcceleration */ + /** + * @js NA + */ CC_DEPRECATED_ATTRIBUTE virtual void didAccelerate(cocos2d::Acceleration* accelerationValue) final { CC_UNUSED_PARAM(accelerationValue); }; // Deprecated touch callbacks. + /** + * @js NA + */ CC_DEPRECATED_ATTRIBUTE virtual bool ccTouchBegan(cocos2d::Touch *pTouch, cocos2d::Event *pEvent) final {CC_UNUSED_PARAM(pTouch); CC_UNUSED_PARAM(pEvent); return false;}; + /** + * @js NA + */ CC_DEPRECATED_ATTRIBUTE virtual void ccTouchMoved(cocos2d::Touch *pTouch, cocos2d::Event *pEvent) final {CC_UNUSED_PARAM(pTouch); CC_UNUSED_PARAM(pEvent);} + /** + * @js NA + * @lua NA + */ CC_DEPRECATED_ATTRIBUTE virtual void ccTouchEnded(cocos2d::Touch *pTouch, cocos2d::Event *pEvent) final {CC_UNUSED_PARAM(pTouch); CC_UNUSED_PARAM(pEvent);} + /** + * @js NA + */ CC_DEPRECATED_ATTRIBUTE virtual void ccTouchCancelled(cocos2d::Touch *pTouch, cocos2d::Event *pEvent) final {CC_UNUSED_PARAM(pTouch); CC_UNUSED_PARAM(pEvent);} - + /** + * @js NA + */ CC_DEPRECATED_ATTRIBUTE virtual void ccTouchesBegan(cocos2d::Set *pTouches, cocos2d::Event *pEvent) final {CC_UNUSED_PARAM(pTouches); CC_UNUSED_PARAM(pEvent);} + /** + * @js NA + */ CC_DEPRECATED_ATTRIBUTE virtual void ccTouchesMoved(cocos2d::Set *pTouches, cocos2d::Event *pEvent) final {CC_UNUSED_PARAM(pTouches); CC_UNUSED_PARAM(pEvent);} + /** + * @js NA + */ CC_DEPRECATED_ATTRIBUTE virtual void ccTouchesEnded(cocos2d::Set *pTouches, cocos2d::Event *pEvent) final {CC_UNUSED_PARAM(pTouches); CC_UNUSED_PARAM(pEvent);} + /** + * @js NA + */ CC_DEPRECATED_ATTRIBUTE virtual void ccTouchesCancelled(cocos2d::Set *pTouches, cocos2d::Event *pEvent) final {CC_UNUSED_PARAM(pTouches); CC_UNUSED_PARAM(pEvent);} - + /** + * @js NA + */ virtual void onAcceleration(cocos2d::Acceleration* acc, cocos2d::Event* event) {}; - + /** + * @js NA + */ virtual void onKeyPressed(cocos2d::EventKeyboard::KeyCode keyCode, cocos2d::Event* event) {}; + /** + * @js NA + */ virtual void onKeyReleased(cocos2d::EventKeyboard::KeyCode keyCode, cocos2d::Event* event) {}; - + /** + * @js NA + */ virtual bool onTouchBegan(cocos2d::Touch *touch, cocos2d::Event *event); + /** + * @js NA + */ virtual void onTouchMoved(cocos2d::Touch *touch, cocos2d::Event *event); + /** + * @js NA + */ virtual void onTouchEnded(cocos2d::Touch *touch, cocos2d::Event *event); + /** + * @js NA + */ virtual void onTouchCancelled(cocos2d::Touch *touch, cocos2d::Event *event); + /** + * @js NA + */ virtual void onTouchesBegan(const std::vector& touches, cocos2d::Event *event); + /** + * @js NA + */ virtual void onTouchesMoved(const std::vector& touches, cocos2d::Event *event); + /** + * @js NA + */ virtual void onTouchesEnded(const std::vector& touches, cocos2d::Event *event); + /** + * @js NA + */ virtual void onTouchesCancelled(const std::vector& touches, cocos2d::Event *event); protected: diff --git a/cocos/editor-support/cocostudio/CCProcessBase.h b/cocos/editor-support/cocostudio/CCProcessBase.h index e763616c38..6f86f79a0e 100644 --- a/cocos/editor-support/cocostudio/CCProcessBase.h +++ b/cocos/editor-support/cocostudio/CCProcessBase.h @@ -46,18 +46,14 @@ enum AnimationType }; - +/** + * @js NA + * @lua NA + */ class ProcessBase : public cocos2d::Object { public: - /** - * @js ctor - */ ProcessBase(void); - /** - * @js NA - * @lua NA - */ virtual ~ProcessBase(void); /** diff --git a/cocos/editor-support/cocostudio/CCSGUIReader.h b/cocos/editor-support/cocostudio/CCSGUIReader.h index 19a37292fd..3b4974d16d 100644 --- a/cocos/editor-support/cocostudio/CCSGUIReader.h +++ b/cocos/editor-support/cocostudio/CCSGUIReader.h @@ -34,14 +34,34 @@ namespace cocostudio { class GUIReader : public cocos2d::Object { public: + /** + * @js ctor + */ GUIReader(); + /** + * @js NA + * @lua NA + */ ~GUIReader(); + /** + * @js getInstance + * @lua getInstance + */ static GUIReader* shareReader(); + /** + * @js purge + */ static void purgeGUIReader(); gui::UIWidget* widgetFromJsonFile(const char* fileName); int getVersionInteger(const char* str); + /** + * @js NA + */ void storeFileDesignSize(const char* fileName, const cocos2d::Size &size); + /** + * @js NA + */ const cocos2d::Size getFileDesignSize(const char* fileName) const; protected: std::string m_strFilePath; diff --git a/cocos/editor-support/cocostudio/CCSSceneReader.h b/cocos/editor-support/cocostudio/CCSSceneReader.h index 3c59adfcb8..f13a19ea79 100644 --- a/cocos/editor-support/cocostudio/CCSSceneReader.h +++ b/cocos/editor-support/cocostudio/CCSSceneReader.h @@ -45,6 +45,10 @@ public: public: static SceneReader* getInstance(); + /** + * @js purge + * @lua destroySceneReader + */ void purgeSceneReader(); static const char* sceneReaderVersion(); cocos2d::Node* createNodeWithSceneFile(const char *pszFileName); diff --git a/cocos/editor-support/cocostudio/CCSkin.h b/cocos/editor-support/cocostudio/CCSkin.h index e740d1eb01..4a944985c6 100644 --- a/cocos/editor-support/cocostudio/CCSkin.h +++ b/cocos/editor-support/cocostudio/CCSkin.h @@ -37,6 +37,9 @@ public: static Skin *createWithSpriteFrameName(const char *pszSpriteFrameName); static Skin *create(const char *pszFileName); public: + /** + * @js ctor + */ Skin(); virtual bool initWithSpriteFrameName(const std::string& spriteFrameName) override; @@ -47,8 +50,15 @@ public: cocos2d::AffineTransform getNodeToWorldTransform() const override; cocos2d::AffineTransform getNodeToWorldTransformAR() const; - + /** + * @js NA + * @lua NA + */ virtual void setSkinData(const BaseData &data); + /** + * @js NA + * @lua NA + */ virtual const BaseData &getSkinData() const; virtual void setBone(Bone *bone); diff --git a/cocos/editor-support/cocostudio/CCSpriteFrameCacheHelper.h b/cocos/editor-support/cocostudio/CCSpriteFrameCacheHelper.h index 81ccf1b1f9..f24f7bbee4 100644 --- a/cocos/editor-support/cocostudio/CCSpriteFrameCacheHelper.h +++ b/cocos/editor-support/cocostudio/CCSpriteFrameCacheHelper.h @@ -31,6 +31,10 @@ using namespace std; namespace cocostudio { +/** + * @js NA + * @lua NA + */ class SpriteFrameCacheHelper { public: @@ -48,14 +52,7 @@ public: void addSpriteFrameFromFile(const char *plistPath, const char *imagePath); private: - /** - * @js ctor - */ SpriteFrameCacheHelper(); - /** - * @js NA - * @lua NA - */ ~SpriteFrameCacheHelper(); static SpriteFrameCacheHelper *_spriteFrameCacheHelper; diff --git a/cocos/editor-support/cocostudio/CCTransformHelp.h b/cocos/editor-support/cocostudio/CCTransformHelp.h index ae1bcbf813..4e3e36e6d6 100644 --- a/cocos/editor-support/cocostudio/CCTransformHelp.h +++ b/cocos/editor-support/cocostudio/CCTransformHelp.h @@ -32,6 +32,8 @@ namespace cocostudio { /* * use to calculate the matrix of node from parent node + * @js NA + * @lua NA */ class TransformHelp { diff --git a/cocos/editor-support/cocostudio/CCTween.h b/cocos/editor-support/cocostudio/CCTween.h index ab8bb3f7ff..9a6357059f 100644 --- a/cocos/editor-support/cocostudio/CCTween.h +++ b/cocos/editor-support/cocostudio/CCTween.h @@ -34,6 +34,10 @@ namespace cocostudio { class Bone; class ArmatureAnimation; +/** + * @js NA + * @lua NA + */ class Tween : public ProcessBase { public: @@ -43,14 +47,7 @@ public: */ static Tween *create(Bone *bone); public: - /** - * @js ctor - */ Tween(void); - /** - * @js NA - * @lua NA - */ virtual ~Tween(void); /** diff --git a/cocos/editor-support/cocostudio/CCTweenFunction.h b/cocos/editor-support/cocostudio/CCTweenFunction.h index ff7ad6016d..dfef81a18b 100644 --- a/cocos/editor-support/cocostudio/CCTweenFunction.h +++ b/cocos/editor-support/cocostudio/CCTweenFunction.h @@ -79,7 +79,10 @@ enum TweenType TWEEN_EASING_MAX = 10000 }; - +/** + * @js NA + * @lua NA + */ class TweenFunction { public: diff --git a/cocos/editor-support/cocostudio/CSContentJsonDictionary.h b/cocos/editor-support/cocostudio/CSContentJsonDictionary.h index cca9ba5ad8..740f1c85be 100644 --- a/cocos/editor-support/cocostudio/CSContentJsonDictionary.h +++ b/cocos/editor-support/cocostudio/CSContentJsonDictionary.h @@ -45,7 +45,10 @@ namespace cocostudio { EDIC_TYPEARRAY, EDIC_TYPEOBJECT }DicItemType; - + /** + * @js NA + * @lua NA + */ class JsonDictionary { public: diff --git a/cocos/editor-support/cocostudio/DictionaryHelper.h b/cocos/editor-support/cocostudio/DictionaryHelper.h index 33aa5802ed..b64909531b 100644 --- a/cocos/editor-support/cocostudio/DictionaryHelper.h +++ b/cocos/editor-support/cocostudio/DictionaryHelper.h @@ -31,7 +31,10 @@ #define DICTOOL DictionaryHelper::shareHelper() namespace cocostudio { - +/** + * @js NA + * @lua NA + */ class DictionaryHelper { public: diff --git a/cocos/gui/UIButton.h b/cocos/gui/UIButton.h index 85f67546f3..229782d5ae 100644 --- a/cocos/gui/UIButton.h +++ b/cocos/gui/UIButton.h @@ -29,20 +29,19 @@ namespace gui{ -/** -* @js NA -* @lua NA -*/ class UIButton : public UIWidget { public: /** * Default constructor + * @js ctor */ UIButton(); /** * Default destructor + * @js NA + * @lua NA */ virtual ~UIButton(); diff --git a/cocos/gui/UICheckBox.h b/cocos/gui/UICheckBox.h index 7fd144c8f3..55d289ecd8 100644 --- a/cocos/gui/UICheckBox.h +++ b/cocos/gui/UICheckBox.h @@ -38,20 +38,19 @@ typedef enum typedef void (cocos2d::Object::*SEL_SelectedStateEvent)(cocos2d::Object*,CheckBoxEventType); #define checkboxselectedeventselector(_SELECTOR) (SEL_SelectedStateEvent)(&_SELECTOR) -/** -* @js NA -* @lua NA -*/ class UICheckBox : public UIWidget { public: /** * Default constructor + * @js ctor */ UICheckBox(); /** * Default destructor + * @js NA + * @lua NA */ virtual ~UICheckBox(); @@ -152,7 +151,10 @@ public: //override "isFlipY" method of widget. virtual bool isFlipY() override; - //override "onTouchEnded" method of widget. + /** override "onTouchEnded" method of widget. + * @js NA + * @lua NA + */ virtual void onTouchEnded(const cocos2d::Point &touchPoint) override; //override "getContentSize" method of widget. diff --git a/cocos/gui/UIHelper.h b/cocos/gui/UIHelper.h index 838875adf4..b2cfd10321 100644 --- a/cocos/gui/UIHelper.h +++ b/cocos/gui/UIHelper.h @@ -27,10 +27,6 @@ namespace gui { -/** -* @js NA -* @lua NA -*/ class UIHelper { public: diff --git a/cocos/gui/UIImageView.h b/cocos/gui/UIImageView.h index cd7d761497..a0a1c38210 100644 --- a/cocos/gui/UIImageView.h +++ b/cocos/gui/UIImageView.h @@ -29,20 +29,19 @@ namespace gui { -/** -* @js NA -* @lua NA -*/ class UIImageView : public UIWidget { public: /** * Default constructor + * @js ctor */ UIImageView(); /** * Default destructor + * @js NA + * @lua NA */ virtual ~UIImageView(); @@ -95,10 +94,16 @@ public: //override "setAnchorPoint" method of widget. virtual void setAnchorPoint(const cocos2d::Point &pt) override; - //override "onTouchBegan" method of widget. + /** override "onTouchBegan" method of widget. + * @js NA + * @lua NA + */ virtual bool onTouchBegan(const cocos2d::Point &touchPoint) override; - //override "onTouchEnded" method of widget. + /** override "onTouchEnded" method of widget. + * @js NA + * @lua NA + */ virtual void onTouchEnded(const cocos2d::Point &touchPoint) override; //override "ignoreContentAdaptWithSize" method of widget. @@ -110,7 +115,14 @@ public: virtual const char* getDescription() const override; void setDoubleClickEnabled(bool able); + /** + * @js NA + * @lua NA + */ void doubleClickEvent(); + /** + * @js NA + */ void checkDoubleClick(float dt); virtual const cocos2d::Size& getContentSize() const override; virtual cocos2d::Node* getVirtualRenderer() override; diff --git a/cocos/gui/UIInputManager.h b/cocos/gui/UIInputManager.h index ed5a931f89..52a1cb4d9f 100644 --- a/cocos/gui/UIInputManager.h +++ b/cocos/gui/UIInputManager.h @@ -29,7 +29,10 @@ #include "gui/UILayout.h" namespace gui { - +/** + * @js NA + * @lua NA + */ class UIInputManager { public: diff --git a/cocos/gui/UILabel.h b/cocos/gui/UILabel.h index 58e6d11a7a..b720f15249 100644 --- a/cocos/gui/UILabel.h +++ b/cocos/gui/UILabel.h @@ -30,20 +30,19 @@ namespace gui { -/** -* @js NA -* @lua NA -*/ class UILabel : public UIWidget { public: /** * Default constructor + * @js ctor */ UILabel(); /** * Default destructor + * @js NA + * @lua NA */ virtual ~UILabel(); diff --git a/cocos/gui/UILabelBMFont.h b/cocos/gui/UILabelBMFont.h index 64695ddd84..c9c9f20b41 100644 --- a/cocos/gui/UILabelBMFont.h +++ b/cocos/gui/UILabelBMFont.h @@ -29,20 +29,19 @@ namespace gui { -/** -* @js NA -* @lua NA -*/ class UILabelBMFont : public UIWidget { public: /** * Default constructor + * @js ctor */ UILabelBMFont(); /** * Default destructor + * @js NA + * @lua NA */ virtual ~UILabelBMFont(); diff --git a/cocos/gui/UILayer.h b/cocos/gui/UILayer.h index 2ed91b77de..b59ad95551 100644 --- a/cocos/gui/UILayer.h +++ b/cocos/gui/UILayer.h @@ -39,11 +39,14 @@ class UILayer : public cocos2d::Layer public: /** * Default constructor + * @js ctor */ UILayer(); /** * Default destructor + * @js NA + * @lua NA */ virtual ~UILayer(); @@ -54,14 +57,36 @@ public: //initializes state of uilayer. virtual bool init() override; - + /** + * @js NA + * @lua NA + */ virtual void onEnter() override; + /** + * @js NA + * @lua NA + */ virtual void onExit() override; virtual void onEnterTransitionDidFinish() override; - + /** + * @js NA + * @lua NA + */ virtual bool onTouchBegan(cocos2d::Touch *pTouch, cocos2d::Event *pEvent); + /** + * @js NA + * @lua NA + */ virtual void onTouchMoved(cocos2d::Touch *pTouch, cocos2d::Event *pEvent); + /** + * @js NA + * @lua NA + */ virtual void onTouchEnded(cocos2d::Touch *pTouch, cocos2d::Event *pEvent); + /** + * @js NA + * @lua NA + */ virtual void onTouchCancelled(cocos2d::Touch *pTouch, cocos2d::Event *pEvent); /** @@ -109,6 +134,8 @@ public: * UIInputManager is the touch manager of UILayer. * * @return UIInputManager. + * @js NA + * @lua NA */ UIInputManager* getInputManager(); diff --git a/cocos/gui/UILayout.h b/cocos/gui/UILayout.h index f53480d4dd..4ee18bf551 100644 --- a/cocos/gui/UILayout.h +++ b/cocos/gui/UILayout.h @@ -44,21 +44,19 @@ typedef enum LAYOUT_RELATIVE }LayoutType; - -/** - * @js NA - * @lua NA - */ class UILayout : public UIWidget { public: /** * Default constructor + * @js ctor */ UILayout(); /** * Default destructor + * @js NA + * @lua NA */ virtual ~UILayout(); diff --git a/cocos/gui/UILayoutParameter.h b/cocos/gui/UILayoutParameter.h index 60a7e387ad..8797b5028f 100644 --- a/cocos/gui/UILayoutParameter.h +++ b/cocos/gui/UILayoutParameter.h @@ -35,20 +35,20 @@ typedef enum LAYOUT_PARAMETER_LINEAR, LAYOUT_PARAMETER_RELATIVE }LayoutParameterType; -/** -* @js NA -* @lua NA -*/ + class UILayoutParameter : public cocos2d::Object { public: /** * Default constructor + * @js ctor */ UILayoutParameter() : _margin(UIMargin()){_layoutParameterType = LAYOUT_PARAMETER_NONE;}; /** * Default destructor + * @js NA + * @lua NA */ virtual ~UILayoutParameter(){}; @@ -64,6 +64,8 @@ public: * @see UIMargin * * @param margin + * @js NA + * @lua NA */ void setMargin(const UIMargin& margin); @@ -73,6 +75,8 @@ public: * @see UIMargin * * @return const UIMargin& + * @js NA + * @lua NA */ const UIMargin& getMargin() const; diff --git a/cocos/gui/UIListView.h b/cocos/gui/UIListView.h index 14b91806b8..440b5b272b 100644 --- a/cocos/gui/UIListView.h +++ b/cocos/gui/UIListView.h @@ -56,11 +56,14 @@ public: /** * Default constructor + * @js ctor */ UIListView(); /** * Default destructor + * @js NA + * @lua NA */ virtual ~UIListView(); diff --git a/cocos/gui/UILoadingBar.h b/cocos/gui/UILoadingBar.h index 0a0f210357..d3e871ed7f 100644 --- a/cocos/gui/UILoadingBar.h +++ b/cocos/gui/UILoadingBar.h @@ -34,20 +34,20 @@ typedef enum LoadingBarTypeLeft, LoadingBarTypeRight }LoadingBarType; -/** -* @js NA -* @lua NA -*/ + class UILoadingBar : public UIWidget { public: /** * Default constructor + * @js ctor */ UILoadingBar(); /** * Default destructor + * @js NA + * @lua NA */ virtual ~UILoadingBar(); diff --git a/cocos/gui/UIPageView.h b/cocos/gui/UIPageView.h index 99ae26deb6..064d37804f 100644 --- a/cocos/gui/UIPageView.h +++ b/cocos/gui/UIPageView.h @@ -49,11 +49,14 @@ class UIPageView : public UILayout , public UIScrollInterface public: /** * Default constructor + * @js ctor */ UIPageView(); /** * Default destructor + * @lua NA + * @js NA */ virtual ~UIPageView(); @@ -127,16 +130,28 @@ public: - //override "onTouchBegan" method of widget. + /**override "onTouchBegan" method of widget. + * @js NA + * @lua NA + */ virtual bool onTouchBegan(const cocos2d::Point &touchPoint) override; - //override "onTouchMoved" method of widget. + /**override "onTouchMoved" method of widget. + * @js NA + * @lua NA + */ virtual void onTouchMoved(const cocos2d::Point &touchPoint) override; - //override "onTouchEnded" method of widget. + /**override "onTouchEnded" method of widget. + * @js NA + * @lua NA + */ virtual void onTouchEnded(const cocos2d::Point &touchPoint) override; - //override "onTouchCancelled" method of widget. + /**override "onTouchCancelled" method of widget. + * @js NA + * @lua NA + */ virtual void onTouchCancelled(const cocos2d::Point &touchPoint) override; //override "update" method of widget. diff --git a/cocos/gui/UIRootWidget.h b/cocos/gui/UIRootWidget.h index c13beb247c..3a50824cf8 100644 --- a/cocos/gui/UIRootWidget.h +++ b/cocos/gui/UIRootWidget.h @@ -30,9 +30,8 @@ namespace gui { /** -* @js NA -* @lua NA -*/ + * @js NA + */ class UIRootWidget : public UILayout { public: @@ -43,6 +42,7 @@ public: /** * Default destructor + * @lua NA */ virtual ~UIRootWidget(); diff --git a/cocos/gui/UIScrollView.h b/cocos/gui/UIScrollView.h index 09fc21a7a8..534531db49 100644 --- a/cocos/gui/UIScrollView.h +++ b/cocos/gui/UIScrollView.h @@ -60,11 +60,14 @@ class UIScrollView : public UILayout , public UIScrollInterface public: /** * Default constructor + * @js ctor */ UIScrollView(); /** * Default destructor + * @lua NA + * @js NA */ virtual ~UIScrollView(); diff --git a/cocos/gui/UISlider.h b/cocos/gui/UISlider.h index d4c09c5fdf..f817f858cd 100644 --- a/cocos/gui/UISlider.h +++ b/cocos/gui/UISlider.h @@ -37,20 +37,19 @@ typedef enum typedef void (cocos2d::Object::*SEL_SlidPercentChangedEvent)(cocos2d::Object*,SliderEventType); #define sliderpercentchangedselector(_SELECTOR) (SEL_SlidPercentChangedEvent)(&_SELECTOR) -/** -* @js NA -* @lua NA -*/ class UISlider : public UIWidget { public: /** * Default constructor + * @js ctor */ UISlider(); /** * Default destructor + * @js NA + * @lua NA */ virtual ~UISlider(); diff --git a/cocos/gui/UITextField.h b/cocos/gui/UITextField.h index 23ee0bcb6b..c6567634af 100644 --- a/cocos/gui/UITextField.h +++ b/cocos/gui/UITextField.h @@ -32,14 +32,18 @@ namespace gui { /** * @js NA - * @lua NA */ class UICCTextField: public cocos2d::TextFieldTTF, public cocos2d::TextFieldDelegate { public: UICCTextField(); + /** + * @lua NA + */ ~UICCTextField(); - + /** + * @lua NA + */ virtual void onEnter(); // static @@ -97,13 +101,18 @@ typedef void (cocos2d::Object::*SEL_TextFieldEvent)(cocos2d::Object*, TextFiledE #define textfieldeventselector(_SELECTOR) (SEL_TextFieldEvent)(&_SELECTOR) /** class UITextField : public UIWidget -* @js NA -* @lua NA -*/ + */ class UITextField : public UIWidget { public: + /** + * @js ctor + */ UITextField(); + /** + * @js NA + * @lua NA + */ virtual ~UITextField(); static UITextField* create(); virtual bool init() override; diff --git a/cocos/gui/UIWidget.h b/cocos/gui/UIWidget.h index 741d580fee..c4572a9b17 100644 --- a/cocos/gui/UIWidget.h +++ b/cocos/gui/UIWidget.h @@ -72,20 +72,20 @@ typedef enum typedef void (cocos2d::Object::*SEL_TouchEvent)(cocos2d::Object*,TouchEventType); #define toucheventselector(_SELECTOR) (SEL_TouchEvent)(&_SELECTOR) -/** -* @js NA -* @lua NA -*/ + class UIWidget : public cocos2d::Object { public: /** * Default constructor + * @js ctor */ UIWidget(void); /** * Default destructor + * @js NA + * @lua NA */ virtual ~UIWidget(); @@ -877,12 +877,22 @@ public: virtual const char* getDescription() const; UIWidget* clone(); - + /** + * @js NA + * @lua NA + */ virtual void onEnter(); + /** + * @js NA + * @lua NA + */ virtual void onExit(); void updateSizeAndPosition(); - + /** + * @js NA + * @lua NA + */ virtual Object* getUserObject() { return _userObject; } /** * @js NA @@ -899,6 +909,8 @@ public: * The UserObject will be released in Node's destructure. * * @param userObject A user assigned Object + * @js NA + * @lua NA */ virtual void setUserObject(Object *userObject); /*temp action*/ From 07ea8647c3185c322137297ba22301354d5e1955 Mon Sep 17 00:00:00 2001 From: samuele3 Date: Wed, 20 Nov 2013 15:07:34 +0800 Subject: [PATCH 2/2] Add doxygen comments for the CocoStudio --- cocos/editor-support/cocostudio/CCBatchNode.h | 4 ++++ cocos/editor-support/cocostudio/CCInputDelegate.h | 1 - cocos/gui/UIWidget.h | 4 ++++ docs/MainPage.h | 2 +- docs/doxygen.config.REMOVED.git-id | 2 +- 5 files changed, 10 insertions(+), 3 deletions(-) diff --git a/cocos/editor-support/cocostudio/CCBatchNode.h b/cocos/editor-support/cocostudio/CCBatchNode.h index f40690c770..0d956b5787 100644 --- a/cocos/editor-support/cocostudio/CCBatchNode.h +++ b/cocos/editor-support/cocostudio/CCBatchNode.h @@ -51,6 +51,10 @@ public: virtual void addChild(cocos2d::Node *pChild, int zOrder) override; virtual void addChild(cocos2d::Node *pChild, int zOrder, int tag) override; virtual void removeChild(cocos2d::Node* child, bool cleanup) override; + /** + * @js NA + * @lua NA + */ virtual void visit() override; /** * @js NA diff --git a/cocos/editor-support/cocostudio/CCInputDelegate.h b/cocos/editor-support/cocostudio/CCInputDelegate.h index 4ed72cf038..c41490a03f 100644 --- a/cocos/editor-support/cocostudio/CCInputDelegate.h +++ b/cocos/editor-support/cocostudio/CCInputDelegate.h @@ -71,7 +71,6 @@ public: CC_DEPRECATED_ATTRIBUTE virtual void ccTouchMoved(cocos2d::Touch *pTouch, cocos2d::Event *pEvent) final {CC_UNUSED_PARAM(pTouch); CC_UNUSED_PARAM(pEvent);} /** * @js NA - * @lua NA */ CC_DEPRECATED_ATTRIBUTE virtual void ccTouchEnded(cocos2d::Touch *pTouch, cocos2d::Event *pEvent) final {CC_UNUSED_PARAM(pTouch); CC_UNUSED_PARAM(pEvent);} /** diff --git a/cocos/gui/UIWidget.h b/cocos/gui/UIWidget.h index c4572a9b17..065f794721 100644 --- a/cocos/gui/UIWidget.h +++ b/cocos/gui/UIWidget.h @@ -613,6 +613,10 @@ public: virtual void setCascadeOpacityEnabled(bool cascadeOpacityEnabled); virtual bool isCascadeColorEnabled(); virtual void setCascadeColorEnabled(bool cascadeColorEnabled); + /** + * @js NA + * @lua NA + */ void setBlendFunc(cocos2d::BlendFunc blendFunc); //cocos action diff --git a/docs/MainPage.h b/docs/MainPage.h index c276249563..de6f39ebc8 100644 --- a/docs/MainPage.h +++ b/docs/MainPage.h @@ -13,7 +13,7 @@ This project is based on the famous "coc - twitter: http://twitter.com/cocos2dx/ - weibo: http://weibo.com/cocos2dx/ - wiki: http://wiki.cocos2d-x.org/ -- show cases: http://www.cocos2d-x.org/projects/cocos2d-x/apps +- show cases: http://www.cocos2d-x.org/games - Tutorials of Cocos2dxSimpleGame - Installation and First run diff --git a/docs/doxygen.config.REMOVED.git-id b/docs/doxygen.config.REMOVED.git-id index a634c4480b..14ac309a26 100644 --- a/docs/doxygen.config.REMOVED.git-id +++ b/docs/doxygen.config.REMOVED.git-id @@ -1 +1 @@ -3bc6566e5802e181c4baf91b8346473653c6d4ea \ No newline at end of file +a245976c7421d00732cd7d3a1e18a09579794c70 \ No newline at end of file