From: werner s. <wsc...@us...> - 2004-09-14 20:15:10
|
Update of /cvsroot/lmuse/muse/muse In directory sc8-pr-cvs1.sourceforge.net:/tmp/cvs-serv9902 Modified Files: audiotrack.cpp plugin.cpp sig.cpp songfile.cpp tempo.cpp Log Message: dom read fixes Index: audiotrack.cpp =================================================================== RCS file: /cvsroot/lmuse/muse/muse/audiotrack.cpp,v retrieving revision 1.20 retrieving revision 1.21 diff -C2 -d -r1.20 -r1.21 *** audiotrack.cpp 14 Sep 2004 18:17:22 -0000 1.20 --- audiotrack.cpp 14 Sep 2004 20:15:00 -0000 1.21 *************** *** 243,247 **** if (tag == "plugin") { PluginI* pi = new PluginI; ! if (pi->readConfiguration(node.firstChild(), false)) { delete pi; } --- 243,247 ---- if (tag == "plugin") { PluginI* pi = new PluginI; ! if (pi->readConfiguration(node, false)) { delete pi; } Index: songfile.cpp =================================================================== RCS file: /cvsroot/lmuse/muse/muse/songfile.cpp,v retrieving revision 1.31 retrieving revision 1.32 diff -C2 -d -r1.31 -r1.32 *** songfile.cpp 14 Sep 2004 18:17:23 -0000 1.31 --- songfile.cpp 14 Sep 2004 20:15:00 -0000 1.32 *************** *** 396,400 **** _showSyntiTracks = e.text().toInt(); else if (e.tagName() == "tempolist") ! tempomap.read(node.firstChild()); else if (e.tagName() == "siglist") sigmap.read(node.firstChild()); --- 396,400 ---- _showSyntiTracks = e.text().toInt(); else if (e.tagName() == "tempolist") ! tempomap.read(node); else if (e.tagName() == "siglist") sigmap.read(node.firstChild()); Index: tempo.cpp =================================================================== RCS file: /cvsroot/lmuse/muse/muse/tempo.cpp,v retrieving revision 1.8 retrieving revision 1.9 diff -C2 -d -r1.8 -r1.9 *** tempo.cpp 14 Sep 2004 18:17:24 -0000 1.8 --- tempo.cpp 14 Sep 2004 20:15:00 -0000 1.9 *************** *** 315,357 **** //--------------------------------------------------------- ! void TempoList::read(QDomNode) { ! #if 0 ! for (;;) { ! Xml::Token token = xml.parse(); ! const QString& tag = xml.s1(); ! switch (token) { ! case Xml::Error: ! case Xml::End: ! return; ! case Xml::TagStart: ! if (tag == "tempo") { ! TEvent* t = new TEvent(); ! unsigned tick = t->read(xml); ! iTEvent pos = find(tick); ! if (pos != end()) ! erase(pos); ! insert(std::pair<const int, TEvent*> (tick, t)); ! } ! else if (tag == "globalTempo") ! _globalTempo = xml.parseInt(); ! else ! xml.unknown("TempoList"); ! break; ! case Xml::Attribut: ! if (tag == "fix") ! _tempo = xml.s2().toInt(); ! break; ! case Xml::TagEnd: ! if (tag == "tempolist") { ! normalize(); ! ++_tempoSN; ! return; ! } ! default: ! break; } } ! #endif } --- 315,342 ---- //--------------------------------------------------------- ! void TempoList::read(QDomNode node) { ! QDomElement e = node.toElement(); ! _tempo = e.attribute("fix","500000").toInt(); ! ! node = node.firstChild(); ! while (!node.isNull()) { ! e = node.toElement(); ! if (e.tagName() == "tempo") { ! TEvent* t = new TEvent(); ! unsigned tick = t->read(node); ! iTEvent pos = find(tick); ! if (pos != end()) ! erase(pos); ! insert(std::pair<const int, TEvent*> (tick, t)); } + else if (e.tagName() == "globalTempo") + _globalTempo = e.text().toInt(); + else + printf("MusE:Tempolist: unknown tag %s\n", e.tagName().latin1()); + node = node.nextSibling(); } ! normalize(); ! ++_tempoSN; } *************** *** 372,409 **** //--------------------------------------------------------- ! int TEvent::read(QDomNode) { ! #if 0 ! int at = 0; ! for (;;) { ! Xml::Token token = xml.parse(); ! const QString& tag = xml.s1(); ! switch (token) { ! case Xml::Error: ! case Xml::End: ! return 0; ! case Xml::TagStart: ! if (tag == "tick") ! tick = xml.parseInt(); ! else if (tag == "val") ! tempo = xml.parseInt(); ! else ! xml.unknown("TEvent"); ! break; ! case Xml::Attribut: ! if (tag == "at") ! at = xml.s2().toInt(); ! break; ! case Xml::TagEnd: ! if (tag == "tempo") { ! return at; ! } ! default: ! break; ! } } ! #endif ! return 0; } - --- 357,377 ---- //--------------------------------------------------------- ! int TEvent::read(QDomNode node) { ! QDomElement e = node.toElement(); ! int at = e.attribute("at","0").toInt(); ! ! node = node.firstChild(); ! while (!node.isNull()) { ! e = node.toElement(); ! if (e.tagName() == "tick") ! tick = e.text().toInt(); ! else if (e.tagName() == "val") ! tempo = e.text().toInt(); ! else ! printf("MusE:TEvent: unknown tag %s\n", e.tagName().latin1()); ! node = node.nextSibling(); } ! return at; } Index: plugin.cpp =================================================================== RCS file: /cvsroot/lmuse/muse/muse/plugin.cpp,v retrieving revision 1.32 retrieving revision 1.33 diff -C2 -d -r1.32 -r1.33 *** plugin.cpp 14 Sep 2004 18:17:23 -0000 1.32 --- plugin.cpp 14 Sep 2004 20:15:00 -0000 1.33 *************** *** 739,742 **** --- 739,743 ---- } + node = node.firstChild(); while (!node.isNull()) { if (!readPreset && _plugin == 0) { *************** *** 749,753 **** e = node.toElement(); if (e.tagName() == "control") ! loadControl(node.firstChild()); else if (e.tagName() == "on") { bool flag = e.text().toInt(); --- 750,754 ---- e = node.toElement(); if (e.tagName() == "control") ! loadControl(node); else if (e.tagName() == "on") { bool flag = e.text().toInt(); Index: sig.cpp =================================================================== RCS file: /cvsroot/lmuse/muse/muse/sig.cpp,v retrieving revision 1.6 retrieving revision 1.7 diff -C2 -d -r1.6 -r1.7 *** sig.cpp 14 Sep 2004 18:17:23 -0000 1.6 --- sig.cpp 14 Sep 2004 20:15:00 -0000 1.7 *************** *** 351,355 **** if (e.tagName() == "sig") { SigEvent* t = new SigEvent(); ! unsigned tick = t->read(node.firstChild()); iSigEvent pos = find(tick); if (pos != end()) --- 351,355 ---- if (e.tagName() == "sig") { SigEvent* t = new SigEvent(); ! unsigned tick = t->read(node); iSigEvent pos = find(tick); if (pos != end()) *************** *** 384,391 **** QDomElement e = node.toElement(); int at = e.attribute("at", "0").toInt(); while (!node.isNull()) { QDomElement e = node.toElement(); if (e.tagName() == "tick") ! tick = e.text().toInt(); else if (e.tagName() == "nom") z = e.text().toInt(); --- 384,393 ---- QDomElement e = node.toElement(); int at = e.attribute("at", "0").toInt(); + node = node.firstChild(); + while (!node.isNull()) { QDomElement e = node.toElement(); if (e.tagName() == "tick") ! tick = e.text().toInt(); else if (e.tagName() == "nom") z = e.text().toInt(); |