The only way I can see at the moment is in my zoom event handler function, to manually iterate through each item and scale it, thusly:

Qt Code:
  1. for (int i = 0; i < scene->items().count(); i++)
  2. {
  3. item = scene->items()[i];
  4. if (event->delta() > 0)
  5. item->scale(0.5, 0.5);
  6. else if (event->delta() < 0)
  7. item->scale(2, 2);
  8. }
To copy to clipboard, switch view to plain text mode 

But there must be an easier way to do this.
I was thinking of keeping track of the scale factor somehow, perhaps in the custom item itself, and then in the paint function take this scale factor into consideration in the paint() event.
But then how would I let each child know that a zoom event occurred?