-rw-r--r-- | noncore/styles/phase/phasestyle.cpp | 22 | ||||
-rw-r--r-- | noncore/styles/phase/phasestyle.h | 8 |
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 | |||
@@ -297,67 +297,77 @@ void PhaseStyle::drawBevelButton(QPainter* p, int x, int y, | |||
297 | } | 297 | } |
298 | 298 | ||
299 | void PhaseStyle::drawPhaseGradient(QPainter* painter, | 299 | void 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 | ||
305 | void PhaseStyle::polish( QWidget* widget ) { | 305 | void 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 | ||
321 | void PhaseStyle::unPolish( QWidget *w ) | ||
322 | { | ||
323 | QWindowsStyle::unPolish( w ); | ||
324 | } | ||
325 | |||
321 | void PhaseStyle::polish( QPalette &pal ) { | 326 | void 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 | ||
334 | void PhaseStyle::polish( QApplication* app ) { | 339 | void 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 | ||
345 | void PhaseStyle::unPolish( QApplication* app ) { | ||
346 | QWindowsStyle::unPolish(app); | ||
347 | qt_set_draw_menu_bar_impl ( 0 ); | ||
348 | } | ||
349 | |||
340 | void PhaseStyle::drawPushButtonLabel (QPushButton *button, QPainter *painter) { | 350 | void 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 | ||
@@ -610,57 +620,57 @@ void PhaseStyle::getButtonShift( int &x, int &y ) { | |||
610 | void PhaseStyle::drawPopupMenuItem ( QPainter * p, bool checkable, | 620 | void 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 | ||
@@ -755,51 +765,51 @@ void PhaseStyle::drawComboButton( QPainter * p, int x, int y, | |||
755 | } | 765 | } |
756 | 766 | ||
757 | void PhaseStyle::tabbarMetrics( const QTabBar* t, int &hframe, int &vframe, int& ov ) { | 767 | void 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 | ||
764 | void PhaseStyle::drawTab(QPainter* painter, const QTabBar* bar, QTab* tab, | 774 | void 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); |
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 | |||
@@ -19,51 +19,53 @@ | |||
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 | ||
34 | class KPixmap; | 34 | class KPixmap; |
35 | 35 | ||
36 | class PhaseStyle : public QWindowsStyle | 36 | class PhaseStyle : public QWindowsStyle |
37 | { | 37 | { |
38 | Q_OBJECT | 38 | Q_OBJECT |
39 | public: | 39 | public: |
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, |