2010-01-18 09:14 UTC-0800 Pritpal Bedi (pritpal@vouchcac.com)

* contrib/hbqt/hbqt.h
  * contrib/hbqt/hbqt_base.cpp
  * contrib/hbqt/hbqt_destruct.cpp
  * contrib/hbqt/hbqt_garbage.h
  * contrib/hbqt/hbqt_hbdbfmodel.cpp
  * contrib/hbqt/hbqt_hbevents.cpp
  * contrib/hbqt/hbqt_hbevents.h
  * contrib/hbqt/hbqt_hbqsyntaxhighlighter.cpp
  * contrib/hbqt/hbqt_hbqsyntaxhighlighter.h
  * contrib/hbqt/hbqt_hbqtableview.cpp
  * contrib/hbqt/hbqt_hbslots.cpp
  * contrib/hbqt/hbqt_hbslots.h

  * contrib/hbqt/qth/HBQTextBlockUserData.qth
  * contrib/hbqt/qth/QAbstractItemModel.qth
  * contrib/hbqt/qth/QSyntaxHighlighter.qth
  * contrib/hbqt/qth/QTableView.qth

  + contrib/hbqt/qth/HBQTableView.qth
  + contrib/hbqt/qth/HBDbfModel.qth
  + contrib/hbqt/qth/HBQSyntaxHighLighter.qth
    + Separated parts to auto/static generation.

  + contrib/hbqt/qth/HBEvents.qth
  + contrib/hbqt/qth/HBSlots.qth
    + Prepared to bring Events/Slots management on OO level.
      Stll not activated as I have some technical issues on  
      c++ level. Just a matter of time...

  * contrib/hbqt/generator/hbqtgen.prg
  * contrib/hbqt/generator/qt45.qtp
    
    + This commit is generally towards separation of static/auto
      generated parts of classes which has been hanging in for
      manual updates to the structures indivisually if changes
      were made effective overhaul.

  * contrib/hbqt/qtcore/*
  * contrib/hbqt/qtgui/*
  * contrib/hbqt/qtnetwork/*
This commit is contained in:
Pritpal Bedi
2010-01-18 17:54:15 +00:00
parent 298ee0015d
commit 772123dbab
305 changed files with 2568 additions and 783 deletions

View File

@@ -17,6 +17,48 @@
past entries belonging to author(s): Viktor Szakats.
*/
2010-01-18 09:14 UTC-0800 Pritpal Bedi (pritpal@vouchcac.com)
* contrib/hbqt/hbqt.h
* contrib/hbqt/hbqt_base.cpp
* contrib/hbqt/hbqt_destruct.cpp
* contrib/hbqt/hbqt_garbage.h
* contrib/hbqt/hbqt_hbdbfmodel.cpp
* contrib/hbqt/hbqt_hbevents.cpp
* contrib/hbqt/hbqt_hbevents.h
* contrib/hbqt/hbqt_hbqsyntaxhighlighter.cpp
* contrib/hbqt/hbqt_hbqsyntaxhighlighter.h
* contrib/hbqt/hbqt_hbqtableview.cpp
* contrib/hbqt/hbqt_hbslots.cpp
* contrib/hbqt/hbqt_hbslots.h
* contrib/hbqt/qth/HBQTextBlockUserData.qth
* contrib/hbqt/qth/QAbstractItemModel.qth
* contrib/hbqt/qth/QSyntaxHighlighter.qth
* contrib/hbqt/qth/QTableView.qth
+ contrib/hbqt/qth/HBQTableView.qth
+ contrib/hbqt/qth/HBDbfModel.qth
+ contrib/hbqt/qth/HBQSyntaxHighLighter.qth
+ Separated parts to auto/static generation.
+ contrib/hbqt/qth/HBEvents.qth
+ contrib/hbqt/qth/HBSlots.qth
+ Prepared to bring Events/Slots management on OO level.
Stll not activated as I have some technical issues on
c++ level. Just a matter of time...
* contrib/hbqt/generator/hbqtgen.prg
* contrib/hbqt/generator/qt45.qtp
+ This commit is generally towards separation of static/auto
generated parts of classes which has been hanging in for
manual updates to the structures indivisually if changes
were made effective overhaul.
* contrib/hbqt/qtcore/*
* contrib/hbqt/qtgui/*
* contrib/hbqt/qtnetwork/*
2010-01-18 17:02 UTC+0100 Przemyslaw Czerpak (druzus/at/priv.onet.pl)
* harbour/include/hbwince.h
* harbour/src/common/hbwince.c

View File

@@ -565,8 +565,8 @@ STATIC FUNCTION GenSource( cProFile, cPathIn, cPathOut, cPathDoc )
aadd( cpp_, ' HB_TRACE( HB_TR_DEBUG, ( "NO__rel_' + pad( cWidget, 27 ) + 'ph=%p pq=%p %i B %i KB", p->ph, (void *)(p->pq), ( int ) hb_xquery( 1001 ), hbqt_getmemused() ) );')
aadd( cpp_, " }" )
ELSE
aadd( cpp_, " QGC_POINTER * p = ( QGC_POINTER * ) Cargo;" )
aadd( cpp_, " " )
aadd( cpp_, " QGC_POINTER * p = ( QGC_POINTER * ) Cargo;" )
aadd( cpp_, " " )
aadd( cpp_, " if( p && p->bNew )" )
aadd( cpp_, " {" )
aadd( cpp_, " if( p->ph )" )
@@ -654,6 +654,7 @@ STATIC FUNCTION GenSource( cProFile, cPathIn, cPathOut, cPathDoc )
ENDIF
ENDIF
aadd( cpp_, new_[ len( new_ ) ] ) // }
aadd( cpp_, "" )
ENDIF
/* Insert Functions */
@@ -850,6 +851,10 @@ STATIC FUNCTION ParseProto( cProto, cWidget, txt_, doc_, aEnum, func_ )
ENDIF
DO CASE
CASE aA[ PRT_CAST ] == 'PHB_ITEM'
aA[ PRT_BODY ] := 'hb_param( ' + cHBIdx + ', HB_IT_ANY )'
aA[ PRT_DOC ] := 'x' + cDocNM
CASE aA[ PRT_CAST ] == 'T'
aA[ PRT_BODY ] := 'hb_param( ' + cHBIdx + ', HB_IT_ANY )'
aA[ PRT_DOC ] := 'x' + cDocNM

View File

@@ -14,7 +14,13 @@
-D=../doc
HBDbfModel.qth
HBEvents.qth
HBQSyntaxHighlighter.qth
HBQTableView.qth
HBQTextBlockUserData.qth
HBSlots.qth
QAbstractButton.qth
QAbstractItemDelegate.qth
QAbstractItemModel.qth

View File

@@ -82,6 +82,7 @@ extern const HB_GC_FUNCS * hbqt_gcFuncs( void );
extern int hbqt_getmemused( void );
extern void * hbqt_pPtrFromObj( int iParam );
extern void * hbqt_pPtrFromItem( PHB_ITEM pObj );
#include "hbqt_garbage.h"

View File

@@ -78,6 +78,16 @@ HB_FUNC( QT_FINDCHILD )
hb_retptr( object->findChild< QObject * >( hbqt_par_QString( 2 ) ) );
}
HB_FUNC( HBQT_ISEMPTYQTPOINTER )
{
QGC_POINTER * p = ( QGC_POINTER * ) hb_parptrGC( hbqt_gcFuncs(), 1 );
if( p && p->ph )
hb_retl( false );
else
hb_retl( true );
}
HB_FUNC( HBQT_ISEQUALGCQTPOINTER )
{
QGC_POINTER * p = ( QGC_POINTER * ) hb_parptrGC( hbqt_gcFuncs(), 1 );

View File

@@ -82,6 +82,18 @@ const HB_GC_FUNCS * hbqt_gcFuncs( void )
return &QT_gcFuncs;
}
void * hbqt_gcpointerFromItem( PHB_ITEM pObj )
{
QGC_POINTER * p = ( QGC_POINTER * ) hb_itemGetPtrGC( pObj, hbqt_gcFuncs() );
if( p && p->ph )
return p->ph;
else if( hb_itemGetPtr( pObj ) )
return hb_itemGetPtr( pObj ); /* TOFIX: In what cases is this needed? Reference counting to avoid referring to freed pointers? */
else
return NULL; /* TODO: Still better if RTE. */
}
void * hbqt_gcpointer( int iParam )
{
QGC_POINTER * p = ( QGC_POINTER * ) hb_parptrGC( hbqt_gcFuncs(), iParam );
@@ -94,6 +106,22 @@ void * hbqt_gcpointer( int iParam )
return NULL; /* TODO: Still better if RTE. */
}
void * hbqt_pPtrFromItem( PHB_ITEM pObj )
{
if( hb_itemType( pObj ) == HB_IT_OBJECT )
{
hb_vmPushSymbol( hb_dynsymSymbol( hb_dynsymFindName( "PPTR" ) ) );
hb_vmPush( pObj );
hb_vmSend( 0 );
return hbqt_gcpointer( -1 );
}
else if( hb_itemType( pObj ) == HB_IT_POINTER )
return hbqt_gcpointerFromItem( pObj );
else
return NULL;
}
void * hbqt_pPtrFromObj( int iParam )
{
PHB_ITEM pObj = hb_param( iParam, HB_IT_ANY );

View File

@@ -8,7 +8,12 @@
/* or the generator tool itself, and run regenarate. */
/* -------------------------------------------------------------------- */
extern QT_G_FUNC( hbqt_gcRelease_HBDbfModel );
extern QT_G_FUNC( hbqt_gcRelease_HBEvents );
extern QT_G_FUNC( hbqt_gcRelease_HBQSyntaxHighlighter );
extern QT_G_FUNC( hbqt_gcRelease_HBQTableView );
extern QT_G_FUNC( hbqt_gcRelease_HBQTextBlockUserData );
extern QT_G_FUNC( hbqt_gcRelease_HBSlots );
extern QT_G_FUNC( hbqt_gcRelease_QAbstractButton );
extern QT_G_FUNC( hbqt_gcRelease_QAbstractItemDelegate );
extern QT_G_FUNC( hbqt_gcRelease_QAbstractItemModel );
@@ -284,7 +289,12 @@ extern QT_G_FUNC( hbqt_gcRelease_QWindowsStyle );
extern QT_G_FUNC( hbqt_gcRelease_QWizard );
extern QT_G_FUNC( hbqt_gcRelease_QWizardPage );
extern void * hbqt_gcAllocate_HBDbfModel( void * pObj, bool bNew );
extern void * hbqt_gcAllocate_HBEvents( void * pObj, bool bNew );
extern void * hbqt_gcAllocate_HBQSyntaxHighlighter( void * pObj, bool bNew );
extern void * hbqt_gcAllocate_HBQTableView( void * pObj, bool bNew );
extern void * hbqt_gcAllocate_HBQTextBlockUserData( void * pObj, bool bNew );
extern void * hbqt_gcAllocate_HBSlots( void * pObj, bool bNew );
extern void * hbqt_gcAllocate_QAbstractButton( void * pObj, bool bNew );
extern void * hbqt_gcAllocate_QAbstractItemDelegate( void * pObj, bool bNew );
extern void * hbqt_gcAllocate_QAbstractItemModel( void * pObj, bool bNew );

View File

@@ -306,80 +306,4 @@ void HBDbfModel::hbSetRowColumns( int rows, int cols )
iCols = cols;
}
typedef struct
{
void * ph;
bool bNew;
QT_G_FUNC_PTR func;
QPointer< HBDbfModel > pq;
} QGC_POINTER_HBDbfModel;
static QT_G_FUNC( hbqt_release_HBDbfModel )
{
QGC_POINTER_HBDbfModel * p = ( QGC_POINTER_HBDbfModel * ) Cargo;
if( p->bNew )
{
if( p && p->ph && p->pq )
{
const QMetaObject * m = ( ( QObject * ) p->ph )->metaObject();
if( ( QString ) m->className() != ( QString ) "QObject" )
{
delete ( ( HBDbfModel * ) p->ph );
p->ph = NULL;
HB_TRACE( HB_TR_DEBUG, ( "release_HBDbfModel Object deleted! %i B %i KB", ( int ) hb_xquery( 1001 ), hbqt_getmemused() ) );
}
else
{
HB_TRACE( HB_TR_DEBUG, ( "NO release_HBDbfModel Object Name Missing!" ) );
}
}
else
{
HB_TRACE( HB_TR_DEBUG, ( "DEL release_HBDbfModel Object Already deleted!" ) );
}
}
else
{
HB_TRACE( HB_TR_ALWAYS, ( "PTR_rel_HBDbfModel Object not created with - new" ) );
p->ph = NULL;
}
}
static void * hbqt_gcAllocate_HBDbfModel( void * pObj, bool bNew )
{
QGC_POINTER_HBDbfModel * p = ( QGC_POINTER_HBDbfModel * ) hb_gcAllocate( sizeof( QGC_POINTER_HBDbfModel ), hbqt_gcFuncs() );
p->ph = pObj;
p->bNew = bNew;
p->func = hbqt_release_HBDbfModel;
new( & p->pq ) QPointer< HBDbfModel >( ( HBDbfModel * ) pObj );
HB_TRACE( HB_TR_DEBUG, ( " new_HBDbfModel %i B %i KB", ( int ) hb_xquery( 1001 ), hbqt_getmemused() ) );
return( p );
}
HB_FUNC( QT_HBDBFMODEL )
{
void * pObj = NULL;
pObj = ( HBDbfModel * ) new HBDbfModel( ( PHB_ITEM ) hb_param( 1, HB_IT_BLOCK ) );
hb_retptrGC( hbqt_gcAllocate_HBDbfModel( pObj, true ) );
}
HB_FUNC( QT_HBDBFMODEL_RESET )
{
hbqt_par_HBDbfModel( 1 )->reset();
}
HB_FUNC( QT_HBDBFMODEL_INDEX )
{
hb_retptrGC( hbqt_gcAllocate_QModelIndex( new QModelIndex( hbqt_par_HBDbfModel( 1 )->index( hb_parni( 2 ), hb_parni( 3 ), QModelIndex() ) ), true ) );
}
HB_FUNC( QT_HBDBFMODEL_HBSETROWCOLUMNS )
{
hbqt_par_HBDbfModel( 1 )->hbSetRowColumns( hb_parni( 2 ), hb_parni( 3 ) );
}
#endif

