setting page using local thread to fetch device data,battery bug fixes
This commit is contained in:
@@ -20,6 +20,7 @@
|
||||
#include "event/EventCenter.h"
|
||||
#include "device/DeviceManager.h"
|
||||
#include "json/cmdhelper.h"
|
||||
#include "appvals/AppGlobalValues.h"
|
||||
|
||||
systemSettingForm::systemSettingForm(QWidget* parent) :
|
||||
QWidget(parent),
|
||||
@@ -27,31 +28,9 @@ systemSettingForm::systemSettingForm(QWidget* parent) :
|
||||
{
|
||||
ui->setupUi(this);
|
||||
|
||||
//[step]
|
||||
//1)get total size and setMaxValue
|
||||
//2)calculate percent(total-85)/total*100 and setAlarmValue
|
||||
//3)get used size and setValue
|
||||
ui->lbl_size->setText(tr("Loading..."));
|
||||
ui->lbl_used->setText(tr("Loading..."));
|
||||
|
||||
double dsize;
|
||||
if (cmdHelper::Instance()->getDiskSize(dsize))
|
||||
{
|
||||
m_disksize = dsize;
|
||||
}
|
||||
else
|
||||
{
|
||||
m_disksize = -1.0;
|
||||
}
|
||||
updateDiskSize();
|
||||
double duse;
|
||||
if (cmdHelper::Instance()->getDiskUsed(duse))
|
||||
{
|
||||
m_diskuse = duse;
|
||||
}
|
||||
else
|
||||
{
|
||||
m_diskuse = -1.0;
|
||||
}
|
||||
updateDiskUse();
|
||||
//style init
|
||||
//ui->btn_dicom->setToolButtonStyle(Qt::ToolButtonTextBesideIcon);
|
||||
ui->btn_dicom->setIcon(QIcon(":/icons/dicomsettings.png"));
|
||||
@@ -69,25 +48,42 @@ systemSettingForm::systemSettingForm(QWidget* parent) :
|
||||
//ui->lbl_protocal->setFixedWidth(100);
|
||||
ui->lbl_verify->setFixedWidth(100);
|
||||
|
||||
|
||||
//data init
|
||||
ui->btnPro->setText(JsonObject::Instance()->defaultProtocal());
|
||||
ui->btnPro->setObjectName("BigBtn");
|
||||
ui->btnFlt->setText(JsonObject::Instance()->defaultFilter());
|
||||
ui->btnFlt->setObjectName("BigBtn");
|
||||
|
||||
connect(EventCenter::Default(), &EventCenter::ResponseDeviceStoragement, [=](QObject*) {
|
||||
double duse;
|
||||
if (cmdHelper::Instance()->getDiskUsed(duse))
|
||||
////test begin
|
||||
//flag_disksize = true;
|
||||
//m_disksize = 75.0;
|
||||
////test end
|
||||
//updateStorageSize();
|
||||
////test begin
|
||||
//flag_diskuse = true;
|
||||
//m_diskuse = 23.0;
|
||||
////test end
|
||||
//updateStorageUsed();
|
||||
|
||||
|
||||
diskInfoCaller = QThread::create([=]() {
|
||||
|
||||
double disksize = 0;
|
||||
flag_disksize = cmdHelper::Instance()->getDiskSize(disksize);
|
||||
m_disksize = disksize;
|
||||
updateStorageSize();
|
||||
|
||||
while (true)
|
||||
{
|
||||
double duse = 0;
|
||||
flag_diskuse = cmdHelper::Instance()->getDiskUsed(duse);
|
||||
m_diskuse = duse;
|
||||
updateStorageUsed();
|
||||
QMetaObject::invokeMethod(ui->batIcon, "startAnimation", Qt::QueuedConnection);
|
||||
QThread::msleep(1000);
|
||||
}
|
||||
else
|
||||
{
|
||||
m_diskuse = -1.0;
|
||||
}
|
||||
updateDiskUse();
|
||||
});
|
||||
diskInfoCaller->start();
|
||||
|
||||
//connection
|
||||
connect(ui->swt_verify, &ImageSwitch::clicked, [=]() {
|
||||
@@ -149,21 +145,42 @@ systemSettingForm::systemSettingForm(QWidget* parent) :
|
||||
|
||||
connect(EventCenter::Default(), &EventCenter::ReloadLanguage, [=]() {
|
||||
ui->retranslateUi(this);
|
||||
|
||||
ui->btnPro->setText(JsonObject::Instance()->defaultProtocal());
|
||||
ui->btnFlt->setText(JsonObject::Instance()->defaultFilter());
|
||||
ui->swt_verify->setChecked(true);
|
||||
updateDiskSize();
|
||||
updateDiskUse();
|
||||
updateStorageSize();
|
||||
updateStorageUsed();
|
||||
|
||||
});
|
||||
}
|
||||
|
||||
|
||||
void systemSettingForm::updateDiskSize()
|
||||
systemSettingForm::~systemSettingForm()
|
||||
{
|
||||
if (m_disksize != -1.0)
|
||||
diskInfoCaller->quit();
|
||||
diskInfoCaller->wait();
|
||||
}
|
||||
|
||||
void systemSettingForm::updateStorageUsed()
|
||||
{
|
||||
|
||||
if (flag_diskuse)
|
||||
{
|
||||
ui->batIcon->setValue(m_diskuse);
|
||||
ui->lbl_used->setText(tr("used:\t%1G").arg(m_diskuse));
|
||||
}
|
||||
else
|
||||
{
|
||||
ui->lbl_used->setText(tr("Get disk used size fail!"));
|
||||
}
|
||||
|
||||
}
|
||||
void systemSettingForm::updateStorageSize()
|
||||
{
|
||||
//bool flag = AppGlobalValues::StorageFlag();
|
||||
if (flag_disksize)
|
||||
{
|
||||
//double total_size = AppGlobalValues::StorageSize();
|
||||
ui->batIcon->setMaxValue(m_disksize);
|
||||
double aValue = (m_disksize - JsonObject::Instance()->storageAlarmSize().toDouble()) / m_disksize;
|
||||
ui->batIcon->setAlarmValue(aValue);
|
||||
@@ -173,23 +190,4 @@ void systemSettingForm::updateDiskSize()
|
||||
{
|
||||
ui->lbl_size->setText(tr("Get disk total size fail!"));
|
||||
}
|
||||
|
||||
}
|
||||
void systemSettingForm::updateDiskUse()
|
||||
{
|
||||
if (m_diskuse != -1.0)
|
||||
{
|
||||
ui->batIcon->setValue(m_diskuse);
|
||||
ui->lbl_used->setText(tr("used:\t%1G").arg(m_diskuse));
|
||||
}
|
||||
else
|
||||
{
|
||||
ui->lbl_used->setText(tr("Get disk used size fail!"));
|
||||
}
|
||||
}
|
||||
|
||||
systemSettingForm::~systemSettingForm()
|
||||
{
|
||||
delete ui;
|
||||
}
|
||||
|
||||
|
||||
Reference in New Issue
Block a user