4 #define parent_style qwindowsstyle
5 #define PARENT_STYLE QWindowsStyle
8 #define PARENT_INC(x) QUOTE(x.h)
10 //#include PARENT_INC(parent_style)
11 #include <qwindowsstyle.h>
14 #include <qdockwindow.h>
15 #include <qstyleplugin.h>
17 #if defined SALOMESTYLE_EXPORTS
19 #define SALOMESTYLE_EXPORT _declspec( dllexport )
21 #define SALOMESTYLE_EXPORT
25 #define SALOMESTYLE_EXPORT _declspec( dllimport )
27 #define SALOMESTYLE_EXPORT
33 class SALOMESTYLE_EXPORT SalomeStyle : public PARENT_STYLE
37 virtual ~SalomeStyle();
39 virtual void polish( QWidget* );
41 virtual bool eventFilter( QObject*, QEvent* );
43 static void mix( const double, QRgb&, const QRgb& );
44 static void mix( const double, QPixmap&, const QColor& );
45 static void mix( const double, const QColor&, const QColor&, QColor& );
47 static void toGrayscale( QPixmap&, double = 1.0 );
49 virtual void drawPrimitive( PrimitiveElement, QPainter*, const QRect&,
50 const QColorGroup&, SFlags = Style_Default,
51 const QStyleOption& = QStyleOption::Default ) const;
53 virtual void drawControl( ControlElement, QPainter*, const QWidget*,
54 const QRect&, const QColorGroup&, SFlags = Style_Default,
55 const QStyleOption& = QStyleOption::Default ) const;
57 virtual QRect subRect( SubRect, const QWidget* ) const;
59 virtual void drawComplexControl( ComplexControl, QPainter*, const QWidget*,
60 const QRect&, const QColorGroup&, SFlags = Style_Default,
61 SCFlags = SC_All, SCFlags = SC_None,
62 const QStyleOption& = QStyleOption::Default ) const;
64 virtual QPixmap stylePixmap( StylePixmap, const QWidget* = 0,
65 const QStyleOption& = QStyleOption::Default ) const;
67 virtual int pixelMetric( PixelMetric, const QWidget* widget = 0 ) const;
70 typedef enum { LeftToRight, RightToLeft, UpToDown, DownToUp } Direction;
72 typedef double (*gradient_func)( double );
74 void drawGradient( QPainter*, const QRect&, const QColor&,
75 const QColor&, const Direction, gradient_func ) const;
77 QString titleText( const QString&, const int, const QFontMetrics& ) const;
80 QWidget* myTitleParent;
83 class SalomeStylePlugin : public QStylePlugin
87 virtual ~SalomeStylePlugin();
89 virtual QStringList keys() const;
90 virtual QStyle* create( const QString& );