added animation to NotebookPageDropPreview
This commit is contained in:
+4
-2
@@ -175,8 +175,10 @@ NotebookPage::setPreviewRect(QPoint mousePos)
|
|||||||
{
|
{
|
||||||
for (DropRegion region : m_dropRegions) {
|
for (DropRegion region : m_dropRegions) {
|
||||||
if (region.rect.contains(mousePos)) {
|
if (region.rect.contains(mousePos)) {
|
||||||
m_preview.move(region.rect.x(), region.rect.y());
|
m_preview.setBounds(region.rect);
|
||||||
m_preview.resize(region.rect.width(), region.rect.height());
|
// m_preview.move(region.rect.x(), region.rect.y());
|
||||||
|
// m_preview.resize(region.rect.width(),
|
||||||
|
// region.rect.height());
|
||||||
m_preview.show();
|
m_preview.show();
|
||||||
m_preview.raise();
|
m_preview.raise();
|
||||||
|
|
||||||
|
|||||||
@@ -4,6 +4,8 @@
|
|||||||
|
|
||||||
NotebookPageDropPreview::NotebookPageDropPreview(QWidget *parent)
|
NotebookPageDropPreview::NotebookPageDropPreview(QWidget *parent)
|
||||||
: QWidget(parent)
|
: QWidget(parent)
|
||||||
|
, m_positionAnimation(this, "geometry")
|
||||||
|
, m_desiredGeometry()
|
||||||
{
|
{
|
||||||
setHidden(true);
|
setHidden(true);
|
||||||
}
|
}
|
||||||
@@ -16,3 +18,19 @@ NotebookPageDropPreview::paintEvent(QPaintEvent *)
|
|||||||
painter.fillRect(8, 8, width() - 17, height() - 17,
|
painter.fillRect(8, 8, width() - 17, height() - 17,
|
||||||
ColorScheme::instance().DropPreviewBackground);
|
ColorScheme::instance().DropPreviewBackground);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
void
|
||||||
|
NotebookPageDropPreview::setBounds(const QRect &rect)
|
||||||
|
{
|
||||||
|
if (rect == m_desiredGeometry) {
|
||||||
|
return;
|
||||||
|
}
|
||||||
|
|
||||||
|
m_positionAnimation.stop();
|
||||||
|
m_positionAnimation.setDuration(50);
|
||||||
|
m_positionAnimation.setStartValue(geometry());
|
||||||
|
m_positionAnimation.setEndValue(rect);
|
||||||
|
m_positionAnimation.start();
|
||||||
|
|
||||||
|
m_desiredGeometry = rect;
|
||||||
|
}
|
||||||
|
|||||||
@@ -1,6 +1,7 @@
|
|||||||
#ifndef NOTEBOOKPAGEDROPPREVIEW_H
|
#ifndef NOTEBOOKPAGEDROPPREVIEW_H
|
||||||
#define NOTEBOOKPAGEDROPPREVIEW_H
|
#define NOTEBOOKPAGEDROPPREVIEW_H
|
||||||
|
|
||||||
|
#include <QPropertyAnimation>
|
||||||
#include <QWidget>
|
#include <QWidget>
|
||||||
|
|
||||||
class NotebookPageDropPreview : public QWidget
|
class NotebookPageDropPreview : public QWidget
|
||||||
@@ -8,8 +9,13 @@ class NotebookPageDropPreview : public QWidget
|
|||||||
public:
|
public:
|
||||||
NotebookPageDropPreview(QWidget *parent);
|
NotebookPageDropPreview(QWidget *parent);
|
||||||
|
|
||||||
|
void setBounds(const QRect &rect);
|
||||||
|
|
||||||
protected:
|
protected:
|
||||||
void paintEvent(QPaintEvent *);
|
void paintEvent(QPaintEvent *);
|
||||||
|
|
||||||
|
QPropertyAnimation m_positionAnimation;
|
||||||
|
QRect m_desiredGeometry;
|
||||||
};
|
};
|
||||||
|
|
||||||
#endif // NOTEBOOKPAGEDROPPREVIEW_H
|
#endif // NOTEBOOKPAGEDROPPREVIEW_H
|
||||||
|
|||||||
Reference in New Issue
Block a user