View File

@@ -67,62 +67,6 @@
#include <QPointer>
#include <QVariant>
typedef struct
{
void * ph;
bool bNew;
QT_G_FUNC_PTR func;
QPointer< HBEvents > pq;
} QGC_POINTER_HBEvents;
static QT_G_FUNC( hbqt_release_HBEvents )
{
QGC_POINTER_HBEvents * p = ( QGC_POINTER_HBEvents * ) Cargo;
if( p && p->bNew )
{
if( p->ph && p->pq )
{
const QMetaObject * m = ( ( QObject * ) p->ph )->metaObject();
if( ( QString ) m->className() != ( QString ) "QObject" )
{
delete ( ( HBEvents * ) p->ph );
p->ph = NULL;
HB_TRACE( HB_TR_DEBUG, ( "release_HBEvents Object deleted! %i B %i KB", ( int ) hb_xquery( 1001 ), hbqt_getmemused() ) );
}
else
{
HB_TRACE( HB_TR_DEBUG, ( "NO release_HBEvents Object Name Missing!" ) );
p->ph = NULL;
}
}
else
{
HB_TRACE( HB_TR_DEBUG, ( "DEL release_HBEvents Object Already deleted!" ) );
p->ph = NULL;
}
}
else
{
HB_TRACE( HB_TR_DEBUG, ( "PTR_rel_HBEvents : Object not created with - new" ) );
p->ph = NULL;
}
}
static void * hbqt_gcAllocate_HBEvents( void * pObj, bool bNew )
{
QGC_POINTER_HBEvents * p = ( QGC_POINTER_HBEvents * ) hb_gcAllocate( sizeof( QGC_POINTER_HBEvents ), hbqt_gcFuncs() );
p->ph = pObj;
p->bNew = bNew;
p->func = hbqt_release_HBEvents;
new( & p->pq ) QPointer< HBEvents >( ( HBEvents * ) pObj );
HB_TRACE( HB_TR_DEBUG, ( " new_HBEvents %i B %i KB", ( int ) hb_xquery( 1001 ), hbqt_getmemused() ) );
return( p );
}
/*----------------------------------------------------------------------*/
HBEvents::HBEvents( QObject * parent ) : QObject( parent )
{
}
@@ -142,16 +86,85 @@ HBEvents::~HBEvents()
listObj[ i ] = NULL;
}
}
listBlock.clear();
}
bool HBEvents::hbConnect( PHB_ITEM pObj, int iEvent, PHB_ITEM bBlock )
{
HB_SYMBOL_UNUSED( pObj );
HB_SYMBOL_UNUSED( iEvent );
HB_SYMBOL_UNUSED( bBlock );
QObject * object = ( QObject* ) hbqt_pPtrFromObj( 1 ); /* get sender */
if( object )
{
PHB_ITEM codeblock = hb_itemNew( hb_param( 3, HB_IT_BLOCK | HB_IT_BYREF ) );
//PHB_ITEM codeblock = hb_itemNew( bBlock );
char prop[ 20 ];
hb_snprintf( prop, sizeof( prop ), "%s%i%s", "P", iEvent, "P" ); /* Make it a unique identifier */
listBlock << codeblock;
listObj << object; /* TOFIX: Reference to GC collected pointer is stored. */
object->setProperty( prop, ( int ) listBlock.size() );
return HB_TRUE;
}
return HB_FALSE;
}
bool HBEvents::hbDisconnect( PHB_ITEM pObj, int iEvent )
{
HB_SYMBOL_UNUSED( pObj );
QObject * object = ( QObject* ) hbqt_pPtrFromObj( 1 );
if( object )
{
char prop[ 20 ];
hb_snprintf( prop, sizeof( prop ), "%s%i%s", "P", iEvent, "P" ); /* Make it a unique identifier */
int i = object->property( prop ).toInt();
if( i > 0 && i <= listBlock.size() )
{
hb_itemRelease( listBlock.at( i - 1 ) );
listBlock[ i - 1 ] = NULL;
listObj[ i - 1 ] = NULL;
object->setProperty( prop, QVariant() );
HB_TRACE( HB_TR_DEBUG, ( " QT_EVENTS_DISCONNECT: %i", iEvent ) );
return HB_TRUE;
}
}
return HB_FALSE;
}
bool HBEvents::hbClear()
{
HB_TRACE( HB_TR_DEBUG, ( " HBEvents::hbClear()" ) );
int i;
for( i = 0; i < listBlock.size(); i++ )
{
if( listBlock[ i ] != NULL )
{
hb_itemRelease( listBlock.at( i ) );
listBlock[ i ] = NULL;
listObj[ i ] = NULL;
}
}
listBlock.clear();
return HB_TRUE;
}
bool HBEvents::eventFilter( QObject * object, QEvent * event )
{
QEvent::Type eventtype = event->type();
if( ( int ) eventtype == 0 )
return false;
return HB_FALSE;
char prop[ 20 ];
hb_snprintf( prop, sizeof( prop ), "%s%i%s", "P", eventtype, "P" );
@@ -159,9 +172,9 @@ bool HBEvents::eventFilter( QObject * object, QEvent * event )
int found = object->property( prop ).toInt();
if( found == 0 )
return false;
return HB_FALSE;
bool ret = true;
bool ret = HB_TRUE;
if( found <= listBlock.size() && listObj.at( found - 1 ) == object && hb_vmRequestReenter() )
{
@@ -176,7 +189,6 @@ bool HBEvents::eventFilter( QObject * object, QEvent * event )
if( eventtype == QEvent::Close )
event->ignore();
}
return ret;
}
@@ -198,15 +210,13 @@ HB_FUNC( QT_EVENTS_CONNECT )
hb_snprintf( prop, sizeof( prop ), "%s%i%s", "P", type, "P" ); /* Make it a unique identifier */
t_events->listBlock << codeblock;
/* TOFIX: Reference to GC collected pointer is stored. */
t_events->listObj << object;
t_events->listObj << object; /* TOFIX: Reference to GC collected pointer is stored. */
object->setProperty( prop, ( int ) t_events->listBlock.size() );
bRet = HB_TRUE;
}
}
hb_retl( bRet );
}
@@ -239,7 +249,6 @@ HB_FUNC( QT_EVENTS_DISCONNECT )
}
}
}
hb_retl( bRet );
}

View File

@@ -74,6 +74,10 @@ public:
QList<bool> listActv;
QList<QObject*> listObj;
bool hbConnect( PHB_ITEM pObj, int iEvent, PHB_ITEM bBlock );
bool hbDisconnect( PHB_ITEM pObj, int iEvent );
bool hbClear();
protected:
bool eventFilter( QObject * obj, QEvent * event );

View File

