- QPainterPath path;
- QList<QGraphicsItem *> children = childItems();
- for (int i = 0; i < children.count(); i++) {
- if (children.at(i)->type() == AVWIDGET) {
- QRectF r(children.at(i)->sceneBoundingRect());
- r.translate(offset);
- path.addRect(r);
- } else if (children.at(i)->type() == GROUPWIDGET) {
- QList<QGraphicsItem *> subchildren = children.at(i)->childItems();
- for (int j = 0; j < subchildren.count(); j++) {
- if (subchildren.at(j)->type() == AVWIDGET) {
- QRectF r(subchildren.at(j)->sceneBoundingRect());
- r.translate(offset);
- path.addRect(r);
- }
- }
- }
- }
- return path;