void Button::draw() const { Drawer& drawer = layer().drawer(); const Rect area = globalArea(); if (drawer.pushClipArea(area)) { WidgetState hoverState; if (isUnderCursor() && m_selected) hoverState = STATE_SELECTED; else hoverState = state(); drawer.setFont(nullptr); if (m_type == PUSH_BUTTON) drawer.drawButton(area, hoverState, m_text.c_str()); else if (m_type == CHECK_BUTTON) drawer.drawCheck(area, hoverState, m_checked, m_text.c_str()); Widget::draw(); drawer.popClipArea(); } }
void Button::draw() const { const Rect& area = getGlobalArea(); Drawer& drawer = getLayer().getDrawer(); if (drawer.pushClipArea(area)) { WidgetState state; if (isUnderCursor() && selected) state = STATE_SELECTED; else state = getState(); drawer.drawButton(area, state, text.c_str()); Widget::draw(); drawer.popClipArea(); } }