Compare commits

...

6 Commits

Author SHA1 Message Date
Edouard Griffiths 5e321e3ead
Merge pull request #2068 from dforsi/feature/map-feature
Feature/map feature
2024-04-25 00:23:12 +02:00
Daniele Forsi 991ccddb66 Close any open dialog when sdrangel quits 2024-04-23 20:23:07 +02:00
Daniele Forsi b4ec43e4aa Raise the Beacon, IBP Beacons an Radio Time dialogs
Make the dialogs visible again if they are open but are hidden behind
the main window or another application's window.
2024-04-22 23:05:04 +02:00
Daniele Forsi f4b2dfc0a9 Revert "Prevent the dialogs to be hidden behind the main window"
This reverts commit f72574d1ad.
2024-04-22 22:42:00 +02:00
Daniele Forsi f72574d1ad Prevent the dialogs to be hidden behind the main window
This also menas that when the main window is closed, the dialogs get
closed automatically, and not only when the map window is closed.
2024-04-22 22:39:19 +02:00
Daniele Forsi 230c461204 Update the IPB beacons table only when the dialog is visible 2024-04-22 22:39:19 +02:00
5 changed files with 22 additions and 2 deletions

View File

@ -31,6 +31,7 @@ MapBeaconDialog::MapBeaconDialog(MapGUI *gui, QWidget* parent) :
ui(new Ui::MapBeaconDialog)
{
ui->setupUi(this);
setAttribute(Qt::WA_QuitOnClose, false);
connect(&m_dlm, &HttpDownloadManager::downloadComplete, this, &MapBeaconDialog::downloadFinished);
}

View File

@ -2507,17 +2507,20 @@ void MapGUI::on_displaySettings_clicked()
void MapGUI::on_beacons_clicked()
{
m_beaconDialog.show();
m_beaconDialog.raise();
}
void MapGUI::on_ibpBeacons_clicked()
{
m_ibpBeaconDialog.show();
m_ibpBeaconDialog.raise();
}
void MapGUI::on_radiotime_clicked()
{
m_radioTimeDialog.updateTable();
m_radioTimeDialog.show();
m_radioTimeDialog.raise();
}
QString MapGUI::getDataDir()

View File

@ -30,9 +30,9 @@ MapIBPBeaconDialog::MapIBPBeaconDialog(MapGUI *gui, QWidget* parent) :
ui(new Ui::MapIBPBeaconDialog)
{
ui->setupUi(this);
setAttribute(Qt::WA_QuitOnClose, false);
connect(&m_timer, &QTimer::timeout, this, &MapIBPBeaconDialog::updateTime);
m_timer.setInterval(1000);
m_timer.start();
ui->beacons->setRowCount(IBPBeacon::m_frequencies.size());
for (int row = 0; row < IBPBeacon::m_frequencies.size(); row++)
{
@ -44,7 +44,6 @@ MapIBPBeaconDialog::MapIBPBeaconDialog(MapGUI *gui, QWidget* parent) :
ui->beacons->setItem(row, IBP_BEACON_COL_DISTANCE, new QTableWidgetItem(""));
}
resizeTable();
updateTable(QTime::currentTime());
}
MapIBPBeaconDialog::~MapIBPBeaconDialog()
@ -126,3 +125,17 @@ void MapIBPBeaconDialog::updateTime()
updateTable(t);
}
}
void MapIBPBeaconDialog::showEvent(QShowEvent *event)
{
(void) event;
updateTable(QTime::currentTime());
updateTime();
m_timer.start();
}
void MapIBPBeaconDialog::hideEvent(QHideEvent *event)
{
(void) event;
m_timer.stop();
}

View File

@ -43,6 +43,8 @@ private slots:
void accept();
void on_beacons_cellDoubleClicked(int row, int column);
void updateTime();
void showEvent(QShowEvent *event);
void hideEvent(QHideEvent *event);
private:
MapGUI *m_gui;

View File

@ -29,6 +29,7 @@ MapRadioTimeDialog::MapRadioTimeDialog(MapGUI *gui, QWidget* parent) :
ui(new Ui::MapRadioTimeDialog)
{
ui->setupUi(this);
setAttribute(Qt::WA_QuitOnClose, false);
// Don't call updateTable until m_gui->getAzEl() will return valid location
}