2019-01-28 21:59:28 +01:00
# include "mainwindow.h"
# include "ui_mainwindow.h"
2019-02-09 15:11:46 +01:00
2019-01-28 21:59:28 +01:00
MainWindow : : MainWindow ( QWidget * parent ) :
QMainWindow ( parent ) ,
ui ( new Ui : : MainWindow )
{
ui - > setupUi ( this ) ;
2019-02-01 21:10:32 +01:00
setFixedSize ( 400 , 360 ) ;
2019-02-09 11:53:27 +01:00
lmux = new LightMux ( ) ;
ui - > lcdBrightness - > setDigitCount ( 3 ) ;
ui - > lcdTemperature - > setDigitCount ( 4 ) ;
2019-02-09 15:11:46 +01:00
ui - > lineBrightness - > setValidator ( new QIntValidator ( 0 , 100 , this ) ) ;
ui - > lineTemperature - > setValidator ( new QIntValidator ( lmux - > getWarmest_temperature ( ) , lmux - > getColdest_temperature ( ) , this ) ) ;
2019-02-09 11:53:27 +01:00
2019-02-09 21:21:26 +01:00
lmux - > mux ( ) ;
2019-02-09 11:53:27 +01:00
updateUI ( ) ;
2019-01-28 21:59:28 +01:00
}
MainWindow : : ~ MainWindow ( )
{
delete ui ;
}
2019-02-01 21:10:32 +01:00
2019-02-09 21:21:26 +01:00
void MainWindow : : updateUI ( )
{
2019-02-09 15:11:46 +01:00
ui - > lcdBrightness - > display ( lmux - > getBrightness ( ) ) ;
ui - > lcdTemperature - > display ( lmux - > getTemperature ( ) ) ;
ui - > lineTemperature - > clear ( ) ;
ui - > lineBrightness - > clear ( ) ;
2019-02-09 11:53:27 +01:00
2019-02-09 21:21:26 +01:00
setLablePowerCold ( lmux - > getPowerCold ( ) ) ;
setLablePowerWarm ( lmux - > getPowerWarm ( ) ) ;
2019-02-09 23:06:14 +01:00
setLablePowerCombined ( lmux - > getPowerCombined ( ) ) ;
2019-02-09 21:21:26 +01:00
}
2019-02-09 11:53:27 +01:00
2019-02-01 21:10:32 +01:00
2019-02-09 21:21:26 +01:00
void MainWindow : : setLablePowerCold ( int val )
{
2019-02-09 23:06:14 +01:00
ui - > labelPowerCold - > setText ( " Output Power Cold: " + QString : : number ( val ) + " % " ) ;
2019-02-09 21:21:26 +01:00
}
2019-02-09 15:11:46 +01:00
2019-02-09 21:21:26 +01:00
void MainWindow : : setLablePowerWarm ( int val )
{
2019-02-09 23:06:14 +01:00
ui - > labelPowerWarm - > setText ( " Output Power Warm: " + QString : : number ( val ) + " % " ) ;
}
void MainWindow : : setLablePowerCombined ( int val )
{
ui - > labelPowerCombined - > setText ( " Combined Power: " + QString : : number ( val ) + " % " ) ;
2019-02-01 21:10:32 +01:00
}
void MainWindow : : on_BtnIncreaseBrightness_clicked ( )
{
2019-02-09 15:11:46 +01:00
lmux - > incBrightness ( ) ;
2019-02-09 21:21:26 +01:00
lmux - > mux ( ) ;
2019-02-09 15:11:46 +01:00
updateUI ( ) ;
2019-02-01 21:10:32 +01:00
}
void MainWindow : : on_BtnDecreaseBrightness_clicked ( )
{
2019-02-09 15:11:46 +01:00
lmux - > decBrightness ( ) ;
2019-02-09 21:21:26 +01:00
lmux - > mux ( ) ;
2019-02-09 15:11:46 +01:00
updateUI ( ) ;
2019-02-01 21:10:32 +01:00
}
void MainWindow : : on_BtnIncreaseTemperatur_clicked ( )
{
2019-02-09 15:11:46 +01:00
lmux - > cold_Temperature ( ) ;
2019-02-09 21:21:26 +01:00
lmux - > mux ( ) ;
2019-02-09 15:11:46 +01:00
updateUI ( ) ;
2019-02-01 21:10:32 +01:00
}
void MainWindow : : on_BtnDecreaseTemperatur_clicked ( )
{
2019-02-09 15:11:46 +01:00
lmux - > warm_Temperature ( ) ;
2019-02-09 21:21:26 +01:00
lmux - > mux ( ) ;
2019-02-09 15:11:46 +01:00
updateUI ( ) ;
2019-02-01 21:10:32 +01:00
}
void MainWindow : : on_BtnSetBrightness_clicked ( )
{
2019-02-09 15:11:46 +01:00
lmux - > setBrightness ( ui - > lineBrightness - > text ( ) . toInt ( ) ) ;
2019-02-09 21:21:26 +01:00
lmux - > mux ( ) ;
2019-02-09 15:11:46 +01:00
updateUI ( ) ;
2019-02-01 21:10:32 +01:00
}
void MainWindow : : on_BtnSetTemperatur_clicked ( )
{
2019-02-09 15:11:46 +01:00
lmux - > setTemperature ( ui - > lineTemperature - > text ( ) . toInt ( ) ) ;
2019-02-09 21:21:26 +01:00
lmux - > mux ( ) ;
2019-02-09 15:11:46 +01:00
updateUI ( ) ;
}
void MainWindow : : on_lineBrightness_returnPressed ( )
{
on_BtnSetBrightness_clicked ( ) ;
}
2019-02-01 21:10:32 +01:00
2019-02-09 15:11:46 +01:00
void MainWindow : : on_lineTemperature_returnPressed ( )
{
on_BtnSetTemperatur_clicked ( ) ;
2019-02-01 21:10:32 +01:00
}
2019-02-09 21:21:26 +01:00
2019-02-09 23:06:14 +01:00
void MainWindow : : on_checkBox_stateChanged ( )
{
lmux - > toogleAdaptiveBrightness ( ) ;
}