diff --git a/CMakeLists.txt b/CMakeLists.txt index 7f2ce6d..6a74760 100644 --- a/CMakeLists.txt +++ b/CMakeLists.txt @@ -17,6 +17,7 @@ if (ECM_FOUND) endif() include(FeatureSummary) +include(ECMPoQmTools) find_package(Cargo) find_package(Rust) diff --git a/Messages.sh b/Messages.sh new file mode 100755 index 0000000..39fd404 --- /dev/null +++ b/Messages.sh @@ -0,0 +1,6 @@ +#!/bin/sh + +# Extract strings from all source files. +# EXTRACT_TR_STRINGS extracts strings with lupdate and convert them to .pot with +# lconvert. +$EXTRACT_TR_STRINGS `find demo -name \*.cpp -o -name \*.h -o -name \*.ui -o -name \*.qml` -o $podir/Demo_qt.pot diff --git a/demo/CMakeLists.txt b/demo/CMakeLists.txt index 073c9b2..b5e5ede 100644 --- a/demo/CMakeLists.txt +++ b/demo/CMakeLists.txt @@ -37,8 +37,10 @@ if (Qt5Charts_FOUND) list(APPEND DemoLibs Qt5::Charts) endif() +ecm_create_qm_loader(Demo_QM_LOADER Demo_qt.pot) + set(Demo_SRCS src/main.cpp src/Bindings.cpp src/SortedModel.cpp - resource_file.qrc) + resource_file.qrc ${Demo_QM_LOADER}) add_executable(Demo ${Demo_SRCS}) add_dependencies(Demo rust_target) diff --git a/demo/src/main.cpp b/demo/src/main.cpp index 50bbd60..dd0189a 100644 --- a/demo/src/main.cpp +++ b/demo/src/main.cpp @@ -169,7 +169,7 @@ QWidget* createObjectTab(Model* model) { Fibonacci* fibonacci = model->demo.fibonacci(); QLabel* label = new QLabel; - label->setText(label->tr("Calculate the nth Fibonacci number")); + label->setText(QCoreApplication::translate("main", "Calculate the nth Fibonacci number")); QLineEdit* input = new QLineEdit; input->setPlaceholderText("Your number"); @@ -186,7 +186,7 @@ QWidget* createObjectTab(Model* model) { QLabel* result = new QLabel; fibonacci->connect(fibonacci, &Fibonacci::resultChanged, result, [result, fibonacci]() { - result->setText(result->tr("The Fibonacci number: ") + result->setText(QCoreApplication::translate("main", "The Fibonacci number: ") + QString::number(fibonacci->result())); }); input->setText(QString::number(model->demo.fibonacci()->input())); @@ -202,9 +202,9 @@ QWidget* createObjectTab(Model* model) { QWidget* createListTab(Model* model) { QTableView* view = new QTableView(); model->demo.fibonacciList()->setHeaderData(0, Qt::Horizontal, - view->tr("Row"), Qt::DisplayRole); + QCoreApplication::translate("main", "Row"), Qt::DisplayRole); model->demo.fibonacciList()->setHeaderData(1, Qt::Horizontal, - view->tr("Fibonacci number"), Qt::DisplayRole); + QCoreApplication::translate("main", "Fibonacci number"), Qt::DisplayRole); view->setModel(model->demo.fibonacciList()); view->horizontalHeader()->setSectionResizeMode(QHeaderView::ResizeToContents); return view; @@ -213,9 +213,9 @@ QWidget* createListTab(Model* model) { QWidget* createTreeTab(Model* model) { QTreeView* view = new QTreeView(); model->demo.fileSystemTree()->setHeaderData(0, Qt::Horizontal, - view->tr("Name"), Qt::DisplayRole); + QCoreApplication::translate("main", "Name"), Qt::DisplayRole); model->demo.fileSystemTree()->setHeaderData(1, Qt::Horizontal, - view->tr("Size"), Qt::DisplayRole); + QCoreApplication::translate("main", "Size"), Qt::DisplayRole); view->setUniformRowHeights(true); view->setSortingEnabled(true); view->setModel(&model->sortedFileSystem);