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()));
    }
}
Esempio n. 2
0
//------------------------------------------------------------------------------
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();
}