//------------------------------------------------------------------------------ void StupidWindow::loadKeyMappings() { int i; OscMappingManager *oscManager = mainPanel->getOscMappingManager(); MidiMappingManager *midiManager = mainPanel->getMidiMappingManager(); File mappingsFile = JuceHelperStuff::getAppDataFolder().getChildFile("AppMappings.xml"); if(mappingsFile.existsAsFile()) { ScopedPointer<XmlElement> rootXml(XmlDocument::parse(mappingsFile)); if(rootXml) { XmlElement *keyMappings = rootXml->getChildByName("KEYMAPPINGS"); XmlElement *midiMappings = rootXml->getChildByName("MidiMappings"); XmlElement *oscMappings = rootXml->getChildByName("OscMappings"); if(keyMappings) commandManager.getKeyMappings()->restoreFromXml(*keyMappings); if(midiMappings) { for(i=0;i<midiMappings->getNumChildElements();++i) { XmlElement *tempEl = midiMappings->getChildElement(i); if(tempEl->hasTagName("MidiAppMapping")) { MidiAppMapping *newMapping = new MidiAppMapping(midiManager, tempEl); midiManager->registerAppMapping(newMapping); } } } if(oscMappings) { for(i=0;i<oscMappings->getNumChildElements();++i) { XmlElement *tempEl = oscMappings->getChildElement(i); if(tempEl->hasTagName("OscAppMapping")) { OscAppMapping *newMapping = new OscAppMapping(oscManager, tempEl); oscManager->registerAppMapping(newMapping); } } } } } }
void CDPlayer::restoreFromXml(const XmlElement& element, const File& /*projectDirectory*/) { setColor(Colour::fromString(element.getStringAttribute("color", "0xffffffff"))); repaint(); XmlElement* boundsXml = element.getChildByName("Bounds"); if (boundsXml) { String x = boundsXml->getStringAttribute("x", "0"); String y = boundsXml->getStringAttribute("y", "0"); String width = boundsXml->getStringAttribute("width", "150"); String height = boundsXml->getStringAttribute("height", "150"); getParentComponent()->setBounds(x.getIntValue(), y.getIntValue(), width.getIntValue(), height.getIntValue()); } else { XmlElement* mdiDocumentPosXml = element.getChildByName("MdiDocumentPos"); if (mdiDocumentPosXml->getNumChildElements() > 0 && mdiDocumentPosXml->getFirstChildElement()->isTextElement()) { getProperties().set("mdiDocumentPos_", mdiDocumentPosXml->getFirstChildElement()->getText()); } } XmlElement* nameXml = element.getChildByName("Name"); setName(nameXml->getAllSubText().trim()); XmlElement* driveXml = element.getChildByName("Drive"); m_availableCDsComboBox.selectDrive(driveXml->getAllSubText().trim()); }
bool pspRoomConfigGUI::loadXmlRoomConfig(File xmlFile){ XmlDocument myDocument (xmlFile); XmlElement* mainElement = myDocument.getDocumentElement(); if (mainElement == nullptr) { AlertWindow::showMessageBoxAsync (AlertWindow::WarningIcon, "error loading room config xml file !", "", "OK"); delete mainElement; return false; } else{ if(!mainElement->hasTagName("RoomConfig")){ AlertWindow::showMessageBoxAsync (AlertWindow::WarningIcon, "xml file doesn't contain room config data", "", "OK"); delete mainElement; return false; } else{ XmlElement* roomSize = mainElement->getChildByName("roomSize"); if(roomSize){ static_cast<roomConfigSlider*>(roomDimensions[0])->setValue(roomSize->getDoubleAttribute("width")); } XmlElement* speakers = mainElement->getChildByName("speakers"); if(speakers != nullptr){ int ns = speakers->getNumChildElements(); setNumSpeakers(ns); nss->setValue(ns); cout<<endl<<speakersPosition.size(); /* for(int i=0; i<ns; i++){ static_cast<speakerPositionSlider*>(speakersPosition[3*i+0])->setValue(speakers->getChildElement(i)->getDoubleAttribute("x")); static_cast<speakerPositionSlider*>(speakersPosition[3*i+1])->setValue(speakers->getChildElement(i)->getDoubleAttribute("y")); static_cast<speakerPositionSlider*>(speakersPosition[3*i+2])->setValue(speakers->getChildElement(i)->getDoubleAttribute("z")); } */ } //delete speakers; } } delete mainElement; return true; }
void toXml (XmlElement & node) { node.addChildElement (new XmlElement ("Media")); node.getChildElement (node.getNumChildElements()-1)->setAttribute ("path", filePath); node.getChildElement (node.getNumChildElements()-1)->setAttribute ("duration", duration); }