1*4882a593Smuzhiyun #include "mainwindow.h"
2*4882a593Smuzhiyun #include "ui_mainwindow.h"
3*4882a593Smuzhiyun #include <QMessageBox>
4*4882a593Smuzhiyun #include <QFile>
5*4882a593Smuzhiyun #include <DWKeyboard/KeyboardGlobal.h>
6*4882a593Smuzhiyun #include <QPushButton>
7*4882a593Smuzhiyun
MainWindow(QWidget * parent)8*4882a593Smuzhiyun MainWindow::MainWindow(QWidget *parent) :
9*4882a593Smuzhiyun QMainWindow(parent),
10*4882a593Smuzhiyun ui(new Ui::MainWindow)
11*4882a593Smuzhiyun {
12*4882a593Smuzhiyun ui->setupUi(this);
13*4882a593Smuzhiyun ui->hostip->setText("www.forlinx.com");
14*4882a593Smuzhiyun setWindowState(Qt::WindowMaximized);
15*4882a593Smuzhiyun setWindowFlags(Qt::FramelessWindowHint | Qt::WindowTitleHint | Qt::WindowCloseButtonHint);
16*4882a593Smuzhiyun
17*4882a593Smuzhiyun
18*4882a593Smuzhiyun GlobalInit();
19*4882a593Smuzhiyun ui->hostip->installEventFilter(this);
20*4882a593Smuzhiyun
21*4882a593Smuzhiyun myprocess = new QProcess(this);
22*4882a593Smuzhiyun connect(myprocess, SIGNAL(readyReadStandardOutput()),this, SLOT(result()));
23*4882a593Smuzhiyun connect(myprocess, SIGNAL(readyReadStandardError()),this, SLOT(result()));
24*4882a593Smuzhiyun
25*4882a593Smuzhiyun ping_process = new QProcess(this);
26*4882a593Smuzhiyun connect(ping_process, SIGNAL(readyReadStandardOutput()),this, SLOT(ping_result()));
27*4882a593Smuzhiyun connect(ping_process, SIGNAL(readyReadStandardError()),this, SLOT(ping_result()));
28*4882a593Smuzhiyun
29*4882a593Smuzhiyun connect(ui->exitBtn, &QPushButton::clicked, this, [=](){
30*4882a593Smuzhiyun close();
31*4882a593Smuzhiyun });
32*4882a593Smuzhiyun }
33*4882a593Smuzhiyun
~MainWindow()34*4882a593Smuzhiyun MainWindow::~MainWindow()
35*4882a593Smuzhiyun {
36*4882a593Smuzhiyun delete ui;
37*4882a593Smuzhiyun }
38*4882a593Smuzhiyun
eventFilter(QObject * watched,QEvent * event)39*4882a593Smuzhiyun bool MainWindow::eventFilter(QObject *watched, QEvent *event)
40*4882a593Smuzhiyun {
41*4882a593Smuzhiyun static bool mFocusIn = false;
42*4882a593Smuzhiyun if (event->type()==QEvent::FocusIn)
43*4882a593Smuzhiyun {
44*4882a593Smuzhiyun mFocusIn = true;
45*4882a593Smuzhiyun }
46*4882a593Smuzhiyun else if (event->type()==QEvent::FocusOut)
47*4882a593Smuzhiyun {
48*4882a593Smuzhiyun PlatformInputContextBase->FocusOut(watched);
49*4882a593Smuzhiyun mFocusIn = false;
50*4882a593Smuzhiyun }
51*4882a593Smuzhiyun
52*4882a593Smuzhiyun if (mFocusIn && event->type() == QEvent::MouseButtonPress) {
53*4882a593Smuzhiyun QMouseEvent *e = (QMouseEvent *)event;
54*4882a593Smuzhiyun PlatformInputContextBase->FocusIn(watched, e->globalPos());
55*4882a593Smuzhiyun }
56*4882a593Smuzhiyun
57*4882a593Smuzhiyun return QMainWindow::eventFilter(watched,event);
58*4882a593Smuzhiyun }
59*4882a593Smuzhiyun
result()60*4882a593Smuzhiyun void MainWindow::result()
61*4882a593Smuzhiyun {
62*4882a593Smuzhiyun QString abc = myprocess->readAllStandardOutput();
63*4882a593Smuzhiyun if(abc.length()>1)ui->result->append(abc.trimmed());
64*4882a593Smuzhiyun QString efg = myprocess->readAllStandardError();
65*4882a593Smuzhiyun if(efg.length()>1)ui->result->append(efg.trimmed());
66*4882a593Smuzhiyun }
67*4882a593Smuzhiyun
ping_result()68*4882a593Smuzhiyun void MainWindow::ping_result()
69*4882a593Smuzhiyun {
70*4882a593Smuzhiyun QString abc = ping_process->readAllStandardOutput();
71*4882a593Smuzhiyun if(abc.length()>1)ui->result->append(abc.trimmed());
72*4882a593Smuzhiyun QString efg = ping_process->readAllStandardError();
73*4882a593Smuzhiyun if(efg.length()>1)ui->result->append(efg.trimmed());
74*4882a593Smuzhiyun }
75*4882a593Smuzhiyun
on_connect_clicked()76*4882a593Smuzhiyun void MainWindow::on_connect_clicked()
77*4882a593Smuzhiyun {
78*4882a593Smuzhiyun ui->result->clear();
79*4882a593Smuzhiyun if (ui->comboBox->currentText() == "ME909"){
80*4882a593Smuzhiyun // if (myprocess->state() == QProcess::NotRunning)
81*4882a593Smuzhiyun myprocess->start("/usr/bin/fltest_ec20.sh &");
82*4882a593Smuzhiyun }
83*4882a593Smuzhiyun else{
84*4882a593Smuzhiyun // if (myprocess->state() == QProcess::NotRunning)
85*4882a593Smuzhiyun myprocess->start("/usr/bin/quectelCM &");
86*4882a593Smuzhiyun }
87*4882a593Smuzhiyun }
88*4882a593Smuzhiyun
on_ping_clicked()89*4882a593Smuzhiyun void MainWindow::on_ping_clicked()
90*4882a593Smuzhiyun {
91*4882a593Smuzhiyun ui->result->clear();
92*4882a593Smuzhiyun if(ui->hostip->text() == QString(""))
93*4882a593Smuzhiyun {
94*4882a593Smuzhiyun QMessageBox::about(this,"error","hostname cannot be empty!");
95*4882a593Smuzhiyun return;
96*4882a593Smuzhiyun }
97*4882a593Smuzhiyun
98*4882a593Smuzhiyun if (ping_process->state() == QProcess::NotRunning){
99*4882a593Smuzhiyun ping_process->start(QString("ping -I usb0 -c 5 ")+ui->hostip->text());
100*4882a593Smuzhiyun ui->result->append(QString("ping -I usb0 -c 5 ")+ui->hostip->text());
101*4882a593Smuzhiyun }
102*4882a593Smuzhiyun }
103*4882a593Smuzhiyun
104