|
@ -192,7 +192,6 @@ void MainWindow::slotLanguageChanged(QString lang) |
|
|
if(lang != "") { |
|
|
if(lang != "") { |
|
|
// load the language
|
|
|
// load the language
|
|
|
loadLanguage(lang); |
|
|
loadLanguage(lang); |
|
|
//setWindowIcon(action->icon());
|
|
|
|
|
|
} |
|
|
} |
|
|
} |
|
|
} |
|
|
|
|
|
|
|
@ -229,7 +228,7 @@ void MainWindow::loadLanguage(QString& rLanguage) { |
|
|
switchTranslator(m_translator, QString("silentdragon_%1.qm").arg(lang)); |
|
|
switchTranslator(m_translator, QString("silentdragon_%1.qm").arg(lang)); |
|
|
switchTranslator(m_translatorQt, QString("qt_%1.qm").arg(lang)); |
|
|
switchTranslator(m_translatorQt, QString("qt_%1.qm").arg(lang)); |
|
|
|
|
|
|
|
|
ui->statusBar->showMessage(tr("Current Language changed to %1").arg(languageName)); |
|
|
ui->statusBar->showMessage(tr("Language changed to") + " " + languageName + " (" + lang + ")"); |
|
|
} |
|
|
} |
|
|
} |
|
|
} |
|
|
|
|
|
|
|
@ -499,59 +498,56 @@ void MainWindow::setupSettingsModal() { |
|
|
settings.testnetTxExplorerUrl->setText(explorer.testnetTxExplorerUrl); |
|
|
settings.testnetTxExplorerUrl->setText(explorer.testnetTxExplorerUrl); |
|
|
settings.testnetAddressExplorerUrl->setText(explorer.testnetAddressExplorerUrl); |
|
|
settings.testnetAddressExplorerUrl->setText(explorer.testnetAddressExplorerUrl); |
|
|
|
|
|
|
|
|
/// create language drop down dynamically
|
|
|
// format systems language
|
|
|
QActionGroup* langGroup = new QActionGroup(settings.comboBoxLanguage); |
|
|
QString defaultLocale = QLocale::system().name(); // e.g. "de_DE"
|
|
|
langGroup->setExclusive(true); |
|
|
defaultLocale.truncate(defaultLocale.lastIndexOf('_')); // e.g. "de"
|
|
|
|
|
|
|
|
|
//qDebug() << __func__ << ": connecting langGroup to slotLanguageChanged";
|
|
|
// Set the current language to the default system language
|
|
|
//connect(langGroup, SIGNAL (triggered(QAction *)), this, SLOT (slotLanguageChanged(QAction *)));
|
|
|
// TODO: this will need to change when we read/write selected language to config on disk
|
|
|
|
|
|
m_currLang = defaultLocale; |
|
|
|
|
|
|
|
|
// format systems language
|
|
|
//QString defaultLang = QLocale::languageToString(QLocale("en").language());
|
|
|
QString defaultLocale = QLocale::system().name(); // e.g. "de_DE"
|
|
|
settings.comboBoxLanguage->addItem("English (en)"); |
|
|
defaultLocale.truncate(defaultLocale.lastIndexOf('_')); // e.g. "de"
|
|
|
|
|
|
|
|
|
|
|
|
//QString defaultLang = QLocale::languageToString(QLocale("en").language());
|
|
|
m_langPath = QApplication::applicationDirPath(); |
|
|
settings.comboBoxLanguage->addItem("English (en)"); |
|
|
m_langPath.append("/res"); |
|
|
|
|
|
|
|
|
m_langPath = QApplication::applicationDirPath(); |
|
|
qDebug() << __func__ <<": defaultLocale=" << defaultLocale << " m_langPath=" << m_langPath;; |
|
|
m_langPath.append("/res"); |
|
|
|
|
|
|
|
|
|
|
|
qDebug() << __func__ <<": defaultLocale=" << defaultLocale << " m_langPath=" << m_langPath;; |
|
|
QDir dir(m_langPath); |
|
|
|
|
|
QStringList fileNames = dir.entryList(QStringList("silentdragon_*.qm")); |
|
|
|
|
|
|
|
|
QDir dir(m_langPath); |
|
|
qDebug() << __func__ <<": found " << fileNames.size() << " translations"; |
|
|
QStringList fileNames = dir.entryList(QStringList("silentdragon_*.qm")); |
|
|
|
|
|
|
|
|
|
|
|
qDebug() << __func__ <<": found " << fileNames.size() << " translations"; |
|
|
// create language drop down dynamically
|
|
|
|
|
|
for (int i = 0; i < fileNames.size(); ++i) { |
|
|
|
|
|
// get locale extracted by filename
|
|
|
|
|
|
QString locale; |
|
|
|
|
|
locale = fileNames[i]; // "silentdragon_de.qm"
|
|
|
|
|
|
locale.truncate(locale.lastIndexOf('.')); // "silentdragon_de"
|
|
|
|
|
|
locale.remove(0, locale.lastIndexOf('_') + 1); // "de"
|
|
|
|
|
|
|
|
|
for (int i = 0; i < fileNames.size(); ++i) { |
|
|
QString lang = QLocale::languageToString(QLocale(locale).language()); |
|
|
// get locale extracted by filename
|
|
|
//QIcon ico(QString("%1/%2.png").arg(m_langPath).arg(locale));
|
|
|
QString locale; |
|
|
QIcon ico; |
|
|
locale = fileNames[i]; // "silentdragon_de.qm"
|
|
|
|
|
|
locale.truncate(locale.lastIndexOf('.')); // "silentdragon_de"
|
|
|
|
|
|
locale.remove(0, locale.lastIndexOf('_') + 1); // "de"
|
|
|
|
|
|
|
|
|
|
|
|
QString lang = QLocale::languageToString(QLocale(locale).language()); |
|
|
QAction *action = new QAction(ico, lang, this); // ico, lang, this);
|
|
|
//QIcon ico(QString("%1/%2.png").arg(m_langPath).arg(locale));
|
|
|
action->setCheckable(true); |
|
|
QIcon ico; |
|
|
action->setData(locale); |
|
|
|
|
|
|
|
|
QAction *action = new QAction(ico, lang, this); // ico, lang, this);
|
|
|
//settings.comboBoxLanguage->addItem(action);
|
|
|
action->setCheckable(true); |
|
|
settings.comboBoxLanguage->addItem(lang + " (" + locale + ")"); |
|
|
action->setData(locale); |
|
|
qDebug() << __func__ << ": added lang=" << lang << " locale=" << locale; |
|
|
|
|
|
|
|
|
//settings.comboBoxLanguage->addItem(action);
|
|
|
// set default translators and language checked
|
|
|
settings.comboBoxLanguage->addItem(lang + " (" + locale + ")"); |
|
|
if (defaultLocale == locale) { |
|
|
langGroup->addAction(action); |
|
|
action->setChecked(true); |
|
|
qDebug() << __func__ << ": added lang=" << lang << " locale=" << locale; |
|
|
qDebug() << " set defaultLocale=" << locale << " to checked"; |
|
|
|
|
|
} |
|
|
// set default translators and language checked
|
|
|
|
|
|
if (defaultLocale == locale) { |
|
|
|
|
|
action->setChecked(true); |
|
|
|
|
|
qDebug() << " set defaultLocale=" << locale << " to checked"; |
|
|
|
|
|
} |
|
|
} |
|
|
} |
|
|
|
|
|
|
|
|
|
|
|
// Connection tab by default
|
|
|
// Options tab by default
|
|
|
settings.tabWidget->setCurrentIndex(0); |
|
|
settings.tabWidget->setCurrentIndex(1); |
|
|
|
|
|
|
|
|
// Enable the troubleshooting options only if using embedded hushd
|
|
|
// Enable the troubleshooting options only if using embedded hushd
|
|
|
if (!rpc->isEmbedded()) { |
|
|
if (!rpc->isEmbedded()) { |
|
|