#include "tonleiterdata.h" #include TonleiterData::TonleiterData(QObject* parent) :QObject(parent) { drawnames=true; loadData(); } //**************************************************************************** TonleiterData::~TonleiterData() { saveData(); } //**************************************************************************** void TonleiterData::setCurrentInstrumetID(int id) { if(id>=0 && id=0 && id=0 && id<12) { currentNote=id; emit dataChange(); } } //**************************************************************************** void TonleiterData::setDrawNames(bool dn) { drawnames=dn; emit dataChange(); } //**************************************************************************** void TonleiterData::loadData() { /* QValueList strings1; strings1.append(Note::getNoteFromName("B",0)); strings1.append(Note::getNoteFromName("E",1)); strings1.append(Note::getNoteFromName("A",1)); strings1.append(Note::getNoteFromName("D",2)); strings1.append(Note::getNoteFromName("G",2)); strings1.append(Note::getNoteFromName("C",3)); instruments.append(Instrument("Thumb6",26,strings1)); QValueList strings2; strings2.append(Note::getNoteFromName("E",1)); strings2.append(Note::getNoteFromName("A",1)); strings2.append(Note::getNoteFromName("D",2)); strings2.append(Note::getNoteFromName("G",2)); instruments.append(Instrument("Bass 4",12,strings2)); currentInstrumentID=1; QValueList scale1; scale1.append(0); scale1.append(2); scale1.append(3); scale1.append(5); scale1.append(7); scale1.append(8); scale1.append(10); scales.append(Scale("Minor",scale1)); QValueList scale2; scale2.append(0); scale2.append(2); scale2.append(4); scale2.append(5); scale2.append(7); scale2.append(9); scale2.append(10); scales.append(Scale("Major",scale2)); currentScaleID=0; currentNote=Note::getNoteFromName("A",0); */ Config load("Tonleiter"); load.setGroup("General"); currentNote=load.readNumEntry("currentNote"); drawnames=load.readBoolEntry("drawnames"); currentInstrumentID=load.readNumEntry("currentInstrumentID"); currentScaleID=load.readNumEntry("currentScaleID"); load.setGroup("Instrument"); int noOfInstr=load.readNumEntry("noOfInstruments",0); for(int i=0;i strings; for(int st=2;st<(int)instlist.count();st++) strings.append(instlist[st].toInt()); instruments.append(Instrument(instlist[0],instlist[1].toInt(),strings)); } load.setGroup("Scale"); int scaleno=load.readNumEntry("noOfScales",0); for(int s=0;s halftones; for(int ht=1;ht<(int)scalelist.count();ht++) halftones.append(scalelist[ht].toInt()); scales.append(Scale(scalelist[0],halftones)); } } //**************************************************************************** void TonleiterData::saveData() { Config save("Tonleiter"); save.setGroup("General"); save.writeEntry("currentNote",currentNote); save.writeEntry("drawnames",drawnames); save.writeEntry("currentInstrumentID",currentInstrumentID); save.writeEntry("currentScaleID",currentScaleID); save.setGroup("Instrument"); save.writeEntry("noOfInstruments",noOfInstruments()); for(int i=0;i=0 && id=0 && id