From ff5b0ff83b9af301499fe893d7d6e956cb310369 Mon Sep 17 00:00:00 2001 From: Pritpal Bedi Date: Thu, 30 Sep 2010 17:21:57 +0000 Subject: [PATCH] 2010-09-30 10:20 UTC-0800 Pritpal Bedi (bedipritpal@hotmail.com) + contrib/hbqt/qtcore/qth/QGenericArgument.qth + contrib/hbqt/qtcore/qth/QGenericReturnArgument.qth + contrib/hbqt/qtcore/qth/QMetaClassInfo.qth + contrib/hbqt/qtcore/qth/QMetaEnum.qth + contrib/hbqt/qtcore/qth/QMetaMethod.qth + contrib/hbqt/qtcore/qth/QMetaObject.qth + contrib/hbqt/qtcore/qth/QMetaProperty.qth + contrib/hbqt/qtcore/qth/QMetaType.qth + Added: classes to manage QMetaObject() and allied. Still not on compilable levels. --- harbour/ChangeLog | 12 ++ .../hbqt/qtcore/qth/QGenericArgument.qth | 107 +++++++++++++++ .../qtcore/qth/QGenericReturnArgument.qth | 105 ++++++++++++++ .../hbqt/qtcore/qth/QMetaClassInfo.qth | 96 +++++++++++++ harbour/contrib/hbqt/qtcore/qth/QMetaEnum.qth | 105 ++++++++++++++ .../contrib/hbqt/qtcore/qth/QMetaMethod.qth | 107 +++++++++++++++ .../contrib/hbqt/qtcore/qth/QMetaObject.qth | 128 ++++++++++++++++++ .../contrib/hbqt/qtcore/qth/QMetaProperty.qth | 115 ++++++++++++++++ harbour/contrib/hbqt/qtcore/qth/QMetaType.qth | 103 ++++++++++++++ 9 files changed, 878 insertions(+) create mode 100644 harbour/contrib/hbqt/qtcore/qth/QGenericArgument.qth create mode 100644 harbour/contrib/hbqt/qtcore/qth/QGenericReturnArgument.qth create mode 100644 harbour/contrib/hbqt/qtcore/qth/QMetaClassInfo.qth create mode 100644 harbour/contrib/hbqt/qtcore/qth/QMetaEnum.qth create mode 100644 harbour/contrib/hbqt/qtcore/qth/QMetaMethod.qth create mode 100644 harbour/contrib/hbqt/qtcore/qth/QMetaObject.qth create mode 100644 harbour/contrib/hbqt/qtcore/qth/QMetaProperty.qth create mode 100644 harbour/contrib/hbqt/qtcore/qth/QMetaType.qth diff --git a/harbour/ChangeLog b/harbour/ChangeLog index 7d8820deb8..c385393b23 100644 --- a/harbour/ChangeLog +++ b/harbour/ChangeLog @@ -16,6 +16,18 @@ The license applies to all entries newer than 2009-04-28. */ +2010-09-30 10:20 UTC-0800 Pritpal Bedi (bedipritpal@hotmail.com) + + contrib/hbqt/qtcore/qth/QGenericArgument.qth + + contrib/hbqt/qtcore/qth/QGenericReturnArgument.qth + + contrib/hbqt/qtcore/qth/QMetaClassInfo.qth + + contrib/hbqt/qtcore/qth/QMetaEnum.qth + + contrib/hbqt/qtcore/qth/QMetaMethod.qth + + contrib/hbqt/qtcore/qth/QMetaObject.qth + + contrib/hbqt/qtcore/qth/QMetaProperty.qth + + contrib/hbqt/qtcore/qth/QMetaType.qth + + Added: classes to manage QMetaObject() and allied. + Still not on compilable levels. + 2010-09-30 17:12 UTC+0300 Mindaugas Kavaliauskas (dbtopas/at/dbtopas.lt) * harbour/contrib/rddsdd/sqlmix.c ! fixed typo diff --git a/harbour/contrib/hbqt/qtcore/qth/QGenericArgument.qth b/harbour/contrib/hbqt/qtcore/qth/QGenericArgument.qth new file mode 100644 index 0000000000..5922885c50 --- /dev/null +++ b/harbour/contrib/hbqt/qtcore/qth/QGenericArgument.qth @@ -0,0 +1,107 @@ +/* + * $Id$ + */ + +/* + * Harbour Project source code: + * QT Source Generator for Harbour + * + * Copyright 2009 Pritpal Bedi + * www - http://www.harbour-project.org + * + * This program 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. + * + * This program is distributed 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 this software; see the file COPYING. If not, write to + * the Free Software Foundation, Inc., 59 Temple Place, Suite 330, + * Boston, MA 02111-1307 USA (or visit the web site http://www.gnu.org/). + * + * As a special exception, the Harbour Project gives permission for + * additional uses of the text contained in its release of Harbour. + * + * The exception is that, if you link the Harbour libraries with other + * files to produce an executable, this does not by itself cause the + * resulting executable to be covered by the GNU General Public License. + * Your use of that executable is in no way restricted on account of + * linking the Harbour library code into it. + * + * This exception does not however invalidate any other reasons why + * the executable file might be covered by the GNU General Public License. + * + * This exception applies only to the code released by the Harbour + * Project under the name Harbour. If you copy code from other + * Harbour Project or Free Software Foundation releases into a copy of + * Harbour, as the General Public License permits, the exception does + * not apply to the code that you add in this way. To avoid misleading + * anyone as to the status of such modified files, you must delete + * this exception notice from them. + * + * If you write modifications of your own for Harbour, it is your choice + * whether to permit this exception to apply to your modifications. + * If you do not wish that, delete this exception notice. + * + */ +/*----------------------------------------------------------------------*/ +; +; Header File to Generate QT Wrapper Sources +; + + +QObject = NO +Inherits = +Type = +New = + + + + + + + + + +#include + + +/* + * QGenericArgument ( const char * name = 0, const void * data = 0 ) + * + */ +HB_FUNC( QT_QGENERICARGUMENT ) +{ + if( hb_pcount() == 1 && HB_ISCHAR( 1 ) ) + { + hb_retptr( new QGenericArgument( hb_parc( 1 ), 0 ) ); + } + else if( hb_pcount() == 2 && HB_ISCHAR( 1 ) && HB_ISPOINTER( 2 ) ) + { + hb_retptr( new QGenericArgument( hb_parc( 1 ), hb_parptr( 2 ) ) ); + } + else + { + hb_retptr( new QGenericArgument() ); + } +} + + + + + + +void * data () const +const char * name () const + + + + + + + diff --git a/harbour/contrib/hbqt/qtcore/qth/QGenericReturnArgument.qth b/harbour/contrib/hbqt/qtcore/qth/QGenericReturnArgument.qth new file mode 100644 index 0000000000..edd6206c90 --- /dev/null +++ b/harbour/contrib/hbqt/qtcore/qth/QGenericReturnArgument.qth @@ -0,0 +1,105 @@ +/* + * $Id$ + */ + +/* + * Harbour Project source code: + * QT Source Generator for Harbour + * + * Copyright 2009 Pritpal Bedi + * www - http://www.harbour-project.org + * + * This program 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. + * + * This program is distributed 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 this software; see the file COPYING. If not, write to + * the Free Software Foundation, Inc., 59 Temple Place, Suite 330, + * Boston, MA 02111-1307 USA (or visit the web site http://www.gnu.org/). + * + * As a special exception, the Harbour Project gives permission for + * additional uses of the text contained in its release of Harbour. + * + * The exception is that, if you link the Harbour libraries with other + * files to produce an executable, this does not by itself cause the + * resulting executable to be covered by the GNU General Public License. + * Your use of that executable is in no way restricted on account of + * linking the Harbour library code into it. + * + * This exception does not however invalidate any other reasons why + * the executable file might be covered by the GNU General Public License. + * + * This exception applies only to the code released by the Harbour + * Project under the name Harbour. If you copy code from other + * Harbour Project or Free Software Foundation releases into a copy of + * Harbour, as the General Public License permits, the exception does + * not apply to the code that you add in this way. To avoid misleading + * anyone as to the status of such modified files, you must delete + * this exception notice from them. + * + * If you write modifications of your own for Harbour, it is your choice + * whether to permit this exception to apply to your modifications. + * If you do not wish that, delete this exception notice. + * + */ +/*----------------------------------------------------------------------*/ +; +; Header File to Generate QT Wrapper Sources +; + + +QObject = no +Inherits = QGenericArgument +Type = +New = + + + + + + + + + +#include + + +/* + * QGenericArgument ( const char * name = 0, const void * data = 0 ) + * + */ +HB_FUNC( QT_QGENERICRETURNARGUMENT ) +{ + if( hb_pcount() == 1 && HB_ISCHAR( 1 ) ) + { + hb_retptr( new QGenericReturnArgument( hb_parc( 1 ), 0 ) ); + } + else if( hb_pcount() == 2 && HB_ISCHAR( 1 ) && HB_ISPOINTER( 2 ) ) + { + hb_retptr( new QGenericReturnArgument( hb_parc( 1 ), hb_parptr( 2 ) ) ); + } + else + { + hb_retptr( new QGenericReturnArgument() ); + } +} + + + + + + + + + + + + + diff --git a/harbour/contrib/hbqt/qtcore/qth/QMetaClassInfo.qth b/harbour/contrib/hbqt/qtcore/qth/QMetaClassInfo.qth new file mode 100644 index 0000000000..1d2f2251c9 --- /dev/null +++ b/harbour/contrib/hbqt/qtcore/qth/QMetaClassInfo.qth @@ -0,0 +1,96 @@ +/* + * $Id$ + */ + +/* + * Harbour Project source code: + * QT Source Generator for Harbour + * + * Copyright 2009 Pritpal Bedi + * www - http://www.harbour-project.org + * + * This program 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. + * + * This program is distributed 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 this software; see the file COPYING. If not, write to + * the Free Software Foundation, Inc., 59 Temple Place, Suite 330, + * Boston, MA 02111-1307 USA (or visit the web site http://www.gnu.org/). + * + * As a special exception, the Harbour Project gives permission for + * additional uses of the text contained in its release of Harbour. + * + * The exception is that, if you link the Harbour libraries with other + * files to produce an executable, this does not by itself cause the + * resulting executable to be covered by the GNU General Public License. + * Your use of that executable is in no way restricted on account of + * linking the Harbour library code into it. + * + * This exception does not however invalidate any other reasons why + * the executable file might be covered by the GNU General Public License. + * + * This exception applies only to the code released by the Harbour + * Project under the name Harbour. If you copy code from other + * Harbour Project or Free Software Foundation releases into a copy of + * Harbour, as the General Public License permits, the exception does + * not apply to the code that you add in this way. To avoid misleading + * anyone as to the status of such modified files, you must delete + * this exception notice from them. + * + * If you write modifications of your own for Harbour, it is your choice + * whether to permit this exception to apply to your modifications. + * If you do not wish that, delete this exception notice. + * + */ +/*----------------------------------------------------------------------*/ +; +; Header File to Generate QT Wrapper Sources +; + + +QObject = no +Inherits = +Type = +New = + + + + + + + + + +#include + + +/* + * + * + */ +HB_FUNC( QT_QMETACLASSINFO ) +{ + // hb_retptr( new QMetaClassInfo() ); +} + + + + + + +const char * name () const +const char * value () const + + + + + + + diff --git a/harbour/contrib/hbqt/qtcore/qth/QMetaEnum.qth b/harbour/contrib/hbqt/qtcore/qth/QMetaEnum.qth new file mode 100644 index 0000000000..24652c836d --- /dev/null +++ b/harbour/contrib/hbqt/qtcore/qth/QMetaEnum.qth @@ -0,0 +1,105 @@ +/* + * $Id$ + */ + +/* + * Harbour Project source code: + * QT Source Generator for Harbour + * + * Copyright 2009 Pritpal Bedi + * www - http://www.harbour-project.org + * + * This program 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. + * + * This program is distributed 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 this software; see the file COPYING. If not, write to + * the Free Software Foundation, Inc., 59 Temple Place, Suite 330, + * Boston, MA 02111-1307 USA (or visit the web site http://www.gnu.org/). + * + * As a special exception, the Harbour Project gives permission for + * additional uses of the text contained in its release of Harbour. + * + * The exception is that, if you link the Harbour libraries with other + * files to produce an executable, this does not by itself cause the + * resulting executable to be covered by the GNU General Public License. + * Your use of that executable is in no way restricted on account of + * linking the Harbour library code into it. + * + * This exception does not however invalidate any other reasons why + * the executable file might be covered by the GNU General Public License. + * + * This exception applies only to the code released by the Harbour + * Project under the name Harbour. If you copy code from other + * Harbour Project or Free Software Foundation releases into a copy of + * Harbour, as the General Public License permits, the exception does + * not apply to the code that you add in this way. To avoid misleading + * anyone as to the status of such modified files, you must delete + * this exception notice from them. + * + * If you write modifications of your own for Harbour, it is your choice + * whether to permit this exception to apply to your modifications. + * If you do not wish that, delete this exception notice. + * + */ +/*----------------------------------------------------------------------*/ +; +; Header File to Generate QT Wrapper Sources +; + + +QObject = no +Inherits = +Type = +New = + + + + + + + + + +#include + + +/* + * + * + */ +HB_FUNC( QT_QMETAENUM ) +{ + // hb_retptr( new QMetaEnum() ); +} + + + + + + +bool isFlag () const +bool isValid () const +const char * key ( int index ) const +int keyCount () const +int keyToValue ( const char * key ) const +int keysToValue ( const char * keys ) const +const char * name () const +const char * scope () const +int value ( int index ) const +const char * valueToKey ( int value ) const +QByteArray valueToKeys ( int value ) const + + + + + + + diff --git a/harbour/contrib/hbqt/qtcore/qth/QMetaMethod.qth b/harbour/contrib/hbqt/qtcore/qth/QMetaMethod.qth new file mode 100644 index 0000000000..e41194e831 --- /dev/null +++ b/harbour/contrib/hbqt/qtcore/qth/QMetaMethod.qth @@ -0,0 +1,107 @@ +/* + * $Id$ + */ + +/* + * Harbour Project source code: + * QT Source Generator for Harbour + * + * Copyright 2009 Pritpal Bedi + * www - http://www.harbour-project.org + * + * This program 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. + * + * This program is distributed 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 this software; see the file COPYING. If not, write to + * the Free Software Foundation, Inc., 59 Temple Place, Suite 330, + * Boston, MA 02111-1307 USA (or visit the web site http://www.gnu.org/). + * + * As a special exception, the Harbour Project gives permission for + * additional uses of the text contained in its release of Harbour. + * + * The exception is that, if you link the Harbour libraries with other + * files to produce an executable, this does not by itself cause the + * resulting executable to be covered by the GNU General Public License. + * Your use of that executable is in no way restricted on account of + * linking the Harbour library code into it. + * + * This exception does not however invalidate any other reasons why + * the executable file might be covered by the GNU General Public License. + * + * This exception applies only to the code released by the Harbour + * Project under the name Harbour. If you copy code from other + * Harbour Project or Free Software Foundation releases into a copy of + * Harbour, as the General Public License permits, the exception does + * not apply to the code that you add in this way. To avoid misleading + * anyone as to the status of such modified files, you must delete + * this exception notice from them. + * + * If you write modifications of your own for Harbour, it is your choice + * whether to permit this exception to apply to your modifications. + * If you do not wish that, delete this exception notice. + * + */ +/*----------------------------------------------------------------------*/ +; +; Header File to Generate QT Wrapper Sources +; + + +QObject = no +Inherits = +Type = +New = + + + + + + + + + +#include + + +/* + * + * + */ +HB_FUNC( QT_QMETAMETHOD ) +{ + hb_retptr( new QMetaMethod() ); +} + + + +enum Access { Private, Protected, Public } +enum MethodType { Method, Signal, Slot, Constructor } + + + +Access access () const +//bool invoke ( QObject * object, Qt::ConnectionType connectionType, QGenericReturnArgument returnValue, QGenericArgument val0 = QGenericArgument( 0 ), QGenericArgument val1 = QGenericArgument(), QGenericArgument val2 = QGenericArgument(), QGenericArgument val3 = QGenericArgument(), QGenericArgument val4 = QGenericArgument(), QGenericArgument val5 = QGenericArgument(), QGenericArgument val6 = QGenericArgument(), QGenericArgument val7 = QGenericArgument(), QGenericArgument val8 = QGenericArgument(), QGenericArgument val9 = QGenericArgument() ) const +//bool invoke ( QObject * object, QGenericReturnArgument returnValue, QGenericArgument val0 = QGenericArgument( 0 ), QGenericArgument val1 = QGenericArgument(), QGenericArgument val2 = QGenericArgument(), QGenericArgument val3 = QGenericArgument(), QGenericArgument val4 = QGenericArgument(), QGenericArgument val5 = QGenericArgument(), QGenericArgument val6 = QGenericArgument(), QGenericArgument val7 = QGenericArgument(), QGenericArgument val8 = QGenericArgument(), QGenericArgument val9 = QGenericArgument() ) const +//bool invoke ( QObject * object, Qt::ConnectionType connectionType, QGenericArgument val0 = QGenericArgument( 0 ), QGenericArgument val1 = QGenericArgument(), QGenericArgument val2 = QGenericArgument(), QGenericArgument val3 = QGenericArgument(), QGenericArgument val4 = QGenericArgument(), QGenericArgument val5 = QGenericArgument(), QGenericArgument val6 = QGenericArgument(), QGenericArgument val7 = QGenericArgument(), QGenericArgument val8 = QGenericArgument(), QGenericArgument val9 = QGenericArgument() ) const +//bool invoke ( QObject * object, QGenericArgument val0 = QGenericArgument( 0 ), QGenericArgument val1 = QGenericArgument(), QGenericArgument val2 = QGenericArgument(), QGenericArgument val3 = QGenericArgument(), QGenericArgument val4 = QGenericArgument(), QGenericArgument val5 = QGenericArgument(), QGenericArgument val6 = QGenericArgument(), QGenericArgument val7 = QGenericArgument(), QGenericArgument val8 = QGenericArgument(), QGenericArgument val9 = QGenericArgument() ) const +MethodType methodType () const +QList parameterNames () const +QList parameterTypes () const +const char * signature () const +const char * tag () const +const char * typeName () const + + + + + + + diff --git a/harbour/contrib/hbqt/qtcore/qth/QMetaObject.qth b/harbour/contrib/hbqt/qtcore/qth/QMetaObject.qth new file mode 100644 index 0000000000..7d4ee73aa8 --- /dev/null +++ b/harbour/contrib/hbqt/qtcore/qth/QMetaObject.qth @@ -0,0 +1,128 @@ +/* + * $Id$ + */ + +/* + * Harbour Project source code: + * QT Source Generator for Harbour + * + * Copyright 2009 Pritpal Bedi + * www - http://www.harbour-project.org + * + * This program 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. + * + * This program is distributed 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 this software; see the file COPYING. If not, write to + * the Free Software Foundation, Inc., 59 Temple Place, Suite 330, + * Boston, MA 02111-1307 USA (or visit the web site http://www.gnu.org/). + * + * As a special exception, the Harbour Project gives permission for + * additional uses of the text contained in its release of Harbour. + * + * The exception is that, if you link the Harbour libraries with other + * files to produce an executable, this does not by itself cause the + * resulting executable to be covered by the GNU General Public License. + * Your use of that executable is in no way restricted on account of + * linking the Harbour library code into it. + * + * This exception does not however invalidate any other reasons why + * the executable file might be covered by the GNU General Public License. + * + * This exception applies only to the code released by the Harbour + * Project under the name Harbour. If you copy code from other + * Harbour Project or Free Software Foundation releases into a copy of + * Harbour, as the General Public License permits, the exception does + * not apply to the code that you add in this way. To avoid misleading + * anyone as to the status of such modified files, you must delete + * this exception notice from them. + * + * If you write modifications of your own for Harbour, it is your choice + * whether to permit this exception to apply to your modifications. + * If you do not wish that, delete this exception notice. + * + */ +/*----------------------------------------------------------------------*/ +; +; Header File to Generate QT Wrapper Sources +; + + +QObject = no +Inherits = +Type = +New = + + + + + + + + + +#include + + +/* + * + * + */ +HB_FUNC( QT_QMETAOBJECT ) +{ + // hb_retptr( new QMetaObject() ); +} + + + + + + +QMetaClassInfo classInfo ( int index ) const +int classInfoCount () const +int classInfoOffset () const +const char * className () const +QMetaMethod constructor ( int index ) const +int constructorCount () const +QMetaEnum enumerator ( int index ) const +int enumeratorCount () const +int enumeratorOffset () const +int indexOfClassInfo ( const char * name ) const +int indexOfConstructor ( const char * constructor ) const +int indexOfEnumerator ( const char * name ) const +int indexOfMethod ( const char * method ) const +int indexOfProperty ( const char * name ) const +int indexOfSignal ( const char * signal ) const +int indexOfSlot ( const char * slot ) const +QMetaMethod method ( int index ) const +int methodCount () const +int methodOffset () const +//QObject * newInstance ( QGenericArgument val0 = QGenericArgument( 0 ), QGenericArgument val1 = QGenericArgument(), QGenericArgument val2 = QGenericArgument(), QGenericArgument val3 = QGenericArgument(), QGenericArgument val4 = QGenericArgument(), QGenericArgument val5 = QGenericArgument(), QGenericArgument val6 = QGenericArgument(), QGenericArgument val7 = QGenericArgument(), QGenericArgument val8 = QGenericArgument(), QGenericArgument val9 = QGenericArgument() ) const +QMetaProperty property ( int index ) const +int propertyCount () const +int propertyOffset () const +const QMetaObject * superClass () const +QMetaProperty userProperty () const + +bool checkConnectArgs ( const char * signal, const char * method ) +void connectSlotsByName ( QObject * object ) +//bool invokeMethod ( QObject * obj, const char * member, Qt::ConnectionType type, QGenericReturnArgument ret, QGenericArgument val0 = QGenericArgument( 0 ), QGenericArgument val1 = QGenericArgument(), QGenericArgument val2 = QGenericArgument(), QGenericArgument val3 = QGenericArgument(), QGenericArgument val4 = QGenericArgument(), QGenericArgument val5 = QGenericArgument(), QGenericArgument val6 = QGenericArgument(), QGenericArgument val7 = QGenericArgument(), QGenericArgument val8 = QGenericArgument(), QGenericArgument val9 = QGenericArgument() ) +//bool invokeMethod ( QObject * obj, const char * member, QGenericReturnArgument ret, QGenericArgument val0 = QGenericArgument( 0 ), QGenericArgument val1 = QGenericArgument(), QGenericArgument val2 = QGenericArgument(), QGenericArgument val3 = QGenericArgument(), QGenericArgument val4 = QGenericArgument(), QGenericArgument val5 = QGenericArgument(), QGenericArgument val6 = QGenericArgument(), QGenericArgument val7 = QGenericArgument(), QGenericArgument val8 = QGenericArgument(), QGenericArgument val9 = QGenericArgument() ) +//bool invokeMethod ( QObject * obj, const char * member, Qt::ConnectionType type, QGenericArgument val0 = QGenericArgument( 0 ), QGenericArgument val1 = QGenericArgument(), QGenericArgument val2 = QGenericArgument(), QGenericArgument val3 = QGenericArgument(), QGenericArgument val4 = QGenericArgument(), QGenericArgument val5 = QGenericArgument(), QGenericArgument val6 = QGenericArgument(), QGenericArgument val7 = QGenericArgument(), QGenericArgument val8 = QGenericArgument(), QGenericArgument val9 = QGenericArgument() ) +//bool invokeMethod ( QObject * obj, const char * member, QGenericArgument val0 = QGenericArgument( 0 ), QGenericArgument val1 = QGenericArgument(), QGenericArgument val2 = QGenericArgument(), QGenericArgument val3 = QGenericArgument(), QGenericArgument val4 = QGenericArgument(), QGenericArgument val5 = QGenericArgument(), QGenericArgument val6 = QGenericArgument(), QGenericArgument val7 = QGenericArgument(), QGenericArgument val8 = QGenericArgument(), QGenericArgument val9 = QGenericArgument() ) +QByteArray normalizedSignature ( const char * method ) +QByteArray normalizedType ( const char * type ) + + + + + + + diff --git a/harbour/contrib/hbqt/qtcore/qth/QMetaProperty.qth b/harbour/contrib/hbqt/qtcore/qth/QMetaProperty.qth new file mode 100644 index 0000000000..e26c6cf728 --- /dev/null +++ b/harbour/contrib/hbqt/qtcore/qth/QMetaProperty.qth @@ -0,0 +1,115 @@ +/* + * $Id$ + */ + +/* + * Harbour Project source code: + * QT Source Generator for Harbour + * + * Copyright 2009 Pritpal Bedi + * www - http://www.harbour-project.org + * + * This program 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. + * + * This program is distributed 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 this software; see the file COPYING. If not, write to + * the Free Software Foundation, Inc., 59 Temple Place, Suite 330, + * Boston, MA 02111-1307 USA (or visit the web site http://www.gnu.org/). + * + * As a special exception, the Harbour Project gives permission for + * additional uses of the text contained in its release of Harbour. + * + * The exception is that, if you link the Harbour libraries with other + * files to produce an executable, this does not by itself cause the + * resulting executable to be covered by the GNU General Public License. + * Your use of that executable is in no way restricted on account of + * linking the Harbour library code into it. + * + * This exception does not however invalidate any other reasons why + * the executable file might be covered by the GNU General Public License. + * + * This exception applies only to the code released by the Harbour + * Project under the name Harbour. If you copy code from other + * Harbour Project or Free Software Foundation releases into a copy of + * Harbour, as the General Public License permits, the exception does + * not apply to the code that you add in this way. To avoid misleading + * anyone as to the status of such modified files, you must delete + * this exception notice from them. + * + * If you write modifications of your own for Harbour, it is your choice + * whether to permit this exception to apply to your modifications. + * If you do not wish that, delete this exception notice. + * + */ +/*----------------------------------------------------------------------*/ +; +; Header File to Generate QT Wrapper Sources +; + + +QObject = NO +Inherits = +Type = +New = + + + + + + + + + +#include + + +/* + * + * + */ +HB_FUNC( QT_QMETAPROPERTY ) +{ + // hb_retptr( new QMetaProperty() ); +} + + + + + + +QMetaEnum enumerator () const +bool hasNotifySignal () const +bool isDesignable ( const QObject * object = 0 ) const +bool isEnumType () const +bool isFlagType () const +bool isReadable () const +bool isResettable () const +bool isScriptable ( const QObject * object = 0 ) const +bool isStored ( const QObject * object = 0 ) const +bool isUser ( const QObject * object = 0 ) const +bool isValid () const +bool isWritable () const +const char * name () const +QMetaMethod notifySignal () const +int notifySignalIndex () const +QVariant read ( const QObject * object ) const +bool reset ( QObject * object ) const +QVariant::Type type () const +const char * typeName () const +int userType () const +bool write ( QObject * object, const QVariant & value ) const + + + + + + + diff --git a/harbour/contrib/hbqt/qtcore/qth/QMetaType.qth b/harbour/contrib/hbqt/qtcore/qth/QMetaType.qth new file mode 100644 index 0000000000..79193a2ce1 --- /dev/null +++ b/harbour/contrib/hbqt/qtcore/qth/QMetaType.qth @@ -0,0 +1,103 @@ +/* + * $Id$ + */ + +/* + * Harbour Project source code: + * QT Source Generator for Harbour + * + * Copyright 2009 Pritpal Bedi + * www - http://www.harbour-project.org + * + * This program 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. + * + * This program is distributed 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 this software; see the file COPYING. If not, write to + * the Free Software Foundation, Inc., 59 Temple Place, Suite 330, + * Boston, MA 02111-1307 USA (or visit the web site http://www.gnu.org/). + * + * As a special exception, the Harbour Project gives permission for + * additional uses of the text contained in its release of Harbour. + * + * The exception is that, if you link the Harbour libraries with other + * files to produce an executable, this does not by itself cause the + * resulting executable to be covered by the GNU General Public License. + * Your use of that executable is in no way restricted on account of + * linking the Harbour library code into it. + * + * This exception does not however invalidate any other reasons why + * the executable file might be covered by the GNU General Public License. + * + * This exception applies only to the code released by the Harbour + * Project under the name Harbour. If you copy code from other + * Harbour Project or Free Software Foundation releases into a copy of + * Harbour, as the General Public License permits, the exception does + * not apply to the code that you add in this way. To avoid misleading + * anyone as to the status of such modified files, you must delete + * this exception notice from them. + * + * If you write modifications of your own for Harbour, it is your choice + * whether to permit this exception to apply to your modifications. + * If you do not wish that, delete this exception notice. + * + */ +/*----------------------------------------------------------------------*/ +; +; Header File to Generate QT Wrapper Sources +; + + +QObject = NO +Inherits = +Type = +New = + + + + + + + + + +#include + + +/* + * + * + */ +HB_FUNC( QT_QMETATYPE ) +{ + // hb_retptr( new QMetaType() ); +} + + + +enum Type { Void, Bool, Int, UInt, ..., User } + + + +void * construct ( int type, const void * copy = 0 ) +void destroy ( int type, void * data ) +bool isRegistered ( int type ) +bool load ( QDataStream & stream, int type, void * data ) +bool save ( QDataStream & stream, int type, const void * data ) +int type ( const char * typeName ) +const char * typeName ( int type ) +void unregisterType ( const char * typeName ) + + + + + + +