replace Arecord with Qtmultimedia (requiers pulse?)

This commit is contained in:
IMback
2017-11-19 22:08:59 +01:00
parent a82a9459bc
commit 1dd7aca03b
16 changed files with 329 additions and 167 deletions

View File

@ -13,7 +13,7 @@ RelayDialog::RelayDialog(Microcontroller *micro, QWidget *parent) :
_relayCheckBoxes.push_back(ui->checkBox_R2);
_relayCheckBoxes.push_back(ui->checkBox_R3);
for(unsigned int i = 0; i < _relayCheckBoxes.size(); i++) connect(_relayCheckBoxes[i], SIGNAL(toggled(bool)), this, SLOT(relayCheckBoxToggeled(bool)));
for(unsigned int i = 0; i < _relayCheckBoxes.size(); i++) connect(_relayCheckBoxes[i], SIGNAL(stateChanged(int)), this, SLOT(relayCheckBoxToggeled(int)));
_micro->relayOn(STARTING_RELAY);
_micro->relayOn(STARTING_RELAY+1);
@ -26,18 +26,18 @@ RelayDialog::~RelayDialog()
}
void RelayDialog::relayCheckBoxToggeled(bool checked)
void RelayDialog::relayCheckBoxToggeled(int state)
{
for(unsigned int i = 0; i < _relayCheckBoxes.size(); i++)
{
if(_relayCheckBoxes[i] == sender())
{
checked ? _micro->relayOn(i+4) : _micro->relayOff(i+4);
}
}
if(_relayCheckBoxes[i] == sender())_micro->relayToggle(state, i+STARTING_RELAY);
}
void RelayDialog::relayStateChanged(std::vector<bool> relayStates)
{
if(relayStates.size() >= 8) for(unsigned int i = 0; i < _relayCheckBoxes.size(); i++) _relayCheckBoxes[i]->setChecked(relayStates[i+4]);
if(relayStates.size() >= STARTING_RELAY+4) for(unsigned int i = 0; i < _relayCheckBoxes.size(); i++)
{
_relayCheckBoxes[i]->blockSignals(true);
_relayCheckBoxes[i]->setChecked(relayStates[i+STARTING_RELAY]);
_relayCheckBoxes[i]->blockSignals(false);
}
}