#include "dialogi.h"
#include "ui_dialogi.h"
#include <QMessageBox>
Dialogi::Dialogi(QWidget *parent) :
QDialog(parent),
ui(new Ui::Dialogi)
{
ui->setupUi(this);
//yhdistetaan signaalit ja slotit
connect(this,SIGNAL(AsetaTestiarvo(int)),&saie,SLOT(AsetaTestiarvo(int)));
connect(&saie,SIGNAL(PaivitaUi(int)),this,SLOT(VastaanotaArvoSaikeelta(int)));
}
Dialogi::~Dialogi()
{
//sammutetaan säie, jottei tule segmentation faultia
if(saie.isRunning())//onko asynkrooninen säie käynnissä
{
saie.pysayta();//pysäytetään säie
}
delete ui;
}
void Dialogi::changeEvent(QEvent *e)
{
QDialog::changeEvent(e);
switch (e->type()) {
case QEvent::LanguageChange:
ui->retranslateUi(this);
break;
default:
break;
}
}
//haetaan arvo ruudulta
void Dialogi::on_pushButton_clicked()
{
QString apu=ui->lineEdit_2->text();
int apu2=apu.toInt();
emit AsetaTestiarvo(apu2);
}
void Dialogi::on_StartSaie_clicked()
{
QMessageBox msgBox;
if(saie.isRunning())//onko asynkrooninen säie käynnissä
{
msgBox.setText("Säie on jo käynnissä");
msgBox.exec();
}
else
{
saie.start();//käynnistetään säie
}
}
void Dialogi::on_StopSaie_clicked()
{
if(saie.isRunning())//onko asynkrooninen säie käynnissä
{
saie.pysayta();//pysäytetään säie
}
}
void Dialogi::VastaanotaArvoSaikeelta(int arvo)
{
QString apu;
apu.setNum(arvo);
ui->lineEdit->setText(apu);
}
|