mirror of
https://github.com/subsurface/subsurface.git
synced 2025-02-19 22:16:15 +00:00
Start the profile state
The setup of the item positions for the profile state should be done here. Signed-off-by: Tomaz Canabrava <tcanabrava@kde.org> Signed-off-by: Dirk Hohndel <dirk@hohndel.org>
This commit is contained in:
parent
d66e4b5236
commit
266daa326d
3 changed files with 33 additions and 4 deletions
|
@ -21,9 +21,10 @@ void animDelete(QObject* obj)
|
|||
animation->start(QAbstractAnimation::DeleteWhenStopped);
|
||||
}
|
||||
|
||||
void moveTo(QObject* obj, qreal x, qreal y)
|
||||
void moveTo(QObject* obj, qreal x, qreal y, int msecs)
|
||||
{
|
||||
QPropertyAnimation *animation = new QPropertyAnimation(obj, "pos");
|
||||
animation->setDuration(msecs);
|
||||
animation->setStartValue(obj->property("pos").toPointF());
|
||||
animation->setEndValue(QPointF(x, y));
|
||||
animation->start(QAbstractAnimation::DeleteWhenStopped);
|
||||
|
|
|
@ -6,7 +6,7 @@ class QObject;
|
|||
|
||||
namespace Animations{
|
||||
void hide(QObject *obj);
|
||||
void moveTo(QObject *obj, qreal x, qreal y);
|
||||
void moveTo(QObject *obj, qreal x, qreal y, int msecs = 500);
|
||||
void animDelete(QObject *obj);
|
||||
};
|
||||
|
||||
|
|
|
@ -217,6 +217,7 @@ void ProfileWidget2::plotDives(QList<dive*> dives)
|
|||
if (!d)
|
||||
return;
|
||||
|
||||
setProfileState();
|
||||
// Here we need to probe for the limits of the dive.
|
||||
// There's already a function that does exactly that,
|
||||
// but it's using the graphics context, and I need to
|
||||
|
@ -377,8 +378,7 @@ void ProfileWidget2::setEmptyState()
|
|||
backgroundFile = QString(":poster%1").arg( rand()%3 +1);
|
||||
currentState = EMPTY;
|
||||
fixBackgroundPos();
|
||||
background->setVisible(true);
|
||||
Animations::moveTo(background, background->x(), 0);
|
||||
Animations::moveTo(background, background->x(), itemPos.background.on.y());
|
||||
|
||||
toolTipItem->setVisible(false);
|
||||
profileYAxis->setVisible(false);
|
||||
|
@ -407,5 +407,33 @@ void ProfileWidget2::setEmptyState()
|
|||
|
||||
void ProfileWidget2::setProfileState()
|
||||
{
|
||||
// Then starting Empty State, move the background up.
|
||||
if (currentState == PROFILE)
|
||||
return;
|
||||
|
||||
currentState = PROFILE;
|
||||
Animations::moveTo(background, background->x(), itemPos.background.off.y(), 1500);
|
||||
toolTipItem->setVisible(true);
|
||||
profileYAxis->setVisible(true);
|
||||
gasYAxis->setVisible(true);
|
||||
temperatureAxis->setVisible(true);
|
||||
timeAxis->setVisible(true);
|
||||
diveProfileItem->setVisible(true);
|
||||
cylinderPressureAxis->setVisible(true);
|
||||
temperatureItem->setVisible(true);
|
||||
gasPressureItem->setVisible(true);
|
||||
cartesianPlane->setVisible(true);
|
||||
meanDepth->setVisible(true);
|
||||
diveComputerText->setVisible(true);
|
||||
diveCeiling->setVisible(true);
|
||||
reportedCeiling->setVisible(true);
|
||||
pn2GasItem->setVisible(true);
|
||||
pheGasItem->setVisible(true);
|
||||
po2GasItem->setVisible(true);
|
||||
Q_FOREACH(DiveCalculatedTissue *tissue, allTissues){
|
||||
tissue->setVisible(true);
|
||||
}
|
||||
Q_FOREACH(DiveEventItem *event, eventItems){
|
||||
event->setVisible(true);
|
||||
}
|
||||
}
|
||||
|
|
Loading…
Add table
Reference in a new issue