// This is the SIP interface definition for TQWindowsStyle.
//
// Copyright (c) 2007
// 	Riverbank Computing Limited <info@riverbankcomputing.co.uk>
// 
// This file is part of PyTQt.
// 
// This copy of PyTQt 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.
// 
// PyTQt 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
// PyTQt; 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>TQWindowsStyle (TQt v2+)</Title>
<FuncSynopsis>
	<FuncDef>void <Function>getButtonShift</Function></FuncDef>
	<ParamDef>int &<Parameter>x</Parameter></ParamDef>
	<ParamDef>int &<Parameter>y</Parameter></ParamDef>
</FuncSynopsis>
<Para>
This takes no parameters and returns a tuple of the <Literal>x</Literal> and
<Literal>y</Literal> values.  (TQt v2)
</Para>

<FuncSynopsis>
	<FuncDef>void <Function>scrollBarMetrics</Function></FuncDef>
	<ParamDef>const TQTabBar *<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.
(TQt v2)
</Para>

<FuncSynopsis>
	<FuncDef>void <Function>tabbarMetrics</Function></FuncDef>
	<ParamDef>const TQTabBar *<Parameter>t</Parameter></ParamDef>
	<ParamDef>int &<Parameter>hframe</Parameter></ParamDef>
	<ParamDef>int &<Parameter>vframe</Parameter></ParamDef>
	<ParamDef>int &<Parameter>overlap</Parameter></ParamDef>
</FuncSynopsis>
<Para>
This takes only the <Literal>t</Literal> parameter and returns a tuple of the
<Literal>hframe</Literal>, <Literal>vframe</Literal> and
<Literal>overlap</Literal> values.  (TQt v2)
</Para>
</Sect2>
%End
 
 
%If (TQt_STYLE_WINDOWS)

class TQWindowsStyle : TQCommonStyle
{
%TypeHeaderCode
#include <tqwindowsstyle.h>
%End

public:
	TQWindowsStyle();

	void applicationPolish(const TQStyleControlElementData&, ControlElementFlags, void *);
	void applicationUnPolish(const TQStyleControlElementData&, ControlElementFlags, void *);

	void polish(const TQStyleControlElementData&, ControlElementFlags, void *);
	void unPolish(const TQStyleControlElementData&, ControlElementFlags, void *);

	void polish( TQPalette & );

	virtual void polishPopupMenu( const TQStyleControlElementData&, ControlElementFlags, void * );

	void drawPrimitive(PrimitiveElement,TQPainter *,const TQStyleControlElementData&,ControlElementFlags,const TQRect &,
			   const TQColorGroup &,SFlags = Style_Default,
			   const TQStyleOption & = TQStyleOption()) const;
 
	void drawControl(ControlElement,TQPainter *,const TQStyleControlElementData&,ControlElementFlags,
			 const TQRect &,const TQColorGroup &,
			 SFlags = Style_Default,
			 const TQStyleOption & = TQStyleOption(), const TQWidget *=0) const;
 
	void drawComplexControl(ComplexControl,TQPainter *,const TQStyleControlElementData&,ControlElementFlags,
				const TQRect &,const TQColorGroup &,
				SFlags = Style_Default,SCFlags = SC_All,
				SCFlags = SC_None,
				const TQStyleOption & = TQStyleOption(),const TQWidget *=0) const;
 
	int pixelMetric(PixelMetric,const TQStyleControlElementData&,ControlElementFlags,const TQWidget * = 0) const;
 
	TQSize sizeFromContents(ContentsType,const TQStyleControlElementData&,ControlElementFlags,const TQSize &,
			       const TQStyleOption & = TQStyleOption(),const TQWidget *=0) const; 

	int styleHint(StyleHint,const TQStyleControlElementData&,ControlElementFlags,
		      const TQStyleOption & = TQStyleOption(),
		      TQStyleHintReturn * = 0, const TQWidget * = 0) const;
 
	TQPixmap stylePixmap(StylePixmap,const TQStyleControlElementData&,ControlElementFlags,
			    const TQStyleOption & = TQStyleOption(), const TQWidget * = 0) const;

	TQRect subRect(SubRect,const TQStyleControlElementData&, const ControlElementFlags,const TQWidget *) const;

private:
	TQWindowsStyle(const TQWindowsStyle &);
};

%End
