Set tr function's codec to system encoding. Should (finally) resolve problems with already translated strings

This commit is contained in:
Arnaud Bienner 2011-06-22 20:41:48 +00:00
parent 17e5cd4ba9
commit 63300d79db
3 changed files with 6 additions and 5 deletions

View File

@ -1137,7 +1137,7 @@ void LibraryModel::CreateSmartPlaylists() {
void LibraryModel::ItemFromSmartPlaylist(const QSettings& s, bool notify) const {
LibraryItem* item = new LibraryItem(LibraryItem::Type_SmartPlaylist,
notify ? NULL : smart_playlist_node_);
item->display_text = trUtf8(qPrintable(s.value("name").toString()));
item->display_text = tr(qPrintable(s.value("name").toString()));
item->sort_text = item->display_text;
item->key = s.value("type").toString();
item->smart_playlist_data = s.value("data").toByteArray();

View File

@ -124,6 +124,7 @@ void LoadTranslation(const QString& prefix, const QString& path,
QCoreApplication::installTranslator(t);
else
delete t;
QTextCodec::setCodecForTr(QTextCodec::codecForLocale());
}
#ifdef HAVE_REMOTE

View File

@ -92,7 +92,7 @@ void Equalizer::ReloadSettings() {
// Selected preset
QString selected_preset = s.value("selected_preset", "Custom").toString();
QString selected_preset_display_name = QString(trUtf8(qPrintable(selected_preset)));
QString selected_preset_display_name = QString(tr(qPrintable(selected_preset)));
int selected_index = ui_->preset->findText(selected_preset_display_name);
if (selected_index != -1)
ui_->preset->setCurrentIndex(selected_index);
@ -127,7 +127,7 @@ void Equalizer::LoadDefaultPresets() {
}
void Equalizer::AddPreset(const QString& name, const Params& params) {
QString name_displayed = trUtf8(qPrintable(name));
QString name_displayed = tr(qPrintable(name));
presets_[name] = params;
if (ui_->preset->findText(name_displayed) == -1) {
ui_->preset->addItem(name_displayed, // name to display (translated)
@ -164,14 +164,14 @@ void Equalizer::SavePreset() {
QString name = SaveCurrentPreset();
if (!name.isEmpty()) {
last_preset_ = name;
ui_->preset->setCurrentIndex(ui_->preset->findText(trUtf8(qPrintable(name))));
ui_->preset->setCurrentIndex(ui_->preset->findText(tr(qPrintable(name))));
}
}
QString Equalizer::SaveCurrentPreset() {
QString name = QInputDialog::getText(this, tr("Save preset"), tr("Name"),
QLineEdit::Normal,
trUtf8(qPrintable(last_preset_)));;
tr(qPrintable(last_preset_)));;
if (name.isEmpty())
return QString();