/***************************************************************************
                            qt_QObject.cpp -  description
                             -------------------
    begin                : Tue Nov 20 20:51:20 2001
    copyright            : (C) 2000-2001 Lost Highway Ltd. All rights reserved.
    email                : Lost_Highway@tipitina.demon.co.uk
    generated by         : duke@tipitina on Tue Nov 20 20:51:20 2001, using kalyptus 0.9.
 ***************************************************************************/

/***************************************************************************
 *                                                                         *
 *   This library is free software; you can redistribute it and/or modify  *
 *   it under the terms of the GNU Library General Public License as       *
 *   published by the Free Software Foundation; either version 2 of the    *
 *   License, or (at your option) any later version.                       *
 *                                                                         *
 ***************************************************************************/

extern "C" {
#include "qt_QObject.h"
}

#include <qobject.h>
#include <qvariant.h>

qt_EventDelegate Qt_EventDelegate = NULL;

class QObjectBridge : public QObject
{
public:
	QObjectBridge(QObject* parent, const char* name) : QObject(parent, name) {}
	~QObjectBridge() {}
	bool  protected_activate_filters(QEvent* arg1) {
		return (bool ) QObject::activate_filters(arg1);
	}
	QConnectionList * protected_receivers(const char* signal) {
		return (QConnectionList *) QObject::receivers(signal);
	}
	QConnectionList * protected_receivers(int signal) {
		return (QConnectionList *) QObject::receivers(signal);
	}
	void protected_activate_signal(int signal) {
		QObject::activate_signal(signal);
		return;
	}
	void protected_activate_signal(int signal, int arg1) {
		QObject::activate_signal(signal, arg1);
		return;
	}
	void protected_activate_signal(int signal, double arg1) {
		QObject::activate_signal(signal, arg1);
		return;
	}
	void protected_activate_signal(int signal, QString arg1) {
		QObject::activate_signal(signal, arg1);
		return;
	}
	void protected_activate_signal_bool(int signal, bool arg1) {
		QObject::activate_signal_bool(signal, arg1);
		return;
	}
	void protected_activate_signal(QConnectionList* clist, QUObject* o) {
		QObject::activate_signal(clist, o);
		return;
	}
	const QObject * protected_sender() {
		return (const QObject *) QObject::sender();
	}
	void protected_connectNotify(const char* signal) {
		QObject::connectNotify(signal);
		return;
	}
	void protected_disconnectNotify(const char* signal) {
		QObject::disconnectNotify(signal);
		return;
	}
	 bool  protected_checkConnectArgs(const char* signal, const QObject* receiver, const char* member) {
		return ( bool ) QObject::checkConnectArgs(signal, receiver, member);
	}
	 QCString  protected_normalizeSignalSlot(const char* signalSlot) {
		return ( QCString ) QObject::normalizeSignalSlot(signalSlot);
	}
	void childEvent(QChildEvent* arg1) {
		if (Qt_EventDelegate == 0L || !(*Qt_EventDelegate)(this, "childEvent", arg1, "QChildEvent")) {
			QObject::childEvent(arg1);
		}
		return;
	}
	void customEvent(QCustomEvent* arg1) {
		if (Qt_EventDelegate == 0L || !(*Qt_EventDelegate)(this, "customEvent", arg1, "QCustomEvent")) {
			QObject::customEvent(arg1);
		}
		return;
	}
	void timerEvent(QTimerEvent* arg1) {
		if (Qt_EventDelegate == 0L || !(*Qt_EventDelegate)(this, "timerEvent", arg1, "QTimerEvent")) {
			QObject::timerEvent(arg1);
		}
		return;
	}
};

