#ifndef HelpWidget_H
#define HelpWidget_H

#include <QWidget>
#include <QTimer>
#include <QSettings>
#include <QPropertyAnimation>
#include <QPushButton>

namespace Ui {
class HelpWidget;
}

class PatchList;

class HelpWidget : public QWidget
{
    Q_OBJECT

public:
    explicit HelpWidget(PatchList *legacy_patches, QWidget *parent = 0);

    ~HelpWidget();

public slots:
    void updateFontsSizes();

protected:
    void resizeEvent(QResizeEvent *event) override;


private slots:
    void handleContentScrolling(int value);

    void moveMenuHoverWidget(QPushButton* target);

    void scrollContentToWidget(QWidget* widget);

    void on_menuentry_1_clicked();

    void on_menuentry_2_clicked();

    void on_menuentry_3_clicked();

    void on_menuentry_4_clicked();

    void on_menuentry_5_clicked();

private:
    Ui::HelpWidget *ui;

    PatchList *legacy_patches_;

    QPushButton* currently_active_entry = nullptr;
    QPropertyAnimation* menuHoverWidgetAnimation = nullptr;
    QPropertyAnimation* scrollAreaContentsAnimation = nullptr;

};

#endif // HelpWidget_H
