2010-08-18 12:19 UTC-0800 Pritpal Bedi (bedipritpal@hotmail.com)

* contrib/hbqt/qtgui/g/QGraphicsScene.cpp
  * contrib/hbqt/qtgui/qth/QGraphicsScene.qth
    % Fixed: GPF on exit. QGraphicsScene:addItem() is owned by the scene.
This commit is contained in:
Pritpal Bedi
2010-08-18 07:23:45 +00:00
parent e67838afc4
commit b5269fd82b
3 changed files with 25 additions and 7 deletions

View File

@@ -16,6 +16,11 @@
The license applies to all entries newer than 2009-04-28.
*/
2010-08-18 12:19 UTC-0800 Pritpal Bedi (bedipritpal@hotmail.com)
* contrib/hbqt/qtgui/g/QGraphicsScene.cpp
* contrib/hbqt/qtgui/qth/QGraphicsScene.qth
% Fixed: GPF on exit. QGraphicsScene:addItem() is owned by the scene.
2010-08-17 20:32 UTC-0800 Pritpal Bedi (bedipritpal@hotmail.com)
+ contrib/hbqt/qtgui/hbqt_hbqgraphicsrectitem.cpp
+ Added: miss from the prev commit.

View File

@@ -73,11 +73,12 @@
*/
/*
* Constructed[ 69/71 [ 97.18% ] ]
* Constructed[ 69/72 [ 95.83% ] ]
*
* *** Unconvered Prototypes ***
* -----------------------------
*
* }
* QGraphicsItemGroup * createItemGroup ( const QList<QGraphicsItem *> & items )
*
* *** Commented out protos which construct fine but do not compile ***
@@ -241,12 +242,14 @@ HB_FUNC( QT_QGRAPHICSSCENE_ADDELLIPSE_1 )
*/
HB_FUNC( QT_QGRAPHICSSCENE_ADDITEM )
{
QGraphicsScene * p = hbqt_par_QGraphicsScene( 1 );
if( p )
( p )->addItem( hbqt_par_QGraphicsItem( 2 ) );
else
HBQT_GC_T * p = ( HBQT_GC_T * ) hb_parptrGC( hbqt_gcFuncs(), 1 );
HBQT_GC_T * q = ( HBQT_GC_T * ) hb_parptrGC( hbqt_gcFuncs(), 2 );
HB_TRACE( HB_TR_DEBUG, ( "Entering function QT_QGRAPHICSSCENE_ADDITEM()" ) );
if( p && p->ph && q && q->ph )
{
HB_TRACE( HB_TR_DEBUG, ( "............................... F=QT_QGRAPHICSSCENE_ADDITEM FP=( p )->addItem( hbqt_par_QGraphicsItem( 2 ) ); p is NULL" ) );
HB_TRACE( HB_TR_DEBUG, ( "QT_QGRAPHICSSCENE_ADDITEM() Qt object: %p is attached to: %p", p->ph, q->ph ) );
q->bNew = HB_FALSE;
hbqt_par_QGraphicsScene( 1 )->addItem( hbqt_par_QGraphicsItem( 2 ) );
}
}

View File

@@ -110,7 +110,17 @@ flags SceneLayers
QGraphicsWidget * activeWindow () const
QGraphicsEllipseItem * addEllipse ( const QRectF & rect, const QPen & pen = QPen(), const QBrush & brush = QBrush() )
QGraphicsEllipseItem * addEllipse ( qreal x, qreal y, qreal w, qreal h, const QPen & pen = QPen(), const QBrush & brush = QBrush() )
void addItem ( QGraphicsItem * item )
void addItem ( QGraphicsItem * item ){
HBQT_GC_T * p = ( HBQT_GC_T * ) hb_parptrGC( hbqt_gcFuncs(), 1 );
HBQT_GC_T * q = ( HBQT_GC_T * ) hb_parptrGC( hbqt_gcFuncs(), 2 );
HB_TRACE( HB_TR_DEBUG, ( "Entering function QT_QGRAPHICSSCENE_ADDITEM()" ) );
if( p && p->ph && q && q->ph )
{
HB_TRACE( HB_TR_DEBUG, ( "QT_QGRAPHICSSCENE_ADDITEM() Qt object: %p is attached to: %p", p->ph, q->ph ) );
q->bNew = HB_FALSE;
hbqt_par_QGraphicsScene( 1 )->addItem( hbqt_par_QGraphicsItem( 2 ) );
}
}
QGraphicsLineItem * addLine ( const QLineF & line, const QPen & pen = QPen() )
QGraphicsLineItem * addLine ( qreal x1, qreal y1, qreal x2, qreal y2, const QPen & pen = QPen() )
QGraphicsPathItem * addPath ( const QPainterPath & path, const QPen & pen = QPen(), const QBrush & brush = QBrush() )