summaryrefslogtreecommitdiff
authoralwin <alwin>2004-11-02 12:35:34 (UTC)
committer alwin <alwin>2004-11-02 12:35:34 (UTC)
commite246d0590286f6b9b0d5d40f1a17caa78c015b21 (patch) (unidiff)
tree96195461536b3821482df56d4f7a0b6683092aed
parente83e5bd3f26270d61a83b8b91e07b35d2657d060 (diff)
downloadopie-e246d0590286f6b9b0d5d40f1a17caa78c015b21.zip
opie-e246d0590286f6b9b0d5d40f1a17caa78c015b21.tar.gz
opie-e246d0590286f6b9b0d5d40f1a17caa78c015b21.tar.bz2
uiuiui - fixed a bug which let running applications crash if switched style
from phase to any other. Reason was that in phase-style a special menubaritem- drawroutine was set but not RESET to qte default if this style was removed I'd implemented the unPolish routine and just set this callback to 0 (qt-default) and now it works nice.
Diffstat (more/less context) (ignore whitespace changes)
-rw-r--r--noncore/styles/phase/phasestyle.cpp22
-rw-r--r--noncore/styles/phase/phasestyle.h8
2 files changed, 21 insertions, 9 deletions
diff --git a/noncore/styles/phase/phasestyle.cpp b/noncore/styles/phase/phasestyle.cpp
index ba8c460..906ccee 100644
--- a/noncore/styles/phase/phasestyle.cpp
+++ b/noncore/styles/phase/phasestyle.cpp
@@ -225,211 +225,221 @@ void PhaseStyle::drawPanel(QPainter* painter, int x, int y, int w, int h,
225 painter->drawPoint(x+1, y2-1); 225 painter->drawPoint(x+1, y2-1);
226 painter->drawPoint(x2-1, y+1); 226 painter->drawPoint(x2-1, y+1);
227 } 227 }
228 228
229 if (fill) { 229 if (fill) {
230 painter->fillRect(x+2, y+2, w-4, h-4, *fill ); 230 painter->fillRect(x+2, y+2, w-4, h-4, *fill );
231 } 231 }
232 painter->restore(); 232 painter->restore();
233} 233}
234 234
235 235
236 236
237void PhaseStyle::drawButton(QPainter *p, int x, int y, int w, int h, 237void PhaseStyle::drawButton(QPainter *p, int x, int y, int w, int h,
238 const QColorGroup &group, bool sunken , 238 const QColorGroup &group, bool sunken ,
239 const QBrush *fill ) { 239 const QBrush *fill ) {
240 int x2 = x + w - 1; 240 int x2 = x + w - 1;
241 int y2 = y + h - 1; 241 int y2 = y + h - 1;
242 242
243 p->setPen(group.midlight()); 243 p->setPen(group.midlight());
244 p->drawLine(x+1, y2, x2, y2); 244 p->drawLine(x+1, y2, x2, y2);
245 p->drawLine(x2, y+1, x2, y2-1); 245 p->drawLine(x2, y+1, x2, y2-1);
246 246
247 p->setPen(group.mid()); 247 p->setPen(group.mid());
248 p->drawLine(x, y, x2-1, y); 248 p->drawLine(x, y, x2-1, y);
249 p->drawLine(x, y+1, x, y2-1); 249 p->drawLine(x, y+1, x, y2-1);
250 250
251 p->setPen(group.button()); 251 p->setPen(group.button());
252 p->drawPoint(x, y2); 252 p->drawPoint(x, y2);
253 p->drawPoint(x2, y); 253 p->drawPoint(x2, y);
254 254
255 drawBevelButton(p, x+1, y+1, w-2, h-2, group, sunken, 255 drawBevelButton(p, x+1, y+1, w-2, h-2, group, sunken,
256 fill); 256 fill);
257} 257}
258 258
259void PhaseStyle::drawButtonMask( QPainter* p, int x, int y, 259void PhaseStyle::drawButtonMask( QPainter* p, int x, int y,
260 int w, int h ) { 260 int w, int h ) {
261 QRect rect(x, y, w, h ); 261 QRect rect(x, y, w, h );
262 p->fillRect(rect, Qt::color1); 262 p->fillRect(rect, Qt::color1);
263 p->setPen(Qt::color0); 263 p->setPen(Qt::color0);
264} 264}
265 265
266 266
267void PhaseStyle::drawBevelButton(QPainter* p, int x, int y, 267void PhaseStyle::drawBevelButton(QPainter* p, int x, int y,
268 int w, int h, const QColorGroup& group, 268 int w, int h, const QColorGroup& group,
269 bool sunken, const QBrush* fill ) { 269 bool sunken, const QBrush* fill ) {
270 int x2 = x + w - 1; 270 int x2 = x + w - 1;
271 int y2 = y + h - 1; 271 int y2 = y + h - 1;
272 p->save(); 272 p->save();
273 273
274 p->setPen(group.dark()); 274 p->setPen(group.dark());
275 p->drawRect(x, y, w, h); 275 p->drawRect(x, y, w, h);
276 276
277 p->setPen(sunken ? group.mid() : group.midlight()); 277 p->setPen(sunken ? group.mid() : group.midlight());
278 p->drawLine(x+1, y+1, x2-2, y+1); 278 p->drawLine(x+1, y+1, x2-2, y+1);
279 p->drawLine(x+1, y+2, x+1, y2-2); 279 p->drawLine(x+1, y+2, x+1, y2-2);
280 280
281 p->setPen(sunken ? group.midlight() : group.mid()); 281 p->setPen(sunken ? group.midlight() : group.mid());
282 p->drawLine(x+2, y2-1, x2-1, y2-1); 282 p->drawLine(x+2, y2-1, x2-1, y2-1);
283 p->drawLine(x2-1, y+2, x2-1, y2-2); 283 p->drawLine(x2-1, y+2, x2-1, y2-2);
284 284
285 p->setPen(group.button()); 285 p->setPen(group.button());
286 p->drawPoint(x+1, y2-1); 286 p->drawPoint(x+1, y2-1);
287 p->drawPoint(x2-1, y+1); 287 p->drawPoint(x2-1, y+1);
288 288
289 QBrush b = fill ? *fill : group.brush( QColorGroup::Button ); 289 QBrush b = fill ? *fill : group.brush( QColorGroup::Button );
290 if (sunken) { 290 if (sunken) {
291 // sunken bevels don't get gradients 291 // sunken bevels don't get gradients
292 p->fillRect(x+2, y+2, w-4, h-4, b); 292 p->fillRect(x+2, y+2, w-4, h-4, b);
293 } else 293 } else
294 drawPhaseGradient(p, QRect(x+2, y+2, w-4, h-4), b.color() ); 294 drawPhaseGradient(p, QRect(x+2, y+2, w-4, h-4), b.color() );
295 295
296 p->restore(); 296 p->restore();
297} 297}
298 298
299void PhaseStyle::drawPhaseGradient(QPainter* painter, 299void PhaseStyle::drawPhaseGradient(QPainter* painter,
300 const QRect& rect, 300 const QRect& rect,
301 const QColor& color )const { 301 const QColor& color )const {
302 painter->fillRect(rect, color); 302 painter->fillRect(rect, color);
303} 303}
304 304
305void PhaseStyle::polish( QWidget* widget ) { 305void PhaseStyle::polish( QWidget* widget ) {
306 QWindowsStyle::polish(widget ); 306 QWindowsStyle::polish(widget );
307 307
308#if 0 308#if 0
309 if (widget->inherits("QMenuBar") || 309 if (widget->inherits("QMenuBar") ||
310 widget->inherits("QPopupMenu" ) || 310 widget->inherits("QPopupMenu" ) ||
311 widget->inherits("QToolButton") || 311 widget->inherits("QToolButton") ||
312 widget->inherits("QHeader" ) ) { 312 widget->inherits("QHeader" ) ) {
313 widget->setBackgroundMode(QWidget::NoBackground); 313 widget->setBackgroundMode(QWidget::NoBackground);
314 } 314 }
315// else if (widget->inherits("QFrame") ) { 315// else if (widget->inherits("QFrame") ) {
316// widget->installEventFilter(this); 316// widget->installEventFilter(this);
317// } 317// }
318#endif 318#endif
319} 319}
320 320
321void PhaseStyle::unPolish( QWidget *w )
322{
323 QWindowsStyle::unPolish( w );
324}
325
321void PhaseStyle::polish( QPalette &pal ) { 326void PhaseStyle::polish( QPalette &pal ) {
322 QWindowsStyle::polish( pal ); 327 QWindowsStyle::polish( pal );
323 // lighten up a bit, so the look is not so "crisp" 328 // lighten up a bit, so the look is not so "crisp"
324 if (QPixmap::defaultDepth() > 8) { // but not on low color displays 329 if (QPixmap::defaultDepth() > 8) { // but not on low color displays
325 pal.setColor(QPalette::Disabled, QColorGroup::Dark, 330 pal.setColor(QPalette::Disabled, QColorGroup::Dark,
326 pal.color(QPalette::Disabled, QColorGroup::Dark).light(contrast)); 331 pal.color(QPalette::Disabled, QColorGroup::Dark).light(contrast));
327 pal.setColor(QPalette::Active, QColorGroup::Dark, 332 pal.setColor(QPalette::Active, QColorGroup::Dark,
328 pal.color(QPalette::Active, QColorGroup::Dark).light(contrast)); 333 pal.color(QPalette::Active, QColorGroup::Dark).light(contrast));
329 pal.setColor(QPalette::Inactive, QColorGroup::Dark, 334 pal.setColor(QPalette::Inactive, QColorGroup::Dark,
330 pal.color(QPalette::Inactive, QColorGroup::Dark).light(contrast)); 335 pal.color(QPalette::Inactive, QColorGroup::Dark).light(contrast));
331 } 336 }
332} 337}
333 338
334void PhaseStyle::polish( QApplication* app ) { 339void PhaseStyle::polish( QApplication* app ) {
335 QWindowsStyle::polish( app ); 340 QWindowsStyle::polish( app );
336 341
337 qt_set_draw_menu_bar_impl((QDrawMenuBarItemImpl)&PhaseStyle::drawMenuBarItem); 342 qt_set_draw_menu_bar_impl((QDrawMenuBarItemImpl)&PhaseStyle::drawMenuBarItem);
338} 343}
339 344
345void PhaseStyle::unPolish( QApplication* app ) {
346 QWindowsStyle::unPolish(app);
347 qt_set_draw_menu_bar_impl ( 0 );
348}
349
340void PhaseStyle::drawPushButtonLabel (QPushButton *button, QPainter *painter) { 350void PhaseStyle::drawPushButtonLabel (QPushButton *button, QPainter *painter) {
341 bool active = button->isOn() || button->isDown(); 351 bool active = button->isOn() || button->isDown();
342 QRect r = pushButtonContentsRect( button ); 352 QRect r = pushButtonContentsRect( button );
343 QColorGroup group = button->colorGroup(); 353 QColorGroup group = button->colorGroup();
344 int x, y, w, h; 354 int x, y, w, h;
345 r.rect( &x, &y, &w, &h ); 355 r.rect( &x, &y, &w, &h );
346 bool sunken = false; 356 bool sunken = false;
347 QIconSet::Mode mode; 357 QIconSet::Mode mode;
348 QPixmap pixmap; 358 QPixmap pixmap;
349 359
350 if (active) {// shift contents 360 if (active) {// shift contents
351 x++; y++; 361 x++; y++;
352 sunken = true; 362 sunken = true;
353 } 363 }
354 364
355 365
356 if (button->isMenuButton()) { // draw the indicator 366 if (button->isMenuButton()) { // draw the indicator
357 //dx = pixelMetric(PM_MenuButtonIndicator, widget); 367 //dx = pixelMetric(PM_MenuButtonIndicator, widget);
358 int dx = menuButtonIndicatorWidth( button->height() ); 368 int dx = menuButtonIndicatorWidth( button->height() );
359 drawArrow(painter, Qt::DownArrow, active, 369 drawArrow(painter, Qt::DownArrow, active,
360 x+w-dx, y+2, dx-4, h-4, group,button->isEnabled() ); 370 x+w-dx, y+2, dx-4, h-4, group,button->isEnabled() );
361 w -= dx; 371 w -= dx;
362 } 372 }
363 373
364 if (button->iconSet() && !button->iconSet()->isNull()) { // draw icon 374 if (button->iconSet() && !button->iconSet()->isNull()) { // draw icon
365 if (button->isEnabled()) { 375 if (button->isEnabled()) {
366 if (button->hasFocus()) { 376 if (button->hasFocus()) {
367 mode = QIconSet::Active; 377 mode = QIconSet::Active;
368 } else { 378 } else {
369 mode = QIconSet::Normal; 379 mode = QIconSet::Normal;
370 } 380 }
371 } else { 381 } else {
372 mode = QIconSet::Disabled; 382 mode = QIconSet::Disabled;
373 } 383 }
374 384
375#if 0 385#if 0
376 if (button->isToggleButton() && button->isOn()) { 386 if (button->isToggleButton() && button->isOn()) {
377 state = true; 387 state = true;
378 } else { 388 } else {
379 state = false; 389 state = false;
380 } 390 }
381#endif 391#endif
382 392
383 pixmap = button->iconSet()->pixmap(QIconSet::Small, mode); 393 pixmap = button->iconSet()->pixmap(QIconSet::Small, mode);
384 if (button->text().isEmpty() && !button->pixmap()) { 394 if (button->text().isEmpty() && !button->pixmap()) {
385 painter->drawPixmap(x+w/2 - pixmap.width()/2, 395 painter->drawPixmap(x+w/2 - pixmap.width()/2,
386 y+h/2 - pixmap.height()/2, pixmap); 396 y+h/2 - pixmap.height()/2, pixmap);
387 } else { 397 } else {
388 painter->drawPixmap(x+4, y+h/2 - pixmap.height()/2, pixmap); 398 painter->drawPixmap(x+4, y+h/2 - pixmap.height()/2, pixmap);
389 } 399 }
390 x += pixmap.width() + 4; 400 x += pixmap.width() + 4;
391 w -= pixmap.width() + 4; 401 w -= pixmap.width() + 4;
392 } 402 }
393 403
394 if (active || button->isDefault()) { // default button 404 if (active || button->isDefault()) { // default button
395 for(int n=0; n<2; n++) { 405 for(int n=0; n<2; n++) {
396 drawItem(painter, x+n, y, w, h, 406 drawItem(painter, x+n, y, w, h,
397 AlignCenter | ShowPrefix, 407 AlignCenter | ShowPrefix,
398 button->colorGroup(), 408 button->colorGroup(),
399 button->isEnabled(), 409 button->isEnabled(),
400 button->pixmap(), 410 button->pixmap(),
401 button->text(), -1, 411 button->text(), -1,
402 (button->isEnabled()) ? 412 (button->isEnabled()) ?
403 &button->colorGroup().buttonText() : 413 &button->colorGroup().buttonText() :
404 &button->colorGroup().mid()); 414 &button->colorGroup().mid());
405 } 415 }
406 } else { // normal button 416 } else { // normal button
407 drawItem(painter, x, y, w, h, 417 drawItem(painter, x, y, w, h,
408 AlignCenter | ShowPrefix, 418 AlignCenter | ShowPrefix,
409 button->colorGroup(), 419 button->colorGroup(),
410 button->isEnabled(), 420 button->isEnabled(),
411 button->pixmap(), 421 button->pixmap(),
412 button->text(), -1, 422 button->text(), -1,
413 (button->isEnabled()) ? 423 (button->isEnabled()) ?
414 &button->colorGroup().buttonText() : 424 &button->colorGroup().buttonText() :
415 &button->colorGroup().mid()); 425 &button->colorGroup().mid());
416 } 426 }
417} 427}
418 428
419 429
420void PhaseStyle::drawFocusRect(QPainter *painter, const QRect &rect, 430void PhaseStyle::drawFocusRect(QPainter *painter, const QRect &rect,
421 const QColorGroup &group, 431 const QColorGroup &group,
422 const QColor *, bool atBorder) { 432 const QColor *, bool atBorder) {
423 433
424 434
425 QPen old = painter->pen(); 435 QPen old = painter->pen();
426 painter->setPen(group.highlight().dark(contrast)); 436 painter->setPen(group.highlight().dark(contrast));
427 painter->setBrush(NoBrush); 437 painter->setBrush(NoBrush);
428 438
429 if ( atBorder ) 439 if ( atBorder )
430 painter->drawRect(QRect(rect.x()+1, rect.y()+1, 440 painter->drawRect(QRect(rect.x()+1, rect.y()+1,
431 rect.width()-2, rect.height()-2 )); 441 rect.width()-2, rect.height()-2 ));
432 else 442 else
433 painter->drawRect(rect); 443 painter->drawRect(rect);
434 444
435 445
@@ -538,340 +548,340 @@ void PhaseStyle::drawExclusiveIndicatorMask(QPainter *painter, int x, int y, int
538 548
539int PhaseStyle::defaultFrameWidth()const { 549int PhaseStyle::defaultFrameWidth()const {
540 return 1; 550 return 1;
541} 551}
542 552
543int PhaseStyle::popupMenuItemHeight ( bool , 553int PhaseStyle::popupMenuItemHeight ( bool ,
544 QMenuItem * mi, 554 QMenuItem * mi,
545 const QFontMetrics & fm ) { 555 const QFontMetrics & fm ) {
546 int h = 0; 556 int h = 0;
547 if (mi->custom() ) { 557 if (mi->custom() ) {
548 h = mi->custom()->sizeHint().height(); 558 h = mi->custom()->sizeHint().height();
549 if (!mi->custom()->fullSpan() ) 559 if (!mi->custom()->fullSpan() )
550 h += ITEMVMARGIN*2 + ITEMFRAME*2; 560 h += ITEMVMARGIN*2 + ITEMFRAME*2;
551 }else if (mi->isSeparator() ) { 561 }else if (mi->isSeparator() ) {
552 h = 1; 562 h = 1;
553 }else { 563 }else {
554 if ( mi->pixmap() ) { 564 if ( mi->pixmap() ) {
555 h = QMAX(h, mi->pixmap()->height() + ITEMFRAME*2); 565 h = QMAX(h, mi->pixmap()->height() + ITEMFRAME*2);
556 }else { 566 }else {
557 h = QMAX(h, MINICONSIZE+ITEMFRAME*2 ); 567 h = QMAX(h, MINICONSIZE+ITEMFRAME*2 );
558 h = QMAX(h, fm.height() 568 h = QMAX(h, fm.height()
559 + ITEMVMARGIN*2 + ITEMFRAME*2 ); 569 + ITEMVMARGIN*2 + ITEMFRAME*2 );
560 } 570 }
561 if ( mi->iconSet() ) 571 if ( mi->iconSet() )
562 h = QMAX(h, mi->iconSet()-> 572 h = QMAX(h, mi->iconSet()->
563 pixmap(QIconSet::Small, QIconSet::Normal ).height() 573 pixmap(QIconSet::Small, QIconSet::Normal ).height()
564 + ITEMFRAME*2 ); 574 + ITEMFRAME*2 );
565 } 575 }
566 576
567 577
568 return h; 578 return h;
569} 579}
570 580
571int PhaseStyle::extraPopupMenuItemWidth(bool checkable, int maxpmw, 581int PhaseStyle::extraPopupMenuItemWidth(bool checkable, int maxpmw,
572 QMenuItem* mi, const QFontMetrics& ) { 582 QMenuItem* mi, const QFontMetrics& ) {
573 int w = 0; 583 int w = 0;
574 if (mi->isSeparator() ) 584 if (mi->isSeparator() )
575 return 3; 585 return 3;
576 586
577 else if ( mi->pixmap() ) 587 else if ( mi->pixmap() )
578 w = mi->pixmap()->width(); 588 w = mi->pixmap()->width();
579 589
580 if (!mi->text().isNull() && 590 if (!mi->text().isNull() &&
581 mi->text().find('\t' ) >= 0 ) 591 mi->text().find('\t' ) >= 0 )
582 w += 12; 592 w += 12;
583 else if ( mi->popup() ) 593 else if ( mi->popup() )
584 w += 2*ARROWMARGIN; 594 w += 2*ARROWMARGIN;
585 595
586 if ( maxpmw ) 596 if ( maxpmw )
587 w += maxpmw +4; 597 w += maxpmw +4;
588 598
589 599
590 if ( maxpmw > 0 || checkable ) 600 if ( maxpmw > 0 || checkable )
591 w += ITEMHMARGIN*2+8; 601 w += ITEMHMARGIN*2+8;
592 602
593 w += RIGHTBORDER; 603 w += RIGHTBORDER;
594 return w; 604 return w;
595} 605}
596 606
597QSize PhaseStyle::indicatorSize()const { 607QSize PhaseStyle::indicatorSize()const {
598 return QSize( 11, 11 ); 608 return QSize( 11, 11 );
599} 609}
600 610
601QSize PhaseStyle::exclusiveIndicatorSize()const { 611QSize PhaseStyle::exclusiveIndicatorSize()const {
602 return QSize( 11, 11 ); 612 return QSize( 11, 11 );
603} 613}
604 614
605void PhaseStyle::getButtonShift( int &x, int &y ) { 615void PhaseStyle::getButtonShift( int &x, int &y ) {
606 x++; 616 x++;
607 y++; 617 y++;
608} 618}
609 619
610void PhaseStyle::drawPopupMenuItem ( QPainter * p, bool checkable, 620void PhaseStyle::drawPopupMenuItem ( QPainter * p, bool checkable,
611 int maxpmw,int tabwidth, 621 int maxpmw,int tabwidth,
612 QMenuItem * mi, const QPalette & pal, 622 QMenuItem * mi, const QPalette & pal,
613 bool act, bool enabled, int x, 623 bool act, bool enabled, int x,
614 int y, int w, int h ) { 624 int y, int w, int h ) {
615 if ( !mi ) 625 if ( !mi )
616 return; 626 return;
617 627
618 QRect rect(x, y, w, h ); 628 QRect rect(x, y, w, h );
619 int x2, y2; 629 int x2, y2;
620 x2 = rect.right(); 630 x2 = rect.right();
621 y2 = rect.bottom(); 631 y2 = rect.bottom();
622 const QColorGroup& g = pal.active(); 632 const QColorGroup& g = pal.active();
623 QColorGroup itemg = !enabled ? pal.disabled() : pal.active(); 633 QColorGroup itemg = !enabled ? pal.disabled() : pal.active();
624 634
625 if ( checkable || maxpmw ) maxpmw = QMAX(maxpmw, 20); 635 if ( checkable || maxpmw ) maxpmw = QMAX(maxpmw, 20);
626 636
627 if (act && enabled ) 637 if (act && enabled )
628 p->fillRect(x, y, w, h, g.highlight() ); 638 p->fillRect(x, y, w, h, g.highlight() );
629 else 639 else
630 p->fillRect(x, y, w, h, g.background() ); 640 p->fillRect(x, y, w, h, g.background() );
631 641
632 // draw seperator 642 // draw seperator
633 if (mi->isSeparator() ) { 643 if (mi->isSeparator() ) {
634 p->setPen( g.dark() ); 644 p->setPen( g.dark() );
635 p->drawLine( x+8, y+1, x+w-8, y+1 ); 645 p->drawLine( x+8, y+1, x+w-8, y+1 );
636 646
637 p->setPen( g.mid() ); 647 p->setPen( g.mid() );
638 p->drawLine( x+8, y, x+w-8, y ); 648 p->drawLine( x+8, y, x+w-8, y );
639 p->drawPoint(x+w,y+1); 649 p->drawPoint(x+w,y+1);
640 650
641 p->setPen( g.midlight() ); 651 p->setPen( g.midlight() );
642 p->drawLine( x+8, y-1, x+w-8, y-1 ); 652 p->drawLine( x+8, y-1, x+w-8, y-1 );
643 p->drawPoint(x+8, y ); 653 p->drawPoint(x+8, y );
644 return; 654 return;
645 } 655 }
646 656
647 // draw icon 657 // draw icon
648 QIconSet::Mode mode; 658 QIconSet::Mode mode;
649 if ( mi->iconSet() && !mi->isChecked() ) { 659 if ( mi->iconSet() && !mi->isChecked() ) {
650 if ( act ) 660 if ( act )
651 mode = enabled ? QIconSet::Active : QIconSet::Disabled; 661 mode = enabled ? QIconSet::Active : QIconSet::Disabled;
652 else 662 else
653 mode = enabled ? QIconSet::Normal : QIconSet::Disabled; 663 mode = enabled ? QIconSet::Normal : QIconSet::Disabled;
654 QPixmap pixmap = mi->iconSet()->pixmap(QIconSet::Small, mode ); 664 QPixmap pixmap = mi->iconSet()->pixmap(QIconSet::Small, mode );
655 QRect pmrect(0, 0, pixmap.width(), pixmap.height() ); 665 QRect pmrect(0, 0, pixmap.width(), pixmap.height() );
656 QRect cr(x, y, maxpmw, h ); 666 QRect cr(x, y, maxpmw, h );
657 pmrect.moveCenter( cr.center() ); 667 pmrect.moveCenter( cr.center() );
658 p->drawPixmap(pmrect.topLeft(), pixmap); 668 p->drawPixmap(pmrect.topLeft(), pixmap);
659 } 669 }
660 670
661 // draw check 671 // draw check
662 if(mi->isChecked() ) { 672 if(mi->isChecked() ) {
663 drawCheckMark(p, x, y, maxpmw, h, itemg, act, !enabled ); 673 drawCheckMark(p, x, y, maxpmw, h, itemg, act, !enabled );
664 } 674 }
665 675
666 676
667 // draw text 677 // draw text
668 int xm = maxpmw + 2; 678 int xm = maxpmw + 2;
669 int xp = x + xm; 679 int xp = x + xm;
670 int tw = w -xm - 2; 680 int tw = w -xm - 2;
671 681
672 p->setPen( enabled ? ( act ? g.highlightedText() : g.buttonText() ) : 682 p->setPen( enabled ? ( act ? g.highlightedText() : g.buttonText() ) :
673 g.mid() ); 683 g.mid() );
674 684
675 685
676 if ( mi->custom() ) { 686 if ( mi->custom() ) {
677 p->save(); 687 p->save();
678 mi->custom()->paint(p, g, act, enabled, 688 mi->custom()->paint(p, g, act, enabled,
679 xp, y+1, tw, h-2 ); 689 xp, y+1, tw, h-2 );
680 p->restore(); 690 p->restore();
681 }else { // draw label 691 }else { // draw label
682 QString text = mi->text(); 692 QString text = mi->text();
683 if (!text.isNull() ) { 693 if (!text.isNull() ) {
684 int t = text.find('\t'); 694 int t = text.find('\t');
685 const int tflags = AlignVCenter | DontClip | 695 const int tflags = AlignVCenter | DontClip |
686 ShowPrefix | SingleLine | 696 ShowPrefix | SingleLine |
687 AlignLeft; 697 AlignLeft;
688 698
689 if (t >= 0) { 699 if (t >= 0) {
690 int tabx = x + w - tabwidth - RIGHTBORDER - 700 int tabx = x + w - tabwidth - RIGHTBORDER -
691 ITEMHMARGIN - ITEMFRAME; 701 ITEMHMARGIN - ITEMFRAME;
692 p->drawText(tabx, y+ITEMVMARGIN, tabwidth, 702 p->drawText(tabx, y+ITEMVMARGIN, tabwidth,
693 h-2*ITEMVMARGIN, tflags, 703 h-2*ITEMVMARGIN, tflags,
694 text.mid(t+1) ); 704 text.mid(t+1) );
695 text = text.left(t ); 705 text = text.left(t );
696 } 706 }
697 707
698 // draw left label 708 // draw left label
699 p->drawText(xp, y+ITEMVMARGIN, 709 p->drawText(xp, y+ITEMVMARGIN,
700 tw, h-2*ITEMVMARGIN, 710 tw, h-2*ITEMVMARGIN,
701 tflags, text, t); 711 tflags, text, t);
702 }else if ( mi->pixmap() ) { // pixmap as label 712 }else if ( mi->pixmap() ) { // pixmap as label
703 QPixmap pixmap = *mi->pixmap(); 713 QPixmap pixmap = *mi->pixmap();
704 if ( pixmap.depth() == 1 ) 714 if ( pixmap.depth() == 1 )
705 p->setBackgroundMode( OpaqueMode ); 715 p->setBackgroundMode( OpaqueMode );
706 716
707 int dx = ((w-pixmap.width() ) /2 ) + 717 int dx = ((w-pixmap.width() ) /2 ) +
708 ((w - pixmap.width()) %2 ); 718 ((w - pixmap.width()) %2 );
709 p->drawPixmap(x+dx, y+ITEMFRAME, pixmap ); 719 p->drawPixmap(x+dx, y+ITEMFRAME, pixmap );
710 720
711 if ( pixmap.depth() == 1 ) 721 if ( pixmap.depth() == 1 )
712 p->setBackgroundMode( TransparentMode ); 722 p->setBackgroundMode( TransparentMode );
713 } 723 }
714 } 724 }
715 725
716 if ( mi->popup() ) { // draw submenu arrow 726 if ( mi->popup() ) { // draw submenu arrow
717 int dim = (h-2*ITEMFRAME) / 2; 727 int dim = (h-2*ITEMFRAME) / 2;
718 drawArrow( p, RightArrow, false, 728 drawArrow( p, RightArrow, false,
719 x+w-ARROWMARGIN-ITEMFRAME-dim, 729 x+w-ARROWMARGIN-ITEMFRAME-dim,
720 y+h/2-dim/2, dim, dim, g, enabled ); 730 y+h/2-dim/2, dim, dim, g, enabled );
721 } 731 }
722} 732}
723 733
724 734
725QRect PhaseStyle::comboButtonRect ( int x, int y, int w, int h ) { 735QRect PhaseStyle::comboButtonRect ( int x, int y, int w, int h ) {
726 return QRect(x+2, y+2, w-4-17, h-5 ); 736 return QRect(x+2, y+2, w-4-17, h-5 );
727} 737}
728 738
729void PhaseStyle::drawComboButton( QPainter * p, int x, int y, 739void PhaseStyle::drawComboButton( QPainter * p, int x, int y,
730 int w, int h, 740 int w, int h,
731 const QColorGroup & g, 741 const QColorGroup & g,
732 bool sunken, 742 bool sunken,
733 bool editable, 743 bool editable,
734 bool, 744 bool,
735 const QBrush *) { 745 const QBrush *) {
736 drawButton(p, x, y, w, h, g, 746 drawButton(p, x, y, w, h, g,
737 sunken, &g.brush(QColorGroup::Button )); 747 sunken, &g.brush(QColorGroup::Button ));
738 748
739 for ( int n = 0; n < 2; ++n ) 749 for ( int n = 0; n < 2; ++n )
740 kColorBitmaps(p, g, w-16+(6*n), y+(h/2)-2, 750 kColorBitmaps(p, g, w-16+(6*n), y+(h/2)-2,
741 0, &doodad_mid, &doodad_light, 0, 0, 0 ); 751 0, &doodad_mid, &doodad_light, 0, 0, 0 );
742 752
743 753
744 if (editable ) { 754 if (editable ) {
745 const int x2 = x+w-1; const int y2 = y+h-1; 755 const int x2 = x+w-1; const int y2 = y+h-1;
746 p->setPen(g.dark()); 756 p->setPen(g.dark());
747 p->drawLine(x2+1, y, x2+1, y2); 757 p->drawLine(x2+1, y, x2+1, y2);
748 p->setPen(g.midlight()); 758 p->setPen(g.midlight());
749 p->drawLine(x2+2, y, x2+2, y2-1); 759 p->drawLine(x2+2, y, x2+2, y2-1);
750 p->setPen(g.button()); 760 p->setPen(g.button());
751 p->drawPoint(x2+2, y2); 761 p->drawPoint(x2+2, y2);
752 } 762 }
753 763
754 p->setPen(g.buttonText() ); 764 p->setPen(g.buttonText() );
755} 765}
756 766
757void PhaseStyle::tabbarMetrics( const QTabBar* t, int &hframe, int &vframe, int& ov ) { 767void PhaseStyle::tabbarMetrics( const QTabBar* t, int &hframe, int &vframe, int& ov ) {
758 QCommonStyle::tabbarMetrics( t, hframe, vframe, ov ); 768 QCommonStyle::tabbarMetrics( t, hframe, vframe, ov );
759 hframe -= 2; 769 hframe -= 2;
760 vframe += 1; 770 vframe += 1;
761} 771}
762 772
763 773
764void PhaseStyle::drawTab(QPainter* painter, const QTabBar* bar, QTab* tab, 774void PhaseStyle::drawTab(QPainter* painter, const QTabBar* bar, QTab* tab,
765 bool selected ) { 775 bool selected ) {
766 bool edge = false; 776 bool edge = false;
767 int x, y, w, h; 777 int x, y, w, h;
768 QRect r = tab->rect(); 778 QRect r = tab->rect();
769 r.rect(&x,&y,&w,&h); 779 r.rect(&x,&y,&w,&h);
770 const int x2 = x+w-1; 780 const int x2 = x+w-1;
771 const int y2 = y+h-1; 781 const int y2 = y+h-1;
772 const QColorGroup &group = bar->colorGroup(); 782 const QColorGroup &group = bar->colorGroup();
773 783
774 784
775 painter->save(); 785 painter->save();
776 786
777 // what position is the tab? 787 // what position is the tab?
778 if ((bar->count() == 1 )) 788 if ((bar->count() == 1 ))
779 edge = true; 789 edge = true;
780 else 790 else
781 edge = false; 791 edge = false;
782 792
783 switch (QTabBar::Shape(bar->shape())) { 793 switch (QTabBar::Shape(bar->shape())) {
784 case QTabBar::RoundedAbove: 794 case QTabBar::RoundedAbove:
785 case QTabBar::TriangularAbove: { 795 case QTabBar::TriangularAbove: {
786 if (!selected) { // shorten 796 if (!selected) { // shorten
787 y += 2; h -= 2; 797 y += 2; h -= 2;
788 } 798 }
789 if (selected) { 799 if (selected) {
790 painter->setPen(Qt::NoPen); 800 painter->setPen(Qt::NoPen);
791 painter->fillRect(x+1, y+1, w-1, h-1, 801 painter->fillRect(x+1, y+1, w-1, h-1,
792 group.brush(QColorGroup::Background)); 802 group.brush(QColorGroup::Background));
793 } else 803 } else
794 drawPhaseGradient(painter, QRect(x+1, y+1, w-1, h-2), 804 drawPhaseGradient(painter, QRect(x+1, y+1, w-1, h-2),
795 group.background().dark(contrast) ); 805 group.background().dark(contrast) );
796 806
797 807
798 // draw tab 808 // draw tab
799 painter->setPen(group.dark()); 809 painter->setPen(group.dark());
800 painter->drawLine(x, y, x, y2-2); 810 painter->drawLine(x, y, x, y2-2);
801 painter->drawLine(x+1, y, x2, y); 811 painter->drawLine(x+1, y, x2, y);
802 painter->drawLine(x2, y+1, x2, y2-2); 812 painter->drawLine(x2, y+1, x2, y2-2);
803 813
804 painter->setPen(group.mid()); 814 painter->setPen(group.mid());
805 painter->drawLine(x2-1, y+2, x2-1, y2-2); 815 painter->drawLine(x2-1, y+2, x2-1, y2-2);
806 816
807 painter->setPen(group.midlight()); 817 painter->setPen(group.midlight());
808 painter->drawLine(x+1, y+1, x2-2, y+1); 818 painter->drawLine(x+1, y+1, x2-2, y+1);
809 if ((selected) || edge) painter->drawLine(x+1, y+2, x+1, y2-2); 819 if ((selected) || edge) painter->drawLine(x+1, y+2, x+1, y2-2);
810 820
811 // finish off bottom 821 // finish off bottom
812 if (selected) { 822 if (selected) {
813 painter->setPen(group.dark()); 823 painter->setPen(group.dark());
814 painter->drawPoint(x, y2-1); 824 painter->drawPoint(x, y2-1);
815 painter->drawPoint(x2, y2-1); 825 painter->drawPoint(x2, y2-1);
816 826
817 painter->setPen(group.midlight()); 827 painter->setPen(group.midlight());
818 painter->drawPoint(x, y2); 828 painter->drawPoint(x, y2);
819 painter->drawLine(x+1, y2-1, x+1, y2); 829 painter->drawLine(x+1, y2-1, x+1, y2);
820 painter->drawPoint(x2, y2); 830 painter->drawPoint(x2, y2);
821 831
822 painter->setPen(group.mid()); 832 painter->setPen(group.mid());
823 painter->drawPoint(x2-1, y2-1); 833 painter->drawPoint(x2-1, y2-1);
824 834
825 if (edge) { 835 if (edge) {
826 painter->setPen(group.dark()); 836 painter->setPen(group.dark());
827 painter->drawLine(x, y2-1, x, y2); 837 painter->drawLine(x, y2-1, x, y2);
828 painter->setPen(group.midlight()); 838 painter->setPen(group.midlight());
829 painter->drawPoint(x+1, y2); 839 painter->drawPoint(x+1, y2);
830 } 840 }
831 } else { 841 } else {
832 painter->setPen(group.dark()); 842 painter->setPen(group.dark());
833 painter->drawLine(x, y2-1, x2, y2-1); 843 painter->drawLine(x, y2-1, x2, y2-1);
834 844
835 painter->setPen(group.midlight()); 845 painter->setPen(group.midlight());
836 painter->drawLine(x, y2, x2, y2); 846 painter->drawLine(x, y2, x2, y2);
837 847
838 if (edge) { 848 if (edge) {
839 painter->setPen(group.dark()); 849 painter->setPen(group.dark());
840 painter->drawLine(x, y2-1, x, y2); 850 painter->drawLine(x, y2-1, x, y2);
841 } 851 }
842 } 852 }
843 break; 853 break;
844 } 854 }
845 case QTabBar::RoundedBelow: 855 case QTabBar::RoundedBelow:
846 case QTabBar::TriangularBelow: { 856 case QTabBar::TriangularBelow: {
847 painter->setBrush( group.background().dark(contrast)); 857 painter->setBrush( group.background().dark(contrast));
848 painter->setPen(Qt::NoPen); 858 painter->setPen(Qt::NoPen);
849 painter->fillRect(x+1, y+1, w-1, h-1, painter->brush()); 859 painter->fillRect(x+1, y+1, w-1, h-1, painter->brush());
850 860
851 // draw tab 861 // draw tab
852 painter->setPen(group.dark()); 862 painter->setPen(group.dark());
853 painter->drawLine(x, y+1, x, y2); 863 painter->drawLine(x, y+1, x, y2);
854 painter->drawLine(x+1, y2, x2, y2); 864 painter->drawLine(x+1, y2, x2, y2);
855 painter->drawLine(x2, y+1, x2, y2-1); 865 painter->drawLine(x2, y+1, x2, y2-1);
856 866
857 painter->setPen(group.mid()); 867 painter->setPen(group.mid());
858 painter->drawLine(x2-1, y+1, x2-1, y2-1); 868 painter->drawLine(x2-1, y+1, x2-1, y2-1);
859 painter->drawLine(x+2, y2-1, x2-1, y2-1); 869 painter->drawLine(x+2, y2-1, x2-1, y2-1);
860 painter->drawPoint(x, y); 870 painter->drawPoint(x, y);
861 painter->drawPoint(x2, y); 871 painter->drawPoint(x2, y);
862 872
863 if ((selected) || edge) { 873 if ((selected) || edge) {
864 painter->setPen(group.midlight()); 874 painter->setPen(group.midlight());
865 painter->drawLine(x+1, y+1, x+1, y2-2); 875 painter->drawLine(x+1, y+1, x+1, y2-2);
866 } 876 }
867 877
868 // finish off top 878 // finish off top
869 if (selected) { 879 if (selected) {
870 if (edge) { 880 if (edge) {
871 painter->setPen(group.dark()); 881 painter->setPen(group.dark());
872 painter->drawPoint(x, y); 882 painter->drawPoint(x, y);
873 painter->setPen(group.midlight()); 883 painter->setPen(group.midlight());
874 painter->drawPoint(x+1, y); 884 painter->drawPoint(x+1, y);
875 } 885 }
876 } else { 886 } else {
877 painter->setPen(group.dark()); 887 painter->setPen(group.dark());
diff --git a/noncore/styles/phase/phasestyle.h b/noncore/styles/phase/phasestyle.h
index cbaa534..ae53efe 100644
--- a/noncore/styles/phase/phasestyle.h
+++ b/noncore/styles/phase/phasestyle.h
@@ -1,141 +1,143 @@
1////////////////////////////////////////////////////////////////////////////// 1//////////////////////////////////////////////////////////////////////////////
2// phasestyle.h 2// phasestyle.h
3// ------------------- 3// -------------------
4// A style for KDE 4// A style for KDE
5// ------------------- 5// -------------------
6// Copyright (c) 2004 David Johnson <david@usermode.org> 6// Copyright (c) 2004 David Johnson <david@usermode.org>
7// 7//
8// Permission is hereby granted, free of charge, to any person obtaining a copy 8// Permission is hereby granted, free of charge, to any person obtaining a copy
9// of this software and associated documentation files (the "Software"), to 9// of this software and associated documentation files (the "Software"), to
10// deal in the Software without restriction, including without limitation the 10// deal in the Software without restriction, including without limitation the
11// rights to use, copy, modify, merge, publish, distribute, sublicense, and/or 11// rights to use, copy, modify, merge, publish, distribute, sublicense, and/or
12// sell copies of the Software, and to permit persons to whom the Software is 12// sell copies of the Software, and to permit persons to whom the Software is
13// furnished to do so, subject to the following conditions: 13// furnished to do so, subject to the following conditions:
14// 14//
15// The above copyright notice and this permission notice shall be included in 15// The above copyright notice and this permission notice shall be included in
16// all copies or substantial portions of the Software. 16// all copies or substantial portions of the Software.
17// 17//
18// THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR 18// THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
19// IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, 19// IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
20// FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE 20// FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
21// AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER 21// AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
22// LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING 22// LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING
23// FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS 23// FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS
24// IN THE SOFTWARE. 24// IN THE SOFTWARE.
25////////////////////////////////////////////////////////////////////////////// 25//////////////////////////////////////////////////////////////////////////////
26 26
27#ifndef PHASESTYLE_H 27#ifndef PHASESTYLE_H
28#define PHASESTYLE_H 28#define PHASESTYLE_H
29 29
30#include <qstyle.h> 30#include <qstyle.h>
31#include <qwindowsstyle.h> 31#include <qwindowsstyle.h>
32#include <qcolor.h> 32#include <qcolor.h>
33 33
34class KPixmap; 34class KPixmap;
35 35
36class PhaseStyle : public QWindowsStyle 36class PhaseStyle : public QWindowsStyle
37{ 37{
38 Q_OBJECT 38 Q_OBJECT
39public: 39public:
40 PhaseStyle(); 40 PhaseStyle();
41 virtual ~PhaseStyle(); 41 virtual ~PhaseStyle();
42 42
43 void polish( QWidget * ); 43 virtual void polish( QWidget * );
44 void polish( QPalette& ); 44 virtual void polish( QPalette& );
45 void polish( QApplication* ); 45 virtual void polish( QApplication* a);
46 virtual void unPolish( QWidget * );
47 virtual void unPolish(QApplication *a);
46 48
47 49
48 void drawCheckMark ( QPainter * p, int x, int y, int w, 50 void drawCheckMark ( QPainter * p, int x, int y, int w,
49 int h, const QColorGroup & g, 51 int h, const QColorGroup & g,
50 bool act, bool dis ); 52 bool act, bool dis );
51 void drawArrow(QPainter *p, Qt::ArrowType type, bool down, 53 void drawArrow(QPainter *p, Qt::ArrowType type, bool down,
52 int x, int y, int w, int h, const QColorGroup &g, 54 int x, int y, int w, int h, const QColorGroup &g,
53 bool enabled=true, const QBrush *fill = 0); 55 bool enabled=true, const QBrush *fill = 0);
54 56
55 void drawPushButton(QPushButton* btn, QPainter* p ); 57 void drawPushButton(QPushButton* btn, QPainter* p );
56 void drawPushButtonLabel(QPushButton* btn, QPainter* p ); 58 void drawPushButtonLabel(QPushButton* btn, QPainter* p );
57 void drawPanel(QPainter* p, int , int, int, int, 59 void drawPanel(QPainter* p, int , int, int, int,
58 const QColorGroup&, bool sunken = false, 60 const QColorGroup&, bool sunken = false,
59 int lineWidth = 1, const QBrush *b = 0l ); 61 int lineWidth = 1, const QBrush *b = 0l );
60 void drawButton( QPainter*, int x, int y, int w, int h, 62 void drawButton( QPainter*, int x, int y, int w, int h,
61 const QColorGroup&, bool sunken = false, 63 const QColorGroup&, bool sunken = false,
62 const QBrush* fill = 0); 64 const QBrush* fill = 0);
63 void drawBevelButton(QPainter*, int, int, int, int, 65 void drawBevelButton(QPainter*, int, int, int, int,
64 const QColorGroup&, bool sunken = false, 66 const QColorGroup&, bool sunken = false,
65 const QBrush* fill = 0 ); 67 const QBrush* fill = 0 );
66 void drawFocusRect( QPainter* p, const QRect& r, 68 void drawFocusRect( QPainter* p, const QRect& r,
67 const QColorGroup&, const QColor* = 0, 69 const QColorGroup&, const QColor* = 0,
68 bool atBorder = false ); 70 bool atBorder = false );
69 void drawButtonMask( QPainter* p, int x, int y, 71 void drawButtonMask( QPainter* p, int x, int y,
70 int w, int h ); 72 int w, int h );
71 73
72 74
73 /* Menu Stuff */ 75 /* Menu Stuff */
74 void drawSeperator( QPainter* p, int x, int y, int w, 76 void drawSeperator( QPainter* p, int x, int y, int w,
75 int h, const QColorGroup& group, bool sunken = true, 77 int h, const QColorGroup& group, bool sunken = true,
76 int lineWidth = 1, int midLineWidtth = 0 ); 78 int lineWidth = 1, int midLineWidtth = 0 );
77 void drawMenuBarItem(QPainter* p, int x, int y, int w, int h, 79 void drawMenuBarItem(QPainter* p, int x, int y, int w, int h,
78 QMenuItem *mi, QColorGroup& g, bool enabled, 80 QMenuItem *mi, QColorGroup& g, bool enabled,
79 bool act); 81 bool act);
80 82
81 /* RadioButton, CheckBox... */ 83 /* RadioButton, CheckBox... */
82 void drawIndicator(QPainter* p, int x, int y, int w, int h, 84 void drawIndicator(QPainter* p, int x, int y, int w, int h,
83 const QColorGroup &g, int state, bool down = FALSE, 85 const QColorGroup &g, int state, bool down = FALSE,
84 bool enabled = TRUE ); 86 bool enabled = TRUE );
85 void drawExclusiveIndicator( QPainter*, int, int, int, int, 87 void drawExclusiveIndicator( QPainter*, int, int, int, int,
86 const QColorGroup&, bool on, 88 const QColorGroup&, bool on,
87 bool down = false,bool enabled = true ); 89 bool down = false,bool enabled = true );
88 void drawExclusiveIndicatorMask (QPainter*, int, int, int, int, bool ); 90 void drawExclusiveIndicatorMask (QPainter*, int, int, int, int, bool );
89 91
90 /* spacing,dimensions */ 92 /* spacing,dimensions */
91 int defaultFrameWidth () const; 93 int defaultFrameWidth () const;
92 int popupMenuItemHeight ( bool checkable, 94 int popupMenuItemHeight ( bool checkable,
93 QMenuItem * mi, 95 QMenuItem * mi,
94 const QFontMetrics & fm ); 96 const QFontMetrics & fm );
95 int extraPopupMenuItemWidth(bool checkable, int maxpmw, 97 int extraPopupMenuItemWidth(bool checkable, int maxpmw,
96 QMenuItem* mi, const QFontMetrics& fm ); 98 QMenuItem* mi, const QFontMetrics& fm );
97 99
98 QSize indicatorSize()const; 100 QSize indicatorSize()const;
99 QSize exclusiveIndicatorSize()const; 101 QSize exclusiveIndicatorSize()const;
100 void getButtonShift( int &x, int &y ); 102 void getButtonShift( int &x, int &y );
101 103
102 /* popup drawing */ 104 /* popup drawing */
103 void drawPopupMenuItem ( QPainter * p, bool checkable, int maxpmw, 105 void drawPopupMenuItem ( QPainter * p, bool checkable, int maxpmw,
104 int tab, QMenuItem * mi, 106 int tab, QMenuItem * mi,
105 const QPalette & pal, bool act, 107 const QPalette & pal, bool act,
106 bool enabled, int x, int y, 108 bool enabled, int x, int y,
107 int w, int h ); 109 int w, int h );
108 110
109 /* combo box */ 111 /* combo box */
110 QRect comboButtonRect ( int x, int y, int w, int h ); 112 QRect comboButtonRect ( int x, int y, int w, int h );
111 void drawComboButton( QPainter * p, int x, int y, 113 void drawComboButton( QPainter * p, int x, int y,
112 int w, int h, 114 int w, int h,
113 const QColorGroup & g, 115 const QColorGroup & g,
114 bool sunken = FALSE, 116 bool sunken = FALSE,
115 bool editable = FALSE, 117 bool editable = FALSE,
116 bool enabled = TRUE, 118 bool enabled = TRUE,
117 const QBrush * fill = 0 ); 119 const QBrush * fill = 0 );
118 120
119 /* tabbar */ 121 /* tabbar */
120 void drawTab(QPainter*, const QTabBar*, QTab*, 122 void drawTab(QPainter*, const QTabBar*, QTab*,
121 bool selected ); 123 bool selected );
122 void drawTabMask( QPainter*, const QTabBar*, QTab*, 124 void drawTabMask( QPainter*, const QTabBar*, QTab*,
123 bool ); 125 bool );
124 void tabbarMetrics( const QTabBar* t, int &hframe, int &vframe, int &overlap); 126 void tabbarMetrics( const QTabBar* t, int &hframe, int &vframe, int &overlap);
125 127
126 /* tool button */ 128 /* tool button */
127 void drawToolButton ( QPainter * p, int x, int y, 129 void drawToolButton ( QPainter * p, int x, int y,
128 int w, int h, 130 int w, int h,
129 const QColorGroup & g, 131 const QColorGroup & g,
130 bool sunken = FALSE, 132 bool sunken = FALSE,
131 const QBrush * fill = 0 ); 133 const QBrush * fill = 0 );
132 134
133 /* scrollbar */ 135 /* scrollbar */
134 void drawScrollBarControls ( QPainter *, const QScrollBar *, 136 void drawScrollBarControls ( QPainter *, const QScrollBar *,
135 int sliderStart, uint controls, 137 int sliderStart, uint controls,
136 uint activeControl ); 138 uint activeControl );
137 void scrollBarMetrics( const QScrollBar*, int&, int&, int&, int& ); 139 void scrollBarMetrics( const QScrollBar*, int&, int&, int&, int& );
138 QStyle::ScrollControl scrollBarPointOver( const QScrollBar*, int sliderStart, 140 QStyle::ScrollControl scrollBarPointOver( const QScrollBar*, int sliderStart,
139 const QPoint& ); 141 const QPoint& );
140 142
141 /* slider drawing */ 143 /* slider drawing */