QsLanguage::~QsLanguage() { const int defaultLanguageId = defaultLanguage().id; if( mApplicationLanguage != defaultLanguageId ) { Q_ASSERT_X(0,"QsLanguage","You forgot to uninstall the translators!"); setApplicationLanguage(defaultLanguageId); } qDeleteAll(mLangIdToQtTranslator.values()); qDeleteAll(mLangIdToTranslator.values()); }
int main(int argc, char *argv[]) { #ifdef Q_OS_WIN QProcessEnvironment env = QProcessEnvironment::systemEnvironment(); QString toolDir = QDir::current().absoluteFilePath(WINDOWS_YLE_DL_DIR).replace('/', '\\'); QString newPath = toolDir + ";" + env.value("PATH"); ::SetEnvironmentVariableA("PATH", newPath.toLocal8Bit()); #endif QApplication app(argc, argv); QApplication::setOrganizationName("nobody"); QApplication::setApplicationName("yle-downloader-gui"); QSettings settings; QVariant localeNameVar = settings.value("language", QVariant()); QLocale locale; if (!localeNameVar.isValid()) { locale = QLocale::Finnish; settings.setValue("language", locale.name()); } else { locale = QLocale(localeNameVar.toString()); } setApplicationLanguage(&app, locale); MainWindow w; w.setWindowIcon(QIcon(":/icons/icon.ico")); w.setLocale(locale); if (QApplication::arguments().size() > 0 && looksLikeUrl(QApplication::arguments().last())) { w.setExitOnSuccess(true); w.setSaveAndRestoreSession(false); w.init(); w.startDownloadFrom(QApplication::arguments().last()); } else { w.setSaveAndRestoreSession(true); w.init(); } w.show(); return app.exec(); }