IBP Beacons: Add the "DX Entity" column as in the IBP website

This commit is contained in:
Daniele Forsi 2023-08-12 20:26:36 +02:00
parent 028a44ce48
commit 648f329b50
5 changed files with 30 additions and 19 deletions

View File

@ -19,24 +19,24 @@
// Beacon information from https://www.ncdxf.org/beacon/beaconlocations.html
QList<IBPBeacon> IBPBeacon::m_beacons = {
IBPBeacon("4U1UN", "United Nations NY", "FN30AS", 0),
IBPBeacon("VE8AT", "North Canada", "CP38GH", 10),
IBPBeacon("W6WX", "USA (CA)", "CM97BD", 20),
IBPBeacon("KH6RS", "Hawaii", "BL10TS", 30),
IBPBeacon("ZL6B", "New Zealand", "RE78TW", 40),
IBPBeacon("VK6RBP", "West Australia", "OF87AV", 50),
IBPBeacon("JA2IGY", "Japan", "PM84JK", 60),
IBPBeacon("RR9O", "Siberia", "NO14KX", 70),
IBPBeacon("VR2B", "China", "OL72BG", 80),
IBPBeacon("4S7B", "Sri Lanka", "MJ96WV", 90),
IBPBeacon("ZS6DN", "South Africa", "KG33XI", 100),
IBPBeacon("5Z4B", "Kenya", "KI88HR", 110),
IBPBeacon("4X6TU", "Israel", "KM72JB", 120),
IBPBeacon("OH2B", "Finland", "KP20EH", 130),
IBPBeacon("CS3B", "Madeira", "IM12JT", 140),
IBPBeacon("LU4AA", "Argentina", "GF05TJ", 150),
IBPBeacon("OA4B", "Peru", "FH17MW", 160),
IBPBeacon("YV5B", "Venezuela", "FJ69CC", 170)
IBPBeacon("United Nations", "4U1UN", "New York City", "FN30AS", 0),
IBPBeacon("Canada", "VE8AT", "Inuvik (NT)", "CP38GH", 10),
IBPBeacon("United States", "W6WX", "Mt. Umunhum (CA)", "CM97BD", 20),
IBPBeacon("Hawaii", "KH6RS", "Maui ", "BL10TS", 30),
IBPBeacon("New Zealand", "ZL6B", "Masterton", "RE78TW", 40),
IBPBeacon("Australia", "VK6RBP", "Rolystone (WA)", "OF87AV", 50),
IBPBeacon("Japan", "JA2IGY", "Mt. Asama", "PM84JK", 60),
IBPBeacon("Russia", "RR9O", "Novosibirsk", "NO14KX", 70),
IBPBeacon("Hong Kong", "VR2B", "Hong Kong", "OL72BG", 80),
IBPBeacon("Sri Lanka", "4S7B", "Colombo", "MJ96WV", 90),
IBPBeacon("South Africa", "ZS6DN", "Pretoria", "KG33XI", 100),
IBPBeacon("Kenya", "5Z4B", "Kikuyu", "KI88HR", 110),
IBPBeacon("Israel", "4X6TU", "Tel Aviv", "KM72JB", 120),
IBPBeacon("Finland", "OH2B", "Lohja", "KP20EH", 130),
IBPBeacon("Madeira", "CS3B", "São Jorge", "IM12JT", 140),
IBPBeacon("Argentina", "LU4AA", "Buenos Aires", "GF05TJ", 150),
IBPBeacon("Peru", "OA4B", "Lima", "FH17MW", 160),
IBPBeacon("Venezuela", "YV5B", "Caracas", "FJ69CC", 170)
};
// The frequencies in MHz through which the IBP beacons rotate

View File

@ -28,6 +28,7 @@
struct IBPBeacon {
QString m_dxEntity;
QString m_callsign;
QString m_location;
QString m_locator;
@ -35,7 +36,8 @@ struct IBPBeacon {
float m_latitude;
float m_longitude;
IBPBeacon(const QString& callsign, const QString& location, const QString& locator, int offset) :
IBPBeacon(const QString& dxEntity, const QString& callsign, const QString& location, const QString& locator, int offset) :
m_dxEntity(dxEntity),
m_callsign(callsign),
m_location(location),
m_locator(locator),
@ -48,6 +50,7 @@ struct IBPBeacon {
{
QStringList list;
list.append("IBP Beacon");
list.append(QString("DX Entity: %1").arg(m_dxEntity));
list.append(QString("Callsign: %1").arg(m_callsign));
list.append(QString("Frequency: 14.1, 18.11, 21.15, 24.93, 28.2 MHz"));
list.append(QString("Power: 100 Watts ERP"));

View File

@ -38,6 +38,7 @@ MapIBPBeaconDialog::MapIBPBeaconDialog(MapGUI *gui, QWidget* parent) :
ui->beacons->setItem(row, IBP_BEACON_COL_FREQUENCY, new QTableWidgetItem(QString::number(IBPBeacon::m_frequencies[row], 'f', 3)));
ui->beacons->setItem(row, IBP_BEACON_COL_CALLSIGN, new QTableWidgetItem(""));
ui->beacons->setItem(row, IBP_BEACON_COL_LOCATION, new QTableWidgetItem(""));
ui->beacons->setItem(row, IBP_BEACON_COL_DX_ENTITY, new QTableWidgetItem(""));
ui->beacons->setItem(row, IBP_BEACON_COL_AZIMUTH, new QTableWidgetItem(""));
ui->beacons->setItem(row, IBP_BEACON_COL_DISTANCE, new QTableWidgetItem(""));
}
@ -60,6 +61,7 @@ void MapIBPBeaconDialog::updateTable(QTime time)
{
ui->beacons->item(row, IBP_BEACON_COL_CALLSIGN)->setText(IBPBeacon::m_beacons[index].m_callsign);
ui->beacons->item(row, IBP_BEACON_COL_LOCATION)->setText(IBPBeacon::m_beacons[index].m_location);
ui->beacons->item(row, IBP_BEACON_COL_DX_ENTITY)->setText(IBPBeacon::m_beacons[index].m_dxEntity);
// Calculate azimuth and distance to beacon
azEl.setTarget(IBPBeacon::m_beacons[index].m_latitude, IBPBeacon::m_beacons[index].m_longitude, 0.0);

View File

@ -49,6 +49,7 @@ private:
IBP_BEACON_COL_FREQUENCY,
IBP_BEACON_COL_CALLSIGN,
IBP_BEACON_COL_LOCATION,
IBP_BEACON_COL_DX_ENTITY,
IBP_BEACON_COL_AZIMUTH,
IBP_BEACON_COL_DISTANCE
};

View File

@ -89,6 +89,11 @@
<string>Location</string>
</property>
</column>
<column>
<property name="text">
<string>DX Entity</string>
</property>
</column>
<column>
<property name="text">
<string>Azimuth (°)</string>