void Environment::xmlConfigure(xmlNode *fNode) { int fEmbeddedSkin = 0; while (fNode) { if (!strcmp((char *) fNode->name, "Menu")) { SubMenuNode *t = new SubMenuNode(); t->xmlConfigure(fNode->children); setTopMenu(t); setCurrentMenu(t); } else if (!strcmp((char *) fNode->name, "Resources")) { Resources *t = new Resources(); t->xmlConfigure(fNode->children); setResources(t); fEmbeddedSkin = 1; } else if (!strcmp((char *) fNode->name, "Elements")) { Elements *t = new Elements(); t->xmlConfigure(fNode->children); setElements(t); fEmbeddedSkin = 1; } else if (!strcmp((char *) fNode->name, "Dialog")) { Generic *t = new Generic(); t->xmlConfigure(fNode->children); setDialog(t); } else if (!strcmp((char *) fNode->name, "LogFile")) { setLogFileName((char *) fNode->children->content); } fNode = fNode->next; } if (fEmbeddedSkin) { mResources->loadResources(); mElements->associateResources(mResources); } }
int Environment::loadSkin(char *fSkinDirectory) { Elements *fOldElements = mElements; Resources *fOldResources = mResources; struct stat sbuf; char buf[255]; sprintf(buf, "%sskin.xml", fSkinDirectory); printf("Loading %s\n", buf); if (stat(buf, &sbuf)) { return 0; } xmlDoc *theDoc = 0; xmlNode *theRoot = 0; theDoc = xmlReadFile(buf, NULL, 0); if (theDoc == NULL) { return 0; } theRoot = xmlDocGetRootElement(theDoc); xmlNode *fNode = theRoot->children; while (fNode) { if (!strcmp((char *) fNode->name, "Resources") && fNode->children) { Resources *t = new Resources(); t->xmlConfigure(fNode->children); setResources(t); } else if (!strcmp((char *) fNode->name, "Elements") && fNode->children) { Elements *t = new Elements(); t->xmlConfigure(fNode->children); setElements(t); } fNode = fNode->next; } if (fOldElements != mElements && fOldElements) { delete fOldElements; } if (fOldResources != mResources && fOldResources) { delete fOldResources; } setSkinPath(fSkinDirectory); debugPrint(" Loading resources\n"); mResources->loadResources(); debugPrint(" Associating resources & elements\n"); mElements->associateResources(mResources); xmlFreeDoc(theDoc); return 1; }
void UpdateModel::activityChanged() { if (m_updates->isProgressing()) return; m_updates->prepare(); setResources(m_updates->toUpdate()); }
/************************************* FUNC: HumSettlers(...) DESC: constructor *************************************/ HumSettlers::HumSettlers(GObjWrapper *wrapper, Sector* sector, int population, int initialStep, int plID): Building(wrapper, sector, initialStep, plID) { m_type = t_HUMAN_SETTLERS; m_wrapper->setType(m_type); m_wrapper->setLevel(m_level, UI_NORMAL); m_wrapper->setEnabled(); regResourse(POPULATION); setResources(POPULATION, population); regResourse(SUPPLY); regResourse(INFROSTRUCTURE); m_maxLevel = HUMAN_MAX_SETTLEMENT_LEVEL; }
void Unit::load(const IDataLoader& loader) { loader.loadValue("unit", mName, "type", &mType); loader.loadValue("unit", mName, "position", &mPosition); loader.loadValue("unit", mName, "scale", &mScale); loader.loadValue("unit", mName, "rotation", &mRotation); Resources res; size_t num_render_jobs = 0; loader.loadValue("unit", mName, "num_render_jobs", &num_render_jobs); for (size_t i=0; i<num_render_jobs; ++i) { std::string material; std::string drawable; loader.loadValue("unit", mName, "drawable_" + std::to_string(i), &drawable); loader.loadValue("unit", mName, "material_" + std::to_string(i), &material); res.drawables.push_back(loader.loadDrawable(drawable)); res.materials.push_back(loader.loadMaterial(material)); } setResources(res); }
void D3D11Program::setResourcesFor(const String& variableName, ID3D11ShaderResourceView* tex) { setResources(mVariableAssigned[variableName], tex); }
void InfoResourceDirectory::RefreshJson() { Clear(); setResources(res_entrys_); }