bool SVGTests::parseMappedAttribute(Attribute* attr) { if (attr->name() == SVGNames::requiredFeaturesAttr) { requiredFeatures()->reset(attr->value()); return true; } else if (attr->name() == SVGNames::requiredExtensionsAttr) { requiredExtensions()->reset(attr->value()); return true; } else if (attr->name() == SVGNames::systemLanguageAttr) { systemLanguage()->reset(attr->value()); return true; } return false; }
/*! Return a bunch of related languages. For example: en_US, en. */ QStringList DesktopSettings::languages() { static bool firstTime = true; if ( firstTime ) { firstTime = false; TRACE(I18N) << "DesktopSettings::languages"; DesktopSettings settings("settings"); QString i18dir = mInstalledDir + "i18n/"; QString lang = settings.value( "language" ).toString(); LOG() << "from the settings" << lang; if (lang.isEmpty()) { lang = systemLanguage(); LOG() << "from the system" << lang; } int i = lang.indexOf("."); if ( i > 0 ) { lang = lang.left( i ); LOG() << "without a dot" << lang; } mLanguages << lang; i = lang.indexOf( "_" ); if ( i > 0 ) { lang = lang.left(i); LOG() << "without an underscore" << lang; mLanguages << lang; } if ( mLanguages.count() == 0 ) { LOG() << "falling back to en"; mLanguages << "en_US" << "en"; } } return mLanguages; }