summaryrefslogtreecommitdiff
Unidiff
Diffstat (more/less context) (ignore whitespace changes)
-rw-r--r--noncore/styles/theme/othemestyle.cpp8
-rw-r--r--noncore/styles/theme/othemestyle.h6
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
@@ -216,192 +216,200 @@ void OThemeStyle::drawBaseButton( QPainter *p, int x, int y, int w, int h,
216 } 216 }
217 p->setPen( oldPen ); 217 p->setPen( oldPen );
218} 218}
219 219
220void OThemeStyle::drawButton( QPainter *p, int x, int y, int w, int h, 220void OThemeStyle::drawButton( QPainter *p, int x, int y, int w, int h,
221 const QColorGroup &g, bool sunken, 221 const QColorGroup &g, bool sunken,
222 const QBrush *fill ) 222 const QBrush *fill )
223{ 223{
224 drawBaseButton( p, x, y, w, h, g, sunken, roundButton(), sunken ? 224 drawBaseButton( p, x, y, w, h, g, sunken, roundButton(), sunken ?
225 PushButtonDown : PushButton, fill ); 225 PushButtonDown : PushButton, fill );
226} 226}
227 227
228void OThemeStyle::drawPushButton( QPushButton* btn, QPainter *p ) 228void OThemeStyle::drawPushButton( QPushButton* btn, QPainter *p )
229{ 229{
230 bool sunken = btn->isOn() || btn->isDown(); 230 bool sunken = btn->isOn() || btn->isDown();
231 int diw = buttonDefaultIndicatorWidth(); 231 int diw = buttonDefaultIndicatorWidth();
232 drawBaseButton( p, diw, diw, btn->width() - 2 * diw, btn->height() - 2 * diw, 232 drawBaseButton( p, diw, diw, btn->width() - 2 * diw, btn->height() - 2 * diw,
233 *colorGroup( btn->colorGroup(), sunken ? PushButtonDown : 233 *colorGroup( btn->colorGroup(), sunken ? PushButtonDown :
234 PushButton ), sunken, roundButton(), 234 PushButton ), sunken, roundButton(),
235 sunken ? PushButtonDown : PushButton, NULL ); 235 sunken ? PushButtonDown : PushButton, NULL );
236 // TODO if diw, draw fancy default button indicator 236 // TODO if diw, draw fancy default button indicator
237} 237}
238 238
239void OThemeStyle::drawBaseMask( QPainter *p, int x, int y, int w, int h, 239void OThemeStyle::drawBaseMask( QPainter *p, int x, int y, int w, int h,
240 bool round ) 240 bool round )
241{ 241{
242 // round edge fills 242 // round edge fills
243 static const QCOORD btm_left_fill[] = { 243 static const QCOORD btm_left_fill[] = {
244 0, 0, 1, 0, 2, 0, 3, 0, 4, 0, 0, 1, 1, 1, 2, 1, 3, 1, 4, 1, 244 0, 0, 1, 0, 2, 0, 3, 0, 4, 0, 0, 1, 1, 1, 2, 1, 3, 1, 4, 1,
245 1, 2, 2, 2, 3, 2, 4, 2, 2, 3, 3, 3, 4, 3, 3, 4, 4, 4 245 1, 2, 2, 2, 3, 2, 4, 2, 2, 3, 3, 3, 4, 3, 3, 4, 4, 4
246 }; 246 };
247 247
248 static const QCOORD btm_right_fill[] = { 248 static const QCOORD btm_right_fill[] = {
249 0, 0, 1, 0, 2, 0, 3, 0, 4, 0, 0, 1, 1, 1, 2, 1, 3, 1, 4, 249 0, 0, 1, 0, 2, 0, 3, 0, 4, 0, 0, 1, 1, 1, 2, 1, 3, 1, 4,
250 1, 0, 2, 1, 2, 2, 2, 3, 2, 0, 3, 1, 3, 2, 3, 0, 4, 1, 4 250 1, 0, 2, 1, 2, 2, 2, 3, 2, 0, 3, 1, 3, 2, 3, 0, 4, 1, 4
251 }; 251 };
252 252
253 static const QCOORD top_left_fill[] = { 253 static const QCOORD top_left_fill[] = {
254 3, 0, 4, 0, 2, 1, 3, 1, 4, 1, 1, 2, 2, 2, 3, 2, 4, 2, 0, 3, 254 3, 0, 4, 0, 2, 1, 3, 1, 4, 1, 1, 2, 2, 2, 3, 2, 4, 2, 0, 3,
255 1, 3, 2, 3, 3, 3, 4, 3, 0, 4, 1, 4, 2, 4, 3, 4, 4, 4 255 1, 3, 2, 3, 3, 3, 4, 3, 0, 4, 1, 4, 2, 4, 3, 4, 4, 4
256 }; 256 };
257 257
258 static const QCOORD top_right_fill[] = { 258 static const QCOORD top_right_fill[] = {
259 0, 0, 1, 0, 0, 1, 1, 1, 2, 1, 0, 2, 1, 2, 2, 2, 3, 2, 0, 259 0, 0, 1, 0, 0, 1, 1, 1, 2, 1, 0, 2, 1, 2, 2, 2, 3, 2, 0,
260 3, 1, 3, 2, 3, 3, 3, 4, 3, 0, 4, 1, 4, 2, 4, 3, 4, 4, 4 260 3, 1, 3, 2, 3, 3, 3, 4, 3, 0, 4, 1, 4, 2, 4, 3, 4, 4, 4
261 }; 261 };
262 262
263 QBrush fillBrush( color1, SolidPattern ); 263 QBrush fillBrush( color1, SolidPattern );
264 p->setPen( color1 ); 264 p->setPen( color1 );
265 if ( round && w > 19 && h > 19 ) { 265 if ( round && w > 19 && h > 19 ) {
266 int x2 = x + w - 1; 266 int x2 = x + w - 1;
267 int y2 = y + h - 1; 267 int y2 = y + h - 1;
268 QPointArray a( QCOORDARRLEN( top_left_fill ), top_left_fill ); 268 QPointArray a( QCOORDARRLEN( top_left_fill ), top_left_fill );
269 a.translate( 1, 1 ); 269 a.translate( 1, 1 );
270 p->drawPoints( a ); 270 p->drawPoints( a );
271 a.setPoints( QCOORDARRLEN( btm_left_fill ), btm_left_fill ); 271 a.setPoints( QCOORDARRLEN( btm_left_fill ), btm_left_fill );
272 a.translate( 1, h - 6 ); 272 a.translate( 1, h - 6 );
273 p->drawPoints( a ); 273 p->drawPoints( a );
274 a.setPoints( QCOORDARRLEN( top_right_fill ), top_right_fill ); 274 a.setPoints( QCOORDARRLEN( top_right_fill ), top_right_fill );
275 a.translate( w - 6, 1 ); 275 a.translate( w - 6, 1 );
276 p->drawPoints( a ); 276 p->drawPoints( a );
277 a.setPoints( QCOORDARRLEN( btm_right_fill ), btm_right_fill ); 277 a.setPoints( QCOORDARRLEN( btm_right_fill ), btm_right_fill );
278 a.translate( w - 6, h - 6 ); 278 a.translate( w - 6, h - 6 );
279 p->drawPoints( a ); 279 p->drawPoints( a );
280 280
281 p->fillRect( x + 6, y, w - 12, h, fillBrush ); 281 p->fillRect( x + 6, y, w - 12, h, fillBrush );
282 p->fillRect( x, y + 6, x + 6, h - 12, fillBrush ); 282 p->fillRect( x, y + 6, x + 6, h - 12, fillBrush );
283 p->fillRect( x2 - 6, y + 6, x2, h - 12, fillBrush ); 283 p->fillRect( x2 - 6, y + 6, x2, h - 12, fillBrush );
284 p->drawLine( x + 6, y, x2 - 6, y ); 284 p->drawLine( x + 6, y, x2 - 6, y );
285 p->drawLine( x + 6, y2, x2 - 6, y2 ); 285 p->drawLine( x + 6, y2, x2 - 6, y2 );
286 p->drawLine( x, y + 6, x, y2 - 6 ); 286 p->drawLine( x, y + 6, x, y2 - 6 );
287 p->drawLine( x2, y + 6, x2, y2 - 6 ); 287 p->drawLine( x2, y + 6, x2, y2 - 6 );
288 288
289 } 289 }
290 else 290 else
291 p->fillRect( x, y, w, h, fillBrush ); 291 p->fillRect( x, y, w, h, fillBrush );
292} 292}
293 293
294void OThemeStyle::drawButtonMask( QPainter *p, int x, int y, int w, int h ) 294void OThemeStyle::drawButtonMask( QPainter *p, int x, int y, int w, int h )
295{ 295{
296 drawBaseMask( p, x, y, w, h, roundButton() ); 296 drawBaseMask( p, x, y, w, h, roundButton() );
297} 297}
298 298
299void OThemeStyle::drawComboButtonMask( QPainter *p, int x, int y, int w, int h ) 299void OThemeStyle::drawComboButtonMask( QPainter *p, int x, int y, int w, int h )
300{ 300{
301 drawBaseMask( p, x, y, w, h, roundComboBox() ); 301 drawBaseMask( p, x, y, w, h, roundComboBox() );
302} 302}
303 303
304void OThemeStyle::drawBevelButton( QPainter *p, int x, int y, int w, int h, 304void OThemeStyle::drawBevelButton( QPainter *p, int x, int y, int w, int h,
305 const QColorGroup &g, bool sunken, 305 const QColorGroup &g, bool sunken,
306 const QBrush * ) 306 const QBrush * )
307{ 307{
308 WidgetType type = sunken ? BevelDown : Bevel; 308 WidgetType type = sunken ? BevelDown : Bevel;
309 drawBaseButton( p, x, y, w, h, *colorGroup( g, type ), sunken, false, type ); 309 drawBaseButton( p, x, y, w, h, *colorGroup( g, type ), sunken, false, type );
310} 310}
311 311
312void OThemeStyle::drawToolButton( QPainter *p, int x, int y, int w, int h,
313 const QColorGroup &g, bool sunken,
314 const QBrush * )
315{
316 WidgetType type = sunken ? ToolButtonDown : ToolButton;
317 drawBaseButton( p, x, y, w, h, *colorGroup( g, type ), sunken, false, type );
318}
319
312#if 0 320#if 0
313void OThemeStyle::drawKToolBarButton( QPainter *p, int x, int y, int w, int h, 321void OThemeStyle::drawKToolBarButton( QPainter *p, int x, int y, int w, int h,
314 const QColorGroup &g, bool sunken, 322 const QColorGroup &g, bool sunken,
315 bool raised, bool enabled, bool popup, 323 bool raised, bool enabled, bool popup,
316 KToolButtonType type, const QString &btext, 324 KToolButtonType type, const QString &btext,
317 const QPixmap *pixmap, QFont *font, 325 const QPixmap *pixmap, QFont *font,
318 QWidget * ) 326 QWidget * )
319{ 327{
320 QFont tmp_font( QString::fromLatin1( "Helvetica" ), 10 ); 328 QFont tmp_font( QString::fromLatin1( "Helvetica" ), 10 );
321 if ( font ) 329 if ( font )
322 tmp_font = *font; 330 tmp_font = *font;
323 QFontMetrics fm( tmp_font ); 331 QFontMetrics fm( tmp_font );
324 WidgetType widget = sunken ? ToolButtonDown : ToolButton; 332 WidgetType widget = sunken ? ToolButtonDown : ToolButton;
325 333
326 drawBaseButton( p, x, y, w, h, *colorGroup( g, widget ), sunken, false, 334 drawBaseButton( p, x, y, w, h, *colorGroup( g, widget ), sunken, false,
327 widget ); 335 widget );
328 int dx, dy; 336 int dx, dy;
329 if ( type == Icon ) { // icon only 337 if ( type == Icon ) { // icon only
330 if ( pixmap ) { 338 if ( pixmap ) {
331 dx = ( w - pixmap->width() ) / 2; 339 dx = ( w - pixmap->width() ) / 2;
332 dy = ( h - pixmap->height() ) / 2; 340 dy = ( h - pixmap->height() ) / 2;
333 if ( sunken ) { 341 if ( sunken ) {
334 ++dx; 342 ++dx;
335 ++dy; 343 ++dy;
336 } 344 }
337 p->drawPixmap( x + dx, y + dy, *pixmap ); 345 p->drawPixmap( x + dx, y + dy, *pixmap );
338 } 346 }
339 } 347 }
340 else if ( type == IconTextRight ) { // icon and text (if any) 348 else if ( type == IconTextRight ) { // icon and text (if any)
341 if ( pixmap ) { 349 if ( pixmap ) {
342 dx = 4; 350 dx = 4;
343 dy = ( h - pixmap->height() ) / 2; 351 dy = ( h - pixmap->height() ) / 2;
344 if ( sunken ) { 352 if ( sunken ) {
345 ++dx; 353 ++dx;
346 ++dy; 354 ++dy;
347 } 355 }
348 p->drawPixmap( x + dx, y + dy, *pixmap ); 356 p->drawPixmap( x + dx, y + dy, *pixmap );
349 } 357 }
350 if ( !btext.isNull() ) { 358 if ( !btext.isNull() ) {
351 int tf = AlignVCenter | AlignLeft; 359 int tf = AlignVCenter | AlignLeft;
352 if ( pixmap ) 360 if ( pixmap )
353 dx = 4 + pixmap->width() + 2; 361 dx = 4 + pixmap->width() + 2;
354 else 362 else
355 dx = 4; 363 dx = 4;
356 dy = 0; 364 dy = 0;
357 if ( sunken ) { 365 if ( sunken ) {
358 ++dx; 366 ++dx;
359 ++dy; 367 ++dy;
360 } 368 }
361 if ( font ) 369 if ( font )
362 p->setFont( *font ); 370 p->setFont( *font );
363 if ( raised ) 371 if ( raised )
364 p->setPen( KGlobalSettings::toolBarHighlightColor() ); 372 p->setPen( KGlobalSettings::toolBarHighlightColor() );
365 p->drawText( x + dx, y + dy, w - dx, h, tf, btext ); 373 p->drawText( x + dx, y + dy, w - dx, h, tf, btext );
366 } 374 }
367 } 375 }
368 else if ( type == Text ) { // only text, even if there is a icon 376 else if ( type == Text ) { // only text, even if there is a icon
369 if ( !btext.isNull() ) { 377 if ( !btext.isNull() ) {
370 int tf = AlignTop | AlignLeft; 378 int tf = AlignTop | AlignLeft;
371 if ( !enabled ) 379 if ( !enabled )
372 p->setPen( g.dark() ); 380 p->setPen( g.dark() );
373 dx = ( w - fm.width( btext ) ) / 2; 381 dx = ( w - fm.width( btext ) ) / 2;
374 dy = ( h - fm.lineSpacing() ) / 2; 382 dy = ( h - fm.lineSpacing() ) / 2;
375 if ( sunken ) { 383 if ( sunken ) {
376 ++dx; 384 ++dx;
377 ++dy; 385 ++dy;
378 } 386 }
379 if ( font ) 387 if ( font )
380 p->setFont( *font ); 388 p->setFont( *font );
381 if ( raised ) 389 if ( raised )
382 p->setPen( KGlobalSettings::toolBarHighlightColor() ); 390 p->setPen( KGlobalSettings::toolBarHighlightColor() );
383 p->drawText( x + dx, y + dy, fm.width( btext ), fm.lineSpacing(), tf, btext ); 391 p->drawText( x + dx, y + dy, fm.width( btext ), fm.lineSpacing(), tf, btext );
384 } 392 }
385 } 393 }
386 else if ( type == IconTextBottom ) { 394 else if ( type == IconTextBottom ) {
387 if ( pixmap ) { 395 if ( pixmap ) {
388 dx = ( w - pixmap->width() ) / 2; 396 dx = ( w - pixmap->width() ) / 2;
389 dy = ( h - fm.lineSpacing() - pixmap->height() ) / 2; 397 dy = ( h - fm.lineSpacing() - pixmap->height() ) / 2;
390 if ( sunken ) { 398 if ( sunken ) {
391 ++dx; 399 ++dx;
392 ++dy; 400 ++dy;
393 } 401 }
394 p->drawPixmap( x + dx, y + dy, *pixmap ); 402 p->drawPixmap( x + dx, y + dy, *pixmap );
395 } 403 }
396 if ( !btext.isNull() ) { 404 if ( !btext.isNull() ) {
397 int tf = AlignBottom | AlignHCenter; 405 int tf = AlignBottom | AlignHCenter;
398 dx = ( w - fm.width( btext ) ) / 2; 406 dx = ( w - fm.width( btext ) ) / 2;
399 dy = h - fm.lineSpacing() - 4; 407 dy = h - fm.lineSpacing() - 4;
400 if ( sunken ) { 408 if ( sunken ) {
401 ++dx; 409 ++dx;
402 ++dy; 410 ++dy;
403 } 411 }
404 if ( font ) 412 if ( font )
405 p->setFont( *font ); 413 p->setFont( *font );
406 if ( raised ) 414 if ( raised )
407 p->setPen( KGlobalSettings::toolBarHighlightColor() ); 415 p->setPen( KGlobalSettings::toolBarHighlightColor() );
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
@@ -16,192 +16,198 @@
16 Boston, MA 02111-1307, USA. 16 Boston, MA 02111-1307, USA.
17*/ 17*/
18#ifndef __KTHEMESTYLE_H 18#ifndef __KTHEMESTYLE_H
19#define __KTHEMESTYLE_H 19#define __KTHEMESTYLE_H
20 20
21#include "othemebase.h" 21#include "othemebase.h"
22#include <qwindowdefs.h> 22#include <qwindowdefs.h>
23#include <qobject.h> 23#include <qobject.h>
24#include <qbutton.h> 24#include <qbutton.h>
25#include <qpushbutton.h> 25#include <qpushbutton.h>
26#include <qscrollbar.h> 26#include <qscrollbar.h>
27#include <qstring.h> 27#include <qstring.h>
28 28
29 29
30/** 30/**
31 * KDE themed styles. 31 * KDE themed styles.
32 * 32 *
33 * It provides methods for 33 * It provides methods for
34 * drawing most widgets with user-specified borders, highlights, pixmaps, 34 * drawing most widgets with user-specified borders, highlights, pixmaps,
35 * etc. It also handles various other settings such as scrollbar types, 35 * etc. It also handles various other settings such as scrollbar types,
36 * rounded buttons, and shading types. For a full list of parameters this 36 * rounded buttons, and shading types. For a full list of parameters this
37 * class handles refer to the KDE theme configuration documentation. 37 * class handles refer to the KDE theme configuration documentation.
38 * 38 *
39 */ 39 */
40 40
41class OThemeStyle: public OThemeBase 41class OThemeStyle: public OThemeBase
42{ 42{
43 Q_OBJECT 43 Q_OBJECT
44public: 44public:
45 /** 45 /**
46 * Construct a new @ref OThemeStyle object. 46 * Construct a new @ref OThemeStyle object.
47 * 47 *
48 * @param configFile A KConfig file to use as the theme configuration. 48 * @param configFile A KConfig file to use as the theme configuration.
49 * Defaults to ~/.kderc. 49 * Defaults to ~/.kderc.
50 */ 50 */
51 OThemeStyle( const QString &configFile = QString::null ); 51 OThemeStyle( const QString &configFile = QString::null );
52 ~OThemeStyle(); 52 ~OThemeStyle();
53 virtual void polish( QWidget* ); 53 virtual void polish( QWidget* );
54 virtual void unPolish( QWidget* ); 54 virtual void unPolish( QWidget* );
55 /** 55 /**
56 * By default this just sets the background brushes to the pixmapped 56 * By default this just sets the background brushes to the pixmapped
57 * background. 57 * background.
58 */ 58 */
59 virtual void polish( QApplication *app ); 59 virtual void polish( QApplication *app );
60 virtual void unPolish( QApplication* ); 60 virtual void unPolish( QApplication* );
61 61
62 /// @internal 62 /// @internal
63 // to make it possible for derived classes to overload this function 63 // to make it possible for derived classes to overload this function
64 virtual void polish( QPalette& pal ); 64 virtual void polish( QPalette& pal );
65 65
66 /** 66 /**
67 * This is a convenience method for drawing widgets with 67 * This is a convenience method for drawing widgets with
68 * borders, highlights, pixmaps, colors, etc... 68 * borders, highlights, pixmaps, colors, etc...
69 * You specify the widget type and it will draw it according to the 69 * You specify the widget type and it will draw it according to the
70 * config file settings. 70 * config file settings.
71 * 71 *
72 * @param p The QPainter to draw on. 72 * @param p The QPainter to draw on.
73 * @param g The color group to use. 73 * @param g The color group to use.
74 * @param rounded @p true if the widget is rounded, @p false if rectangular. 74 * @param rounded @p true if the widget is rounded, @p false if rectangular.
75 * @param type The widget type to paint. 75 * @param type The widget type to paint.
76 * @param fill An optional fill brush. Currently ignored (the config file 76 * @param fill An optional fill brush. Currently ignored (the config file
77 * is used instead). 77 * is used instead).
78 */ 78 */
79 virtual void drawBaseButton( QPainter *p, int x, int y, int w, int h, 79 virtual void drawBaseButton( QPainter *p, int x, int y, int w, int h,
80 const QColorGroup &g, bool sunken = FALSE, 80 const QColorGroup &g, bool sunken = FALSE,
81 bool rounded = FALSE, WidgetType type = Bevel, 81 bool rounded = FALSE, WidgetType type = Bevel,
82 const QBrush *fill = 0 ); 82 const QBrush *fill = 0 );
83 /** 83 /**
84 * Draw a mask with for widgets that may be rounded. 84 * Draw a mask with for widgets that may be rounded.
85 * 85 *
86 *Currently used 86 *Currently used
87 * by pushbuttons and comboboxes. 87 * by pushbuttons and comboboxes.
88 * 88 *
89 * @param p The QPainter to draw on. 89 * @param p The QPainter to draw on.
90 * @param rounded @p true if the widget is rounded, @p false if rectangular. 90 * @param rounded @p true if the widget is rounded, @p false if rectangular.
91 */ 91 */
92 virtual void drawBaseMask( QPainter *p, int x, int y, int w, int h, 92 virtual void drawBaseMask( QPainter *p, int x, int y, int w, int h,
93 bool rounded ); 93 bool rounded );
94 /** 94 /**
95 * Draw a pushbutton. 95 * Draw a pushbutton.
96 * 96 *
97 * This calls @ref drawBaseButton() with @p PushButton as the 97 * This calls @ref drawBaseButton() with @p PushButton as the
98 * widget type. 98 * widget type.
99 */ 99 */
100 virtual void drawButton( QPainter *p, int x, int y, int w, int h, 100 virtual void drawButton( QPainter *p, int x, int y, int w, int h,
101 const QColorGroup &g, bool sunken = FALSE, 101 const QColorGroup &g, bool sunken = FALSE,
102 const QBrush *fill = 0 ); 102 const QBrush *fill = 0 );
103 /** 103 /**
104 * Draw a bevel button. 104 * Draw a bevel button.
105 * 105 *
106 * This calls @ref drawBaseButton() with Bevel as the 106 * This calls @ref drawBaseButton() with Bevel as the
107 * widget type. 107 * widget type.
108 */ 108 */
109 virtual void drawBevelButton( QPainter *p, int x, int y, int w, int h, 109 virtual void drawBevelButton( QPainter *p, int x, int y, int w, int h,
110 const QColorGroup &g, bool sunken = FALSE, 110 const QColorGroup &g, bool sunken = FALSE,
111 const QBrush *fill = 0 ); 111 const QBrush *fill = 0 );
112 /**
113 * Draw a toolbar button.
114 */
115 virtual void drawToolButton ( QPainter *p, int x, int y, int w, int h,
116 const QColorGroup &g, bool sunken = FALSE,
117 const QBrush *fill = 0 );
112#if 0 118#if 0
113 /** 119 /**
114 * Draw a toolbar button. 120 * Draw a toolbar button.
115 */ 121 */
116 virtual void drawKToolBarButton( QPainter *p, int x, int y, int w, int h, 122 virtual void drawKToolBarButton( QPainter *p, int x, int y, int w, int h,
117 const QColorGroup &g, bool sunken = false, 123 const QColorGroup &g, bool sunken = false,
118 bool raised = true, bool enabled = true, 124 bool raised = true, bool enabled = true,
119 bool popup = false, KToolButtonType type = Icon, 125 bool popup = false, KToolButtonType type = Icon,
120 const QString &btext = QString::null, 126 const QString &btext = QString::null,
121 const QPixmap *icon = NULL, 127 const QPixmap *icon = NULL,
122 QFont *font = NULL, QWidget *btn = NULL ); 128 QFont *font = NULL, QWidget *btn = NULL );
123 /** 129 /**
124 * Draw the handle used in toolbars. 130 * Draw the handle used in toolbars.
125 */ 131 */
126 void drawKBarHandle( QPainter *p, int x, int y, int w, int h, 132 void drawKBarHandle( QPainter *p, int x, int y, int w, int h,
127 const QColorGroup &g, 133 const QColorGroup &g,
128 KToolBarPos type, QBrush *fill = NULL ); 134 KToolBarPos type, QBrush *fill = NULL );
129 135
130 /** 136 /**
131 * Draw a toolbar. 137 * Draw a toolbar.
132 */ 138 */
133 void drawKToolBar( QPainter *p, int x, int y, int w, int h, 139 void drawKToolBar( QPainter *p, int x, int y, int w, int h,
134 const QColorGroup &g, KToolBarPos type, 140 const QColorGroup &g, KToolBarPos type,
135 QBrush *fill = NULL ); 141 QBrush *fill = NULL );
136#endif 142#endif
137 /** 143 /**
138 * Return the space available in a pushbutton, taking configurable 144 * Return the space available in a pushbutton, taking configurable
139 * borders and highlights into account. 145 * borders and highlights into account.
140 */ 146 */
141 virtual QRect buttonRect( int x, int y, int w, int h ); 147 virtual QRect buttonRect( int x, int y, int w, int h );
142 /** 148 /**
143 * Draw an arrow in the style specified by the config file. 149 * Draw an arrow in the style specified by the config file.
144 */ 150 */
145 virtual void drawArrow( QPainter *p, Qt::ArrowType type, bool down, 151 virtual void drawArrow( QPainter *p, Qt::ArrowType type, bool down,
146 int x, int y, int w, int h, const QColorGroup &g, 152 int x, int y, int w, int h, const QColorGroup &g,
147 bool enabled = true, const QBrush *fill = 0 ); 153 bool enabled = true, const QBrush *fill = 0 );
148 /** 154 /**
149 * Return the size of the exclusive indicator pixmap if one is specified 155 * Return the size of the exclusive indicator pixmap if one is specified
150 * in the config file, otherwise it uses the base style's size. 156 * in the config file, otherwise it uses the base style's size.
151 */ 157 */
152 virtual QSize exclusiveIndicatorSize() const; 158 virtual QSize exclusiveIndicatorSize() const;
153 /** 159 /**
154 * Draw an exclusive indicator widget. 160 * Draw an exclusive indicator widget.
155 * 161 *
156 * If a pixmap is specified in the 162 * If a pixmap is specified in the
157 * config file that is used, otherwise the base style's widget is drawn. 163 * config file that is used, otherwise the base style's widget is drawn.
158 */ 164 */
159 virtual void drawExclusiveIndicator( QPainter* p, int x, int y, int w, 165 virtual void drawExclusiveIndicator( QPainter* p, int x, int y, int w,
160 int h, const QColorGroup &g, bool on, 166 int h, const QColorGroup &g, bool on,
161 bool down = FALSE, 167 bool down = FALSE,
162 bool enabled = TRUE ); 168 bool enabled = TRUE );
163 /** 169 /**
164 * Set the mask of an exclusive indicator widget. 170 * Set the mask of an exclusive indicator widget.
165 * 171 *
166 * If a pixmap is specified 172 * If a pixmap is specified
167 * it is masked according to it's transparent pixels, otherwise the 173 * it is masked according to it's transparent pixels, otherwise the
168 * base style's mask is used. 174 * base style's mask is used.
169 */ 175 */
170 virtual void drawExclusiveIndicatorMask( QPainter *p, int x, int y, int w, 176 virtual void drawExclusiveIndicatorMask( QPainter *p, int x, int y, int w,
171 int h, bool on ); 177 int h, bool on );
172 /** 178 /**
173 * Set the mask of an indicator widget. 179 * Set the mask of an indicator widget.
174 * 180 *
175 * If a pixmap is specified 181 * If a pixmap is specified
176 * it is masked according to it's transparent pixels, otherwise the 182 * it is masked according to it's transparent pixels, otherwise the
177 * base style's mask is used. 183 * base style's mask is used.
178 */ 184 */
179 virtual void drawIndicatorMask( QPainter *p, int x, int y, int w, int h, 185 virtual void drawIndicatorMask( QPainter *p, int x, int y, int w, int h,
180 int state ); 186 int state );
181 /** 187 /**
182 * Set the mask for pushbuttons. 188 * Set the mask for pushbuttons.
183 */ 189 */
184 virtual void drawButtonMask( QPainter *p, int x, int y, int w, int h ); 190 virtual void drawButtonMask( QPainter *p, int x, int y, int w, int h );
185 /** 191 /**
186 * Set the mask for combo boxes. 192 * Set the mask for combo boxes.
187 */ 193 */
188 virtual void drawComboButtonMask( QPainter *p, int x, int y, int w, int h ); 194 virtual void drawComboButtonMask( QPainter *p, int x, int y, int w, int h );
189 /** 195 /**
190 * Return the size of the indicator pixmap if one is specified 196 * Return the size of the indicator pixmap if one is specified
191 * in the config file, otherwise it uses the base style's size. 197 * in the config file, otherwise it uses the base style's size.
192 */ 198 */
193 virtual QSize indicatorSize() const; 199 virtual QSize indicatorSize() const;
194 /** 200 /**
195 * Draw an indicator widget. 201 * Draw an indicator widget.
196 * 202 *
197 * If a pixmap is specified in the 203 * If a pixmap is specified in the
198 * config file that is used, otherwise the base style's widget is drawn. 204 * config file that is used, otherwise the base style's widget is drawn.
199 */ 205 */
200 virtual void drawIndicator( QPainter* p, int x, int y, int w, int h, 206 virtual void drawIndicator( QPainter* p, int x, int y, int w, int h,
201 const QColorGroup &g, int state, 207 const QColorGroup &g, int state,
202 bool down = FALSE, bool enabled = TRUE ); 208 bool down = FALSE, bool enabled = TRUE );
203 /** 209 /**
204 * Draw a combobox. 210 * Draw a combobox.
205 */ 211 */
206 virtual void drawComboButton( QPainter *p, int x, int y, int w, int h, 212 virtual void drawComboButton( QPainter *p, int x, int y, int w, int h,
207 const QColorGroup &g, bool sunken = FALSE, 213 const QColorGroup &g, bool sunken = FALSE,