X-Git-Url: https://git.cweiske.de/enigma2.git/blobdiff_plain/3bad22d5566624804a73b3791980bab2d84c8266..9202d4248dd7df2f6e5eb53b4154c8297ec9b1d1:/lib/gui/elabel.cpp diff --git a/lib/gui/elabel.cpp b/lib/gui/elabel.cpp index e69de29b..f9dcf31b 100644 --- a/lib/gui/elabel.cpp +++ b/lib/gui/elabel.cpp @@ -0,0 +1,42 @@ +#include + +eLabel::eLabel(eWidget *parent): eWidget(parent) +{ + +} + +int eLabel::event(int event, void *data, void *data2) +{ + switch (event) + { + case evtPaint: + { + ePtr style; + + getStyle(style); + + eWidget::event(event, data, data2); + + gPainter &painter = *(gPainter*)data2; + ePtr fnt = new gFont("Arial", 14); + painter.setFont(fnt); + style->setForegroundStyle(painter); + painter.renderText(eRect(0, 0, size().width(), size().height()), m_text); + + return 0; + } + case evtChangedText: + invalidate(); + return 0; + default: + return eWidget::event(event, data, data2); + } +} + +void eLabel::setText(const std::string &string) +{ + if (m_text == string) + return; + m_text = string; + event(evtChangedText); +}