void LanguageManager::_load(xml::ElementPtr _node, const std::string& _file, Version _version)
    {
        std::string default_lang;
        bool event_change = false;

        // берем детей и крутимся, основной цикл
        xml::ElementEnumerator root = _node->getElementEnumerator();
        while (root.next(XML_TYPE))
        {
            // парсим атрибуты
            root->findAttribute("default", default_lang);

            // берем детей и крутимся
            xml::ElementEnumerator info = root->getElementEnumerator();
            while (info.next("Info"))
            {
                // парсим атрибуты
                std::string name(info->findAttribute("name"));

                // доюавляем в карту пользователя
                if (name.empty())
                {
                    xml::ElementEnumerator source_info = info->getElementEnumerator();
                    while (source_info.next("Source"))
                    {
                        loadLanguage(source_info->getContent(), true);
                    }
                }
                // добавляем в карту языков
                else
                {
                    xml::ElementEnumerator source_info = info->getElementEnumerator();
                    while (source_info.next("Source"))
                    {
                        std::string file_source = source_info->getContent();
                        // добавляем в карту
                        mMapFile[name].push_back(file_source);

                        // если добавляемый файл для текущего языка, то подгружаем и оповещаем
                        if (name == mCurrentLanguageName)
                        {
                            loadLanguage(file_source, false);
                            event_change = true;
                        }
                    }
                }

            }
        }

        if (!default_lang.empty())
            setCurrentLanguage(default_lang);
        else if (event_change)
            eventChangeLanguage(mCurrentLanguageName);
    }
Exemple #2
0
RESULT eServiceEvent::parseFrom(Event *evt, int tsidonid)
{
	m_begin = parseDVBtime(evt->getStartTimeMjd(), evt->getStartTimeBcd());
	m_event_id = evt->getEventId();
	uint32_t duration = evt->getDuration();
	m_duration = fromBCD(duration>>16)*3600+fromBCD(duration>>8)*60+fromBCD(duration);
	if (m_language != "---" && loadLanguage(evt, m_language, tsidonid))
		return 0;
	if (m_language_alternative != "---" && loadLanguage(evt, m_language_alternative, tsidonid))
		return 0;
	if (loadLanguage(evt, "eng", tsidonid))
		return 0;
	if (loadLanguage(evt, "---", tsidonid))
		return 0;
	return 0;
}
Exemple #3
0
// try to determine the desired language file from system locale
// otherwise use the english translation
void MainWindow::selectDefaultLang()
{
	QString locale = QLocale::system().name();
#if DEBUG
	std::cerr << "locale: " << locale.toAscii().data() << std::endl;
#endif
	QStringList filters;
	filters << "language_*"+locale+".qm";
	QStringList langFiles(mLangPath.entryList(filters, QDir::Files));
	if (! langFiles.empty()) 
	{
		loadLanguage(langFiles.front());
	} else {
		loadLanguage("language_en_GB.qm");
	}
}
void LanguageSelection::onLanguageSelected(QAction* action)
{
  Q_ASSERT(action != nullptr);

  const auto languageCode = LanguageCode::fromString( action->data().toString() );
  loadLanguage(languageCode);
}
void MainWindow::slotLanguageChanged(QAction* action)
{
    WriteToLog(QtDebugMsg, QString("Translation->SlotStarted"));
    if(0 != action)
    {
        // load the language depending on the action content
        GlobalSettings::locale = m_currLang;

        lockTilesetBox=true;

        int doorType = ui->WarpType->currentIndex(); //backup combobox's index
        int npcGenType = ui->PROPS_NPCGenType->currentIndex(); //backup combobox's index

        loadLanguage(action->data().toString());

        ui->WarpType->setCurrentIndex(doorType); //restore combobox's index
        ui->PROPS_NPCGenType->setCurrentIndex(npcGenType);

        lockTilesetBox=false;

        setLvlItemBoxes();
        setLevelSectionData();
        setEventData(-1);
        setSoundList();
        WldLvlExitTypeListReset();
        setCurrentWorldSettings();
        setTileSetBox();

        DevConsole::retranslate();
    }
}
Exemple #6
0
// Change the language
void SoundFactory::change(uint selectedLanguage)
{
  QDomDocument layoutsDocument;
  bool ok = topLevel->loadLayout(layoutsDocument);
  if (ok) ok = loadLanguage(layoutsDocument, selectedLanguage);
  if (!ok) loadFailure();
}
Exemple #7
0
void Speller::setLanguage(QString lang) {
    if (lang.isEmpty())
        return;

    loadLanguage(lang);
    if (m_settings)
        m_settings->setLanguage(lang);
}
	void LanguageManager::loadLanguage(const VectorString & _list, const std::string & _group)
	{
		mMapLanguage.clear();

		for (VectorString::const_iterator iter=_list.begin(); iter!=_list.end(); ++iter) {
			loadLanguage(*iter, _group);
		}
	}
