Browse Source

MaskablePixmapWidget: set cursor to PointingHandCursor if clickable

pull/321/head
krepa098 11 years ago
parent
commit
18330f0928
  1. 14
      widget/maskablepixmapwidget.cpp
  2. 2
      widget/maskablepixmapwidget.h

14
widget/maskablepixmapwidget.cpp

@ -20,11 +20,22 @@ @@ -20,11 +20,22 @@
MaskablePixmapWidget::MaskablePixmapWidget(QWidget *parent, QSize size, QString maskName, QColor background)
: QWidget(parent)
, backgroundColor(background)
, clickable(false)
{
setFixedSize(size);
mask = QPixmap(maskName).scaled(size, Qt::IgnoreAspectRatio, Qt::SmoothTransformation);
}
void MaskablePixmapWidget::setClickable(bool clickable)
{
this->clickable = clickable;
if (clickable)
setCursor(Qt::PointingHandCursor);
else
unsetCursor();
}
void MaskablePixmapWidget::setPixmap(const QPixmap &pmap)
{
pixmap = pmap.scaled(width(), height(), Qt::KeepAspectRatio, Qt::SmoothTransformation);
@ -56,5 +67,6 @@ void MaskablePixmapWidget::paintEvent(QPaintEvent *) @@ -56,5 +67,6 @@ void MaskablePixmapWidget::paintEvent(QPaintEvent *)
void MaskablePixmapWidget::mousePressEvent(QMouseEvent*)
{
emit clicked();
if(clickable)
emit clicked();
}

2
widget/maskablepixmapwidget.h

@ -25,6 +25,7 @@ class MaskablePixmapWidget : public QWidget @@ -25,6 +25,7 @@ class MaskablePixmapWidget : public QWidget
public:
MaskablePixmapWidget(QWidget *parent, QSize size, QString maskName, QColor background = Qt::white);
void setClickable(bool clickable);
void setPixmap(const QPixmap &pmap);
QPixmap getPixmap() const;
@ -41,6 +42,7 @@ private: @@ -41,6 +42,7 @@ private:
QSize size;
QString maskName;
QColor backgroundColor;
bool clickable;
};
#endif // MASKABLEPIXMAPWIDGET_H

Loading…
Cancel
Save