I have some svg items sharing the same svg renderer. The renderer is kept in a singleton. At runtime, I am updating the renderer by calling renderer.load("newimage.svg'). After that, I would like to force a redraw of my scene items. This is what I tried:

  • myGraphicsView->resetCachedContent()
  • myGraphicsView->scene()->update()
  • myGraphicsView->scene()->invalidate()
  • for each item: item()->update()
  • for each item: item()->setSharedRenderer(item()->renderer());

None of these works. What works is calling hide() + show() on each item, but I am looking for a more elegant solution, if any.

Thank you