mirror of
https://github.com/subsurface/subsurface.git
synced 2024-12-01 06:30:26 +00:00
75aafdc715
This patch hides a picture from the dive, it should actually remove it, but because I didn't found a quick way to remove a picture from the dive yet, it just hides it. To remove a picture from the dive, the DivePictureItem has to remember the QUrl of the original file, to remove that from the model, and currently it only has the QPixmap. this can be for 4.2.1 or we can postpone 4.2 a tiny bit since this is a important feature. Signed-off-by: Tomaz Canabrava <tomaz.canabrava@intel.com> Signed-off-by: Dirk Hohndel <dirk@hohndel.org>
53 lines
1.2 KiB
C++
53 lines
1.2 KiB
C++
#ifndef DIVEPIXMAPITEM_H
|
|
#define DIVEPIXMAPITEM_H
|
|
|
|
#include <QObject>
|
|
#include <QGraphicsPixmapItem>
|
|
|
|
class DivePixmapItem : public QObject, public QGraphicsPixmapItem {
|
|
Q_OBJECT
|
|
Q_PROPERTY(qreal opacity WRITE setOpacity READ opacity)
|
|
Q_PROPERTY(QPointF pos WRITE setPos READ pos)
|
|
Q_PROPERTY(qreal x WRITE setX READ x)
|
|
Q_PROPERTY(qreal y WRITE setY READ y)
|
|
public:
|
|
DivePixmapItem(QObject *parent = 0);
|
|
};
|
|
|
|
class DivePictureItem : public DivePixmapItem {
|
|
Q_OBJECT
|
|
Q_PROPERTY(qreal scale WRITE setScale READ scale)
|
|
public:
|
|
DivePictureItem(int row, QObject *parent = 0);
|
|
void setPixmap(const QPixmap& pix);
|
|
public slots:
|
|
void settingsChanged();
|
|
void removePicture();
|
|
protected:
|
|
void hoverEnterEvent(QGraphicsSceneHoverEvent *event);
|
|
void hoverLeaveEvent(QGraphicsSceneHoverEvent *event);
|
|
void mousePressEvent(QGraphicsSceneMouseEvent *event);
|
|
private:
|
|
int rowOnModel;
|
|
};
|
|
|
|
class DiveButtonItem : public DivePixmapItem {
|
|
Q_OBJECT
|
|
public:
|
|
DiveButtonItem(QObject *parent = 0);
|
|
protected:
|
|
virtual void mousePressEvent(QGraphicsSceneMouseEvent *event);
|
|
signals:
|
|
void clicked();
|
|
};
|
|
|
|
class CloseButtonItem : public DiveButtonItem {
|
|
Q_OBJECT
|
|
public:
|
|
CloseButtonItem(QObject *parent = 0);
|
|
public slots:
|
|
void hide();
|
|
void show();
|
|
};
|
|
|
|
#endif // DIVEPIXMAPITEM_H
|