qt_QObject * qt_new_QObject(qt_QObject * parent, char* name){
	return (qt_QObject *) new QObjectBridge((QObject*)parent, (char*)name);
}
void qt_del_QObject( qt_QObject* p ){
	delete (QObjectBridge*) p;
}
char* qt_QObject_className( qt_QObject* instPointer){
	return (char*) ((QObjectBridge*)instPointer)->className();
}
qt_QString * qt_QObject_tr( qt_QObject* instPointer,char* arg1, char* arg2){
	return (qt_QString *)new QString(((QObjectBridge*)instPointer)->tr((char*)arg1, (char*)arg2));
}
qt_QString * qt_QObject_trUtf8( qt_QObject* instPointer,char* arg1, char* arg2){
	return (qt_QString *)new QString(((QObjectBridge*)instPointer)->trUtf8((char*)arg1, (char*)arg2));
}
qt_QMetaObject * qt_QObject_metaObject( qt_QObject* instPointer){
	return (qt_QMetaObject *) ((QObjectBridge*)instPointer)->metaObject();
}
int qt_QObject_event( qt_QObject* instPointer,qt_QEvent * arg1){
	return (int) ((QObjectBridge*)instPointer)->event((QEvent*)arg1);
}
int qt_QObject_eventFilter( qt_QObject* instPointer,qt_QObject * arg1, qt_QEvent * arg2){
	return (int) ((QObjectBridge*)instPointer)->eventFilter((QObject*)arg1, (QEvent*)arg2);
}
int qt_QObject_isA( qt_QObject* instPointer,char* arg1){
	return (int) ((QObjectBridge*)instPointer)->isA((char*)arg1);
}
int qt_QObject_inherits( qt_QObject* instPointer,char* arg1){
	return (int) ((QObjectBridge*)instPointer)->inherits((char*)arg1);
}
char* qt_QObject_name( qt_QObject* instPointer){
	return (char*) ((QObjectBridge*)instPointer)->name();
}
char* qt_QObject_name1( qt_QObject* instPointer,char* defaultName){
	return (char*) ((QObjectBridge*)instPointer)->name((char*)defaultName);
}
void qt_QObject_setName( qt_QObject* instPointer,char* name){
	((QObjectBridge*)instPointer)->setName((char*)name);
	return;
}
int qt_QObject_isWidgetType( qt_QObject* instPointer){
	return (int) ((QObjectBridge*)instPointer)->isWidgetType();
}
int qt_QObject_highPriority( qt_QObject* instPointer){
	return (int) ((QObjectBridge*)instPointer)->highPriority();
}
int qt_QObject_signalsBlocked( qt_QObject* instPointer){
	return (int) ((QObjectBridge*)instPointer)->signalsBlocked();
}
void qt_QObject_blockSignals( qt_QObject* instPointer,int b){
	((QObjectBridge*)instPointer)->blockSignals((bool)b);
	return;
}
int qt_QObject_startTimer( qt_QObject* instPointer,int interval){
	return (int) ((QObjectBridge*)instPointer)->startTimer((int)interval);
}
void qt_QObject_killTimer( qt_QObject* instPointer,int identifier){
	((QObjectBridge*)instPointer)->killTimer((int)identifier);
	return;
}
void qt_QObject_killTimers( qt_QObject* instPointer){
	((QObjectBridge*)instPointer)->killTimers();
	return;
}
qt_QObject * qt_QObject_child( qt_QObject* instPointer,char* objName, char* inheritsClass, int recursiveSearch){
	return (qt_QObject *) ((QObjectBridge*)instPointer)->child((char*)objName, (char*)inheritsClass, (bool)recursiveSearch);
}
qt_QObjectList * qt_QObject_children( qt_QObject* instPointer){
	return (qt_QObjectList *) ((QObjectBridge*)instPointer)->children();
}
qt_QObjectList * qt_QObject_queryList( qt_QObject* instPointer,char* inheritsClass, char* objName, int regexpMatch, int recursiveSearch){
	return (qt_QObjectList *) ((QObjectBridge*)instPointer)->queryList((char*)inheritsClass, (char*)objName, (bool)regexpMatch, (bool)recursiveSearch);
}
void qt_QObject_insertChild( qt_QObject* instPointer,qt_QObject * arg1){
	((QObjectBridge*)instPointer)->insertChild((QObject*)arg1);
	return;
}
void qt_QObject_removeChild( qt_QObject* instPointer,qt_QObject * arg1){
	((QObjectBridge*)instPointer)->removeChild((QObject*)arg1);
	return;
}
void qt_QObject_installEventFilter( qt_QObject* instPointer,qt_QObject * arg1){
	((QObjectBridge*)instPointer)->installEventFilter((QObject*)arg1);
	return;
}
void qt_QObject_removeEventFilter( qt_QObject* instPointer,qt_QObject * arg1){
	((QObjectBridge*)instPointer)->removeEventFilter((QObject*)arg1);
	return;
}
int qt_QObject_connect( qt_QObject* instPointer,qt_QObject * sender, char* signal, char* member){
	return (int) ((QObjectBridge*)instPointer)->connect((QObject*)sender, (char*)signal, (char*)member);
}
int qt_QObject_disconnect( qt_QObject* instPointer,char* signal, qt_QObject * receiver, char* member){
	return (int) ((QObjectBridge*)instPointer)->disconnect((char*)signal, (QObject*)receiver, (char*)member);
}
int qt_QObject_disconnect1( qt_QObject* instPointer,qt_QObject * receiver, char* member){
	return (int) ((QObjectBridge*)instPointer)->disconnect((QObject*)receiver, (char*)member);
}
void qt_QObject_dumpObjectTree( qt_QObject* instPointer){
	((QObjectBridge*)instPointer)->dumpObjectTree();
	return;
}
void qt_QObject_dumpObjectInfo( qt_QObject* instPointer){
	((QObjectBridge*)instPointer)->dumpObjectInfo();
	return;
}
int qt_QObject_setProperty( qt_QObject* instPointer,char* name, qt_QVariant * value){
	return (int) ((QObjectBridge*)instPointer)->setProperty((char*)name, (QVariant&)* (QVariant*)value);
}
qt_QVariant * qt_QObject_property( qt_QObject* instPointer,char* name){
	return (qt_QVariant *)new QVariant(((QObjectBridge*)instPointer)->property((char*)name));
}
qt_QObject * qt_QObject_parent( qt_QObject* instPointer){
	return (qt_QObject *) ((QObjectBridge*)instPointer)->parent();
}
void qt_QObject_deleteLater( qt_QObject* instPointer){
	((QObjectBridge*)instPointer)->deleteLater();
	return;
}
qt_QObjectList * qt_QObject_objectTrees( ){
	return (qt_QObjectList *) QObjectBridge::objectTrees();
}
int qt_QObject_connect1( qt_QObject * sender, char* signal, qt_QObject * receiver, char* member){
	return (int) QObjectBridge::connect((QObject*)sender, (char*)signal, (QObject*)receiver, (char*)member);
}
int qt_QObject_disconnect2( qt_QObject * sender, char* signal, qt_QObject * receiver, char* member){
	return (int) QObjectBridge::disconnect((QObject*)sender, (char*)signal, (QObject*)receiver, (char*)member);
}
void qt_QObject_connectInternal( qt_QObject * sender, int signal_index, qt_QObject * receiver, int membcode, int member_index){
	QObjectBridge::connectInternal((QObject*)sender, (int)signal_index, (QObject*)receiver, (int)membcode, (int)member_index);
	return;
}
qt_QString * qt_QObject_tr1( char* sourceText, char* arg1){
	return (qt_QString *)new QString(QObjectBridge::tr((char*)sourceText, (char*)arg1));
}
qt_QString * qt_QObject_trUtf81( char* sourceText, char* arg1){
	return (qt_QString *)new QString(QObjectBridge::trUtf8((char*)sourceText, (char*)arg1));
}
int qt_QObject_activate_filters( qt_QObject* instPointer,qt_QEvent * arg1){
	return (int) ((QObjectBridge*)instPointer)->protected_activate_filters((QEvent*)arg1);
}
qt_QConnectionList* qt_QObject_receivers( qt_QObject* instPointer,char* signal){
	return (qt_QConnectionList*) ((QObjectBridge*)instPointer)->protected_receivers((char*)signal);
}
qt_QConnectionList* qt_QObject_receivers1( qt_QObject* instPointer,int signal){
	return (qt_QConnectionList*) ((QObjectBridge*)instPointer)->protected_receivers((int)signal);
}
void qt_QObject_activate_signal( qt_QObject* instPointer,int signal){
	((QObjectBridge*)instPointer)->protected_activate_signal((int)signal);
	return;
}
void qt_QObject_activate_signal1( qt_QObject* instPointer,int signal, int arg1){
	((QObjectBridge*)instPointer)->protected_activate_signal((int)signal, (int)arg1);
	return;
}
void qt_QObject_activate_signal2( qt_QObject* instPointer,int signal, double arg1){
	((QObjectBridge*)instPointer)->protected_activate_signal((int)signal, (double)arg1);
	return;
}
void qt_QObject_activate_signal3( qt_QObject* instPointer,int signal, qt_QString * arg1){
	((QObjectBridge*)instPointer)->protected_activate_signal((int)signal, (QString)* (QString*)arg1);
	return;
}
void qt_QObject_activate_signal_bool( qt_QObject* instPointer,int signal, int arg1){
	((QObjectBridge*)instPointer)->protected_activate_signal_bool((int)signal, (bool)arg1);
	return;
}
//void qt_QObject_activate_signal4( qt_QObject* instPointer,qt_QConnectionList* clist, qt_QUObject* o){
//	((QObjectBridge*)instPointer)->protected_activate_signal((QConnectionList*)clist, (QUObject*)o);
//	return;
//}
qt_QObject * qt_QObject_sender( qt_QObject* instPointer){
	return (qt_QObject *) ((QObjectBridge*)instPointer)->protected_sender();
}
void qt_QObject_connectNotify( qt_QObject* instPointer,char* signal){
	((QObjectBridge*)instPointer)->protected_connectNotify((char*)signal);
	return;
}
void qt_QObject_disconnectNotify( qt_QObject* instPointer,char* signal){
	((QObjectBridge*)instPointer)->protected_disconnectNotify((char*)signal);
	return;
}
int qt_QObject_checkConnectArgs( qt_QObject* instPointer,char* signal, qt_QObject * receiver, char* member){
	return (int) ((QObjectBridge*)instPointer)->protected_checkConnectArgs((char*)signal, (QObject*)receiver, (char*)member);
}
//qt_QCString* qt_QObject_normalizeSignalSlot( char* signalSlot){
//	return (qt_QCString*)new QCString(QObjectBridge::protected_normalizeSignalSlot((char*)signalSlot));
//}
void qt_QObject_registerEventDelegate(qt_EventDelegate delegate){
	Qt_EventDelegate = delegate;
	return;
}

