#ifndef __Label__
#define __Label__

#ifndef GUI_DLL 
    #ifdef GUI_BUILD
	    #define GUI_DLL __declspec(dllexport)
    #else
	    #define GUI_DLL __declspec(dllimport)
        #pragma comment(lib, "WindowManager.lib")
    #endif
#endif


#include "Window.h"


class GUI_DLL Label : public Window {
public:
    Label(Window* parent = 0, bool mouseHighlight = false);
    virtual ~Label();

    bool isHighlighted();
    void highlight(bool highlighted);

    bool isMouseHighlightEnabled();
    void enableMouseHighlight(bool mouseHighlight);

protected:
    void onMouseEnter(Event& event);
    void onMouseLeave(Event& event);

    bool _mouseHighlight;
    bool _highlighted;

    Texture* _normalTexture;
    Texture* _highlightedTexture;
};

#endif