programmingmanualwindow.h 1.67 KB
#ifndef PROGRAMMINGMANUALWINDOW_H
#define PROGRAMMINGMANUALWINDOW_H

#include <QMainWindow>

#include "define.h"

namespace Ui {
class ProgrammingManualWindow;
}

class ProgrammingManualWindow : public QMainWindow
{
    Q_OBJECT

public:
    explicit ProgrammingManualWindow(QWidget *parent, Define::Mode mode);
    ~ProgrammingManualWindow();

    bool eventFilter(QObject *watched, QEvent *event);

protected:
    void keyPressEvent(QKeyEvent *event);
    void keyReleaseEvent(QKeyEvent *event);

private:
    Ui::ProgrammingManualWindow *ui;

    Define::Mode mode;
    int fan;
    int lastFan;

    bool lastInterTempEnabled;

    int sliderToTime(int value);
    int timeToSlider(int secs);

    QWidget *pushed = NULL;

    void onEncoderLeft();
    void onEncoderRight();
    void onEncoderClicked(QWidget *clicked);

    QTimer afterThreeSecsTimer;

private slots:
    void setDefault(Define::Mode mode);
    void setFan(int level);
    void updateView();
    void updateHumidityLabel();
    void updateTempLabel();
    void updateTimeLabel();
    void updateCoreTempButton();
    void updateCoreTempLabel();
    void updateFanButton();
    void afterThreeSecs();

    void onCoreTempEnabled(int celsius);

    void on_steamButton_clicked();
    void on_combiButton_clicked();
    void on_dryheatButton_clicked();
    void on_interTempButton_clicked();
    void on_fanButton_clicked();
    void on_backButton_clicked();
    void on_configButton_clicked();
    void on_helpButton_clicked();
    void on_okButton_clicked();

    void on_humidityButton_clicked();

    void on_tempButton_clicked();

    void on_timeButton_clicked();

signals:
    void added();
};

#endif // PROGRAMMINGMANUALWINDOW_H