Blame | Last modification | View Log | RSS feed
#ifndef __DISPLAYTEXT_H__
#define __DISPLAYTEXT_H__
#include "Display.h"
#include "RenderText.h"
class CDisplayText : public CDisplay
{
public:
CDisplayText ( COverlay *overlay, MyDirect3DDevice9 *device, CyString name, CyString text ) : CDisplay ( overlay, device, name )
{
m_pText = new CRenderText ( 20 );
m_pText->InitFont ( device, TEXT("Ariel"), 20 );
m_pText->SetPosition ( 1, 1 );
m_bNoBorder = true;
AddObject ( m_pText );
SetText(text);
}
virtual void SetSize ( int width, int height, int maxwidth, int maxheight )
{
CDisplay::SetSize ( width, height, maxwidth, maxheight );
m_pText->SetSize ( m_iSizeX, m_iSizeY );
}
virtual void SetSize(int width, int height)
{
CDisplay::SetSize(width, height);
m_pText->SetSize(m_iSizeX, m_iSizeY);
}
void SetText(const CyString &text)
{
m_pText->SetText(text);
}
void SetPosition(int x, int y)
{
if ( x == 0 )
{
x = (m_iMaxWidth / 2) - (m_iSizeX / 2);
m_pText->SetAlignment(DT_CENTER | DT_WORDBREAK);
}
else if ( x < 0 )
{
m_pText->SetAlignment(DT_RIGHT);
x = (m_iMaxWidth + x) - m_iSizeX;
}
if ( y == 0 )
y = (m_iMaxHeight / 2) - 10;
else if ( y < 0 )
y = m_iMaxHeight - 20;
m_pText->SetPosition(x, y);
}
protected:
CRenderText *m_pText;
};
#endif //__DISPLAYMESSAGE_H__