diff --git a/app/gui/oven_control/autocookconfigwindow.cpp b/app/gui/oven_control/autocookconfigwindow.cpp index 6f6e66f..feca51e 100644 --- a/app/gui/oven_control/autocookconfigwindow.cpp +++ b/app/gui/oven_control/autocookconfigwindow.cpp @@ -3,10 +3,9 @@ #include "autocookwindow.h" -AutoCookConfigWindow::AutoCookConfigWindow(QWidget *parent, Oven *oven, Cook cook) : +AutoCookConfigWindow::AutoCookConfigWindow(QWidget *parent, Cook cook) : QMainWindow(parent), ui(new Ui::AutoCookConfigWindow), - oven(oven), cook(cook) { ui->setupUi(this); diff --git a/app/gui/oven_control/autocookconfigwindow.h b/app/gui/oven_control/autocookconfigwindow.h index b7eba44..42f4d19 100644 --- a/app/gui/oven_control/autocookconfigwindow.h +++ b/app/gui/oven_control/autocookconfigwindow.h @@ -20,8 +20,7 @@ class AutoCookConfigWindow : public QMainWindow Q_OBJECT public: - explicit AutoCookConfigWindow(QWidget *parent = 0, Oven *oven = 0, - Cook cook = Cook(Define::Poultry, "/prime/cookbook/poultry/chicken", "Chicken")); + explicit AutoCookConfigWindow(QWidget *parent, Cook cook); ~AutoCookConfigWindow(); private: diff --git a/app/gui/oven_control/autocookselectionwindow.cpp b/app/gui/oven_control/autocookselectionwindow.cpp index 89e0dd0..7edf901 100644 --- a/app/gui/oven_control/autocookselectionwindow.cpp +++ b/app/gui/oven_control/autocookselectionwindow.cpp @@ -7,10 +7,10 @@ #include "autocookconfigwindow.h" //#include "autocookwindow.h" -AutoCookSelectionWindow::AutoCookSelectionWindow(QWidget *parent, Oven *oven, Define::CookType type) : +AutoCookSelectionWindow::AutoCookSelectionWindow(QWidget *parent, Define::CookType type) : QMainWindow(parent), ui(new Ui::AutoCookSelectionWindow), - oven(oven), type(type), autoCookWindowOpened(false) + type(type), autoCookWindowOpened(false) { ui->setupUi(this); @@ -67,7 +67,7 @@ void AutoCookSelectionWindow::onCookSelected(int idx) close(); - AutoCookConfigWindow *w = new AutoCookConfigWindow(parentWidget(), oven, book.get(idx)); + AutoCookConfigWindow *w = new AutoCookConfigWindow(parentWidget(), book.get(idx)); w->setWindowModality(Qt::WindowModal); w->showFullScreen(); w->raise(); diff --git a/app/gui/oven_control/autocookselectionwindow.h b/app/gui/oven_control/autocookselectionwindow.h index 3addaac..db99bb5 100644 --- a/app/gui/oven_control/autocookselectionwindow.h +++ b/app/gui/oven_control/autocookselectionwindow.h @@ -15,7 +15,7 @@ class AutoCookSelectionWindow : public QMainWindow Q_OBJECT public: - explicit AutoCookSelectionWindow(QWidget *parent = 0, Oven *oven = 0, Define::CookType type = Define::Poultry); + explicit AutoCookSelectionWindow(QWidget *parent, Define::CookType type); ~AutoCookSelectionWindow(); private slots: @@ -25,7 +25,6 @@ private slots: private: Ui::AutoCookSelectionWindow *ui; - Oven *oven; Define::CookType type; CookBook book; diff --git a/app/gui/oven_control/mainwindow.cpp b/app/gui/oven_control/mainwindow.cpp index 1383630..a5ee144 100644 --- a/app/gui/oven_control/mainwindow.cpp +++ b/app/gui/oven_control/mainwindow.cpp @@ -43,7 +43,7 @@ MainWindow::MainWindow(QWidget *parent) : connect(ui->dryheatButton, SIGNAL(clicked()), sm, SLOT(map())); connect(sm, SIGNAL(mapped(int)), this, SLOT(onModeButtonClicked(int))); - ManualCookWindow *window = new ManualCookWindow(this, oven, udp); + ManualCookWindow *window = new ManualCookWindow(this); window->setWindowModality(Qt::WindowModal); window->hide(); @@ -60,6 +60,14 @@ MainWindow::~MainWindow() delete ui; } +void MainWindow::showAutoCookSelectionWindow(Define::CookType type) +{ + AutoCookSelectionWindow *w = new AutoCookSelectionWindow(this, type); + w->setWindowModality(Qt::WindowModal); + w->showFullScreen(); + w->raise(); +} + void MainWindow::onModeButtonClicked(int mode) { oven->setDefault((Oven::Mode) mode); @@ -75,26 +83,17 @@ void MainWindow::on_configButton_clicked() void MainWindow::on_poultryButton_clicked() { - AutoCookSelectionWindow *w = new AutoCookSelectionWindow(this, oven, Define::Poultry); - w->setWindowModality(Qt::WindowModal); - w->showFullScreen(); - w->raise(); + showAutoCookSelectionWindow(Define::Poultry); } void MainWindow::on_meatButton_clicked() { - AutoCookSelectionWindow *w = new AutoCookSelectionWindow(this, oven, Define::Meat); - w->setWindowModality(Qt::WindowModal); - w->showFullScreen(); - w->raise(); + showAutoCookSelectionWindow(Define::Meat); } void MainWindow::on_breadButton_clicked() { - AutoCookSelectionWindow *w = new AutoCookSelectionWindow(this, oven, Define::Bread); - w->setWindowModality(Qt::WindowModal); - w->showFullScreen(); - w->raise(); + showAutoCookSelectionWindow(Define::Bread); } void MainWindow::on_washButton_clicked() diff --git a/app/gui/oven_control/mainwindow.h b/app/gui/oven_control/mainwindow.h index ff8968b..e4e39e7 100644 --- a/app/gui/oven_control/mainwindow.h +++ b/app/gui/oven_control/mainwindow.h @@ -7,6 +7,7 @@ #include "oven.h" #include "udphandler.h" #include "ovenstatics.h" +#include "define.h" namespace Ui { class MainWindow; @@ -26,6 +27,7 @@ signals: void modeButtonClicked(); private slots: + void showAutoCookSelectionWindow(Define::CookType type); void onModeButtonClicked(int mode); void on_configButton_clicked(); diff --git a/app/gui/oven_control/manualcookwindow.cpp b/app/gui/oven_control/manualcookwindow.cpp index df0f6e3..2dac2b5 100644 --- a/app/gui/oven_control/manualcookwindow.cpp +++ b/app/gui/oven_control/manualcookwindow.cpp @@ -8,9 +8,9 @@ #include "preheatpopup.h" #include "cooldownpopup.h" -ManualCookWindow::ManualCookWindow(QWidget *parent, Oven *oven, UdpHandler *udp) : +ManualCookWindow::ManualCookWindow(QWidget *parent) : QMainWindow(parent), - ui(new Ui::ManualCookWindow), oven(oven), udp(udp) + ui(new Ui::ManualCookWindow) { ui->setupUi(this); @@ -20,6 +20,7 @@ ManualCookWindow::ManualCookWindow(QWidget *parent, Oven *oven, UdpHandler *udp) ui->innerStack->setParent(ui->bodyStack); setAttribute(Qt::WA_DeleteOnClose); + oven = Oven::getInstance(); connect(oven, SIGNAL(changed(Oven*)), this, SLOT(onOvenUpdated(Oven*))); connect(ui->steamButton, SIGNAL(clicked()), this, SIGNAL(modeButtonClicked())); diff --git a/app/gui/oven_control/manualcookwindow.h b/app/gui/oven_control/manualcookwindow.h index 7baa785..3ec3f59 100644 --- a/app/gui/oven_control/manualcookwindow.h +++ b/app/gui/oven_control/manualcookwindow.h @@ -15,7 +15,7 @@ class ManualCookWindow : public QMainWindow Q_OBJECT public: - explicit ManualCookWindow(QWidget *parent = 0, Oven *oven = 0, UdpHandler *udp = 0); + explicit ManualCookWindow(QWidget *parent = 0); ~ManualCookWindow(); signals: @@ -57,7 +57,6 @@ private slots: private: Ui::ManualCookWindow *ui; Oven *oven; - UdpHandler *udp; QTimer *cookingStartTimer; int humidity;