aboutsummaryrefslogtreecommitdiff
path: root/tests/ECMPoQmToolsTest/tr_thread_test_module.cpp
diff options
context:
space:
mode:
authorAlex Merry <alex.merry@kde.org>2015-11-08 23:10:59 +0000
committerAlex Merry <alex.merry@kde.org>2015-11-30 14:07:07 +0000
commitfb4d91996affdbcd3ffc19c7646fbf77b96bf1e5 (patch)
tree2f66eec33d3b7b96691fe5aa5f9fe96f2029229f /tests/ECMPoQmToolsTest/tr_thread_test_module.cpp
parent1e8e0da3eb475bb8b78baa54cb0c34b913c2dc5d (diff)
downloadextra-cmake-modules-fb4d91996affdbcd3ffc19c7646fbf77b96bf1e5.tar.gz
extra-cmake-modules-fb4d91996affdbcd3ffc19c7646fbf77b96bf1e5.tar.bz2
Make sure we load translations on the main thread.
Because the old implementation (accidentally) worked when you put the ecm_create_qm_loader call in a different CMakeLists.txt file to the target the file was added to, some projects did this. This won't work with build-time-generated files, though, like moc files. So we (ab)use QTimer events to make the loading happen on the main thread. BUG: 346188 REVIEW: 126000
Diffstat (limited to 'tests/ECMPoQmToolsTest/tr_thread_test_module.cpp')
-rw-r--r--tests/ECMPoQmToolsTest/tr_thread_test_module.cpp12
1 files changed, 12 insertions, 0 deletions
diff --git a/tests/ECMPoQmToolsTest/tr_thread_test_module.cpp b/tests/ECMPoQmToolsTest/tr_thread_test_module.cpp
new file mode 100644
index 00000000..b9000ffa
--- /dev/null
+++ b/tests/ECMPoQmToolsTest/tr_thread_test_module.cpp
@@ -0,0 +1,12 @@
+#include <QCoreApplication>
+#include <QTextStream>
+
+#include <stdio.h>
+
+extern "C" Q_DECL_EXPORT void print_strings()
+{
+ QTextStream output(stdout);
+
+ output << QCoreApplication::translate("testcontext", "test string") << ":";
+ output << QCoreApplication::translate("testcontext", "test plural %n", 0, 5) << '\n';
+}