MainWindow::MainWindow(QWidget *parent) : QMainWindow(parent), ui(new Ui::MainWindow) { ui->setupUi(this); this->ui->b_disconnect->setEnabled(false); this->ui->b_send->setEnabled(false); this->ui->b_sendlast->setEnabled(false); this->ui->b_receive->setEnabled(false); this->ui->b_verify->setEnabled(false); this->stlink = new stlinkv2(); this->devices = new DeviceList(this); this->tfThread = new transferThread(); if (this->devices->IsLoaded()) { this->ui->gb_top->setEnabled(true); this->log(QString::number(this->devices->getDevicesCount())+" Device descriptions loaded."); QObject::connect(this->ui->b_quit,SIGNAL(clicked()),this,SLOT(Quit())); QObject::connect(this->ui->b_qt,SIGNAL(clicked()),qApp,SLOT(aboutQt())); QObject::connect(this->ui->b_connect, SIGNAL(clicked()), this, SLOT(Connect())); QObject::connect(this->ui->b_disconnect, SIGNAL(clicked()), this, SLOT(Disconnect())); QObject::connect(this->ui->b_send, SIGNAL(clicked()), this, SLOT(Send())); QObject::connect(this->ui->b_sendlast, SIGNAL(clicked()), this, SLOT(SendLast())); QObject::connect(this->ui->b_receive, SIGNAL(clicked()), this, SLOT(Receive())); QObject::connect(this->ui->b_verify, SIGNAL(clicked()), this, SLOT(Verify())); QObject::connect(this->ui->b_halt, SIGNAL(clicked()), this, SLOT(HaltMCU())); QObject::connect(this->ui->b_run, SIGNAL(clicked()), this, SLOT(RunMCU())); QObject::connect(this->ui->b_reset, SIGNAL(clicked()), this, SLOT(ResetMCU())); QObject::connect(this->ui->r_jtag, SIGNAL(clicked()), this, SLOT(setModeJTAG())); QObject::connect(this->ui->r_swd, SIGNAL(clicked()), this, SLOT(setModeSWD())); QObject::connect(this->ui->b_hardReset, SIGNAL(clicked()), this, SLOT(HardReset())); // Thread QObject::connect(this->tfThread, SIGNAL(sendProgress(quint32)), this, SLOT(updateProgress(quint32))); QObject::connect(this->tfThread, SIGNAL(sendStatus(QString)), this, SLOT(updateStatus(QString))); QObject::connect(this->tfThread, SIGNAL(sendLoaderStatus(QString)), this, SLOT(updateLoaderStatus(QString))); QObject::connect(this->stlink, SIGNAL(bufferPct(quint32)), this, SLOT(updateLoaderPct(quint32))); QObject::connect(this->tfThread, SIGNAL(sendLock(bool)), this, SLOT(lockUI(bool))); QObject::connect(this->ui->b_stop, SIGNAL(clicked()), this->tfThread, SLOT(halt())); QObject::connect(this->tfThread, SIGNAL(sendLog(QString)), this, SLOT(log(QString))); // Help QObject::connect(this->ui->b_help, SIGNAL(clicked()), this, SLOT(showHelp())); }
MainWindow::MainWindow(QWidget *parent) : QMainWindow(parent), mUi(new Ui::MainWindow) { mUi->setupUi(this); mUi->b_disconnect->setEnabled(false); this->lockUI(true); mStlink = new stlinkv2(); mDevices = new DeviceInfoList(this); mTfThread = new transferThread(); mLastAction = ACTION_NONE; if (mDevices->IsLoaded()) { this->log(QString::number(mDevices->getDevicesCount())+" Device descriptions loaded."); QObject::connect(mUi->b_quit,SIGNAL(clicked()),this,SLOT(quit())); QObject::connect(mUi->b_connect, SIGNAL(clicked()), this, SLOT(connect())); QObject::connect(mUi->b_disconnect, SIGNAL(clicked()), this, SLOT(disconnect())); QObject::connect(mUi->b_send, SIGNAL(clicked()), this, SLOT(send())); QObject::connect(mUi->b_receive, SIGNAL(clicked()), this, SLOT(receive())); QObject::connect(mUi->b_verify, SIGNAL(clicked()), this, SLOT(verify())); QObject::connect(mUi->b_repeat, SIGNAL(clicked()), this, SLOT(repeat())); QObject::connect(mUi->b_halt, SIGNAL(clicked()), this, SLOT(haltMCU())); QObject::connect(mUi->b_run, SIGNAL(clicked()), this, SLOT(runMCU())); QObject::connect(mUi->b_reset, SIGNAL(clicked()), this, SLOT(resetMCU())); QObject::connect(mUi->r_jtag, SIGNAL(clicked()), this, SLOT(setModeJTAG())); QObject::connect(mUi->r_swd, SIGNAL(clicked()), this, SLOT(setModeSWD())); QObject::connect(mUi->b_hardReset, SIGNAL(clicked()), this, SLOT(hardReset())); // Thread QObject::connect(mTfThread, SIGNAL(sendProgress(quint32)), this, SLOT(updateProgress(quint32))); QObject::connect(mTfThread, SIGNAL(sendStatus(QString)), this, SLOT(updateStatus(QString))); QObject::connect(mTfThread, SIGNAL(sendLoaderStatus(QString)), this, SLOT(updateLoaderStatus(QString))); QObject::connect(mStlink, SIGNAL(bufferPct(quint32)), this, SLOT(updateLoaderPct(quint32))); QObject::connect(mTfThread, SIGNAL(sendLock(bool)), this, SLOT(lockUI(bool))); QObject::connect(mUi->b_stop, SIGNAL(clicked()), mTfThread, SLOT(halt())); QObject::connect(mTfThread, SIGNAL(sendLog(QString)), this, SLOT(log(QString))); // Help QObject::connect(mUi->b_help, SIGNAL(clicked()), this, SLOT(showHelp())); // Usb stuff QObject::connect(mStlink, SIGNAL(deviceDetected(QString)), this, SLOT(log(QString))); }