64 lines
2.0 KiB
C++
64 lines
2.0 KiB
C++
#ifndef _CLABEL_HPP_
|
|
#define _CLABEL_HPP_
|
|
/*** SDL Header Files ***/
|
|
#include <SDL.h>
|
|
|
|
/*** Custom Header Files ***/
|
|
#include "cWindow.hpp"
|
|
|
|
#include "../TextTypeEngine/cText.hpp"
|
|
#include "../VideoEngine/cSprite.hpp"
|
|
|
|
/*** DLL Header File ***/
|
|
#include "dllExport.h"
|
|
|
|
namespace GUIEngine {
|
|
class EXPORT_FROM_MYDLL cLabel : public cWindow
|
|
{
|
|
public:
|
|
static const cString sNAME; /*= "label";*/
|
|
static const GUIHelpers::eLayout sLAYOUT;/* = GUIHelpers::eLayout::WRAP_CONTENT;*/
|
|
|
|
cLabel( cWindow* parent, const signed int id, const cString& label = "", const GUIHelpers::eAlign align = sALIGN,
|
|
const GUIHelpers::eLayout layout = sLAYOUT, const GUIHelpers::Position& pos = sPOSITION, const GUIHelpers::Size& size = sSIZE,
|
|
const GUIHelpers::Padding& padding = sPADDING, const cString& name = sNAME );
|
|
virtual ~cLabel();
|
|
|
|
/// Functions
|
|
void Create( cWindow* parent, const signed int id, const cString& label = "", const GUIHelpers::eAlign align = sALIGN,
|
|
const GUIHelpers::eLayout layout = sLAYOUT, const GUIHelpers::Position& pos = sPOSITION, const GUIHelpers::Size& size = sSIZE,
|
|
const GUIHelpers::Padding& padding = sPADDING, const cString& name = sNAME );
|
|
|
|
virtual void Display();
|
|
|
|
void GenerateTexture();
|
|
|
|
/// Sets
|
|
void setFontColour( const GUIHelpers::RGBA& colour );
|
|
void setFontSize( const unsigned long int size );
|
|
void setText( const cString& text );
|
|
void setFont( const TextTypeEngine::cFont* font );
|
|
|
|
/// Gets
|
|
const GUIHelpers::RGBA& getFontColour() const;
|
|
const unsigned long int getFontSize() const;
|
|
const TextTypeEngine::cFont* getFont() const;
|
|
const cString& getText() const;
|
|
virtual const GUIHelpers::eType getType() const;
|
|
virtual const GUIHelpers::RGBA& getDebugColour() const;
|
|
|
|
|
|
//virtual void Resize();
|
|
virtual void RebuildLayout( const GUIHelpers::eLayout layout );
|
|
|
|
private:
|
|
void SetSize();
|
|
|
|
private:
|
|
/// Variables
|
|
VideoEngine::cSprite m_sprite;
|
|
TextTypeEngine::cText* mp_text;/// = nullptr
|
|
};/// END CLASS DEFINITION cLabel
|
|
}/// END NAMESPACE DEFINITION GUIEngine
|
|
#endif/// END IFNDEF _CLABEL_HPP_
|