Use C locale in navaid parsing in VOR demods. Increase table size in VOR demod GUI so more than one row is visible.

This commit is contained in:
Jon Beniston 2021-11-29 10:38:52 +00:00
parent 259e0ad6da
commit a65604c973
3 changed files with 16 additions and 8 deletions

View File

@ -198,6 +198,7 @@ struct NavAid {
FILE *file; FILE *file;
QByteArray utfFilename = filename.toUtf8(); QByteArray utfFilename = filename.toUtf8();
QLocale cLocale(QLocale::C);
if ((file = fopen(utfFilename.constData(), "r")) != NULL) if ((file = fopen(utfFilename.constData(), "r")) != NULL)
{ {
char row[2048]; char row[2048];
@ -298,21 +299,21 @@ struct NavAid {
latitudeString = p; latitudeString = p;
latitudeLen = strlen(latitudeString)-1; latitudeLen = strlen(latitudeString)-1;
latitudeString[latitudeLen] = '\0'; latitudeString[latitudeLen] = '\0';
latitude = atof(latitudeString); latitude = cLocale.toFloat(latitudeString);
} }
else if (idx == longitudeCol) else if (idx == longitudeCol)
{ {
longitudeString = p; longitudeString = p;
longitudeLen = strlen(longitudeString)-1; longitudeLen = strlen(longitudeString)-1;
longitudeString[longitudeLen] = '\0'; longitudeString[longitudeLen] = '\0';
longitude = atof(longitudeString); longitude = cLocale.toFloat(longitudeString);
} }
else if (idx == elevationCol) else if (idx == elevationCol)
{ {
elevationString = p; elevationString = p;
elevationLen = strlen(elevationString)-1; elevationLen = strlen(elevationString)-1;
elevationString[elevationLen] = '\0'; elevationString[elevationLen] = '\0';
elevation = atof(elevationString); elevation = cLocale.toFloat(elevationString);
} }
else if ((idx == powerCol) && (p[0] == '\"')) else if ((idx == powerCol) && (p[0] == '\"'))
{ {

View File

@ -392,9 +392,9 @@
<property name="geometry"> <property name="geometry">
<rect> <rect>
<x>0</x> <x>0</x>
<y>110</y> <y>80</y>
<width>391</width> <width>391</width>
<height>140</height> <height>141</height>
</rect> </rect>
</property> </property>
<property name="sizePolicy"> <property name="sizePolicy">
@ -424,6 +424,12 @@
</property> </property>
<item> <item>
<widget class="QTableWidget" name="vorData"> <widget class="QTableWidget" name="vorData">
<property name="minimumSize">
<size>
<width>0</width>
<height>140</height>
</size>
</property>
<property name="editTriggers"> <property name="editTriggers">
<set>QAbstractItemView::NoEditTriggers</set> <set>QAbstractItemView::NoEditTriggers</set>
</property> </property>

View File

@ -197,6 +197,7 @@ struct NavAid {
FILE *file; FILE *file;
QByteArray utfFilename = filename.toUtf8(); QByteArray utfFilename = filename.toUtf8();
QLocale cLocale(QLocale::C);
if ((file = fopen(utfFilename.constData(), "r")) != NULL) if ((file = fopen(utfFilename.constData(), "r")) != NULL)
{ {
char row[2048]; char row[2048];
@ -297,21 +298,21 @@ struct NavAid {
latitudeString = p; latitudeString = p;
latitudeLen = strlen(latitudeString)-1; latitudeLen = strlen(latitudeString)-1;
latitudeString[latitudeLen] = '\0'; latitudeString[latitudeLen] = '\0';
latitude = atof(latitudeString); latitude = cLocale.toFloat(latitudeString);
} }
else if (idx == longitudeCol) else if (idx == longitudeCol)
{ {
longitudeString = p; longitudeString = p;
longitudeLen = strlen(longitudeString)-1; longitudeLen = strlen(longitudeString)-1;
longitudeString[longitudeLen] = '\0'; longitudeString[longitudeLen] = '\0';
longitude = atof(longitudeString); longitude = cLocale.toFloat(longitudeString);
} }
else if (idx == elevationCol) else if (idx == elevationCol)
{ {
elevationString = p; elevationString = p;
elevationLen = strlen(elevationString)-1; elevationLen = strlen(elevationString)-1;
elevationString[elevationLen] = '\0'; elevationString[elevationLen] = '\0';
elevation = atof(elevationString); elevation = cLocale.toFloat(elevationString);
} }
else if ((idx == powerCol) && (p[0] == '\"')) else if ((idx == powerCol) && (p[0] == '\"'))
{ {