Browse Source

MaskablePixmapWidget: background-color argument

pull/321/head
krepa098 11 years ago
parent
commit
5411db5bec
  1. 5
      widget/maskablepixmapwidget.cpp
  2. 3
      widget/maskablepixmapwidget.h

5
widget/maskablepixmapwidget.cpp

@ -17,8 +17,9 @@
#include "maskablepixmapwidget.h" #include "maskablepixmapwidget.h"
#include <QPainter> #include <QPainter>
MaskablePixmapWidget::MaskablePixmapWidget(QWidget *parent, QSize size, QString maskName) MaskablePixmapWidget::MaskablePixmapWidget(QWidget *parent, QSize size, QString maskName, QColor background)
: QWidget(parent) : QWidget(parent)
, backgroundColor(background)
{ {
setFixedSize(size); setFixedSize(size);
mask = QPixmap(maskName).scaled(size, Qt::IgnoreAspectRatio, Qt::SmoothTransformation); mask = QPixmap(maskName).scaled(size, Qt::IgnoreAspectRatio, Qt::SmoothTransformation);
@ -43,7 +44,7 @@ void MaskablePixmapWidget::paintEvent(QPaintEvent *)
QPainter painter(&tmp); QPainter painter(&tmp);
painter.setCompositionMode(QPainter::CompositionMode_SourceOver); painter.setCompositionMode(QPainter::CompositionMode_SourceOver);
painter.fillRect(0,0,width(),height(),Qt::white); painter.fillRect(0,0,width(),height(),backgroundColor);
painter.drawPixmap(offset,pixmap); painter.drawPixmap(offset,pixmap);
painter.setCompositionMode(QPainter::CompositionMode_DestinationIn); painter.setCompositionMode(QPainter::CompositionMode_DestinationIn);
painter.drawPixmap(0,0,mask); painter.drawPixmap(0,0,mask);

3
widget/maskablepixmapwidget.h

@ -23,7 +23,7 @@ class MaskablePixmapWidget : public QWidget
{ {
Q_OBJECT Q_OBJECT
public: public:
MaskablePixmapWidget(QWidget *parent, QSize size, QString maskName); MaskablePixmapWidget(QWidget *parent, QSize size, QString maskName, QColor background = Qt::white);
void setPixmap(const QPixmap &pmap); void setPixmap(const QPixmap &pmap);
QPixmap getPixmap() const; QPixmap getPixmap() const;
@ -40,6 +40,7 @@ private:
QPixmap mask; QPixmap mask;
QSize size; QSize size;
QString maskName; QString maskName;
QColor backgroundColor;
}; };
#endif // MASKABLEPIXMAPWIDGET_H #endif // MASKABLEPIXMAPWIDGET_H

Loading…
Cancel
Save