Newer
Older
#include "QGCMapToolBar.h"
#include "QGCMapWidget.h"
#include "ui_QGCMapToolBar.h"
QGCMapToolBar::QGCMapToolBar(QWidget *parent) :
QWidget(parent),
map(NULL),
ui(new Ui::QGCMapToolBar)
{
ui->setupUi(this);
}
void QGCMapToolBar::setMap(QGCMapWidget* map)
{
this->map = map;
if (map)
{
connect(ui->goToButton, SIGNAL(clicked()), map, SLOT(showGoToDialog()));
connect(ui->goHomeButton, SIGNAL(clicked()), map, SLOT(goHome()));
connect(ui->lastPosButton, SIGNAL(clicked()), map, SLOT(loadSettings()));
connect(map, SIGNAL(OnTileLoadStart()), this, SLOT(tileLoadStart()));
connect(map, SIGNAL(OnTileLoadComplete()), this, SLOT(tileLoadEnd()));
connect(map, SIGNAL(OnTilesStillToLoad(int)), this, SLOT(tileLoadProgress(int)));
connect(ui->ripMapButton, SIGNAL(clicked()), map, SLOT(cacheVisibleRegion()));
ui->followCheckBox->setChecked(map->getFollowUAVEnabled());
connect(ui->followCheckBox, SIGNAL(clicked(bool)), map, SLOT(setFollowUAVEnabled(bool)));
// Edit mode handling
ui->editButton->hide();
// const int uavTrailTimeList[] = {1, 2, 3, 4, 5, 6, 7, 8, 9, 10}; // seconds
// const int uavTrailTimeCount = 10;
// const int uavTrailDistanceList[] = {1, 2, 5, 10, 20, 50, 100, 200, 500}; // meters
// const int uavTrailDistanceCount = 9;
// // Build up menu
// //trailPlotMenu(tr("Add trail dot every.."), this);
// for (int i = 0; i < uavTrailTimeCount; ++i)
// {
// trailPlotMenu.addAction(QString("%1 second%2").arg(uavTrailTimeList[i]).arg((uavTrailTimeList[i] > 1) ? "s" : ""), this, SLOT(setUAVTrailTime()));
// }
// for (int i = 0; i < uavTrailDistanceCount; ++i)
// {
// trailPlotMenu.addAction(QString("%1 meter%2").arg(uavTrailDistanceList[i]).arg((uavTrailDistanceList[i] > 1) ? "s" : ""), this, SLOT(setUAVTrailDistance()));
// }
// optionsMenu.addMenu(&trailPlotMenu);
void QGCMapToolBar::setUAVTrailTime()
{
}
void QGCMapToolBar::setUAVTrailDistance()
{
}
void QGCMapToolBar::tileLoadStart()
{
ui->posLabel->setText(QString("Starting to load tiles.."));
}
void QGCMapToolBar::tileLoadEnd()
{
ui->posLabel->setText(QString("Finished"));
}
void QGCMapToolBar::tileLoadProgress(int progress)
{
if (progress == 1)
{
ui->posLabel->setText(QString("1 tile to load.."));
}
else if (progress > 0)
{
ui->posLabel->setText(QString("%1 tiles to load..").arg(progress));
}
else
{
tileLoadEnd();