void Workspace::read() { if (_path == "Advanced") { mscore->setAdvancedPalette(); for (Palette* p : mscore->getPaletteBox()->palettes()) p->setSystemPalette(true); mscore->setNoteInputMenuEntries(MuseScore::advancedNoteInputMenuEntries()); mscore->populateNoteInputMenu(); return; } if (_path == "Basic") { mscore->setBasicPalette(); for (Palette* p : mscore->getPaletteBox()->palettes()) p->setSystemPalette(true); mscore->setNoteInputMenuEntries(MuseScore::basicNoteInputMenuEntries()); mscore->populateNoteInputMenu(); return; } if (_path.isEmpty() || !QFile(_path).exists()) { qDebug("cannot read workspace <%s>", qPrintable(_path)); mscore->setAdvancedPalette(); // set default palette return; } QFileInfo fi(_path); _readOnly = !fi.isWritable(); MQZipReader f(_path); QList<QString> images; QString rootfile = readRootFile(&f, images); // // load images // for (const QString& s : images) imageStore.add(s, f.fileData(s)); if (rootfile.isEmpty()) { qDebug("can't find rootfile in: %s", qPrintable(_path)); return; } QByteArray ba = f.fileData(rootfile); XmlReader e(ba); while (e.readNextStartElement()) { if (e.name() == "museScore") { while (e.readNextStartElement()) { if (e.name() == "Workspace") read(e); else e.unknown(); } } } }
Score::FileError MasterScore::loadCompressedMsc(QIODevice* io, bool ignoreVersionError) { MQZipReader uz(io); QList<QString> sl; QString rootfile = readRootFile(&uz, sl); if (rootfile.isEmpty()) return FileError::FILE_NO_ROOTFILE; // // load images // if (!MScore::noImages) { foreach(const QString& s, sl) { QByteArray dbuf = uz.fileData(s); imageStore.add(s, dbuf); }
void Workspace::read() { saveToolbars = saveMenuBar = saveComponents = false; preferences.setUseLocalPreferences(false); if (_path.isEmpty() || !QFile(_path).exists()) { qDebug("cannot read workspace <%s>", qPrintable(_path)); mscore->setDefaultPalette(); readGlobalMenuBar(); readGlobalToolBar(); readGlobalGUIState(); preferences.updateLocalPreferences(); return; } QFileInfo fi(_path); _readOnly = !fi.isWritable(); MQZipReader f(_path); QList<QString> images; QString rootfile = readRootFile(&f, images); // // load images // for (const QString& s : images) imageStore.add(s, f.fileData(s)); if (rootfile.isEmpty()) { qDebug("can't find rootfile in: %s", qPrintable(_path)); return; } QByteArray ba = f.fileData(rootfile); XmlReader e(ba); preferences.updateLocalPreferences(); while (e.readNextStartElement()) { if (e.name() == "museScore") { while (e.readNextStartElement()) { if (e.name() == "Workspace") read(e); else e.unknown(); } } } }