// This is the SIP interface definition for TQSplitter.
//
// 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>TQSplitter</Title>
<FuncSynopsis>
        <FuncDef>void <Function>getRange</Function></FuncDef>
        <ParamDef>int <Parameter>id</Parameter></ParamDef>
        <ParamDef>int *<Parameter>min</Parameter></ParamDef>
        <ParamDef>int *<Parameter>max</Parameter></ParamDef>
</FuncSynopsis>
<Para>
This takes the <Literal>id</Literal> parameter and returns the
<Literal>min</Literal> and <Literal>max</Literal> values as a tuple. (TQt v2+)
</Para>
</Sect2>
%End


%If (TQt_SPLITTER)

class TQSplitter : TQFrame
{
%TypeHeaderCode
#include <tqsplitter.h>
%End

public:
	enum ResizeMode {
		Stretch,
		KeepSize,
		FollowSizeHint,
		Auto
	};

	TQSplitter(TQWidget * /TransferThis/ = 0,const char * = 0);
	TQSplitter(Orientation,TQWidget * /TransferThis/ = 0,const char * = 0);

	virtual void setOrientation(Orientation);
	Orientation orientation() const;

	void setChildrenCollapsible(bool);
	bool childrenCollapsible() const;

	void setCollapsible(TQWidget *,bool);

	virtual void setResizeMode(TQWidget *,ResizeMode);
	virtual void setOpaqueResize(bool = 1);
	bool opaqueResize() const;

	void moveToFirst(TQWidget *);
	void moveToLast(TQWidget *);

	void refresh();
	TQSize sizeHint() const;
	TQSize minimumSizeHint() const;

	TQValueList<int> sizes() const;
	void setSizes(TQValueList<int>);

	int handleWidth() const;
	void setHandleWidth(int);

protected:
	void childEvent(TQChildEvent *);

	bool event(TQEvent *);
	void resizeEvent(TQResizeEvent *);

	int idAfter(TQWidget *) const;

	void moveSplitter(TQCOORD,int);
	virtual void drawSplitter(TQPainter *,TQCOORD,TQCOORD,TQCOORD,TQCOORD);
	void styleChange(TQStyle &);
	int adjustPos(int,int);
	virtual void setRubberband(int);
	void getRange(int,int *,int *);

private:
	TQSplitter(const TQSplitter &);
};

%End
