latest dev

This commit is contained in:
hawkeyexp 2018-12-05 13:09:36 +01:00
parent 802393d427
commit 14662664ed
18 changed files with 1043 additions and 623 deletions

BIN
assets/aausb-hot.png Normal file

Binary file not shown.

After

Width:  |  Height:  |  Size: 5.6 KiB

BIN
assets/aawifi-hot.png Normal file

Binary file not shown.

After

Width:  |  Height:  |  Size: 5.6 KiB

View File

@ -5,6 +5,8 @@
<file>ico_setting.png</file> <file>ico_setting.png</file>
<file>ico_info.png</file> <file>ico_info.png</file>
<file>ico_bluetooth.png</file> <file>ico_bluetooth.png</file>
<file>aausb-hot.png</file>
<file>aawifi-hot.png</file>
<file>cursor-hot.png</file> <file>cursor-hot.png</file>
<file>power-hot.png</file> <file>power-hot.png</file>
<file>settings-hot.png</file> <file>settings-hot.png</file>

View File

@ -26,6 +26,8 @@ class ConnectDialog : public QDialog
public: public:
explicit ConnectDialog(boost::asio::io_service& ioService, aasdk::tcp::ITCPWrapper& tcpWrapper, openauto::autoapp::configuration::IRecentAddressesList& recentAddressesList, QWidget *parent = nullptr); explicit ConnectDialog(boost::asio::io_service& ioService, aasdk::tcp::ITCPWrapper& tcpWrapper, openauto::autoapp::configuration::IRecentAddressesList& recentAddressesList, QWidget *parent = nullptr);
~ConnectDialog() override; ~ConnectDialog() override;
void autoconnect();
void loadClientList();
signals: signals:
void connectToDevice(const QString& ipAddress); void connectToDevice(const QString& ipAddress);
@ -42,7 +44,6 @@ private slots:
private: private:
void insertIpAddress(const std::string& ipAddress); void insertIpAddress(const std::string& ipAddress);
void loadRecentList(); void loadRecentList();
void loadTempRecentList();
void setControlsEnabledStatus(bool status); void setControlsEnabledStatus(bool status);
void connectHandler(const boost::system::error_code& ec, const std::string& ipAddress, aasdk::tcp::ITCPEndpoint::SocketPointer socket); void connectHandler(const boost::system::error_code& ec, const std::string& ipAddress, aasdk::tcp::ITCPEndpoint::SocketPointer socket);

View File

@ -86,6 +86,8 @@ signals:
void showAlphaSlider(); void showAlphaSlider();
void showRearCam(); void showRearCam();
void hideRearCam(); void hideRearCam();
void TriggerAppStart();
void TriggerAppStop();
private slots: private slots:
void on_horizontalSliderBrightness_valueChanged(int value); void on_horizontalSliderBrightness_valueChanged(int value);
@ -143,6 +145,8 @@ private slots:
void scanFiles(); void scanFiles();
void tmpChanged(); void tmpChanged();
void setTrigger(); void setTrigger();
void setRetryUSBConnect();
void resetRetryUSBMessage();
private: private:
Ui::MainWindow* ui_; Ui::MainWindow* ui_;

View File

@ -0,0 +1,30 @@
#include <QDialog>
namespace Ui {
class Warning;
}
namespace f1x
{
namespace openauto
{
namespace autoapp
{
namespace ui
{
class Warning : public QDialog
{
Q_OBJECT
public:
explicit Warning(QWidget *parent = nullptr);
~Warning() override;
Ui::Warning* ui_;
};
}
}
}
}

View File

