92 lines
1.7 KiB
C++
92 lines
1.7 KiB
C++
|
|
#include "..\easy2d.h"
|
|||
|
|
#include "..\EasyX\easyx.h"
|
|||
|
|
|
|||
|
|
|
|||
|
|
Text::Text() :
|
|||
|
|
m_sText(_T("")),
|
|||
|
|
m_color(Color::white),
|
|||
|
|
m_pFontStyle(FontStyle::getDefault())
|
|||
|
|
{
|
|||
|
|
m_pFontStyle->retain(); // <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ü<EFBFBD><C3BC><EFBFBD><EFBFBD><EFBFBD>һ
|
|||
|
|
}
|
|||
|
|
|
|||
|
|
Text::Text(TString text, COLORREF color, FontStyle * font) :
|
|||
|
|
m_color(color),
|
|||
|
|
m_pFontStyle(font)
|
|||
|
|
{
|
|||
|
|
setText(text);
|
|||
|
|
m_pFontStyle->retain(); // <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ü<EFBFBD><C3BC><EFBFBD><EFBFBD><EFBFBD>һ
|
|||
|
|
}
|
|||
|
|
|
|||
|
|
Text::Text(int x, int y, TString text, COLORREF color, FontStyle * font) :
|
|||
|
|
m_color(color),
|
|||
|
|
m_pFontStyle(font)
|
|||
|
|
{
|
|||
|
|
setText(text);
|
|||
|
|
setPos(x, y);
|
|||
|
|
m_pFontStyle->retain(); // <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ü<EFBFBD><C3BC><EFBFBD><EFBFBD><EFBFBD>һ
|
|||
|
|
}
|
|||
|
|
|
|||
|
|
Text::~Text()
|
|||
|
|
{
|
|||
|
|
SafeRelease(m_pFontStyle); // <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ü<EFBFBD><C3BC><EFBFBD><EFBFBD><EFBFBD>һ
|
|||
|
|
}
|
|||
|
|
|
|||
|
|
void Text::_onDraw()
|
|||
|
|
{
|
|||
|
|
// <20><> display <20><><EFBFBD><EFBFBD>Ϊ false<73><65><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ı<EFBFBD>
|
|||
|
|
if (!m_bDisplay)
|
|||
|
|
{
|
|||
|
|
return;
|
|||
|
|
}
|
|||
|
|
// <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
|
|||
|
|
settextstyle(&m_pFontStyle->m_font);
|
|||
|
|
// <20><><EFBFBD><EFBFBD><EFBFBD>ı<EFBFBD><C4B1><EFBFBD>ɫ
|
|||
|
|
settextcolor(m_color);
|
|||
|
|
// <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
|
|||
|
|
outtextxy(getX(), getY(), m_sText.c_str());
|
|||
|
|
}
|
|||
|
|
|
|||
|
|
COLORREF Text::getColor() const
|
|||
|
|
{
|
|||
|
|
return m_color;
|
|||
|
|
}
|
|||
|
|
|
|||
|
|
TString Text::getText() const
|
|||
|
|
{
|
|||
|
|
return m_sText;
|
|||
|
|
}
|
|||
|
|
|
|||
|
|
FontStyle * Text::getFontStyle()
|
|||
|
|
{
|
|||
|
|
return m_pFontStyle;
|
|||
|
|
}
|
|||
|
|
|
|||
|
|
bool Text::isEmpty() const
|
|||
|
|
{
|
|||
|
|
return m_sText.empty(); // <20>ı<EFBFBD><C4B1>Ƿ<EFBFBD>Ϊ<EFBFBD><CEAA>
|
|||
|
|
}
|
|||
|
|
|
|||
|
|
void Text::setText(TString text)
|
|||
|
|
{
|
|||
|
|
m_sText = text;
|
|||
|
|
// <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>壬Ȼ<E5A3AC><C8BB><EFBFBD><EFBFBD>ȡ<EFBFBD><C8A1><EFBFBD>ı<EFBFBD><C4B1>ڸ<EFBFBD><DAB8><EFBFBD><EFBFBD><EFBFBD><EFBFBD>µĿ<C2B5><C4BF>Ⱥ߶<CDB8>
|
|||
|
|
settextstyle(&m_pFontStyle->m_font);
|
|||
|
|
setSize(textwidth(getText().c_str()), textheight(getText().c_str()));
|
|||
|
|
}
|
|||
|
|
|
|||
|
|
void Text::setColor(COLORREF color)
|
|||
|
|
{
|
|||
|
|
m_color = color;
|
|||
|
|
}
|
|||
|
|
|
|||
|
|
void Text::setFontStyle(FontStyle * style)
|
|||
|
|
{
|
|||
|
|
SafeRelease(m_pFontStyle); // ԭ<><D4AD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ü<EFBFBD><C3BC><EFBFBD><EFBFBD><EFBFBD>һ
|
|||
|
|
m_pFontStyle = style; // <20><EFBFBD><DEB8><EFBFBD><EFBFBD><EFBFBD>
|
|||
|
|
m_pFontStyle->retain(); // <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ü<EFBFBD><C3BC><EFBFBD><EFBFBD><EFBFBD>һ
|
|||
|
|
// <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>壬Ȼ<E5A3AC><C8BB><EFBFBD><EFBFBD>ȡ<EFBFBD><C8A1><EFBFBD>ı<EFBFBD><C4B1>ڸ<EFBFBD><DAB8><EFBFBD><EFBFBD><EFBFBD><EFBFBD>µĿ<C2B5><C4BF>Ⱥ߶<CDB8>
|
|||
|
|
settextstyle(&m_pFontStyle->m_font);
|
|||
|
|
setSize(textwidth(getText().c_str()), textheight(getText().c_str()));
|
|||
|
|
}
|