author | leseb <leseb> | 2002-07-13 12:37:36 (UTC) |
---|---|---|
committer | leseb <leseb> | 2002-07-13 12:37:36 (UTC) |
commit | 6337e3836497ede8bb47aea5c7b65f4f8c08c4cd (patch) (side-by-side diff) | |
tree | 3a2b4d0d2ee302b1c01fbe8c0f3fbf40f8a30b3b | |
parent | 804c1ce9554548d1c0f46d28eb1b8f63b4341fdb (diff) | |
download | opie-6337e3836497ede8bb47aea5c7b65f4f8c08c4cd.zip opie-6337e3836497ede8bb47aea5c7b65f4f8c08c4cd.tar.gz opie-6337e3836497ede8bb47aea5c7b65f4f8c08c4cd.tar.bz2 |
Small fix in drawing menubar
-rw-r--r-- | noncore/styles/liquid/liquid.cpp | 4 |
1 files changed, 2 insertions, 2 deletions
diff --git a/noncore/styles/liquid/liquid.cpp b/noncore/styles/liquid/liquid.cpp index fc925b8..87b5488 100644 --- a/noncore/styles/liquid/liquid.cpp +++ b/noncore/styles/liquid/liquid.cpp @@ -1867,265 +1867,265 @@ void LiquidStyle::drawExclusiveIndicator(QPainter *p, int x, int y, int /*w*/, } } void LiquidStyle::drawExclusiveIndicatorMask(QPainter *p, int x, int y, int w, int h, bool) { p->fillRect(x, y, w, h, Qt::color0); p->setPen(Qt::color1); p->drawPixmap(x, y, *getPixmap(RadioOn)->mask()); } QSize LiquidStyle::indicatorSize() const { return(QSize(20, 22)); } void LiquidStyle::drawIndicator(QPainter *p, int x, int y, int /*w*/, int /*h*/, const QColorGroup &/*g*/, int state, bool /*down*/, bool) { bool isHover = highlightWidget == p->device(); bool isMasked = p->device() && p->device()->devType() == QInternal::Widget && ((QWidget*)p->device())->autoMask(); if(isMasked){ if(state != QButton::Off){ p->drawPixmap(x, y, isHover ? *getPixmap(HTMLCBDownHover) : *getPixmap(HTMLCBDown)); } else p->drawPixmap(x, y, isHover ? *getPixmap(HTMLCBHover) : *getPixmap(HTMLCB)); } else{ if(state != QButton::Off){ p->drawPixmap(x, y, isHover ? *getPixmap(CBDownHover) : *getPixmap(CBDown)); /* Todo - tristate if(state == QButton::On){ p->setPen(Qt::black); p->drawPixmap(3, 3, xBmp); } else{ p->setPen(g.dark()); p->drawRect(x+2, y+2, w-4, h-4); p->setPen(Qt::black); p->drawLine(x+3, (y+h)/2-2, x+w-4, (y+h)/2-2); p->drawLine(x+3, (y+h)/2, x+w-4, (y+h)/2); p->drawLine(x+3, (y+h)/2+2, x+w-4, (y+h)/2+2); }*/ } else p->drawPixmap(x, y, isHover ? *getPixmap(CBHover) : *getPixmap(CB)); } } void LiquidStyle::drawIndicatorMask(QPainter *p, int x, int y, int /*w*/, int /*h*/, int /*state*/) { // needed for some reason by KHtml, even tho it's all filled ;P p->drawPixmap(x, y, *getPixmap(HTMLCB)->mask()); } void LiquidStyle::drawSlider(QPainter *p, int x, int y, int w, int h, const QColorGroup &/*g*/, Orientation orient, bool, bool) { QWidget *parent = (QWidget *)p->device(); p->setBrushOrigin(parent->pos()); parent->erase(x, y, w, h); p->drawPixmap(x, y, orient == Qt::Horizontal ? *getPixmap(HSlider) : *getPixmap(VSlider)); } void LiquidStyle::drawSliderMask(QPainter *p, int x, int y, int /*w*/, int /*h*/, Orientation orient, bool, bool) { p->drawPixmap(x, y, orient == Qt::Horizontal ? *getPixmap(HSlider)->mask() : *getPixmap(VSlider)->mask()); } int LiquidStyle::sliderLength() const { return(10); } #define QCOORDARRLEN(x) sizeof(x)/(sizeof(QCOORD)*2) void LiquidStyle::drawArrow(QPainter *p, Qt::ArrowType type, bool on, int x, int y, int w, int h, const QColorGroup &g, bool enabled, const QBrush *) { static const QCOORD u_arrow[]={3,1, 4,1, 2,2, 5,2, 1,3, 6,3, 0,4, 7,4, 0,5, 7,5}; static const QCOORD d_arrow[]={0,2, 7,2, 0,3, 7,3, 1,4, 6,4, 2,5, 5,5, 3,6, 4,6}; static const QCOORD l_arrow[]={1,3, 1,4, 2,2, 2,5, 3,1, 3,6, 4,0, 4,7, 5,0, 5,7}; static const QCOORD r_arrow[]={2,0, 2,7, 3,0, 3,7, 4,1, 4,6, 5,2, 5,5, 6,3, 6,4}; p->setPen(enabled ? on ? g.light() : g.buttonText() : g.mid()); if(w > 8){ x = x + (w-8)/2; y = y + (h-8)/2; } QPointArray a; switch(type){ case Qt::UpArrow: a.setPoints(QCOORDARRLEN(u_arrow), u_arrow); break; case Qt::DownArrow: a.setPoints(QCOORDARRLEN(d_arrow), d_arrow); break; case Qt::LeftArrow: a.setPoints(QCOORDARRLEN(l_arrow), l_arrow); break; default: a.setPoints(QCOORDARRLEN(r_arrow), r_arrow); break; } a.translate(x, y); p->drawLineSegments(a); } void LiquidStyle::drawMenuBarItem(QPainter *p, int x, int y, int w, int h, QMenuItem *mi, QColorGroup &g, bool /*enabled*/, bool active ) { + if(active){ x -= 2; // Bug in Qt/E y -= 2; w += 2; h += 2; + } p-> fillRect ( x, y, w, h, g.brush(QColorGroup::Background)); - w -= 2; - if(menuHandler->useShadowText()){ QColor shadow; if(p->device() && p->device()->devType() == QInternal::Widget && ((QWidget *)p->device())->inherits("QMenuBar")){ shadow = ((QMenuBar*)p->device())->isTopLevel() ? g.button().dark(130) : g.background().dark(130); } else shadow = g.background().dark(130); if(active){ drawClearBevel(p, x+1, y+1, w-1, h-1, g.button(), g.background()); QApplication::style().drawItem(p, x+1, y+1, w, h, AlignCenter|ShowPrefix|DontClip|SingleLine, g, mi->isEnabled(), NULL, mi->text(), -1, &shadow); QApplication::style().drawItem(p, x, y, w, h, AlignCenter|ShowPrefix|DontClip|SingleLine, g, mi->isEnabled(), NULL, mi->text(), -1, &g.text()); } else{ QApplication::style().drawItem(p, x+1, y+1, w, h, AlignCenter|ShowPrefix|DontClip|SingleLine, g, mi->isEnabled(), NULL, mi->text(), -1, &shadow); QApplication::style().drawItem(p, x, y, w, h, AlignCenter|ShowPrefix|DontClip|SingleLine, g, mi->isEnabled(), NULL, mi->text(), -1, &g.text()); } } else{ if(active) drawClearBevel(p, x+1, y+1, w-1, h-1, g.button(), g.background()); QApplication::style().drawItem(p, x, y, w, h, AlignCenter|ShowPrefix|DontClip|SingleLine, g, mi->isEnabled(), NULL, mi->text(), -1, &g.text()); } } void LiquidStyle::drawPopupPanel(QPainter *p, int x, int y, int w, int h, const QColorGroup &g, int /*lineWidth*/, const QBrush * /*fill*/) { QColor c; switch(menuHandler->transType()){ case None: case StippledBg: case TransStippleBg: c = g.background(); break; case StippledBtn: case TransStippleBtn: c = g.button(); break; default: c = menuHandler->bgColor(); } p->setPen(c.dark(140)); p->drawRect(x, y, w, h); p->setPen(c.light(120)); p->drawRect(x+1, y+1, w-2, h-2); } void LiquidStyle::drawPopupMenuItem( QPainter* p, bool checkable, int maxpmw, int tab, QMenuItem* mi, const QPalette& pal, bool act, bool enabled, int x, int y, int w, int h) { static const int motifItemFrame = 2; static const int motifItemHMargin = 3; static const int motifItemVMargin = 2; static const int motifArrowHMargin = 6; static const int windowsRightBorder = 12; maxpmw = QMAX( maxpmw, 20 ); bool dis = !enabled; QColorGroup itemg = dis ? pal.disabled() : pal.active(); int checkcol = maxpmw; if(act){ // FIXME drawClearBevel(p, x, y, w, h, itemg.button(), itemg.background()); } //else if(((QWidget*)p->device())->backgroundPixmap()){ // p->drawPixmap(x, y, *((QWidget*)p->device())->backgroundPixmap(), // x, y, w, h); //} else{ if(menuHandler->transType() == None){ p->fillRect(x, y, w, h, pal.active().background()); } else if(menuHandler->transType() == StippledBg){ p->fillRect(x, y, w, h, bgBrush); } else if(menuHandler->transType() == StippledBtn){ p->fillRect(x, y, w, h, menuBrush); } else{ QPixmap *pix = menuHandler->pixmap(((QWidget*)p->device())->winId()); if(pix) p->drawPixmap(x, y, *pix, x, y, w, h); } } if(!mi) return; QColor discol; if (dis) { discol = itemg.mid(); p->setPen(discol); } QColorGroup cg2(itemg); if(menuHandler->transType() == Custom){ cg2.setColor(QColorGroup::Foreground, menuHandler->textColor()); cg2.setColor(QColorGroup::Text, menuHandler->textColor()); cg2.setColor(QColorGroup::Light, menuHandler->textColor().light(120)); cg2.setColor(QColorGroup::Mid, menuHandler->textColor().dark(120)); } else{ |