Files
gcs-nf/opmap/mapwidget/waypointparamdialog.cpp
T
2022-09-02 17:36:26 +08:00

59 lines
1.9 KiB
C++

#include "waypointparamdialog.h"
#include "ui_waypointparamdialog.h"
#include <QDebug>
#include <QPushButton>
WayPointParamDialog::WayPointParamDialog(QWidget *parent, Qt::WindowFlags f) :
QDialog(parent, f),
ui(new Ui::WayPointParamDialog)
{
ui->setupUi(this);
setWindowFlag(Qt::FramelessWindowHint);
setWindowFlag(Qt::SubWindow);
// connect(ui->buttonBox, &QDialogButtonBox::accepted, this, [=](){ emit ok(); }, Qt::DirectConnection );
ui->buttonBox->button(QDialogButtonBox::Ok)->setText(tr("ok"));
ui->buttonBox->button(QDialogButtonBox::Cancel)->setText(tr("cancel"));
connect(ui->buttonBox, &QDialogButtonBox::rejected, this, [=](){ isOk = false; emit cancel(); }, Qt::DirectConnection );
connect(ui->buttonBox, &QDialogButtonBox::accepted, this, &WayPointParamDialog::acceptedSlot);
connect(ui->buttonBox, &QDialogButtonBox::accepted, this, &WayPointParamDialog::setButtonString);
}
WayPointParamDialog::~WayPointParamDialog()
{
delete ui;
}
void WayPointParamDialog::setlngLat(double lng, double lat)
{
this->longitude = lng;
this->latitude = lat;
ui->dSpinLongitude->setValue(lng);
ui->dSpinLatitude->setValue(lat);
}
void WayPointParamDialog::setButtonString()
{
QPushButton *btn = ui->buttonBox->button(QDialogButtonBox::Cancel);
btn->setText(tr("delete"));
disconnect(ui->buttonBox, &QDialogButtonBox::accepted, this, &WayPointParamDialog::setButtonString);
connect(ui->buttonBox, &QDialogButtonBox::rejected, this, [this](){ emit remove(); } );
}
void WayPointParamDialog::acceptedSlot()
{
isOk = true;
this->height = ui->dSpinHeight->value();
outsideRadius = ui->dSpinRadius->value();
direction = ui->comBoxDirection->currentIndex() == 0 ? 1 : -1; //方向,-1左盘旋,1右盘旋
longitude = ui->dSpinLongitude->value(); //经度
latitude = ui->dSpinLatitude->value(); //纬度
emit ok();
}