/* * Copyright (C) OpenTX * * Based on code named * th9x - http://code.google.com/p/th9x * er9x - http://code.google.com/p/er9x * gruvin9x - http://code.google.com/p/gruvin9x * * License GPLv2: http://www.gnu.org/licenses/gpl-2.0.html * * This program is free software; you can redistribute it and/or modify * it under the terms of the GNU General Public License version 2 as * published by the Free Software Foundation. * * This program is distributed in the hope that it will be useful, * but WITHOUT ANY WARRANTY; without even the implied warranty of * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the * GNU General Public License for more details. */ #include "radiodata.h" #include "radiodataconversionstate.h" #include "eeprominterface.h" // static QString RadioData::getElementName(const QString & prefix, unsigned int index, const char * name, bool padding) { QString result = prefix; if (padding) result += QString("%1").arg(index, 2, 10, QChar('0')); else result += QString("%1").arg(index); if (name) { QString trimmed = QString(name).trimmed(); if (trimmed.length() > 0) { result += ":" + QString(name).trimmed(); } } return result; } RadioData::RadioData() { models.resize(getCurrentFirmware()->getCapability(Models)); } void RadioData::setCurrentModel(unsigned int index) { generalSettings.currModelIndex = index; if (index < models.size()) { strcpy(generalSettings.currModelFilename, models[index].filename); } } void RadioData::fixModelFilename(unsigned int index) { ModelData & model = models[index]; QString filename(model.filename); bool ok = filename.endsWith(".bin"); if (ok) { if (filename.startsWith("model") && filename.mid(5, filename.length()-9).toInt() > 0) { ok = false; } } if (ok) { for (unsigned i=0; igetCapability(Models) && getCurrentFirmware()->getCapability(Models) != (int)models.size()) { models.resize(getCurrentFirmware()->getCapability(Models)); } }