Files
harbour-core/harbour/contrib/hbqt/qtcore/QTextDecoder.cpp
Pritpal Bedi 0937c773fb 2010-07-11 22:35 UTC-0800 Pritpal Bedi (bedipritpal@hotmail.com)
* contrib/hbqt/filelist.mk
  * contrib/hbqt/generator/hbqtgen.prg
  * contrib/hbqt/generator/qt45.qtp
  * contrib/hbqt/hbqt.ch
  * contrib/hbqt/hbqt.h
  * contrib/hbqt/hbqt.hbp
  * contrib/hbqt/hbqt_garbage.h
  + contrib/hbqt/hbqt_hbqabstractitemmodel.cpp
  + contrib/hbqt/hbqt_hbqabstractitemmodel.h
  * contrib/hbqt/qtcore/filelist.hbm
  * contrib/hbqt/qtcore/filelist.mk
  + contrib/hbqt/qth/HBQAbstractItemModel.qth
  * contrib/hbxbp/xbpbrowse.prg

    + Applied patch provided by Bacco, thanks.
      This implements one more member to the structure
      which will help simplifying many complex structures in hbQT.

  * Regenerated: *.cpp
2010-07-12 05:48:44 +00:00

159 lines
5.1 KiB
C++

/*
* $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://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 "../hbqt.h"
/*----------------------------------------------------------------------*/
#if QT_VERSION >= 0x040500
/*----------------------------------------------------------------------*/
#include <QtCore/QPointer>
#include <QtCore/QTextDecoder>
/*
* QTextDecoder ( const QTextCodec * codec )
* ~QTextDecoder ()
*/
typedef struct
{
QTextDecoder * ph;
bool bNew;
QT_G_FUNC_PTR func;
int type;
} QGC_POINTER_QTextDecoder;
QT_G_FUNC( hbqt_gcRelease_QTextDecoder )
{
QGC_POINTER * p = ( QGC_POINTER * ) Cargo;
if( p && p->bNew )
{
if( p->ph )
{
HB_TRACE( HB_TR_DEBUG, ( "ph=%p _rel_QTextDecoder /.\\", p->ph ) );
delete ( ( QTextDecoder * ) p->ph );
HB_TRACE( HB_TR_DEBUG, ( "ph=%p YES_rel_QTextDecoder \\./", p->ph ) );
p->ph = NULL;
}
else
{
HB_TRACE( HB_TR_DEBUG, ( "ph=%p DEL_rel_QTextDecoder : Object already deleted!", p->ph ) );
p->ph = NULL;
}
}
else
{
HB_TRACE( HB_TR_DEBUG, ( "ph=%p PTR_rel_QTextDecoder : Object not created with new=true", p->ph ) );
p->ph = NULL;
}
}
void * hbqt_gcAllocate_QTextDecoder( void * pObj, bool bNew )
{
QGC_POINTER * p = ( QGC_POINTER * ) hb_gcAllocate( sizeof( QGC_POINTER ), hbqt_gcFuncs() );
p->ph = ( QTextDecoder * ) pObj;
p->bNew = bNew;
p->func = hbqt_gcRelease_QTextDecoder;
p->type = QT_TYPE_QTextDecoder;
if( bNew )
{
HB_TRACE( HB_TR_DEBUG, ( "ph=%p _new_QTextDecoder", pObj ) );
}
else
{
HB_TRACE( HB_TR_DEBUG, ( "ph=%p NOT_new_QTextDecoder", pObj ) );
}
return p;
}
HB_FUNC( QT_QTEXTDECODER )
{
QTextDecoder * pObj = NULL;
pObj = new QTextDecoder( hbqt_par_QTextCodec( 1 ) ) ;
hb_retptrGC( hbqt_gcAllocate_QTextDecoder( ( void * ) pObj, true ) );
}
/*
* QString toUnicode ( const char * chars, int len )
*/
HB_FUNC( QT_QTEXTDECODER_TOUNICODE )
{
QTextDecoder * p = hbqt_par_QTextDecoder( 1 );
if( p )
hb_retc( ( p )->toUnicode( hbqt_par_char( 2 ), hb_parni( 3 ) ).toAscii().data() );
else
{
HB_TRACE( HB_TR_DEBUG, ( "............................... F=QT_QTEXTDECODER_TOUNICODE FP=hb_retc( ( p )->toUnicode( hbqt_par_char( 2 ), hb_parni( 3 ) ).toAscii().data() ); p is NULL" ) );
}
}
/*----------------------------------------------------------------------*/
#endif /* #if QT_VERSION >= 0x040500 */
/*----------------------------------------------------------------------*/