37 lines
		
	
	
		
			796 B
		
	
	
	
		
			Plaintext
		
	
	
	
	
	
		
		
			
		
	
	
			37 lines
		
	
	
		
			796 B
		
	
	
	
		
			Plaintext
		
	
	
	
	
	
| 
								 | 
							
								/*
							 | 
						||
| 
								 | 
							
								 * Reads cty.dat file
							 | 
						||
| 
								 | 
							
								 * Establishes a map between prefixes and their country names
							 | 
						||
| 
								 | 
							
								 * VK3ACF July 2013
							 | 
						||
| 
								 | 
							
								 */
							 | 
						||
| 
								 | 
							
								
							 | 
						||
| 
								 | 
							
								
							 | 
						||
| 
								 | 
							
								#ifndef __COUNTRYDAT_H
							 | 
						||
| 
								 | 
							
								#define __COUNTRYDAT_H
							 | 
						||
| 
								 | 
							
								
							 | 
						||
| 
								 | 
							
								
							 | 
						||
| 
								 | 
							
								#include <QString>
							 | 
						||
| 
								 | 
							
								#include <QStringList>
							 | 
						||
| 
								 | 
							
								#include <QHash>
							 | 
						||
| 
								 | 
							
								
							 | 
						||
| 
								 | 
							
								
							 | 
						||
| 
								 | 
							
								class CountryDat
							 | 
						||
| 
								 | 
							
								{
							 | 
						||
| 
								 | 
							
								public:
							 | 
						||
| 
								 | 
							
								  void init(const QString filename);
							 | 
						||
| 
								 | 
							
								  void load();
							 | 
						||
| 
								 | 
							
								  QString find(QString prefix) const; // return country name or ""
							 | 
						||
| 
								 | 
							
								  QStringList  getCountryNames() const { return _countryNames; };
							 | 
						||
| 
								 | 
							
								   
							 | 
						||
| 
								 | 
							
								private:
							 | 
						||
| 
								 | 
							
								  QString _extractName(const QString line) const;
							 | 
						||
| 
								 | 
							
								  void _removeBrackets(QString &line, const QString a, const QString b) const;
							 | 
						||
| 
								 | 
							
								  QStringList _extractPrefix(QString &line, bool &more) const;
							 | 
						||
| 
								 | 
							
								  QString fixup (QString country, QString const& call) const;
							 | 
						||
| 
								 | 
							
								
							 | 
						||
| 
								 | 
							
								  QString _filename;
							 | 
						||
| 
								 | 
							
								  QStringList _countryNames;
							 | 
						||
| 
								 | 
							
								  QHash<QString, QString> _data;
							 | 
						||
| 
								 | 
							
								};
							 | 
						||
| 
								 | 
							
								
							 | 
						||
| 
								 | 
							
								#endif
							 |