#include "log/UserOperationLog.h" #include "guimessagedialog.h" #include "ui_guimessagedialog.h" #include "event/EventCenter.h" #include #include GUIMessageDialog::GUIMessageDialog(QWidget *parent) : QDialog(parent), ui(new Ui::GUIMessageDialog) { ui->setupUi(this); this->setObjectName("MessageDialog"); this->setWindowFlags (Qt :: FramelessWindowHint | Qt :: Dialog); this->showFullScreen (); ui->lbl_msg->setVisible(false); ui->lbl_progressicon->setVisible(false); btn_main = new QToolButton(this); btn_main->setObjectName("btn_main"); btn_main->setVisible(false); btn_main->setText("OK"); btn_Append = new QToolButton(this); btn_Append->setObjectName("btn_main"); btn_Append->setVisible(false); btn_Append->setText("Stop"); QWidget* btnContainer = new QWidget(this); QHBoxLayout* hlayout = new QHBoxLayout(btnContainer); hlayout->setMargin(0); hlayout->addWidget(btn_main); hlayout->addWidget(btn_Append); ui->widget_2->layout()->addWidget(btnContainer); this->setWindowOpacity(0.6); for (int i=1; i<=6;i++) { QString str(" "); for(int j=0;j11) frameIndex = frameIndex % 12; ui->lbl_progressicon->setText(frame[frameIndex++]); this->update(); } void GUIMessageDialog::stopLoading() { if (timerID!=-1){ killTimer(timerID); timerID=-1; } disconnect(btn_main,0,0,0); ui->lbl_progressicon->setVisible(false); } void GUIMessageDialog::startLoading() { ui->lbl_progressicon->setVisible(true); disconnect(btn_main,0,0,0); connect(btn_main,&QToolButton::clicked,[=](){ if (timerID != -1){ killTimer(timerID); timerID = -1; } accept(); EventCenter::Default()->triggerEvent(GUIEvents::RequestStop, nullptr, nullptr); LOG_USER_OPERATION(Stop); }); timerID = startTimer(100); btn_main->setText("Stop"); btn_main->setVisible(true); } void GUIMessageDialog::showMessage(QString msg) { ui->lbl_msg->setVisible(true); ui->lbl_msg->setText(msg); } void GUIMessageDialog::showExitButton() { btn_main->setText("OK"); btn_main->setVisible(true); disconnect(btn_main,0,0,0); connect(btn_main,&QToolButton::clicked,[=](){ if (timerID != -1){ killTimer(timerID); timerID = -1; } accept(); LOG_USER_OPERATION(ConfirmError); }); } void GUIMessageDialog::hideMessage() { ui->lbl_msg->setVisible(false); ui->lbl_msg->setText(""); } void GUIMessageDialog::hideExitButton() { btn_main->setVisible(false); disconnect(btn_main,0,0,0); } void GUIMessageDialog::setOpacity(double opacity) { this->setWindowOpacity(opacity); } void GUIMessageDialog::startPending() { disconnect(btn_Append,0,0,0); connect(btn_Append,&QToolButton::clicked,[=](){ EventCenter::Default()->triggerEvent(GUIEvents::RequestContinueScan, nullptr, nullptr); stopPending(); }); btn_Append->setText("Next"); btn_Append->setVisible(true); pending = true; } void GUIMessageDialog::stopPending() { disconnect(btn_Append,0,0,0); btn_Append->setVisible(false); pending = false; }