#ifndef AUTOCOOKWINDOW_H #define AUTOCOOKWINDOW_H #include #include #include #include #include "oven.h" #include "cook.h" namespace Ui { class AutoCookWindow; } class AutoCookWindow : public QMainWindow { Q_OBJECT signals: void startCookStartTimer(); void stopCookStartTimer(); public: explicit AutoCookWindow(QWidget *parent = 0, Oven *oven = 0, AbstractCook *cook = 0); ~AutoCookWindow(); private: Ui::AutoCookWindow *ui; QTimer checkCookTimer; Oven *oven; AbstractCook *cook; bool started; bool done; bool opened; bool interTempEnabled; QPixmap bulletPixmap; QPixmap selectedBulletPixmap; QList bullets; int selectedStepIndex; QTimer returnToCurrentStepTimer; QPixmap steamModeIcon; QPixmap dryModeIcon; QPixmap combiModeIcon; bool showingCurrentHumidity; bool showingCurrentTemp; QTimer showCurrentHumidityTimer; QTimer showCurrentTempTimer; int lastHumidity; int lastTemp; Cook::StepType lastDoorView; void setupUi(); void viewStep(Cook::Step step); void viewPreheatStep(Cook::Step step); void viewDoorStep(Cook::Step step); void viewCookStep(Cook::Step step); void doPreheatStep(Cook::Step step); void doDoorStep(Cook::Step step); void doCookStep(Cook::Step step); void checkPreheatStep(Cook::Step step); void checkDoorStep(Cook::Step step); void checkCookStep(Cook::Step step); private slots: void updateView(); void start(); void stop(); void doStep(); void checkCook(); void onOvenUpdated(); void on_showPrevStepButton_clicked(); void on_showNextStepButton_clicked(); void returnToCurrentStep(); void onConfigChanged(); void on_backButton_clicked(); void on_configButton_4_clicked(); void on_humidityGaugeButton_pressed(); void on_humidityGaugeButton_released(); void on_heatGaugeButton_pressed(); void on_heatGaugeButton_released(); void showCurrentHumidity(); void showCurrentTemp(); }; #endif // AUTOCOOKWINDOW_H