mirror of
				https://github.com/f4exb/sdrangel.git
				synced 2025-10-30 12:30:20 -04:00 
			
		
		
		
	API: /sdrangel/featureset (POST, DELETE) fully implemented
This commit is contained in:
		
							parent
							
								
									d07f7fbb8a
								
							
						
					
					
						commit
						e2286cc741
					
				| @ -1408,11 +1408,9 @@ int WebAPIAdapter::instanceDeviceSetDelete( | |||||||
|         SWGSDRangel::SWGSuccessResponse& response, |         SWGSDRangel::SWGSuccessResponse& response, | ||||||
|         SWGSDRangel::SWGErrorResponse& error) |         SWGSDRangel::SWGErrorResponse& error) | ||||||
| { | { | ||||||
| #ifdef SERVER_MODE |     unsigned int minFeatureSets = QCoreApplication::applicationName() == "SDRangelSrv" ? 0 : 1; | ||||||
|     if (m_mainCore->m_deviceSets.size() != 0) | 
 | ||||||
| #else |     if (m_mainCore->m_deviceSets.size() > minFeatureSets) | ||||||
|     if (m_mainCore->m_deviceSets.size() > 1) |  | ||||||
| #endif |  | ||||||
|     { |     { | ||||||
|         MainCore::MsgRemoveLastDeviceSet *msg = MainCore::MsgRemoveLastDeviceSet::create(); |         MainCore::MsgRemoveLastDeviceSet *msg = MainCore::MsgRemoveLastDeviceSet::create(); | ||||||
|         m_mainCore->m_mainMessageQueue->push(msg); |         m_mainCore->m_mainMessageQueue->push(msg); | ||||||
| @ -1449,11 +1447,9 @@ int WebAPIAdapter::instanceFeatureSetDelete( | |||||||
|         SWGSDRangel::SWGSuccessResponse& response, |         SWGSDRangel::SWGSuccessResponse& response, | ||||||
|         SWGSDRangel::SWGErrorResponse& error) |         SWGSDRangel::SWGErrorResponse& error) | ||||||
| { | { | ||||||
| #ifdef SERVER_MODE |     unsigned int minFeatureSets = QCoreApplication::applicationName() == "SDRangelSrv" ? 0 : 1; | ||||||
|     if (m_mainCore->m_featureSets.size() != 0) | 
 | ||||||
| #else |     if (m_mainCore->m_featureSets.size() > minFeatureSets) | ||||||
|     if (m_mainCore->m_featureSets.size() > 1) |  | ||||||
| #endif |  | ||||||
|     { |     { | ||||||
|         MainCore::MsgRemoveLastFeatureSet *msg = MainCore::MsgRemoveLastFeatureSet::create(); |         MainCore::MsgRemoveLastFeatureSet *msg = MainCore::MsgRemoveLastFeatureSet::create(); | ||||||
|         m_mainCore->m_mainMessageQueue->push(msg); |         m_mainCore->m_mainMessageQueue->push(msg); | ||||||
|  | |||||||
| @ -1086,6 +1086,19 @@ bool MainWindow::handleMessage(const Message& cmd) | |||||||
| 
 | 
 | ||||||
|         return true; |         return true; | ||||||
|     } |     } | ||||||
|  |     else if (MainCore::MsgAddFeatureSet::match(cmd)) | ||||||
|  |     { | ||||||
|  |         addFeatureSet(); | ||||||
|  |         return true; | ||||||
|  |     } | ||||||
|  |     else if (MainCore::MsgRemoveLastFeatureSet::match(cmd)) | ||||||
|  |     { | ||||||
|  |         if (m_mainCore->m_featureSets.size() != 0) { | ||||||
|  |             removeFeatureSet(m_mainCore->m_featureSets.size() - 1); | ||||||
|  |         } | ||||||
|  | 
 | ||||||
|  |         return true; | ||||||
|  |     } | ||||||
|     else if (MainCore::MsgAddChannel::match(cmd)) |     else if (MainCore::MsgAddChannel::match(cmd)) | ||||||
|     { |     { | ||||||
|         MainCore::MsgAddChannel& notif = (MainCore::MsgAddChannel&) cmd; |         MainCore::MsgAddChannel& notif = (MainCore::MsgAddChannel&) cmd; | ||||||
|  | |||||||
| @ -190,6 +190,19 @@ bool MainServer::handleMessage(const Message& cmd) | |||||||
|         } |         } | ||||||
|         return true; |         return true; | ||||||
|     } |     } | ||||||
|  |     else if (MainCore::MsgAddFeatureSet::match(cmd)) | ||||||
|  |     { | ||||||
|  |         addFeatureSet(); | ||||||
|  |         return true; | ||||||
|  |     } | ||||||
|  |     else if (MainCore::MsgRemoveLastFeatureSet::match(cmd)) | ||||||
|  |     { | ||||||
|  |         if (m_mainCore->m_featureSets.size() != 0) { | ||||||
|  |             removeFeatureSet(m_mainCore->m_featureSets.size() - 1); | ||||||
|  |         } | ||||||
|  | 
 | ||||||
|  |         return true; | ||||||
|  |     } | ||||||
|     else if (MainCore::MsgAddChannel::match(cmd)) |     else if (MainCore::MsgAddChannel::match(cmd)) | ||||||
|     { |     { | ||||||
|         MainCore::MsgAddChannel& notif = (MainCore::MsgAddChannel&) cmd; |         MainCore::MsgAddChannel& notif = (MainCore::MsgAddChannel&) cmd; | ||||||
| @ -682,6 +695,18 @@ void MainServer::deleteChannel(int deviceSetIndex, int channelIndex) | |||||||
|     } |     } | ||||||
| } | } | ||||||
| 
 | 
 | ||||||
|  | void MainServer::addFeatureSet() | ||||||
|  | { | ||||||
|  |     m_mainCore->appendFeatureSet(); | ||||||
|  | } | ||||||
|  | 
 | ||||||
|  | void MainServer::removeFeatureSet(unsigned int featureSetIndex) | ||||||
|  | { | ||||||
|  |     if (featureSetIndex < m_mainCore->m_featureSets.size()) { | ||||||
|  |         m_mainCore->removeFeatureSet(featureSetIndex); | ||||||
|  |     } | ||||||
|  | } | ||||||
|  | 
 | ||||||
| void MainServer::addFeature(int featureSetIndex, int selectedFeatureIndex) | void MainServer::addFeature(int featureSetIndex, int selectedFeatureIndex) | ||||||
| { | { | ||||||
|     if (featureSetIndex >= 0) |     if (featureSetIndex >= 0) | ||||||
|  | |||||||
| @ -66,6 +66,8 @@ public: | |||||||
|     void changeSampleMIMO(int deviceSetIndex, int selectedDeviceIndex); |     void changeSampleMIMO(int deviceSetIndex, int selectedDeviceIndex); | ||||||
|     void addChannel(int deviceSetIndex, int selectedChannelIndex); |     void addChannel(int deviceSetIndex, int selectedChannelIndex); | ||||||
|     void deleteChannel(int deviceSetIndex, int channelIndex); |     void deleteChannel(int deviceSetIndex, int channelIndex); | ||||||
|  |     void addFeatureSet(); | ||||||
|  |     void removeFeatureSet(unsigned int featureSetIndex); | ||||||
|     void addFeature(int featureSetIndex, int selectedFeatureIndex); |     void addFeature(int featureSetIndex, int selectedFeatureIndex); | ||||||
|     void deleteFeature(int featureSetIndex, int featureIndex); |     void deleteFeature(int featureSetIndex, int featureIndex); | ||||||
| 
 | 
 | ||||||
|  | |||||||
		Loading…
	
	
			
			x
			
			
		
	
		Reference in New Issue
	
	Block a user