Clean up/update translation code and made language selectable in the settings dialog
This commit is contained in:
		| @@ -219,6 +219,9 @@ void SettingsDialog::applySettings(SettingsObject *s) | ||||
| 		} | ||||
| 	} | ||||
|  | ||||
| 	// Language | ||||
| 	s->set("Language", ui->languageBox->currentData().toLocale().bcp47Name()); | ||||
|  | ||||
| 	// Updates | ||||
| 	s->set("AutoUpdate", ui->autoUpdateCheckBox->isChecked()); | ||||
|  | ||||
| @@ -286,6 +289,19 @@ void SettingsDialog::applySettings(SettingsObject *s) | ||||
|  | ||||
| void SettingsDialog::loadSettings(SettingsObject *s) | ||||
| { | ||||
| 	// Language | ||||
| 	ui->languageBox->clear(); | ||||
| 	ui->languageBox->addItem(tr("English"), QLocale(QLocale::English)); | ||||
| 	foreach(const QString & lang, | ||||
| 			QDir(MMC->root() + "/translations").entryList(QStringList() << "*.qm", QDir::Files)) | ||||
| 	{ | ||||
| 		QLocale locale(lang.section(QRegExp("[_\.]"), 1)); | ||||
| 		ui->languageBox->addItem( | ||||
| 			QLocale::languageToString(locale.language()), | ||||
| 			locale); | ||||
| 	} | ||||
| 	ui->languageBox->setCurrentIndex(ui->languageBox->findData(QLocale(s->get("Language").toString()))); | ||||
|  | ||||
| 	// Updates | ||||
| 	ui->autoUpdateCheckBox->setChecked(s->get("AutoUpdate").toBool()); | ||||
| 	ui->devBuildsCheckBox->setChecked(s->get("UseDevBuilds").toBool()); | ||||
|   | ||||
| @@ -7,7 +7,7 @@ | ||||
|     <x>0</x> | ||||
|     <y>0</y> | ||||
|     <width>526</width> | ||||
|     <height>628</height> | ||||
|     <height>701</height> | ||||
|    </rect> | ||||
|   </property> | ||||
|   <property name="sizePolicy"> | ||||
| @@ -40,6 +40,20 @@ | ||||
|        <string>General</string> | ||||
|       </attribute> | ||||
|       <layout class="QVBoxLayout" name="verticalLayout"> | ||||
|        <item> | ||||
|         <layout class="QHBoxLayout" name="horizontalLayout_2" stretch="0,1"> | ||||
|          <item> | ||||
|           <widget class="QLabel" name="label_3"> | ||||
|            <property name="text"> | ||||
|             <string>Language (needs restart):</string> | ||||
|            </property> | ||||
|           </widget> | ||||
|          </item> | ||||
|          <item> | ||||
|           <widget class="QComboBox" name="languageBox"/> | ||||
|          </item> | ||||
|         </layout> | ||||
|        </item> | ||||
|        <item> | ||||
|         <widget class="QGroupBox" name="sortingModeBox"> | ||||
|          <property name="enabled"> | ||||
| @@ -644,7 +658,6 @@ | ||||
|   </layout> | ||||
|  </widget> | ||||
|  <tabstops> | ||||
|   <tabstop>settingsTab</tabstop> | ||||
|   <tabstop>buttonBox</tabstop> | ||||
|   <tabstop>sortLastLaunchedBtn</tabstop> | ||||
|   <tabstop>sortByNameBtn</tabstop> | ||||
|   | ||||
		Reference in New Issue
	
	Block a user