-rw-r--r-- | noncore/styles/phase/phasestyle.cpp | 2 |
1 files changed, 1 insertions, 1 deletions
diff --git a/noncore/styles/phase/phasestyle.cpp b/noncore/styles/phase/phasestyle.cpp index 906ccee..746354e 100644 --- a/noncore/styles/phase/phasestyle.cpp +++ b/noncore/styles/phase/phasestyle.cpp @@ -51,257 +51,257 @@ static const int RIGHTBORDER = 10; static const int MINICONSIZE = 12; static const int CHECKSIZE = 9; static const int SCROLLBAR_EXTENT = 12; /* * Copyright (C) 1999 Daniel M. Duley <mosfet@kde.org> * LGPLv2 from kdelibs/kdefx/kdrawutil.cpp */ void kColorBitmaps(QPainter *p, const QColorGroup &g, int x, int y, QBitmap *lightColor, QBitmap *midColor, QBitmap *midlightColor, QBitmap *darkColor, QBitmap *blackColor, QBitmap *whiteColor) { QBitmap *bitmaps[]={lightColor, midColor, midlightColor, darkColor, blackColor, whiteColor}; QColor colors[]={g.light(), g.mid(), g.midlight(), g.dark(), Qt::black, Qt::white}; int i; for(i=0; i < 6; ++i){ if(bitmaps[i]){ if(!bitmaps[i]->mask()) bitmaps[i]->setMask(*bitmaps[i]); p->setPen(colors[i]); p->drawPixmap(x, y, *bitmaps[i]); } } } /* * drawMenuBarItem is not virtual * this way we define our draw handler */ typedef void (QStyle::*QDrawMenuBarItemImpl) (QPainter *, int, int, int, int, QMenuItem *, QColorGroup &, bool, bool); extern QDrawMenuBarItemImpl qt_set_draw_menu_bar_impl(QDrawMenuBarItemImpl impl); PhaseStyle::PhaseStyle() : QWindowsStyle() { setName( "PhaseStyle" ); /* small default sizes */ setButtonDefaultIndicatorWidth(1); setScrollBarExtent(SCROLLBAR_EXTENT, SCROLLBAR_EXTENT); setSliderThickness(12); setButtonMargin( 1 ); // create bitmaps uarrow = QBitmap(6, 6, uarrow_bits, true); uarrow.setMask(uarrow); darrow = QBitmap(6, 6, darrow_bits, true); darrow.setMask(darrow); larrow = QBitmap(6, 6, larrow_bits, true); larrow.setMask(larrow); rarrow = QBitmap(6, 6, rarrow_bits, true); rarrow.setMask(rarrow); bplus = QBitmap(6, 6, bplus_bits, true); bplus.setMask(bplus); bminus = QBitmap(6, 6, bminus_bits, true); bminus.setMask(bminus); bcheck = QBitmap(9, 9, bcheck_bits, true); bcheck.setMask(bcheck); dexpand = QBitmap(9, 9, dexpand_bits, true); dexpand.setMask(dexpand); rexpand = QBitmap(9, 9, rexpand_bits, true); rexpand.setMask(rexpand); doodad_mid = QBitmap(4, 4, doodad_mid_bits, true); doodad_light = QBitmap(4, 4, doodad_light_bits, true); } PhaseStyle::~PhaseStyle() { /* deleted by Qt */ } void PhaseStyle::drawCheckMark ( QPainter * p, int x, int y, int w, int h, const QColorGroup & g, bool , bool) { p->setPen(g.text()); p->drawPixmap(x+w/2-4, y+h/2-4, bcheck); } void PhaseStyle::drawArrow(QPainter *painter, Qt::ArrowType type, bool down, int x, int y, int w, int h, const QColorGroup &group, bool enabled , const QBrush * ) { switch( type ) { case UpArrow: if (enabled) painter->setPen(down ? group.midlight() : group.dark()); else painter->setPen(group.mid()); painter->drawPixmap(x+w/2-3, y+h/2-3, uarrow); break; case DownArrow: if (enabled) painter->setPen(down ? group.midlight() : group.dark()); else painter->setPen(group.mid()); painter->drawPixmap(x+w/2-3, y+h/2-3, darrow); break; case LeftArrow: if (enabled) painter->setPen(down ? group.midlight() : group.dark()); else painter->setPen(group.mid()); painter->drawPixmap(x+w/2-3, y+h/2-3, larrow); break; case RightArrow: if (enabled) painter->setPen(down ? group.midlight() : group.dark()); else painter->setPen(group.mid()); painter->drawPixmap(x+w/2-3, y+h/2-3, rarrow); break; } } void PhaseStyle::drawPushButton(QPushButton *btn, QPainter *painter) { QRect r = btn->rect(); int x = r.x(); int y = r.y(); int h = r.height(); int w = r.width(); bool depress = btn->isOn() || btn->isDown(); QColorGroup group = btn->colorGroup(); QBrush brush(group.button() ); // int bd = pixelMetric(PM_ButtonDefaultIndicator, widget) + 1; static int bd = 2; if (btn->isDefault() && !depress) { - drawPanel(painter, x, y, h, w, group, + drawPanel(painter, x, y, w, h, group, &group.brush(QColorGroup::Mid), true); drawBevelButton(painter, x+bd, y+bd, w-bd*2, h-bd*2, group, false, &brush ); } else { drawButton(painter, x, y, w, h, group, depress, &brush ); } if (btn->hasFocus() ) { // draw focus QColor col; drawFocusRect(painter, r, group, &col, false ); } } void PhaseStyle::drawPanel(QPainter* painter, int x, int y, int w, int h, const QColorGroup& group, bool sunken, int , const QBrush* fill) { int x2 = x + w - 1; int y2 = y + h - 1; painter->save(); if (sunken) { painter->setPen(group.dark()); painter->drawRect(x+1, y+1, w-2, h-2); painter->setPen(group.midlight()); painter->drawLine(x+1, y2, x2, y2); painter->drawLine(x2, y+1, x2, y2-1); painter->setPen(group.mid()); painter->drawLine(x, y, x, y2-1); painter->drawLine(x+1, y, x2-1, y); painter->setPen(group.background()); painter->drawPoint(x, y2); painter->drawPoint(x2, y); } else { painter->setPen(group.dark()); painter->drawRect(x, y, w, h); painter->setPen(group.midlight()); painter->drawLine(x+1, y+1, x2-2, y+1); painter->drawLine(x+1, y+2, x+1, y2-2); painter->setPen(group.mid()); painter->drawLine(x+2, y2-1, x2-1, y2-1); painter->drawLine(x2-1, y+2, x2-1, y2-2); painter->setPen(group.background()); painter->drawPoint(x+1, y2-1); painter->drawPoint(x2-1, y+1); } if (fill) { painter->fillRect(x+2, y+2, w-4, h-4, *fill ); } painter->restore(); } void PhaseStyle::drawButton(QPainter *p, int x, int y, int w, int h, const QColorGroup &group, bool sunken , const QBrush *fill ) { int x2 = x + w - 1; int y2 = y + h - 1; p->setPen(group.midlight()); p->drawLine(x+1, y2, x2, y2); p->drawLine(x2, y+1, x2, y2-1); p->setPen(group.mid()); p->drawLine(x, y, x2-1, y); p->drawLine(x, y+1, x, y2-1); p->setPen(group.button()); p->drawPoint(x, y2); p->drawPoint(x2, y); drawBevelButton(p, x+1, y+1, w-2, h-2, group, sunken, fill); } void PhaseStyle::drawButtonMask( QPainter* p, int x, int y, int w, int h ) { QRect rect(x, y, w, h ); p->fillRect(rect, Qt::color1); p->setPen(Qt::color0); } void PhaseStyle::drawBevelButton(QPainter* p, int x, int y, int w, int h, const QColorGroup& group, bool sunken, const QBrush* fill ) { int x2 = x + w - 1; int y2 = y + h - 1; p->save(); p->setPen(group.dark()); p->drawRect(x, y, w, h); p->setPen(sunken ? group.mid() : group.midlight()); p->drawLine(x+1, y+1, x2-2, y+1); p->drawLine(x+1, y+2, x+1, y2-2); p->setPen(sunken ? group.midlight() : group.mid()); p->drawLine(x+2, y2-1, x2-1, y2-1); p->drawLine(x2-1, y+2, x2-1, y2-2); p->setPen(group.button()); p->drawPoint(x+1, y2-1); p->drawPoint(x2-1, y+1); QBrush b = fill ? *fill : group.brush( QColorGroup::Button ); if (sunken) { // sunken bevels don't get gradients p->fillRect(x+2, y+2, w-4, h-4, b); } else drawPhaseGradient(p, QRect(x+2, y+2, w-4, h-4), b.color() ); p->restore(); } void PhaseStyle::drawPhaseGradient(QPainter* painter, const QRect& rect, const QColor& color )const { painter->fillRect(rect, color); } void PhaseStyle::polish( QWidget* widget ) { QWindowsStyle::polish(widget ); |