feat:完成实时报警的动态配置功能
This commit is contained in:
parent
431a39ef83
commit
f3f08af3f9
|
|
@ -86,6 +86,7 @@ set(CPP_SOURCE_FILES
|
||||||
source/customCalendarWidget.cpp
|
source/customCalendarWidget.cpp
|
||||||
source/dateTimeSelectionPanel.cpp
|
source/dateTimeSelectionPanel.cpp
|
||||||
source/httpRequestManager.cpp
|
source/httpRequestManager.cpp
|
||||||
|
source/alarmEventGlobal.cpp
|
||||||
source/alarmEventMainDialog.cpp
|
source/alarmEventMainDialog.cpp
|
||||||
source/alarmEventDataView.cpp
|
source/alarmEventDataView.cpp
|
||||||
source/alarmEventRealTimeDock.cpp
|
source/alarmEventRealTimeDock.cpp
|
||||||
|
|
|
||||||
|
|
@ -0,0 +1,41 @@
|
||||||
|
#ifndef ALARMCONFIGDIALOG_H
|
||||||
|
#define ALARMCONFIGDIALOG_H
|
||||||
|
|
||||||
|
#include <QDialog>
|
||||||
|
#include "alarmEventGlobal.h"
|
||||||
|
|
||||||
|
QT_BEGIN_NAMESPACE
|
||||||
|
namespace Ui {
|
||||||
|
class alarmEventConfigDialog;
|
||||||
|
}
|
||||||
|
QT_END_NAMESPACE
|
||||||
|
|
||||||
|
class AlarmEventConfigDialog : public QDialog
|
||||||
|
{
|
||||||
|
Q_OBJECT
|
||||||
|
|
||||||
|
public:
|
||||||
|
AlarmEventConfigDialog(QWidget *parent = nullptr);
|
||||||
|
~AlarmEventConfigDialog();
|
||||||
|
|
||||||
|
signals:
|
||||||
|
void sgl_hide();
|
||||||
|
//void sgl_configFinish(const AlarmConfigurationResults&);
|
||||||
|
|
||||||
|
public slots:
|
||||||
|
void onBtnClicked_tabBtn();
|
||||||
|
void onBtnClicked_confirm();
|
||||||
|
void onBtnClicked_cancle();
|
||||||
|
|
||||||
|
protected:
|
||||||
|
void showEvent(QShowEvent*);
|
||||||
|
|
||||||
|
private:
|
||||||
|
void initialize();
|
||||||
|
|
||||||
|
Ui::alarmEventConfigDialog* ui;
|
||||||
|
QPushButton* m_curActiveTab;
|
||||||
|
//AlarmConfigurationResults m_cfgResults;
|
||||||
|
};
|
||||||
|
|
||||||
|
#endif
|
||||||
|
|
@ -73,4 +73,26 @@ struct EventData
|
||||||
}
|
}
|
||||||
};
|
};
|
||||||
|
|
||||||
|
struct AlarmConfigurationResults
|
||||||
|
{
|
||||||
|
//级别选择
|
||||||
|
bool level_notify = true;
|
||||||
|
bool level_warining = true;
|
||||||
|
bool level_abnormal = true;
|
||||||
|
bool level_accident = true;
|
||||||
|
//类型选择
|
||||||
|
bool type_hard = true;
|
||||||
|
bool type_platformSoft = true;
|
||||||
|
bool type_appSoft = true;
|
||||||
|
//提示行为
|
||||||
|
bool notify_sound = true;
|
||||||
|
bool notify_autoPop = true;
|
||||||
|
//自动弹窗级别
|
||||||
|
bool autoPop_nofity = false;
|
||||||
|
bool autoPop_warining = false;
|
||||||
|
bool autoPop_abnormal = false;
|
||||||
|
bool autoPop_accident = true;
|
||||||
|
};
|
||||||
|
extern AlarmConfigurationResults g_alarmCfgResults;
|
||||||
|
|
||||||
#endif
|
#endif
|
||||||
|
|
|
||||||
|
|
@ -28,6 +28,7 @@ public:
|
||||||
|
|
||||||
signals:
|
signals:
|
||||||
void sgl_hide();
|
void sgl_hide();
|
||||||
|
void openConfigDialog();
|
||||||
|
|
||||||
protected:
|
protected:
|
||||||
void showEvent(QShowEvent* event) override;
|
void showEvent(QShowEvent* event) override;
|
||||||
|
|
|
||||||
|
|
@ -35,13 +35,16 @@ public:
|
||||||
signals:
|
signals:
|
||||||
void alertWidgetBGColorAlphaChanged(float value);
|
void alertWidgetBGColorAlphaChanged(float value);
|
||||||
void viewAllRealTimeEvents();
|
void viewAllRealTimeEvents();
|
||||||
|
void openConfigDialog();
|
||||||
|
|
||||||
public slots:
|
public slots:
|
||||||
void onBtnClicked_open();
|
void onBtnClicked_open();
|
||||||
void onBtnClicked_close();
|
void onBtnClicked_close();
|
||||||
void onBtnClicked_confirmAll();
|
void onBtnClicked_confirmAll();
|
||||||
void onBtnClicked_checkAll();
|
void onBtnClicked_checkAll();
|
||||||
|
void onBtnClicked_setting();
|
||||||
void onSIG_receivedNewAlarm(const EventData& event);
|
void onSIG_receivedNewAlarm(const EventData& event);
|
||||||
|
//void onSIG_configFinish(const AlarmConfigurationResults&);
|
||||||
|
|
||||||
private:
|
private:
|
||||||
void expand();
|
void expand();
|
||||||
|
|
@ -63,6 +66,7 @@ private:
|
||||||
QString m_alertWidgetStyleSheet;
|
QString m_alertWidgetStyleSheet;
|
||||||
QString m_curState;
|
QString m_curState;
|
||||||
AlarmDataStatics m_alarmDataStatics;
|
AlarmDataStatics m_alarmDataStatics;
|
||||||
|
AlarmConfigurationResults m_cfgResults;
|
||||||
};
|
};
|
||||||
|
|
||||||
#endif
|
#endif
|
||||||
|
|
|
||||||
|
|
@ -24,6 +24,7 @@ class DataPanel;
|
||||||
class dpConfigurationDialog;
|
class dpConfigurationDialog;
|
||||||
class AlarmEventRealTimeDock;
|
class AlarmEventRealTimeDock;
|
||||||
class AlarmEventMainDialog;
|
class AlarmEventMainDialog;
|
||||||
|
class AlarmEventConfigDialog;
|
||||||
|
|
||||||
namespace dashboardFrame {
|
namespace dashboardFrame {
|
||||||
enum frameType
|
enum frameType
|
||||||
|
|
@ -96,6 +97,7 @@ public slots:
|
||||||
void onSignal_viewHistoricalData(QDateTime);
|
void onSignal_viewHistoricalData(QDateTime);
|
||||||
|
|
||||||
void onSignal_viewAllRealTimeEvents();
|
void onSignal_viewAllRealTimeEvents();
|
||||||
|
void onSignal_openAlarmEventCfgDialog();
|
||||||
|
|
||||||
private:
|
private:
|
||||||
Ui::dashboardFrame* ui;
|
Ui::dashboardFrame* ui;
|
||||||
|
|
@ -119,6 +121,7 @@ private:
|
||||||
dpConfigurationDialog* m_pPanelConfigurationDialog;
|
dpConfigurationDialog* m_pPanelConfigurationDialog;
|
||||||
AlarmEventRealTimeDock* m_pAlarmEventRealTimeDock;
|
AlarmEventRealTimeDock* m_pAlarmEventRealTimeDock;
|
||||||
AlarmEventMainDialog* m_pAlarmEventMainDialog;
|
AlarmEventMainDialog* m_pAlarmEventMainDialog;
|
||||||
|
AlarmEventConfigDialog* m_pAlarmEventConfigDialog;
|
||||||
|
|
||||||
QTimer* m_pTimer_RealTime;
|
QTimer* m_pTimer_RealTime;
|
||||||
};
|
};
|
||||||
|
|
|
||||||
|
|
@ -0,0 +1,132 @@
|
||||||
|
#include "alarmEventConfigDialog.h"
|
||||||
|
#include "ui_alarmEventConfigDialog.h"
|
||||||
|
|
||||||
|
AlarmEventConfigDialog::AlarmEventConfigDialog(QWidget *parent)
|
||||||
|
: QDialog(parent)
|
||||||
|
, ui(new Ui::alarmEventConfigDialog)
|
||||||
|
, m_curActiveTab(nullptr)
|
||||||
|
{
|
||||||
|
ui->setupUi(this);
|
||||||
|
setWindowFlags(Qt::FramelessWindowHint | Qt::WindowDoesNotAcceptFocus);
|
||||||
|
setAttribute(Qt::WA_TranslucentBackground);
|
||||||
|
|
||||||
|
initialize();
|
||||||
|
}
|
||||||
|
|
||||||
|
AlarmEventConfigDialog::~AlarmEventConfigDialog()
|
||||||
|
{
|
||||||
|
delete ui;
|
||||||
|
}
|
||||||
|
|
||||||
|
void AlarmEventConfigDialog::showEvent(QShowEvent* event)
|
||||||
|
{
|
||||||
|
//级别选择
|
||||||
|
ui->level_notify->setChecked(g_alarmCfgResults.level_notify);
|
||||||
|
ui->level_warning->setChecked(g_alarmCfgResults.level_warining);
|
||||||
|
ui->level_abnormal->setChecked(g_alarmCfgResults.level_abnormal);
|
||||||
|
ui->level_accident->setChecked(g_alarmCfgResults.level_accident);
|
||||||
|
//类型选择
|
||||||
|
ui->type_hard->setChecked(g_alarmCfgResults.type_hard);
|
||||||
|
ui->type_platformSoft->setChecked(g_alarmCfgResults.type_platformSoft);
|
||||||
|
ui->type_appSoft->setChecked(g_alarmCfgResults.type_appSoft);
|
||||||
|
//提示行为
|
||||||
|
ui->switch_sound->setChecked(g_alarmCfgResults.notify_sound);
|
||||||
|
ui->switch_autoPop->setChecked(g_alarmCfgResults.notify_autoPop);
|
||||||
|
//需要自动弹窗的事件级别
|
||||||
|
ui->pop_notify->setChecked(g_alarmCfgResults.autoPop_nofity);
|
||||||
|
ui->pop_warning->setChecked(g_alarmCfgResults.autoPop_warining);
|
||||||
|
ui->pop_abnormal->setChecked(g_alarmCfgResults.autoPop_abnormal);
|
||||||
|
ui->pop_accident->setChecked(g_alarmCfgResults.autoPop_accident);
|
||||||
|
|
||||||
|
ui->tabDataFilter->click();
|
||||||
|
}
|
||||||
|
|
||||||
|
void AlarmEventConfigDialog::initialize()
|
||||||
|
{
|
||||||
|
ui->stackedWidget->setCurrentIndex(0);
|
||||||
|
|
||||||
|
ui->tabDataFilter->setProperty("index", 0);
|
||||||
|
connect(ui->tabDataFilter, &QPushButton::clicked, this, &AlarmEventConfigDialog::onBtnClicked_tabBtn);
|
||||||
|
ui->tabDataSource->setProperty("index", 1);
|
||||||
|
connect(ui->tabDataSource, &QPushButton::clicked, this, &AlarmEventConfigDialog::onBtnClicked_tabBtn);
|
||||||
|
|
||||||
|
connect(ui->btnConfirm, &QPushButton::clicked, this, &AlarmEventConfigDialog::onBtnClicked_confirm);
|
||||||
|
connect(ui->btnCancle, &QPushButton::clicked, this, &AlarmEventConfigDialog::onBtnClicked_cancle);
|
||||||
|
}
|
||||||
|
|
||||||
|
void AlarmEventConfigDialog::onBtnClicked_tabBtn()
|
||||||
|
{
|
||||||
|
QPushButton* pTab = qobject_cast<QPushButton*>(sender());
|
||||||
|
if(pTab == m_curActiveTab)
|
||||||
|
return;
|
||||||
|
|
||||||
|
if(m_curActiveTab)
|
||||||
|
{
|
||||||
|
m_curActiveTab->setStyleSheet("QPushButton\n"
|
||||||
|
"{\n"
|
||||||
|
"color: rgb(250, 250, 250);\n"
|
||||||
|
"font: 700 12pt \"黑体\";\n"
|
||||||
|
"border:0px;\n"
|
||||||
|
"background-color:transparent;\n"
|
||||||
|
"}\n"
|
||||||
|
"QPushButton:hover\n"
|
||||||
|
"{\n"
|
||||||
|
"}\n"
|
||||||
|
"QPushButton:pressed\n"
|
||||||
|
"{\n"
|
||||||
|
"}");
|
||||||
|
}
|
||||||
|
if(pTab)
|
||||||
|
{
|
||||||
|
pTab->setStyleSheet("QPushButton\n"
|
||||||
|
"{\n"
|
||||||
|
"color: rgb(250, 250, 250);\n"
|
||||||
|
"font: 700 12pt \"黑体\";\n"
|
||||||
|
"border:1px solid rgb(200,200,200);\n"
|
||||||
|
"border-bottom:0px;\n"
|
||||||
|
"background-color:rgba(36,43,50, 250);\n"
|
||||||
|
"}\n"
|
||||||
|
"QPushButton:hover\n"
|
||||||
|
"{\n"
|
||||||
|
"}\n"
|
||||||
|
"QPushButton:pressed\n"
|
||||||
|
"{\n"
|
||||||
|
"}");
|
||||||
|
|
||||||
|
int nIndex = pTab->property("index").toInt();
|
||||||
|
ui->stackedWidget->setCurrentIndex(nIndex);
|
||||||
|
}
|
||||||
|
m_curActiveTab = pTab;
|
||||||
|
}
|
||||||
|
|
||||||
|
void AlarmEventConfigDialog::onBtnClicked_confirm()
|
||||||
|
{
|
||||||
|
//级别选择
|
||||||
|
g_alarmCfgResults.level_notify = ui->level_notify->isChecked();
|
||||||
|
g_alarmCfgResults.level_warining = ui->level_warning->isChecked();
|
||||||
|
g_alarmCfgResults.level_abnormal = ui->level_abnormal->isChecked();
|
||||||
|
g_alarmCfgResults.level_accident = ui->level_accident->isChecked();
|
||||||
|
//类型选择
|
||||||
|
g_alarmCfgResults.type_hard = ui->type_hard->isChecked();
|
||||||
|
g_alarmCfgResults.type_platformSoft = ui->type_platformSoft->isChecked();
|
||||||
|
g_alarmCfgResults.type_appSoft = ui->type_appSoft->isChecked();
|
||||||
|
//提示行为
|
||||||
|
g_alarmCfgResults.notify_sound = ui->switch_sound->isChecked();
|
||||||
|
g_alarmCfgResults.notify_autoPop = ui->switch_autoPop->isChecked();
|
||||||
|
//需要自动弹窗的事件级别
|
||||||
|
g_alarmCfgResults.autoPop_nofity = ui->pop_notify->isChecked();
|
||||||
|
g_alarmCfgResults.autoPop_warining = ui->pop_warning->isChecked();
|
||||||
|
g_alarmCfgResults.autoPop_abnormal = ui->pop_abnormal->isChecked();
|
||||||
|
g_alarmCfgResults.autoPop_accident = ui->pop_accident->isChecked();
|
||||||
|
|
||||||
|
//emit sgl_configFinish(g_alarmCfgResults);
|
||||||
|
|
||||||
|
hide();
|
||||||
|
emit sgl_hide();
|
||||||
|
}
|
||||||
|
|
||||||
|
void AlarmEventConfigDialog::onBtnClicked_cancle()
|
||||||
|
{
|
||||||
|
hide();
|
||||||
|
emit sgl_hide();
|
||||||
|
}
|
||||||
|
|
@ -308,16 +308,26 @@ void AlarmEventDataModel::onTimeoutSimulateData()
|
||||||
event.bayName = QString("间隔") + QString::number(randomInt);
|
event.bayName = QString("间隔") + QString::number(randomInt);
|
||||||
event.description = "";
|
event.description = "";
|
||||||
event.type = 5;
|
event.type = 5;
|
||||||
QString severity = QString("预警");
|
|
||||||
if(randomInt == 0)
|
if(randomInt == 0)
|
||||||
severity = QString("告知");
|
{
|
||||||
|
event.priority = 1;
|
||||||
|
event.severity = QString("告知");
|
||||||
|
}
|
||||||
else if(randomInt == 1)
|
else if(randomInt == 1)
|
||||||
severity = QString("预警");
|
{
|
||||||
|
event.priority = 4;
|
||||||
|
event.severity = QString("预警");
|
||||||
|
}
|
||||||
else if(randomInt == 2)
|
else if(randomInt == 2)
|
||||||
severity = QString("异常");
|
{
|
||||||
|
event.priority = 6;
|
||||||
|
event.severity = QString("异常");
|
||||||
|
}
|
||||||
else if(randomInt == 3)
|
else if(randomInt == 3)
|
||||||
severity = QString("事故");
|
{
|
||||||
event.severity = severity;
|
event.priority = 7;
|
||||||
|
event.severity = QString("事故");
|
||||||
|
}
|
||||||
event.status = 0;
|
event.status = 0;
|
||||||
onRealTimeEventReceived(event);
|
onRealTimeEventReceived(event);
|
||||||
}
|
}
|
||||||
|
|
@ -334,6 +344,29 @@ void AlarmEventDataModel::onRealTimeEventReceived(const EventData& event)
|
||||||
return;
|
return;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
//按级别过滤事件
|
||||||
|
//告知
|
||||||
|
if(event.priority == 1)
|
||||||
|
{
|
||||||
|
//qDebug() << g_alarmCfgResults.level_notify;
|
||||||
|
if(!g_alarmCfgResults.level_notify)
|
||||||
|
return;
|
||||||
|
}
|
||||||
|
//预警
|
||||||
|
else if(event.priority == 4)
|
||||||
|
{
|
||||||
|
//qDebug() << g_alarmCfgResults.level_warining;
|
||||||
|
if(!g_alarmCfgResults.level_warining)
|
||||||
|
return;
|
||||||
|
}
|
||||||
|
//事故
|
||||||
|
else if(event.priority == 7)
|
||||||
|
{
|
||||||
|
//qDebug() << g_alarmCfgResults.level_accident;
|
||||||
|
if(!g_alarmCfgResults.level_accident)
|
||||||
|
return;
|
||||||
|
}
|
||||||
|
|
||||||
beginResetModel();
|
beginResetModel();
|
||||||
|
|
||||||
//插入数据之前,先判断当前是否达到最大显示条目,达到的话删除最靠前(时间)的条目
|
//插入数据之前,先判断当前是否达到最大显示条目,达到的话删除最靠前(时间)的条目
|
||||||
|
|
|
||||||
|
|
@ -0,0 +1,3 @@
|
||||||
|
#include "alarmEventGlobal.h"
|
||||||
|
|
||||||
|
AlarmConfigurationResults g_alarmCfgResults;
|
||||||
|
|
@ -147,6 +147,7 @@ void AlarmEventMainDialog::setMode(AlarmDataMode mode)
|
||||||
if(mode == Historical_Unconfirmed)
|
if(mode == Historical_Unconfirmed)
|
||||||
{
|
{
|
||||||
ui->label_WindowlTitle->setText("实时事件");
|
ui->label_WindowlTitle->setText("实时事件");
|
||||||
|
ui->btnConfirmAll->setVisible(true);
|
||||||
ui->conboBox_confirmStatus->setEnabled(false);
|
ui->conboBox_confirmStatus->setEnabled(false);
|
||||||
ui->conboBox_confirmStatus->setCurrentIndex(1);
|
ui->conboBox_confirmStatus->setCurrentIndex(1);
|
||||||
m_eventFilter.setConfirmStatusFilter(0);
|
m_eventFilter.setConfirmStatusFilter(0);
|
||||||
|
|
@ -154,6 +155,7 @@ void AlarmEventMainDialog::setMode(AlarmDataMode mode)
|
||||||
else if(mode == Historical_All)
|
else if(mode == Historical_All)
|
||||||
{
|
{
|
||||||
ui->label_WindowlTitle->setText("历史事件");
|
ui->label_WindowlTitle->setText("历史事件");
|
||||||
|
ui->btnConfirmAll->setVisible(false);
|
||||||
ui->conboBox_confirmStatus->setEnabled(true);
|
ui->conboBox_confirmStatus->setEnabled(true);
|
||||||
ui->conboBox_confirmStatus->setCurrentIndex(0);
|
ui->conboBox_confirmStatus->setCurrentIndex(0);
|
||||||
m_eventFilter.setConfirmStatusFilter(-1); //-1表示所有事件(确认+未确认)
|
m_eventFilter.setConfirmStatusFilter(-1); //-1表示所有事件(确认+未确认)
|
||||||
|
|
|
||||||
|
|
@ -44,6 +44,7 @@ AlarmEventRealTimeDock::AlarmEventRealTimeDock(QWidget* parent)
|
||||||
connect(ui->btnClose, &QPushButton::clicked, this, &AlarmEventRealTimeDock::onBtnClicked_close);
|
connect(ui->btnClose, &QPushButton::clicked, this, &AlarmEventRealTimeDock::onBtnClicked_close);
|
||||||
connect(ui->btnConfirmAll, &QPushButton::clicked, this, &AlarmEventRealTimeDock::onBtnClicked_confirmAll);
|
connect(ui->btnConfirmAll, &QPushButton::clicked, this, &AlarmEventRealTimeDock::onBtnClicked_confirmAll);
|
||||||
connect(ui->btnCheckAll, &QPushButton::clicked, this, &AlarmEventRealTimeDock::onBtnClicked_checkAll);
|
connect(ui->btnCheckAll, &QPushButton::clicked, this, &AlarmEventRealTimeDock::onBtnClicked_checkAll);
|
||||||
|
connect(ui->btnSetting, &QPushButton::clicked, this, &AlarmEventRealTimeDock::onBtnClicked_setting);
|
||||||
|
|
||||||
/*if(parent)
|
/*if(parent)
|
||||||
{
|
{
|
||||||
|
|
@ -118,6 +119,8 @@ void AlarmEventRealTimeDock::startAlarmAlert()
|
||||||
if(m_isInAnimationAlert || m_curState == "expand")
|
if(m_isInAnimationAlert || m_curState == "expand")
|
||||||
return;
|
return;
|
||||||
|
|
||||||
|
//播放音频(音频长度要和动画时间一致)
|
||||||
|
//if(g_alarmCfgResults.notify_sound)
|
||||||
m_animationAlert->start();
|
m_animationAlert->start();
|
||||||
m_isInAnimationAlert = true;
|
m_isInAnimationAlert = true;
|
||||||
}
|
}
|
||||||
|
|
@ -194,8 +197,27 @@ void AlarmEventRealTimeDock::onBtnClicked_checkAll()
|
||||||
emit viewAllRealTimeEvents();
|
emit viewAllRealTimeEvents();
|
||||||
}
|
}
|
||||||
|
|
||||||
|
void AlarmEventRealTimeDock::onBtnClicked_setting()
|
||||||
|
{
|
||||||
|
emit openConfigDialog();
|
||||||
|
}
|
||||||
|
|
||||||
void AlarmEventRealTimeDock::onSIG_receivedNewAlarm(const EventData& event)
|
void AlarmEventRealTimeDock::onSIG_receivedNewAlarm(const EventData& event)
|
||||||
{
|
{
|
||||||
|
//判断是否需要自动弹窗
|
||||||
|
if(g_alarmCfgResults.notify_autoPop && m_curState == "collapse")
|
||||||
|
{
|
||||||
|
//告知
|
||||||
|
if(event.priority == 1 && g_alarmCfgResults.autoPop_nofity)
|
||||||
|
onBtnClicked_open();
|
||||||
|
//预警
|
||||||
|
else if(event.priority == 4 && g_alarmCfgResults.autoPop_warining)
|
||||||
|
onBtnClicked_open();
|
||||||
|
//事故
|
||||||
|
else if(event.priority == 7 && g_alarmCfgResults.autoPop_accident)
|
||||||
|
onBtnClicked_open();
|
||||||
|
}
|
||||||
|
|
||||||
startAlarmAlert();
|
startAlarmAlert();
|
||||||
|
|
||||||
m_alarmDataStatics.allCount++;
|
m_alarmDataStatics.allCount++;
|
||||||
|
|
|
||||||
|
|
@ -15,6 +15,7 @@
|
||||||
#include "util/TimeLine/timeLineWidget.h"
|
#include "util/TimeLine/timeLineWidget.h"
|
||||||
#include "alarmEventRealTimeDock.h"
|
#include "alarmEventRealTimeDock.h"
|
||||||
#include "alarmEventMainDialog.h"
|
#include "alarmEventMainDialog.h"
|
||||||
|
#include "alarmEventConfigDialog.h"
|
||||||
|
|
||||||
#include <QKeyEvent>
|
#include <QKeyEvent>
|
||||||
#include <QMenu>
|
#include <QMenu>
|
||||||
|
|
@ -37,6 +38,7 @@ DashboardFrame::DashboardFrame(const QString& strName, dashboardFrame::frameType
|
||||||
, m_pPanelConfigurationDialog(nullptr)
|
, m_pPanelConfigurationDialog(nullptr)
|
||||||
, m_pAlarmEventRealTimeDock(nullptr)
|
, m_pAlarmEventRealTimeDock(nullptr)
|
||||||
, m_pAlarmEventMainDialog(nullptr)
|
, m_pAlarmEventMainDialog(nullptr)
|
||||||
|
, m_pAlarmEventConfigDialog(nullptr)
|
||||||
{
|
{
|
||||||
ui->setupUi(this);
|
ui->setupUi(this);
|
||||||
setAcceptDrops(true);
|
setAcceptDrops(true);
|
||||||
|
|
@ -49,6 +51,16 @@ DashboardFrame::DashboardFrame(const QString& strName, dashboardFrame::frameType
|
||||||
{
|
{
|
||||||
m_pAlarmEventRealTimeDock = new AlarmEventRealTimeDock(this);
|
m_pAlarmEventRealTimeDock = new AlarmEventRealTimeDock(this);
|
||||||
connect(m_pAlarmEventRealTimeDock, &AlarmEventRealTimeDock::viewAllRealTimeEvents, this, &DashboardFrame::onSignal_viewAllRealTimeEvents);
|
connect(m_pAlarmEventRealTimeDock, &AlarmEventRealTimeDock::viewAllRealTimeEvents, this, &DashboardFrame::onSignal_viewAllRealTimeEvents);
|
||||||
|
connect(m_pAlarmEventRealTimeDock, &AlarmEventRealTimeDock::openConfigDialog, this, &DashboardFrame::onSignal_openAlarmEventCfgDialog);
|
||||||
|
|
||||||
|
m_pAlarmEventMainDialog = new AlarmEventMainDialog(this);
|
||||||
|
connect(m_pAlarmEventMainDialog, SIGNAL(sgl_hide()), this, SLOT(onSignal_subDialogClose()));
|
||||||
|
connect(m_pAlarmEventMainDialog, &AlarmEventMainDialog::openConfigDialog, this, &DashboardFrame::onSignal_openAlarmEventCfgDialog);
|
||||||
|
m_pAlarmEventMainDialog->hide();
|
||||||
|
|
||||||
|
m_pAlarmEventConfigDialog = new AlarmEventConfigDialog(this);
|
||||||
|
connect(m_pAlarmEventConfigDialog, SIGNAL(sgl_hide()), this, SLOT(onSignal_subDialogClose()));
|
||||||
|
m_pAlarmEventConfigDialog->hide();
|
||||||
}
|
}
|
||||||
else
|
else
|
||||||
{
|
{
|
||||||
|
|
@ -156,6 +168,13 @@ void DashboardFrame::resizeEvent(QResizeEvent* event)
|
||||||
m_pAlarmEventMainDialog->setGeometry(nX, nY, nWidth, nHeight);
|
m_pAlarmEventMainDialog->setGeometry(nX, nY, nWidth, nHeight);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
if(m_pAlarmEventConfigDialog && m_pAlarmEventConfigDialog->isVisible())
|
||||||
|
{
|
||||||
|
int nX = this->geometry().x() + (this->width() - m_pAlarmEventConfigDialog->width()) * 0.5;
|
||||||
|
int nY = this->geometry().y() + (this->height() - m_pAlarmEventConfigDialog->height()) * 0.5;
|
||||||
|
m_pAlarmEventConfigDialog->move(nX, nY);
|
||||||
|
}
|
||||||
|
|
||||||
double ratioX = (double)event->size().width() / (double)event->oldSize().width();
|
double ratioX = (double)event->size().width() / (double)event->oldSize().width();
|
||||||
double ratioY = (double)event->size().height() / (double)event->oldSize().height();
|
double ratioY = (double)event->size().height() / (double)event->oldSize().height();
|
||||||
//qDebug() << ratioX << ", " << ratioY;
|
//qDebug() << ratioX << ", " << ratioY;
|
||||||
|
|
@ -604,12 +623,6 @@ void DashboardFrame::onBtnClicked_dashboardTab()
|
||||||
|
|
||||||
void DashboardFrame::onBtnClicked_showRealtimeEvents()
|
void DashboardFrame::onBtnClicked_showRealtimeEvents()
|
||||||
{
|
{
|
||||||
if(m_pAlarmEventMainDialog == nullptr)
|
|
||||||
{
|
|
||||||
m_pAlarmEventMainDialog = new AlarmEventMainDialog(this);
|
|
||||||
connect(m_pAlarmEventMainDialog, SIGNAL(sgl_hide()), this, SLOT(onSignal_subDialogClose()));
|
|
||||||
}
|
|
||||||
|
|
||||||
m_pAlarmEventMainDialog->setMode(Historical_Unconfirmed);
|
m_pAlarmEventMainDialog->setMode(Historical_Unconfirmed);
|
||||||
int nWidth = this->width() * 0.8;
|
int nWidth = this->width() * 0.8;
|
||||||
int nHeight = this->height() * 0.8;
|
int nHeight = this->height() * 0.8;
|
||||||
|
|
@ -623,12 +636,6 @@ void DashboardFrame::onBtnClicked_showRealtimeEvents()
|
||||||
|
|
||||||
void DashboardFrame::onBtnClicked_showHistoricalEvents()
|
void DashboardFrame::onBtnClicked_showHistoricalEvents()
|
||||||
{
|
{
|
||||||
if(m_pAlarmEventMainDialog == nullptr)
|
|
||||||
{
|
|
||||||
m_pAlarmEventMainDialog = new AlarmEventMainDialog(this);
|
|
||||||
connect(m_pAlarmEventMainDialog, SIGNAL(sgl_hide()), this, SLOT(onSignal_subDialogClose()));
|
|
||||||
}
|
|
||||||
|
|
||||||
m_pAlarmEventMainDialog->setMode(Historical_All);
|
m_pAlarmEventMainDialog->setMode(Historical_All);
|
||||||
int nWidth = this->width() * 0.8;
|
int nWidth = this->width() * 0.8;
|
||||||
int nHeight = this->height() * 0.8;
|
int nHeight = this->height() * 0.8;
|
||||||
|
|
@ -780,3 +787,13 @@ void DashboardFrame::onSignal_viewAllRealTimeEvents()
|
||||||
{
|
{
|
||||||
onBtnClicked_showRealtimeEvents();
|
onBtnClicked_showRealtimeEvents();
|
||||||
}
|
}
|
||||||
|
|
||||||
|
void DashboardFrame::onSignal_openAlarmEventCfgDialog()
|
||||||
|
{
|
||||||
|
showTransparentMask();
|
||||||
|
int nX = this->geometry().x() + (this->width() - m_pAlarmEventConfigDialog->width()) * 0.5;
|
||||||
|
int nY = this->geometry().y() + (this->height() - m_pAlarmEventConfigDialog->height()) * 0.5;
|
||||||
|
m_pAlarmEventConfigDialog->move(nX, nY);
|
||||||
|
m_pAlarmEventConfigDialog->show();
|
||||||
|
m_pAlarmEventConfigDialog->raise();
|
||||||
|
}
|
||||||
|
|
|
||||||
|
|
@ -246,7 +246,7 @@ QPushButton:pressed
|
||||||
</rect>
|
</rect>
|
||||||
</property>
|
</property>
|
||||||
<property name="currentIndex">
|
<property name="currentIndex">
|
||||||
<number>0</number>
|
<number>1</number>
|
||||||
</property>
|
</property>
|
||||||
<widget class="QWidget" name="page_dataFilter">
|
<widget class="QWidget" name="page_dataFilter">
|
||||||
<property name="styleSheet">
|
<property name="styleSheet">
|
||||||
|
|
@ -496,7 +496,7 @@ background-color:transparent;
|
||||||
<string>异常</string>
|
<string>异常</string>
|
||||||
</property>
|
</property>
|
||||||
<property name="checked">
|
<property name="checked">
|
||||||
<bool>true</bool>
|
<bool>false</bool>
|
||||||
</property>
|
</property>
|
||||||
</widget>
|
</widget>
|
||||||
<widget class="QCheckBox" name="pop_accident">
|
<widget class="QCheckBox" name="pop_accident">
|
||||||
|
|
|
||||||
|
|
@ -248,7 +248,7 @@ font: 700 18pt "微软雅黑";
|
||||||
<widget class="QPushButton" name="btnConfirmAll">
|
<widget class="QPushButton" name="btnConfirmAll">
|
||||||
<property name="geometry">
|
<property name="geometry">
|
||||||
<rect>
|
<rect>
|
||||||
<x>40</x>
|
<x>150</x>
|
||||||
<y>10</y>
|
<y>10</y>
|
||||||
<width>101</width>
|
<width>101</width>
|
||||||
<height>31</height>
|
<height>31</height>
|
||||||
|
|
@ -268,7 +268,7 @@ icon: url(:/images/icon_checked.png);
|
||||||
<widget class="QPushButton" name="btnSetting">
|
<widget class="QPushButton" name="btnSetting">
|
||||||
<property name="geometry">
|
<property name="geometry">
|
||||||
<rect>
|
<rect>
|
||||||
<x>170</x>
|
<x>1170</x>
|
||||||
<y>10</y>
|
<y>10</y>
|
||||||
<width>81</width>
|
<width>81</width>
|
||||||
<height>31</height>
|
<height>31</height>
|
||||||
|
|
|
||||||
|
|
@ -343,7 +343,7 @@ QPushButton:pressed
|
||||||
</rect>
|
</rect>
|
||||||
</property>
|
</property>
|
||||||
<property name="currentIndex">
|
<property name="currentIndex">
|
||||||
<number>2</number>
|
<number>0</number>
|
||||||
</property>
|
</property>
|
||||||
<widget class="QWidget" name="pageDataType">
|
<widget class="QWidget" name="pageDataType">
|
||||||
<property name="styleSheet">
|
<property name="styleSheet">
|
||||||
|
|
|
||||||
Loading…
Reference in New Issue