#ifndef BUTTONNODE_H
#define BUTTONNODE_H

#include "scene/meshnode.h"
#include "scene/gui/guinode.h"
#include "scene/gui/callback.h"
#include "scene/textnode.h"
#include "scene/gui/labelnode.h"

class ButtonShape;
class BackGroundNode;

class ButtonNode : public GUINode
{
    int m_action;
    ButtonShape* m_shape;
    CallBack* m_callback;

    LabelNode* m_label;
    glm::vec2 m_label_position;
public:
    ButtonNode(ButtonShape* shape);
    BackGroundNode* getBackGround();
    glm::vec2 getDimension();
    void setCallBack(CallBack* callback){m_callback=callback;}
    void setAction(int action){m_action=action;}
    LabelNode* getLabel();
    void update();
};

#endif // BUTTONNODE_H
