git-svn-id: svn://db.shs.com.ru/libs@80 a8b55f48-bf90-11e4-a774-851b48703e85

This commit is contained in:
2016-02-11 21:25:09 +00:00
parent f20fc99f25
commit 84e62087a1
2 changed files with 16 additions and 5 deletions

View File

@@ -368,10 +368,21 @@ void BlockBusItem::hoverMoveEvent(QGraphicsSceneHoverEvent * e) {
return;
}
setToolTip(QString());
QList<QGraphicsItem * > il = scene()->items(Qt::DescendingOrder);
for (int i = 0; i < il.size(); ++i)
if (il[i]->data(1005) == "connection" && il[i] != this)
{stackBefore(il[i]);}
QList<QGraphicsItem * > il = scene()->items(sp, Qt::ContainsItemBoundingRect, Qt::DescendingOrder), bil;
bil << this;
for (int i = 0; i < il.size(); ++i) {
QGraphicsItem * b = il[i];
if (b->data(1005) == "connection" && b != this) {
int tp = -1, ts = -1;
((BlockBusItem*)b)->testPoint(sp, &tp, &ts);
if (tp >= 0 || ts >= 0) {
foreach (QGraphicsItem * b2, bil)
b2->stackBefore(b);
break;
}
bil << b;
}
}
update();
}

View File

@@ -1151,7 +1151,7 @@ void BlockView::moveBuses(const QList<QGraphicsItem * > & items, QPointF dp) {
buses << qgraphicsitem_cast<BlockBusItem*>(i);
foreach (BlockBusItem * b, buses) {
QList<BlockItemPin * > bpins = b->connections_.values();
if (bpins.size() == b->endpointCount()) {
if (!bpins.isEmpty()) {
foreach (BlockItemPin * p, pins)
bpins.removeAll(p);
if (bpins.isEmpty()) {