// C++ interface header file.
//
// Generated by SIP 3.7 (build 102) on Fri Jul 25 00:26:03 2003
//
// Copyright (c) 2003
// 	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.

#ifndef _qtcanvasQCanvasRectangle_h
#define	_qtcanvasQCanvasRectangle_h

#line 700 "sip/qcanvas.sip"
#include <qcanvas.h>
#line 30 "sipqtcanvasQCanvasRectangle.h"

#include "sipqtcanvasQCanvasPolygonalItem.h"
#include "sipqtcanvasQCanvas.h"
#include "sipqtQRect.h"
#include "sipqtQSize.h"
#include "sipqtQPointArray.h"
#include "sipqtcanvasQCanvasItem.h"
#include "sipqtQPainter.h"


extern SIP_MODULE_EXTERN sipLazyAttrDef sipClassAttrTab_QCanvasRectangle;

extern SIP_MODULE_EXTERN const void *sipCast_QCanvasRectangle Py_PROTO((const void *,PyObject *));
extern SIP_MODULE_EXTERN PyObject *sipNew_QCanvasRectangle Py_PROTO((PyObject *,PyObject *));


class SIP_MODULE_EXTERN sipQCanvasRectangle : public QCanvasRectangle
{
public:
	sipQCanvasRectangle(QCanvas *);
	sipQCanvasRectangle(const QRect&,QCanvas *);
	sipQCanvasRectangle(int,int,int,int,QCanvas *);
	sipQCanvasRectangle(const QCanvasRectangle&);
	~sipQCanvasRectangle();
	QRect boundingRectAdvanced() const;
	QRect boundingRect() const;
	int rtti() const;
	void setActive(bool);
	void setEnabled(bool);
	void setSelected(bool);
	void setVisible(bool);
	void draw(QPainter&);
	void setCanvas(QCanvas *);
	bool collidesWith(const QCanvasItem *) const;
	void advance(int);
	void setVelocity(double,double);
	void setAnimated(bool);
	void moveBy(double,double);
	void drawShape(QPainter&);
	QPointArray areaPointsAdvanced() const;
	QPointArray areaPoints() const;
	void setBrush(QBrush);
	void setPen(QPen);

	// There is a public member function for every protected member
	// function visible from this class.

	void sipProtect_update();
	void sipProtect_draw(QPainter&);
	bool sipProtect_winding();
	void sipProtect_setWinding(bool);
	void sipProtect_invalidate();
	bool sipProtect_isValid();
	void sipProtect_drawShape(QPainter&);
	QPointArray sipProtect_chunks();

	sipThisType *sipPyThis;

private:
	sipQCanvasRectangle(const sipQCanvasRectangle &);
	sipQCanvasRectangle &operator = (const sipQCanvasRectangle &);

	sipMethodCache sipPyMethods[19];
};

extern SIP_MODULE_EXTERN QCanvasRectangle *sipForceConvertTo_QCanvasRectangle Py_PROTO((PyObject *,int *));

#endif
