X-Git-Url: https://git.sesse.net/?a=blobdiff_plain;f=src%2Fabstractgroupitem.cpp;h=7d2cc39a1b829bc20f65ad90e05ffd20f6d8b6bf;hb=6c43f987273f567fa7659d5a4ad3a5e73f6e5b73;hp=cf5717a85d520a531a3404a4908e6f34a83b3595;hpb=9ed65c39988b2b1632fe7ae37dc3e99ec36a272b;p=kdenlive diff --git a/src/abstractgroupitem.cpp b/src/abstractgroupitem.cpp index cf5717a8..7d2cc39a 100644 --- a/src/abstractgroupitem.cpp +++ b/src/abstractgroupitem.cpp @@ -79,40 +79,27 @@ CustomTrackScene* AbstractGroupItem::projectScene() QPainterPath AbstractGroupItem::clipGroupShape(QPointF offset) const { - QPainterPath path; - QList 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 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; + return groupShape(AVWIDGET, offset); } QPainterPath AbstractGroupItem::transitionGroupShape(QPointF offset) const +{ + return groupShape(TRANSITIONWIDGET, offset); +} + +QPainterPath AbstractGroupItem::groupShape(GRAPHICSRECTITEM type, QPointF offset) const { QPainterPath path; QList children = childItems(); for (int i = 0; i < children.count(); i++) { - if (children.at(i)->type() == TRANSITIONWIDGET) { + if (children.at(i)->type() == (int)type) { QRectF r(children.at(i)->sceneBoundingRect()); r.translate(offset); path.addRect(r); } else if (children.at(i)->type() == GROUPWIDGET) { QList subchildren = children.at(i)->childItems(); for (int j = 0; j < subchildren.count(); j++) { - if (subchildren.at(j)->type() == TRANSITIONWIDGET) { + if (subchildren.at(j)->type() == (int)type) { QRectF r(subchildren.at(j)->sceneBoundingRect()); r.translate(offset); path.addRect(r);