mirror of
				https://github.com/subsurface/subsurface.git
				synced 2025-02-19 22:16:15 +00:00 
			
		
		
		
	cleanup: use taxonomy_get_value() instead of taxonomy_get_index()
Instead of getting the index and using that to access values, use the taxonomy_get_value() helper function. Two places are affected: 1) reverse geo-lookup 2) location filter delegate The behavior of reverse geo-lookup is changed slightly: now an empty string is likewise recognized as missing "TC_ADMIN_L3". Before, only a missing category was interpreted as such. Signed-off-by: Berthold Stoeger <bstoeger@mail.tuwien.ac.at>
This commit is contained in:
		
							parent
							
								
									1f1fd78f78
								
							
						
					
					
						commit
						ee2f466470
					
				
					 2 changed files with 7 additions and 7 deletions
				
			
		|  | @ -114,13 +114,13 @@ taxonomy_data reverseGeoLookup(degrees_t latitude, degrees_t longitude) | |||
| 				taxonomy_set_category(&taxonomy, (taxonomy_category)idx, qPrintable(value), taxonomy_origin::GEOCODED); | ||||
| 			} | ||||
| 		} | ||||
| 		int l3 = taxonomy_index_for_category(&taxonomy, TC_ADMIN_L3); | ||||
| 		int lt = taxonomy_index_for_category(&taxonomy, TC_LOCALNAME); | ||||
| 		if (l3 == -1 && lt != -1) { | ||||
| 		const char *l3 = taxonomy_get_value(&taxonomy, TC_ADMIN_L3); | ||||
| 		const char *lt = taxonomy_get_value(&taxonomy, TC_LOCALNAME); | ||||
| 		if (empty_string(l3) && !empty_string(lt)) { | ||||
| 			// basically this means we did get a local name (what we call town), but just like most places
 | ||||
| 			// we didn't get an adminName_3 - which in some regions is the actual city that town belongs to,
 | ||||
| 			// then we copy the town into the city
 | ||||
| 			taxonomy_set_category(&taxonomy, TC_ADMIN_L3, taxonomy.category[lt].value, taxonomy_origin::GEOCOPIED); | ||||
| 			taxonomy_set_category(&taxonomy, TC_ADMIN_L3, lt, taxonomy_origin::GEOCOPIED); | ||||
| 		} | ||||
| 	} else { | ||||
| 		report_error("geonames.org did not provide reverse lookup information"); | ||||
|  |  | |||
|  | @ -404,12 +404,12 @@ void LocationFilterDelegate::paint(QPainter *painter, const QStyleOptionViewItem | |||
| 	for (int i = 0; i < 3; i++) { | ||||
| 		if (prefs.geocoding.category[i] == TC_NONE) | ||||
| 			continue; | ||||
| 		int idx = taxonomy_index_for_category(&ds->taxonomy, prefs.geocoding.category[i]); | ||||
| 		if (idx == -1) | ||||
| 		const char *value = taxonomy_get_value(&ds->taxonomy, prefs.geocoding.category[i]); | ||||
| 		if (empty_string(value)) | ||||
| 			continue; | ||||
| 		if(!bottomText.isEmpty()) | ||||
| 			bottomText += " / "; | ||||
| 		bottomText += QString(ds->taxonomy.category[idx].value); | ||||
| 		bottomText += QString(value); | ||||
| 	} | ||||
| 
 | ||||
| 	if (bottomText.isEmpty()) | ||||
|  |  | |||
		Loading…
	
	Add table
		Add a link
		
	
		Reference in a new issue