#include "mapitemimage.h" MapItemImage::MapItemImage(const QPixmap & p) { setPixmap(p); } void MapItemImage::setPixmap(const QPixmap & p) { m_pixmap = p; updateParent(); } void MapItemImage::setAlignment(Qt::Alignment a) { m_alignment = a; updateParent(); } void MapItemImage::draw(QPainter * p) { if (m_pixmap.isNull()) return; QRectF pr(QPointF(0, 0), QSizeF(m_pixmap.size())); if (m_alignment.testFlag(Qt::AlignHCenter)) { pr.translate(-pr.center().x(), 0.); } if (m_alignment.testFlag(Qt::AlignRight)) { pr.translate(-pr.width(), 0.); } if (m_alignment.testFlag(Qt::AlignVCenter)) { pr.translate(0., -pr.center().y()); } if (m_alignment.testFlag(Qt::AlignBottom)) { pr.translate(0., -pr.height()); } p->drawPixmap(pr, m_pixmap, m_pixmap.rect()); setBoundingRect(pr); }