@@ -70,15 +70,22 @@ HBQTextBlockUserData::HBQTextBlockUserData() : QTextBlockUserData()
HBQTextBlockUserData::~HBQTextBlockUserData()
{
}
void HBQTextBlockUserData::setData( int iState )
int HBQTextBlockUserData::hbSetState( int istate )
{
state = iState;
int iCurState = state;
state = istate;
return iCurState;
}
int HBQTextBlockUserData::hbState()
{
return state;
}
HBQTextBlockUserData * HBQTextBlockUserData::data( const QTextBlock& block )
{
return static_cast<HBQTextBlockUserData *>( block.userData() );
}
/*----------------------------------------------------------------------*/
HBQSyntaxHighlighter::HBQSyntaxHighlighter( QTextDocument * parent )
: QSyntaxHighlighter( parent )
@@ -90,43 +97,28 @@ HBQSyntaxHighlighter::HBQSyntaxHighlighter( QTextDocument * parent )
commentEndExpression = QRegExp( "\\*/" );
}
void HBQSyntaxHighlighter::setHBRule( QString name, QString pattern, const QTextCharFormat & format )
void HBQSyntaxHighlighter::hbSetRule( QString name, QString pattern, const QTextCharFormat & format )
{
if( pattern != "" )
hhighlightingRules.insert( name, hHighlightingRule( QRegExp( pattern ), format ) );
HighlightingRules.insert( name, HighlightingRule( QRegExp( pattern ), format ) );
else
hhighlightingRules.remove( name );
HighlightingRules.remove( name );
}
void HBQSyntaxHighlighter::setHBFormat( QString name, const QTextCharFormat & format )
void HBQSyntaxHighlighter::hbSetFormat( QString name, const QTextCharFormat & format )
{
if( hhighlightingRules.contains( name ) )
if( HighlightingRules.contains( name ) )
{
hHighlightingRule rule = hhighlightingRules.value( name );
HighlightingRule rule = HighlightingRules.value( name );
QRegExp reg = rule.pattern;
hhighlightingRules.insert( name, hHighlightingRule( reg, format ) );
HighlightingRules.insert( name, HighlightingRule( reg, format ) );
}
else
{
hhighlightingRules.remove( name );
HighlightingRules.remove( name );
}
}
void HBQSyntaxHighlighter::setHBCompilerDirectives( const QStringList & directives, const QTextCharFormat & format )
{
HighlightingRule rule;
directivesFormat = format;
foreach( const QString &pattern, directives )
{
rule.pattern = QRegExp( pattern );
rule.format = directivesFormat;
highlightingRules.append( rule );
}
}
void HBQSyntaxHighlighter::setHBMultiLineCommentFormat( const QTextCharFormat & format )
void HBQSyntaxHighlighter::hbSetMultiLineCommentFormat( const QTextCharFormat & format )
{
multiLineCommentFormat = format;
}
@@ -141,13 +133,12 @@ void HBQSyntaxHighlighter::highlightBlock( const QString &text )
QRegExp expression;
QTextBlock curBlock( currentBlock() );
bool bMerge = false;
//HBQTextBlockUserData * data = HBQTextBlockUserData::data( curBlock );
HBQTextBlockUserData * data = ( HBQTextBlockUserData * ) curBlock.userData();
if( data )
bMerge = ( data->state == 99 );
foreach( const hHighlightingRule &rule, hhighlightingRules )
foreach( const HighlightingRule &rule, HighlightingRules )
{
QRegExp expression( rule.pattern );
int index = expression.indexIn( text );
@@ -159,11 +150,13 @@ void HBQSyntaxHighlighter::highlightBlock( const QString &text )
if( bMerge )
{
HB_TRACE( HB_TR_ALWAYS, ( "text = %s", ( char * ) &text ) );
setFormat( index, length, rule.format );
HB_TRACE( HB_TR_ALWAYS, ( "text = %i", data->state ) );
// setFormat( index, length, rule.format );
}
else
{
setFormat( index, length, rule.format );
}
index = expression.indexIn( text, index + length );
}
@@ -191,114 +184,4 @@ void HBQSyntaxHighlighter::highlightBlock( const QString &text )
}
}
typedef struct
{
void * ph;
QT_G_FUNC_PTR func;
QPointer< HBQSyntaxHighlighter > pq;
} QGC_POINTER_HBQSyntaxHighlighter;
static QT_G_FUNC( release_HBQSyntaxHighlighter )
{
QGC_POINTER_HBQSyntaxHighlighter * p = ( QGC_POINTER_HBQSyntaxHighlighter * ) Cargo;
HB_TRACE( HB_TR_DEBUG, ( "release_HBQSyntaxHighlighter p=%p", p));
HB_TRACE( HB_TR_DEBUG, ( "release_HBQSyntaxHighlighter ph=%p pq=%p", p->ph, (void *)(p->pq)));
if( p && p->ph && p->pq )
{
const QMetaObject * m = ( ( QObject * ) p->ph )->metaObject();
if( ( QString ) m->className() != ( QString ) "QObject" )
{
delete ( ( HBQSyntaxHighlighter * ) p->ph );
HB_TRACE( HB_TR_DEBUG, ( "release_HBQSyntaxHighlighter Object deleted! %i B %i KB", ( int ) hb_xquery( 1001 ), hbqt_getmemused() ) );
p->ph = NULL;
}
else
{
HB_TRACE( HB_TR_DEBUG, ( "NO release_HBQSyntaxHighlighter Object Name Missing!" ) );
}
}
else
{
HB_TRACE( HB_TR_DEBUG, ( "DEL release_HBQSyntaxHighlighter Object Already deleted!" ) );
}
}
static void * hbqt_gcAllocate_HBQSyntaxHighlighter( void * pObj )
{
QGC_POINTER_HBQSyntaxHighlighter * p = ( QGC_POINTER_HBQSyntaxHighlighter * ) hb_gcAllocate( sizeof( QGC_POINTER_HBQSyntaxHighlighter ), hbqt_gcFuncs() );
p->ph = pObj;
p->func = release_HBQSyntaxHighlighter;
new( & p->pq ) QPointer< HBQSyntaxHighlighter >( ( HBQSyntaxHighlighter * ) pObj );
HB_TRACE( HB_TR_DEBUG, ( " new_HBQSyntaxHighlighter %i B %i KB", ( int ) hb_xquery( 1001 ), hbqt_getmemused() ) );
return( p );
}
HB_FUNC( QT_HBQSYNTAXHIGHLIGHTER )
{
void * pObj = NULL;
if( hb_pcount() == 1 && HB_ISPOINTER( 1 ) )
pObj = new HBQSyntaxHighlighter( hbqt_par_QTextDocument( 1 ) ) ;
hb_retptrGC( hbqt_gcAllocate_HBQSyntaxHighlighter( pObj ) );
}
/*
* QTextDocument * document () const
*/
HB_FUNC( QT_HBQSYNTAXHIGHLIGHTER_DOCUMENT )
{
hb_retptr( ( QTextDocument* ) hbqt_par_HBQSyntaxHighlighter( 1 )->document() );
}
/*
* void setDocument ( QTextDocument * doc )
*/
HB_FUNC( QT_HBQSYNTAXHIGHLIGHTER_SETDOCUMENT )
{
hbqt_par_HBQSyntaxHighlighter( 1 )->setDocument( hbqt_par_QTextDocument( 2 ) );
}
/*
* void rehighlight ()
*/
HB_FUNC( QT_HBQSYNTAXHIGHLIGHTER_REHIGHLIGHT )
{
hbqt_par_HBQSyntaxHighlighter( 1 )->rehighlight();
}
/*
* void setHBCompilerDirectives( const QStringList & directives, const QTextCharFormat & format )
*/
HB_FUNC( QT_HBQSYNTAXHIGHLIGHTER_SETHBCOMPILERDIRECTIVES )
{
hbqt_par_HBQSyntaxHighlighter( 1 )->setHBCompilerDirectives( *hbqt_par_QStringList( 2 ), *hbqt_par_QTextCharFormat( 3 ) );
}
/*
* void setHBMultiLineCommentFormat( const QTextCharFormat & format )
*/
HB_FUNC( QT_HBQSYNTAXHIGHLIGHTER_SETHBMULTILINECOMMENTFORMAT )
{
hbqt_par_HBQSyntaxHighlighter( 1 )->setHBMultiLineCommentFormat( *hbqt_par_QTextCharFormat( 2 ) );
}
/*
* void setRule( QString name, QString pattern, QTextCharFormat format );
*/
HB_FUNC( QT_HBQSYNTAXHIGHLIGHTER_SETHBRULE )
{
hbqt_par_HBQSyntaxHighlighter( 1 )->setHBRule( hbqt_par_QString( 2 ), hbqt_par_QString( 3 ), *hbqt_par_QTextCharFormat( 4 ) );
}
/*
* void setFormat( QString name, const QTextCharFormat & format );
*/
HB_FUNC( QT_HBQSYNTAXHIGHLIGHTER_SETHBFORMAT )
{
hbqt_par_HBQSyntaxHighlighter( 1 )->setHBFormat( hbqt_par_QString( 2 ), *hbqt_par_QTextCharFormat( 3 ) );
}
#endif

View File

