refactor: change ui translation mechanism

This commit is contained in:
Evgenii Alekseev 2024-04-22 14:57:47 +03:00
parent ba60be932a
commit 95572364c1
47 changed files with 7531 additions and 5017 deletions

View File

@ -5,7 +5,7 @@ VERSION="$(git describe --tags --abbrev=0)"
# build widget # build widget
ARCHIVE="awesome-widgets" ARCHIVE="awesome-widgets"
FILES="AUTHORS CHANGELOG COPYING packages patches sources" FILES="AUTHORS CHANGELOG COPYING packages patches"
IGNORELIST="build usr .kdev4 *.kdev4 .idea packages/*src.tar.xz" IGNORELIST="build usr .kdev4 *.kdev4 .idea packages/*src.tar.xz"
# create archive # create archive
[[ -e ${ARCHIVE}-${VERSION}-src.tar.xz ]] && rm -f "${ARCHIVE}-${VERSION}-src.tar.xz" [[ -e ${ARCHIVE}-${VERSION}-src.tar.xz ]] && rm -f "${ARCHIVE}-${VERSION}-src.tar.xz"

View File

@ -14,7 +14,7 @@ file(GLOB SUBPROJECT_SOURCE *.cpp ${PROJECT_TRDPARTY_DIR}/fontdialog/*.cpp ${CMA
file(GLOB SUBPROJECT_UI *.ui) file(GLOB SUBPROJECT_UI *.ui)
file(GLOB SUBPROJECT_NOTIFY *.notifyrc) file(GLOB SUBPROJECT_NOTIFY *.notifyrc)
qt6_wrap_ui(SUBPROJECT_UI_HEADER ${SUBPROJECT_UI}) qt6_wrap_ui(SUBPROJECT_UI_HEADER ${SUBPROJECT_UI} OPTIONS --translate ui_i18n)
add_library(${PLUGIN_NAME} SHARED ${SUBPROJECT_SOURCE} ${SUBPROJECT_UI_HEADER}) add_library(${PLUGIN_NAME} SHARED ${SUBPROJECT_SOURCE} ${SUBPROJECT_UI_HEADER})
target_link_libraries(${PLUGIN_NAME} ${PROJECT_LIBRARY} ${Qt_LIBRARIES} ${Kf6_LIBRARIES}) target_link_libraries(${PLUGIN_NAME} ${PROJECT_LIBRARY} ${Qt_LIBRARIES} ${Kf6_LIBRARIES})

View File

@ -28,7 +28,7 @@ file(RELATIVE_PATH SUBPROJECT_WEATHER_JSON ${CMAKE_SOURCE_DIR} ${SUBPROJECT_WEAT
# prepare # prepare
configure_file(${SUBPROJECT_WEATHER_JSON_IN} ${CMAKE_CURRENT_BINARY_DIR}/${SUBPROJECT_WEATHER_JSON}) configure_file(${SUBPROJECT_WEATHER_JSON_IN} ${CMAKE_CURRENT_BINARY_DIR}/${SUBPROJECT_WEATHER_JSON})
qt6_wrap_ui(SUBPROJECT_UI_HEADER ${SUBPROJECT_UI}) qt6_wrap_ui(SUBPROJECT_UI_HEADER ${SUBPROJECT_UI} OPTIONS --translate ui_i18n)
add_library(${SUBPROJECT} STATIC ${SUBPROJECT_SOURCE} ${SUBPROJECT_HEADER} ${SUBPROJECT_UI_HEADER}) add_library(${SUBPROJECT} STATIC ${SUBPROJECT_SOURCE} ${SUBPROJECT_HEADER} ${SUBPROJECT_UI_HEADER})
target_link_libraries(${SUBPROJECT} ${Qt_LIBRARIES} ${Kf6_LIBRARIES}) target_link_libraries(${SUBPROJECT} ${Qt_LIBRARIES} ${Kf6_LIBRARIES})

View File

@ -86,8 +86,6 @@ private:
QCronScheduler *m_scheduler = nullptr; QCronScheduler *m_scheduler = nullptr;
QString m_filePath = ""; QString m_filePath = "";
int m_times = 0; int m_times = 0;
// FIXME find a better way to do it
virtual void translate(void *_ui) = 0;
// properties // properties
int m_apiVersion = 0; int m_apiVersion = 0;
bool m_active = true; bool m_active = true;

View File

@ -18,8 +18,6 @@
#include "awdatetimeformatter.h" #include "awdatetimeformatter.h"
#include "ui_awdatetimeformatter.h" #include "ui_awdatetimeformatter.h"
#include <KI18n/KLocalizedString>
#include <QDateTime> #include <QDateTime>
#include <QSettings> #include <QSettings>
@ -110,7 +108,6 @@ int AWDateTimeFormatter::showConfiguration(QWidget *_parent, const QVariant &_ar
auto dialog = new QDialog(_parent); auto dialog = new QDialog(_parent);
auto ui = new Ui::AWDateTimeFormatter(); auto ui = new Ui::AWDateTimeFormatter();
ui->setupUi(dialog); ui->setupUi(dialog);
translate(ui);
ui->lineEdit_name->setText(name()); ui->lineEdit_name->setText(name());
ui->lineEdit_comment->setText(comment()); ui->lineEdit_comment->setText(comment());
@ -157,14 +154,3 @@ void AWDateTimeFormatter::initLocale()
{ {
m_locale = m_translate ? QLocale::system() : QLocale::c(); m_locale = m_translate ? QLocale::system() : QLocale::c();
} }
void AWDateTimeFormatter::translate(void *_ui)
{
auto ui = reinterpret_cast<Ui::AWDateTimeFormatter *>(_ui);
ui->label_name->setText(i18n("Name"));
ui->label_comment->setText(i18n("Comment"));
ui->label_type->setText(i18n("Type"));
ui->label_format->setText(i18n("Format"));
ui->checkBox_translate->setText(i18n("Translate strings"));
}

View File

@ -20,6 +20,7 @@
#include <QLocale> #include <QLocale>
#include "awabstractformatter.h" #include "awabstractformatter.h"
#include "awtranslation.h"
class AWDateTimeFormatter : public AWAbstractFormatter class AWDateTimeFormatter : public AWAbstractFormatter
@ -45,7 +46,6 @@ public slots:
private: private:
void initLocale(); void initLocale();
void translate(void *_ui) override;
// properties // properties
QLocale m_locale; QLocale m_locale;
QString m_format = ""; QString m_format = "";

View File

@ -18,8 +18,6 @@
#include "awfloatformatter.h" #include "awfloatformatter.h"
#include "ui_awfloatformatter.h" #include "ui_awfloatformatter.h"
#include <KI18n/KLocalizedString>
#include <QSettings> #include <QSettings>
#include "awdebug.h" #include "awdebug.h"
@ -198,7 +196,6 @@ int AWFloatFormatter::showConfiguration(QWidget *_parent, const QVariant &_args)
auto dialog = new QDialog(_parent); auto dialog = new QDialog(_parent);
auto ui = new Ui::AWFloatFormatter(); auto ui = new Ui::AWFloatFormatter();
ui->setupUi(dialog); ui->setupUi(dialog);
translate(ui);
ui->lineEdit_name->setText(name()); ui->lineEdit_name->setText(name());
ui->lineEdit_comment->setText(comment()); ui->lineEdit_comment->setText(comment());
@ -254,20 +251,3 @@ void AWFloatFormatter::writeConfiguration() const
settings.sync(); settings.sync();
} }
void AWFloatFormatter::translate(void *_ui)
{
auto ui = reinterpret_cast<Ui::AWFloatFormatter *>(_ui);
ui->label_name->setText(i18n("Name"));
ui->label_comment->setText(i18n("Comment"));
ui->label_type->setText(i18n("Type"));
ui->label_format->setText(i18n("Format"));
ui->label_precision->setText(i18n("Precision"));
ui->label_width->setText(i18n("Width"));
ui->label_fill->setText(i18n("Fill char"));
ui->checkBox_forceWidth->setText(i18n("Force width"));
ui->label_multiplier->setText(i18n("Multiplier"));
ui->label_summand->setText(i18n("Summand"));
}

View File

@ -18,6 +18,7 @@
#pragma once #pragma once
#include "awabstractformatter.h" #include "awabstractformatter.h"
#include "awtranslation.h"
class AWFloatFormatter : public AWAbstractFormatter class AWFloatFormatter : public AWAbstractFormatter
@ -57,7 +58,6 @@ public slots:
void writeConfiguration() const override; void writeConfiguration() const override;
private: private:
void translate(void *_ui) override;
// properties // properties
int m_count = 0; int m_count = 0;
QChar m_fillChar = QChar(); QChar m_fillChar = QChar();

View File

@ -18,8 +18,6 @@
#include "awjsonformatter.h" #include "awjsonformatter.h"
#include "ui_awjsonformatter.h" #include "ui_awjsonformatter.h"
#include <KI18n/KLocalizedString>
#include <QJsonDocument> #include <QJsonDocument>
#include <QSettings> #include <QSettings>
@ -108,7 +106,6 @@ int AWJsonFormatter::showConfiguration(QWidget *_parent, const QVariant &args)
auto dialog = new QDialog(_parent); auto dialog = new QDialog(_parent);
auto ui = new Ui::AWJsonFormatter(); auto ui = new Ui::AWJsonFormatter();
ui->setupUi(dialog); ui->setupUi(dialog);
translate(ui);
ui->lineEdit_name->setText(name()); ui->lineEdit_name->setText(name());
ui->lineEdit_comment->setText(comment()); ui->lineEdit_comment->setText(comment());
@ -177,14 +174,3 @@ QVariant AWJsonFormatter::getFromMap(const QVariant &_value, const QString &_key
return _value.toMap()[_key]; return _value.toMap()[_key];
} }
void AWJsonFormatter::translate(void *_ui)
{
auto ui = reinterpret_cast<Ui::AWJsonFormatter *>(_ui);
ui->label_name->setText(i18n("Name"));
ui->label_comment->setText(i18n("Comment"));
ui->label_type->setText(i18n("Type"));
ui->label_path->setText(i18n("Path"));
}

View File

@ -18,6 +18,7 @@
#pragma once #pragma once
#include "awabstractformatter.h" #include "awabstractformatter.h"
#include "awtranslation.h"
class AWJsonFormatter : public AWAbstractFormatter class AWJsonFormatter : public AWAbstractFormatter
@ -42,7 +43,6 @@ private:
static QVariant getFromJson(const QVariant &_value, const QVariant &_element); static QVariant getFromJson(const QVariant &_value, const QVariant &_element);
static QVariant getFromList(const QVariant &_value, int _index); static QVariant getFromList(const QVariant &_value, int _index);
static QVariant getFromMap(const QVariant &_value, const QString &_key); static QVariant getFromMap(const QVariant &_value, const QString &_key);
void translate(void *_ui) override;
// properties // properties
QVariantList m_path; QVariantList m_path;
}; };

View File

@ -18,8 +18,6 @@
#include "awlistformatter.h" #include "awlistformatter.h"
#include "ui_awlistformatter.h" #include "ui_awlistformatter.h"
#include <KI18n/KLocalizedString>
#include <QSettings> #include <QSettings>
#include "awdebug.h" #include "awdebug.h"
@ -129,7 +127,6 @@ int AWListFormatter::showConfiguration(QWidget *_parent, const QVariant &_args)
auto dialog = new QDialog(_parent); auto dialog = new QDialog(_parent);
auto ui = new Ui::AWListFormatter(); auto ui = new Ui::AWListFormatter();
ui->setupUi(dialog); ui->setupUi(dialog);
translate(ui);
ui->lineEdit_name->setText(name()); ui->lineEdit_name->setText(name());
ui->lineEdit_comment->setText(comment()); ui->lineEdit_comment->setText(comment());
@ -173,16 +170,3 @@ void AWListFormatter::writeConfiguration() const
settings.sync(); settings.sync();
} }
void AWListFormatter::translate(void *_ui)
{
auto ui = reinterpret_cast<Ui::AWListFormatter *>(_ui);
ui->label_name->setText(i18n("Name"));
ui->label_comment->setText(i18n("Comment"));
ui->label_type->setText(i18n("Type"));
ui->label_filter->setText(i18n("Filter"));
ui->label_separator->setText(i18n("Separator"));
ui->checkBox_sorted->setText(i18n("Sort"));
}

View File

@ -18,6 +18,7 @@
#pragma once #pragma once
#include "awabstractformatter.h" #include "awabstractformatter.h"
#include "awtranslation.h"
class AWListFormatter : public AWAbstractFormatter class AWListFormatter : public AWAbstractFormatter
@ -45,7 +46,6 @@ public slots:
void writeConfiguration() const override; void writeConfiguration() const override;
private: private:
void translate(void *_ui) override;
// properties // properties
QString m_filter = ""; QString m_filter = "";
QString m_separator = ""; QString m_separator = "";

View File

@ -18,8 +18,6 @@
#include "awnoformatter.h" #include "awnoformatter.h"
#include "ui_awnoformatter.h" #include "ui_awnoformatter.h"
#include <KI18n/KLocalizedString>
#include "awdebug.h" #include "awdebug.h"
@ -61,7 +59,6 @@ int AWNoFormatter::showConfiguration(QWidget *_parent, const QVariant &_args)
auto dialog = new QDialog(_parent); auto dialog = new QDialog(_parent);
auto ui = new Ui::AWNoFormatter(); auto ui = new Ui::AWNoFormatter();
ui->setupUi(dialog); ui->setupUi(dialog);
translate(ui);
ui->lineEdit_name->setText(name()); ui->lineEdit_name->setText(name());
ui->lineEdit_comment->setText(comment()); ui->lineEdit_comment->setText(comment());
@ -82,13 +79,3 @@ int AWNoFormatter::showConfiguration(QWidget *_parent, const QVariant &_args)
return ret; return ret;
} }
void AWNoFormatter::translate(void *_ui)
{
auto ui = reinterpret_cast<Ui::AWNoFormatter *>(_ui);
ui->label_name->setText(i18n("Name"));
ui->label_comment->setText(i18n("Comment"));
ui->label_type->setText(i18n("Type"));
}

View File

@ -18,6 +18,7 @@
#pragma once #pragma once
#include "awabstractformatter.h" #include "awabstractformatter.h"
#include "awtranslation.h"
class AWNoFormatter : public AWAbstractFormatter class AWNoFormatter : public AWAbstractFormatter
@ -31,7 +32,4 @@ public:
public slots: public slots:
int showConfiguration(QWidget *_parent, const QVariant &_args) override; int showConfiguration(QWidget *_parent, const QVariant &_args) override;
private:
void translate(void *_ui) override;
}; };

View File

@ -18,8 +18,6 @@
#include "awscriptformatter.h" #include "awscriptformatter.h"
#include "ui_awscriptformatter.h" #include "ui_awscriptformatter.h"
#include <KI18n/KLocalizedString>
#include <QJSEngine> #include <QJSEngine>
#include <QSettings> #include <QSettings>
@ -145,7 +143,6 @@ int AWScriptFormatter::showConfiguration(QWidget *_parent, const QVariant &_args
auto dialog = new QDialog(_parent); auto dialog = new QDialog(_parent);
auto ui = new Ui::AWScriptFormatter(); auto ui = new Ui::AWScriptFormatter();
ui->setupUi(dialog); ui->setupUi(dialog);
translate(ui);
ui->lineEdit_name->setText(name()); ui->lineEdit_name->setText(name());
ui->lineEdit_comment->setText(comment()); ui->lineEdit_comment->setText(comment());
@ -154,7 +151,7 @@ int AWScriptFormatter::showConfiguration(QWidget *_parent, const QVariant &_args
ui->checkBox_hasReturn->setCheckState(hasReturn() ? Qt::Checked : Qt::Unchecked); ui->checkBox_hasReturn->setCheckState(hasReturn() ? Qt::Checked : Qt::Unchecked);
ui->textEdit_code->setPlainText(code()); ui->textEdit_code->setPlainText(code());
int ret = dialog->exec(); auto ret = dialog->exec();
if (ret == 1) { if (ret == 1) {
setName(ui->lineEdit_name->text()); setName(ui->lineEdit_name->text());
setComment(ui->lineEdit_comment->text()); setComment(ui->lineEdit_comment->text());
@ -202,16 +199,3 @@ void AWScriptFormatter::initProgram()
qCInfo(LOG_LIB) << "Create JS engine with code" << m_program; qCInfo(LOG_LIB) << "Create JS engine with code" << m_program;
} }
void AWScriptFormatter::translate(void *_ui)
{
auto ui = reinterpret_cast<Ui::AWScriptFormatter *>(_ui);
ui->label_name->setText(i18n("Name"));
ui->label_comment->setText(i18n("Comment"));
ui->label_type->setText(i18n("Type"));
ui->checkBox_appendCode->setText(i18n("Append code"));
ui->checkBox_hasReturn->setText(i18n("Has return"));
ui->label_code->setText(i18n("Code"));
}

View File

@ -18,6 +18,7 @@
#pragma once #pragma once
#include "awabstractformatter.h" #include "awabstractformatter.h"
#include "awtranslation.h"
class AWScriptFormatter : public AWAbstractFormatter class AWScriptFormatter : public AWAbstractFormatter
@ -48,7 +49,6 @@ public slots:
private: private:
void initProgram(); void initProgram();
void translate(void *_ui) override;
// properties // properties
bool m_appendCode = true; bool m_appendCode = true;
QString m_code = ""; QString m_code = "";

View File

@ -18,8 +18,6 @@
#include "awstringformatter.h" #include "awstringformatter.h"
#include "ui_awstringformatter.h" #include "ui_awstringformatter.h"
#include <KI18n/KLocalizedString>
#include <QSettings> #include <QSettings>
#include "awdebug.h" #include "awdebug.h"
@ -128,7 +126,6 @@ int AWStringFormatter::showConfiguration(QWidget *_parent, const QVariant &_args
auto dialog = new QDialog(_parent); auto dialog = new QDialog(_parent);
auto ui = new Ui::AWStringFormatter(); auto ui = new Ui::AWStringFormatter();
ui->setupUi(dialog); ui->setupUi(dialog);
translate(ui);
ui->lineEdit_name->setText(name()); ui->lineEdit_name->setText(name());
ui->lineEdit_comment->setText(comment()); ui->lineEdit_comment->setText(comment());
@ -172,16 +169,3 @@ void AWStringFormatter::writeConfiguration() const
settings.sync(); settings.sync();
} }
void AWStringFormatter::translate(void *_ui)
{
auto ui = reinterpret_cast<Ui::AWStringFormatter *>(_ui);
ui->label_name->setText(i18n("Name"));
ui->label_comment->setText(i18n("Comment"));
ui->label_type->setText(i18n("Type"));
ui->label_width->setText(i18n("Width"));
ui->label_fill->setText(i18n("Fill char"));
ui->checkBox_forceWidth->setText(i18n("Force width"));
}

View File

@ -18,6 +18,7 @@
#pragma once #pragma once
#include "awabstractformatter.h" #include "awabstractformatter.h"
#include "awtranslation.h"
class AWStringFormatter : public AWAbstractFormatter class AWStringFormatter : public AWAbstractFormatter
@ -45,7 +46,6 @@ public slots:
void writeConfiguration() const override; void writeConfiguration() const override;
private: private:
void translate(void *_ui) override;
// properties // properties
int m_count = 0; int m_count = 0;
QChar m_fillChar = QChar(); QChar m_fillChar = QChar();

View File

@ -18,8 +18,6 @@
#include "extnetworkrequest.h" #include "extnetworkrequest.h"
#include "ui_extnetworkrequest.h" #include "ui_extnetworkrequest.h"
#include <KI18n/KLocalizedString>
#include <QSettings> #include <QSettings>
#include <qreplytimeout/qreplytimeout.h> #include <qreplytimeout/qreplytimeout.h>
@ -118,7 +116,6 @@ int ExtNetworkRequest::showConfiguration(QWidget *_parent, const QVariant &_args
auto dialog = new QDialog(_parent); auto dialog = new QDialog(_parent);
auto ui = new Ui::ExtNetworkRequest(); auto ui = new Ui::ExtNetworkRequest();
ui->setupUi(dialog); ui->setupUi(dialog);
translate(ui);
ui->lineEdit_name->setText(name()); ui->lineEdit_name->setText(name());
ui->lineEdit_comment->setText(comment()); ui->lineEdit_comment->setText(comment());
@ -185,18 +182,3 @@ void ExtNetworkRequest::sendRequest()
auto reply = m_manager->get(QNetworkRequest(m_url)); auto reply = m_manager->get(QNetworkRequest(m_url));
new QReplyTimeout(reply, REQUEST_TIMEOUT); new QReplyTimeout(reply, REQUEST_TIMEOUT);
} }
void ExtNetworkRequest::translate(void *_ui)
{
auto ui = reinterpret_cast<Ui::ExtNetworkRequest *>(_ui);
ui->label_name->setText(i18n("Name"));
ui->label_comment->setText(i18n("Comment"));
ui->label_number->setText(i18n("Tag"));
ui->label_url->setText(i18n("URL"));
ui->checkBox_active->setText(i18n("Active"));
ui->label_schedule->setText(i18n("Schedule"));
ui->label_socket->setText(i18n("Socket"));
ui->label_interval->setText(i18n("Interval"));
}

View File

@ -20,6 +20,7 @@
#include <QNetworkReply> #include <QNetworkReply>
#include "abstractextitem.h" #include "abstractextitem.h"
#include "awtranslation.h"
class ExtNetworkRequest : public AbstractExtItem class ExtNetworkRequest : public AbstractExtItem
@ -51,7 +52,6 @@ private:
QNetworkAccessManager *m_manager = nullptr; QNetworkAccessManager *m_manager = nullptr;
QUrl m_url; QUrl m_url;
bool m_isRunning = false; bool m_isRunning = false;
void translate(void *_ui) override;
// properties // properties
QString m_stringUrl = "https://httpbin.org/get"; QString m_stringUrl = "https://httpbin.org/get";
// values // values

View File

@ -18,8 +18,6 @@
#include "extquotes.h" #include "extquotes.h"
#include "ui_extquotes.h" #include "ui_extquotes.h"
#include <KI18n/KLocalizedString>
#include <QSettings> #include <QSettings>
#include <qreplytimeout/qreplytimeout.h> #include <qreplytimeout/qreplytimeout.h>
@ -125,7 +123,6 @@ int ExtQuotes::showConfiguration(QWidget *_parent, const QVariant &_args)
auto dialog = new QDialog(_parent); auto dialog = new QDialog(_parent);
auto ui = new Ui::ExtQuotes(); auto ui = new Ui::ExtQuotes();
ui->setupUi(dialog); ui->setupUi(dialog);
translate(ui);
ui->lineEdit_name->setText(name()); ui->lineEdit_name->setText(name());
ui->lineEdit_comment->setText(comment()); ui->lineEdit_comment->setText(comment());
@ -207,21 +204,3 @@ void ExtQuotes::initProvider()
return m_providerObject->initUrl(ticker()); return m_providerObject->initUrl(ticker());
} }
void ExtQuotes::translate(void *_ui)
{
auto ui = reinterpret_cast<Ui::ExtQuotes *>(_ui);
ui->label_name->setText(i18n("Name"));
ui->label_comment->setText(i18n("Comment"));
ui->label_number->setText(i18n("Tag"));
ui->label->setText(i18n("<html><head/><body><p>Use Stooq ticker to get quotes for the instrument. Refer to <a "
"href=\"https://stooq.com/\"><span style=\" text-decoration: underline; "
"color:#0057ae;\">https://stooq.com/</span></a></p></body></html>"));
ui->label_ticker->setText(i18n("Ticker"));
ui->checkBox_active->setText(i18n("Active"));
ui->label_schedule->setText(i18n("Schedule"));
ui->label_socket->setText(i18n("Socket"));
ui->label_interval->setText(i18n("Interval"));
}

View File

@ -20,6 +20,7 @@
#include <QNetworkReply> #include <QNetworkReply>
#include "abstractextitem.h" #include "abstractextitem.h"
#include "awtranslation.h"
class AbstractQuotesProvider; class AbstractQuotesProvider;
@ -54,7 +55,6 @@ private:
QNetworkAccessManager *m_manager = nullptr; QNetworkAccessManager *m_manager = nullptr;
bool m_isRunning = false; bool m_isRunning = false;
void initProvider(); void initProvider();
void translate(void *_ui) override;
// properties // properties
QString m_ticker = "EURUSD=X"; QString m_ticker = "EURUSD=X";
// values // values

View File

@ -18,8 +18,6 @@
#include "extscript.h" #include "extscript.h"
#include "ui_extscript.h" #include "ui_extscript.h"
#include <KI18n/KLocalizedString>
#include <QDir> #include <QDir>
#include <QJsonDocument> #include <QJsonDocument>
#include <QSettings> #include <QSettings>
@ -258,7 +256,6 @@ int ExtScript::showConfiguration(QWidget *_parent, const QVariant &_args)
auto dialog = new QDialog(_parent); auto dialog = new QDialog(_parent);
auto ui = new Ui::ExtScript(); auto ui = new Ui::ExtScript();
ui->setupUi(dialog); ui->setupUi(dialog);
translate(ui);
ui->lineEdit_name->setText(name()); ui->lineEdit_name->setText(name());
ui->lineEdit_comment->setText(comment()); ui->lineEdit_comment->setText(comment());
@ -352,23 +349,3 @@ void ExtScript::updateValue()
m_values[tag("custom")] = applyFilters(result); m_values[tag("custom")] = applyFilters(result);
emit(dataReceived(m_values)); emit(dataReceived(m_values));
} }
void ExtScript::translate(void *_ui)
{
auto ui = reinterpret_cast<Ui::ExtScript *>(_ui);
ui->label_name->setText(i18n("Name"));
ui->label_comment->setText(i18n("Comment"));
ui->label_number->setText(i18n("Tag"));
ui->label_command->setText(i18n("Command"));
ui->checkBox_active->setText(i18n("Active"));
ui->label_redirect->setText(i18n("Redirect"));
ui->label_schedule->setText(i18n("Schedule"));
ui->label_socket->setText(i18n("Socket"));
ui->label_interval->setText(i18n("Interval"));
ui->groupBox_filters->setTitle(i18n("Additional filters"));
ui->checkBox_colorFilter->setText(i18n("Wrap colors"));
ui->checkBox_linesFilter->setText(i18n("Wrap new lines"));
ui->checkBox_spaceFilter->setText(i18n("Wrap spaces"));
}

View File

@ -20,6 +20,7 @@
#include <QProcess> #include <QProcess>
#include "abstractextitem.h" #include "abstractextitem.h"
#include "awtranslation.h"
class ExtScript : public AbstractExtItem class ExtScript : public AbstractExtItem
@ -65,7 +66,6 @@ private slots:
private: private:
QProcess *m_process = nullptr; QProcess *m_process = nullptr;
void translate(void *_ui) override;
// properties // properties
QString m_executable = "/usr/bin/true"; QString m_executable = "/usr/bin/true";
QStringList m_filters = QStringList(); QStringList m_filters = QStringList();

View File

@ -18,8 +18,6 @@
#include "extupgrade.h" #include "extupgrade.h"
#include "ui_extupgrade.h" #include "ui_extupgrade.h"
#include <KI18n/KLocalizedString>
#include <QSettings> #include <QSettings>
#include "awdebug.h" #include "awdebug.h"
@ -152,7 +150,6 @@ int ExtUpgrade::showConfiguration(QWidget *_parent, const QVariant &_args)
auto dialog = new QDialog(_parent); auto dialog = new QDialog(_parent);
auto ui = new Ui::ExtUpgrade(); auto ui = new Ui::ExtUpgrade();
ui->setupUi(dialog); ui->setupUi(dialog);
translate(ui);
ui->lineEdit_name->setText(name()); ui->lineEdit_name->setText(name());
ui->lineEdit_comment->setText(comment()); ui->lineEdit_comment->setText(comment());
@ -226,20 +223,3 @@ void ExtUpgrade::updateValue()
emit(dataReceived(m_values)); emit(dataReceived(m_values));
} }
void ExtUpgrade::translate(void *_ui)
{
auto ui = reinterpret_cast<Ui::ExtUpgrade *>(_ui);
ui->label_name->setText(i18n("Name"));
ui->label_comment->setText(i18n("Comment"));
ui->label_number->setText(i18n("Tag"));
ui->label_command->setText(i18n("Command"));
ui->label_filter->setText(i18n("Filter"));
ui->checkBox_active->setText(i18n("Active"));
ui->label_null->setText(i18n("Null"));
ui->label_socket->setText(i18n("Socket"));
ui->label_schedule->setText(i18n("Schedule"));
ui->label_interval->setText(i18n("Interval"));
}

View File

@ -20,6 +20,7 @@
#include <QProcess> #include <QProcess>
#include "abstractextitem.h" #include "abstractextitem.h"
#include "awtranslation.h"
class ExtUpgrade : public AbstractExtItem class ExtUpgrade : public AbstractExtItem
@ -55,7 +56,6 @@ private slots:
private: private:
QProcess *m_process = nullptr; QProcess *m_process = nullptr;
void translate(void *_ui) override;
// properties // properties
QString m_executable = "/usr/bin/true"; QString m_executable = "/usr/bin/true";
QString m_filter = ""; QString m_filter = "";

View File

@ -18,8 +18,6 @@
#include "extweather.h" #include "extweather.h"
#include "ui_extweather.h" #include "ui_extweather.h"
#include <KI18n/KLocalizedString>
#include <QDir> #include <QDir>
#include <QJsonDocument> #include <QJsonDocument>
#include <QSettings> #include <QSettings>
@ -266,7 +264,6 @@ int ExtWeather::showConfiguration(QWidget *_parent, const QVariant &_args)
auto dialog = new QDialog(_parent); auto dialog = new QDialog(_parent);
auto ui = new Ui::ExtWeather(); auto ui = new Ui::ExtWeather();
ui->setupUi(dialog); ui->setupUi(dialog);
translate(ui);
ui->lineEdit_name->setText(name()); ui->lineEdit_name->setText(name());
ui->lineEdit_comment->setText(comment()); ui->lineEdit_comment->setText(comment());
@ -366,22 +363,3 @@ void ExtWeather::initProvider()
return m_providerObject->initUrl(city(), country(), ts()); return m_providerObject->initUrl(city(), country(), ts());
} }
void ExtWeather::translate(void *_ui)
{
auto ui = reinterpret_cast<Ui::ExtWeather *>(_ui);
ui->label_name->setText(i18n("Name"));
ui->label_comment->setText(i18n("Comment"));
ui->label_number->setText(i18n("Tag"));
ui->label_provider->setText(i18n("Provider"));
ui->label_city->setText(i18n("City"));
ui->label_country->setText(i18n("Country"));
ui->label_timestamp->setText(i18n("Timestamp"));
ui->checkBox_image->setText(i18n("Use images"));
ui->checkBox_active->setText(i18n("Active"));
ui->label_schedule->setText(i18n("Schedule"));
ui->label_socket->setText(i18n("Socket"));
ui->label_interval->setText(i18n("Interval"));
}

View File

@ -20,13 +20,10 @@
#include <QNetworkReply> #include <QNetworkReply>
#include "abstractextitem.h" #include "abstractextitem.h"
#include "awtranslation.h"
class AbstractWeatherProvider; class AbstractWeatherProvider;
namespace Ui
{
class ExtWeather;
}
class ExtWeather : public AbstractExtItem class ExtWeather : public AbstractExtItem
{ {
@ -78,7 +75,6 @@ private:
QNetworkAccessManager *m_manager = nullptr; QNetworkAccessManager *m_manager = nullptr;
bool m_isRunning = false; bool m_isRunning = false;
void initProvider(); void initProvider();
void translate(void *_ui) override;
// properties // properties
QString m_city = "London"; QString m_city = "London";
QString m_country = "uk"; QString m_country = "uk";

View File

@ -18,8 +18,6 @@
#include "graphicalitem.h" #include "graphicalitem.h"
#include "ui_graphicalitem.h" #include "ui_graphicalitem.h"
#include <KI18n/KLocalizedString>
#include <QBuffer> #include <QBuffer>
#include <QColorDialog> #include <QColorDialog>
#include <QDir> #include <QDir>
@ -437,7 +435,6 @@ int GraphicalItem::showConfiguration(QWidget *_parent, const QVariant &_args)
auto dialog = new QDialog(_parent); auto dialog = new QDialog(_parent);
auto ui = new Ui::GraphicalItem(); auto ui = new Ui::GraphicalItem();
ui->setupUi(dialog); ui->setupUi(dialog);
translate(ui);
connect(ui->checkBox_custom, &QCheckBox::stateChanged, [ui](const int state) { changeValue(ui, state); }); connect(ui->checkBox_custom, &QCheckBox::stateChanged, [ui](const int state) { changeValue(ui, state); });
connect(ui->comboBox_type, &QComboBox::currentIndexChanged, [ui](const int state) { changeCountState(ui, state); }); connect(ui->comboBox_type, &QComboBox::currentIndexChanged, [ui](const int state) { changeCountState(ui, state); });
@ -591,32 +588,3 @@ void GraphicalItem::changeValue(Ui::GraphicalItem *_ui, const int _state)
_ui->widget_value->setHidden(_state != Qt::Unchecked); _ui->widget_value->setHidden(_state != Qt::Unchecked);
_ui->widget_customValue->setHidden(_state == Qt::Unchecked); _ui->widget_customValue->setHidden(_state == Qt::Unchecked);
} }
void GraphicalItem::translate(void *_ui)
{
auto ui = reinterpret_cast<Ui::GraphicalItem *>(_ui);
ui->label_name->setText(i18n("Name"));
ui->label_comment->setText(i18n("Comment"));
ui->label_number->setText(i18n("Tag"));
ui->checkBox_custom->setText(i18n("Use custom formula"));
ui->label_value->setText(i18n("Value"));
ui->label_customValue->setText(i18n("Value"));
ui->label_max->setText(i18n("Max value"));
ui->label_min->setText(i18n("Min value"));
ui->label_activeImageType->setText(i18n("Active filling type"));
ui->label_inactiveImageType->setText(i18n("Inctive filling type"));
ui->label_type->setText(i18n("Type"));
ui->label_count->setText(i18n("Points count"));
ui->label_direction->setText(i18n("Direction"));
ui->label_height->setText(i18n("Height"));
ui->label_width->setText(i18n("Width"));
ui->comboBox_activeImageType->clear();
ui->comboBox_activeImageType->addItem(i18n("color"));
ui->comboBox_activeImageType->addItem(i18n("image"));
ui->comboBox_inactiveImageType->clear();
ui->comboBox_inactiveImageType->addItem(i18n("color"));
ui->comboBox_inactiveImageType->addItem(i18n("image"));
}

View File

@ -20,6 +20,7 @@
#include <QColor> #include <QColor>
#include "abstractextitem.h" #include "abstractextitem.h"
#include "awtranslation.h"
class GraphicalItemHelper; class GraphicalItemHelper;
@ -103,7 +104,6 @@ private:
GraphicalItemHelper *m_helper = nullptr; GraphicalItemHelper *m_helper = nullptr;
QGraphicsScene *m_scene = nullptr; QGraphicsScene *m_scene = nullptr;
QGraphicsView *m_view = nullptr; QGraphicsView *m_view = nullptr;
void translate(void *_ui) override;
// properties // properties
QString m_bar = "cpu"; QString m_bar = "cpu";
int m_count = 100; int m_count = 100;

24
sources/awtranslation.h Normal file
View File

@ -0,0 +1,24 @@
/***************************************************************************
* This file is part of awesome-widgets *
* *
* awesome-widgets is free software: you can redistribute it and/or *
* modify it under the terms of the GNU General Public License as *
* published by the Free Software Foundation, either version 3 of the *
* License, or (at your option) any later version. *
* *
* awesome-widgets is distributed in the hope that it will be useful, *
* but WITHOUT ANY WARRANTY; without even the implied warranty of *
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the *
* GNU General Public License for more details. *
* *
* You should have received a copy of the GNU General Public License *
* along with awesome-widgets. If not, see http://www.gnu.org/licenses/ *
***************************************************************************/
#pragma once
#include <KI18n/KLocalizedString>
#ifndef ui_i18n
#define ui_i18n(text, parent) i18n(text)
#endif

View File

@ -30,5 +30,5 @@ add_custom_target(aw_pofiles ALL DEPENDS ${_gmoFiles})
add_custom_target( add_custom_target(
translations translations
COMMAND ${CMAKE_CURRENT_SOURCE_DIR}/extract_messages.sh COMMAND env CMAKE_BINARY_DIR=${CMAKE_BINARY_DIR} ${CMAKE_CURRENT_SOURCE_DIR}/extract_messages.sh
) )

File diff suppressed because it is too large Load Diff

File diff suppressed because it is too large Load Diff

File diff suppressed because it is too large Load Diff

View File

@ -11,15 +11,17 @@ SCRIPTDIR="$(dirname -- $(readlink -f -- $0))"
BASEDIR="$SCRIPTDIR/../" BASEDIR="$SCRIPTDIR/../"
WORKDIR="$(pwd)" WORKDIR="$(pwd)"
find "$BASEDIR" \ find "$BASEDIR" -name '*.cpp' -o -name '*.h' -o -name '*.qml' | sort > "$WORKDIR/infiles.list"
-name '*.cpp' -o -name '*.h' -o -name '*.qml' -o -name '*.ui' -o -name '*.rc' | \ if [ -n "$CMAKE_BINARY_DIR" ]; then
sort > "$WORKDIR/infiles.list" find "$CMAKE_BINARY_DIR" -name '*.cpp' -o -name '*.h' -o -name '*.qml' | sort >> "$WORKDIR/infiles.list";
fi
xgettext \ xgettext \
--from-code=UTF-8 --width=200 --add-location=file \ --from-code=UTF-8 --width=200 --add-location=file \
--files-from="$WORKDIR/infiles.list" \ --files-from="$WORKDIR/infiles.list" \
-C -kde \ -C --kde \
-ci18n \ -ci18n \
-kui_i18n:1 \
-ki18n:1 -ki18nc:1c,2 -ki18np:1,2 -ki18ncp:1c,2,3 \ -ki18n:1 -ki18nc:1c,2 -ki18np:1,2 -ki18ncp:1c,2,3 \
-kki18n:1 -kki18nc:1c,2 -kki18np:1,2 -kki18ncp:1c,2,3 \ -kki18n:1 -kki18nc:1c,2 -kki18np:1,2 -kki18ncp:1c,2,3 \
-kxi18n:1 -kxi18nc:1c,2 -kxi18np:1,2 -kxi18ncp:1c,2,3 \ -kxi18n:1 -kxi18nc:1c,2 -kxi18np:1,2 -kxi18ncp:1c,2,3 \
@ -27,15 +29,14 @@ xgettext \
-kI18N_NOOP:1 -kI18NC_NOOP:1c,2 \ -kI18N_NOOP:1 -kI18NC_NOOP:1c,2 \
-kI18N_NOOP2:1c,2 -kI18N_NOOP2_NOSTRIP:1c,2 \ -kI18N_NOOP2:1c,2 -kI18N_NOOP2_NOSTRIP:1c,2 \
-ktr2i18n:1 -ktr2xi18n:1 \ -ktr2i18n:1 -ktr2xi18n:1 \
-kN_:1 \
-kaliasLocale \ -kaliasLocale \
--package-name="$PROJECT" \ --package-name="$PROJECT" \
--msgid-bugs-address="$BUGADDR" \ --msgid-bugs-address="$BUGADDR" \
-D "$BASEDIR" \ -D "$BASEDIR" \
-D "$WORKDIR" \ -D "$WORKDIR" \
-o "$PROJECT.pot.new" -o "$SCRIPTDIR/$PROJECT.pot.new"
mv "${PROJECT}.pot"{.new,} mv "$SCRIPTDIR/$PROJECT.pot"{.new,}
for TR in $(find "$BASEDIR" -name '*.po'); do for TR in $(find "$BASEDIR" -name '*.po'); do
msgmerge \ msgmerge \
@ -43,7 +44,7 @@ for TR in $(find "$BASEDIR" -name '*.po'); do
--quiet \ --quiet \
--backup=off \ --backup=off \
"$TR" \ "$TR" \
"$WORKDIR/$PROJECT.pot" "$SCRIPTDIR/$PROJECT.pot"
msgattrib \ msgattrib \
--no-obsolete \ --no-obsolete \
--output-file "$TR" \ --output-file "$TR" \

File diff suppressed because it is too large Load Diff

File diff suppressed because it is too large Load Diff

File diff suppressed because it is too large Load Diff

File diff suppressed because it is too large Load Diff

File diff suppressed because it is too large Load Diff

File diff suppressed because it is too large Load Diff

File diff suppressed because it is too large Load Diff

File diff suppressed because it is too large Load Diff

File diff suppressed because it is too large Load Diff

File diff suppressed because it is too large Load Diff

File diff suppressed because it is too large Load Diff