oopapidocs
2.0
|
00001 #include <qvariant.h> 00002 #include <qmetaobject.h> 00003 #include <QDebug> 00004 #include "country.h" 00005 00006 static QStringList sCountryNames; 00007 00008 00009 QStringList Country::getCountryNames() { 00010 if (sCountryNames.isEmpty()) { 00011 Country cc; 00012 QMetaProperty mp(cc.metaProperty("val")); 00013 QMetaEnum qmen = mp.enumerator(); 00014 for (int i=0; i<qmen.keyCount(); ++i) { 00015 sCountryNames += qmen.valueToKey(i); 00016 } 00017 } 00018 return sCountryNames; 00019 } 00020 00021 QString Country::toString() const { 00022 const QMetaProperty mp(metaProperty("val")); 00023 QMetaEnum qmen = mp.enumerator(); 00024 return qmen.valueToKey(m_Val); 00025 } 00026 00027 Country::Country(const QString& string) { 00028 const QMetaProperty mp(metaProperty("val")); 00029 QMetaEnum qmen = mp.enumerator(); 00030 m_Val = static_cast<CountryType>(qmen.keyToValue(string.toAscii())); 00031 } 00032 00044 #ifdef TESTCOUNTRY 00045 00046 int main () { 00047 qDebug() << "TestCountry"; 00048 qDebug() << QString(" CountryNames: %1"). 00049 arg(Country::getCountryNames().join(", ")); 00050 return 0; 00051 } 00052 00053 #endif 00054 00055 00056