Added warning if baudrate set failed

This commit is contained in:
2015-03-16 21:19:33 +03:00
parent 1162748acd
commit 16de411b2d
4 changed files with 13 additions and 19 deletions
+9
View File
@@ -130,6 +130,7 @@ MainWindow::MainWindow(QWidget *parent) :
connect(senderWorker, &Sender::dataRecieved, parserWorker, &Parser::parse, Qt::QueuedConnection);
connect(senderWorker, &Sender::dataRecieved, this, &MainWindow::readSerial, Qt::QueuedConnection);
connect(senderWorker, &Sender::reportProgress, this, &MainWindow::updateFileProgress);
connect(senderWorker, &Sender::baudrateSetFailed, this, &MainWindow::baudrateSetFailed);
connect(this, &MainWindow::setFile, senderWorker, &Sender::setFile);
connect(this, &MainWindow::startPrinting, senderWorker, &Sender::startPrinting);
connect(this, &MainWindow::stopPrinting, senderWorker, &Sender::stopPrinting);
@@ -860,6 +861,14 @@ void MainWindow::updateFileProgress(FileProgress p)
ui->progressBar->setValue(((float)p.P/p.T) * 100);
}
void MainWindow::baudrateSetFailed(int b)
{
ErrorWindow errorwindow(this, QString("Baudrate set failed:\n" +
QString::number(b) +
" baud"));
errorwindow.show();
}
//Needed for keypress handling
bool MainWindow::eventFilter(QObject *obj, QEvent *event)
{
+1
View File
@@ -98,6 +98,7 @@ private slots:
void parseFile(QString filename);
void recentClicked();
void updateFileProgress(FileProgress);
void baudrateSetFailed(int b);
void xplus();
void yplus();
+2 -19
View File
@@ -122,25 +122,8 @@ void Sender::openPort(QSerialPortInfo i)
{
//Moved here to be compatible with Qt 5.2.1
switch(baudrate)
{
case 4800:
printer->setBaudRate(QSerialPort::Baud4800);
break;
case 9600:
printer->setBaudRate(QSerialPort::Baud9600);
break;
case 115200:
printer->setBaudRate(QSerialPort::Baud115200);
break;
default:
printer->setBaudRate(baudrate);
break;
}
if(!printer->setBaudRate(baudrate))
emit baudrateSetFailed(baudrate);
printer->setFlowControl(QSerialPort::HardwareControl);
}
}
+1
View File
@@ -42,6 +42,7 @@ signals:
void errorRecieved(QSerialPort::SerialPortError error);
void dataRecieved(QByteArray data);
void reportProgress(FileProgress p);
void baudrateSetFailed(int b);
public slots:
void openPort(QSerialPortInfo i);