/** * Instantiate StApplication. */ ST_LOCAL virtual void createApplication() override { StMutexAuto aLock(myFetchLock); const StString aFileExtension = StFileNode::getExtension(myCreatePath); StHandle<StOpenInfo> anInfo = new StOpenInfo(); anInfo->setPath(myDndPath); myDndPath.clear(); StHandle<StResourceManager> aResMgr = new StResourceManager(myActivity->assetManager); //StHandle<StResourceManager> aResMgr = new StResourceManager(myActivity->assetManager"com.sview.cad"); aResMgr->setFolder(StResourceManager::FolderId_SdCard, getStoragePath(myThJniEnv, "sdcard")); aResMgr->setFolder(StResourceManager::FolderId_Downloads, getStoragePath(myThJniEnv, "Download")); aResMgr->setFolder(StResourceManager::FolderId_Pictures, getStoragePath(myThJniEnv, "Pictures")); aResMgr->setFolder(StResourceManager::FolderId_Photos, getStoragePath(myThJniEnv, "DCIM")); StString anOcctResFolder = aResMgr->getUserDataFolder(); copyResource(aResMgr, "lang", anOcctResFolder, "IGES.us"); copyResource(aResMgr, "lang", anOcctResFolder, "IGES.fr"); copyResource(aResMgr, "lang", anOcctResFolder, "SHAPE.us"); copyResource(aResMgr, "lang", anOcctResFolder, "SHAPE.fr"); copyResource(aResMgr, "lang", anOcctResFolder, "XSTEP.us"); copyResource(aResMgr, "lang", anOcctResFolder, "XSTEP.fr"); copyResource(aResMgr, "lang", anOcctResFolder, "TObj.msg"); copyResource(aResMgr, "res", anOcctResFolder, "Units.dat"); copyResource(aResMgr, "res", anOcctResFolder, "Lexi_Expr.dat"); copyResource(aResMgr, "res", anOcctResFolder, "IGES"); copyResource(aResMgr, "res", anOcctResFolder, "STEP"); //copyResource(aResMgr, "res", anOcctResFolder, "TObj"); //copyResource(aResMgr, "res", anOcctResFolder, "XCAF"); //copyResource(aResMgr, "res", anOcctResFolder, "Plugin"); //copyResource(aResMgr, "res", anOcctResFolder, "Standard"); //copyResource(aResMgr, "res", anOcctResFolder, "StandardLite"); copyResource(aResMgr, "shaders/occt", anOcctResFolder, "Declarations.glsl"); copyResource(aResMgr, "shaders/occt", anOcctResFolder, "DeclarationsImpl.glsl"); StProcess::setEnv("CSF_UnitsLexicon", anOcctResFolder + "/Lexi_Expr.dat"); StProcess::setEnv("CSF_UnitsDefinition", anOcctResFolder + "/Units.dat"); StProcess::setEnv("CSF_ShadersDirectory", anOcctResFolder); StProcess::setEnv("CSF_SHMessage", anOcctResFolder); if(myStAppClass.isEmpty()) { myStAppClass = "cad"; } if(anInfo->isEmpty()) { // open recent file by default StArgumentsMap anArgs = anInfo->getArgumentsMap(); anArgs.set(StDictEntry("last", "true")); anArgs.set(StDictEntry("toSaveRecent","true")); anInfo->setArgumentsMap(anArgs); } myApp = new StCADViewer(aResMgr, this, anInfo); }