Exemple #9
0
void SoundFactory::loadFailure()
{
    KMessageBox::error(klettres, i18n("Error while loading the sound names."));
    klettres->slotChangeLevel(Prefs::level()-1);
    bool ok = loadLanguage(m_layoutsDocument, Prefs::language());
    if (ok)  {
        change(Prefs::language());
    }
}
Exemple #10
0
    CManager(const std::string &sResourceGroup,
	     const std::string sPrefix = "",
	     bool bLoadOnCreate = true) 
      : m_sResourceGroup(sResourceGroup),
	m_sPrefix(sPrefix) {
      if (bLoadOnCreate) {
	loadLanguage();
      }
    }
// ##################
// ## CHECKCONFIG2 ##
// ##################
int checkConfig2()
{
	FILE* EditorPTR;

	EditorPTR = fopen(CONFIG_FILE, "r");

	if(EditorPTR)
	{
		if(loadExpansion() != 1 && loadExpansion() != 2 && loadExpansion() != 3)
		{
			gLog("[World of Warcraft Studio - Editor] - Expansion isn't selected\n"); 
			exit(1);
		}
		else
			gLog("[World of Warcraft Studio - Editor] - Expansion: %d\n", loadExpansion());


		/*if(loadPath() == NULL)
			gLog("[World of Warcraft Studio - Editor] - Path is selected from Registry\n");

		else
			gLog("[World of Warcraft Studio - Editor] - Path is selected from Config - %s\n", loadPath());
		*/

		if(loadGameVersion() != 1 && loadGameVersion() != 2 && loadGameVersion() != 3 && loadGameVersion() != 4 && loadGameVersion() != 5 && loadGameVersion() != 6)
		{
			gLog("[World of Warcraft Studio - Editor] - Game Version isn't selected\n");
			exit(1);
		}
		else
			gLog("[World of Warcraft Studio - Editor] - GameVersion: %d\n", loadGameVersion());


		if(loadLanguage() != 1 && loadLanguage() != 2 && loadLanguage() != 3)
		{
			gLog("[World of Warcraft Studio - Editor] - Language isn't selected\n");
			exit(1);
		}
		else
			gLog("[World of Warcraft Studio - Editor] - Language: %d\n", loadLanguage());
	}

	return 0;
}
void LanguageSelection::handleChangeEvent(QEvent* event)
{
  if(event == nullptr){
    return;
  }
  if(event->type() == QEvent::LocaleChange){
    const auto languageCode = LanguageCode::fromLanguageCountry( QLocale::system().name() );
    loadLanguage(languageCode);
  }
}
Translation::Translation(QObject *parent) :
    QObject(parent)
{
    languages = new QMultiMap<QString, QString>();
    foreach( QString qmFile, qmFiles()){
        if(!languageName(qmFile).isEmpty())
            languages->insert(languageName(qmFile), qmFile);
    }
    loadLanguage();
    loadLanguageFile();
}
Exemple #14
0
void SoundFactory::change(const QString &currentLanguage)
{
    //go load the sounds for the current language
    bool ok = loadLanguage(m_layoutsDocument, currentLanguage);
    //tell the user if there are no sounds or get the random sounds
    if (!ok)  {
        loadFailure();
    }  else  {
        setSoundSequence();
    }
}
void SettingsGeneral::on_revertChangesButton_clicked()
{
	loadLanguage();
    loadConfirmOpenOrder();
    loadCloseToTray();
	loadUpdates();
    loadTime();

	ui.revertChangesButton->setEnabled(false);
	ui.saveButton->setEnabled(false);
}
Exemple #16
0
/**
 * Loads the most appropriate language
 * given current system and game options.
 */