@ -157,13 +157,13 @@ void AndroidAutoEntity::onServiceDiscoveryRequest(const aasdk::proto::messages::
aasdk::proto::messages::ServiceDiscoveryResponse serviceDiscoveryResponse; aasdk::proto::messages::ServiceDiscoveryResponse serviceDiscoveryResponse;
serviceDiscoveryResponse.mutable_channels()->Reserve(256); serviceDiscoveryResponse.mutable_channels()->Reserve(256);
serviceDiscoveryResponse.set_head_unit_name("OpenAuto"); serviceDiscoveryResponse.set_head_unit_name("Crankshaft-NG");
serviceDiscoveryResponse.set_car_model("Universal"); serviceDiscoveryResponse.set_car_model("Universal");
serviceDiscoveryResponse.set_car_year("2018"); serviceDiscoveryResponse.set_car_year("2018");
serviceDiscoveryResponse.set_car_serial("20180301"); serviceDiscoveryResponse.set_car_serial("20180301");
serviceDiscoveryResponse.set_left_hand_drive_vehicle(configuration_->getHandednessOfTrafficType() == configuration::HandednessOfTrafficType::LEFT_HAND_DRIVE); serviceDiscoveryResponse.set_left_hand_drive_vehicle(configuration_->getHandednessOfTrafficType() == configuration::HandednessOfTrafficType::LEFT_HAND_DRIVE);
serviceDiscoveryResponse.set_headunit_manufacturer("f1x"); serviceDiscoveryResponse.set_headunit_manufacturer("f1x");
serviceDiscoveryResponse.set_headunit_model("OpenAuto Autoapp"); serviceDiscoveryResponse.set_headunit_model("Crankshaft-NG Autoapp");
serviceDiscoveryResponse.set_sw_build("1"); serviceDiscoveryResponse.set_sw_build("1");
serviceDiscoveryResponse.set_sw_version("1.0"); serviceDiscoveryResponse.set_sw_version("1.0");
serviceDiscoveryResponse.set_can_play_native_media_during_vr(false); serviceDiscoveryResponse.set_can_play_native_media_during_vr(false);

View File

@ -19,8 +19,7 @@
#include <aasdk_proto/DrivingStatusEnum.pb.h> #include <aasdk_proto/DrivingStatusEnum.pb.h>
#include <f1x/openauto/Common/Log.hpp> #include <f1x/openauto/Common/Log.hpp>
#include <f1x/openauto/autoapp/Service/SensorService.hpp> #include <f1x/openauto/autoapp/Service/SensorService.hpp>
#include <QFile> #include <fstream>
#include <QFileInfo>
namespace f1x namespace f1x
{ {
@ -123,11 +122,7 @@ void SensorService::sendDrivingStatusUnrestricted()
void SensorService::sendNightData() void SensorService::sendNightData()
{ {
aasdk::proto::messages::SensorEventIndication indication; aasdk::proto::messages::SensorEventIndication indication;
if (!std::ifstream("/tmp/night_mode_enabled")) {
QFileInfo nightSwitchFile("/tmp/night_mode_enabled");
bool nightSwitchExists = nightSwitchFile.exists();
if (!nightSwitchExists) {
OPENAUTO_LOG(error) << "[CS] [SensorService] Mode day triggered"; OPENAUTO_LOG(error) << "[CS] [SensorService] Mode day triggered";
indication.add_night_mode()->set_is_night(false); indication.add_night_mode()->set_is_night(false);
} else { } else {

View File

@ -18,6 +18,7 @@
#include <f1x/openauto/Common/Log.hpp> #include <f1x/openauto/Common/Log.hpp>
#include <f1x/openauto/autoapp/Service/VideoService.hpp> #include <f1x/openauto/autoapp/Service/VideoService.hpp>
#include <fstream>
namespace f1x namespace f1x
{ {
@ -162,8 +163,14 @@ void VideoService::onVideoFocusRequest(const aasdk::proto::messages::VideoFocusR
// stop video service on go back to openauto // stop video service on go back to openauto
if (request.focus_mode() == 2) { if (request.focus_mode() == 2) {
OPENAUTO_LOG(info) << "[VideoService] Stop video service..."; OPENAUTO_LOG(info) << "[VideoService] Exit entity...";
VideoService::stop(); try {
if (!std::ifstream("/tmp/entityexit")) {
std::ofstream("/tmp/entityexit");
}
} catch (...) {
OPENAUTO_LOG(error) << "[VideoService] Error in creating entityexit";
}
} }
} }

View File

@ -3,6 +3,7 @@
#include "ui_connectdialog.h" #include "ui_connectdialog.h"
#include <QFileInfo> #include <QFileInfo>
#include <QTextStream> #include <QTextStream>
#include <fstream>
namespace f1x namespace f1x
{ {
@ -26,14 +27,11 @@ ConnectDialog::ConnectDialog(boost::asio::io_service& ioService, aasdk::tcp::ITC
ui_->setupUi(this); ui_->setupUi(this);
connect(ui_->pushButtonCancel, &QPushButton::clicked, this, &ConnectDialog::close); connect(ui_->pushButtonCancel, &QPushButton::clicked, this, &ConnectDialog::close);
connect(ui_->pushButtonConnect, &QPushButton::clicked, this, &ConnectDialog::onConnectButtonClicked); connect(ui_->pushButtonConnect, &QPushButton::clicked, this, &ConnectDialog::onConnectButtonClicked);
connect(ui_->listViewRecent, &QListView::clicked, this, &ConnectDialog::onRecentAddressClicked);
connect(this, &ConnectDialog::connectionSucceed, this, &ConnectDialog::onConnectionSucceed); connect(this, &ConnectDialog::connectionSucceed, this, &ConnectDialog::onConnectionSucceed);
connect(this, &ConnectDialog::connectionFailed, this, &ConnectDialog::onConnectionFailed); connect(this, &ConnectDialog::connectionFailed, this, &ConnectDialog::onConnectionFailed);
connect(ui_->pushButtonUpdate, &QPushButton::clicked, this, &ConnectDialog::onUpdateButtonClicked); connect(ui_->pushButtonUpdate, &QPushButton::clicked, this, &ConnectDialog::onUpdateButtonClicked);
ui_->listViewRecent->setModel(&recentAddressesModel_);
this->loadRecentList(); this->loadRecentList();
loadTempRecentList();
ui_->progressBarConnect->hide(); ui_->progressBarConnect->hide();
ui_->lineEditIPAddress->setFocus(); ui_->lineEditIPAddress->setFocus();
@ -59,13 +57,12 @@ void ConnectDialog::onConnectButtonClicked()
{ {
emit connectionFailed(QString(se.what())); emit connectionFailed(QString(se.what()));
} }
loadTempRecentList();
} }
void ConnectDialog::onUpdateButtonClicked() void ConnectDialog::onUpdateButtonClicked()
{ {
system("/usr/local/bin/autoapp_helper updaterecent"); system("/usr/local/bin/autoapp_helper updaterecent");
loadTempRecentList(); loadClientList();
} }
void ConnectDialog::connectHandler(const boost::system::error_code& ec, const std::string& ipAddress, aasdk::tcp::ITCPEndpoint::SocketPointer socket) void ConnectDialog::connectHandler(const boost::system::error_code& ec, const std::string& ipAddress, aasdk::tcp::ITCPEndpoint::SocketPointer socket)
@ -101,11 +98,6 @@ void ConnectDialog::onConnectionFailed(const QString& message)
void ConnectDialog::onRecentAddressClicked(const QModelIndex& index) void ConnectDialog::onRecentAddressClicked(const QModelIndex& index)
{ {
const auto& recentAddressesList = recentAddressesList_.getList(); const auto& recentAddressesList = recentAddressesList_.getList();
if(static_cast<size_t>(index.row()) <= recentAddressesList.size())
{
ui_->lineEditIPAddress->setText(QString::fromStdString(recentAddressesList.at(index.row())));
}
} }
void ConnectDialog::setControlsEnabledStatus(bool status) void ConnectDialog::setControlsEnabledStatus(bool status)
@ -113,7 +105,6 @@ void ConnectDialog::setControlsEnabledStatus(bool status)
ui_->pushButtonConnect->setVisible(status); ui_->pushButtonConnect->setVisible(status);
ui_->pushButtonCancel->setEnabled(status); ui_->pushButtonCancel->setEnabled(status);
ui_->lineEditIPAddress->setEnabled(status); ui_->lineEditIPAddress->setEnabled(status);
ui_->listViewRecent->setEnabled(status);
} }
void ConnectDialog::loadRecentList() void ConnectDialog::loadRecentList()
@ -129,19 +120,44 @@ void ConnectDialog::loadRecentList()
recentAddressesModel_.setStringList(stringList); recentAddressesModel_.setStringList(stringList);
} }
void ConnectDialog::loadTempRecentList() void ConnectDialog::loadClientList()
{ {
QFileInfo recentFile("/tmp/temp_recent_list"); int cleaner = ui_->listWidgetClients->count();
if (recentFile.exists()) { while (cleaner > -1) {
ui_->listWidgetClients->takeItem(cleaner);
cleaner--;
}
if (std::ifstream("/tmp/temp_recent_list")) {
QFile versionFile(QString("/tmp/temp_recent_list")); QFile versionFile(QString("/tmp/temp_recent_list"));
versionFile.open(QIODevice::ReadOnly); versionFile.open(QIODevice::ReadOnly);
QTextStream data(&versionFile); QTextStream data(&versionFile);
while (!data.atEnd()) while (!data.atEnd())
{ {
QString ip = data.readLine(); QString ip = data.readLine();
ConnectDialog::insertIpAddress(ip.toStdString()); ui_->listWidgetClients->addItem(ip);
ui_->lineEditIPAddress->setText(ip);
} }
versionFile.close(); versionFile.close();
if (ui_->listWidgetClients->count() == 1) {
this->setControlsEnabledStatus(false);
const auto& ipAddress = ui_->lineEditIPAddress->text().toStdString();
auto socket = std::make_shared<boost::asio::ip::tcp::socket>(ioService_);
ui_->progressBarConnect->show();
try
{
tcpWrapper_.asyncConnect(*socket, ipAddress, 5277, std::bind(&ConnectDialog::connectHandler, this, std::placeholders::_1, ipAddress, socket));
}
catch(const boost::system::system_error& se)
{
emit connectionFailed(QString(se.what()));
}
}
} else {
ui_->lineEditIPAddress->setText("");
} }
} }

View File

@ -30,6 +30,11 @@
#include <QScreen> #include <QScreen>
#include <QRect> #include <QRect>
#include <QFileSystemWatcher> #include <QFileSystemWatcher>
#include <iostream>
#include <fstream>
#include <cstdio>
#include <unistd.h>
#include <f1x/openauto/Common/Log.hpp>
namespace f1x namespace f1x
{ {
@ -171,13 +176,14 @@ MainWindow::MainWindow(configuration::IConfiguration::Pointer configuration, QWi
connect(ui_->pushButtonMusic2, &QPushButton::clicked, this, &MainWindow::playerShow); connect(ui_->pushButtonMusic2, &QPushButton::clicked, this, &MainWindow::playerShow);
connect(ui_->pushButtonBack, &QPushButton::clicked, this, &MainWindow::playerHide); connect(ui_->pushButtonBack, &QPushButton::clicked, this, &MainWindow::playerHide);
connect(ui_->pushButtonPlayerBack, &QPushButton::clicked, this, &MainWindow::playerHide); connect(ui_->pushButtonPlayerBack, &QPushButton::clicked, this, &MainWindow::playerHide);
connect(ui_->pushButtonAndroidAuto, &QPushButton::clicked, this, &MainWindow::TriggerAppStart);
connect(ui_->pushButtonAndroidAuto, &QPushButton::clicked, this, &MainWindow::setRetryUSBConnect);
connect(ui_->pushButtonAndroidAuto2, &QPushButton::clicked, this, &MainWindow::TriggerAppStart);
connect(ui_->pushButtonAndroidAuto2, &QPushButton::clicked, this, &MainWindow::setRetryUSBConnect);
// by default hide bluetooth button on init // by default hide bluetooth button on init
ui_->pushButtonBluetooth->hide(); ui_->pushButtonBluetooth->hide();
// by default hide bluetooth button on init
ui_->pushButtonAndroidAuto->hide();
// by default hide media player // by default hide media player
ui_->mediaWidget->hide(); ui_->mediaWidget->hide();
ui_->pushButtonUSB->hide(); ui_->pushButtonUSB->hide();
@ -185,6 +191,10 @@ MainWindow::MainWindow(configuration::IConfiguration::Pointer configuration, QWi
ui_->SysinfoTopLeft->hide(); ui_->SysinfoTopLeft->hide();
ui_->pushButtonWifiSetup->hide(); ui_->pushButtonWifiSetup->hide();
//ui_->pushButtonNoDevice->hide();
ui_->pushButtonAndroidAuto->hide();
ui_->pushButtonAndroidAuto2->hide();
QTimer *timer=new QTimer(this); QTimer *timer=new QTimer(this);
connect(timer, SIGNAL(timeout()),this,SLOT(showTime())); connect(timer, SIGNAL(timeout()),this,SLOT(showTime()));
timer->start(1000); timer->start(1000);
@ -236,16 +246,16 @@ MainWindow::MainWindow(configuration::IConfiguration::Pointer configuration, QWi
ui_->exitWidget->hide(); ui_->exitWidget->hide();
ui_->horizontalWidgetPower->hide(); ui_->horizontalWidgetPower->hide();
// as default hide phone connected label
ui_->phoneConnected->hide();
// as default hide muted button // as default hide muted button
ui_->pushButtonUnMute->hide(); ui_->pushButtonUnMute->hide();
// hide wifi if not forced // hide wifi if not forced
if (!this->wifiButtonForce) { if (!this->wifiButtonForce) {
ui_->pushButtonWifi->hide(); //ui_->pushButtonWifi->hide();
ui_->pushButtonWifi2->hide(); ui_->pushButtonWifi2->hide();
ui_->AAWIFIWidget->hide();
} else {
ui_->AAUSBWidget->hide();
} }
// set custom buttons if file enabled by trigger file // set custom buttons if file enabled by trigger file
@ -406,8 +416,7 @@ MainWindow::MainWindow(configuration::IConfiguration::Pointer configuration, QWi
} }
// read param file // read param file
QFileInfo audioparamFile("/boot/crankshaft/volume"); if (std::ifstream("/boot/crankshaft/volume")) {
if (audioparamFile.exists()) {
QFile audioparamFile(QString("/boot/crankshaft/volume")); QFile audioparamFile(QString("/boot/crankshaft/volume"));
audioparamFile.open(QIODevice::ReadOnly); audioparamFile.open(QIODevice::ReadOnly);
QTextStream data_param(&audioparamFile); QTextStream data_param(&audioparamFile);
@ -503,9 +512,9 @@ MainWindow::MainWindow(configuration::IConfiguration::Pointer configuration, QWi
} }
// hide alpha controls if enabled in settings // hide alpha controls if enabled in settings
if (!configuration->hideAlpha()) { //if (!configuration->hideAlpha()) {
ui_->pushButtonAlpha->show(); // ui_->pushButtonAlpha->show();
} //}
// init alpha values // init alpha values
ui_->horizontalSliderAlpha->setValue(int(configuration->getAlphaTrans())); ui_->horizontalSliderAlpha->setValue(int(configuration->getAlphaTrans()));
@ -776,6 +785,9 @@ void f1x::openauto::autoapp::ui::MainWindow::on_horizontalSliderAlpha_valueChang
ui_->pushButtonDummy3->setStyleSheet( "background-color: rgba(186, 189, 182, " + alp + " ); border-radius: 4px; border: 2px solid rgba(255,255,255,0.5);"); ui_->pushButtonDummy3->setStyleSheet( "background-color: rgba(186, 189, 182, " + alp + " ); border-radius: 4px; border: 2px solid rgba(255,255,255,0.5);");
ui_->pushButtonDebug->setStyleSheet( "background-color: rgba(85, 87, 83, " + alp + " ); border-radius: 4px; border: 2px solid rgba(255,255,255,0.5);"); ui_->pushButtonDebug->setStyleSheet( "background-color: rgba(85, 87, 83, " + alp + " ); border-radius: 4px; border: 2px solid rgba(255,255,255,0.5);");
ui_->pushButtonMusic->setStyleSheet( "background-color: rgba(78, 154, 6, " + alp + " ); border-radius: 4px; border: 2px solid rgba(255,255,255,0.5); color: rgb(255,255,255);"); ui_->pushButtonMusic->setStyleSheet( "background-color: rgba(78, 154, 6, " + alp + " ); border-radius: 4px; border: 2px solid rgba(255,255,255,0.5); color: rgb(255,255,255);");
ui_->pushButtonAndroidAuto->setStyleSheet( "background-color: rgba(48, 140, 198, " + alp + " ); border-radius: 4px; border: 2px solid rgba(255,255,255,0.5); color: rgb(255,255,255);");
ui_->pushButtonNoDevice->setStyleSheet( "background-color: rgba(48, 140, 198, " + alp + " ); border-radius: 4px; border: 2px solid rgba(255,255,255,0.5); color: rgb(255,255,255);");
ui_->pushButtonNoWiFiDevice->setStyleSheet( "background-color: rgba(252, 175, 62, " + alp + " ); border-radius: 4px; border: 2px solid rgba(255,255,255,0.5); color: rgb(255,255,255);");
} }
void f1x::openauto::autoapp::ui::MainWindow::switchGuiToNight() void f1x::openauto::autoapp::ui::MainWindow::switchGuiToNight()
@ -1185,6 +1197,20 @@ void f1x::openauto::autoapp::ui::MainWindow::setTrigger()
QTimer::singleShot(10000, this, SLOT(scanFolders())); QTimer::singleShot(10000, this, SLOT(scanFolders()));
} }
void f1x::openauto::autoapp::ui::MainWindow::setRetryUSBConnect()
{
ui_->SysinfoTopLeft->setText("Trying USB reconnect ...");
ui_->SysinfoTopLeft->show();
QTimer::singleShot(10000, this, SLOT(resetRetryUSBMessage()));
}
void f1x::openauto::autoapp::ui::MainWindow::resetRetryUSBMessage()
{
ui_->SysinfoTopLeft->setText("");
ui_->SysinfoTopLeft->hide();
}
void f1x::openauto::autoapp::ui::MainWindow::scanFolders() void f1x::openauto::autoapp::ui::MainWindow::scanFolders()
{ {
try { try {
@ -1317,17 +1343,26 @@ void f1x::openauto::autoapp::ui::MainWindow::on_pushButtonBackToPlayer_clicked()
void f1x::openauto::autoapp::ui::MainWindow::on_StateChanged(QMediaPlayer::State state) void f1x::openauto::autoapp::ui::MainWindow::on_StateChanged(QMediaPlayer::State state)
{ {
if (state == QMediaPlayer::StoppedState || state == QMediaPlayer::PausedState) { if (state == QMediaPlayer::StoppedState || state == QMediaPlayer::PausedState) {
system("rm -f /tmp/media_playing"); std::remove("/tmp/media_playing");
} else { } else {
system("touch /tmp/media_playing"); std::ofstream("/tmp/media_playing");
} }
} }
void f1x::openauto::autoapp::ui::MainWindow::tmpChanged() void f1x::openauto::autoapp::ui::MainWindow::tmpChanged()
{ {
try {
if (std::ifstream("/tmp/entityexit")) {
MainWindow::TriggerAppStop();
usleep(1000000);
std::remove("/tmp/entityexit");
}
} catch (...) {
OPENAUTO_LOG(error) << "[OpenAuto] Error in entityexit";
}
// check if system is in display off mode (tap2wake) // check if system is in display off mode (tap2wake)
QFileInfo blankFile("/tmp/blankscreen"); if (std::ifstream("/tmp/blankscreen")) {
if (blankFile.exists()) {
if (ui_->centralWidget->isVisible() == true) { if (ui_->centralWidget->isVisible() == true) {
ui_->centralWidget->hide(); ui_->centralWidget->hide();
} }
@ -1338,8 +1373,7 @@ void f1x::openauto::autoapp::ui::MainWindow::tmpChanged()
} }
// check if custom command needs black background // check if custom command needs black background
QFileInfo blackFile("/tmp/blackscreen"); if (std::ifstream("/tmp/blackscreen")) {
if (blackFile.exists()) {
if (ui_->centralWidget->isVisible() == true) { if (ui_->centralWidget->isVisible() == true) {
ui_->centralWidget->hide(); ui_->centralWidget->hide();
this->setStyleSheet("QMainWindow {background-color: rgb(0,0,0);}"); this->setStyleSheet("QMainWindow {background-color: rgb(0,0,0);}");
@ -1353,15 +1387,18 @@ void f1x::openauto::autoapp::ui::MainWindow::tmpChanged()
} }
// check if phone is conencted to usb // check if phone is conencted to usb
QFileInfo phoneConnectedFile("/tmp/android_device");
if (phoneConnectedFile.exists()) { if (std::ifstream("/tmp/android_device")) {
if (ui_->phoneConnected->isVisible() == false) { if (ui_->pushButtonAndroidAuto->isVisible() == false) {
ui_->phoneConnected->setText("USB connected"); ui_->pushButtonAndroidAuto->show();
ui_->phoneConnected->show(); ui_->pushButtonAndroidAuto2->show();
ui_->pushButtonNoDevice->hide();
} }
} else { } else {
if (ui_->phoneConnected->isVisible() == true) { if (ui_->pushButtonAndroidAuto->isVisible() == true) {
ui_->phoneConnected->hide(); ui_->pushButtonAndroidAuto->hide();
ui_->pushButtonAndroidAuto2->hide();
ui_->pushButtonNoDevice->show();
} }
} }
@ -1380,8 +1417,7 @@ void f1x::openauto::autoapp::ui::MainWindow::tmpChanged()
} }
// check if a device is connected via bluetooth // check if a device is connected via bluetooth
QFileInfo phoneBTConnectedFile("/tmp/btdevice"); if (std::ifstream("/tmp/btdevice")) {
if (phoneBTConnectedFile.exists()) {
if (ui_->btDevice->isVisible() == false) { if (ui_->btDevice->isVisible() == false) {
QFile phoneBTData(QString("/tmp/btdevice")); QFile phoneBTData(QString("/tmp/btdevice"));
phoneBTData.open(QIODevice::ReadOnly); phoneBTData.open(QIODevice::ReadOnly);
@ -1402,9 +1438,9 @@ void f1x::openauto::autoapp::ui::MainWindow::tmpChanged()
QFileInfo debugInProgressFile("/tmp/debug_in_progress"); QFileInfo debugInProgressFile("/tmp/debug_in_progress");
QFileInfo enablePairingFile("/tmp/enable_pairing"); QFileInfo enablePairingFile("/tmp/enable_pairing");
if (configInProgressFile.exists() || debugInProgressFile.exists() || enablePairingFile.exists()) { if (std::ifstream("/tmp/config_in_progress") || std::ifstream("/tmp/debug_in_progress") || std::ifstream("/tmp/enable_pairing")) {
if (ui_->systemConfigInProgress->isVisible() == false) { if (ui_->systemConfigInProgress->isVisible() == false) {
if (configInProgressFile.exists()) { if (std::ifstream("/tmp/config_in_progress")) {
ui_->systemConfigInProgress->setText("System config in progress - please wait ..."); ui_->systemConfigInProgress->setText("System config in progress - please wait ...");
ui_->pushButtonSettings->hide(); ui_->pushButtonSettings->hide();
ui_->pushButtonSettings2->hide(); ui_->pushButtonSettings2->hide();
@ -1412,7 +1448,7 @@ void f1x::openauto::autoapp::ui::MainWindow::tmpChanged()
ui_->pushButtonLock2->show(); ui_->pushButtonLock2->show();
ui_->systemConfigInProgress->show(); ui_->systemConfigInProgress->show();
} }
if (debugInProgressFile.exists()) { if (std::ifstream("/tmp/debug_in_progress")) {
ui_->systemConfigInProgress->setText("Creating debug.zip on /boot - please wait ..."); ui_->systemConfigInProgress->setText("Creating debug.zip on /boot - please wait ...");
ui_->pushButtonSettings->hide(); ui_->pushButtonSettings->hide();
ui_->pushButtonSettings2->hide(); ui_->pushButtonSettings2->hide();
@ -1422,7 +1458,7 @@ void f1x::openauto::autoapp::ui::MainWindow::tmpChanged()
ui_->pushButtonLock2->show(); ui_->pushButtonLock2->show();
ui_->systemConfigInProgress->show(); ui_->systemConfigInProgress->show();
} }
if (enablePairingFile.exists()) { if (std::ifstream("/tmp/enable_pairing")) {
ui_->systemConfigInProgress->setText("Auto Bluetooth Pairing enabled for 120 seconds!"); ui_->systemConfigInProgress->setText("Auto Bluetooth Pairing enabled for 120 seconds!");
ui_->pushButtonDebug->hide(); ui_->pushButtonDebug->hide();
ui_->pushButtonDebug2->hide(); ui_->pushButtonDebug2->hide();
@ -1499,8 +1535,7 @@ void f1x::openauto::autoapp::ui::MainWindow::tmpChanged()
} }
// check if sutdown is external triggered and init clean app exit // check if sutdown is external triggered and init clean app exit
QFileInfo externalExitFile("/tmp/external_exit"); if (std::ifstream("/tmp/external_exit")) {
if (externalExitFile.exists()) {
f1x::openauto::autoapp::ui::MainWindow::MainWindow::exit(); f1x::openauto::autoapp::ui::MainWindow::MainWindow::exit();
} }
@ -1509,14 +1544,30 @@ void f1x::openauto::autoapp::ui::MainWindow::tmpChanged()
// hide wifi if not forced // hide wifi if not forced
if (!this->hotspotActive) { if (!this->hotspotActive) {
if ((ui_->pushButtonWifi->isVisible() == true) || (ui_->pushButtonWifi2->isVisible() == true)){ if ((ui_->AAWIFIWidget->isVisible() == true) || (ui_->pushButtonWifi2->isVisible() == true)){
ui_->pushButtonWifi->hide(); //ui_->pushButtonWifi->hide();
ui_->AAWIFIWidget->hide();
ui_->pushButtonWifi2->hide(); ui_->pushButtonWifi2->hide();
ui_->AAUSBWidget->show();
} }
} else { } else {
if ((ui_->pushButtonWifi->isVisible() == false) || (ui_->pushButtonWifi2->isVisible() == false)) { if ((ui_->AAWIFIWidget->isVisible() == false) || (ui_->pushButtonWifi2->isVisible() == false)) {
ui_->pushButtonWifi->show(); //ui_->pushButtonWifi->show();
ui_->AAWIFIWidget->show();
ui_->pushButtonWifi2->show(); ui_->pushButtonWifi2->show();
ui_->AAUSBWidget->hide();
}
}
if (std::ifstream("/tmp/temp_recent_list")) {
if (ui_->pushButtonWifi->isVisible() == false) {
ui_->pushButtonWifi->show();
ui_->pushButtonNoWiFiDevice->hide();
}
} else {
if (ui_->pushButtonWifi->isVisible() == true) {
ui_->pushButtonNoWiFiDevice->show();
ui_->pushButtonWifi->hide();
} }
} }
@ -1525,30 +1576,14 @@ void f1x::openauto::autoapp::ui::MainWindow::tmpChanged()
if (ui_->pushButtonCameraShow2->isVisible() == true) { if (ui_->pushButtonCameraShow2->isVisible() == true) {
button_count = button_count + 1; button_count = button_count + 1;
} }
if (ui_->pushButtonToggleGUI2->isVisible() == true) {
button_count = button_count + 1;
}
if (ui_->pushButtonWifi2->isVisible() == true) { if (ui_->pushButtonWifi2->isVisible() == true) {
button_count = button_count + 1; button_count = button_count + 1;
} }
if (ui_->pushButtonDebug2->isVisible() == true) { if (ui_->pushButtonDebug2->isVisible() == true) {
button_count = button_count + 1; button_count = button_count + 1;
} }
if (button_count >= 3) { if (ui_->pushButtonVolume2->isVisible() == true) {
ui_->pushButtonDummyClassic1->hide(); button_count = button_count + 1;
ui_->pushButtonDummyClassic2->hide();
}
if (button_count == 2) {
ui_->pushButtonDummyClassic1->hide();
ui_->pushButtonDummyClassic2->hide();
}
if (button_count == 1) {
ui_->pushButtonDummyClassic1->show();
ui_->pushButtonDummyClassic2->hide();
}
if (button_count == 0) {
ui_->pushButtonDummyClassic1->show();
ui_->pushButtonDummyClassic2->show();
} }
// Hide auto day/night if needed // Hide auto day/night if needed
@ -1609,8 +1644,7 @@ void f1x::openauto::autoapp::ui::MainWindow::tmpChanged()
} }
// read value from tsl2561 // read value from tsl2561
QFileInfo lightsensorFile("/tmp/tsl2561"); if (std::ifstream("/tmp/tsl2561") && this->configuration_->showLux()) {
if (lightsensorFile.exists() && this->configuration_->showLux()) {
QFile paramFile("/tmp/tsl2561"); QFile paramFile("/tmp/tsl2561");
paramFile.open(QIODevice::ReadOnly); paramFile.open(QIODevice::ReadOnly);
QTextStream data(&paramFile); QTextStream data(&paramFile);
@ -1618,12 +1652,15 @@ void f1x::openauto::autoapp::ui::MainWindow::tmpChanged()
paramFile.close(); paramFile.close();
if (ui_->label_left->isVisible() == false) { if (ui_->label_left->isVisible() == false) {
ui_->label_left->show(); ui_->label_left->show();
ui_->label_right->show();
} }
ui_->label_left->setText("Lux: " + value[0]); ui_->label_left->setText("Lux: " + value[0]);
} else { } else {
if (ui_->label_left->isVisible() == true) { if (ui_->label_left->isVisible() == true) {
ui_->label_left->hide(); ui_->label_left->hide();
ui_->label_right->hide();
ui_->label_left->setText(""); ui_->label_left->setText("");
ui_->label_right->setText("");
} }
} }
} }

View File

@ -27,6 +27,7 @@
#include <QDateTime> #include <QDateTime>
#include <QNetworkInterface> #include <QNetworkInterface>
#include <QNetworkConfigurationManager> #include <QNetworkConfigurationManager>
#include <fstream>
namespace f1x namespace f1x
{ {
@ -78,6 +79,7 @@ SettingsWindow::SettingsWindow(configuration::IConfiguration::Pointer configurat
ui_->labelBluetoothAdapterAddress->hide(); ui_->labelBluetoothAdapterAddress->hide();
ui_->lineEditExternalBluetoothAdapterAddress->hide(); ui_->lineEditExternalBluetoothAdapterAddress->hide();
ui_->labelTestInProgress->hide(); ui_->labelTestInProgress->hide();
ui_->checkBoxHideAlpha->hide();
connect(ui_->pushButtonTab1, &QPushButton::clicked, this, &SettingsWindow::show_tab1); connect(ui_->pushButtonTab1, &QPushButton::clicked, this, &SettingsWindow::show_tab1);
connect(ui_->pushButtonTab2, &QPushButton::clicked, this, &SettingsWindow::show_tab2); connect(ui_->pushButtonTab2, &QPushButton::clicked, this, &SettingsWindow::show_tab2);
@ -96,17 +98,22 @@ SettingsWindow::SettingsWindow(configuration::IConfiguration::Pointer configurat
ui_->spinBoxMinute->setValue((time_text_minute).toInt()); ui_->spinBoxMinute->setValue((time_text_minute).toInt());
ui_->label_modeswitchprogress->hide(); ui_->label_modeswitchprogress->hide();
QFileInfo hotspotFile("/tmp/hotspot_active"); if (std::ifstream("/tmp/hotspot_active")) {
if (hotspotFile.exists()) {
ui_->pushButtonHotspotStop->show(); ui_->pushButtonHotspotStop->show();
ui_->pushButtonHotspotStart->hide(); ui_->pushButtonHotspotStart->hide();
ui_->lineEdit_wifimode->setText("Hotspot"); ui_->lineEdit_wifimode->setText("Hotspot");
ui_->lineEditWifiSSID->setText(this->hotspotssid); ui_->lineEditWifiSSID->setText(this->hotspotssid);
ui_->lineEditPassword->show();
ui_->label_password->show();
ui_->lineEditPassword->setText("1234567890");
} else { } else {
ui_->pushButtonHotspotStart->show(); ui_->pushButtonHotspotStart->show();
ui_->pushButtonHotspotStop->hide(); ui_->pushButtonHotspotStop->hide();
ui_->lineEdit_wifimode->setText("Client"); ui_->lineEdit_wifimode->setText("Client");
ui_->lineEditWifiSSID->setText(this->wifissid); ui_->lineEditWifiSSID->setText(this->wifissid);
ui_->lineEditPassword->hide();
ui_->label_password->hide();
ui_->lineEditPassword->setText("");
} }
} }
@ -463,9 +470,7 @@ void SettingsWindow::loadSystemValues()
system("/usr/local/bin/autoapp_helper getinputs"); system("/usr/local/bin/autoapp_helper getinputs");
system("/usr/local/bin/autoapp_helper getparams"); system("/usr/local/bin/autoapp_helper getparams");
QFileInfo paramFile("/tmp/return_value"); if (std::ifstream("/tmp/return_value")) {
if (paramFile.exists()) {
QFile paramFile(QString("/tmp/return_value")); QFile paramFile(QString("/tmp/return_value"));
paramFile.open(QIODevice::ReadOnly); paramFile.open(QIODevice::ReadOnly);
QTextStream data_param(&paramFile); QTextStream data_param(&paramFile);
@ -521,8 +526,7 @@ void SettingsWindow::loadSystemValues()
// set cpu temp // set cpu temp
ui_->valueSystemCPUTemp->setText(getparams[20]); ui_->valueSystemCPUTemp->setText(getparams[20]);
QFileInfo inputsFile("/tmp/get_inputs"); if (std::ifstream("/tmp/get_inputs")) {
if (inputsFile.exists()) {
QFile inputsFile(QString("/tmp/get_inputs")); QFile inputsFile(QString("/tmp/get_inputs"));
inputsFile.open(QIODevice::ReadOnly); inputsFile.open(QIODevice::ReadOnly);
QTextStream data_return(&inputsFile); QTextStream data_return(&inputsFile);
@ -541,8 +545,7 @@ void SettingsWindow::loadSystemValues()
} }
} }
QFileInfo outputsFile("/tmp/get_outputs"); if (std::ifstream("/tmp/get_outputs")) {
if (outputsFile.exists()) {
QFile outputsFile(QString("/tmp/get_outputs")); QFile outputsFile(QString("/tmp/get_outputs"));
outputsFile.open(QIODevice::ReadOnly); outputsFile.open(QIODevice::ReadOnly);
QTextStream data_return(&outputsFile); QTextStream data_return(&outputsFile);
@ -561,8 +564,7 @@ void SettingsWindow::loadSystemValues()
} }
} }
QFileInfo defaultoutputFile("/tmp/get_default_output"); if (std::ifstream("/tmp/get_default_output")) {
if (defaultoutputFile.exists()) {
QFile defaultoutputFile(QString("/tmp/get_default_output")); QFile defaultoutputFile(QString("/tmp/get_default_output"));
defaultoutputFile.open(QIODevice::ReadOnly); defaultoutputFile.open(QIODevice::ReadOnly);
QTextStream data_return(&defaultoutputFile); QTextStream data_return(&defaultoutputFile);
@ -571,8 +573,7 @@ void SettingsWindow::loadSystemValues()
ui_->comboBoxPulseOutput->setCurrentText(defoutput[0]); ui_->comboBoxPulseOutput->setCurrentText(defoutput[0]);
} }
QFileInfo defaultinputFile("/tmp/get_default_input"); if (std::ifstream("/tmp/get_default_input")) {
if (defaultinputFile.exists()) {
QFile defaultinputFile(QString("/tmp/get_default_input")); QFile defaultinputFile(QString("/tmp/get_default_input"));
defaultinputFile.open(QIODevice::ReadOnly); defaultinputFile.open(QIODevice::ReadOnly);
QTextStream data_return(&defaultinputFile); QTextStream data_return(&defaultinputFile);
@ -581,8 +582,7 @@ void SettingsWindow::loadSystemValues()
ui_->comboBoxPulseInput->setCurrentText(definput[0]); ui_->comboBoxPulseInput->setCurrentText(definput[0]);
} }
QFileInfo zoneFile("/tmp/timezone_listing"); if (std::ifstream("/tmp/timezone_listing")) {
if (zoneFile.exists()) {
QFile zoneFile(QString("/tmp/timezone_listing")); QFile zoneFile(QString("/tmp/timezone_listing"));
zoneFile.open(QIODevice::ReadOnly); zoneFile.open(QIODevice::ReadOnly);
QTextStream data_return(&zoneFile); QTextStream data_return(&zoneFile);
@ -778,6 +778,7 @@ void SettingsWindow::onStopHotspot()
ui_->lineEdit_wifimode->setText(""); ui_->lineEdit_wifimode->setText("");
ui_->lineEdit_wlan0->setText(""); ui_->lineEdit_wlan0->setText("");
ui_->lineEditWifiSSID->setText(""); ui_->lineEditWifiSSID->setText("");
ui_->lineEditPassword->setText("");
system("sudo systemctl stop hotspot &"); system("sudo systemctl stop hotspot &");
QTimer::singleShot(15000, this, SLOT(updateNetworkInfo())); QTimer::singleShot(15000, this, SLOT(updateNetworkInfo()));
} }
@ -921,18 +922,23 @@ void f1x::openauto::autoapp::ui::SettingsWindow::updateNetworkInfo()
ui_->lineEdit_wlan0->setText("interface down"); ui_->lineEdit_wlan0->setText("interface down");
} }
QFileInfo hotspotFile("/tmp/hotspot_active"); if (std::ifstream("/tmp/hotspot_active")) {
if (hotspotFile.exists()) {
ui_->pushButtonHotspotStop->show(); ui_->pushButtonHotspotStop->show();
ui_->pushButtonHotspotStart->hide(); ui_->pushButtonHotspotStart->hide();
ui_->label_modeswitchprogress->hide(); ui_->label_modeswitchprogress->hide();
ui_->lineEdit_wifimode->setText("Hotspot"); ui_->lineEdit_wifimode->setText("Hotspot");
ui_->lineEditWifiSSID->setText(this->hotspotssid); ui_->lineEditWifiSSID->setText(this->hotspotssid);
ui_->lineEditPassword->show();
ui_->label_password->show();
ui_->lineEditPassword->setText("1234567890");
} else { } else {
ui_->pushButtonHotspotStart->show(); ui_->pushButtonHotspotStart->show();
ui_->pushButtonHotspotStop->hide(); ui_->pushButtonHotspotStop->hide();
ui_->label_modeswitchprogress->hide(); ui_->label_modeswitchprogress->hide();
ui_->lineEdit_wifimode->setText("Client"); ui_->lineEdit_wifimode->setText("Client");
ui_->lineEditWifiSSID->setText(this->wifissid); ui_->lineEditWifiSSID->setText(this->wifissid);
ui_->lineEditPassword->hide();
ui_->label_password->hide();
ui_->lineEditPassword->setText("");
} }
} }

View File

@ -0,0 +1,30 @@
#include <f1x/openauto/autoapp/UI/Warning.hpp>
#include <ui_warning.h>
namespace f1x
{
namespace openauto
{
namespace autoapp
{
namespace ui
{
Warning::Warning(QWidget *parent)
: QDialog(parent)
, ui_(new Ui::Warning)
{
ui_->setupUi(this);
connect(ui_->pushButtonClose, &QPushButton::clicked, this, &Warning::close);
}
Warning::~Warning()
{
delete ui_;
}
}
}
}
}

View File

@ -7,7 +7,7 @@
<x>0</x> <x>0</x>
<y>0</y> <y>0</y>
<width>500</width> <width>500</width>
<height>431</height> <height>360</height>
</rect> </rect>
</property> </property>
<property name="sizePolicy"> <property name="sizePolicy">
@ -44,8 +44,21 @@ color: rgb(255, 255, 255);</string>
<layout class="QVBoxLayout" name="verticalLayout_2"> <layout class="QVBoxLayout" name="verticalLayout_2">
<item> <item>
<widget class="QLineEdit" name="lineEditIPAddress"> <widget class="QLineEdit" name="lineEditIPAddress">
<property name="minimumSize">
<size>
<width>0</width>
<height>32</height>
</size>
</property>
<property name="maximumSize">
<size>
<width>16777215</width>
<height>32</height>
</size>
</property>
<property name="font"> <property name="font">
<font> <font>
<pointsize>14</pointsize>
<weight>75</weight> <weight>75</weight>
<bold>true</bold> <bold>true</bold>
</font> </font>
@ -54,6 +67,9 @@ color: rgb(255, 255, 255);</string>
<string notr="true">background-color: rgb(85, 87, 83); <string notr="true">background-color: rgb(85, 87, 83);
color: rgb(255, 255, 255);</string> color: rgb(255, 255, 255);</string>
</property> </property>
<property name="text">
<string/>
</property>
<property name="alignment"> <property name="alignment">
<set>Qt::AlignCenter</set> <set>Qt::AlignCenter</set>
</property> </property>
@ -80,28 +96,17 @@ color: rgb(255, 255, 255);</string>
</size> </size>
</property> </property>
<property name="title"> <property name="title">
<string>Recent</string> <string>Clients</string>
</property> </property>
<layout class="QVBoxLayout" name="verticalLayout_3"> <layout class="QHBoxLayout" name="horizontalLayout_2">
<property name="topMargin"> <property name="topMargin">
<number>9</number> <number>9</number>
</property> </property>
<item> <item>
<widget class="QListView" name="listViewRecent"> <widget class="QListWidget" name="listWidgetClients">
<property name="sizePolicy">
<sizepolicy hsizetype="Expanding" vsizetype="Fixed">
<horstretch>0</horstretch>
<verstretch>0</verstretch>
</sizepolicy>
</property>
<property name="minimumSize">
<size>
<width>0</width>
<height>100</height>
</size>
</property>
<property name="font"> <property name="font">
<font> <font>
<pointsize>14</pointsize>
<weight>75</weight> <weight>75</weight>
<bold>true</bold> <bold>true</bold>
</font> </font>
@ -110,61 +115,44 @@ color: rgb(255, 255, 255);</string>
<string notr="true">background-color: rgb(85, 87, 83); <string notr="true">background-color: rgb(85, 87, 83);
color: rgb(255, 255, 255);</string> color: rgb(255, 255, 255);</string>
</property> </property>
<property name="editTriggers"> <property name="gridSize">
<set>QAbstractItemView::NoEditTriggers</set> <size>
<width>0</width>
<height>30</height>
</size>
</property> </property>
<property name="batchSize"> <property name="uniformItemSizes">
<number>100</number> <bool>false</bool>
</property> </property>
</widget> </widget>
</item> </item>
</layout>
</widget>
</item>
<item>
<widget class="QWidget" name="formWidget" native="true">
<property name="sizePolicy">
<sizepolicy hsizetype="Expanding" vsizetype="Preferred">
<horstretch>0</horstretch>
<verstretch>0</verstretch>
</sizepolicy>
</property>
<layout class="QFormLayout" name="formLayout">
<item row="0" column="0">
<widget class="QLabel" name="labelCopyrightsInfoIcon">
<property name="text">
<string>&lt;html&gt;&lt;head/&gt;&lt;body&gt;&lt;p&gt;&lt;img src=&quot;:/ico_info.png&quot;/&gt;&lt;/p&gt;&lt;/body&gt;&lt;/html&gt;</string>
</property>
</widget>
</item>
<item row="0" column="1">
<widget class="QLabel" name="labelHeadUnitServerInfo">
<property name="sizePolicy">
<sizepolicy hsizetype="Expanding" vsizetype="Fixed">
<horstretch>0</horstretch>
<verstretch>0</verstretch>
</sizepolicy>
</property>
<property name="text">
<string>&lt;html&gt;&lt;head/&gt;&lt;body&gt;&lt;p&gt;&lt;span style=&quot; font-style:italic;&quot;&gt;In order to use wireless mode you must enable head unit server in developer settings.&lt;/span&gt;&lt;/p&gt;&lt;/body&gt;&lt;/html&gt;</string>
</property>
<property name="wordWrap">
<bool>true</bool>
</property>
</widget>
</item>
</layout>
</widget>
</item>
<item> <item>
<widget class="QWidget" name="horizontalWidget" native="true"> <widget class="QWidget" name="horizontalWidget" native="true">
<property name="sizePolicy"> <property name="sizePolicy">
<sizepolicy hsizetype="Expanding" vsizetype="Preferred"> <sizepolicy hsizetype="Fixed" vsizetype="Expanding">
<horstretch>0</horstretch> <horstretch>0</horstretch>
<verstretch>0</verstretch> <verstretch>0</verstretch>
</sizepolicy> </sizepolicy>
</property> </property>
<layout class="QHBoxLayout" name="horizontalLayout"> <property name="minimumSize">
<size>
<width>130</width>
<height>0</height>
</size>
</property>
<property name="maximumSize">
<size>
<width>130</width>
<height>16777215</height>
</size>
</property>
<layout class="QVBoxLayout" name="verticalLayout_3">
<property name="topMargin">
<number>0</number>
</property>
<property name="bottomMargin">
<number>0</number>
</property>
<item> <item>
<widget class="QPushButton" name="pushButtonUpdate"> <widget class="QPushButton" name="pushButtonUpdate">
<property name="sizePolicy"> <property name="sizePolicy">
@ -197,67 +185,17 @@ color: rgb(255, 255, 255);</string>
</widget> </widget>
</item> </item>
<item> <item>
<widget class="QPushButton" name="pushButtonCancel"> <spacer name="verticalSpacer_2">
<property name="sizePolicy"> <property name="orientation">
<sizepolicy hsizetype="Expanding" vsizetype="Fixed"> <enum>Qt::Vertical</enum>
<horstretch>0</horstretch>
<verstretch>0</verstretch>
</sizepolicy>
</property> </property>
<property name="minimumSize"> <property name="sizeHint" stdset="0">
<size> <size>
<width>120</width> <width>20</width>
<height>30</height> <height>10</height>
</size> </size>
</property> </property>
<property name="font"> </spacer>
<font>
<weight>75</weight>
<bold>true</bold>
</font>
</property>
<property name="styleSheet">
<string notr="true">background-color: rgba(186, 189, 182, 0.5);
border-radius: 4px;
border: 2px solid rgba(255,255,255,0.5);
color: rgb(255, 255, 255);</string>
</property>
<property name="text">
<string>Cancel</string>
</property>
</widget>
</item>
<item>
<widget class="QPushButton" name="pushButtonConnect">
<property name="sizePolicy">
<sizepolicy hsizetype="Expanding" vsizetype="Fixed">
<horstretch>0</horstretch>
<verstretch>0</verstretch>
</sizepolicy>
</property>
<property name="minimumSize">
<size>
<width>120</width>
<height>30</height>
</size>
</property>
<property name="font">
<font>
<weight>75</weight>
<bold>true</bold>
<stylestrategy>PreferDefault</stylestrategy>
</font>
</property>
<property name="styleSheet">
<string notr="true">background-color: rgba(186, 189, 182, 0.5);
border-radius: 4px;
border: 2px solid rgba(255,255,255,0.5);
color: rgb(255, 255, 255);</string>
</property>
<property name="text">
<string>Connect</string>
</property>
</widget>
</item> </item>
<item> <item>
<widget class="QProgressBar" name="progressBarConnect"> <widget class="QProgressBar" name="progressBarConnect">
@ -298,6 +236,120 @@ color: rgb(255, 255, 255);</string>
</property> </property>
</widget> </widget>
</item> </item>
<item>
<widget class="QPushButton" name="pushButtonConnect">
<property name="sizePolicy">
<sizepolicy hsizetype="Expanding" vsizetype="Fixed">
<horstretch>0</horstretch>
<verstretch>0</verstretch>
</sizepolicy>
</property>
<property name="minimumSize">
<size>
<width>120</width>
<height>30</height>
</size>
</property>
<property name="font">
<font>
<weight>75</weight>
<bold>true</bold>
<stylestrategy>PreferDefault</stylestrategy>
</font>
</property>
<property name="styleSheet">
<string notr="true">background-color: rgba(186, 189, 182, 0.5);
border-radius: 4px;
border: 2px solid rgba(255,255,255,0.5);
color: rgb(255, 255, 255);</string>
</property>
<property name="text">
<string>Connect</string>
</property>
</widget>
</item>
<item>
<spacer name="verticalSpacer">
<property name="orientation">
<enum>Qt::Vertical</enum>
</property>
<property name="sizeHint" stdset="0">
<size>
<width>20</width>
<height>10</height>
</size>
</property>
</spacer>
</item>
<item>
<widget class="QPushButton" name="pushButtonCancel">
<property name="sizePolicy">
<sizepolicy hsizetype="Expanding" vsizetype="Fixed">
<horstretch>0</horstretch>
<verstretch>0</verstretch>
</sizepolicy>
</property>
<property name="minimumSize">
<size>
<width>120</width>
<height>30</height>
</size>
</property>
<property name="font">
<font>
<weight>75</weight>
<bold>true</bold>
</font>
</property>
<property name="styleSheet">
<string notr="true">background-color: rgba(186, 189, 182, 0.5);
border-radius: 4px;
border: 2px solid rgba(255,255,255,0.5);
color: rgb(255, 255, 255);</string>
</property>
<property name="text">
<string>Close</string>
</property>
</widget>
</item>
</layout>
</widget>
</item>
</layout>
</widget>
</item>
<item>
<widget class="QWidget" name="formWidget" native="true">
<property name="sizePolicy">
<sizepolicy hsizetype="Expanding" vsizetype="Preferred">
<horstretch>0</horstretch>
<verstretch>0</verstretch>
</sizepolicy>
</property>
<layout class="QFormLayout" name="formLayout">
<item row="0" column="0">
<widget class="QLabel" name="labelCopyrightsInfoIcon">
<property name="text">
<string>&lt;html&gt;&lt;head/&gt;&lt;body&gt;&lt;p&gt;&lt;img src=&quot;:/ico_info.png&quot;/&gt;&lt;/p&gt;&lt;/body&gt;&lt;/html&gt;</string>
</property>
</widget>
</item>
<item row="0" column="1">
<widget class="QLabel" name="labelHeadUnitServerInfo">
<property name="sizePolicy">
<sizepolicy hsizetype="Expanding" vsizetype="Fixed">
<horstretch>0</horstretch>
<verstretch>0</verstretch>
</sizepolicy>
</property>
<property name="text">
<string>&lt;html&gt;&lt;head/&gt;&lt;body&gt;&lt;p&gt;&lt;span style=&quot; font-style:italic;&quot;&gt;In order to use wireless mode you must enable head unit server in developer settings.&lt;/span&gt;&lt;/p&gt;&lt;/body&gt;&lt;/html&gt;</string>
</property>
<property name="wordWrap">
<bool>true</bool>
</property>
</widget>
</item>
</layout> </layout>
</widget> </widget>
</item> </item>

View File

@ -398,32 +398,6 @@ color: rgb(78, 244, 37);</string>
<property name="bottomMargin"> <property name="bottomMargin">
<number>0</number> <number>0</number>
</property> </property>
<item>
<widget class="QLabel" name="phoneConnected">
<property name="sizePolicy">
<sizepolicy hsizetype="Preferred" vsizetype="Fixed">
<horstretch>0</horstretch>
<verstretch>0</verstretch>
</sizepolicy>
</property>
<property name="font">
<font>
<weight>75</weight>
<bold>true</bold>
</font>
</property>
<property name="styleSheet">
<string notr="true">background-color: rgba(255, 255, 255, 0);
color: rgb(255, 255, 255);</string>
</property>
<property name="text">
<string>USB Connected</string>
</property>
<property name="alignment">
<set>Qt::AlignCenter</set>
</property>
</widget>
</item>
<item> <item>
<spacer name="horizontalSpacer_11"> <spacer name="horizontalSpacer_11">
<property name="orientation"> <property name="orientation">
@ -613,6 +587,27 @@ color: rgb(255, 255, 255);</string>
</property> </property>
<item row="0" column="0" colspan="2"> <item row="0" column="0" colspan="2">
<layout class="QHBoxLayout" name="Layout_Sliderselect"> <layout class="QHBoxLayout" name="Layout_Sliderselect">
<item>
<widget class="QWidget" name="AAUSBWidget" native="true">
<property name="sizePolicy">
<sizepolicy hsizetype="Expanding" vsizetype="Expanding">
<horstretch>0</horstretch>
<verstretch>0</verstretch>
</sizepolicy>
</property>
<layout class="QHBoxLayout" name="Layout">
<property name="leftMargin">
<number>0</number>
</property>
<property name="topMargin">
<number>0</number>
</property>
<property name="rightMargin">
<number>0</number>
</property>
<property name="bottomMargin">
<number>0</number>
</property>
<item> <item>
<widget class="QPushButton" name="pushButtonAndroidAuto"> <widget class="QPushButton" name="pushButtonAndroidAuto">
<property name="sizePolicy"> <property name="sizePolicy">
@ -628,7 +623,7 @@ color: rgb(255, 255, 255);</string>
</font> </font>
</property> </property>
<property name="styleSheet"> <property name="styleSheet">
<string notr="true">background-color: rgba(14, 8, 137, 0.5); <string notr="true">background-color: rgba(48, 140, 198, 0.5);
color: rgb(255, 255, 255); color: rgb(255, 255, 255);
border-radius: 4px; border-radius: 4px;
border: 2px solid rgba(255,255,255,0.5); border: 2px solid rgba(255,255,255,0.5);
@ -636,8 +631,149 @@ outline: none;
</string> </string>
</property> </property>
<property name="text"> <property name="text">
<string>Android <string/>
Auto</string> </property>
<property name="icon">
<iconset>
<normalon>:/aausb-hot.png</normalon>
</iconset>
</property>
<property name="iconSize">
<size>
<width>50</width>
<height>50</height>
</size>
</property>
</widget>
</item>
<item>
<widget class="QPushButton" name="pushButtonNoDevice">
<property name="sizePolicy">
<sizepolicy hsizetype="Expanding" vsizetype="Expanding">
<horstretch>0</horstretch>
<verstretch>0</verstretch>
</sizepolicy>
</property>
<property name="font">
<font>
<weight>75</weight>
<bold>true</bold>
</font>
</property>
<property name="styleSheet">
<string notr="true">background-color: rgba(48, 140, 198, 0.5);
color: rgb(255, 255, 255);
border-radius: 4px;
border: 2px solid rgba(255,255,255,0.5);
outline: none;</string>
</property>
<property name="text">
<string>No
USB Device</string>
</property>
</widget>
</item>
</layout>
</widget>
</item>
<item>
<widget class="QWidget" name="AAWIFIWidget" native="true">
<property name="sizePolicy">
<sizepolicy hsizetype="Expanding" vsizetype="Expanding">
<horstretch>0</horstretch>
<verstretch>0</verstretch>
</sizepolicy>
</property>
<layout class="QHBoxLayout" name="Layout2">
<property name="leftMargin">
<number>0</number>
</property>
<property name="topMargin">
<number>0</number>
</property>
<property name="rightMargin">
<number>0</number>
</property>
<property name="bottomMargin">
<number>0</number>
</property>
<item>
<widget class="QPushButton" name="pushButtonWifi">
<property name="sizePolicy">
<sizepolicy hsizetype="Expanding" vsizetype="Expanding">
<horstretch>0</horstretch>
<verstretch>0</verstretch>
</sizepolicy>
</property>
<property name="styleSheet">
<string notr="true">background-color: rgba(252, 175, 62, 0.5);
border-radius: 4px;
border: 2px solid rgba(255,255,255,0.5);
color: rgb(255, 255, 255);
outline: none;</string>
</property>
<property name="text">
<string/>
</property>
<property name="icon">
<iconset>
<normalon>:/aawifi-hot.png</normalon>
</iconset>
</property>
<property name="iconSize">
<size>
<width>50</width>
<height>50</height>
</size>
</property>
</widget>
</item>
<item>
<widget class="QPushButton" name="pushButtonNoWiFiDevice">
<property name="sizePolicy">
<sizepolicy hsizetype="Expanding" vsizetype="Expanding">
<horstretch>0</horstretch>
<verstretch>0</verstretch>
</sizepolicy>
</property>
<property name="font">
<font>
<weight>75</weight>
<bold>true</bold>
</font>
</property>
<property name="styleSheet">
<string notr="true">background-color: rgba(252, 175, 62, 0.5);
border-radius: 4px;
border: 2px solid rgba(255,255,255,0.5);
color: rgb(255, 255, 255);
outline: none;</string>
</property>
<property name="text">
<string>No
WiFi Clients</string>
</property>
</widget>
</item>
</layout>
</widget>
</item>
<item>
<widget class="QPushButton" name="pushButtonWifiSetup">
<property name="sizePolicy">
<sizepolicy hsizetype="Expanding" vsizetype="Expanding">
<horstretch>0</horstretch>
<verstretch>0</verstretch>
</sizepolicy>
</property>
<property name="styleSheet">
<string notr="true">background-color: rgba(100, 62, 4, 0.5);
border-radius: 4px;
border: 2px solid rgba(255,255,255,0.5);
outline: none;</string>
</property>
<property name="text">
<string>Setup</string>
</property> </property>
</widget> </widget>
</item> </item>
@ -753,7 +889,7 @@ outline: none;</string>
</widget> </widget>
</item> </item>
<item> <item>
<widget class="QPushButton" name="pushButtonBrightness"> <widget class="QPushButton" name="pushButtonCameraShow">
<property name="sizePolicy"> <property name="sizePolicy">
<sizepolicy hsizetype="Expanding" vsizetype="Expanding"> <sizepolicy hsizetype="Expanding" vsizetype="Expanding">
<horstretch>0</horstretch> <horstretch>0</horstretch>
@ -761,7 +897,7 @@ outline: none;</string>
</sizepolicy> </sizepolicy>
</property> </property>
<property name="styleSheet"> <property name="styleSheet">
<string notr="true">background-color: rgba(245, 121, 0, 0.5); <string notr="true">background-color: rgba(100, 62, 4, 0.5);
border-radius: 4px; border-radius: 4px;
border: 2px solid rgba(255,255,255,0.5); border: 2px solid rgba(255,255,255,0.5);
outline: none;</string> outline: none;</string>
@ -771,7 +907,7 @@ outline: none;</string>
</property> </property>
<property name="icon"> <property name="icon">
<iconset> <iconset>
<normalon>:/brightness-hot.png</normalon> <normalon>:/camera-hot.png</normalon>
</iconset> </iconset>
</property> </property>
<property name="iconSize"> <property name="iconSize">
@ -813,7 +949,7 @@ outline: none;</string>
</widget> </widget>
</item> </item>
<item> <item>
<widget class="QPushButton" name="pushButtonToggleGUI"> <widget class="QPushButton" name="pushButtonDebug">
<property name="sizePolicy"> <property name="sizePolicy">
<sizepolicy hsizetype="Expanding" vsizetype="Expanding"> <sizepolicy hsizetype="Expanding" vsizetype="Expanding">
<horstretch>0</horstretch> <horstretch>0</horstretch>
@ -821,7 +957,7 @@ outline: none;</string>
</sizepolicy> </sizepolicy>
</property> </property>
<property name="styleSheet"> <property name="styleSheet">
<string notr="true">background-color: rgba(237, 164, 255, 0.5); <string notr="true">background-color: rgba(85, 87, 83, 0.5);
border-radius: 4px; border-radius: 4px;
border: 2px solid rgba(255,255,255,0.5); border: 2px solid rgba(255,255,255,0.5);
outline: none;</string> outline: none;</string>
@ -831,7 +967,7 @@ outline: none;</string>
</property> </property>
<property name="icon"> <property name="icon">
<iconset> <iconset>
<normalon>:/eye-hot.png</normalon> <normalon>:/bug-hot.png</normalon>
</iconset> </iconset>
</property> </property>
<property name="iconSize"> <property name="iconSize">
@ -842,71 +978,6 @@ outline: none;</string>
</property> </property>
</widget> </widget>
</item> </item>
<item>
<widget class="QPushButton" name="pushButtonLock">
<property name="sizePolicy">
<sizepolicy hsizetype="Expanding" vsizetype="Expanding">
<horstretch>0</horstretch>
<verstretch>0</verstretch>
</sizepolicy>
</property>
<property name="styleSheet">
<string notr="true">background-color: rgba(15, 54, 5, 0.5);
color: rgb(255, 255, 255);
border-radius: 4px;
border: 2px solid rgba(255,255,255,0.5);
outline: none;
</string>
</property>
<property name="text">
<string/>
</property>
<property name="icon">
<iconset>
<normalon>:/lock-hot.png</normalon>
</iconset>
</property>
<property name="iconSize">
<size>
<width>64</width>
<height>64</height>
</size>
</property>
</widget>
</item>
<item>
<widget class="QPushButton" name="pushButtonSettings">
<property name="sizePolicy">
<sizepolicy hsizetype="Expanding" vsizetype="Expanding">
<horstretch>0</horstretch>
<verstretch>0</verstretch>
</sizepolicy>
</property>
<property name="styleSheet">
<string notr="true">background-color: rgba(138, 226, 52, 0.5);
border-radius: 4px;
border: 2px solid rgba(255,255,255,0.5);
outline: none;</string>
</property>
<property name="text">
<string/>
</property>
<property name="icon">
<iconset>
<normalon>:/settings-hot.png</normalon>
</iconset>
</property>
<property name="iconSize">
<size>
<width>64</width>
<height>64</height>
</size>
</property>
<property name="default">
<bool>true</bool>
</property>
</widget>
</item>
</layout> </layout>
</item> </item>
<item row="1" column="0" colspan="2"> <item row="1" column="0" colspan="2">
@ -1180,7 +1251,7 @@ outline: none;</string>
<number>0</number> <number>0</number>
</property> </property>
<item> <item>
<widget class="QPushButton" name="pushButtonCameraShow"> <widget class="QPushButton" name="pushButtonLock">
<property name="sizePolicy"> <property name="sizePolicy">
<sizepolicy hsizetype="Expanding" vsizetype="Expanding"> <sizepolicy hsizetype="Expanding" vsizetype="Expanding">
<horstretch>0</horstretch> <horstretch>0</horstretch>
@ -1188,48 +1259,19 @@ outline: none;</string>
</sizepolicy> </sizepolicy>
</property> </property>
<property name="styleSheet"> <property name="styleSheet">
<string notr="true">background-color: rgba(100, 62, 4, 0.5); <string notr="true">background-color: rgba(15, 54, 5, 0.5);
border-radius: 4px;
border: 2px solid rgba(255,255,255,0.5);
outline: none;</string>
</property>
<property name="text">
<string/>
</property>
<property name="icon">
<iconset>
<normalon>:/camera-hot.png</normalon>
</iconset>
</property>
<property name="iconSize">
<size>
<width>64</width>
<height>64</height>
</size>
</property>
</widget>
</item>
<item>
<widget class="QPushButton" name="pushButtonWifi">
<property name="sizePolicy">
<sizepolicy hsizetype="Expanding" vsizetype="Expanding">
<horstretch>0</horstretch>
<verstretch>0</verstretch>
</sizepolicy>
</property>
<property name="styleSheet">
<string notr="true">background-color: rgba(252, 175, 62, 0.5);
border-radius: 4px;
border: 2px solid rgba(255,255,255,0.5);
color: rgb(255, 255, 255); color: rgb(255, 255, 255);
outline: none;</string> border-radius: 4px;
border: 2px solid rgba(255,255,255,0.5);
outline: none;
</string>
</property> </property>
<property name="text"> <property name="text">
<string/> <string/>
</property> </property>
<property name="icon"> <property name="icon">
<iconset> <iconset>
<normalon>:/wifi-hot.png</normalon> <normalon>:/lock-hot.png</normalon>
</iconset> </iconset>
</property> </property>
<property name="iconSize"> <property name="iconSize">
@ -1241,7 +1283,7 @@ outline: none;</string>
</widget> </widget>
</item> </item>
<item> <item>
<widget class="QPushButton" name="pushButtonWifiSetup"> <widget class="QPushButton" name="pushButtonSettings">
<property name="sizePolicy"> <property name="sizePolicy">
<sizepolicy hsizetype="Expanding" vsizetype="Expanding"> <sizepolicy hsizetype="Expanding" vsizetype="Expanding">
<horstretch>0</horstretch> <horstretch>0</horstretch>
@ -1249,26 +1291,7 @@ outline: none;</string>
</sizepolicy> </sizepolicy>
</property> </property>
<property name="styleSheet"> <property name="styleSheet">
<string notr="true">background-color: rgba(100, 62, 4, 0.5); <string notr="true">background-color: rgba(138, 226, 52, 0.5);
border-radius: 4px;
border: 2px solid rgba(255,255,255,0.5);
outline: none;</string>
</property>
<property name="text">
<string>Setup</string>
</property>
</widget>
</item>
<item>
<widget class="QPushButton" name="pushButtonDebug">
<property name="sizePolicy">
<sizepolicy hsizetype="Expanding" vsizetype="Expanding">
<horstretch>0</horstretch>
<verstretch>0</verstretch>
</sizepolicy>
</property>
<property name="styleSheet">
<string notr="true">background-color: rgba(85, 87, 83, 0.5);
border-radius: 4px; border-radius: 4px;
border: 2px solid rgba(255,255,255,0.5); border: 2px solid rgba(255,255,255,0.5);
outline: none;</string> outline: none;</string>
@ -1278,7 +1301,7 @@ outline: none;</string>
</property> </property>
<property name="icon"> <property name="icon">
<iconset> <iconset>
<normalon>:/bug-hot.png</normalon> <normalon>:/settings-hot.png</normalon>
</iconset> </iconset>
</property> </property>
<property name="iconSize"> <property name="iconSize">
@ -1287,6 +1310,9 @@ outline: none;</string>
<height>64</height> <height>64</height>
</size> </size>
</property> </property>
<property name="default">
<bool>true</bool>
</property>
</widget> </widget>
</item> </item>
<item> <item>
@ -1326,6 +1352,66 @@ outline: none;</string>
</property> </property>
</widget> </widget>
</item> </item>
<item>
<widget class="QPushButton" name="pushButtonBrightness">
<property name="sizePolicy">
<sizepolicy hsizetype="Expanding" vsizetype="Expanding">
<horstretch>0</horstretch>
<verstretch>0</verstretch>
</sizepolicy>
</property>
<property name="styleSheet">
<string notr="true">background-color: rgba(245, 121, 0, 0.5);
border-radius: 4px;
border: 2px solid rgba(255,255,255,0.5);
outline: none;</string>
</property>
<property name="text">
<string/>
</property>
<property name="icon">
<iconset>
<normalon>:/brightness-hot.png</normalon>
</iconset>
</property>
<property name="iconSize">
<size>
<width>64</width>
<height>64</height>
</size>
</property>
</widget>
</item>
<item>
<widget class="QPushButton" name="pushButtonToggleGUI">
<property name="sizePolicy">
<sizepolicy hsizetype="Expanding" vsizetype="Expanding">
<horstretch>0</horstretch>
<verstretch>0</verstretch>
</sizepolicy>
</property>
<property name="styleSheet">
<string notr="true">background-color: rgba(237, 164, 255, 0.5);
border-radius: 4px;
border: 2px solid rgba(255,255,255,0.5);
outline: none;</string>
</property>
<property name="text">
<string/>
</property>
<property name="icon">
<iconset>
<normalon>:/eye-hot.png</normalon>
</iconset>
</property>
<property name="iconSize">
<size>
<width>64</width>
<height>64</height>
</size>
</property>
</widget>
</item>
<item> <item>
<widget class="QPushButton" name="pushButtonExit"> <widget class="QPushButton" name="pushButtonExit">
<property name="sizePolicy"> <property name="sizePolicy">
@ -1584,7 +1670,7 @@ outline: none;</string>
</widget> </widget>
</item> </item>
<item> <item>
<widget class="QPushButton" name="pushButtonToggleGUI2"> <widget class="QPushButton" name="pushButtonMusic2">
<property name="sizePolicy"> <property name="sizePolicy">
<sizepolicy hsizetype="Fixed" vsizetype="Expanding"> <sizepolicy hsizetype="Fixed" vsizetype="Expanding">
<horstretch>0</horstretch> <horstretch>0</horstretch>
@ -1600,63 +1686,7 @@ outline: none;</string>
</property> </property>
<property name="icon"> <property name="icon">
<iconset> <iconset>
<normalon>:/eye-hot.png</normalon> <normalon>:/mp3-hot.png</normalon>
</iconset>
</property>
<property name="iconSize">
<size>
<width>50</width>
<height>50</height>
</size>
</property>
</widget>
</item>
<item>
<widget class="QPushButton" name="pushButtonDay2">
<property name="sizePolicy">
<sizepolicy hsizetype="Fixed" vsizetype="Expanding">
<horstretch>0</horstretch>
<verstretch>0</verstretch>
</sizepolicy>
</property>
<property name="styleSheet">
<string notr="true">background-color: rgba(136, 138, 133, 0.5);
outline: none;</string>
</property>
<property name="text">
<string/>
</property>
<property name="icon">
<iconset>
<normalon>:/day-hot.png</normalon>
</iconset>
</property>
<property name="iconSize">
<size>
<width>50</width>
<height>50</height>
</size>
</property>
</widget>
</item>
<item>
<widget class="QPushButton" name="pushButtonNight2">
<property name="sizePolicy">
<sizepolicy hsizetype="Fixed" vsizetype="Expanding">
<horstretch>0</horstretch>
<verstretch>0</verstretch>
</sizepolicy>
</property>
<property name="styleSheet">
<string notr="true">background-color: rgba(136, 138, 133, 0.5);
outline: none;</string>
</property>
<property name="text">
<string/>
</property>
<property name="icon">
<iconset>
<normalon>:/night-hot.png</normalon>
</iconset> </iconset>
</property> </property>
<property name="iconSize"> <property name="iconSize">
@ -1695,6 +1725,34 @@ outline: none;</string>
</property> </property>
</widget> </widget>
</item> </item>
<item>
<widget class="QPushButton" name="pushButtonToggleGUI2">
<property name="sizePolicy">
<sizepolicy hsizetype="Fixed" vsizetype="Expanding">
<horstretch>0</horstretch>
<verstretch>0</verstretch>
</sizepolicy>
</property>
<property name="styleSheet">
<string notr="true">background-color: rgba(136, 138, 133, 0.5);
outline: none;</string>
</property>
<property name="text">
<string/>
</property>
<property name="icon">
<iconset>
<normalon>:/eye-hot.png</normalon>
</iconset>
</property>
<property name="iconSize">
<size>
<width>50</width>
<height>50</height>
</size>
</property>
</widget>
</item>
<item> <item>
<widget class="QPushButton" name="pushButtonExit2"> <widget class="QPushButton" name="pushButtonExit2">
<property name="sizePolicy"> <property name="sizePolicy">
@ -1889,6 +1947,118 @@ outline: none;</string>
<property name="bottomMargin"> <property name="bottomMargin">
<number>10</number> <number>10</number>
</property> </property>
<item>
<widget class="QPushButton" name="pushButtonAndroidAuto2">
<property name="sizePolicy">
<sizepolicy hsizetype="Fixed" vsizetype="Expanding">
<horstretch>0</horstretch>
<verstretch>0</verstretch>
</sizepolicy>
</property>
<property name="styleSheet">
<string notr="true">background-color: rgba(136, 138, 133, 0.5);
outline: none;</string>
</property>
<property name="text">
<string/>
</property>
<property name="icon">
<iconset>
<normalon>:/aausb-hot.png</normalon>
</iconset>
</property>
<property name="iconSize">
<size>
<width>50</width>
<height>50</height>
</size>
</property>
</widget>
</item>
<item>
<widget class="QPushButton" name="pushButtonWifi2">
<property name="sizePolicy">
<sizepolicy hsizetype="Fixed" vsizetype="Expanding">
<horstretch>0</horstretch>
<verstretch>0</verstretch>
</sizepolicy>
</property>
<property name="styleSheet">
<string notr="true">background-color: rgba(136, 138, 133, 0.5);
outline: none;</string>
</property>
<property name="text">
<string/>
</property>
<property name="icon">
<iconset>
<normalon>:/aawifi-hot.png</normalon>
</iconset>
</property>
<property name="iconSize">
<size>
<width>50</width>
<height>50</height>
</size>
</property>
</widget>
</item>
<item>
<widget class="QPushButton" name="pushButtonDay2">
<property name="sizePolicy">
<sizepolicy hsizetype="Fixed" vsizetype="Expanding">
<horstretch>0</horstretch>
<verstretch>0</verstretch>
</sizepolicy>
</property>
<property name="styleSheet">
<string notr="true">background-color: rgba(136, 138, 133, 0.5);
outline: none;</string>
</property>
<property name="text">
<string/>
</property>
<property name="icon">
<iconset>
<normalon>:/day-hot.png</normalon>
</iconset>
</property>
<property name="iconSize">
<size>
<width>50</width>
<height>50</height>
</size>
</property>
</widget>
</item>
<item>
<widget class="QPushButton" name="pushButtonNight2">
<property name="sizePolicy">
<sizepolicy hsizetype="Fixed" vsizetype="Expanding">
<horstretch>0</horstretch>
<verstretch>0</verstretch>
</sizepolicy>
</property>
<property name="styleSheet">
<string notr="true">background-color: rgba(136, 138, 133, 0.5);
outline: none;</string>
</property>
<property name="text">
<string/>
</property>
<property name="icon">
<iconset>
<normalon>:/night-hot.png</normalon>
</iconset>
</property>
<property name="iconSize">
<size>
<width>50</width>
<height>50</height>
</size>
</property>
</widget>
</item>
<item> <item>
<widget class="QPushButton" name="pushButtonCameraShow2"> <widget class="QPushButton" name="pushButtonCameraShow2">
<property name="sizePolicy"> <property name="sizePolicy">
@ -1945,34 +2115,6 @@ outline: none;</string>
</property> </property>
</widget> </widget>
</item> </item>
<item>
<widget class="QPushButton" name="pushButtonWifi2">
<property name="sizePolicy">
<sizepolicy hsizetype="Fixed" vsizetype="Expanding">
<horstretch>0</horstretch>
<verstretch>0</verstretch>
</sizepolicy>
</property>
<property name="styleSheet">
<string notr="true">background-color: rgba(136, 138, 133, 0.5);
outline: none;</string>
</property>
<property name="text">
<string/>
</property>
<property name="icon">
<iconset>
<normalon>:/wifi-hot.png</normalon>
</iconset>
</property>
<property name="iconSize">
<size>
<width>50</width>
<height>50</height>
</size>
</property>
</widget>
</item>
<item> <item>
<widget class="QPushButton" name="pushButtonDebug2"> <widget class="QPushButton" name="pushButtonDebug2">
<property name="sizePolicy"> <property name="sizePolicy">
@ -2001,92 +2143,6 @@ outline: none;</string>
</property> </property>
</widget> </widget>
</item> </item>
<item>
<widget class="QPushButton" name="pushButtonMusic2">
<property name="sizePolicy">
<sizepolicy hsizetype="Fixed" vsizetype="Expanding">
<horstretch>0</horstretch>
<verstretch>0</verstretch>
</sizepolicy>
</property>
<property name="styleSheet">
<string notr="true">background-color: rgba(136, 138, 133, 0.5);
outline: none;</string>
</property>
<property name="text">
<string/>
</property>
<property name="icon">
<iconset>
<normalon>:/mp3-hot.png</normalon>
</iconset>
</property>
<property name="iconSize">
<size>
<width>50</width>
<height>50</height>
</size>
</property>
</widget>
</item>
<item>
<widget class="QPushButton" name="pushButtonDummyClassic1">
<property name="sizePolicy">
<sizepolicy hsizetype="Fixed" vsizetype="Expanding">
<horstretch>0</horstretch>
<verstretch>0</verstretch>
</sizepolicy>
</property>
<property name="minimumSize">
<size>
<width>62</width>
<height>0</height>
</size>
</property>
<property name="styleSheet">
<string notr="true">background-color: rgba(136, 138, 133, 0.5);
outline: none;</string>
</property>
<property name="text">
<string/>
</property>
<property name="iconSize">
<size>
<width>50</width>
<height>50</height>
</size>
</property>
</widget>
</item>
<item>
<widget class="QPushButton" name="pushButtonDummyClassic2">
<property name="sizePolicy">
<sizepolicy hsizetype="Fixed" vsizetype="Expanding">
<horstretch>0</horstretch>
<verstretch>0</verstretch>
</sizepolicy>
</property>
<property name="minimumSize">
<size>
<width>62</width>
<height>0</height>
</size>
</property>
<property name="styleSheet">
<string notr="true">background-color: rgba(136, 138, 133, 0.5);
outline: none;</string>
</property>
<property name="text">
<string/>
</property>
<property name="iconSize">
<size>
<width>50</width>
<height>50</height>
</size>
</property>
</widget>
</item>
</layout> </layout>
</widget> </widget>
</item> </item>

View File

@ -7,7 +7,7 @@
<x>0</x> <x>0</x>
<y>0</y> <y>0</y>
<width>963</width> <width>963</width>
<height>3033</height> <height>3062</height>
</rect> </rect>
</property> </property>
<property name="sizePolicy"> <property name="sizePolicy">
@ -2499,7 +2499,7 @@ outline: none;</string>
</size> </size>
</property> </property>
<property name="text"> <property name="text">
<string>Used SSID:</string> <string>SSID:</string>
</property> </property>
</widget> </widget>
</item> </item>
@ -2531,7 +2531,7 @@ outline: none;</string>
</property> </property>
</widget> </widget>
</item> </item>
<item row="2" column="0"> <item row="3" column="0">
<widget class="QLabel" name="label_wifimode"> <widget class="QLabel" name="label_wifimode">
<property name="minimumSize"> <property name="minimumSize">
<size> <size>
@ -2550,7 +2550,7 @@ outline: none;</string>
</property> </property>
</widget> </widget>
</item> </item>
<item row="2" column="1"> <item row="3" column="1">
<widget class="QLineEdit" name="lineEdit_wifimode"> <widget class="QLineEdit" name="lineEdit_wifimode">
<property name="minimumSize"> <property name="minimumSize">
<size> <size>
@ -2566,8 +2566,8 @@ outline: none;</string>
</property> </property>
</widget> </widget>
</item> </item>
<item row="3" column="0"> <item row="4" column="0">
<widget class="QLabel" name="label_23"> <widget class="QLabel" name="label_hotspot">
<property name="sizePolicy"> <property name="sizePolicy">
<sizepolicy hsizetype="Fixed" vsizetype="Fixed"> <sizepolicy hsizetype="Fixed" vsizetype="Fixed">
<horstretch>0</horstretch> <horstretch>0</horstretch>
@ -2594,13 +2594,36 @@ outline: none;</string>
</property> </property>
</widget> </widget>
</item> </item>
<item row="3" column="1"> <item row="4" column="1">
<widget class="QCheckBox" name="checkBoxHotspot"> <widget class="QCheckBox" name="checkBoxHotspot">
<property name="text"> <property name="text">
<string>Yes</string> <string>Yes</string>
</property> </property>
</widget> </widget>
</item> </item>
<item row="2" column="1">
<widget class="QLineEdit" name="lineEditPassword">
<property name="minimumSize">
<size>
<width>200</width>
<height>0</height>
</size>
</property>
<property name="maximumSize">
<size>
<width>200</width>
<height>16777215</height>
</size>
</property>
</widget>
</item>
<item row="2" column="0">
<widget class="QLabel" name="label_password">
<property name="text">
<string>Password (default)</string>
</property>
</widget>
</item>
</layout> </layout>
</item> </item>
</layout> </layout>

141
src/autoapp/UI/warning.ui Normal file
View File

@ -0,0 +1,141 @@
<?xml version="1.0" encoding="UTF-8"?>
<ui version="4.0">
<class>Warning</class>
<widget class="QDialog" name="Warning">
<property name="geometry">
<rect>
<x>0</x>
<y>0</y>
<width>500</width>
<height>300</height>
</rect>
</property>
<property name="sizePolicy">
<sizepolicy hsizetype="Expanding" vsizetype="Preferred">
<horstretch>0</horstretch>
<verstretch>0</verstretch>
</sizepolicy>
</property>
<property name="windowTitle">
<string>Warning</string>
</property>
<property name="styleSheet">
<string notr="true">background-color: rgb(186, 189, 182);
border-color: rgb(0, 0, 0);
</string>
</property>
<layout class="QVBoxLayout" name="verticalLayout">
<property name="spacing">
<number>4</number>
</property>
<property name="leftMargin">
<number>4</number>
</property>
<property name="topMargin">
<number>4</number>
</property>
<property name="rightMargin">
<number>4</number>
</property>
<property name="bottomMargin">
<number>4</number>
</property>
<item>
<widget class="QGroupBox" name="groupBox">
<property name="font">
<font>
<pointsize>14</pointsize>
<weight>75</weight>
<bold>true</bold>
</font>
</property>
<property name="styleSheet">
<string notr="true">background-color: rgb(136, 138, 133);
color: rgb(255, 255, 255);
border-color: rgb(186, 189, 182);
</string>
</property>
<property name="title">
<string>Safety Information</string>
</property>
<property name="alignment">
<set>Qt::AlignHCenter|Qt::AlignTop</set>
</property>
<layout class="QVBoxLayout" name="verticalLayout_2">
<property name="spacing">
<number>2</number>
</property>
<property name="leftMargin">
<number>2</number>
</property>
<property name="topMargin">
<number>2</number>
</property>
<property name="rightMargin">
<number>2</number>
</property>
<property name="bottomMargin">
<number>2</number>
</property>
<item>
<widget class="QLabel" name="label">
<property name="sizePolicy">
<sizepolicy hsizetype="Expanding" vsizetype="Expanding">
<horstretch>0</horstretch>
<verstretch>0</verstretch>
</sizepolicy>
</property>
<property name="styleSheet">
<string notr="true">background-color: rgb(136, 138, 133);</string>
</property>
<property name="lineWidth">
<number>1</number>
</property>
<property name="text">
<string>&lt;html&gt;&lt;head/&gt;&lt;body&gt;&lt;p&gt;&lt;span style=&quot; font-weight:600; color:#271191;&quot;&gt;WARNING!&lt;/span&gt;&lt;/p&gt;&lt;p&gt;&lt;span style=&quot; font-weight:600; color:#271191;&quot;&gt;Distraction may cause accidents. Do not attempt to operate while driving. Always concentrate on driving and obey Traffic Regulations. You assume total responsibility and risk for using this software.&lt;/span&gt;&lt;/p&gt;&lt;p&gt;&lt;span style=&quot; font-weight:600; color:#271191;&quot;&gt;This software is not certified by Google Inc. It is created for R&amp;amp;D purposes and may not work as expected by the original authors. Do not use while driving.&lt;/span&gt;&lt;/p&gt;&lt;p&gt;&lt;span style=&quot; font-weight:600; color:#271191;&quot;&gt;You use this software at your own risk.&lt;/span&gt;&lt;/p&gt;&lt;/body&gt;&lt;/html&gt;</string>
</property>
<property name="alignment">
<set>Qt::AlignHCenter|Qt::AlignTop</set>
</property>
<property name="wordWrap">
<bool>true</bool>
</property>
</widget>
</item>
</layout>
</widget>
</item>
<item>
<widget class="QPushButton" name="pushButtonClose">
<property name="minimumSize">
<size>
<width>0</width>
<height>40</height>
</size>
</property>
<property name="maximumSize">
<size>
<width>16777215</width>
<height>40</height>
</size>
</property>
<property name="font">
<font>
<weight>75</weight>
<bold>true</bold>
</font>
</property>
<property name="styleSheet">
<string notr="true">background-color: rgb(186, 189, 182);</string>
</property>
<property name="text">
<string>OK</string>
</property>
</widget>
</item>
</layout>
</widget>
<layoutdefault spacing="6" margin="11"/>
<resources/>
<connections/>
</ui>

View File

@ -35,6 +35,7 @@
#include <f1x/openauto/autoapp/UI/SettingsWindow.hpp> #include <f1x/openauto/autoapp/UI/SettingsWindow.hpp>
#include <f1x/openauto/autoapp/UI/ConnectDialog.hpp> #include <f1x/openauto/autoapp/UI/ConnectDialog.hpp>
#include <f1x/openauto/autoapp/UI/WifiDialog.hpp> #include <f1x/openauto/autoapp/UI/WifiDialog.hpp>
#include <f1x/openauto/autoapp/UI/Warning.hpp>
#include <f1x/openauto/Common/Log.hpp> #include <f1x/openauto/Common/Log.hpp>
namespace aasdk = f1x::aasdk; namespace aasdk = f1x::aasdk;
@ -98,7 +99,7 @@ int main(int argc, char* argv[])
autoapp::ui::SettingsWindow settingsWindow(configuration); autoapp::ui::SettingsWindow settingsWindow(configuration);
settingsWindow.setWindowFlags(Qt::WindowStaysOnTopHint); settingsWindow.setWindowFlags(Qt::WindowStaysOnTopHint);
//settingsWindow.showFullScreen();
settingsWindow.setFixedSize(width, height); settingsWindow.setFixedSize(width, height);
settingsWindow.adjustSize(); settingsWindow.adjustSize();
@ -114,7 +115,12 @@ int main(int argc, char* argv[])
autoapp::ui::ConnectDialog connectDialog(ioService, tcpWrapper, recentAddressesList); autoapp::ui::ConnectDialog connectDialog(ioService, tcpWrapper, recentAddressesList);
connectDialog.setWindowFlags(Qt::WindowStaysOnTopHint); connectDialog.setWindowFlags(Qt::WindowStaysOnTopHint);
// center dialog // center dialog
connectDialog.move((width - 500)/2,(height-440)/2); connectDialog.move((width - 500)/2,(height-360)/2);
autoapp::ui::Warning warning;
warning.setWindowFlags(Qt::WindowStaysOnTopHint);
// center dialog
warning.move((width - 500)/2,(height-300)/2);
QObject::connect(&mainWindow, &autoapp::ui::MainWindow::exit, []() { system("touch /tmp/shutdown"); std::exit(0); }); QObject::connect(&mainWindow, &autoapp::ui::MainWindow::exit, []() { system("touch /tmp/shutdown"); std::exit(0); });
QObject::connect(&mainWindow, &autoapp::ui::MainWindow::reboot, []() { system("touch /tmp/reboot"); std::exit(0); }); QObject::connect(&mainWindow, &autoapp::ui::MainWindow::reboot, []() { system("touch /tmp/reboot"); std::exit(0); });
@ -229,13 +235,27 @@ int main(int argc, char* argv[])
app->start(std::move(socket)); app->start(std::move(socket));
}); });
//QObject::connect(&mainWindow, &autoapp::ui::MainWindow::TriggerAAStart, [&qApplication]() { QObject::connect(&mainWindow, &autoapp::ui::MainWindow::TriggerAppStart, [&app]() {
// OPENAUTO_LOG(info) << "[CS] Manual start android auto entity."; OPENAUTO_LOG(info) << "[CS] Manual start android auto entity by reset usb.";
//}); if (std::ifstream("/tmp/android_device")) {
system("/usr/local/bin/autoapp_helper usbreset &");
app->waitForUSBDevice();
}
});
//QObject::connect(&mainWindow, &autoapp::ui::MainWindow::TriggerAAStop, [&qApplication]() { QObject::connect(&mainWindow, &autoapp::ui::MainWindow::TriggerAppStop, [&app]() {
// OPENAUTO_LOG(info) << "[CS] Manual stop android auto entity."; OPENAUTO_LOG(info) << "[CS] Manual stop android auto entity.";
//}); if (std::ifstream("/tmp/android_device")) {
system("/usr/local/bin/autoapp_helper usbreset");
usleep(500000);
app->stop();
} else {
//app->onAndroidAutoQuit();
app->stop();
}
});
warning.show();
app->waitForUSBDevice(); app->waitForUSBDevice();