#ifndef DISPLAYWIDGET_H
#define DISPLAYWIDGET_H

#include <QWidget>

#include <QTimer>
#include <QPropertyAnimation>

#include "MainWindow.h"

namespace Ui {
class DisplayWidget;
}

class DisplayWidget : public QWidget
{
    Q_OBJECT

public:
    explicit DisplayWidget(const Widget& widget, QWidget *parent = nullptr);
    ~DisplayWidget();

    void SizeChange();
    void SetPaper(const QString& path, const QString& url, const QString& tag);

Q_SIGNALS:
    void ScreenGeometryChanged();
protected:
    void paintEvent(QPaintEvent*) override;
    void resizeEvent(QResizeEvent* event) override;

    void OnGeometryChanged(const QRect& geometry);

private:
    Ui::DisplayWidget *ui;
    const Widget& m_widget;
    QImage m_bg;
    class PaperWidget* m_paperWidget;
    QPropertyAnimation* m_animation;
};

#endif // DISPLAYWIDGET_H