summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
-rw-r--r--qt-ui/profile/animationfunctions.cpp12
-rw-r--r--qt-ui/profile/animationfunctions.h1
-rw-r--r--qt-ui/profile/divepixmapitem.cpp4
3 files changed, 16 insertions, 1 deletions
diff --git a/qt-ui/profile/animationfunctions.cpp b/qt-ui/profile/animationfunctions.cpp
index dc46d7f82..fb1c85f8d 100644
--- a/qt-ui/profile/animationfunctions.cpp
+++ b/qt-ui/profile/animationfunctions.cpp
@@ -18,6 +18,18 @@ namespace Animations {
}
}
+ void show(QObject *obj)
+ {
+ if (prefs.animation_speed != 0) {
+ QPropertyAnimation *animation = new QPropertyAnimation(obj, "opacity");
+ animation->setStartValue(0);
+ animation->setEndValue(1);
+ animation->start(QAbstractAnimation::DeleteWhenStopped);
+ } else {
+ obj->setProperty("opacity", 1);
+ }
+ }
+
void animDelete(QObject *obj)
{
if (prefs.animation_speed != 0) {
diff --git a/qt-ui/profile/animationfunctions.h b/qt-ui/profile/animationfunctions.h
index d8e44be0c..3cfcff563 100644
--- a/qt-ui/profile/animationfunctions.h
+++ b/qt-ui/profile/animationfunctions.h
@@ -8,6 +8,7 @@ class QObject;
namespace Animations {
void hide(QObject *obj);
+ void show(QObject *obj);
void moveTo(QObject *obj, qreal x, qreal y);
void moveTo(QObject *obj, const QPointF &pos);
void animDelete(QObject *obj);
diff --git a/qt-ui/profile/divepixmapitem.cpp b/qt-ui/profile/divepixmapitem.cpp
index 41541c21e..853b95029 100644
--- a/qt-ui/profile/divepixmapitem.cpp
+++ b/qt-ui/profile/divepixmapitem.cpp
@@ -94,7 +94,9 @@ void DivePictureItem::hoverEnterEvent(QGraphicsSceneHoverEvent *event)
scene()->addItem(button);
}
button->setPos(mapToScene(0,0));
+ button->setOpacity(0);
button->show();
+ Animations::show(button);
button->disconnect();
connect(button, SIGNAL(clicked()), this, SLOT(removePicture()));
}
@@ -119,7 +121,7 @@ void DivePictureItem::mousePressEvent(QGraphicsSceneMouseEvent *event)
void DivePictureItem::removePicture()
{
- button->hide();
+ Animations::hide(button);
hide();
DivePictureModel::instance()->removePicture(fileUrl);
}