@@ -69,11 +69,14 @@ public:
HBQTextBlockUserData * data( const QTextBlock& block );
void setData( int state );
int hbSetState( int state );
int hbState();
int state;
};
/*----------------------------------------------------------------------*/
class HBQSyntaxHighlighter : public QSyntaxHighlighter
{
Q_OBJECT
@@ -81,37 +84,27 @@ class HBQSyntaxHighlighter : public QSyntaxHighlighter
public:
HBQSyntaxHighlighter( QTextDocument *parent = 0 );
void setHBCompilerDirectives( const QStringList & directives, const QTextCharFormat & format );
void setHBMultiLineCommentFormat( const QTextCharFormat & format );
void setHBRule( QString name, QString pattern, const QTextCharFormat & format );
void setHBFormat( QString name, const QTextCharFormat & format );
void hbSetMultiLineCommentFormat( const QTextCharFormat & format );
void hbSetRule( QString name, QString pattern, const QTextCharFormat & format );
void hbSetFormat( QString name, const QTextCharFormat & format );
protected:
void highlightBlock( const QString &text );
struct hHighlightingRule
{
hHighlightingRule()
{
}
hHighlightingRule( QRegExp _pattern, const QTextCharFormat & _format )
{
pattern = _pattern;
format = _format;
}
QRegExp pattern;
QTextCharFormat format;
};
QMap< QString, hHighlightingRule > hhighlightingRules;
private:
struct HighlightingRule
{
QRegExp pattern;
QTextCharFormat format;
HighlightingRule() {;}
HighlightingRule( QRegExp _pattern, const QTextCharFormat & _format )
{
pattern = _pattern;
format = _format;
}
};
QVector<HighlightingRule> highlightingRules;
QMap< QString, HighlightingRule > HighlightingRules;
protected:

View File

@@ -128,72 +128,4 @@ void HBQTableView::scrollTo( const QModelIndex & index, QAbstractItemView::Scrol
QTableView::scrollTo( index, hint );
}
typedef struct
{
void * ph;
bool bNew;
QT_G_FUNC_PTR func;
QPointer< HBQTableView > pq;
} QGC_POINTER_HBQTableView;
static QT_G_FUNC( release_HBQTableView )
{
QGC_POINTER_HBQTableView * p = ( QGC_POINTER_HBQTableView * ) Cargo;
if( p->bNew )
{
HB_TRACE( HB_TR_DEBUG, ( "release_HBQTableView ph=%p pq=%p", p->ph, (void *)(p->pq)));
if( p && p->ph && p->pq )
{
const QMetaObject * m = ( ( QObject * ) p->ph )->metaObject();
if( ( QString ) m->className() != ( QString ) "QObject" )
{
delete ( ( HBQTableView * ) p->ph );
HB_TRACE( HB_TR_DEBUG, ( "YES_rel_HBQTableView ph=%p pq=%p %i B %i KB", p->ph, (void *)(p->pq), ( int ) hb_xquery( 1001 ), hbqt_getmemused() ) );
p->ph = NULL;
}
else
{
HB_TRACE( HB_TR_DEBUG, ( "NO__rel_HBQTableView Object Name Missing!" ) );
}
}
else
{
HB_TRACE( HB_TR_DEBUG, ( "DEL_rel_HBQTableView Object Already deleted!" ) );
}
}
else
{
HB_TRACE( HB_TR_DEBUG, ( "PTR_rel_HBQTableView Object not created with - new" ) );
p->ph = NULL;
}
}
static void * hbqt_gcAllocate_HBQTableView( void * pObj, bool bNew )
{
QGC_POINTER_HBQTableView * p = ( QGC_POINTER_HBQTableView * ) hb_gcAllocate( sizeof( QGC_POINTER_HBQTableView ), hbqt_gcFuncs() );
p->ph = pObj;
p->bNew = bNew;
p->func = release_HBQTableView;
new( & p->pq ) QPointer< HBQTableView >( ( HBQTableView * ) pObj );
HB_TRACE( HB_TR_DEBUG, ( " new_HBQTableView %i B %i KB", ( int ) hb_xquery( 1001 ), hbqt_getmemused() ) );
return( p );
}
HB_FUNC( QT_HBQTABLEVIEW )
{
void * pObj = NULL;
pObj = new HBQTableView( hbqt_par_QWidget( 1 ) ) ;
hb_retptrGC( hbqt_gcAllocate_HBQTableView( pObj, true ) );
}
HB_FUNC( QT_HBQTABLEVIEW_NAVIGATE )
{
hb_retptrGC( hbqt_gcAllocate_QModelIndex( new QModelIndex( hbqt_par_HBQTableView( 1 )->navigate( hb_parni( 2 ) ) ), true ) );
}
#endif

View File

@@ -326,60 +326,6 @@ static bool disconnect_signal( QObject * object, const char * signal )
/*----------------------------------------------------------------------*/
typedef struct
{
void * ph;
bool bNew;
QT_G_FUNC_PTR func;
QPointer< HBSlots > pq;
} QGC_POINTER_HBSlots;
static QT_G_FUNC( hbqt_release_HBSlots )
{
QGC_POINTER_HBSlots * p = ( QGC_POINTER_HBSlots * ) Cargo;
if( p && p->bNew )
{
if( p->ph && p->pq )
{
const QMetaObject * m = ( ( QObject * ) p->ph )->metaObject();
if( ( QString ) m->className() != ( QString ) "QObject" )
{
delete ( ( HBSlots * ) p->ph );
p->ph = NULL;
HB_TRACE( HB_TR_DEBUG, ( "release_HBSlots Object deleted! %i B %i KB", ( int ) hb_xquery( 1001 ), hbqt_getmemused() ) );
}
else
{
HB_TRACE( HB_TR_DEBUG, ( "NO release_HBSlots Object Name Missing!" ) );
}
}
else
{
HB_TRACE( HB_TR_DEBUG, ( "DEL_rel_HBSlots : Object Already deleted!" ) );
}
}
else
{
HB_TRACE( HB_TR_DEBUG, ( "PTR_rel_HBSlots : Object not created with - new" ) );
p->ph = NULL;
}
}
static void * hbqt_gcAllocate_HBSlots( void * pObj, bool bNew )
{
QGC_POINTER_HBSlots * p = ( QGC_POINTER_HBSlots * ) hb_gcAllocate( sizeof( QGC_POINTER_HBSlots ), hbqt_gcFuncs() );
p->ph = pObj;
p->bNew = bNew;
p->func = hbqt_release_HBSlots;
new( & p->pq ) QPointer< HBSlots >( ( HBSlots * ) pObj );
HB_TRACE( HB_TR_DEBUG, ( " new_HBSlots %i B %i KB", ( int ) hb_xquery( 1001 ), hbqt_getmemused() ) );
return( p );
}
/*----------------------------------------------------------------------*/
static void hbqt_SlotsExec( HBSlots * t_slots, QObject * object, const char * pszEvent )
{
if( object )
@@ -714,6 +660,103 @@ HBSlots::~HBSlots()
listBlock.clear();
}
bool HBSlots::hbIsConnected( PHB_ITEM pObj, const char * slot )
{
HB_SYMBOL_UNUSED( pObj );
QObject * object = ( QObject * ) hbqt_pPtrFromObj( 1 );
return isConnected( object, slot );
}
bool HBSlots::isConnected( QObject * object, const char * slot )
{
int i;
for( i = 0; i < listBlock.size(); i++ )
{
if( listBlock[ i ] != NULL && listObj[ i ] == object )
{
if( object->property( slot ).toInt() == i + 1 )
{
return HB_TRUE;
}
}
}
return HB_FALSE;
}
bool HBSlots::hbConnect( PHB_ITEM pObj, const char * slot, PHB_ITEM bBlock )
{
HB_SYMBOL_UNUSED( pObj );
HB_SYMBOL_UNUSED( bBlock );
QObject * object = ( QObject * ) hbqt_pPtrFromItem( pObj ); /* get sender */
if( object )
{
if( !isConnected( object, slot ) )
{
HB_TRACE( HB_TR_ALWAYS, ( "AAA 3 %s %p", slot, object ) );
bool bConnected = connect_signal( ( QString ) slot, object, this );
HB_TRACE( HB_TR_ALWAYS, ( "AAA 4" ) );
if( bConnected )
{
//PHB_ITEM pBlock = hb_itemNew( hb_param( 3, HB_IT_BLOCK ) ); /* get codeblock */
PHB_ITEM pBlock = hb_itemNew( bBlock ); /* get codeblock */
HB_TRACE( HB_TR_ALWAYS, ( "AAA 5" ) );
listBlock << pBlock;
listObj << object;
object->setProperty( hb_parcx( 2 ), ( int ) listBlock.size() );
return HB_TRUE;
}
}
}
return HB_FALSE;
}
bool HBSlots::hbDisconnect( PHB_ITEM pObj, const char * signal )
{
HB_SYMBOL_UNUSED( pObj );
QObject * object = ( QObject* ) hbqt_pPtrFromObj( 1 );
if( object )
{
int i = object->property( signal ).toInt();
if( i > 0 && i <= listBlock.size() )
{
hb_itemRelease( listBlock.at( i - 1 ) );
listBlock[ i - 1 ] = NULL;
listObj[ i - 1 ] = NULL;
bool bRet = disconnect_signal( object, signal );
HB_TRACE( HB_TR_DEBUG, ( " QT_SLOTS_DISCONNECT: %s %s", bRet ? "YES" : "NO", signal ) );
return bRet;
}
}
return HB_FALSE;
}
bool HBSlots::hbClear()
{
int i;
for( i = 0; i < listBlock.size(); i++ )
{
if( listBlock[ i ] != NULL )
{
hb_itemRelease( listBlock.at( i ) );
listBlock[ i ] = NULL;
}
}
listBlock.clear();
return HB_TRUE;
}
/* Generic Key and Mouse Events emitted by subclass objects */
void HBSlots::customContextMenuRequested( const QPoint & pos ) { hbqt_SlotsExecQPoint( this, qobject_cast<QObject *>( sender() ), "customContextMenuRequested(QPoint)", pos ); }
void HBSlots::keyPressEvent( QKeyEvent * event ) { hbqt_SlotsExecPointer( this, qobject_cast<QObject *>( sender() ), "keyPressEvent()", event ); }

View File

@@ -57,12 +57,11 @@
#include "hbapiitm.h"
#include <QTextCursor>
#include <QTextCharFormat>
#include <QTreeWidgetItem>
//#include <QWebFrame>
#include <QHeaderView>
#include <QProcess>
#include <QtCore/QProcess>
#include <QtGui/QTextCursor>
#include <QtGui/QTextCharFormat>
#include <QtGui/QTreeWidgetItem>
#include <QtGui/QHeaderView>
/*----------------------------------------------------------------------*/
@@ -76,6 +75,12 @@ public:
QList<PHB_ITEM> listBlock;
QList<QObject *> listObj;
bool hbConnect( PHB_ITEM pObj, const char * slot, PHB_ITEM bBlock );
bool hbDisconnect( PHB_ITEM pObj, const char * slot );
bool hbIsConnected( PHB_ITEM pObj, const char * slot );
bool isConnected( QObject * object, const char * slot );
bool hbClear();
public slots:
/* QWidget */
void customContextMenuRequested( const QPoint & pos );

View File

@@ -0,0 +1,172 @@
/*
* $Id$
*/
/* -------------------------------------------------------------------- */
/* WARNING: Automatically generated source file. DO NOT EDIT! */
/* Instead, edit corresponding .qth file, */
/* or the generator tool itself, and run regenarate. */
/* -------------------------------------------------------------------- */
/*
* Harbour Project source code:
* QT wrapper main header
*
* Copyright 2009-2010 Pritpal Bedi <pritpal@vouchcac.com>
*
* Copyright 2009 Marcos Antonio Gambeta <marcosgambeta at gmail dot com>
* 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.
*
*/
/*----------------------------------------------------------------------*/
#include "hbapi.h"
#include "../hbqt.h"
/*----------------------------------------------------------------------*/
#if QT_VERSION >= 0x040500
/*----------------------------------------------------------------------*/
#include <QtCore/QPointer>
#include <QtCore/QAbstractItemModel>
#include "../hbqt_hbdbfmodel.h"
/*
*
*
*/
typedef struct
{
void * ph;
bool bNew;
QT_G_FUNC_PTR func;
QPointer< HBDbfModel > pq;
} QGC_POINTER_HBDbfModel;
QT_G_FUNC( hbqt_gcRelease_HBDbfModel )
{
QGC_POINTER_HBDbfModel * p = ( QGC_POINTER_HBDbfModel * ) Cargo;
if( p && p->bNew )
{
if( p->ph && p->pq )
{
const QMetaObject * m = ( ( QObject * ) p->ph )->metaObject();
if( ( QString ) m->className() != ( QString ) "QObject" )
{
delete ( ( HBDbfModel * ) p->ph );
HB_TRACE( HB_TR_DEBUG, ( "YES_rel_HBDbfModel ph=%p pq=%p %i B %i KB", p->ph, (void *)(p->pq), ( int ) hb_xquery( 1001 ), hbqt_getmemused() ) );
p->ph = NULL;
}
else
{
HB_TRACE( HB_TR_DEBUG, ( "NO__rel_HBDbfModel ph=%p pq=%p %i B %i KB", p->ph, (void *)(p->pq), ( int ) hb_xquery( 1001 ), hbqt_getmemused() ) );
}
}
else
{
HB_TRACE( HB_TR_DEBUG, ( "DEL_rel_HBDbfModel Object already deleted!" ) );
}
}
else
{
HB_TRACE( HB_TR_DEBUG, ( "PTR_rel_HBDbfModel Object not created with - new" ) );
p->ph = NULL;
}
}
void * hbqt_gcAllocate_HBDbfModel( void * pObj, bool bNew )
{
QGC_POINTER_HBDbfModel * p = ( QGC_POINTER_HBDbfModel * ) hb_gcAllocate( sizeof( QGC_POINTER_HBDbfModel ), hbqt_gcFuncs() );
p->ph = pObj;
p->bNew = bNew;
p->func = hbqt_gcRelease_HBDbfModel;
if( bNew )
{
new( & p->pq ) QPointer< HBDbfModel >( ( HBDbfModel * ) pObj );
HB_TRACE( HB_TR_DEBUG, ( " _new_HBDbfModel ph=%p %i B %i KB", pObj, ( int ) hb_xquery( 1001 ), hbqt_getmemused() ) );
}
return p;
}
HB_FUNC( QT_HBDBFMODEL )
{
void * pObj = NULL;
pObj = new HBDbfModel( ( PHB_ITEM ) hb_param( 1, HB_IT_BLOCK ) ) ;
hb_retptrGC( hbqt_gcAllocate_HBDbfModel( pObj, true ) );
}
/*
* void hbSetRowColumns( int rows, int cols )
*/
HB_FUNC( QT_HBDBFMODEL_HBSETROWCOLUMNS )
{
hbqt_par_HBDbfModel( 1 )->hbSetRowColumns( hb_parni( 2 ), hb_parni( 3 ) );
}
/*
* void reset()
*/
HB_FUNC( QT_HBDBFMODEL_RESET )
{
hbqt_par_HBDbfModel( 1 )->reset();
}
/*
* QModelIndex index( int row, int column, const QModelIndex & parent = QModelIndex() ) const
*/
HB_FUNC( QT_HBDBFMODEL_INDEX )
{
hb_retptrGC( hbqt_gcAllocate_QModelIndex( new QModelIndex( hbqt_par_HBDbfModel( 1 )->index( hb_parni( 2 ), hb_parni( 3 ), ( HB_ISPOINTER( 4 ) ? *hbqt_par_QModelIndex( 4 ) : QModelIndex() ) ) ), true ) );
}
/*----------------------------------------------------------------------*/
#endif /* #if QT_VERSION >= 0x040500 */
/*----------------------------------------------------------------------*/

View File

@@ -0,0 +1,173 @@
/*
* $Id$
*/
/* -------------------------------------------------------------------- */
/* WARNING: Automatically generated source file. DO NOT EDIT! */
/* Instead, edit corresponding .qth file, */
/* or the generator tool itself, and run regenarate. */
/* -------------------------------------------------------------------- */
/*
* Harbour Project source code:
* QT wrapper main header
*
* Copyright 2009-2010 Pritpal Bedi <pritpal@vouchcac.com>
*
* Copyright 2009 Marcos Antonio Gambeta <marcosgambeta at gmail dot com>
* 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.
*
*/
/*----------------------------------------------------------------------*/
#include "hbapi.h"
#include "../hbqt.h"
/*----------------------------------------------------------------------*/
#if QT_VERSION >= 0x040500
/*----------------------------------------------------------------------*/
#include <QtCore/QPointer>
#include <QtCore/QObject>
#include "../hbqt_hbevents.h"
/*
* HBEvents()
* ~HBEvents()
*
*/
typedef struct
{
void * ph;
bool bNew;
QT_G_FUNC_PTR func;
QPointer< HBEvents > pq;
} QGC_POINTER_HBEvents;
QT_G_FUNC( hbqt_gcRelease_HBEvents )
{
QGC_POINTER_HBEvents * p = ( QGC_POINTER_HBEvents * ) Cargo;
if( p && p->bNew )
{
if( p->ph && p->pq )
{
const QMetaObject * m = ( ( QObject * ) p->ph )->metaObject();
if( ( QString ) m->className() != ( QString ) "QObject" )
{
delete ( ( HBEvents * ) p->ph );
HB_TRACE( HB_TR_DEBUG, ( "YES_rel_HBEvents ph=%p pq=%p %i B %i KB", p->ph, (void *)(p->pq), ( int ) hb_xquery( 1001 ), hbqt_getmemused() ) );
p->ph = NULL;
}
else
{
HB_TRACE( HB_TR_DEBUG, ( "NO__rel_HBEvents ph=%p pq=%p %i B %i KB", p->ph, (void *)(p->pq), ( int ) hb_xquery( 1001 ), hbqt_getmemused() ) );
}
}
else
{
HB_TRACE( HB_TR_DEBUG, ( "DEL_rel_HBEvents Object already deleted!" ) );
}
}
else
{
HB_TRACE( HB_TR_DEBUG, ( "PTR_rel_HBEvents Object not created with - new" ) );
p->ph = NULL;
}
}
void * hbqt_gcAllocate_HBEvents( void * pObj, bool bNew )
{
QGC_POINTER_HBEvents * p = ( QGC_POINTER_HBEvents * ) hb_gcAllocate( sizeof( QGC_POINTER_HBEvents ), hbqt_gcFuncs() );
p->ph = pObj;
p->bNew = bNew;
p->func = hbqt_gcRelease_HBEvents;
if( bNew )
{
new( & p->pq ) QPointer< HBEvents >( ( HBEvents * ) pObj );
HB_TRACE( HB_TR_DEBUG, ( " _new_HBEvents ph=%p %i B %i KB", pObj, ( int ) hb_xquery( 1001 ), hbqt_getmemused() ) );
}
return p;
}
HB_FUNC( QT_HBEVENTS )
{
void * pObj = NULL;
pObj = new HBEvents() ;
hb_retptrGC( hbqt_gcAllocate_HBEvents( pObj, true ) );
}
/*
* bool hbConnect( PHB_ITEM obj, int event, PHB_ITEM block )
*/
HB_FUNC( QT_HBEVENTS_HBCONNECT )
{
hb_retl( hbqt_par_HBEvents( 1 )->hbConnect( hb_param( 2, HB_IT_ANY ), hb_parni( 3 ), hb_param( 4, HB_IT_ANY ) ) );
}
/*
* bool hbDisconnect( PHB_ITEM obj, int event )
*/
HB_FUNC( QT_HBEVENTS_HBDISCONNECT )
{
hb_retl( hbqt_par_HBEvents( 1 )->hbDisconnect( hb_param( 2, HB_IT_ANY ), hb_parni( 3 ) ) );
}
/*
* bool hbClear()
*/
HB_FUNC( QT_HBEVENTS_HBCLEAR )
{
hb_retl( hbqt_par_HBEvents( 1 )->hbClear() );
}
/*----------------------------------------------------------------------*/
#endif /* #if QT_VERSION >= 0x040500 */
/*----------------------------------------------------------------------*/

View File

@@ -0,0 +1,180 @@
/*
* $Id$
*/
/* -------------------------------------------------------------------- */
/* WARNING: Automatically generated source file. DO NOT EDIT! */
/* Instead, edit corresponding .qth file, */
/* or the generator tool itself, and run regenarate. */
/* -------------------------------------------------------------------- */
/*
* Harbour Project source code:
* QT wrapper main header
*
* Copyright 2009-2010 Pritpal Bedi <pritpal@vouchcac.com>
*
* Copyright 2009 Marcos Antonio Gambeta <marcosgambeta at gmail dot com>
* 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.
*
*/
/*----------------------------------------------------------------------*/
#include "hbapi.h"
#include "../hbqt.h"
/*----------------------------------------------------------------------*/
#if QT_VERSION >= 0x040500
/*----------------------------------------------------------------------*/
#include <QtCore/QPointer>
#include <QtCore/QObject>
#include "../hbqt_hbslots.h"
/*
* HBSlots()
* ~HBSlots()
*/
typedef struct
{
void * ph;
bool bNew;
QT_G_FUNC_PTR func;
QPointer< HBSlots > pq;
} QGC_POINTER_HBSlots;
QT_G_FUNC( hbqt_gcRelease_HBSlots )
{
QGC_POINTER_HBSlots * p = ( QGC_POINTER_HBSlots * ) Cargo;
if( p && p->bNew )
{
if( p->ph && p->pq )
{
const QMetaObject * m = ( ( QObject * ) p->ph )->metaObject();
if( ( QString ) m->className() != ( QString ) "QObject" )
{
delete ( ( HBSlots * ) p->ph );
HB_TRACE( HB_TR_DEBUG, ( "YES_rel_HBSlots ph=%p pq=%p %i B %i KB", p->ph, (void *)(p->pq), ( int ) hb_xquery( 1001 ), hbqt_getmemused() ) );
p->ph = NULL;
}
else
{
HB_TRACE( HB_TR_DEBUG, ( "NO__rel_HBSlots ph=%p pq=%p %i B %i KB", p->ph, (void *)(p->pq), ( int ) hb_xquery( 1001 ), hbqt_getmemused() ) );
}
}
else
{
HB_TRACE( HB_TR_DEBUG, ( "DEL_rel_HBSlots Object already deleted!" ) );
}
}
else
{
HB_TRACE( HB_TR_DEBUG, ( "PTR_rel_HBSlots Object not created with - new" ) );
p->ph = NULL;
}
}
void * hbqt_gcAllocate_HBSlots( void * pObj, bool bNew )
{
QGC_POINTER_HBSlots * p = ( QGC_POINTER_HBSlots * ) hb_gcAllocate( sizeof( QGC_POINTER_HBSlots ), hbqt_gcFuncs() );
p->ph = pObj;
p->bNew = bNew;
p->func = hbqt_gcRelease_HBSlots;
if( bNew )
{
new( & p->pq ) QPointer< HBSlots >( ( HBSlots * ) pObj );
HB_TRACE( HB_TR_DEBUG, ( " _new_HBSlots ph=%p %i B %i KB", pObj, ( int ) hb_xquery( 1001 ), hbqt_getmemused() ) );
}
return p;
}
HB_FUNC( QT_HBSLOTS )
{
void * pObj = NULL;
pObj = new HBSlots() ;
hb_retptrGC( hbqt_gcAllocate_HBSlots( pObj, true ) );
}
/*
* bool hbConnect( PHB_ITEM pObj, const char * slot, PHB_ITEM bBlock )
*/
HB_FUNC( QT_HBSLOTS_HBCONNECT )
{
hb_retl( hbqt_par_HBSlots( 1 )->hbConnect( hb_param( 2, HB_IT_ANY ), hbqt_par_char( 3 ), hb_param( 4, HB_IT_ANY ) ) );
}
/*
* bool hbDisconnect( PHB_ITEM obj, const char * slot )
*/
HB_FUNC( QT_HBSLOTS_HBDISCONNECT )
{
hb_retl( hbqt_par_HBSlots( 1 )->hbDisconnect( hb_param( 2, HB_IT_ANY ), hbqt_par_char( 3 ) ) );
}
/*
* bool hbIsConnected( PHB_ITEM obj, const char * slot )
*/
HB_FUNC( QT_HBSLOTS_HBISCONNECTED )
{
hb_retl( hbqt_par_HBSlots( 1 )->hbIsConnected( hb_param( 2, HB_IT_ANY ), hbqt_par_char( 3 ) ) );
}
/*
* bool hbClear()
*/
HB_FUNC( QT_HBSLOTS_HBCLEAR )
{
hb_retl( hbqt_par_HBSlots( 1 )->hbClear() );
}
/*----------------------------------------------------------------------*/
#endif /* #if QT_VERSION >= 0x040500 */
/*----------------------------------------------------------------------*/

View File

@@ -87,7 +87,6 @@
#include <QStringList>
#include <QtCore/QAbstractItemModel>
#include "../hbqt_hbdbfmodel.h"
/*
* QAbstractItemModel ( QObject * parent = 0 )
@@ -128,6 +127,7 @@ void * hbqt_gcAllocate_QAbstractItemModel( void * pObj, bool bNew )
HB_FUNC( QT_QABSTRACTITEMMODEL )
{
}
/*
* virtual QModelIndex buddy ( const QModelIndex & index ) const
*/

View File

@@ -108,6 +108,7 @@ void * hbqt_gcAllocate_QAbstractListModel( void * pObj, bool bNew )
HB_FUNC( QT_QABSTRACTLISTMODEL )
{
}
/*
* virtual QModelIndex index ( int row, int column = 0, const QModelIndex & parent = QModelIndex() ) const
*/

View File

@@ -108,6 +108,7 @@ void * hbqt_gcAllocate_QAbstractTableModel( void * pObj, bool bNew )
HB_FUNC( QT_QABSTRACTTABLEMODEL )
{
}
/*
* virtual QModelIndex index ( int row, int column, const QModelIndex & parent = QModelIndex() ) const
*/

View File

@@ -85,7 +85,7 @@ typedef struct
QT_G_FUNC( hbqt_gcRelease_QBitArray )
{
QGC_POINTER * p = ( QGC_POINTER * ) Cargo;
QGC_POINTER * p = ( QGC_POINTER * ) Cargo;
if( p && p->bNew )
{
@@ -130,6 +130,7 @@ HB_FUNC( QT_QBITARRAY )
hb_retptrGC( hbqt_gcAllocate_QBitArray( pObj, true ) );
}
/*
* bool at ( int i ) const
*/

View File

@@ -103,7 +103,7 @@ typedef struct
QT_G_FUNC( hbqt_gcRelease_QByteArray )
{
QGC_POINTER * p = ( QGC_POINTER * ) Cargo;
QGC_POINTER * p = ( QGC_POINTER * ) Cargo;
if( p && p->bNew )
{
@@ -148,6 +148,7 @@ HB_FUNC( QT_QBYTEARRAY )
hb_retptrGC( hbqt_gcAllocate_QByteArray( pObj, true ) );
}
/*
* QByteArray & append ( const QByteArray & ba )
*/

View File

@@ -113,6 +113,7 @@ void * hbqt_gcAllocate_QCoreApplication( void * pObj, bool bNew )
HB_FUNC( QT_QCOREAPPLICATION )
{
}
/*
* virtual bool notify ( QObject * receiver, QEvent * event )
*/

View File

@@ -93,7 +93,7 @@ typedef struct
QT_G_FUNC( hbqt_gcRelease_QDataStream )
{
QGC_POINTER * p = ( QGC_POINTER * ) Cargo;
QGC_POINTER * p = ( QGC_POINTER * ) Cargo;
if( p && p->bNew )
{
@@ -138,6 +138,7 @@ HB_FUNC( QT_QDATASTREAM )
hb_retptrGC( hbqt_gcAllocate_QDataStream( pObj, true ) );
}
/*
* bool atEnd () const
*/

View File

@@ -88,7 +88,7 @@ typedef struct
QT_G_FUNC( hbqt_gcRelease_QDate )
{
QGC_POINTER * p = ( QGC_POINTER * ) Cargo;
QGC_POINTER * p = ( QGC_POINTER * ) Cargo;
if( p && p->bNew )
{
@@ -133,6 +133,7 @@ HB_FUNC( QT_QDATE )
hb_retptrGC( hbqt_gcAllocate_QDate( pObj, true ) );
}
/*
* QDate addDays ( int ndays ) const
*/

View File

@@ -88,7 +88,7 @@ typedef struct
QT_G_FUNC( hbqt_gcRelease_QDateTime )
{
QGC_POINTER * p = ( QGC_POINTER * ) Cargo;
QGC_POINTER * p = ( QGC_POINTER * ) Cargo;
if( p && p->bNew )
{
@@ -133,6 +133,7 @@ HB_FUNC( QT_QDATETIME )
hb_retptrGC( hbqt_gcAllocate_QDateTime( pObj, true ) );
}
/*
* QDateTime addDays ( int ndays ) const
*/

View File

@@ -94,7 +94,7 @@ typedef struct
QT_G_FUNC( hbqt_gcRelease_QDir )
{
QGC_POINTER * p = ( QGC_POINTER * ) Cargo;
QGC_POINTER * p = ( QGC_POINTER * ) Cargo;
if( p && p->bNew )
{
@@ -139,6 +139,7 @@ HB_FUNC( QT_QDIR )
hb_retptrGC( hbqt_gcAllocate_QDir( pObj, true ) );
}
/*
* QString absoluteFilePath ( const QString & fileName ) const
*/

View File

@@ -89,7 +89,7 @@ typedef struct
QT_G_FUNC( hbqt_gcRelease_QEvent )
{
QGC_POINTER * p = ( QGC_POINTER * ) Cargo;
QGC_POINTER * p = ( QGC_POINTER * ) Cargo;
if( p && p->bNew )
{
@@ -134,6 +134,7 @@ HB_FUNC( QT_QEVENT )
hb_retptrGC( hbqt_gcAllocate_QEvent( pObj, true ) );
}
/*
* void accept ()
*/

View File

@@ -145,6 +145,7 @@ HB_FUNC( QT_QEVENTLOOP )
hb_retptrGC( hbqt_gcAllocate_QEventLoop( pObj, true ) );
}
/*
* int exec ( ProcessEventsFlags flags = AllEvents )
*/

View File

@@ -153,6 +153,7 @@ HB_FUNC( QT_QFILE )
hb_retptrGC( hbqt_gcAllocate_QFile( pObj, true ) );
}
/*
* virtual bool atEnd () const
*/

View File

@@ -94,7 +94,7 @@ typedef struct
QT_G_FUNC( hbqt_gcRelease_QFileInfo )
{
QGC_POINTER * p = ( QGC_POINTER * ) Cargo;
QGC_POINTER * p = ( QGC_POINTER * ) Cargo;
if( p && p->bNew )
{
@@ -139,6 +139,7 @@ HB_FUNC( QT_QFILEINFO )
hb_retptrGC( hbqt_gcAllocate_QFileInfo( pObj, true ) );
}
/*
* QDir absoluteDir () const
*/

View File

@@ -114,6 +114,7 @@ void * hbqt_gcAllocate_QIODevice( void * pObj, bool bNew )
HB_FUNC( QT_QIODEVICE )
{
}
/*
* virtual bool atEnd () const
*/

View File

@@ -84,7 +84,7 @@ typedef struct
QT_G_FUNC( hbqt_gcRelease_QLatin1Char )
{
QGC_POINTER * p = ( QGC_POINTER * ) Cargo;
QGC_POINTER * p = ( QGC_POINTER * ) Cargo;
if( p && p->bNew )
{
@@ -129,6 +129,7 @@ HB_FUNC( QT_QLATIN1CHAR )
hb_retptrGC( hbqt_gcAllocate_QLatin1Char( pObj, true ) );
}
/*
* char toLatin1 () const
*/

View File

@@ -84,7 +84,7 @@ typedef struct
QT_G_FUNC( hbqt_gcRelease_QLatin1String )
{
QGC_POINTER * p = ( QGC_POINTER * ) Cargo;
QGC_POINTER * p = ( QGC_POINTER * ) Cargo;
if( p && p->bNew )
{
@@ -129,6 +129,7 @@ HB_FUNC( QT_QLATIN1STRING )
hb_retptrGC( hbqt_gcAllocate_QLatin1String( pObj, true ) );
}
/*
* const char * latin1 () const
*/

View File

@@ -86,7 +86,7 @@ typedef struct
QT_G_FUNC( hbqt_gcRelease_QLine )
{
QGC_POINTER * p = ( QGC_POINTER * ) Cargo;
QGC_POINTER * p = ( QGC_POINTER * ) Cargo;
if( p && p->bNew )
{
@@ -146,6 +146,7 @@ HB_FUNC( QT_QLINE )
hb_retptrGC( hbqt_gcAllocate_QLine( pObj, true ) );
}
/*
* QPoint p1 () const
*/

View File

@@ -90,7 +90,7 @@ typedef struct
QT_G_FUNC( hbqt_gcRelease_QLineF )
{
QGC_POINTER * p = ( QGC_POINTER * ) Cargo;
QGC_POINTER * p = ( QGC_POINTER * ) Cargo;
if( p && p->bNew )
{
@@ -135,6 +135,7 @@ HB_FUNC( QT_QLINEF )
hb_retptrGC( hbqt_gcAllocate_QLineF( pObj, true ) );
}
/*
* QPointF p1 () const
*/

View File

@@ -112,7 +112,7 @@ typedef struct
QT_G_FUNC( hbqt_gcRelease_QList )
{
QGC_POINTER * p = ( QGC_POINTER * ) Cargo;
QGC_POINTER * p = ( QGC_POINTER * ) Cargo;
if( p && p->bNew )
{
@@ -158,6 +158,7 @@ HB_FUNC( QT_QLIST )
hb_retptrGC( hbqt_gcAllocate_QList( pObj, true ) );
}
/*
* void append ( const T & value )
*/

View File

@@ -114,7 +114,7 @@ typedef struct
QT_G_FUNC( hbqt_gcRelease_QLocale )
{
QGC_POINTER * p = ( QGC_POINTER * ) Cargo;
QGC_POINTER * p = ( QGC_POINTER * ) Cargo;
if( p && p->bNew )
{
@@ -159,6 +159,7 @@ HB_FUNC( QT_QLOCALE )
hb_retptrGC( hbqt_gcAllocate_QLocale( pObj, true ) );
}
/*
* QString amText () const
*/

View File

@@ -150,6 +150,7 @@ HB_FUNC( QT_QMIMEDATA )
hb_retptrGC( hbqt_gcAllocate_QMimeData( pObj, true ) );
}
/*
* void clear ()
*/

View File

@@ -86,7 +86,7 @@ typedef struct
QT_G_FUNC( hbqt_gcRelease_QModelIndex )
{
QGC_POINTER * p = ( QGC_POINTER * ) Cargo;
QGC_POINTER * p = ( QGC_POINTER * ) Cargo;
if( p && p->bNew )
{
@@ -131,6 +131,7 @@ HB_FUNC( QT_QMODELINDEX )
hb_retptrGC( hbqt_gcAllocate_QModelIndex( pObj, true ) );
}
/*
* QModelIndex child ( int row, int column ) const
*/

View File

@@ -157,6 +157,7 @@ HB_FUNC( QT_QOBJECT )
hb_retptrGC( hbqt_gcAllocate_QObject( pObj, true ) );
}
/*
* bool blockSignals ( bool block )
*/

View File

@@ -86,7 +86,7 @@ typedef struct
QT_G_FUNC( hbqt_gcRelease_QPoint )
{
QGC_POINTER * p = ( QGC_POINTER * ) Cargo;
QGC_POINTER * p = ( QGC_POINTER * ) Cargo;
if( p && p->bNew )
{
@@ -142,6 +142,7 @@ HB_FUNC( QT_QPOINT )
hb_retptrGC( hbqt_gcAllocate_QPoint( pObj, true ) );
}
/*
* bool isNull () const
*/

View File

@@ -86,7 +86,7 @@ typedef struct
QT_G_FUNC( hbqt_gcRelease_QPointF )
{
QGC_POINTER * p = ( QGC_POINTER * ) Cargo;
QGC_POINTER * p = ( QGC_POINTER * ) Cargo;
if( p && p->bNew )
{
@@ -142,6 +142,7 @@ HB_FUNC( QT_QPOINTF )
hb_retptrGC( hbqt_gcAllocate_QPointF( pObj, true ) );
}
/*
* bool isNull () const
*/

View File

@@ -158,6 +158,7 @@ HB_FUNC( QT_QPROCESS )
hb_retptrGC( hbqt_gcAllocate_QProcess( pObj, true ) );
}
/*
* virtual void close ()
*/

View File

@@ -88,7 +88,7 @@ typedef struct
QT_G_FUNC( hbqt_gcRelease_QRect )
{
QGC_POINTER * p = ( QGC_POINTER * ) Cargo;
QGC_POINTER * p = ( QGC_POINTER * ) Cargo;
if( p && p->bNew )
{
@@ -148,6 +148,7 @@ HB_FUNC( QT_QRECT )
hb_retptrGC( hbqt_gcAllocate_QRect( pObj, true ) );
}
/*
* void adjust ( int dx1, int dy1, int dx2, int dy2 )
*/

View File

@@ -89,7 +89,7 @@ typedef struct
QT_G_FUNC( hbqt_gcRelease_QRectF )
{
QGC_POINTER * p = ( QGC_POINTER * ) Cargo;
QGC_POINTER * p = ( QGC_POINTER * ) Cargo;
if( p && p->bNew )
{
@@ -149,6 +149,7 @@ HB_FUNC( QT_QRECTF )
hb_retptrGC( hbqt_gcAllocate_QRectF( pObj, true ) );
}
/*
* void adjust ( qreal dx1, qreal dy1, qreal dx2, qreal dy2 )
*/

View File

@@ -91,7 +91,7 @@ typedef struct
QT_G_FUNC( hbqt_gcRelease_QRegExp )
{
QGC_POINTER * p = ( QGC_POINTER * ) Cargo;
QGC_POINTER * p = ( QGC_POINTER * ) Cargo;
if( p && p->bNew )
{
@@ -136,6 +136,7 @@ HB_FUNC( QT_QREGEXP )
hb_retptrGC( hbqt_gcAllocate_QRegExp( pObj, true ) );
}
/*
* QString cap ( int nth = 0 ) const
*/

View File

@@ -85,7 +85,7 @@ typedef struct
QT_G_FUNC( hbqt_gcRelease_QResource )
{
QGC_POINTER * p = ( QGC_POINTER * ) Cargo;
QGC_POINTER * p = ( QGC_POINTER * ) Cargo;
if( p && p->bNew )
{
@@ -130,6 +130,7 @@ HB_FUNC( QT_QRESOURCE )
hb_retptrGC( hbqt_gcAllocate_QResource( pObj, true ) );
}
/*
* QString absoluteFilePath () const
*/

View File

@@ -161,6 +161,7 @@ HB_FUNC( QT_QSETTINGS )
hb_retptrGC( hbqt_gcAllocate_QSettings( pObj, true ) );
}
/*
* QStringList allKeys () const
*/

View File

@@ -140,6 +140,7 @@ HB_FUNC( QT_QSIGNALMAPPER )
hb_retptrGC( hbqt_gcAllocate_QSignalMapper( pObj, true ) );
}
/*
* QObject * mapping ( int id ) const
*/

View File

@@ -86,7 +86,7 @@ typedef struct
QT_G_FUNC( hbqt_gcRelease_QSize )
{
QGC_POINTER * p = ( QGC_POINTER * ) Cargo;
QGC_POINTER * p = ( QGC_POINTER * ) Cargo;
if( p && p->bNew )
{
@@ -142,6 +142,7 @@ HB_FUNC( QT_QSIZE )
hb_retptrGC( hbqt_gcAllocate_QSize( pObj, true ) );
}
/*
* int height () const
*/

View File

@@ -87,7 +87,7 @@ typedef struct
QT_G_FUNC( hbqt_gcRelease_QSizeF )
{
QGC_POINTER * p = ( QGC_POINTER * ) Cargo;
QGC_POINTER * p = ( QGC_POINTER * ) Cargo;
if( p && p->bNew )
{
@@ -139,6 +139,7 @@ HB_FUNC( QT_QSIZEF )
hb_retptrGC( hbqt_gcAllocate_QSizeF( pObj, true ) );
}
/*
* QSizeF boundedTo ( const QSizeF & otherSize ) const
*/

View File

@@ -105,7 +105,7 @@ typedef struct
QT_G_FUNC( hbqt_gcRelease_QStringList )
{
QGC_POINTER * p = ( QGC_POINTER * ) Cargo;
QGC_POINTER * p = ( QGC_POINTER * ) Cargo;
if( p && p->bNew )
{
@@ -150,6 +150,7 @@ HB_FUNC( QT_QSTRINGLIST )
hb_retptrGC( hbqt_gcAllocate_QStringList( pObj, true ) );
}
/*
* void append ( const QString & value )
*/

View File

@@ -94,7 +94,7 @@ typedef struct
QT_G_FUNC( hbqt_gcRelease_QTextBoundaryFinder )
{
QGC_POINTER * p = ( QGC_POINTER * ) Cargo;
QGC_POINTER * p = ( QGC_POINTER * ) Cargo;
if( p && p->bNew )
{
@@ -139,6 +139,7 @@ HB_FUNC( QT_QTEXTBOUNDARYFINDER )
hb_retptrGC( hbqt_gcAllocate_QTextBoundaryFinder( pObj, true ) );
}
/*
* BoundaryReasons boundaryReasons () const
*/

View File

@@ -125,6 +125,7 @@ void * hbqt_gcAllocate_QTextCodec( void * pObj, bool bNew )
HB_FUNC( QT_QTEXTCODEC )
{
}
/*
* bool canEncode ( QChar ch ) const
*/

View File

@@ -85,7 +85,7 @@ typedef struct
QT_G_FUNC( hbqt_gcRelease_QTextDecoder )
{
QGC_POINTER * p = ( QGC_POINTER * ) Cargo;
QGC_POINTER * p = ( QGC_POINTER * ) Cargo;
if( p && p->bNew )
{
@@ -130,6 +130,7 @@ HB_FUNC( QT_QTEXTDECODER )
hb_retptrGC( hbqt_gcAllocate_QTextDecoder( pObj, true ) );
}
/*
* QString toUnicode ( const char * chars, int len )
*/

View File

@@ -85,7 +85,7 @@ typedef struct
QT_G_FUNC( hbqt_gcRelease_QTextEncoder )
{
QGC_POINTER * p = ( QGC_POINTER * ) Cargo;
QGC_POINTER * p = ( QGC_POINTER * ) Cargo;
if( p && p->bNew )
{
@@ -130,6 +130,7 @@ HB_FUNC( QT_QTEXTENCODER )
hb_retptrGC( hbqt_gcAllocate_QTextEncoder( pObj, true ) );
}
/*
* QByteArray fromUnicode ( const QString & str )
*/

View File

@@ -105,7 +105,7 @@ typedef struct
QT_G_FUNC( hbqt_gcRelease_QTextStream )
{
QGC_POINTER * p = ( QGC_POINTER * ) Cargo;
QGC_POINTER * p = ( QGC_POINTER * ) Cargo;
if( p && p->bNew )
{
@@ -150,6 +150,7 @@ HB_FUNC( QT_QTEXTSTREAM )
hb_retptrGC( hbqt_gcAllocate_QTextStream( pObj, true ) );
}
/*
* bool atEnd () const
*/

View File

@@ -143,6 +143,7 @@ HB_FUNC( QT_QTHREAD )
hb_retptrGC( hbqt_gcAllocate_QThread( pObj, true ) );
}
/*
* void exit ( int returnCode = 0 )
*/

View File

@@ -84,7 +84,7 @@ typedef struct
QT_G_FUNC( hbqt_gcRelease_QTime )
{
QGC_POINTER * p = ( QGC_POINTER * ) Cargo;
QGC_POINTER * p = ( QGC_POINTER * ) Cargo;
if( p && p->bNew )
{
@@ -129,6 +129,7 @@ HB_FUNC( QT_QTIME )
hb_retptrGC( hbqt_gcAllocate_QTime( pObj, true ) );
}
/*
* QTime addMSecs ( int ms ) const
*/

View File

@@ -140,6 +140,7 @@ HB_FUNC( QT_QTIMER )
hb_retptrGC( hbqt_gcAllocate_QTimer( pObj, true ) );
}
/*
* int interval () const
*/

View File

@@ -139,6 +139,7 @@ HB_FUNC( QT_QTRANSLATOR )
hb_retptrGC( hbqt_gcAllocate_QTranslator( pObj, true ) );
}
/*
* virtual bool isEmpty () const
*/

View File

@@ -148,6 +148,7 @@ HB_FUNC( QT_QUILOADER )
hb_retptrGC( hbqt_gcAllocate_QUiLoader( pObj, true ) );
}
/*
* void addPluginPath ( const QString & path )
*/

View File

@@ -119,7 +119,7 @@ typedef struct
QT_G_FUNC( hbqt_gcRelease_QUrl )
{
QGC_POINTER * p = ( QGC_POINTER * ) Cargo;
QGC_POINTER * p = ( QGC_POINTER * ) Cargo;
if( p && p->bNew )
{
@@ -164,6 +164,7 @@ HB_FUNC( QT_QURL )
hb_retptrGC( hbqt_gcAllocate_QUrl( pObj, true ) );
}
/*
* void addEncodedQueryItem ( const QByteArray & key, const QByteArray & value )
*/

View File

@@ -148,7 +148,7 @@ typedef struct
QT_G_FUNC( hbqt_gcRelease_QVariant )
{
QGC_POINTER * p = ( QGC_POINTER * ) Cargo;
QGC_POINTER * p = ( QGC_POINTER * ) Cargo;
if( p && p->bNew )
{
@@ -193,6 +193,7 @@ HB_FUNC( QT_QVARIANT )
hb_retptrGC( hbqt_gcAllocate_QVariant( pObj, true ) );
}
/*
* bool canConvert ( Type t ) const
*/

View File

@@ -0,0 +1,96 @@
/*
* $Id$
*/
/* -------------------------------------------------------------------- */
/* WARNING: Automatically generated source file. DO NOT EDIT! */
/* Instead, edit corresponding .qth file, */
/* or the generator tool itself, and run regenarate. */
/* -------------------------------------------------------------------- */
/*
* Harbour Project source code:
* QT wrapper main header
*
* Copyright 2009-2010 Pritpal Bedi <pritpal@vouchcac.com>
*
* Copyright 2009 Marcos Antonio Gambeta <marcosgambeta at gmail dot com>
* 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.
*
*/
/*----------------------------------------------------------------------*/
#include "hbclass.ch"
CREATE CLASS HBDbfModel INHERIT HbQtObjectHandler, QAbstractItemModel
METHOD new( ... )
METHOD hbSetRowColumns( nRows, nCols )
METHOD reset()
METHOD index( nRow, nColumn, pParent )
ENDCLASS
METHOD HBDbfModel:new( ... )
LOCAL p
FOR EACH p IN { ... }
hb_pvalue( p:__enumIndex(), hbqt_ptr( p ) )
NEXT
::pPtr := Qt_HBDbfModel( ... )
RETURN Self
METHOD HBDbfModel:hbSetRowColumns( nRows, nCols )
RETURN Qt_HBDbfModel_hbSetRowColumns( ::pPtr, nRows, nCols )
METHOD HBDbfModel:reset()
RETURN Qt_HBDbfModel_reset( ::pPtr )
METHOD HBDbfModel:index( nRow, nColumn, pParent )
RETURN Qt_HBDbfModel_index( ::pPtr, nRow, nColumn, hbqt_ptr( pParent ) )

View File

@@ -0,0 +1,96 @@
/*
* $Id$
*/
/* -------------------------------------------------------------------- */
/* WARNING: Automatically generated source file. DO NOT EDIT! */
/* Instead, edit corresponding .qth file, */
/* or the generator tool itself, and run regenarate. */
/* -------------------------------------------------------------------- */
/*
* Harbour Project source code:
* QT wrapper main header
*
* Copyright 2009-2010 Pritpal Bedi <pritpal@vouchcac.com>
*
* Copyright 2009 Marcos Antonio Gambeta <marcosgambeta at gmail dot com>
* 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.
*
*/
/*----------------------------------------------------------------------*/
#include "hbclass.ch"
CREATE CLASS HBEvents INHERIT HbQtObjectHandler, QObject
METHOD new( ... )
METHOD hbConnect( xObj, nEvent, xBlock )
METHOD hbDisconnect( xObj, nEvent )
METHOD hbClear()
ENDCLASS
METHOD HBEvents:new( ... )
LOCAL p
FOR EACH p IN { ... }
hb_pvalue( p:__enumIndex(), hbqt_ptr( p ) )
NEXT
::pPtr := Qt_HBEvents( ... )
RETURN Self
METHOD HBEvents:hbConnect( xObj, nEvent, xBlock )
RETURN Qt_HBEvents_hbConnect( ::pPtr, xObj, nEvent, xBlock )
METHOD HBEvents:hbDisconnect( xObj, nEvent )
RETURN Qt_HBEvents_hbDisconnect( ::pPtr, xObj, nEvent )
METHOD HBEvents:hbClear()
RETURN Qt_HBEvents_hbClear( ::pPtr )

View File

@@ -0,0 +1,101 @@
/*
* $Id$
*/
/* -------------------------------------------------------------------- */
/* WARNING: Automatically generated source file. DO NOT EDIT! */
/* Instead, edit corresponding .qth file, */
/* or the generator tool itself, and run regenarate. */
/* -------------------------------------------------------------------- */
/*
* Harbour Project source code:
* QT wrapper main header
*
* Copyright 2009-2010 Pritpal Bedi <pritpal@vouchcac.com>
*
* Copyright 2009 Marcos Antonio Gambeta <marcosgambeta at gmail dot com>
* 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.
*
*/
/*----------------------------------------------------------------------*/
#include "hbclass.ch"
CREATE CLASS HBSlots INHERIT HbQtObjectHandler, QObject
METHOD new( ... )
METHOD hbConnect( xPObj, pSlot, xBBlock )
METHOD hbDisconnect( xObj, pSlot )
METHOD hbIsConnected( xObj, pSlot )
METHOD hbClear()
ENDCLASS
METHOD HBSlots:new( ... )
LOCAL p
FOR EACH p IN { ... }
hb_pvalue( p:__enumIndex(), hbqt_ptr( p ) )
NEXT
::pPtr := Qt_HBSlots( ... )
RETURN Self
METHOD HBSlots:hbConnect( xPObj, pSlot, xBBlock )
RETURN Qt_HBSlots_hbConnect( ::pPtr, xPObj, hbqt_ptr( pSlot ), xBBlock )
METHOD HBSlots:hbDisconnect( xObj, pSlot )
RETURN Qt_HBSlots_hbDisconnect( ::pPtr, xObj, hbqt_ptr( pSlot ) )
METHOD HBSlots:hbIsConnected( xObj, pSlot )
RETURN Qt_HBSlots_hbIsConnected( ::pPtr, xObj, hbqt_ptr( pSlot ) )
METHOD HBSlots:hbClear()
RETURN Qt_HBSlots_hbClear( ::pPtr )

View File

@@ -239,28 +239,3 @@ METHOD QAbstractItemModel:revert()
METHOD QAbstractItemModel:submit()
RETURN Qt_QAbstractItemModel_submit( ::pPtr )
CREATE CLASS HBDbfModel INHERIT QAbstractItemModel
METHOD new( bBlock )
METHOD reset()
METHOD index( nRow, nCol )
METHOD hbSetRowColumns( nRows, nCols )
ENDCLASS
METHOD HBDbfModel:new( bBlock )
::pPtr := Qt_HBDbfModel( bBlock )
RETURN Self
METHOD HBDbfModel:reset()
RETURN Qt_HBDbfModel_reset( ::pPtr )
METHOD HBDbfModel:index( nRow, nCol )
RETURN Qt_HBDbfModel_index( ::pPtr, nRow, nCol, 0 )
METHOD HBDbfModel:hbSetRowColumns( nRows, nCols )
RETURN Qt_HBDbfModel_hbSetRowColumns( ::pPtr, nRows, nCols )

View File

@@ -9,6 +9,9 @@
# --------------------------------------------------------------------
CPP_SOURCES := \
HBDbfModel.cpp \
HBEvents.cpp \
HBSlots.cpp \
QAbstractItemModel.cpp \
QAbstractListModel.cpp \
QAbstractTableModel.cpp \
@@ -61,6 +64,9 @@ CPP_SOURCES := \
PRG_SOURCES := \
THBDbfModel.prg \
THBEvents.prg \
THBSlots.prg \
TQAbstractItemModel.prg \
TQAbstractListModel.prg \
TQAbstractTableModel.prg \

View File

@@ -0,0 +1,171 @@
/*
* $Id$
*/
/* -------------------------------------------------------------------- */
/* WARNING: Automatically generated source file. DO NOT EDIT! */
/* Instead, edit corresponding .qth file, */
/* or the generator tool itself, and run regenarate. */
/* -------------------------------------------------------------------- */
/*
* Harbour Project source code:
* QT wrapper main header
*
* Copyright 2009-2010 Pritpal Bedi <pritpal@vouchcac.com>
*
* Copyright 2009 Marcos Antonio Gambeta <marcosgambeta at gmail dot com>
* 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.
*
*/
/*----------------------------------------------------------------------*/
#include "hbapi.h"
#include "../hbqt.h"
/*----------------------------------------------------------------------*/
#if QT_VERSION >= 0x040500
/*----------------------------------------------------------------------*/
#include <QtCore/QPointer>
#include <QtGui/QSyntaxHighlighter>
#include "../hbqt_hbqsyntaxhighlighter.h"
/*
*
*
*/
typedef struct
{
void * ph;
bool bNew;
QT_G_FUNC_PTR func;
QPointer< HBQSyntaxHighlighter > pq;
} QGC_POINTER_HBQSyntaxHighlighter;
QT_G_FUNC( hbqt_gcRelease_HBQSyntaxHighlighter )
{
QGC_POINTER_HBQSyntaxHighlighter * p = ( QGC_POINTER_HBQSyntaxHighlighter * ) Cargo;
if( p && p->bNew )
{
if( p->ph && p->pq )
{
const QMetaObject * m = ( ( QObject * ) p->ph )->metaObject();
if( ( QString ) m->className() != ( QString ) "QObject" )
{
delete ( ( HBQSyntaxHighlighter * ) p->ph );
HB_TRACE( HB_TR_DEBUG, ( "YES_rel_HBQSyntaxHighlighter ph=%p pq=%p %i B %i KB", p->ph, (void *)(p->pq), ( int ) hb_xquery( 1001 ), hbqt_getmemused() ) );
p->ph = NULL;
}
else
{
HB_TRACE( HB_TR_DEBUG, ( "NO__rel_HBQSyntaxHighlighter ph=%p pq=%p %i B %i KB", p->ph, (void *)(p->pq), ( int ) hb_xquery( 1001 ), hbqt_getmemused() ) );
}
}
else
{
HB_TRACE( HB_TR_DEBUG, ( "DEL_rel_HBQSyntaxHighlighter Object already deleted!" ) );
}
}
else
{
HB_TRACE( HB_TR_DEBUG, ( "PTR_rel_HBQSyntaxHighlighter Object not created with - new" ) );
p->ph = NULL;
}
}
void * hbqt_gcAllocate_HBQSyntaxHighlighter( void * pObj, bool bNew )
{
QGC_POINTER_HBQSyntaxHighlighter * p = ( QGC_POINTER_HBQSyntaxHighlighter * ) hb_gcAllocate( sizeof( QGC_POINTER_HBQSyntaxHighlighter ), hbqt_gcFuncs() );
p->ph = pObj;
p->bNew = bNew;
p->func = hbqt_gcRelease_HBQSyntaxHighlighter;
if( bNew )
{
new( & p->pq ) QPointer< HBQSyntaxHighlighter >( ( HBQSyntaxHighlighter * ) pObj );
HB_TRACE( HB_TR_DEBUG, ( " _new_HBQSyntaxHighlighter ph=%p %i B %i KB", pObj, ( int ) hb_xquery( 1001 ), hbqt_getmemused() ) );
}
return p;
}
HB_FUNC( QT_HBQSYNTAXHIGHLIGHTER )
{
void * pObj = NULL;
pObj = new HBQSyntaxHighlighter( hbqt_par_QTextDocument( 1 ) ) ;
hb_retptrGC( hbqt_gcAllocate_HBQSyntaxHighlighter( pObj, true ) );
}
/*
* void hbSetMultiLineCommentFormat( const QTextCharFormat & format )
*/
HB_FUNC( QT_HBQSYNTAXHIGHLIGHTER_HBSETMULTILINECOMMENTFORMAT )
{
hbqt_par_HBQSyntaxHighlighter( 1 )->hbSetMultiLineCommentFormat( *hbqt_par_QTextCharFormat( 2 ) );
}
/*
* void hbSetRule( QString name, QString pattern, QTextCharFormat & format )
*/
HB_FUNC( QT_HBQSYNTAXHIGHLIGHTER_HBSETRULE )
{
hbqt_par_HBQSyntaxHighlighter( 1 )->hbSetRule( HBQSyntaxHighlighter::tr( hb_parc( 2 ) ), HBQSyntaxHighlighter::tr( hb_parc( 3 ) ), *hbqt_par_QTextCharFormat( 4 ) );
}
/*
* void hbSetFormat( QString name, const QTextCharFormat & format )
*/
HB_FUNC( QT_HBQSYNTAXHIGHLIGHTER_HBSETFORMAT )
{
hbqt_par_HBQSyntaxHighlighter( 1 )->hbSetFormat( HBQSyntaxHighlighter::tr( hb_parc( 2 ) ), *hbqt_par_QTextCharFormat( 3 ) );
}
/*----------------------------------------------------------------------*/
#endif /* #if QT_VERSION >= 0x040500 */
/*----------------------------------------------------------------------*/

View File

@@ -0,0 +1,148 @@
/*
* $Id$
*/
/* -------------------------------------------------------------------- */
/* WARNING: Automatically generated source file. DO NOT EDIT! */
/* Instead, edit corresponding .qth file, */
/* or the generator tool itself, and run regenarate. */
/* -------------------------------------------------------------------- */
/*
* Harbour Project source code:
* QT wrapper main header
*
* Copyright 2009-2010 Pritpal Bedi <pritpal@vouchcac.com>
*
* Copyright 2009 Marcos Antonio Gambeta <marcosgambeta at gmail dot com>
* 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.
*
*/
/*----------------------------------------------------------------------*/
#include "hbapi.h"
#include "../hbqt.h"
/*----------------------------------------------------------------------*/
#if QT_VERSION >= 0x040500
/*----------------------------------------------------------------------*/
#include <QtCore/QPointer>
#include <QtGui/QTableView>
#include "../hbqt_hbqtableview.h"
/*
*
*
*/
typedef struct
{
void * ph;
bool bNew;
QT_G_FUNC_PTR func;
QPointer< HBQTableView > pq;
} QGC_POINTER_HBQTableView;
QT_G_FUNC( hbqt_gcRelease_HBQTableView )
{
QGC_POINTER_HBQTableView * p = ( QGC_POINTER_HBQTableView * ) Cargo;
if( p && p->bNew )
{
if( p->ph && p->pq )
{
const QMetaObject * m = ( ( QObject * ) p->ph )->metaObject();
if( ( QString ) m->className() != ( QString ) "QObject" )
{
delete ( ( HBQTableView * ) p->ph );
HB_TRACE( HB_TR_DEBUG, ( "YES_rel_HBQTableView ph=%p pq=%p %i B %i KB", p->ph, (void *)(p->pq), ( int ) hb_xquery( 1001 ), hbqt_getmemused() ) );
p->ph = NULL;
}
else
{
HB_TRACE( HB_TR_DEBUG, ( "NO__rel_HBQTableView ph=%p pq=%p %i B %i KB", p->ph, (void *)(p->pq), ( int ) hb_xquery( 1001 ), hbqt_getmemused() ) );
}
}
else
{
HB_TRACE( HB_TR_DEBUG, ( "DEL_rel_HBQTableView Object already deleted!" ) );
}
}
else
{
HB_TRACE( HB_TR_DEBUG, ( "PTR_rel_HBQTableView Object not created with - new" ) );
p->ph = NULL;
}
}
void * hbqt_gcAllocate_HBQTableView( void * pObj, bool bNew )
{
QGC_POINTER_HBQTableView * p = ( QGC_POINTER_HBQTableView * ) hb_gcAllocate( sizeof( QGC_POINTER_HBQTableView ), hbqt_gcFuncs() );
p->ph = pObj;
p->bNew = bNew;
p->func = hbqt_gcRelease_HBQTableView;
if( bNew )
{
new( & p->pq ) QPointer< HBQTableView >( ( HBQTableView * ) pObj );
HB_TRACE( HB_TR_DEBUG, ( " _new_HBQTableView ph=%p %i B %i KB", pObj, ( int ) hb_xquery( 1001 ), hbqt_getmemused() ) );
}
return p;
}
HB_FUNC( QT_HBQTABLEVIEW )
{
void * pObj = NULL;
pObj = new HBQTableView( hbqt_par_QWidget( 1 ) ) ;
hb_retptrGC( hbqt_gcAllocate_HBQTableView( pObj, true ) );
}
/*----------------------------------------------------------------------*/
#endif /* #if QT_VERSION >= 0x040500 */
/*----------------------------------------------------------------------*/

View File

@@ -85,7 +85,7 @@ typedef struct
QT_G_FUNC( hbqt_gcRelease_HBQTextBlockUserData )
{
QGC_POINTER * p = ( QGC_POINTER * ) Cargo;
QGC_POINTER * p = ( QGC_POINTER * ) Cargo;
if( p && p->bNew )
{
@@ -130,12 +130,21 @@ HB_FUNC( QT_HBQTEXTBLOCKUSERDATA )
hb_retptrGC( hbqt_gcAllocate_HBQTextBlockUserData( pObj, true ) );
}
/*
* void setData( int state )
* int hbSetState( int state )
*/
HB_FUNC( QT_HBQTEXTBLOCKUSERDATA_SETDATA )
HB_FUNC( QT_HBQTEXTBLOCKUSERDATA_HBSETSTATE )
{
hbqt_par_HBQTextBlockUserData( 1 )->setData( hb_parni( 2 ) );
hb_retni( hbqt_par_HBQTextBlockUserData( 1 )->hbSetState( hb_parni( 2 ) ) );
}
/*
* int hbState()
*/
HB_FUNC( QT_HBQTEXTBLOCKUSERDATA_HBSTATE )
{
hb_retni( hbqt_par_HBQTextBlockUserData( 1 )->hbState() );
}

View File

@@ -108,6 +108,7 @@ void * hbqt_gcAllocate_QAbstractButton( void * pObj, bool bNew )
HB_FUNC( QT_QABSTRACTBUTTON )
{
}
/*
* bool autoExclusive () const
*/

View File

@@ -111,6 +111,7 @@ void * hbqt_gcAllocate_QAbstractItemDelegate( void * pObj, bool bNew )
HB_FUNC( QT_QABSTRACTITEMDELEGATE )
{
}
/*
* virtual QWidget * createEditor ( QWidget * parent, const QStyleOptionViewItem & option, const QModelIndex & index ) const
*/

View File

@@ -118,6 +118,7 @@ void * hbqt_gcAllocate_QAbstractItemView( void * pObj, bool bNew )
HB_FUNC( QT_QABSTRACTITEMVIEW )
{
}
/*
* bool alternatingRowColors () const
*/

View File

@@ -122,6 +122,7 @@ void * hbqt_gcAllocate_QAbstractPrintDialog( void * pObj, bool bNew )
HB_FUNC( QT_QABSTRACTPRINTDIALOG )
{
}
/*
* virtual int exec () = 0
*/

View File

@@ -107,6 +107,7 @@ void * hbqt_gcAllocate_QAbstractProxyModel( void * pObj, bool bNew )
HB_FUNC( QT_QABSTRACTPROXYMODEL )
{
}
/*
* virtual QModelIndex mapFromSource ( const QModelIndex & sourceIndex ) const = 0
*/

View File

@@ -108,6 +108,7 @@ void * hbqt_gcAllocate_QAbstractScrollArea( void * pObj, bool bNew )
HB_FUNC( QT_QABSTRACTSCROLLAREA )
{
}
/*
* void addScrollBarWidget ( QWidget * widget, Qt::Alignment alignment )
*/

View File

@@ -112,6 +112,7 @@ void * hbqt_gcAllocate_QAbstractSlider( void * pObj, bool bNew )
HB_FUNC( QT_QABSTRACTSLIDER )
{
}
/*
* bool hasTracking () const
*/

View File

@@ -115,6 +115,7 @@ void * hbqt_gcAllocate_QAbstractSpinBox( void * pObj, bool bNew )
HB_FUNC( QT_QABSTRACTSPINBOX )
{
}
/*
* Qt::Alignment alignment () const
*/

View File

@@ -107,6 +107,7 @@ void * hbqt_gcAllocate_QAbstractTextDocumentLayout( void * pObj, bool bNew )
HB_FUNC( QT_QABSTRACTTEXTDOCUMENTLAYOUT )
{
}
/*
* QString anchorAt ( const QPointF & position ) const
*/

View File

@@ -164,6 +164,7 @@ HB_FUNC( QT_QACTION )
hb_retptrGC( hbqt_gcAllocate_QAction( pObj, true ) );
}
/*
* QActionGroup * actionGroup () const
*/

View File

@@ -151,6 +151,7 @@ HB_FUNC( QT_QACTIONGROUP )
hb_retptrGC( hbqt_gcAllocate_QActionGroup( pObj, true ) );
}
/*
* QAction * addAction ( QAction * action )
*/

View File

@@ -221,6 +221,7 @@ HB_FUNC( QT_QAPPLICATION )
hb_retptrGC( hbqt_gcAllocate_QApplication( pObj, true ) );
}
/*
* virtual void commitData ( QSessionManager & manager )
*/

View File

@@ -89,7 +89,7 @@ typedef struct
QT_G_FUNC( hbqt_gcRelease_QBitmap )
{
QGC_POINTER * p = ( QGC_POINTER * ) Cargo;
QGC_POINTER * p = ( QGC_POINTER * ) Cargo;
if( p && p->bNew )
{
@@ -168,6 +168,7 @@ HB_FUNC( QT_QBITMAP )
hb_retptrGC( hbqt_gcAllocate_QBitmap( pObj, true ) );
}
/*
* void clear ()
*/

View File

@@ -144,6 +144,7 @@ HB_FUNC( QT_QBOXLAYOUT )
hb_retptrGC( hbqt_gcAllocate_QBoxLayout( pObj, true ) );
}
/*
* void addLayout ( QLayout * layout, int stretch = 0 )
*/

View File

@@ -94,7 +94,7 @@ typedef struct
QT_G_FUNC( hbqt_gcRelease_QBrush )
{
QGC_POINTER * p = ( QGC_POINTER * ) Cargo;
QGC_POINTER * p = ( QGC_POINTER * ) Cargo;
if( p && p->bNew )
{
@@ -191,6 +191,7 @@ HB_FUNC( QT_QBRUSH )
hb_retptrGC( hbqt_gcAllocate_QBrush( pObj, true ) );
}
/*
* const QColor & color () const
*/

View File

@@ -156,6 +156,7 @@ HB_FUNC( QT_QBUTTONGROUP )
hb_retptrGC( hbqt_gcAllocate_QButtonGroup( pObj, true ) );
}
/*
* void addButton ( QAbstractButton * button )
*/

View File

@@ -155,6 +155,7 @@ HB_FUNC( QT_QCALENDARWIDGET )
hb_retptrGC( hbqt_gcAllocate_QCalendarWidget( pObj, true ) );
}
/*
* int dateEditAcceptDelay () const
*/

View File

@@ -147,6 +147,7 @@ HB_FUNC( QT_QCHECKBOX )
hb_retptrGC( hbqt_gcAllocate_QCheckBox( pObj, true ) );
}
/*
* Qt::CheckState checkState () const
*/

View File

@@ -119,6 +119,7 @@ HB_FUNC( QT_QCLIPBOARD )
hb_retptr( pObj );
}
/*
* void clear ( Mode mode = Clipboard )
*/

View File

@@ -94,7 +94,7 @@ typedef struct
QT_G_FUNC( hbqt_gcRelease_QColor )
{
QGC_POINTER * p = ( QGC_POINTER * ) Cargo;
QGC_POINTER * p = ( QGC_POINTER * ) Cargo;
if( p && p->bNew )
{
@@ -173,6 +173,7 @@ HB_FUNC( QT_QCOLOR )
hb_retptrGC( hbqt_gcAllocate_QColor( pObj, true ) );
}
/*
* int alpha () const
*/

View File

@@ -152,6 +152,7 @@ HB_FUNC( QT_QCOLORDIALOG )
hb_retptrGC( hbqt_gcAllocate_QColorDialog( pObj, true ) );
}
/*
* QColor currentColor () const
*/

View File

@@ -145,6 +145,7 @@ HB_FUNC( QT_QCOMBOBOX )
hb_retptrGC( hbqt_gcAllocate_QComboBox( pObj, true ) );
}
/*
* void addItem ( const QString & text, const QVariant & userData = QVariant() )
*/

View File

@@ -141,6 +141,7 @@ HB_FUNC( QT_QCOMMANDLINKBUTTON )
hb_retptrGC( hbqt_gcAllocate_QCommandLinkButton( pObj, true ) );
}
/*
* QString description () const
*/

View File

@@ -140,6 +140,7 @@ HB_FUNC( QT_QCOMMONSTYLE )
hb_retptrGC( hbqt_gcAllocate_QCommonStyle( pObj, true ) );
}
/*----------------------------------------------------------------------*/
#endif /* #if QT_VERSION >= 0x040500 */
/*----------------------------------------------------------------------*/

View File

@@ -146,6 +146,7 @@ HB_FUNC( QT_QCOMPLETER )
hb_retptrGC( hbqt_gcAllocate_QCompleter( pObj, true ) );
}
/*
* Qt::CaseSensitivity caseSensitivity () const
*/

View File

@@ -92,7 +92,7 @@ typedef struct
QT_G_FUNC( hbqt_gcRelease_QConicalGradient )
{
QGC_POINTER * p = ( QGC_POINTER * ) Cargo;
QGC_POINTER * p = ( QGC_POINTER * ) Cargo;
if( p && p->bNew )
{
@@ -137,6 +137,7 @@ HB_FUNC( QT_QCONICALGRADIENT )
hb_retptrGC( hbqt_gcAllocate_QConicalGradient( pObj, true ) );
}
/*
* qreal angle () const
*/

Some files were not shown because too many files have changed in this diff Show More