#ifndef _CTEXTBUTTON_HPP_ #define _CTEXTBUTTON_HPP_ /*** SDL Header Files ***/ #include /*** Custom Header Files ***/ #include "cButton.hpp" #include "cLabel.hpp" #include "GUIHelpers/Enums.hpp" #include "GUIHelpers/GUIUtility.hpp" #include "../VideoEngine/cSprite.hpp" #include "../VideoEngine/cImage.hpp" #include "../MathEngine/iVector/iVector2.hpp" /*** DLL Header File ***/ #include "dllExport.h" /*** Custom Header Files ***/ #include "../UtilityEngine/cString.hpp" using UtilityEngine::cString; namespace GUIEngine { class EXPORT_FROM_MYDLL cTextButton : public cButton { public: static const cString sNAME; /*= "button";*/ cTextButton( cWindow* parent, const signed int id, const cString& text, const GUIHelpers::eAlign& align = GUIHelpers::eAlign::CENTER, const GUIHelpers::eLayout& layout = GUIHelpers::eLayout::FILL_PARENT, const GUIHelpers::Position& pos = sPOSITION, const GUIHelpers::Size& size = sSIZE, const GUIHelpers::Padding& padding = sPADDING, const cString& name = sNAME ); virtual ~cTextButton(); /// Functions void Create( cWindow* parent, const signed int id, const cString& text, const GUIHelpers::eAlign& align = GUIHelpers::eAlign::CENTER, const GUIHelpers::eLayout& layout = GUIHelpers::eLayout::FILL_PARENT, const GUIHelpers::Position& pos = sPOSITION, const GUIHelpers::Size& size = sSIZE, const GUIHelpers::Padding& padding = sPADDING, const cString& name = sNAME ); /// Sets void setText( const cString& text ); void setTextColour( const GUIHelpers::RGBA& colour ); void setTextSize( const unsigned long int size ); /// Gets const cString& getText() const; const GUIHelpers::RGBA& getTextColour(); const unsigned long int getTextSize(); virtual const GUIHelpers::eType getType() const; private: void CreateLabel(); void GenerateImage(); void GenerateTexture(); private: cLabel m_label;/// = nullptr };/// END CLASS DEFINITION cButton }/// END NAMESPACE DEFINITION GUIEngine #endif/// END IFNDEF _CBUTTON_HPP_