Qtopia-core look consistency

Lorn Potter lpotter at trolltech.com
Sat Sep 13 03:55:50 CEST 2008


Nicola Mfb wrote:
> 
>     [...]
>     So there is a problem in qtopia/arm or i'm missing again somethink.
>     This is the reason why i asked you how should i do to have
>     consistency beetween the two SDK (arm - x86). Howewer i installed my
>     built /opt/Qtopia on the Freerunner to be sure i used the same
>     toolkit, but the problems are the same.
> 
> 
> Hi Lorn! after a two day headache i finally found the problem. In 
> Qtopiacore for arm qreal is a float while in i686fb qreal is double.
> I defined qreal as a float on i686 and recompiled it, and now i have the 
> same paint horror on the desktop :)
> The following is a snippet that you can use to show how is simple to 
> break a QPainterPath rendering in a QGraphicsScene/QGraphicsView:
> 
> #include <QtopiaApplication>
> #include <QGraphicsView>
> #include <QGraphicsScene>
> #include <QGraphicsPathItem>
> 
> int main ( int argc, char *argv[] )
> {
>     qDebug ( "sizeof qreal is %d",sizeof ( qreal ) );
> 
>     QtopiaApplication app ( argc, argv );
>     QGraphicsScene *qgs = new QGraphicsScene;
>     QGraphicsView *qgv = new QGraphicsView ( qgs );
>     qgv->showMaximized();
> 
>     QPainterPath *qpp = new QPainterPath;
> 
>     qpp->moveTo ( 18164355,12559962 );
>     qpp->lineTo ( 18164319,12560006 );
>     qpp->lineTo ( 18164273,12560058 );
>     qpp->lineTo ( 18164262,12560068 );
>     qpp->lineTo ( 18164253,12560074 );
>     qpp->lineTo ( 18164242,12560080 );
>     qpp->lineTo ( 18164232,12560085 );
>     qpp->lineTo ( 18164222,12560093 );
>     qpp->lineTo ( 18164221,12560106 );
>     qpp->lineTo ( 18164224,12560112 );
>     qpp->lineTo ( 18164231,12560113 );
>     qpp->lineTo ( 18164239,12560112 );
> 
>     QGraphicsPathItem *p=new QGraphicsPathItem ( *qpp );
>     QPen pen ( Qt::white );
>     //pen.setWidthF(1.0); //UNCOMMENTING THIS BREAKS PAINTING
>     p->setPen ( pen );
>     qgs->addItem ( p );
> 
>     QRect r ( 18164355-qgv->width() /2,12559962-qgv->height() 
> /2,qgv->width(),qgv->height() );
>     qgv->setSceneRect ( r );
> 
>     return app.exec();
> }
> 
> Run it twice toggling the pen.setWidthF line comment and you'll se wath 
> i'm saying.
> 
> Hoping this may help, i'd like to follow/contribute to further 
> investigation on a bug tracking system, is there one for qtopia?

Yes there is. I think this would be a good one. thanks
http://trolltech.com/bugreport-form



-- 
Lorn 'ljp' Potter
Software Engineer, Systems Group, Trolltech, a Nokia company




More information about the community mailing list