X-Git-Url: https://git.cweiske.de/enigma2.git/blobdiff_plain/3af66122574386a2856e83ba9c5d73d27a6f3710..6dbbf2167e1a8ca25dd2cd8e20bef82686b28f61:/lib/gui/ewindowstyle.cpp diff --git a/lib/gui/ewindowstyle.cpp b/lib/gui/ewindowstyle.cpp index 25b89460..79024a35 100644 --- a/lib/gui/ewindowstyle.cpp +++ b/lib/gui/ewindowstyle.cpp @@ -2,10 +2,35 @@ #include #include #include - +#include +#include eWindowStyle::~eWindowStyle() {} +DEFINE_REF(eWindowStyleManager); + +eWindowStyleManager::eWindowStyleManager() +{ + m_instance = this; +} + +eWindowStyleManager::~eWindowStyleManager() +{ + m_instance = 0; +} + +void eWindowStyleManager::getStyle(ePtr &style) +{ + style = m_current_style; +} + +void eWindowStyleManager::setStyle(eWindowStyle *style) +{ + m_current_style = style; +} + +eWindowStyleManager *eWindowStyleManager::m_instance; + DEFINE_REF(eWindowStyleSimple); eWindowStyleSimple::eWindowStyleSimple() @@ -22,7 +47,7 @@ eWindowStyleSimple::eWindowStyleSimple() m_background_color = gColor(0x19); } -void eWindowStyleSimple::handleNewSize(eWindow *wnd, const eSize &size) +void eWindowStyleSimple::handleNewSize(eWindow *wnd, eSize &size, eSize &offset) { // eDebug("handle new size: %d x %d", size.width(), size.height()); @@ -110,33 +135,24 @@ void eWindowStyleSimple::drawFrame(gPainter &painter, const eRect &frame, int wh painter.line(frame.bottomLeft1(), frame.topLeft1()); } -DEFINE_REF(eWindowStyleSkinned); - -eWindowStyleSkinned::eWindowStyleSkinned() -{ -} - -void eWindowStyleSkinned::handleNewSize(eWindow *wnd, const eSize &size) -{ -} - -void eWindowStyleSkinned::paintWindowDecoration(eWindow *wnd, gPainter &painter, const std::string &title) -{ -} - -void eWindowStyleSkinned::paintBackground(gPainter &painter, const ePoint &offset, const eSize &size) -{ -} - -void eWindowStyleSkinned::setStyle(gPainter &painter, int what) -{ -} - -void eWindowStyleSkinned::drawFrame(gPainter &painter, const eRect &frame, int what) -{ -} - -void eWindowStyleSkinned::drawBorder(gPainter &painter, const eSize &size, const struct borderSet &border, int where) +RESULT eWindowStyleSimple::getFont(int what, ePtr &fnt) { + fnt = 0; + switch (what) + { + case fontStatic: + fnt = new gFont("Arial", 12); + break; + case fontButton: + fnt = new gFont("Arial", 20); + break; + case fontTitlebar: + fnt = new gFont("Arial", 25); + break; + default: + return -1; + } + return 0; } +eAutoInitPtr init_eWindowStyleManager(eAutoInitNumbers::skin, "eWindowStyleManager");