Description: using qt translations from qt installation instead of embedded copies
 qt_*.qm files copied from qt itself had been embedded into the binary
 and loaded as resources.  This patch loads them at runtime from qt TranslationsPath instead.
---
Author: Judit Foglszinger <urbec@debian.org>
Forwarded: no
Last-Update: 2023-06-21

--- sasm-3.14.0+ds.orig/Languages.qrc
+++ sasm-3.14.0+ds/Languages.qrc
@@ -1,24 +1,14 @@
 <RCC>
     <qresource prefix="/translations">
-        <file>qt_ru.qm</file>
         <file>language_ru.qm</file>
         <file>language_tr.qm</file>
-        <file>qt_tr.qm</file>
         <file>language_zh.qm</file>
-        <file>qt_zh.qm</file>
         <file>language_de.qm</file>
-        <file>qt_de.qm</file>
         <file>language_it.qm</file>
-        <file>qt_it.qm</file>
         <file>language_pl.qm</file>
-        <file>qt_pl.qm</file>
         <file>language_he.qm</file>
-        <file>qt_he.qm</file>
         <file>language_es.qm</file>
-        <file>qt_es.qm</file>
         <file>language_pt.qm</file>
-        <file>qt_pt.qm</file>
         <file>language_fr.qm</file>
-        <file>qt_fr.qm</file>
     </qresource>
 </RCC>
--- sasm-3.14.0+ds.orig/main.cpp
+++ sasm-3.14.0+ds/main.cpp
@@ -47,6 +47,7 @@
 #include <QtSingleApplication>
 #include <QInputDialog>
 #include <QPalette>
+#include <QLibraryInfo>
 
 /**
  * @file main.cpp
@@ -110,65 +111,66 @@ int main(int argc, char *argv[])
             }
         }
     }
+    QString qtTranslationsPath = QLibraryInfo::location(QLibraryInfo::TranslationsPath);
     if (settings.value("language", 0).toInt() == 0) { //russian language
         translator.load(":/translations/language_ru.qm");
         a.installTranslator(&translator);
 
-        qtTranslator.load(":/translations/qt_ru.qm");
+        qtTranslator.load("qt_ru.qm",qtTranslationsPath);
         a.installTranslator(&qtTranslator);
     } else if (settings.value("language", 0).toInt() == 2) { //turkish language
         translator.load(":/translations/language_tr.qm");
         a.installTranslator(&translator);
 
-        qtTranslator.load(":/translations/qt_tr.qm");
+        qtTranslator.load("qt_tr.qm",qtTranslationsPath);
         a.installTranslator(&qtTranslator);
     } else if (settings.value("language", 0).toInt() == 3) { //chinese language
         translator.load(":/translations/language_zh.qm");
         a.installTranslator(&translator);
 
-        qtTranslator.load(":/translations/qt_zh.qm");
+        qtTranslator.load("qt_zh_CN.qm",qtTranslationsPath);
         a.installTranslator(&qtTranslator);
     } else if (settings.value("language", 0).toInt() == 4) { //german language
         translator.load(":/translations/language_de.qm");
         a.installTranslator(&translator);
 
-        qtTranslator.load(":/translations/qt_de.qm");
+        qtTranslator.load("qt_de.qm",qtTranslationsPath);
         a.installTranslator(&qtTranslator);
     } else if (settings.value("language", 0).toInt() == 5) { //italian language
         translator.load(":/translations/language_it.qm");
         a.installTranslator(&translator);
 
-        qtTranslator.load(":/translations/qt_it.qm");
+        qtTranslator.load("qt_it.qm",qtTranslationsPath);
         a.installTranslator(&qtTranslator);
     } else if (settings.value("language", 0).toInt() == 6) { //polish language
         translator.load(":/translations/language_pl.qm");
         a.installTranslator(&translator);
 
-        qtTranslator.load(":/translations/qt_pl.qm");
+        qtTranslator.load("qt_pl.qm",qtTranslationsPath);
         a.installTranslator(&qtTranslator);
     } else if (settings.value("language", 0).toInt() == 7) { //hebrew language
         translator.load(":/translations/language_he.qm");
         a.installTranslator(&translator);
 
-        qtTranslator.load(":/translations/qt_he.qm");
+        qtTranslator.load("qt_he.qm",qtTranslationsPath);
         a.installTranslator(&qtTranslator);
     } else if (settings.value("language", 0).toInt() == 8) { //spanish language
         translator.load(":/translations/language_es.qm");
         a.installTranslator(&translator);
 
-        qtTranslator.load(":/translations/qt_es.qm");
+        qtTranslator.load("qt_es.qm",qtTranslationsPath);
         a.installTranslator(&qtTranslator);
     } else if (settings.value("language", 0).toInt() == 9) { //portuguese language
         translator.load(":/translations/language_pt.qm");
         a.installTranslator(&translator);
 
-        qtTranslator.load(":/translations/qt_pt.qm");
+        qtTranslator.load("qt_pt_PT.qm",qtTranslationsPath);
         a.installTranslator(&qtTranslator);
     } else if (settings.value("language", 0).toInt() == 10) { //french language
         translator.load(":/translations/language_fr.qm");
         a.installTranslator(&translator);
 
-        qtTranslator.load(":/translations/qt_fr.qm");
+        qtTranslator.load("qt_fr.qm",qtTranslationsPath);
         a.installTranslator(&qtTranslator);
     }
 
