mirror of https://github.com/qt/qtgrpc.git
59 lines
2.1 KiB
C++
59 lines
2.1 KiB
C++
// Copyright (C) 2023 The Qt Company Ltd.
|
|
// SPDX-License-Identifier: LicenseRef-Qt-Commercial OR BSD-3-Clause
|
|
|
|
#include "emulatorconsole.h"
|
|
#include "ui_emulatorconsole.h"
|
|
|
|
#include <QDoubleValidator>
|
|
#include <QIntValidator>
|
|
|
|
#include "sensors.qpb.h"
|
|
|
|
EmulatorConsole::EmulatorConsole(QWidget *parent) : QWidget(parent), ui(new Ui::EmulatorConsole)
|
|
{
|
|
ui->setupUi(this);
|
|
auto validator = new QDoubleValidator(-90, 90, 7, ui->latitudeValue);
|
|
validator->setLocale(QLocale::c());
|
|
ui->latitudeValue->setValidator(validator);
|
|
|
|
validator = new QDoubleValidator(-180, 180, 7, ui->longitudeValue);
|
|
validator->setLocale(QLocale::c());
|
|
ui->longitudeValue->setValidator(validator);
|
|
|
|
validator = new QDoubleValidator(-1000, 1000, 7, ui->altitudeValue);
|
|
validator->setLocale(QLocale::c());
|
|
ui->altitudeValue->setValidator(validator);
|
|
ui->temperatureValue->setValidator(new QIntValidator(-50, 50, ui->temperatureValue));
|
|
// ![0]
|
|
QObject::connect(ui->sendCoordinates, &QPushButton::clicked, this, [this]() {
|
|
qt::examples::sensors::Coordinates coord;
|
|
coord.setLatitude(ui->latitudeValue->text().toDouble());
|
|
coord.setLongitude(ui->longitudeValue->text().toDouble());
|
|
coord.setAltitude(ui->altitudeValue->text().toDouble());
|
|
emit coordinatesUpdated(coord);
|
|
});
|
|
// ![0]
|
|
|
|
QObject::connect(ui->sendTemperature, &QPushButton::clicked, this, [this]() {
|
|
qt::examples::sensors::Temperature temp;
|
|
temp.setValue(ui->temperatureValue->text().toInt());
|
|
temp.setUnits(ui->celciusRadio->isChecked()
|
|
? qt::examples::sensors::Temperature::Celsius
|
|
: qt::examples::sensors::Temperature::Farenheit);
|
|
emit temperatureUpdated(temp);
|
|
});
|
|
|
|
QObject::connect(ui->sendMessage, &QPushButton::clicked, this, [this]() {
|
|
qt::examples::sensors::WarningNotification warn;
|
|
warn.setText(ui->warningText->toPlainText());
|
|
emit warning(warn);
|
|
});
|
|
}
|
|
|
|
EmulatorConsole::~EmulatorConsole()
|
|
{
|
|
delete ui;
|
|
}
|
|
|
|
#include "moc_emulatorconsole.cpp"
|