QtLingo 1
QtLingo is an Application to make Qt Computer Translations easier
MyLocalization.cpp
Go to the documentation of this file.
1#include "MyLocalization.h"
2
3
7MyLocalization::MyLocalization(QObject *parent, MyOrgSettings *thisSetting ) : QObject(parent), mySetting(thisSetting)
8{
9 myTranslator = new QTranslator(qApp);
10}
11
16QString MyLocalization::getLanguageFromFile(const QString &thisPrefix, const QString &thisQmLanguageFile)
17{
18 setMessage("getLanguageFromFile", Debug);
19 return getLocalizerCode(thisPrefix, thisQmLanguageFile);
20}
21
26{
27 setMessage("getTranslationSource", Debug);
28 return myTranslationSource;
29}
30
34void MyLocalization::setTranslationSource(const QString &thisTranslationSource)
35{
36 setMessage("setTranslationSource", Debug);
37 myTranslationSource = thisTranslationSource;
38}
39
44{
45 setMessage("getHelpSource", Debug);
46 return myHelpSource;
47}
48
52void MyLocalization::setHelpSource(const QString &thisHelpSource)
53{
54 setMessage("setHelpSource", Debug);
55 myHelpSource = thisHelpSource;
56}
57
62{
63 setMessage("getTransFilePrefix", Debug);
64 return myTransFilePrefix;
65}
66
70void MyLocalization::setTransFilePrefix(const QString &thisTransFilePrefix)
71{
72 setMessage("setTransFilePrefix", Debug);
73 myTransFilePrefix = thisTransFilePrefix;
74}
75
79void MyLocalization::loadLanguage(const QString &thisQmLanguageFile)
80{
81 setMessage("loadLanguage", Debug);
82
83 if (myTranslator->load(thisQmLanguageFile))
84 {
85 if (myLastTranslator == nullptr ) { qApp->removeTranslator(myLastTranslator); }
86 qApp->installTranslator(myTranslator);
87 myLastTranslator = myTranslator;
88 }
89 else
90 {
91 qCritical() << "loadLanguage failed";
92 }
93}
94
98QString MyLocalization::getLanguageFile(const QString &thisLanguageCode, const QString &thisPath, const QString &thisPrefix)
99{
100 setMessage("getLanguageFile", Debug);
101 QString theLang = thisLanguageCode;
102 if (theLang.contains("-"))
103 { theLang = theLang.replace("-", "_"); }
104 const QStringList theQmFiles = getQmFiles(thisPath);
105 for (int i = 0; i < theQmFiles.size(); ++i)
106 {
107 if (languageMatch(thisPrefix, theLang, theQmFiles.at(i)))
108 {
109 return theQmFiles.at(i);
110 }
111 }
112 return "";
113}
114
119{
120 isDebugMessage = thisState;
121 setMessage("setDebugMessage", Debug);
122}
123
128{
129 setMessage("getDebugMessage", Debug);
130 return isDebugMessage;
131}
132
136QString MyLocalization::languageNameFromFile(const QString &thisTranslationFile)
137{
138 setMessage("languageNameFromFile", Debug);
139 QTranslator translator;
140 translator.load(thisTranslationFile);
141 // FIXME
142 return translator.translate("MainWindow", "English");
143}
144
148QString MyLocalization::getLocalizedCodeFromFile(const QString &thisPrefix, const QString &thisQmFile)
149{
150 setMessage("getLocalizedCodeFromFile", Debug);
151 QFileInfo theFileInfo(thisQmFile);
152
153 QString theFileName = theFileInfo.baseName();
154 theFileName = theFileName.remove(QString("%1_").arg(thisPrefix));
155 if (theFileName.contains("_"))
156 {
157 if (!theFileName.contains("zh"))
158 {
159 theFileName = theFileName.section("_", 0, 0);
160 }
161 }
162 return theFileName;
163}
164
168void MyLocalization::removeArgs(const QString &thisString, const QString &thisTransFile)
169{
170 setMessage("removeArgs", Debug);
171 myRemoveTransArgs.append(QString("%1 |%2| in file %3").arg(tr("Remove Arguments that use Percent Sign x"), thisString, thisTransFile));
172} // end removeArgs
173
178{
179 setMessage("fileRemoveArgs", Debug);
180 if (!myRemoveTransArgs.isEmpty())
181 {
182 QString theRemoveFileName = QString("%1").arg(mySetting->getAppDataLocation(), QDir::separator(), "RemoveArgFile.txt");
183 mySetting->writeFile(theRemoveFileName, myRemoveTransArgs);
184 mySetting->showMessageBox(QObject::tr("Remove Args file is created").toLocal8Bit(), QString("%1: %2 %3 %4").arg(tr("Remove Args"), myRemoveTransArgs, tr("File: "), theRemoveFileName).toLocal8Bit(), mySetting->Warning);
185 }
186} // end fileRemoveArgs
187
191void MyLocalization::fixTranslationFile(const QString &thisFile)
192{
193 setMessage("fixTranslationFile", Debug);
194 if (!mySetting->isFileExists(thisFile)) { mySetting->showMessageBox(tr("File not found").toLocal8Bit(), QString("%1: %2").arg(tr("File not found"), thisFile).toLocal8Bit(), mySetting->Critical); return; }
195 //
196 QString theNewFileContent;
197 QFile theInputTxtFile(thisFile);
198 if (theInputTxtFile.open(QIODevice::ReadOnly))
199 {
200 QTextStream theFileStream(&theInputTxtFile);
201 while (!theFileStream.atEnd())
202 {
203 QString theLine = theFileStream.readLine();
204 if (theLine.mid(0, 1) != "[")
205 {
206 QString theTransValue = theLine;
207 theTransValue.remove(QRegExp("\[([^)]+)\\]"));
208 //
209 QRegExp rx("\[([^)]+)\\]");
210 QString theOnlyID = theLine;
211 if (rx.indexIn(theLine) == 0) { theOnlyID = rx.cap(1); }
212 theNewFileContent.append(QString("%1 %2\n").arg(theOnlyID, theTransValue));
213 }
214 }
215 }
216} // end fixTranslationFile
217
221bool MyLocalization::languageMatch(const QString &thisPrefix, const QString &thisLang, const QString &thisQmFile)
222{
223 setMessage("languageMatch", Debug);
224 // qmFile: ProjectName_xx.qm
225 QString theLang = thisLang;
226 QString theLocalizer = getLocalizedCodeFromFile(thisPrefix, thisQmFile);
227 if (theLocalizer.contains("_"))
228 { theLocalizer = theLocalizer.section("_", 0, 0); }
229 if (thisLang.contains("_"))
230 { theLang = thisLang.section("_", 0, 0); }
231 return theLocalizer == theLang;
232}
233
237QStringList MyLocalization::getQmFiles(const QString &thisFolder)
238{
239 setMessage("findQmFiles", Debug);
240 QDir dir(QString(":/%1").arg(thisFolder));
241 QStringList fileNames = dir.entryList(QStringList("*.qm"), QDir::Files, QDir::Name);
242 for (QString &fileName : fileNames)
243 {
244 fileName = dir.filePath(fileName);
245 }
246 return fileNames;
247}
248
252QStringList MyLocalization::findTsFiles(const QString &thisFolder)
253{
254 setMessage("findTsFiles", Debug);
255 QDir dir(thisFolder);
256 QStringList fileNames = dir.entryList(QStringList("*.ts"), QDir::Files, QDir::Name);
257 for (QString &fileName : fileNames)
258 { fileName = dir.filePath(fileName); }
259 return fileNames;
260}
261
265QString MyLocalization::getLocalizerCode(const QString &thisPrefix, const QString &thisQmFile)
266{
267 setMessage("getLocalizerCode", Debug);
268 QString theQmLang = getLocalizedCodeFromFile(thisPrefix, thisQmFile);
269 if (theQmLang.contains("_"))
270 { theQmLang = theQmLang.replace("_", "-"); }
271 return languageCodeToName(theQmLang);
272}
273
277QString MyLocalization::getLangCode(const QString &thisString)
278{
279 setMessage("getLangCode", Debug);
280 QString theLangCode = thisString;
281 if (theLangCode.indexOf('_') < 0) { return ""; }
282 if (theLangCode.indexOf('.') > 0)
283 { theLangCode = theLangCode.mid(0, theLangCode.indexOf('.')); }
284 return theLangCode.mid(theLangCode.indexOf('_') + 1);
285}
286
290QString MyLocalization::languageNameToCode(const QString &lang)
291{
292 setMessage("languageNameToCode", Debug);
293 return s_genericLanguageNameToCode.value(lang);
294} // end languageNameToCode
295
299QString MyLocalization::languageCodeToName(const QString &lang)
300{
301 setMessage("languageCodeToName", Debug);
302 return s_genericLanguageCodeToName.value(lang);
303} // end languageCodeToName
304
309{
310 return language(QLocale());
311}
312
317{
318 setMessage("readLanguage", Debug);
320 return myLanguageCode;
321}
322
326void MyLocalization::writeLanguage(const QString &thisCurrentLanguageCode)
327{
328 setMessage("writeLanguage", Debug);
329 setLanguageCode(thisCurrentLanguageCode);
330 mySetting->writeSettings(MY_LOCALE_LANG_CODE, thisCurrentLanguageCode);
331}
332
336void MyLocalization::setLanguageCode(const QString &thisLanguageCode)
337{
338 setMessage("setLanguageCode", Debug);
339 myLanguageCode = thisLanguageCode;
340}
341
346{
347 setMessage("getLanguageCode", Debug);
348 if (myLanguageCode.isEmpty())
349 {
350 QString theLangCode = language(QLocale());
351 myLanguageCode = mySetting->readSettings(MY_LANG_CODE, theLangCode);
352 }
353 return myLanguageCode;
354}
355
359void MyLocalization::setMainLoaded(bool thisMainLoaded)
360{
361 setMessage("setMainLoaded", Debug);
362 isMainLoaded = thisMainLoaded;
363}
364
369{
370 setMessage("getMainLoaded", Debug);
371 return isMainLoaded;
372}
373
378QString MyLocalization::language(const QLocale &thisLocale)
379{
380 setMessage("language", Debug);
381 switch (thisLocale.language())
382 {
383 case QLocale::Afrikaans: return QStringLiteral("af");
384 case QLocale::Albanian: return QStringLiteral("sq");
385 case QLocale::Amharic: return QStringLiteral("am");
386 case QLocale::Arabic: return QStringLiteral("ar");
387 case QLocale::Armenian: return QStringLiteral("hy");
388 case QLocale::Azerbaijani: return QStringLiteral("az");
389 case QLocale::Bashkir: return QStringLiteral("ba");
390 case QLocale::Basque: return QStringLiteral("eu");
391 case QLocale::Belarusian: return QStringLiteral("be");
392 case QLocale::Bengali: return QStringLiteral("bn");
393 case QLocale::Bosnian: return QStringLiteral("bs");
394 case QLocale::Bulgarian: return QStringLiteral("bg");
395 case QLocale::Catalan: return QStringLiteral("ca");
396 case QLocale::Chinese: return QStringLiteral("zh-CN");
397 case QLocale::LiteraryChinese: return QStringLiteral("zh-TW");
398 case QLocale::Corsican: return QStringLiteral("co");
399 case QLocale::Croatian: return QStringLiteral("hr");
400 case QLocale::Czech: return QStringLiteral("cs");
401 case QLocale::Cantonese: return QStringLiteral("yue");
402 case QLocale::Cebuano: return QStringLiteral("ceb");
403 case QLocale::Chickasaw: return QStringLiteral("ny");
404 case QLocale::Danish: return QStringLiteral("da");
405 case QLocale::Dutch: return QStringLiteral("nl");
406 case QLocale::Esperanto: return QStringLiteral("eo");
407 case QLocale::Estonian: return QStringLiteral("et");
408 case QLocale::Finnish: return QStringLiteral("fi");
409 case QLocale::French: return QStringLiteral("fr");
410 case QLocale::Frisian: return QStringLiteral("fy");
411 case QLocale::Fijian: return QStringLiteral("fj");
412 case QLocale::Galician: return QStringLiteral("gl");
413 case QLocale::Georgian: return QStringLiteral("ka");
414 case QLocale::German: return QStringLiteral("de");
415 case QLocale::Greek: return QStringLiteral("el");
416 case QLocale::Gujarati: return QStringLiteral("gu");
417 case QLocale::Haitian: return QStringLiteral("ht");
418 case QLocale::Hausa: return QStringLiteral("ha");
419 case QLocale::Hawaiian: return QStringLiteral("haw");
420 case QLocale::Hebrew: return QStringLiteral("he");
421 case QLocale::Hindi: return QStringLiteral("hi");
422 case QLocale::Hungarian: return QStringLiteral("hu");
423 //case QLocale::HillMari: return QStringLiteral("mrj");
424 //case QLocale::HmongNjua Hmong:return QStringLiteral("hmn");
425 case QLocale::Icelandic: return QStringLiteral("is");
426 case QLocale::Igbo: return QStringLiteral("ig");
427 case QLocale::Indonesian: return QStringLiteral("id");
428 case QLocale::Irish: return QStringLiteral("ga");
429 case QLocale::Italian: return QStringLiteral("it");
430 case QLocale::Japanese: return QStringLiteral("ja");
431 case QLocale::Javanese: return QStringLiteral("jw");
432 case QLocale::Kannada: return QStringLiteral("kn");
433 case QLocale::Kazakh: return QStringLiteral("kk");
434 case QLocale::Khmer: return QStringLiteral("km");
435 case QLocale::Kinyarwanda: return QStringLiteral("rw");
436 case QLocale::Korean: return QStringLiteral("ko");
437 case QLocale::Kurdish: return QStringLiteral("ku");
438 //case QLocale::Klingon: return QStringLiteral("tlh");
439 //case QLocale::KlingonPlqaD: return QStringLiteral("tlh-Qaak");
440 //case QLocale::Kyrgyzstan: return QStringLiteral("ky");
441 case QLocale::Lao: return QStringLiteral("lo");
442 case QLocale::Latin: return QStringLiteral("la");
443 case QLocale::Latvian: return QStringLiteral("lv");
444 case QLocale::Lithuanian: return QStringLiteral("lt");
445 case QLocale::Luxembourgish: return QStringLiteral("lb");
446 //case QLocale::LevantineArabic:return QStringLiteral("apc");
447 //case QLocale::Mari: return QStringLiteral("mhr");
448 //case QLocale::Myanmar: return QStringLiteral("my");
449 case QLocale::Papiamento: return QStringLiteral("pap");
450 case QLocale::Macedonian: return QStringLiteral("mk");
451 case QLocale::Malagasy: return QStringLiteral("mg");
452 case QLocale::Malay: return QStringLiteral("ms");
453 case QLocale::Malayalam: return QStringLiteral("ml");
454 case QLocale::Maltese: return QStringLiteral("mt");
455 case QLocale::Maori: return QStringLiteral("mi");
456 case QLocale::Marathi: return QStringLiteral("mr");
457 case QLocale::Mongolian: return QStringLiteral("mn");
458 case QLocale::Nepali: return QStringLiteral("ne");
459 case QLocale::NorwegianBokmal: return QStringLiteral("no");
460 case QLocale::Oriya: return QStringLiteral("or");
461 //case QLocale::QueretaroOtomi: return QStringLiteral("otq");
462 case QLocale::Pashto: return QStringLiteral("ps");
463 case QLocale::Persian: return QStringLiteral("fa");
464 case QLocale::Polish: return QStringLiteral("pl");
465 case QLocale::Portuguese: return QStringLiteral("pt");
466 case QLocale::Punjabi: return QStringLiteral("pa");
467 case QLocale::Romanian: return QStringLiteral("ro");
468 case QLocale::Russian: return QStringLiteral("ru");
469 case QLocale::Samoan: return QStringLiteral("sm");
470 case QLocale::Gaelic: return QStringLiteral("gd");
471 case QLocale::Serbian: return QStringLiteral("sr");
472 case QLocale::Shona: return QStringLiteral("sn");
473 case QLocale::Sindhi: return QStringLiteral("sd");
474 case QLocale::Sinhala: return QStringLiteral("si");
475 case QLocale::Slovak: return QStringLiteral("sk");
476 case QLocale::Slovenian: return QStringLiteral("sl");
477 case QLocale::Somali: return QStringLiteral("so");
478 case QLocale::Spanish: return QStringLiteral("es");
479 case QLocale::Sundanese: return QStringLiteral("su");
480 case QLocale::Swahili: return QStringLiteral("sw");
481 case QLocale::Swedish: return QStringLiteral("sv");
482 //case QLocale::SerbianLatin: return QStringLiteral("sr-Latin");
483 //case QLocale::Sesotho: return QStringLiteral("st");
484 case QLocale::Filipino: return QStringLiteral("fil");
485 case QLocale::Tajik: return QStringLiteral("tg");
486 case QLocale::Tamil: return QStringLiteral("ta");
487 case QLocale::Tatar: return QStringLiteral("tt");
488 case QLocale::Telugu: return QStringLiteral("te");
489 case QLocale::Thai: return QStringLiteral("th");
490 case QLocale::Turkish: return QStringLiteral("tr");
491 case QLocale::Turkmen: return QStringLiteral("tk");
492 //case QLocale::Tagalog: return QStringLiteral("tl");
493 case QLocale::Tahitian: return QStringLiteral("ty");
494 case QLocale::Tongan: return QStringLiteral("to");
495 case QLocale::Uighur: return QStringLiteral("ug");
496 case QLocale::Ukrainian: return QStringLiteral("uk");
497 case QLocale::Urdu: return QStringLiteral("ur");
498 case QLocale::Uzbek: return QStringLiteral("uz");
499 //case QLocale::Udmurt: return QStringLiteral("udm");
500 case QLocale::Vietnamese: return QStringLiteral("vi");
501 case QLocale::Welsh: return QStringLiteral("cy");
502 case QLocale::Xhosa: return QStringLiteral("xh");
503 case QLocale::Yiddish: return QStringLiteral("yi");
504 case QLocale::Yoruba: return QStringLiteral("yo");
505 //case QLocale::YucatecMaya: return QStringLiteral("yua");
506 case QLocale::Zulu: return QStringLiteral("zu");
507 default:
508 if (thisLocale.name() == "HaitianCreole")
509 { return QStringLiteral("ht"); }
510 else if (thisLocale.name() == "HillMari")
511 { return QStringLiteral("mrj"); }
512 else if (thisLocale.name() == "Hmong")
513 { return QStringLiteral("hmn"); }
514 else if (thisLocale.name() == "Klingon")
515 { return QStringLiteral("tlh"); }
516 else if (thisLocale.name() == "KlingonPlqaD")
517 { return QStringLiteral("tlh-Qaak"); }
518 else if (thisLocale.name() == "Kyrgyz")
519 { return QStringLiteral("ky"); }
520 else if (thisLocale.name() == "LevantineArabic")
521 { return QStringLiteral("apc"); }
522 else if (thisLocale.name() == "Mari")
523 { return QStringLiteral("mhr"); }
524 else if (thisLocale.name() == "Myanmar")
525 { return QStringLiteral("my"); }
526 else if (thisLocale.name() == "Chichewa")
527 { return QStringLiteral("ny"); }
528 else if (thisLocale.name() == "QueretaroOtomi")
529 { return QStringLiteral("otq"); }
530 else if (thisLocale.name() == "ScotsGaelic")
531 { return QStringLiteral("gd"); }
532 else if (thisLocale.name() == "SerbianCyrillic")
533 { return QStringLiteral("sr"); }
534 else if (thisLocale.name() == "SerbianLatin")
535 { return QStringLiteral("sr-Latin"); }
536 else if (thisLocale.name() == "Sesotho")
537 { return QStringLiteral("st"); }
538 else if (thisLocale.name() == "Tagalog")
539 { return QStringLiteral("tl"); }
540 else if (thisLocale.name() == "Udmurt")
541 { return QStringLiteral("udm"); }
542 else if (thisLocale.name() == "YucatecMaya")
543 { return QStringLiteral("yua"); }
544 return QStringLiteral("en");
545 }
546} // end language(const QLocale
547
551const QMap<QString, QString> MyLocalization::s_genericLanguageNameToCode =
552{
553 { QStringLiteral("Auto"), QStringLiteral("auto") },
554 { QStringLiteral("Afrikaans"), QStringLiteral("af") },
555 { QStringLiteral("Albanian"), QStringLiteral("sq") },
556 { QStringLiteral("Amharic"), QStringLiteral("am") },
557 { QStringLiteral("Arabic"), QStringLiteral("ar") },
558 { QStringLiteral("Armenian"), QStringLiteral("hy") },
559 { QStringLiteral("Azerbaijani"), QStringLiteral("az") },
560 { QStringLiteral("Bashkir"), QStringLiteral("ba") },
561 { QStringLiteral("Basque"), QStringLiteral("eu") },
562 { QStringLiteral("Belarusian"), QStringLiteral("be") },
563 { QStringLiteral("Bengali"), QStringLiteral("bn") },
564 { QStringLiteral("Bosnian"), QStringLiteral("bs") },
565 { QStringLiteral("Bulgarian"), QStringLiteral("bg") },
566 { QStringLiteral("Cantonese"), QStringLiteral("yue") },
567 { QStringLiteral("Catalan"), QStringLiteral("ca") },
568 { QStringLiteral("Cebuano"), QStringLiteral("ceb") },
569 { QStringLiteral("Chichewa"), QStringLiteral("ny") },
570 { QStringLiteral("Corsican"), QStringLiteral("co") },
571 { QStringLiteral("Croatian"), QStringLiteral("hr") },
572 { QStringLiteral("Czech"), QStringLiteral("cs") },
573 { QStringLiteral("Danish"), QStringLiteral("da") },
574 { QStringLiteral("Dutch"), QStringLiteral("nl") },
575 { QStringLiteral("English"), QStringLiteral("en") },
576 { QStringLiteral("Esperanto"), QStringLiteral("eo") },
577 { QStringLiteral("Estonian"), QStringLiteral("et") },
578 { QStringLiteral("Fijian"), QStringLiteral("fj") },
579 { QStringLiteral("Filipino"), QStringLiteral("fil") },
580 { QStringLiteral("Finnish"), QStringLiteral("fi") },
581 { QStringLiteral("French"), QStringLiteral("fr") },
582 { QStringLiteral("Frisian"), QStringLiteral("fy") },
583 { QStringLiteral("Galician"), QStringLiteral("gl") },
584 { QStringLiteral("Georgian"), QStringLiteral("ka") },
585 { QStringLiteral("German"), QStringLiteral("de") },
586 { QStringLiteral("Greek"), QStringLiteral("el") },
587 { QStringLiteral("Gujarati"), QStringLiteral("gu") },
588 { QStringLiteral("HaitianCreole"), QStringLiteral("ht") },
589 { QStringLiteral("Hausa"), QStringLiteral("ha") },
590 { QStringLiteral("Hawaiian"), QStringLiteral("haw") },
591 { QStringLiteral("Hebrew"), QStringLiteral("he") },
592 { QStringLiteral("HillMari"), QStringLiteral("mrj") },
593 { QStringLiteral("Hindi"), QStringLiteral("hi") },
594 { QStringLiteral("Hmong"), QStringLiteral("hmn") },
595 { QStringLiteral("Hungarian"), QStringLiteral("hu") },
596 { QStringLiteral("Icelandic"), QStringLiteral("is") },
597 { QStringLiteral("Igbo"), QStringLiteral("ig") },
598 { QStringLiteral("Indonesian"), QStringLiteral("id") },
599 { QStringLiteral("Irish"), QStringLiteral("ga") },
600 { QStringLiteral("Italian"), QStringLiteral("it") },
601 { QStringLiteral("Japanese"), QStringLiteral("ja") },
602 { QStringLiteral("Javanese"), QStringLiteral("jw") },
603 { QStringLiteral("Kannada"), QStringLiteral("kn") },
604 { QStringLiteral("Kazakh"), QStringLiteral("kk") },
605 { QStringLiteral("Khmer"), QStringLiteral("km") },
606 { QStringLiteral("Kinyarwanda"), QStringLiteral("rw") },
607 { QStringLiteral("Klingon"), QStringLiteral("tlh") },
608 { QStringLiteral("KlingonPlqaD"), QStringLiteral("tlh-Qaak") },
609 { QStringLiteral("Korean"), QStringLiteral("ko") },
610 { QStringLiteral("Kurdish"), QStringLiteral("ku") },
611 { QStringLiteral("Kyrgyz"), QStringLiteral("ky") },
612 { QStringLiteral("Lao"), QStringLiteral("lo") },
613 { QStringLiteral("Latin"), QStringLiteral("la") },
614 { QStringLiteral("Latvian"), QStringLiteral("lv") },
615 { QStringLiteral("LevantineArabic"), QStringLiteral("apc") },
616 { QStringLiteral("Lithuanian"), QStringLiteral("lt") },
617 { QStringLiteral("Luxembourgish"), QStringLiteral("lb") },
618 { QStringLiteral("Macedonian"), QStringLiteral("mk") },
619 { QStringLiteral("Malagasy"), QStringLiteral("mg") },
620 { QStringLiteral("Malay"), QStringLiteral("ms") },
621 { QStringLiteral("Malayalam"), QStringLiteral("ml") },
622 { QStringLiteral("Maltese"), QStringLiteral("mt") },
623 { QStringLiteral("Maori"), QStringLiteral("mi") },
624 { QStringLiteral("Marathi"), QStringLiteral("mr") },
625 { QStringLiteral("Mari"), QStringLiteral("mhr") },
626 { QStringLiteral("Mongolian"), QStringLiteral("mn") },
627 { QStringLiteral("Myanmar"), QStringLiteral("my") },
628 { QStringLiteral("Nepali"), QStringLiteral("ne") },
629 { QStringLiteral("Norwegian"), QStringLiteral("no") },
630 { QStringLiteral("Oriya"), QStringLiteral("or") },
631 { QStringLiteral("Papiamento"), QStringLiteral("pap") },
632 { QStringLiteral("Pashto"), QStringLiteral("ps") },
633 { QStringLiteral("Persian"), QStringLiteral("fa") },
634 { QStringLiteral("Polish"), QStringLiteral("pl") },
635 { QStringLiteral("Portuguese"), QStringLiteral("pt") },
636 { QStringLiteral("Punjabi"), QStringLiteral("pa") },
637 { QStringLiteral("QueretaroOtomi"), QStringLiteral("otq") },
638 { QStringLiteral("Romanian"), QStringLiteral("ro") },
639 { QStringLiteral("Russian"), QStringLiteral("ru") },
640 { QStringLiteral("Samoan"), QStringLiteral("sm") },
641 { QStringLiteral("ScotsGaelic"), QStringLiteral("gd") },
642 { QStringLiteral("SerbianCyrillic"), QStringLiteral("sr") },
643 { QStringLiteral("SerbianLatin"), QStringLiteral("sr-Latin") },
644 { QStringLiteral("Sesotho"), QStringLiteral("st") },
645 { QStringLiteral("Shona"), QStringLiteral("sn") },
646 { QStringLiteral("SimplifiedChinese"), QStringLiteral("zh-CN") },
647 { QStringLiteral("Sindhi"), QStringLiteral("sd") },
648 { QStringLiteral("Sinhala"), QStringLiteral("si") },
649 { QStringLiteral("Slovak"), QStringLiteral("sk") },
650 { QStringLiteral("Slovenian"), QStringLiteral("sl") },
651 { QStringLiteral("Somali"), QStringLiteral("so") },
652 { QStringLiteral("Spanish"), QStringLiteral("es") },
653 { QStringLiteral("Sundanese"), QStringLiteral("su") },
654 { QStringLiteral("Swahili"), QStringLiteral("sw") },
655 { QStringLiteral("Swedish"), QStringLiteral("sv") },
656 { QStringLiteral("SerbianLatin"), QStringLiteral("sr-Latin") },
657 { QStringLiteral("Tagalog"), QStringLiteral("tl") },
658 { QStringLiteral("Tahitian"), QStringLiteral("ty") },
659 { QStringLiteral("Tajik"), QStringLiteral("tg") },
660 { QStringLiteral("Tamil"), QStringLiteral("ta") },
661 { QStringLiteral("Tatar"), QStringLiteral("tt") },
662 { QStringLiteral("Telugu"), QStringLiteral("te") },
663 { QStringLiteral("Thai"), QStringLiteral("th") },
664 { QStringLiteral("Tongan"), QStringLiteral("to") },
665 { QStringLiteral("TraditionalChinese"), QStringLiteral("zh-TW") },
666 { QStringLiteral("Turkish"), QStringLiteral("tr") },
667 { QStringLiteral("Turkmen"), QStringLiteral("tk") },
668 { QStringLiteral("Udmurt"), QStringLiteral("udm") },
669 { QStringLiteral("Uighur"), QStringLiteral("ug") },
670 { QStringLiteral("Ukrainian"), QStringLiteral("uk") },
671 { QStringLiteral("Urdu"), QStringLiteral("ur") },
672 { QStringLiteral("Uzbek"), QStringLiteral("uz") },
673 { QStringLiteral("Udmurt"), QStringLiteral("udm") },
674 { QStringLiteral("Vietnamese"), QStringLiteral("vi") },
675 { QStringLiteral("Welsh"), QStringLiteral("cy") },
676 { QStringLiteral("Xhosa"), QStringLiteral("xh") },
677 { QStringLiteral("Yiddish"), QStringLiteral("yi") },
678 { QStringLiteral("Yoruba"), QStringLiteral("yo") },
679 { QStringLiteral("YucatecMaya"), QStringLiteral("yua") },
680 { QStringLiteral("YucatecMaya"), QStringLiteral("yua") },
681 { QStringLiteral("Zulu"), QStringLiteral("zu") }
682}; // end s_genericLanguageNameToCode
683
687const QMap<QString, QString> MyLocalization::s_genericLanguageCodeToName =
688{
689 { QStringLiteral("auto"), QStringLiteral("Auto") },
690 { QStringLiteral("af"), QStringLiteral("Afrikaans") },
691 { QStringLiteral("sq"), QStringLiteral("Albanian") },
692 { QStringLiteral("am"), QStringLiteral("Amharic") },
693 { QStringLiteral("ar"), QStringLiteral("Arabic") },
694 { QStringLiteral("hy"), QStringLiteral("Armenian") },
695 { QStringLiteral("az"), QStringLiteral("Azerbaijani") },
696 { QStringLiteral("ba"), QStringLiteral("Bashkir") },
697 { QStringLiteral("eu"), QStringLiteral("Basque") },
698 { QStringLiteral("be"), QStringLiteral("Belarusian") },
699 { QStringLiteral("bn"), QStringLiteral("Bengali") },
700 { QStringLiteral("bs"), QStringLiteral("Bosnian") },
701 { QStringLiteral("bg"), QStringLiteral("Bulgarian") },
702 { QStringLiteral("yue"), QStringLiteral("Cantonese") },
703 { QStringLiteral("ca"), QStringLiteral("Catalan") },
704 { QStringLiteral("ceb"), QStringLiteral("Cebuano") },
705 { QStringLiteral("ny"), QStringLiteral("Chichewa") },
706 { QStringLiteral("co"), QStringLiteral("Corsican") },
707 { QStringLiteral("hr"), QStringLiteral("Croatian") },
708 { QStringLiteral("cs"), QStringLiteral("Czech") },
709 { QStringLiteral("da"), QStringLiteral("Danish") },
710 { QStringLiteral("nl"), QStringLiteral("Dutch") },
711 { QStringLiteral("en"), QStringLiteral("English") },
712 { QStringLiteral("eo"), QStringLiteral("Esperanto") },
713 { QStringLiteral("et"), QStringLiteral("Estonian") },
714 { QStringLiteral("fj"), QStringLiteral("Fijian") },
715 { QStringLiteral("fil"), QStringLiteral("Filipino") },
716 { QStringLiteral("fi"), QStringLiteral("Finnish") },
717 { QStringLiteral("fr"), QStringLiteral("French") },
718 { QStringLiteral("fy"), QStringLiteral("Frisian") },
719 { QStringLiteral("gl"), QStringLiteral("Galician") },
720 { QStringLiteral("ka"), QStringLiteral("Georgian") },
721 { QStringLiteral("de"), QStringLiteral("German") },
722 { QStringLiteral("el"), QStringLiteral("Greek") },
723 { QStringLiteral("gu"), QStringLiteral("Gujarati") },
724 { QStringLiteral("ht"), QStringLiteral("HaitianCreole") },
725 { QStringLiteral("ha"), QStringLiteral("Hausa") },
726 { QStringLiteral("haw"), QStringLiteral("Hawaiian") },
727 { QStringLiteral("he"), QStringLiteral("Hebrew") },
728 { QStringLiteral("mrj"), QStringLiteral("HillMari") },
729 { QStringLiteral("hi"), QStringLiteral("Hindi") },
730 { QStringLiteral("hmn"), QStringLiteral("Hmong") },
731 { QStringLiteral("hu"), QStringLiteral("Hungarian") },
732 { QStringLiteral("is"), QStringLiteral("Icelandic") },
733 { QStringLiteral("ig"), QStringLiteral("Igbo") },
734 { QStringLiteral("id"), QStringLiteral("Indonesian") },
735 { QStringLiteral("ga"), QStringLiteral("Irish") },
736 { QStringLiteral("it"), QStringLiteral("Italian") },
737 { QStringLiteral("ja"), QStringLiteral("Japanese") },
738 { QStringLiteral("jw"), QStringLiteral("Javanese") },
739 { QStringLiteral("kn"), QStringLiteral("Kannada") },
740 { QStringLiteral("kk"), QStringLiteral("Kazakh") },
741 { QStringLiteral("km"), QStringLiteral("Khmer") },
742 { QStringLiteral("rw"), QStringLiteral("Kinyarwanda") },
743 { QStringLiteral("tlh"), QStringLiteral("Klingon") },
744 { QStringLiteral("tlh-Qaak"), QStringLiteral("KlingonPlqaD") },
745 { QStringLiteral("ko"), QStringLiteral("Korean") },
746 { QStringLiteral("ku"), QStringLiteral("Kurdish") },
747 { QStringLiteral("ky"), QStringLiteral("Kyrgyz") },
748 { QStringLiteral("lo"), QStringLiteral("Lao") },
749 { QStringLiteral("la"), QStringLiteral("Latin") },
750 { QStringLiteral("lv"), QStringLiteral("Latvian") },
751 { QStringLiteral("apc"), QStringLiteral("LevantineArabic") },
752 { QStringLiteral("lt"), QStringLiteral("Lithuanian") },
753 { QStringLiteral("lb"), QStringLiteral("Luxembourgish") },
754 { QStringLiteral("mk"), QStringLiteral("Macedonian") },
755 { QStringLiteral("mg"), QStringLiteral("Malagasy") },
756 { QStringLiteral("ms"), QStringLiteral("Malay") },
757 { QStringLiteral("ml"), QStringLiteral("Malayalam") },
758 { QStringLiteral("mt"), QStringLiteral("Maltese") },
759 { QStringLiteral("mi"), QStringLiteral("Maori") },
760 { QStringLiteral("mr"), QStringLiteral("Marathi") },
761 { QStringLiteral("mhr"), QStringLiteral("Mari") },
762 { QStringLiteral("mn"), QStringLiteral("Mongolian") },
763 { QStringLiteral("my"), QStringLiteral("Myanmar") },
764 { QStringLiteral("ne"), QStringLiteral("Nepali") },
765 { QStringLiteral("no"), QStringLiteral("Norwegian") },
766 { QStringLiteral("or"), QStringLiteral("Oriya") },
767 { QStringLiteral("pap"), QStringLiteral("Papiamento") },
768 { QStringLiteral("ps"), QStringLiteral("Pashto") },
769 { QStringLiteral("fa"), QStringLiteral("Persian") },
770 { QStringLiteral("pl"), QStringLiteral("Polish") },
771 { QStringLiteral("pt"), QStringLiteral("Portuguese") },
772 { QStringLiteral("pa"), QStringLiteral("Punjabi") },
773 { QStringLiteral("otq"), QStringLiteral("QueretaroOtomi") },
774 { QStringLiteral("ro"), QStringLiteral("Romanian") },
775 { QStringLiteral("ru"), QStringLiteral("Russian") },
776 { QStringLiteral("sm"), QStringLiteral("Samoan") },
777 { QStringLiteral("gd"), QStringLiteral("ScotsGaelic") },
778 { QStringLiteral("sr"), QStringLiteral("SerbianCyrillic") },
779 { QStringLiteral("sr-Latin"), QStringLiteral("SerbianLatin") },
780 { QStringLiteral("st"), QStringLiteral("Sesotho") },
781 { QStringLiteral("sn"), QStringLiteral("Shona") },
782 { QStringLiteral("zh-CN"), QStringLiteral("SimplifiedChinese") },
783 { QStringLiteral("sd"), QStringLiteral("Sindhi") },
784 { QStringLiteral("si"), QStringLiteral("Sinhala") },
785 { QStringLiteral("sk"), QStringLiteral("Slovak") },
786 { QStringLiteral("sl"), QStringLiteral("Slovenian") },
787 { QStringLiteral("so"), QStringLiteral("Somali") },
788 { QStringLiteral("es"), QStringLiteral("Spanish") },
789 { QStringLiteral("su"), QStringLiteral("Sundanese") },
790 { QStringLiteral("sw"), QStringLiteral("Swahili") },
791 { QStringLiteral("sv"), QStringLiteral("Swedish") },
792 { QStringLiteral("tl"), QStringLiteral("Tagalog") },
793 { QStringLiteral("ty"), QStringLiteral("Tahitian") },
794 { QStringLiteral("tg"), QStringLiteral("Tajik") },
795 { QStringLiteral("ta"), QStringLiteral("Tamil") },
796 { QStringLiteral("tt"), QStringLiteral("Tatar") },
797 { QStringLiteral("te"), QStringLiteral("Telugu") },
798 { QStringLiteral("th"), QStringLiteral("Thai") },
799 { QStringLiteral("to"), QStringLiteral("Tongan") },
800 { QStringLiteral("zh-TW"), QStringLiteral("TraditionalChinese") },
801 { QStringLiteral("tr"), QStringLiteral("Turkish") },
802 { QStringLiteral("tk"), QStringLiteral("Turkmen") },
803 { QStringLiteral("udm"), QStringLiteral("Udmurt") },
804 { QStringLiteral("ug"), QStringLiteral("Uighur") },
805 { QStringLiteral("uk"), QStringLiteral("Ukrainian") },
806 { QStringLiteral("ur"), QStringLiteral("Urdu") },
807 { QStringLiteral("uz"), QStringLiteral("Uzbek") },
808 { QStringLiteral("vi"), QStringLiteral("Vietnamese") },
809 { QStringLiteral("cy"), QStringLiteral("Welsh") },
810 { QStringLiteral("xh"), QStringLiteral("Xhosa") },
811 { QStringLiteral("yi"), QStringLiteral("Yiddish") },
812 { QStringLiteral("yo"), QStringLiteral("Yoruba") },
813 { QStringLiteral("yua"), QStringLiteral("YucatecMaya") },
814 { QStringLiteral("zu"), QStringLiteral("Zulu") }
815}; // end s_genericLanguageCodeToName
816
820QString MyLocalization::languageName(const QLocale &thisLocale)
821{
822 switch (thisLocale.language())
823 {
824 case QLocale::Afrikaans: return tr("Afrikaans");
825 case QLocale::Albanian: return tr("Albanian");
826 case QLocale::Amharic: return tr("Amharic");
827 case QLocale::Arabic: return tr("Arabic");
828 case QLocale::Armenian: return tr("Armenian");
829 case QLocale::Azerbaijani: return tr("Azeerbaijani");
830 case QLocale::Basque: return tr("Basque");
831 case QLocale::Bashkir: return tr("Bashkir");
832 case QLocale::Belarusian: return tr("Belarusian");
833 case QLocale::Bengali: return tr("Bengali");
834 case QLocale::Bosnian: return tr("Bosnian");
835 case QLocale::Bulgarian: return tr("Bulgarian");
836 case QLocale::Catalan: return tr("Catalan");
837 case QLocale::Cantonese: return tr("Cantonese");
838 case QLocale::Cebuano: return tr("Cebuano");
839 case QLocale::Chinese: return tr("Chinese (Simplified)");
840 case QLocale::LiteraryChinese: return tr("Chinese (Traditional)");
841 case QLocale::Corsican: return tr("Corsican");
842 case QLocale::Croatian: return tr("Croatian");
843 case QLocale::Czech: return tr("Czech");
844 case QLocale::Danish: return tr("Danish");
845 case QLocale::Dutch: return tr("Dutch");
846 case QLocale::English: return tr("English");
847 case QLocale::Esperanto: return tr("Esperanto");
848 case QLocale::Estonian: return tr("Estonian");
849 case QLocale::Fijian: return tr("Fijian");
850 case QLocale::Filipino: return tr("Filipino");
851 case QLocale::Finnish: return tr("Finnish");
852 case QLocale::French: return tr("French");
853 case QLocale::Frisian: return tr("Frisian");
854 case QLocale::Galician: return tr("Galician");
855 case QLocale::Georgian: return tr("Georgian");
856 case QLocale::German: return tr("German");
857 case QLocale::Greek: return tr("Greek");
858 case QLocale::Gujarati: return tr("Gujarati");
859 //case QLocale::HaitianCreole: return tr("Haitian Creole");
860 case QLocale::Hausa: return tr("Hausa");
861 case QLocale::Hawaiian: return tr("Hawaiian");
862 case QLocale::Hebrew: return tr("Hebrew");
863 //case QLocale::HillMari: return tr("Hill Mari");
864 case QLocale::Hindi: return tr("Hindi");
865 //case QLocale::Hmong: return tr("Hmong");
866 case QLocale::Hungarian: return tr("Hungarian");
867 case QLocale::Icelandic: return tr("Icelandic");
868 case QLocale::Igbo: return tr("Igbo");
869 case QLocale::Indonesian: return tr("Indonesian");
870 case QLocale::Irish: return tr("Irish");
871 case QLocale::Italian: return tr("Italian");
872 case QLocale::Japanese: return tr("Japanese");
873 case QLocale::Javanese: return tr("Javanese");
874 case QLocale::Kannada: return tr("Kannada");
875 case QLocale::Kazakh: return tr("Kazakh");
876 case QLocale::Khmer: return tr("Khmer");
877 case QLocale::Kinyarwanda: return tr("Kinyarwanda");
878 //case QLocale::Klingon: return tr("Klingon");
879 //case QLocale::KlingonPlqaD: return tr("Klingon (PlqaD)");
880 case QLocale::Korean: return tr("Korean");
881 case QLocale::Kurdish: return tr("Kurdish");
882 //case QLocale::Kyrgyz: return tr("Kyrgyz");
883 case QLocale::Lao: return tr("Lao");
884 case QLocale::Latin: return tr("Latin");
885 case QLocale::Latvian: return tr("Latvian");
886 //case QLocale::LevantineArabic: return tr("Levantine Arabic");
887 case QLocale::Lithuanian: return tr("Lithuanian");
888 case QLocale::Luxembourgish: return tr("Luxembourgish");
889 case QLocale::Macedonian: return tr("Macedonian");
890 case QLocale::Malagasy: return tr("Malagasy");
891 case QLocale::Malay: return tr("Malay");
892 case QLocale::Malayalam: return tr("Malayalam");
893 case QLocale::Maltese: return tr("Maltese");
894 case QLocale::Maori: return tr("Maori");
895 case QLocale::Marathi: return tr("Marathi");
896 //case QLocale::Mari: return tr("Mari");
897 case QLocale::Mongolian: return tr("Mongolian");
898 //case QLocale::Myanmar: return tr("Myanmar");
899 case QLocale::Nepali: return tr("Nepali");
900 //case QLocale::Norwegian: return tr("Norwegian");
901 case QLocale::Oriya: return tr("Oriya");
902 //case QLocale::Chichewa: return tr("Chichewa");
903 case QLocale::Papiamento: return tr("Papiamento");
904 case QLocale::Pashto: return tr("Pashto");
905 case QLocale::Persian: return tr("Persian");
906 case QLocale::Polish: return tr("Polish");
907 case QLocale::Portuguese: return tr("Portuguese");
908 case QLocale::Punjabi: return tr("Punjabi");
909 //case QLocale::QueretaroOtomi: return tr("Queretaro Otomi");
910 case QLocale::Romanian: return tr("Romanian");
911 case QLocale::Russian: return tr("Russian");
912 case QLocale::Samoan: return tr("Samoan");
913 //case QLocale::ScotsGaelic: return tr("Scots Gaelic");
914 //case QLocale::SerbianCyrillic: return tr("Serbian (Cyrillic)");
915 //case QLocale::SerbianLatin: return tr("Serbian (Latin)");
916 //case QLocale::Sesotho: return tr("Sesotho");
917 case QLocale::Shona: return tr("Shona");
918 case QLocale::Sindhi: return tr("Sindhi");
919 case QLocale::Sinhala: return tr("Sinhala");
920 case QLocale::Slovak: return tr("Slovak");
921 case QLocale::Slovenian: return tr("Slovenian");
922 case QLocale::Somali: return tr("Somali");
923 case QLocale::Spanish: return tr("Spanish");
924 case QLocale::Sundanese: return tr("Sundanese");
925 case QLocale::Swahili: return tr("Swahili");
926 case QLocale::Swedish: return tr("Swedish");
927 //case QLocale::Tagalog: return tr("Tagalog");
928 case QLocale::Tahitian: return tr("Tahitian");
929 case QLocale::Tajik: return tr("Tajik");
930 case QLocale::Tamil: return tr("Tamil");
931 case QLocale::Tatar: return tr("Tatar");
932 case QLocale::Telugu: return tr("Telugu");
933 case QLocale::Thai: return tr("Thai");
934 case QLocale::Tongan: return tr("Tongan");
935 case QLocale::Turkish: return tr("Turkish");
936 case QLocale::Turkmen: return tr("Turkmen");
937 //case QLocale::Udmurt: return tr("Udmurt");
938 case QLocale::Uighur: return tr("Uighur");
939 case QLocale::Ukrainian: return tr("Ukrainian");
940 case QLocale::Urdu: return tr("Urdu");
941 case QLocale::Uzbek: return tr("Uzbek");
942 case QLocale::Vietnamese: return tr("Vietnamese");
943 case QLocale::Welsh: return tr("Welsh");
944 case QLocale::Xhosa: return tr("Xhosa");
945 case QLocale::Yiddish: return tr("Yiddish");
946 case QLocale::Yoruba: return tr("Yoruba");
947 //case QLocale::YucatecMaya: return tr("Yucatec Maya");
948 case QLocale::Zulu: return tr("Zulu");
949 default:
950 if (thisLocale.name() == "HaitianCreole")
951 { return tr("Haitian Creole"); }
952 else if (thisLocale.name() == "HillMari")
953 { return tr("Hill Mari"); }
954 else if (thisLocale.name() == "Hmong")
955 { return tr("Hmong"); }
956 else if (thisLocale.name() == "Klingon")
957 { return tr("Klingon"); }
958 else if (thisLocale.name() == "KlingonPlqaD")
959 { return tr("Klingon (PlqaD)"); }
960 else if (thisLocale.name() == "Kyrgyz")
961 { return tr("Kyrgyz"); }
962 else if (thisLocale.name() == "LevantineArabic")
963 { return tr("Levantine Arabic"); }
964 else if (thisLocale.name() == "Mari")
965 { return tr("Mari"); }
966 else if (thisLocale.name() == "Myanmar")
967 { return tr("Myanmar"); }
968 else if (thisLocale.name() == "Chichewa")
969 { return tr("Chichewa"); }
970 else if (thisLocale.name() == "QueretaroOtomi")
971 { return tr("Queretaro Otomi"); }
972 else if (thisLocale.name() == "ScotsGaelic")
973 { return tr("Scots Gaelic"); }
974 else if (thisLocale.name() == "SerbianCyrillic")
975 { return tr("Serbian (Cyrillic)"); }
976 else if (thisLocale.name() == "SerbianLatin")
977 { return tr("Serbian (Latin)"); }
978 else if (thisLocale.name() == "Sesotho")
979 { return tr("Sesotho"); }
980 else if (thisLocale.name() == "Tagalog")
981 { return tr("Tagalog"); }
982 else if (thisLocale.name() == "Udmurt")
983 { return tr("Udmurt"); }
984 else if (thisLocale.name() == "YucatecMaya")
985 { return tr("Yucatec Maya"); }
986 return QString();
987 } // end switch (lang)
988} // end languageName(Language lang)
989
993void MyLocalization::setMessage(const QString &thisMessage, MyMessageTypes thisMessageType)
994{
995 if (isDebugMessage && isMainLoaded) { return; }
996 switch (thisMessageType)
997 {
998 case Information:
999 mySetting->showMessageBox(thisMessage, thisMessage, mySetting->Information);
1000 break;
1001 case Warning:
1002 mySetting->showMessageBox(thisMessage, thisMessage, mySetting->Warning);
1003 break;
1004 case Critical:
1005 mySetting->showMessageBox(thisMessage, thisMessage, mySetting->Critical);
1006 break;
1007 case Question:
1008 case Debug:
1009 if (isDebugMessage)
1010 {
1011 qDebug() << thisMessage;
1012 //std::cout << thisMessage.toStdString() << std::endl;
1013 }
1014 break;
1015 }
1016}
1017
QString languageName(const QLocale &thisLocale)
language Name
void writeLanguage(const QString &thisCurrentLanguageCode)
write Language
MyLocalization(QObject *parent=nullptr, MyOrgSettings *thisSetting=nullptr)
TranslationFiles Constructor.
QString readLanguage()
read Language
void removeArgs(const QString &thisString, const QString &thisTransFile)
remove Args file creation
void setMainLoaded(bool thisMainLoaded)
set Main Loaded
QString languageNameFromFile(const QString &thisTranslationFile)
language Name From File
void setLanguageCode(const QString &thisLanguageCode)
set Language Code
QString languageNameToCode(const QString &lang)
language Name to Code Added by Light-Wizzard
QString getDefaultLanguageCode()
Added by Light-Wizzard language Code to Name.
QString getLanguageCode()
get Language Code
QStringList getQmFiles(const QString &thisFolder)
find Qm Files
QString getLanguageFromFile(const QString &thisPrefix, const QString &thisQmLanguageFile)
getLanguageFromFile
bool getDebugMessage()
get Debug Message
QString getLangCode(const QString &thisString)
get Lang Code
MyOrgSettings * mySetting
mySetting
void fileRemoveArgs()
file Remove Args
void setHelpSource(const QString &thisHelpSource)
set Help Source
QString getTranslationSource()
get Translation Source
void setDebugMessage(bool thisState)
set Debug Message
QString language(const QLocale &thisLocale)
language
@ Warning
Warning
@ Question
Question
@ Critical
Critical
@ Information
Information
void setTranslationSource(const QString &thisTranslationSource)
set Translation Source
QString getLocalizedCodeFromFile(const QString &thisPrefix, const QString &thisQmFile)
get Localized Code From File
void setTransFilePrefix(const QString &thisTransFilePrefix)
set TransFile Prefix
QString languageCodeToName(const QString &lang)
language Code to Name Added by Light-Wizzard
QStringList findTsFiles(const QString &thisFolder)
find Ts Files
bool languageMatch(const QString &thisPrefix, const QString &thisLang, const QString &thisQmFile)
language Match
QString getHelpSource()
get Help Source
bool getMainLoaded()
get Main Loaded
void fixTranslationFile(const QString &thisFile)
fix Translation File
QString getTransFilePrefix()
get TransFile Prefix
void loadLanguage(const QString &thisQmLanguageFile)
load Language
void setMessage(const QString &thisMessage, MyLocalization::MyMessageTypes thisMessageType)
set Message
QString getLanguageFile(const QString &thisLanguageCode, const QString &thisPath, const QString &thisPrefix)
get Language File. getLanguageFile
QString getLocalizerCode(const QString &thisPrefix, const QString &thisQmFile)
get Localizer Code
const QString MY_LOCALE_LANG_CODE
MY_CURRENT_LANG_CODE
const QString MY_LANG_CODE
MY_LANG_CODE
My Org Settings.
Definition: MyOrgSettings.h:35
bool isFileExists(const QString &thisFile)
File Functions.
@ Information
Information
Definition: MyOrgSettings.h:72
@ Critical
Critical
Definition: MyOrgSettings.h:75
@ Warning
Warning
Definition: MyOrgSettings.h:74
QString getAppDataLocation()
get AppData Location
bool writeFile(const QString &thisFileName, const QString &thisContent)
write File
QVariant showMessageBox(const QString &thisTitle, const QString &thisMessage, MyMessageTypes thisMessageType) const
show Message Box information, question, warning, critica
void writeSettings(const QString &thisSetting, const QString &thisValue)
write Settings
QString readSettings(const QString &thisSetting, const QString &thisDefault)
read Settings