diff --git a/companion/src/logsdialog.cpp b/companion/src/logsdialog.cpp index d4ca6e913..9195812b4 100644 --- a/companion/src/logsdialog.cpp +++ b/companion/src/logsdialog.cpp @@ -184,46 +184,33 @@ void logsDialog::on_mapsButton_clicked() { int latcol=0, longcol=0, altcol=0, speedcol=0; int itemSelected=0.; bool rangeSelected=false; - enum fieldtype { - T_F, - I_F, - F_F, - G_F - }; ui->FieldsTW->setDisabled(true); ui->logTable->setDisabled(true); - QString fields[]={"SWR","RSSI","A1","A2","GPS Date"\ - ,"GPS Time","Long","Lat","Course","GPS Speed","GPS Alt","Baro Alt"\ - ,"Vertical Speed","Temp1","Temp2","RPM","Fuel","Cell volts","Cell 1"\ - ,"Cell 2","Cell 3","Cell 4","Cell 5","Cell 6","Current","Consumption"\ - ,"Vfas","AccelX","AccelY","AccelZ","Rud","Ele","Thr","Ail"\ - ,"S1","S2","LS","RS","SA","SB","SC","SD","SE","SF","SG","SH"}; - int fieldstype[]={I_F,I_F,F_F,F_F,T_F\ - ,T_F,G_F,G_F,F_F,G_F,G_F,F_F\ - ,F_F,F_F,F_F,I_F,I_F,F_F,F_F\ - ,F_F,F_F,F_F,F_F,F_F,F_F,F_F\ - ,F_F,F_F,F_F,F_F,I_F,I_F,I_F,I_F\ - ,I_F,I_F,I_F,I_F,I_F,I_F,I_F,I_F,I_F,I_F,I_F,I_F}; - + QString gePath=g.gePath(); if (gePath.isEmpty() || !QFile(gePath).exists()) { ui->FieldsTW->setDisabled(false); ui->logTable->setDisabled(false); return; } + QSet nondataCols; for (int i=1; i\n\t\t\t\n\t\t\t\t991081f4\n\t\t\t\t6\n\t\t\t\n\t\t\n"; outputStream << "\t\t\n"; outputStream << "\t\t\t\n\t\t\t\tGPS Speed\n\t\t\t\n"; + // declare additional fields for (int i=0; iFieldsTW->item(0,i)->isSelected() && fieldstype[i]!=G_F ) { - outputStream << "\t\t\t\n\t\t\t\t" << fields[i] << "\n\t\t\t\n"; + if (ui->FieldsTW->item(0,i)->isSelected() && !nondataCols.contains(i+2)) { + QString origName = csvlog.at(0).at(i+2); + QString safeName = origName; + safeName.replace(" ","_"); + outputStream << "\t\t\t\n\t\t\t\t" << origName << "\n\t\t\t\n"; } } outputStream << "\t\t\n"; @@ -335,9 +314,12 @@ void logsDialog::on_mapsButton_clicked() { } } outputStream << "\t\t\t\t\t\t\t\n"; + // add values for additional fields for (int i=0; iFieldsTW->item(0,i)->isSelected() && fieldstype[i]!= G_F ) { - outputStream << "\t\t\t\t\t\t\t\n"; + if (ui->FieldsTW->item(0,i)->isSelected() && !nondataCols.contains(i+2)) { + QString safeName = csvlog.at(0).at(i+2);; + safeName.replace(" ","_"); + outputStream << "\t\t\t\t\t\t\t\n"; for (int j=1; jlogTable->item(j-1,1)->isSelected() &&rangeSelected) || !rangeSelected) { outputStream << "\t\t\t\t\t\t\t\t"<< csvlog.at(j).at(i+2) <<"\n";