From 9816a045574e36bc471164f1dfcc5cb2c047f429 Mon Sep 17 00:00:00 2001 From: hawkeyexp Date: Thu, 5 Jul 2018 08:54:39 +0200 Subject: [PATCH] Init CS-NG Tab --- .../openauto/autoapp/UI/SettingsWindow.hpp | 2 + src/autoapp/UI/SettingsWindow.cpp | 104 +++++++ src/autoapp/UI/settingswindow.ui | 274 +++++++++++++++++- src/autoapp/autoapp.cpp | 1 + 4 files changed, 376 insertions(+), 5 deletions(-) diff --git a/include/f1x/openauto/autoapp/UI/SettingsWindow.hpp b/include/f1x/openauto/autoapp/UI/SettingsWindow.hpp index 058b1de..bf934ab 100644 --- a/include/f1x/openauto/autoapp/UI/SettingsWindow.hpp +++ b/include/f1x/openauto/autoapp/UI/SettingsWindow.hpp @@ -44,12 +44,14 @@ class SettingsWindow : public QWidget public: explicit SettingsWindow(configuration::IConfiguration::Pointer configuration, QWidget *parent = nullptr); ~SettingsWindow() override; + void loadSystemValues(); private slots: void onSave(); void onResetToDefaults(); void onUpdateScreenDPI(int value); void onShowBindings(); + void onUpdateSystemVolume(int value); private: void showEvent(QShowEvent* event); diff --git a/src/autoapp/UI/SettingsWindow.cpp b/src/autoapp/UI/SettingsWindow.cpp index 06f0ae2..d6a84e4 100644 --- a/src/autoapp/UI/SettingsWindow.cpp +++ b/src/autoapp/UI/SettingsWindow.cpp @@ -19,6 +19,10 @@ #include #include #include "ui_settingswindow.h" +#include +#include +#include +#include namespace f1x { @@ -45,6 +49,7 @@ SettingsWindow::SettingsWindow(configuration::IConfiguration::Pointer configurat connect(ui_->pushButtonSelectAll, &QPushButton::clicked, std::bind(&SettingsWindow::setButtonCheckBoxes, this, true)); connect(ui_->pushButtonResetToDefaults, &QPushButton::clicked, this, &SettingsWindow::onResetToDefaults); connect(ui_->pushButtonShowBindings, &QPushButton::clicked, this, &SettingsWindow::onShowBindings); + connect(ui_->horizontalSliderSystemVolume, &QSlider::valueChanged, this, &SettingsWindow::onUpdateSystemVolume); } SettingsWindow::~SettingsWindow() @@ -101,6 +106,8 @@ void SettingsWindow::onSave() configuration_->save(); + system((std::string("/usr/local/bin/oasysif setvolume ") + std::to_string(ui_->horizontalSliderSystemVolume->value())).c_str()); + this->close(); } @@ -233,6 +240,103 @@ void SettingsWindow::onUpdateScreenDPI(int value) ui_->labelScreenDPIValue->setText(QString::number(value)); } +void SettingsWindow::onUpdateSystemVolume(int value) +{ + ui_->labelSystemVolumeValue->setText(QString::number(value)); + //system((std::string("/usr/local/bin/oasysif setvolume ") + std::to_string(value)).c_str()); +} + +void SettingsWindow::loadSystemValues() +{ + // Get version string + QFileInfo vFile("/etc/crankshaft.build"); + if (vFile.exists()) { + QFile versionFile(QString("/etc/crankshaft.build")); + versionFile.open(QIODevice::ReadOnly); + QTextStream data_version(&versionFile); + QString valueversion = data_version.readAll(); + versionFile.close(); + ui_->valueSystemVersion->setText(valueversion); + } else { + ui_->valueSystemVersion->setText(""); + } + + // Get date string + QFileInfo dFile("/etc/crankshaft.date"); + if (dFile.exists()) { + QFile dateFile(QString("/etc/crankshaft.date")); + dateFile.open(QIODevice::ReadOnly); + QTextStream data_date(&dateFile); + QString valuedate = data_date.readAll(); + dateFile.close(); + ui_->valueSystemBuildDate->setText(valuedate); + } else { + ui_->valueSystemBuildDate->setText(""); + } + + system("/usr/local/bin/oasysif getvolume"); + QFileInfo rFile("/tmp/return_value"); + if (rFile.exists()) { + QFile returnFile(QString("/tmp/return_value")); + returnFile.open(QIODevice::ReadOnly); + QTextStream data_return(&returnFile); + QString currentvol = data_return.readAll(); + returnFile.close(); + ui_->labelSystemVolumeValue->setText(currentvol); + ui_->horizontalSliderSystemVolume->setValue(currentvol.toInt()); + } + + system("/usr/local/bin/oasysif getfreemem"); + if (rFile.exists()) { + QFile returnFile(QString("/tmp/return_value")); + returnFile.open(QIODevice::ReadOnly); + QTextStream data_return(&returnFile); + QString currentmem = data_return.readAll(); + returnFile.close(); + ui_->valueSystemFreeMem->setText(currentmem); + } + + system("/usr/local/bin/oasysif getcpufreq"); + if (rFile.exists()) { + QFile returnFile(QString("/tmp/return_value")); + returnFile.open(QIODevice::ReadOnly); + QTextStream data_return(&returnFile); + QString currentfreq = data_return.readAll(); + returnFile.close(); + ui_->valueSystemCPUFreq->setText(currentfreq); + } + + system("/usr/local/bin/oasysif getcputemp"); + if (rFile.exists()) { + QFile returnFile(QString("/tmp/return_value")); + returnFile.open(QIODevice::ReadOnly); + QTextStream data_return(&returnFile); + QString cputemp = data_return.readAll(); + returnFile.close(); + ui_->valueSystemCPUTemp->setText(cputemp); + } + + system("/usr/local/bin/oasysif getshutdown"); + if (rFile.exists()) { + QFile returnFile(QString("/tmp/return_value")); + returnFile.open(QIODevice::ReadOnly); + QTextStream data_return(&returnFile); + QString shutdowntimer = data_return.readAll(); + returnFile.close(); + ui_->valueShutdownTimer->setText(shutdowntimer); + } + + system("/usr/local/bin/oasysif getdisconnect"); + if (rFile.exists()) { + QFile returnFile(QString("/tmp/return_value")); + returnFile.open(QIODevice::ReadOnly); + QTextStream data_return(&returnFile); + QString disconnecttimer = data_return.readAll(); + returnFile.close(); + ui_->valueDisconnectTimer->setText(disconnecttimer); + } +} + void SettingsWindow::onShowBindings() { const QString message = QString("Enter -> [Enter] \n") diff --git a/src/autoapp/UI/settingswindow.ui b/src/autoapp/UI/settingswindow.ui index 4028487..e3a54f2 100644 --- a/src/autoapp/UI/settingswindow.ui +++ b/src/autoapp/UI/settingswindow.ui @@ -27,7 +27,8 @@ background-color: rgb(46, 52, 54); -color: rgb(238, 238, 236); +color: rgb(238, 238, 236); + @@ -74,7 +75,7 @@ color: rgb(238, 238, 236); - 0 + 1 @@ -290,7 +291,7 @@ color: rgb(238, 238, 236); 60 80 - 311 + 360 31 @@ -405,9 +406,13 @@ color: rgb(238, 238, 236); 20 40 531 - 31 + 34 + + QSlider::handle:horizontal { background: white; height: 32px; width: 52px; margin: 0 0;} +QSlider::groove:horizontal { background: #6d6d6d; height: 32px;} + 400 @@ -896,7 +901,7 @@ color: rgb(238, 238, 236); 180 160 - 271 + 320 31 @@ -958,6 +963,265 @@ color: rgb(238, 238, 236); + + + Crankshaft NG + + + + + 0 + 10 + 621 + 91 + + + + System Information + + + + + 10 + 30 + 80 + 23 + + + + Version: + + + + + + 90 + 34 + 80 + 23 + + + + Qt::AlignRight|Qt::AlignTop|Qt::AlignTrailing + + + + + + 10 + 60 + 80 + 23 + + + + Build Date: + + + + + + 90 + 64 + 80 + 23 + + + + Qt::AlignRight|Qt::AlignTop|Qt::AlignTrailing + + + + + + 200 + 30 + 110 + 23 + + + + Free Memory: + + + + + + 310 + 34 + 80 + 23 + + + + Qt::AlignRight|Qt::AlignTop|Qt::AlignTrailing + + + + + + 200 + 60 + 110 + 23 + + + + CPU Frequency: + + + + + + 310 + 64 + 80 + 23 + + + + Qt::AlignRight|Qt::AlignTop|Qt::AlignTrailing + + + + + + 420 + 30 + 80 + 23 + + + + CPU Temp: + + + + + + 500 + 34 + 80 + 23 + + + + Qt::AlignRight|Qt::AlignTop|Qt::AlignTrailing + + + + + + + 0 + 110 + 621 + 81 + + + + Master System Volume + + + + + 570 + 40 + 41 + 31 + + + + 100 + + + + + + 20 + 40 + 531 + 32 + + + + QSlider::handle:horizontal { background: white; height: 32px; width: 52px; margin: 0 0;} +QSlider::groove:horizontal { background: #6d6d6d; height: 32px;} + + + 100 + + + Qt::Horizontal + + + + + + + 0 + 200 + 621 + 91 + + + + Timer + + + + + 10 + 30 + 150 + 23 + + + + Shutdown Timeout: + + + + + + 160 + 34 + 240 + 23 + + + + Qt::AlignLeading|Qt::AlignLeft|Qt::AlignTop + + + + + + 10 + 60 + 150 + 23 + + + + Disconnect Timeout: + + + + + + 160 + 64 + 240 + 23 + + + + Qt::AlignLeading|Qt::AlignLeft|Qt::AlignTop + + + + diff --git a/src/autoapp/autoapp.cpp b/src/autoapp/autoapp.cpp index 20fd92c..84cf60a 100644 --- a/src/autoapp/autoapp.cpp +++ b/src/autoapp/autoapp.cpp @@ -103,6 +103,7 @@ int main(int argc, char* argv[]) QObject::connect(&mainWindow, &autoapp::ui::MainWindow::exit, []() { std::exit(0); }); QObject::connect(&mainWindow, &autoapp::ui::MainWindow::reboot, []() { system("touch /tmp/reboot"); std::exit(0); }); QObject::connect(&mainWindow, &autoapp::ui::MainWindow::openSettings, &settingsWindow, &autoapp::ui::SettingsWindow::showFullScreen); + QObject::connect(&mainWindow, &autoapp::ui::MainWindow::openSettings, &settingsWindow, &autoapp::ui::SettingsWindow::loadSystemValues); QObject::connect(&mainWindow, &autoapp::ui::MainWindow::openConnectDialog, &connectDialog, &autoapp::ui::ConnectDialog::exec); qApplication.setOverrideCursor(Qt::BlankCursor);