// This is the SIP interface definition for QPlatinumStyle.
//
// Copyright (c) 2007
// 	Riverbank Computing Limited <info@riverbankcomputing.co.uk>
// 
// This file is part of PyQt.
// 
// This copy of PyQt is free software; you can redistribute it and/or modify it
// under the terms of the GNU General Public License as published by the Free
// Software Foundation; either version 2, or (at your option) any later
// version.
// 
// PyQt is supplied in the hope that it will be useful, but WITHOUT ANY
// WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS
// FOR A PARTICULAR PURPOSE.  See the GNU General Public License for more
// details.
// 
// You should have received a copy of the GNU General Public License along with
// PyQt; see the file LICENSE.  If not, write to the Free Software Foundation,
// Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA.
 
 
%ExportedDoc
<Sect2><Title>QPlatinumStyle (Qt v2+)</Title>
<FuncSynopsis>
	<FuncDef>void <Function>scrollBarMetrics</Function></FuncDef>
	<ParamDef>const QTabBar *<Parameter>sb</Parameter></ParamDef>
	<ParamDef>int &<Parameter>sliderMin</Parameter></ParamDef>
	<ParamDef>int &<Parameter>sliderMax</Parameter></ParamDef>
	<ParamDef>int &<Parameter>sliderLength</Parameter></ParamDef>
	<ParamDef>int &<Parameter>buttonDim</Parameter></ParamDef>
</FuncSynopsis>
<Para>
This takes only the <Literal>sb</Literal> parameter and returns a tuple of the
<Literal>sliderMin</Literal>, <Literal>sliderMax</Literal>,
<Literal>sliderLength</Literal> and <Literal>buttonDim</Literal> values.
(Qt v2)
</Para>
</Sect2>
%End
 
 
%If (Qt_2_00 -)
%If (Qt_STYLE_PLATINUM)

class QPlatinumStyle : QWindowsStyle
{
%TypeHeaderCode
#include <qplatinumstyle.h>
%End

public:
	QPlatinumStyle();

%If (- Qt_3_0_0)
	void drawPopupPanel(QPainter *,int,int,int,int,const QColorGroup &,
			    int = 2,const QBrush * = 0);
	void drawButton(QPainter *,int,int,int,int,const QColorGroup &,bool = 0,
			const QBrush * = 0);
	QRect buttonRect(int,int,int,int);
	void drawBevelButton(QPainter *,int,int,int,int,const QColorGroup &,
			     bool = 0,const QBrush * = 0);
	void drawPushButton(QPushButton *,QPainter *);
	void drawPushButtonLabel(QPushButton *,QPainter *);

	void scrollBarMetrics(const QScrollBar *,int &,int &,int &,int &);

	void drawScrollBarControls(QPainter *,const QScrollBar *,int,uint,uint);
	ScrollControl scrollBarPointOver(const QScrollBar *,int,const QPoint &);
	QSize indicatorSize() const;
	void drawIndicator(QPainter *,int,int,int,int,const QColorGroup &,int,
			   bool = 0,bool = 1);
	void drawIndicatorMask(QPainter *,int,int,int,int,int);
	QSize exclusiveIndicatorSize() const;
	void drawExclusiveIndicator(QPainter *,int,int,int,int,
				    const QColorGroup &,bool,bool = 0,bool = 1);
	void drawComboButton(QPainter *,int,int,int,int,const QColorGroup &,
			     bool = 0,bool = 0,bool = 1,const QBrush * = 0);
	QRect comboButtonRect(int,int,int,int);
	QRect comboButtonFocusRect(int,int,int,int);
	int sliderLength() const;
	void drawSlider(QPainter *,int,int,int,int,const QColorGroup &,
			Orientation,bool,bool);
	void drawSliderMask(QPainter *,int,int,int,int,Orientation,bool,bool);
	void drawSliderGroove(QPainter *,int,int,int,int,const QColorGroup &,
			      QCOORD,Orientation);
	int maximumSliderDragDistance() const;
	void drawCheckMark(QPainter *,int,int,int,int,const QColorGroup &,
			   bool,bool);
	void polishPopupMenu(QPopupMenu *);
	int extraPopupMenuItemWidth(bool,int,QMenuItem *,const QFontMetrics &);
	int popupMenuItemHeight(bool,QMenuItem *,const QFontMetrics &);
	void drawPopupMenuItem(QPainter *,bool,int,int,QMenuItem *,
			       const QPalette &,bool,bool,int,int,int,int);
%End
%If (Qt_3_0_0 -)
	void drawPrimitive(PrimitiveElement,QPainter *,const QRect &,
			   const QColorGroup &,SFlags = Style_Default,
			   const QStyleOption & = QStyleOption()) const;
 
	void drawControl(ControlElement,QPainter *,const QWidget *,
			 const QRect &,const QColorGroup &,
			 SFlags = Style_Default,
			 const QStyleOption & = QStyleOption()) const;
 
	void drawComplexControl(ComplexControl,QPainter *,const QWidget *,
				const QRect &,const QColorGroup &,
				SFlags = Style_Default,SCFlags = SC_All,
				SCFlags = SC_None,
				const QStyleOption & = QStyleOption()) const;
 
	QRect querySubControlMetrics(ComplexControl,const QWidget *,SubControl,
				     const QStyleOption & = QStyleOption()) const;
 
	int pixelMetric(PixelMetric,const QWidget * = 0) const;
 
	QRect subRect(SubRect,const QWidget *) const;
%End

protected:
%If (- Qt_3_0_0)
	void drawScrollBarBackground(QPainter *,int,int,int,int,
				     const QColorGroup &,bool,
				     const QBrush * = 0);
%End
	QColor mixedColor(const QColor &,const QColor &) const;
%If (- Qt_3_0_0)
	void drawRiffles(QPainter *,int,int,int,int,const QColorGroup &,bool);
%End
%If (Qt_3_0_0 -)
	void drawRiffles(QPainter *,int,int,int,int,const QColorGroup &,
			 bool) const;
%End

private:
%If (Qt_3_0_0 -)
	QPlatinumStyle(const QPlatinumStyle &);
%End
};

%End
%End
