author | leseb <leseb> | 2002-07-02 21:23:40 (UTC) |
---|---|---|
committer | leseb <leseb> | 2002-07-02 21:23:40 (UTC) |
commit | d83f58a1a4a314a3ef8b25dd78432488922a9e31 (patch) (side-by-side diff) | |
tree | 353b815ff13bb34594fa8db4d15233ed6b8c27e4 | |
parent | 2481ac4013794f95c53580f99b4b761142e4ee8f (diff) | |
download | opie-d83f58a1a4a314a3ef8b25dd78432488922a9e31.zip opie-d83f58a1a4a314a3ef8b25dd78432488922a9e31.tar.gz opie-d83f58a1a4a314a3ef8b25dd78432488922a9e31.tar.bz2 |
Fix QToolButton drawing
-rw-r--r-- | noncore/styles/theme/othemestyle.cpp | 8 | ||||
-rw-r--r-- | noncore/styles/theme/othemestyle.h | 6 |
2 files changed, 14 insertions, 0 deletions
diff --git a/noncore/styles/theme/othemestyle.cpp b/noncore/styles/theme/othemestyle.cpp index 61127b8..d97b026 100644 --- a/noncore/styles/theme/othemestyle.cpp +++ b/noncore/styles/theme/othemestyle.cpp @@ -280,64 +280,72 @@ void OThemeStyle::drawBaseMask( QPainter *p, int x, int y, int w, int h, p->fillRect( x + 6, y, w - 12, h, fillBrush ); p->fillRect( x, y + 6, x + 6, h - 12, fillBrush ); p->fillRect( x2 - 6, y + 6, x2, h - 12, fillBrush ); p->drawLine( x + 6, y, x2 - 6, y ); p->drawLine( x + 6, y2, x2 - 6, y2 ); p->drawLine( x, y + 6, x, y2 - 6 ); p->drawLine( x2, y + 6, x2, y2 - 6 ); } else p->fillRect( x, y, w, h, fillBrush ); } void OThemeStyle::drawButtonMask( QPainter *p, int x, int y, int w, int h ) { drawBaseMask( p, x, y, w, h, roundButton() ); } void OThemeStyle::drawComboButtonMask( QPainter *p, int x, int y, int w, int h ) { drawBaseMask( p, x, y, w, h, roundComboBox() ); } void OThemeStyle::drawBevelButton( QPainter *p, int x, int y, int w, int h, const QColorGroup &g, bool sunken, const QBrush * ) { WidgetType type = sunken ? BevelDown : Bevel; drawBaseButton( p, x, y, w, h, *colorGroup( g, type ), sunken, false, type ); } +void OThemeStyle::drawToolButton( QPainter *p, int x, int y, int w, int h, + const QColorGroup &g, bool sunken, + const QBrush * ) +{ + WidgetType type = sunken ? ToolButtonDown : ToolButton; + drawBaseButton( p, x, y, w, h, *colorGroup( g, type ), sunken, false, type ); +} + #if 0 void OThemeStyle::drawKToolBarButton( QPainter *p, int x, int y, int w, int h, const QColorGroup &g, bool sunken, bool raised, bool enabled, bool popup, KToolButtonType type, const QString &btext, const QPixmap *pixmap, QFont *font, QWidget * ) { QFont tmp_font( QString::fromLatin1( "Helvetica" ), 10 ); if ( font ) tmp_font = *font; QFontMetrics fm( tmp_font ); WidgetType widget = sunken ? ToolButtonDown : ToolButton; drawBaseButton( p, x, y, w, h, *colorGroup( g, widget ), sunken, false, widget ); int dx, dy; if ( type == Icon ) { // icon only if ( pixmap ) { dx = ( w - pixmap->width() ) / 2; dy = ( h - pixmap->height() ) / 2; if ( sunken ) { ++dx; ++dy; } p->drawPixmap( x + dx, y + dy, *pixmap ); } } else if ( type == IconTextRight ) { // icon and text (if any) if ( pixmap ) { dx = 4; dy = ( h - pixmap->height() ) / 2; diff --git a/noncore/styles/theme/othemestyle.h b/noncore/styles/theme/othemestyle.h index 02bec78..52445c4 100644 --- a/noncore/styles/theme/othemestyle.h +++ b/noncore/styles/theme/othemestyle.h @@ -80,64 +80,70 @@ public: const QColorGroup &g, bool sunken = FALSE, bool rounded = FALSE, WidgetType type = Bevel, const QBrush *fill = 0 ); /** * Draw a mask with for widgets that may be rounded. * *Currently used * by pushbuttons and comboboxes. * * @param p The QPainter to draw on. * @param rounded @p true if the widget is rounded, @p false if rectangular. */ virtual void drawBaseMask( QPainter *p, int x, int y, int w, int h, bool rounded ); /** * Draw a pushbutton. * * This calls @ref drawBaseButton() with @p PushButton as the * widget type. */ virtual void drawButton( QPainter *p, int x, int y, int w, int h, const QColorGroup &g, bool sunken = FALSE, const QBrush *fill = 0 ); /** * Draw a bevel button. * * This calls @ref drawBaseButton() with Bevel as the * widget type. */ virtual void drawBevelButton( QPainter *p, int x, int y, int w, int h, const QColorGroup &g, bool sunken = FALSE, const QBrush *fill = 0 ); + /** + * Draw a toolbar button. + */ + virtual void drawToolButton ( QPainter *p, int x, int y, int w, int h, + const QColorGroup &g, bool sunken = FALSE, + const QBrush *fill = 0 ); #if 0 /** * Draw a toolbar button. */ virtual void drawKToolBarButton( QPainter *p, int x, int y, int w, int h, const QColorGroup &g, bool sunken = false, bool raised = true, bool enabled = true, bool popup = false, KToolButtonType type = Icon, const QString &btext = QString::null, const QPixmap *icon = NULL, QFont *font = NULL, QWidget *btn = NULL ); /** * Draw the handle used in toolbars. */ void drawKBarHandle( QPainter *p, int x, int y, int w, int h, const QColorGroup &g, KToolBarPos type, QBrush *fill = NULL ); /** * Draw a toolbar. */ void drawKToolBar( QPainter *p, int x, int y, int w, int h, const QColorGroup &g, KToolBarPos type, QBrush *fill = NULL ); #endif /** * Return the space available in a pushbutton, taking configurable * borders and highlights into account. */ virtual QRect buttonRect( int x, int y, int w, int h ); /** * Draw an arrow in the style specified by the config file. |