/**************************************************************************** ** ** Definition of the Metal Style for the themes example ** ** Created : 979899 ** ** Copyright (C) 1997-2008 Trolltech ASA. All rights reserved. ** ** This file is part of an example program for Qt. This example ** program may be used, distributed and modified without limitation. ** *****************************************************************************/ #ifndef METAL_H #define METAL_H #include #ifndef QT_NO_STYLE_WINDOWS #include class MetalStyle : public QWindowsStyle { public: MetalStyle(); void applicationPolish( const QStyleControlElementData &ceData, ControlElementFlags elementFlags, void * ); void applicationUnPolish( const QStyleControlElementData &ceData, ControlElementFlags elementFlags, void * ); void polish( const QStyleControlElementData &ceData, ControlElementFlags elementFlags, void * ); void unPolish( const QStyleControlElementData &ceData, ControlElementFlags elementFlags, void * ); void drawPrimitive( PrimitiveElement pe, QPainter *p, const QStyleControlElementData &ceData, ControlElementFlags elementFlags, const QRect &r, const QColorGroup &cg, SFlags flags = Style_Default, const QStyleOption& = QStyleOption::Default) const; void drawControl( ControlElement element, QPainter *p, const QStyleControlElementData &ceData, ControlElementFlags elementFlags, const QRect &r, const QColorGroup &cg, SFlags how = Style_Default, const QStyleOption& = QStyleOption::Default, const QWidget *widget = 0 ) const; void drawComplexControl( ComplexControl cc, QPainter *p, const QStyleControlElementData &ceData, ControlElementFlags elementFlags, const QRect &r, const QColorGroup &cg, SFlags how = Style_Default, SCFlags sub = SC_All, SCFlags subActive = SC_None, const QStyleOption& = QStyleOption::Default, const QWidget *widget = 0 ) const; int pixelMetric( PixelMetric, const QStyleControlElementData &ceData, ControlElementFlags elementFlags, const QWidget * = 0 ) const; private: void drawMetalFrame( QPainter *p, int x, int y, int w, int h ) const; void drawMetalGradient( QPainter *p, int x, int y, int w, int h, bool sunken, bool horz, bool flat=FALSE ) const; void drawMetalButton( QPainter *p, int x, int y, int w, int h, bool sunken, bool horz, bool flat=FALSE ) const; QPalette oldPalette; }; #endif #endif