Qt: Sync light sensor window with current state

This commit is contained in:
Jeffrey Pfau 2015-03-13 00:07:59 -07:00
parent 2c5d11539a
commit 943b805306
4 changed files with 11 additions and 3 deletions

View File

@ -489,6 +489,7 @@ void GameController::setLuminanceValue(uint8_t value) {
break;
}
}
emit luminanceValueChanged(m_luxValue);
}
void GameController::setLuminanceLevel(int level) {

View File

@ -79,6 +79,8 @@ signals:
void gameFailed();
void stateLoaded(GBAThread*);
void luminanceValueChanged(int);
void postLog(int level, const QString& log);
public slots:
@ -109,6 +111,7 @@ public slots:
void reloadAudioDriver();
void setLuminanceValue(uint8_t value);
uint8_t luminanceValue() const { return m_luxValue; }
void setLuminanceLevel(int level);
void increaseLuminanceLevel() { setLuminanceLevel(m_luxLevel + 1); }
void decreaseLuminanceLevel() { setLuminanceLevel(m_luxLevel - 1); }

View File

@ -31,12 +31,17 @@ SensorView::SensorView(GameController* controller, QWidget* parent)
connect(m_ui.timeNow, &QPushButton::clicked, [controller, this] () {
m_ui.time->setDateTime(QDateTime::currentDateTime());
});
connect(m_controller, SIGNAL(luminanceValueChanged(int)), this, SLOT(luminanceValueChanged(int)));
}
void SensorView::setLuminanceValue(int value) {
bool oldState;
value = std::max(0, std::min(value, 255));
m_controller->setLuminanceValue(value);
}
void SensorView::luminanceValueChanged(int value) {
bool oldState;
oldState = m_ui.lightSpin->blockSignals(true);
m_ui.lightSpin->setValue(value);
m_ui.lightSpin->blockSignals(oldState);
@ -44,6 +49,4 @@ void SensorView::setLuminanceValue(int value) {
oldState = m_ui.lightSlide->blockSignals(true);
m_ui.lightSlide->setValue(value);
m_ui.lightSlide->blockSignals(oldState);
m_controller->setLuminanceValue(value);
}

View File

@ -23,6 +23,7 @@ public:
private slots:
void setLuminanceValue(int);
void luminanceValueChanged(int);
private:
Ui::SensorView m_ui;