void Game::defaultLanguage()
{
	std::string defaultLang = "en-US";
	// No language set, detect based on system
	if (Options::language.empty())
	{
		std::string locale = CrossPlatform::getLocale();
		std::string lang = locale.substr(0, locale.find_first_of('-'));
		// Try to load full locale
		try
		{
			loadLanguage(locale);
		}
		catch (std::exception)
		{
			// Try to load language locale
			try
			{
				loadLanguage(lang);
			}
			// Give up, use default
			catch (std::exception)
			{
				loadLanguage(defaultLang);
			}
		}
	}
	else
	{
		// Use options language
		try
		{
			loadLanguage(Options::language);
		}
		// Language not found, use default
		catch (std::exception)
		{
			loadLanguage(defaultLang);
		}
	}
}
	bool LanguageManager::setCurrentLanguage(const std::string & _name)
	{
		mCurrentLanguage = mMapFile.find(_name);
		if (mCurrentLanguage == mMapFile.end()) {
			MYGUI_LOG(Error, "Language '" << _name << "' is not found");
			return false;
		}

		loadLanguage(mCurrentLanguage->second, ResourceManager::getInstance().getResourceGroup());
		eventChangeLanguage(mCurrentLanguage->first);
		return true;
	}
Exemple #18
0
/* give the index of the language to set to -- sets the appropriate
 * lang variables if we have a font.
 *
 * ASSUMPTION: languages exists
 */
static void setLangEnv (int i) {
    if (i > numLanguages)
        return;

    if (strcmp(languages[i].font, "latarcyrheb-sun16"))
        return;
    logMessage(INFO, "setting language to %s", languages[i].lc_all);

    setenv("LANG", languages[i].lc_all, 1);
    setenv("LANGKEY", languages[i].key, 1);
    setenv("LINGUAS", languages[i].lang, 1);
    loadLanguage (NULL);
}
Exemple #19
0
// Constructor
SoundFactory::SoundFactory(TopLevel *parent, const char *name, uint selectedLanguage)
	: QObject(parent, name)
{
  topLevel = parent;

  namesList = filesList = 0;

  QDomDocument layoutsDocument;
  bool ok = topLevel->loadLayout(layoutsDocument);
  if (ok) ok = registerLanguages(layoutsDocument);
  if (ok) ok = loadLanguage(layoutsDocument, selectedLanguage);
  if (!ok) loadFailure();
}
	void LanguageManager::_load(xml::ElementPtr _node, const std::string & _file, Version _version)
	{
		std::string def;

		// берем детей и крутимся, основной цикл
		xml::ElementEnumerator root = _node->getElementEnumerator();
		while (root.next(XML_TYPE)) {

			// парсим атрибуты
			root->findAttribute("default", def);

			// берем детей и крутимся
			xml::ElementEnumerator info = root->getElementEnumerator();
			while (info.next("Info")) {

				// парсим атрибуты
				std::string name(info->findAttribute("name"));

				// доюавляем в карту пользователя
				if (name.empty()) {
					xml::ElementEnumerator source_info = info->getElementEnumerator();
					while (source_info.next("Source")) {
						loadLanguage(source_info->getContent(), ResourceManager::getInstance().getResourceGroup(), true);
					};

				}
				// добавляем в карту языков
				else {
					MapListString::iterator lang = mMapFile.find(name);
					if (lang == mMapFile.end()) {
						lang = mMapFile.insert(std::make_pair(name, VectorString())).first;
					}

					xml::ElementEnumerator source_info = info->getElementEnumerator();
					while (source_info.next("Source")) {
						lang->second.push_back(source_info->getContent());
					};
				}

			};
		};

		if ( ! def.empty()) setCurrentLanguage(def);
	}
    void LanguageManager::setCurrentLanguage(const std::string& _name)
    {
        MapListString::iterator item = mMapFile.find(_name);
        if (item == mMapFile.end())
        {
            MYGUI_LOG(Error, "Language '" << _name << "' is not found");
            return;
        }

        mMapLanguage.clear();
        mCurrentLanguageName = _name;

        for (VectorString::const_iterator iter = item->second.begin(); iter != item->second.end(); ++iter)
        {
            loadLanguage(*iter, false);
        }

        eventChangeLanguage(mCurrentLanguageName);
    }
