I see the api for setPath is:
void QGraphicsPathItem::setPath
( const QPainterPath & path );
http://doc.qt.nokia.com/4.6/qgraphicspathitem.html#setPathBut your argument is paint_path, which is (QPainterPath*), I presume, since your code is:
paint_path = new QPainterPath();
So, dereference paint_path.
Maybe this will work:
path->setPath( *paint_path);