mirror of https://github.com/axmolengine/axmol.git
61 lines
1.1 KiB
C++
61 lines
1.1 KiB
C++
#ifndef __GEARBASE_H__
|
|
#define __GEARBASE_H__
|
|
|
|
#include "FairyGUIMacros.h"
|
|
#include "cocos2d.h"
|
|
#include "tween/EaseType.h"
|
|
|
|
NS_FGUI_BEGIN
|
|
|
|
class GObject;
|
|
class GController;
|
|
class GTweener;
|
|
class ByteBuffer;
|
|
|
|
class GearTweenConfig
|
|
{
|
|
public:
|
|
GearTweenConfig();
|
|
|
|
bool tween;
|
|
EaseType easeType;
|
|
float duration;
|
|
float delay;
|
|
|
|
uint32_t _displayLockToken;
|
|
GTweener* _tweener;
|
|
};
|
|
|
|
class GearBase
|
|
{
|
|
public:
|
|
GearBase(GObject* owner);
|
|
virtual ~GearBase();
|
|
|
|
GController* getController() const { return _controller; }
|
|
void setController(GController* value);
|
|
|
|
GearTweenConfig* getTweenConfig();
|
|
|
|
virtual void updateFromRelations(float dx, float dy);
|
|
virtual void apply();
|
|
virtual void updateState();
|
|
|
|
void setup(ByteBuffer* buffer);
|
|
|
|
static GearBase* create(GObject* owner, int index);
|
|
static bool disableAllTweenEffect;
|
|
|
|
protected:
|
|
virtual void addStatus(const std::string& pageId, ByteBuffer* buffer);
|
|
virtual void init();
|
|
|
|
GObject* _owner;
|
|
GController* _controller;
|
|
GearTweenConfig* _tweenConfig;
|
|
};
|
|
|
|
NS_FGUI_END
|
|
|
|
#endif
|