-
Notifications
You must be signed in to change notification settings - Fork 2
Expand file tree
/
Copy pathConnectSerialDeviceDialog.cpp
More file actions
42 lines (33 loc) · 1.43 KB
/
ConnectSerialDeviceDialog.cpp
File metadata and controls
42 lines (33 loc) · 1.43 KB
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
#include "ConnectSerialDeviceDialog.h"
ConnectSerialDeviceDialog::ConnectSerialDeviceDialog(std::vector<std::string> ports, QObject* mainWindow, QWidget *parent)
: QDialog(parent),
mainWindow_(mainWindow)
{
ui.setupUi(this);
for(std::string p : ports)
{
ui.portComboBox->addItem(p.c_str());
}
connect(ui.connectSerialConfirm->button(QDialogButtonBox::StandardButton::Ok), &QPushButton::clicked, this, &ConnectSerialDeviceDialog::CreateDevice);
connect(ui.connectSerialConfirm->button(QDialogButtonBox::StandardButton::Cancel), &QPushButton::clicked, this, &ConnectSerialDeviceDialog::close);
connect(this, SIGNAL(serialDeviceReady(std::string, std::string, int, std::vector<std::string>)), mainWindow_, SLOT(connectSerialDevice(std::string, std::string, int, std::vector<std::string>)));
}
ConnectSerialDeviceDialog::~ConnectSerialDeviceDialog()
{
}
void ConnectSerialDeviceDialog::CreateDevice()
{
if (ui.deviceNameLineEdit->text() != "")
{
std::vector<std::string> exitCommands;
for (QString command : ui.exitCommandsTextEdit->toPlainText().split('\n'))
{
exitCommands.push_back(command.toStdString());
}
std::string deviceName = ui.deviceNameLineEdit->text().toUtf8().constData();
std::string portName = ui.portComboBox->currentText().toUtf8().constData();
int baudrate = atoi(ui.baudrateComboBox->currentText().toUtf8().constData());
emit serialDeviceReady(deviceName, portName, baudrate, exitCommands);
close();
}
}