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

#line 73 "sip/qapplication.sip"
#include <qapplication.h>
#line 30 "sipqtQApplication.h"

#include "sipqtQObject.h"
#include "sipqtQStyle.h"
#include "sipqtQString.h"
#include "sipqtQCursor.h"
#include "sipqtQPalette.h"
#include "sipqtQWidget.h"
#include "sipqtQFont.h"
#include "sipqtQFontMetrics.h"
#include "sipqtQWidgetList.h"
#include "sipqtQDesktopWidget.h"
#include "sipqtQClipboard.h"
#include "sipqtQPoint.h"
#include "sipqtQEventLoop.h"
#include "sipqtQEvent.h"
#include "sipqtQTextCodec.h"
#include "sipqtQTranslator.h"
#include "sipqtQSize.h"
#include "sipqtQStringList.h"
#include "sipqtQSessionManager.h"


extern SIP_IMPORT sipLazyAttrDef sipClassAttrTab_QApplication;

extern SIP_IMPORT const void *sipCast_QApplication Py_PROTO((const void *,PyObject *));
extern SIP_IMPORT PyObject *sipNew_QApplication Py_PROTO((PyObject *,PyObject *));


class SIP_IMPORT sipQApplication : public QApplication
{
public:
	sipQApplication(int&,char **);
	sipQApplication(int&,char **,QApplication::Type);
	~sipQApplication();
	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 saveState(QSessionManager&);
	static void sipVH_saveState(const sipMethodCache *,sipThisType *,QSessionManager&);
	void commitData(QSessionManager&);
	static void sipVH_commitData(const sipMethodCache *,sipThisType *,QSessionManager&);
	bool notify(QObject *,QEvent *);
	static bool sipVH_notify(const sipMethodCache *,sipThisType *,QObject *,QEvent *);
	void polish(QWidget *);
	static void sipVH_polish(const sipMethodCache *,sipThisType *,QWidget *);
	void setMainWidget(QWidget *);
	static void sipVH_setMainWidget(const sipMethodCache *,sipThisType *,QWidget *);

	// 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 *);
	bool sipProtect_event(QEvent *);

	// 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_lastWindowClosed(PyObject *sipArgs);
	int sipEmit_aboutToQuit(PyObject *sipArgs);
	int sipEmit_guiThreadAwake(PyObject *sipArgs);

	sipThisType *sipPyThis;

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

	sipMethodCache sipPyMethods[15];
};

extern SIP_IMPORT QApplication *sipForceConvertTo_QApplication Py_PROTO((PyObject *,int *));

#endif
