Skip to content

Commit

Permalink
Preferences: translations fix
Browse files Browse the repository at this point in the history
Signed-off-by: Cristina Suteu <[email protected]>
  • Loading branch information
cristina-suteu authored and adisuciu committed May 19, 2020
1 parent 5b6c3c1 commit 3962ca3
Show file tree
Hide file tree
Showing 2 changed files with 14 additions and 28 deletions.
9 changes: 1 addition & 8 deletions CMakeLists.txt
Original file line number Diff line number Diff line change
Expand Up @@ -272,15 +272,8 @@ if (ENABLE_APPLICATION_BUNDLE)
set(EXTRA_BUNDLE_FILES ${QT_PLUGINS} ${ICON_FILE} ${PKGINFO} ${QT_CONF} ${DECODERS})
endif()

FILE(GLOB TS_FILES ${CMAKE_SOURCE_DIR}/resources/languages/*.ts)


set_source_files_properties(${TS_FILES} PROPERTIES OUTPUT_LOCATION ${CMAKE_CURRENT_BINARY_DIR}/resources/languages)

# Creates translation .ts files from ${CMAKE_SOURCE_DIR}
#qt5_create_translation(QM_FILES ${CMAKE_SOURCE_DIR} ${TS_FILES})

# Generate .qm files from the .ts files
#qt5_create_translation(QM_FILES ${CMAKE_SOURCE_DIR} ${TS_FILES}

add_executable(${PROJECT_NAME} WIN32 ${OSX_BUNDLE}
${SRC_LIST}
Expand Down
33 changes: 13 additions & 20 deletions src/preferences.cpp
Original file line number Diff line number Diff line change
Expand Up @@ -30,6 +30,7 @@
#include <QFileInfo>
#include <QTextStream>


using namespace adiscope;

Preferences::Preferences(QWidget *parent) :
Expand Down Expand Up @@ -155,14 +156,16 @@ Preferences::Preferences(QWidget *parent) :
}
});

ui->label_restart->setVisible(false);
ui->languageCombo->addItems(getOptionsList());

QString preference_ini_file = getPreferenceIniFile();
QSettings settings(preference_ini_file, QSettings::IniFormat);

pref_api->setObjectName(QString("Preferences"));
pref_api->load(settings);

ui->label_restart->setVisible(false);
ui->languageCombo->addItems(getOptionsList());


connect(ui->languageCombo, &QComboBox::currentTextChanged, [=](QString lang) {
if(lang=="browse"){
QString langtemp = loadLanguage();
Expand Down Expand Up @@ -197,20 +200,10 @@ Preferences::Preferences(QWidget *parent) :

QStringList Preferences::getOptionsList()
{
QFile f(getPreferenceIniFile());
f.open(QFile::ReadOnly);
QTextStream in (&f);
const QStringList content = in.readAll().split("\n");
QString language;
for(auto s : content) {
if(s.startsWith("language")){
language=s.split("=")[1].trimmed();
}
}

QString currentLanguage = pref_api->getLanguage();
QStringList options;
if(!getLanguageList().contains(language) && language.endsWith(".qm")){
QFileInfo info(language);
if(!getLanguageList().contains(currentLanguage) && currentLanguage.endsWith(".qm")) {
QFileInfo info(currentLanguage);
options<<info.fileName().remove(".qm")<<getLanguageList()<<"auto"<<"browse";
ui->languageCombo->setCurrentText(info.fileName().remove(".qm"));
}
Expand All @@ -221,15 +214,15 @@ QStringList Preferences::getOptionsList()

QStringList Preferences::getLanguageList()
{
QDir directory("resources/languages");
QStringList languages = directory.entryList(QStringList() << "*.qm",QDir::Files);
for(auto &s : languages)
{
QDir directory(":/translations");
QStringList languages = directory.entryList(QStringList() << "*.qm" << "*.QM", QDir::Files);
for(auto &s : languages) {
s.remove(".qm");
}
return languages;
}


Preferences::~Preferences()
{
QString preference_ini_file = getPreferenceIniFile();
Expand Down

0 comments on commit 3962ca3

Please sign in to comment.