aboutsummaryrefslogtreecommitdiffstats
path: root/src/plugins/qmldesigner/components/timelineeditor
diff options
context:
space:
mode:
authorTim Jenssen <tim.jenssen@qt.io>2020-04-28 16:18:24 +0200
committerTim Jenssen <tim.jenssen@qt.io>2020-04-28 16:18:24 +0200
commit53d161c98e221ce006a5e5326389f4291ea26484 (patch)
tree46999b5f566221aa134ed8f9b31e542f9b3cff03 /src/plugins/qmldesigner/components/timelineeditor
parent96934b9eebb4f9ec818c1f54a86e26b8809e05f1 (diff)
parentc10914204a1da9569d3419dbc4a4f79ba1d32b03 (diff)
Merge remote-tracking branch 'origin/qds-1.59'
Diffstat (limited to 'src/plugins/qmldesigner/components/timelineeditor')
-rw-r--r--src/plugins/qmldesigner/components/timelineeditor/timelinewidget.cpp48
-rw-r--r--src/plugins/qmldesigner/components/timelineeditor/timelinewidget.h2
2 files changed, 50 insertions, 0 deletions
diff --git a/src/plugins/qmldesigner/components/timelineeditor/timelinewidget.cpp b/src/plugins/qmldesigner/components/timelineeditor/timelinewidget.cpp
index 098fe766a0..d399eb1952 100644
--- a/src/plugins/qmldesigner/components/timelineeditor/timelinewidget.cpp
+++ b/src/plugins/qmldesigner/components/timelineeditor/timelinewidget.cpp
@@ -58,6 +58,7 @@
#include <QSlider>
#include <QVBoxLayout>
#include <QtGlobal>
+#include <QSpacerItem>
namespace QmlDesigner {
@@ -118,6 +119,7 @@ TimelineWidget::TimelineWidget(TimelineView *view)
, m_timelineView(view)
, m_graphicsScene(new TimelineGraphicsScene(this))
, m_addButton(new QPushButton(this))
+ , m_onboardingContainer(new QWidget(this))
{
setWindowTitle(tr("Timeline", "Title of timeline view"));
setSizePolicy(QSizePolicy::Expanding, QSizePolicy::Expanding);
@@ -185,6 +187,50 @@ TimelineWidget::TimelineWidget(TimelineView *view)
m_addButton->setFlat(true);
m_addButton->setFixedSize(32, 32);
+
+ widgetLayout->addWidget(m_onboardingContainer);
+
+ auto *onboardingTopLabel = new QLabel(m_onboardingContainer);
+ auto *onboardingBottomLabel = new QLabel(m_onboardingContainer);
+ auto *onboardingBottomIcon = new QLabel(m_onboardingContainer);
+
+ auto *onboardingLayout = new QVBoxLayout;
+ auto *onboardingSublayout = new QHBoxLayout;
+ auto *leftSpacer = new QSpacerItem(40, 20, QSizePolicy::Expanding, QSizePolicy::Minimum);
+ auto *rightSpacer = new QSpacerItem(40, 20, QSizePolicy::Expanding, QSizePolicy::Minimum);
+ auto *topSpacer = new QSpacerItem(40, 20, QSizePolicy::Minimum, QSizePolicy::Expanding);
+ auto *bottomSpacer = new QSpacerItem(40, 20, QSizePolicy::Minimum, QSizePolicy::Expanding);
+
+ QString labelText =
+ tr("This file does not contain a timeline. <br><br> \
+ To create an animation, add a timeline by clicking the + button.");
+ onboardingTopLabel->setText(labelText);
+ onboardingTopLabel->setAlignment(Qt::AlignHCenter | Qt::AlignVCenter);
+
+ m_onboardingContainer->setLayout(onboardingLayout);
+ onboardingLayout->setContentsMargins(0, 0, 0, 0);
+ onboardingLayout->setSpacing(0);
+ onboardingLayout->addSpacerItem(topSpacer);
+ onboardingLayout->addWidget(onboardingTopLabel);
+ onboardingLayout->addLayout(onboardingSublayout);
+
+ onboardingSublayout->setContentsMargins(0, 0, 0, 0);
+ onboardingSublayout->setSpacing(0);
+ onboardingSublayout->addSpacerItem(leftSpacer);
+
+ onboardingBottomLabel->setAlignment(Qt::AlignRight | Qt::AlignTop);
+ onboardingBottomLabel->setSizePolicy(QSizePolicy::Fixed, QSizePolicy::Fixed);
+ onboardingSublayout->addWidget(onboardingBottomLabel);
+ onboardingBottomLabel->setText(tr("To edit the timeline settings, click "));
+
+ onboardingBottomIcon->setAlignment(Qt::AlignLeft | Qt::AlignTop);
+ onboardingBottomIcon->setSizePolicy(QSizePolicy::Fixed, QSizePolicy::Fixed);
+ onboardingSublayout->addWidget(onboardingBottomIcon);
+ onboardingBottomIcon->setPixmap(TimelineIcons::ANIMATION.pixmap());
+
+ onboardingSublayout->addSpacerItem(rightSpacer);
+ onboardingLayout->addSpacerItem(bottomSpacer);
+
widgetLayout->addLayout(contentLayout);
this->setLayout(widgetLayout);
@@ -532,6 +578,7 @@ void TimelineWidget::setTimelineActive(bool b)
m_rulerView->setVisible(true);
m_scrollbar->setVisible(true);
m_addButton->setVisible(false);
+ m_onboardingContainer->setVisible(false);
m_graphicsView->update();
m_rulerView->update();
} else {
@@ -540,6 +587,7 @@ void TimelineWidget::setTimelineActive(bool b)
m_rulerView->setVisible(false);
m_scrollbar->setVisible(false);
m_addButton->setVisible(true);
+ m_onboardingContainer->setVisible(true);
}
}
diff --git a/src/plugins/qmldesigner/components/timelineeditor/timelinewidget.h b/src/plugins/qmldesigner/components/timelineeditor/timelinewidget.h
index 681181dbe9..4d0e4711cb 100644
--- a/src/plugins/qmldesigner/components/timelineeditor/timelinewidget.h
+++ b/src/plugins/qmldesigner/components/timelineeditor/timelinewidget.h
@@ -104,6 +104,8 @@ private:
TimelineGraphicsScene *m_graphicsScene;
QPushButton *m_addButton = nullptr;
+
+ QWidget *m_onboardingContainer = nullptr;
};
} // namespace QmlDesigner