/
mainwindow.cpp
62 lines (50 loc) · 1.58 KB
/
mainwindow.cpp
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
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
#include "mainwindow.h"
#include "ui_mainwindow.h"
#include <QFileDialog>
MainWindow::MainWindow(QWidget *parent) :
QMainWindow(parent),
ui(new Ui::MainWindow)
{
ui->setupUi(this);
// Populate port list
QVector<QString> ports;
#if (defined (Q_OS_MAC) || defined (Q_OS_LINUX))
// Add USB serial port adapters
// TODO Strangely usb serial port adapters are not enumerated, even when connected
QString devdir = "/dev";
QDir dir(devdir);
dir.setFilter(QDir::System);
QFileInfoList list = dir.entryInfoList();
for (int i = list.size() - 1; i >= 0; i--) {
QFileInfo fileInfo = list.at(i);
if ((fileInfo.fileName().contains(QString("ttyUSB")) || fileInfo.fileName().contains(QString("ttyS")) || fileInfo.fileName().contains(QString("tty.")) || fileInfo.fileName().contains(QString("ttyACM")))
&& !fileInfo.fileName().contains(QString("tty.B")))
{
ports.append(fileInfo.canonicalFilePath());
}
}
#endif
foreach (QString port, ports)
{
ui->comboBox->addItem(port);
}
}
MainWindow::~MainWindow()
{
delete ui;
}
void MainWindow::on_pushButton_Program_clicked()
{
// Program button clicked
}
void MainWindow::on_pushButton_Connect_clicked()
{
// Connect button clicked
}
void MainWindow::on_toolButton_PickFile_clicked()
{
QString file_name;
// XXX rinky, should generate a better version, see docs
file_name = QFileDialog::getOpenFileName(this,
tr("Select Firmware File"), "/", tr("OpenPilot Firmware (*.ofw)"));
}