// C++ interface header file.
//
// Generated by SIP 3.7 (build 102) on Fri Jul 25 00:26:04 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 _qtcanvasQCanvas_h
#define	_qtcanvasQCanvas_h

#line 345 "sip/qcanvas.sip"
#include <qcanvas.h>
#line 30 "sipqtcanvasQCanvas.h"

#include "sipqtQObject.h"
#include "sipqtQPixmap.h"
#include "sipqtQColor.h"
#include "sipqtQSize.h"
#include "sipqtQRect.h"
#include "sipqtQPoint.h"
#include "sipqtcanvasQCanvasItemList.h"
#include "sipqtQPointArray.h"
#include "sipqtcanvasQCanvasItem.h"
#include "sipqtQPainter.h"


extern SIP_MODULE_EXTERN sipLazyAttrDef sipClassAttrTab_QCanvas;

extern SIP_MODULE_EXTERN const void *sipCast_QCanvas Py_PROTO((const void *,PyObject *));
extern SIP_MODULE_EXTERN PyObject *sipNew_QCanvas Py_PROTO((PyObject *,PyObject *));


class SIP_MODULE_EXTERN sipQCanvas : public QCanvas
{
public:
	sipQCanvas(QObject *,const char *);
	sipQCanvas(int,int);
	sipQCanvas(QPixmap,int,int,int,int);
	~sipQCanvas();
	void customEvent(QCustomEvent *);
	void childEvent(QChildEvent *);
	void timerEvent(QTimerEvent *);
	QVariant property(const char *) const;
	bool setProperty(const char *,const QVariant&);
	void removeChild(QObject *);
	void insertChild(QObject *);
	void setName(const char *);
	bool eventFilter(QObject *,QEvent *);
	bool event(QEvent *);
	void drawForeground(QPainter&,const QRect&);
	static void sipVH_drawForeground(const sipMethodCache *,sipThisType *,QPainter&,const QRect&);
	void drawBackground(QPainter&,const QRect&);
	static void sipVH_drawBackground(const sipMethodCache *,sipThisType *,QPainter&,const QRect&);
	void update();
	static void sipVH_update(const sipMethodCache *,sipThisType *);
	void advance();
	static void sipVH_advance(const sipMethodCache *,sipThisType *);
	void setDoubleBuffering(bool);
	static void sipVH_setDoubleBuffering(const sipMethodCache *,sipThisType *,bool);
	void setUpdatePeriod(int);
	static void sipVH_setUpdatePeriod(const sipMethodCache *,sipThisType *,int);
	void setAdvancePeriod(int);
	static void sipVH_setAdvancePeriod(const sipMethodCache *,sipThisType *,int);
	void setUnchanged(const QRect&);
	static void sipVH_setUnchanged(const sipMethodCache *,sipThisType *,const QRect&);
	void setChanged(const QRect&);
	static void sipVH_setChanged(const sipMethodCache *,sipThisType *,const QRect&);
	void setAllChanged();
	static void sipVH_setAllChanged(const sipMethodCache *,sipThisType *);
	void retune(int,int);
	static void sipVH_retune(const sipMethodCache *,sipThisType *,int,int);
	void resize(int,int);
	static void sipVH_resize(const sipMethodCache *,sipThisType *,int,int);
	void setTile(int,int,int);
	static void sipVH_setTile(const sipMethodCache *,sipThisType *,int,int,int);
	void setBackgroundColor(const QColor&);
	static void sipVH_setBackgroundColor(const sipMethodCache *,sipThisType *,const QColor&);
	void setBackgroundPixmap(const QPixmap&);
	static void sipVH_setBackgroundPixmap(const sipMethodCache *,sipThisType *,const QPixmap&);
	void setTiles(QPixmap,int,int,int,int);
	static void sipVH_setTiles(const sipMethodCache *,sipThisType *,QPixmap,int,int,int,int);

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

	const QObject * sipProtect_sender();
	void sipProtect_timerEvent(QTimerEvent *);
	void sipProtect_childEvent(QChildEvent *);
	void sipProtect_customEvent(QCustomEvent *);
	void sipProtect_drawBackground(QPainter&,const QRect&);
	void sipProtect_drawForeground(QPainter&,const QRect&);

	// There is a public member function for every Qt signal that can be
	// emitted by this object.  This function is called by Python to emit
	// the signal.

	int sipEmit_destroyed(PyObject *sipArgs);
	int sipEmit_resized(PyObject *sipArgs);

	sipThisType *sipPyThis;

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

	sipMethodCache sipPyMethods[26];
};

extern SIP_MODULE_EXTERN QCanvas *sipForceConvertTo_QCanvas Py_PROTO((PyObject *,int *));

#endif
