#include "upravline.h" upravLine::upravLine() { pic = QImage(); targetNum = -1; tar = 0; } QRectF upravLine::boundingRect() const { return QRectF(0, 0, 360, 45); } void upravLine::setTarget(airObj *t) { tar = t; setPic(tar->pic, tar->picAlt); setNum(tar->numer); } void upravLine::clear() { pic = QImage(); picAlt = QImage(); targetNum = -1; } void upravLine::setPic(QImage im, QImage im1) { prepareGeometryChange(); pic = im; picAlt = im1; } void upravLine::setNum(int i) { if (i!=targetNum) { prepareGeometryChange(); targetNum=i; } } void upravLine::paint(QPainter *p, const QStyleOptionGraphicsItem *option, QWidget *widget) { QBrush br; QRectF r(6,10,20,20); p->drawImage(r, pic); p->save(); p->setPen(Qt::darkGray); if (tar->priznakAction) { p->setPen(tar->priznakColor); } p->drawRect(r); p->restore(); QPointF pf = r.topRight(); pf+=QPointF(4, 7); p->setPen(tar->col); QFont f = p->font(); f.setPixelSize(12); p->setFont(f); p->drawText(pf, QString::number(tar->numer+1)); r = QRectF(30, 20, 10,10); p->drawImage(r, picAlt); for (int i=0; i<6;i++) { pf = QPointF(69+45*i+5,25); if (tar->CU[i+1]==1)//drawY { p->setPen(Qt::green); f.setPixelSize(20); p->setFont(f); p->drawText(pf, "Y"); } if (tar->CU[i+1]==2)//drawZ { p->setPen(Qt::red); f.setPixelSize(20); p->setFont(f); p->drawText(pf, "Z"); } if (tar->CU[i+1]==21)//drawY_invert { br = p->brush(); br.setStyle(Qt::SolidPattern); br.setColor(Qt::green); p->setBrush(br); p->setPen(Qt::green); p->drawRect(pf.x(),pf.y()-18, 16,18); p->setPen(Qt::black); f.setPixelSize(20); p->setFont(f); p->drawText(pf, "Y"); } if (tar->CU[i+1]==22) //drawZ_invert { br = p->brush(); br.setStyle(Qt::SolidPattern); br.setColor(Qt::red); p->setBrush(br); p->setPen(Qt::red); p->drawRect(pf.x(),pf.y()-18, 16,18); p->setPen(Qt::black); f.setPixelSize(20); p->setFont(f); p->drawText(pf, "Z"); } } }