bool SheetMusicConverter::convert(const std::string &name, const SheetMusic &sheet) { output.open(name.c_str(), ios::out | ios::trunc); // MusicXML header output << "<?xml version=\"1.0\" encoding=\"UTF-8\" standalone=\"no\"?>"; output << std::endl; output << "<!DOCTYPE score-partwise PUBLIC" << std::endl; output << "\"-//Recordare//DTD MusicXML 3.0 Partwise//EN\"" << std::endl; output << "\"http://www.musicxml.org/dtds/partwise.dtd\">" << std::endl; // Sheet music format open("score-partwise", "version=\"3.0\""); open("part-list"); open("score-part", "id=\"P1\""); print("part-name", ""); close(); close(); open("part", "id=\"P1\""); std::vector<Measure> measures = sheet.getAllMeasures(); for (unsigned int i = 0; i < measures.size(); i++) { addMeasure(); std::vector<Note> notes = measures[i].getAllNotes(); for (unsigned int j = 0; j < notes.size(); j++) { addNote(notes[j].getPitch(), notes[j].getstart(), notes[j].getDuration(), measures[i].getBeat()); } close(); } while (tags.size() > 0) close(); output.close(); return true; }
LocalLibraryController::LocalLibraryController(BaseApp *t_app) : QObject(), m_app(t_app) { LOG(Debug, "Creating LocalLibraryController with base app " << t_app); QDomDocument doc("taxonomy"); QFile file(":/shared_gui_components/taxonomy.xml"); file.open(QIODevice::ReadOnly); doc.setContent(&file); file.close(); QSharedPointer<LibraryTypeListController> userLibraryListController = createLibraryListController(doc,LocalLibrary::USER); userLibraryView = new OSListView(true); userLibraryView->setContentsMargins(0,0,0,0); userLibraryView->setSpacing(0); userLibraryView->setDelegate(QSharedPointer<LibraryTypeItemDelegate>(new LibraryTypeItemDelegate(m_app))); userLibraryView->setListController(userLibraryListController); QSharedPointer<LibraryTypeListController> bclLibraryListController = createLibraryListController(doc,LocalLibrary::BCL); bclLibraryView = new OSListView(true); bclLibraryView->setContentsMargins(0,0,0,0); bclLibraryView->setSpacing(0); bclLibraryView->setDelegate(QSharedPointer<LibraryTypeItemDelegate>(new LibraryTypeItemDelegate(m_app))); bclLibraryView->setListController(bclLibraryListController); QString organizationName = QCoreApplication::organizationName(); QString applicationName = QCoreApplication::applicationName(); QSettings m_settings(organizationName, applicationName); localLibraryView = new LocalLibraryView(); if (m_settings.value("library_view", "bcl") == "user"){ showMyMeasures(true); }else{ showBCLMeasures(true); } bool bingo = connect(localLibraryView->bclMeasuresButton,SIGNAL(toggled(bool)),this,SLOT(showBCLMeasures(bool))); Q_ASSERT(bingo); bingo = connect(localLibraryView->myMeasuresButton,SIGNAL(toggled(bool)),this,SLOT(showMyMeasures(bool))); Q_ASSERT(bingo); bingo = connect(localLibraryView->addMeasureButton,SIGNAL(clicked()), this,SLOT(addMeasure())); Q_ASSERT(bingo); bingo = connect(localLibraryView->duplicateMeasureButton,SIGNAL(clicked()),this,SLOT(duplicateSelectedMeasure())); Q_ASSERT(bingo); bingo = connect(localLibraryView->myMeasuresFolderButton,SIGNAL(clicked()),this,SLOT(showMyMeasuresFolder())); Q_ASSERT(bingo); bingo = connect(localLibraryView->updateMyMeasuresButton,SIGNAL(clicked()), this,SLOT(updateMyMeasures())); Q_ASSERT(bingo); bingo = connect(localLibraryView->updateBCLMeasuresButton,SIGNAL(clicked()), this,SLOT(updateBCLMeasures())); Q_ASSERT(bingo); bingo = connect(localLibraryView->addBCLMeasureButton,SIGNAL(clicked()), this,SLOT(openBclDlg())); Q_ASSERT(bingo); }