Exemple #22
0
void MainWindow::useSystemLocaleTriggered()
{
	// reformat spinbox values
	if (actionUseSystemLocale->isChecked()) {
		// use system settings for decimal operator
		mLocale = QLocale::system();
	} else  {
		// force . decimal operator
		mLocale = QLocale::c();
	}
	// disable decimal grouping
	mLocale.setNumberOptions(QLocale::OmitGroupSeparator|QLocale::RejectGroupSeparator);
	// reconfigure input fields
	ntrDensity->setLocale(mLocale);
	ntrXrayEn->setLocale(mLocale);
	ntrNeutronWl->setLocale(mLocale);
	// reload the current language file
	loadLanguage(mLangFile);
}
SettingsGeneral::SettingsGeneral()
	: QWidget()
{
	ui.setupUi(this);
    iniSettings=new QSettings(baseValues.iniFileName,QSettings::IniFormat,this);
    mainSettings=new QSettings(appDataDir+"/QtBitcoinTrader.cfg",QSettings::IniFormat);

	loadLanguage();
    loadConfirmOpenOrder();
    loadCloseToTray();
	loadUpdates();
    loadTime();

    ui.revertChangesButton->setEnabled(false);
    ui.saveButton->setEnabled(false);

#ifdef Q_OS_MAC
    ui.closeToTrayLabel->setVisible(false);
    ui.closeToTrayCheckBox->setVisible(false);
#endif
}
void LanguageSelection::createLanguageSelectionActions(QObject* parent)
{
  Q_ASSERT(mLanguageSelectionActions.isEmpty());

  const auto currentLanguageCode = LanguageCode::fromLanguageCountry( QLocale::system().name() );
  const auto availableLanguageCodes = mTranslations.toLanguageCodeList();
  auto *actionGroup = new QActionGroup(parent);
  actionGroup->setExclusive(true);
  connect( actionGroup, &QActionGroup::triggered, this, &LanguageSelection::onLanguageSelected );
  for(const auto & languageCode : availableLanguageCodes){
    const auto locale = QLocale(languageCode.toString());
    const auto language = QLocale::languageToString( locale.language() );
    auto *action = new QAction(language, parent);
    action->setCheckable(true);
    action->setData(languageCode.toString());
    actionGroup->addAction(action);
    if(languageCode == currentLanguageCode){
      action->setChecked(true);
      loadLanguage(languageCode);
    }
    mLanguageSelectionActions.append(action);
  }
}
Exemple #25
0
Musec::Musec(QMainWindow* parent) : QMainWindow(parent)
{
    setupUi(this);
    setWindowFlags(Qt::FramelessWindowHint);
    setAttribute(Qt::WA_TranslucentBackground, true);
    fTranslator = new QTranslator(this);
    fScore = new Score();
    fNetMgr = new NetMgr(this);
    fPlayer = new QMediaPlayer(this, QMediaPlayer::LowLatency);
    fPlaylist = new QMediaPlaylist(this);
    fPlayer->setPlaylist(fPlaylist);
    fTimer = new QTimer(this);
    fTimer->setSingleShot(true);
    fTimer->setInterval(TIME_HARD * 1000);
    fStartTime = -1;
    fDiffLock = kHard;
    fIsActive = false;
    fDragging = false;

    loadLanguage(getConfig("lang", QLocale::system().name()));
    fExtensions << "*.mp3" << "*.m4a"; // These should contain meta data

    btnMenuMusic->setMenu(menuMusic);
    btnMenuInfo->setMenu(menuInfo);
    btnMenuLanguage->setMenu(menuLanguage);
    btnMenuHelp->setMenu(menuHelp);

    connect(fScore, &Score::multiplierChanged, this, &Musec::multiplierChanged);
    connect(fNetMgr, &NetMgr::done, this, &Musec::scoreSubmitted);
    connect(fTimer, &QTimer::timeout, fPlayer, &QMediaPlayer::stop);
    connect(fPlayer, &QMediaPlayer::mediaStatusChanged, this, &Musec::mediaStatusChanged);
    connect(fPlaylist, &QMediaPlaylist::loaded, this, &Musec::playlistLoaded);
    connect(fPlaylist, &QMediaPlaylist::loadFailed, this, &Musec::playlistLoadFailed);
    connect(slDifficulty, &QSlider::valueChanged, this, &Musec::difficultyChanged);

    qsrand(QTime(0,0,0).secsTo(QTime::currentTime()));
}
Exemple #26
0
bool Speller::initialize()
{
    if (initialized())
        return true;

    m_dictionaryPath = getDictionaryPath();

    QString defLanguage;

    if (m_settings)
        defLanguage = m_settings->language();
    else
        defLanguage = QLocale::system().name();

    if (!availableLanguages().contains(defLanguage))
        defLanguage = availableLanguages().keys().first();

    loadLanguage(defLanguage);

    if (!m_settings)
        m_enabled = true;

    return initialized();
}
Exemple #27
0
void MainWindow::on_language_changed(QAction *action)
{
	loadLanguage(action->data().toString());
}
Exemple #28
0
void Musec::on_actLangFr_triggered()
{
    loadLanguage("fr");
}
Exemple #29
0
void Musec::on_actLangDe_triggered()
{
    loadLanguage("de");
}
Exemple #30
0
void Musec::on_actLangEn_triggered()
{
    loadLanguage("en");
}