-
Created by Unknown User (jarisav), last modified on 9.1.2011
You are viewing an old version of this page. View the current version.
Compare with Current
View Page History
« Previous
Version 2
Next »
#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);
}
#ifndef DIALOGI_H
#define DIALOGI_H
#include <QDialog>
#include "saie.h"
namespace Ui {
class Dialogi;
}
class Dialogi : public QDialog {
Q_OBJECT
public:
Dialogi(QWidget *parent = 0);
~Dialogi();
Saie saie;
//bool started;
protected:
void changeEvent(QEvent *e);
private:
Ui::Dialogi *ui;
private slots:
void on_StopSaie_clicked();
void on_StartSaie_clicked();
void on_pushButton_clicked();
void VastaanotaArvoSaikeelta(int);
signals:
void AsetaTestiarvo(int);
};
#endif // DIALOGI_H
You must log in to comment.