Commit 968d9486 authored by Don Gagne's avatar Don Gagne

Add support for "All commands" category

parent 25ca15d1
......@@ -23,6 +23,7 @@
MissionCommandTree::MissionCommandTree(QGCApplication* app, bool unitTest)
: QGCTool(app)
, _allCommandsCategory(tr("All commands"))
, _settingsManager(NULL)
, _unitTest(unitTest)
{
......@@ -168,6 +169,7 @@ void MissionCommandTree::_buildAvailableCommands(Vehicle* vehicle)
_availableCategories[baseFirmwareType][baseVehicleType].append(newCategory);
}
}
_availableCategories[baseFirmwareType][baseVehicleType].append(_allCommandsCategory);
}
QStringList MissionCommandTree::_availableCategoriesForVehicle(Vehicle* vehicle)
......@@ -238,7 +240,7 @@ QVariantList MissionCommandTree::getCommandsForCategory(Vehicle* vehicle, const
QMap<MAV_CMD, MissionCommandUIInfo*> commandMap = _availableCommands[baseFirmwareType][baseVehicleType];
foreach (MAV_CMD command, commandMap.keys()) {
MissionCommandUIInfo* uiInfo = commandMap[command];
if (uiInfo->category() == category) {
if (uiInfo->category() == category || category == _allCommandsCategory) {
list.append(QVariant::fromValue(uiInfo));
}
}
......
......@@ -76,11 +76,13 @@ private:
void _baseVehicleInfo(Vehicle* vehicle, MAV_AUTOPILOT& baseFirmwareType, MAV_TYPE& baseVehicleType) const;
private:
/// List of all known command ids (not vehicle specific)
QList<int> _allCommandIds;
QString _allCommandsCategory; ///< Category which contains all available commands
QList<int> _allCommandIds; ///< List of all known command ids (not vehicle specific)
SettingsManager* _settingsManager;
bool _unitTest; ///< true: running in unit test mode
/// Full hierarchy
QMap<MAV_AUTOPILOT, QMap<MAV_TYPE, MissionCommandList*>> _staticCommandTree;
QMap<MAV_AUTOPILOT, QMap<MAV_TYPE, MissionCommandList*>> _staticCommandTree;
/// Collapsed hierarchy for specific vehicle type
QMap<MAV_AUTOPILOT, QMap<MAV_TYPE, QMap<MAV_CMD, MissionCommandUIInfo*>>> _availableCommands;
......@@ -88,8 +90,6 @@ private:
/// Collapsed hierarchy for specific vehicle type
QMap<MAV_AUTOPILOT, QMap<MAV_TYPE, QStringList>> _availableCategories;
SettingsManager* _settingsManager;
bool _unitTest; ///< true: running in unit test mode
#ifdef UNITTEST_BUILD
friend class MissionCommandTreeTest;
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment