QStringList pluginPaths() { QStringList paths; #ifndef DEVELOPER_MODE const QString qcaPluginPath = qgetenv("QCA_PLUGIN_PATH"); if (!qcaPluginPath.isEmpty()) { #ifdef Q_OS_WIN QLatin1Char pathSep(';'); #else QLatin1Char pathSep(':'); #endif foreach (const QString &path, qcaPluginPath.split(pathSep)) { QString canonicalPath = QDir(path).canonicalPath(); if (!canonicalPath.isEmpty()) paths << canonicalPath; } }
void QFileSelectorPrivate::updateSelectors() { if (!sharedData->staticSelectors.isEmpty()) return; //Already loaded QLatin1Char pathSep(','); QStringList envSelectors = QString::fromLatin1(qgetenv("QT_FILE_SELECTORS")) .split(pathSep, QString::SkipEmptyParts); if (envSelectors.count()) sharedData->staticSelectors << envSelectors; if (!qEnvironmentVariableIsEmpty(env_override)) return; sharedData->staticSelectors << sharedData->preloadedStatics; //Potential for static selectors from other modules // TODO: Update on locale changed? sharedData->staticSelectors << QLocale().name(); sharedData->staticSelectors << platformSelectors(); }
bool osgDoInit(OSG::Int32, OSG::Char8 **, OSG::UInt16 major, OSG::UInt16 minor, OSG::UInt16 release, bool debug, bool dll, bool mt) { CompileConfig prog(major, minor, release, debug, dll, mt); CompileConfig lib (OSG_MAJOR_VERSION, OSG_MINOR_VERSION, OSG_RELEASE_VERSION, OSG_INIT_DEBUG, OSG_INIT_DLL, OSG_INIT_MT); if(lib.compare(prog)) { exit(1); } #ifdef WIN32 // Very crude way to safeguard on low level cast, have to find a better // way later. OSG_ASSERT(sizeof(UInt32) == sizeof(long)); #endif bool returnValue = true; if(GlobalSystemState != Startup) { FFATAL(("osgInit: System was already initialized; repeated calls are " "NOT allowed.\n")); returnValue = false; } if(returnValue == false) return returnValue; returnValue = SharedObjectHandler::the()->initialize(); if(osgPreloadSharedObject != NULL) { for(UInt32 i = 0; i < osgPreloadSharedObject->size(); ++i) { SharedObjectHandler::the()->getOSGSharedObject( (*osgPreloadSharedObject)[i].c_str()); } } #ifdef WIN32 std::string pathSep(";"); #else std::string pathSep(":"); #endif char *szEnvLibs = getenv("OSG_LOAD_LIBS"); if(szEnvLibs != NULL) { std::string tmpString(szEnvLibs); string_token_iterator libIt(tmpString, pathSep.c_str()); string_token_iterator libEnd; while(libIt != libEnd) { SharedObjectHandler::the()->getOSGSharedObject( (*libIt).c_str()); ++libIt; } } const char *szEnvPlugins = getenv("OSG_PLUGIN_PATH"); const char *szEnvPluginPattern = getenv("OSG_PLUGIN_PATTERN"); //SharedObjectHandler::the()->dump(); if(szEnvPlugins != NULL) { if(szEnvPluginPattern == NULL) { szEnvPluginPattern = PluginPattern; } fprintf(stderr, "Get Plugins %s from %s\n", szEnvPluginPattern, szEnvPlugins); std::vector<Char8 *> *pPlugins = Directory::getEntries(szEnvPlugins, szEnvPluginPattern); if(pPlugins != NULL) { std::string szPluginName; for(UInt32 i = 0; i < pPlugins->size(); ++i) { if((*pPlugins)[i][0] == '.') { if((*pPlugins)[i][1] == '\0') { continue; } else if((*pPlugins)[i][1] == '.' && (*pPlugins)[i][2] == '\0') { continue; } } szPluginName.assign(szEnvPlugins); szPluginName += '/'; szPluginName += (*pPlugins)[i]; fprintf(stderr, "plugin : %s\n", szPluginName.c_str()); SharedObjectHandler::the()->getSharedObject( szPluginName.c_str()); } } delete pPlugins; } if(osgLibraryVersions != NULL) { FNOTICE(("osgInit: Main Version : %s\n", OSG_VERSION_STRING)); for(LibVersionMap::const_iterator LibMapItor(osgLibraryVersions->begin()); LibMapItor != osgLibraryVersions->end(); ++LibMapItor) { FNOTICE(("osgInit: %-30s: %-10s Rev: %s\n", LibMapItor->first.c_str(), LibMapItor->second.first.c_str(), LibMapItor->second.second.c_str())); } } //SharedObjectHandler::the()->dump(); if(returnValue == false) return returnValue; // without it floats could be written as "1,456" ... setlocale(LC_NUMERIC, "English"); if(osgPreMPInitFunctions != NULL) { for(UInt32 i = 0; i < osgPreMPInitFunctions->size(); i++) { returnValue &= (*osgPreMPInitFunctions)[i](); if(returnValue == false) break; } osgPreMPInitFunctions->clear(); } if(returnValue == false) return returnValue; returnValue &= ThreadManager::initialize(); if(returnValue == false) return returnValue; if(osgPreFactoryInitFunctions != NULL) { for(UInt32 i = 0; i < osgPreFactoryInitFunctions->size(); i++) { returnValue &= (*osgPreFactoryInitFunctions)[i](); if(returnValue == false) break; } osgPreFactoryInitFunctions->clear(); } if(returnValue == false) return returnValue; returnValue &= FactoryController::the()->initialize(); if(returnValue == false) return returnValue; if(osgPostFactoryInitFunctions != NULL) { for(UInt32 i = 0; i < osgPostFactoryInitFunctions->size(); i++) { returnValue &= (*osgPostFactoryInitFunctions)[i](); if(returnValue == false) break; } osgPostFactoryInitFunctions->clear(); } GlobalSystemState = Running; osgLog().setLogLevel(OSG_DEFAULT_LOG_LEVEL); return returnValue; }