void LocalisationManager::locateLanguagesFile() { File languagesFolder (PathHelpers::getMediaFolder() + "Languages/"); jassert (languagesFolder.exists() && languagesFolder.isDirectory()); //Something has gone horribly wrong with the path! Array<File> files; languagesFolder.findChildFiles (files, File::findFiles, false, "*.txt"); jassert (files.size() >= 3); //Missing default files! for (const auto& f : files) { const LocalisedStrings ls (f, true); languageFiles.add (new TranslationFile (f, ls.getLanguageName().trim())); } }
//------------------------------------------------------------------------------ void MiscPreferences::buttonClicked(Button *button) { TwindyProperty tempProp; TwindyApp *app = static_cast<TwindyApp *>(JUCEApplication::getInstance()); TwindyRootWindow *root = app->getRootWindow(); TwindyProperties *prop = root->getProperties(); if(button == includeSeconds) { tempProp.name = T("ClockIncludeSeconds"); if(button->getToggleState()) { tempProp.value = T("TRUE"); root->getClock()->setIncludeSeconds(true); } else { tempProp.value = T("FALSE"); root->getClock()->setIncludeSeconds(false); } prop->setProperty(T("ClockIncludeSeconds"), tempProp); } else if(button == use24HourClock) { tempProp.name = T("ClockUse24HourClock"); if(button->getToggleState()) { tempProp.value = T("TRUE"); root->getClock()->setUse24HourClock(true); } else { tempProp.value = T("FALSE"); root->getClock()->setUse24HourClock(false); } prop->setProperty(T("ClockUse24HourClock"), tempProp); } else if(button == monthDisplayedFirst) { tempProp.name = T("ClockMonthDisplayedFirst"); if(button->getToggleState()) { tempProp.value = T("TRUE"); root->getClock()->setMonthDisplayedFirst(true); } else { tempProp.value = T("FALSE"); root->getClock()->setMonthDisplayedFirst(false); } prop->setProperty(T("ClockMonthDisplayedFirst"), tempProp); } else if(button == localisationDialog) { FileChooser dlg(TRANS("Open localisation file..."), File::nonexistent, String::empty, false); if(dlg.browseForFileToOpen()) { LocalisedStrings *tempStrings = new LocalisedStrings(dlg.getResult()); localisationFile->setText(dlg.getResult().getFullPathName()); LocalisedStrings::setCurrentMappings(tempStrings); saveChanges(); cout << " loc: Setting text to " << (const char *)dlg.getResult().getFullPathName() << endl; cout << " loc: language = " << (const char *)tempStrings->getLanguageName() << endl; cout << " loc: current language = " << (const char *)LocalisedStrings::getCurrentMappings()->getLanguageName() << endl; } } root->getClock()->repaint(); }