AvatarPackager::AvatarPackager() { std::call_once(setupQMLTypesFlag, []() { qmlRegisterType<FST>(); qmlRegisterType<MarketplaceItemUploader>(); qRegisterMetaType<AvatarPackager*>(); qRegisterMetaType<AvatarProject*>(); qRegisterMetaType<AvatarDoctor*>(); qRegisterMetaType<AvatarProjectStatus::AvatarProjectStatus>(); qmlRegisterUncreatableMetaObject( AvatarProjectStatus::staticMetaObject, "Hifi.AvatarPackager.AvatarProjectStatus", 1, 0, "AvatarProjectStatus", "Error: only enums" ); }); recentProjectsFromVariantList(_recentProjectsSetting.get()); QDir defaultProjectsDir(AvatarProject::getDefaultProjectsPath()); defaultProjectsDir.mkpath("."); }
QQmlEngine* MScore::qml() { if (_qml == 0) { //-----------some qt bindings _qml = new QQmlEngine; #ifdef Q_OS_WIN QStringList importPaths; QDir dir(QCoreApplication::applicationDirPath() + QString("/../qml")); importPaths.append(dir.absolutePath()); _qml->setImportPathList(importPaths); #endif #ifdef Q_OS_MAC QStringList importPaths; QDir dir(mscoreGlobalShare + QString("/qml")); importPaths.append(dir.absolutePath()); _qml->setImportPathList(importPaths); #endif const char* enumErr = "You can't create an enumeration"; //TODO-ws qmlRegisterType<MsProcess> ("MuseScore", 3, 0, "QProcess"); qmlRegisterType<FileIO, 1> ("FileIO", 3, 0, "FileIO"); //-----------mscore bindings qmlRegisterUncreatableMetaObject(Ms::staticMetaObject, "MuseScore", 3, 0, "Ms", enumErr); // qmlRegisterUncreatableType<Direction>("MuseScore", 3, 0, "Direction", QObject::tr(enumErr)); qmlRegisterType<MScore> ("MuseScore", 3, 0, "MScore"); //TODO-ws qmlRegisterType<MsScoreView>("MuseScore", 3, 0, "ScoreView"); qmlRegisterType<Score> ("MuseScore", 3, 0, "Score"); qmlRegisterType<Cursor> ("MuseScore", 3, 0, "Cursor"); qmlRegisterType<ElementW> ("MuseScore", 3, 0, "Element"); qRegisterMetaType<ElementW*>("ElementWrapper*"); #if 0 qmlRegisterType<Segment> ("MuseScore", 1, 0, "Segment"); qmlRegisterType<Chord> ("MuseScore", 1, 0, "Chord"); qmlRegisterType<Note> ("MuseScore", 1, 0, "Note"); qmlRegisterType<NoteHead> ("MuseScore", 1, 0, "NoteHead"); qmlRegisterType<Accidental> ("MuseScore", 1, 0, "Accidental"); qmlRegisterType<Rest> ("MuseScore", 1, 0, "Rest"); qmlRegisterType<Measure> ("MuseScore", 1, 0, "Measure"); qmlRegisterType<StaffText> ("MuseScore", 1, 0, "StaffText"); qmlRegisterType<Part> ("MuseScore", 1, 0, "Part"); qmlRegisterType<Staff> ("MuseScore", 1, 0, "Staff"); qmlRegisterType<Harmony> ("MuseScore", 1, 0, "Harmony"); qmlRegisterType<TimeSig> ("MuseScore", 1, 0, "TimeSig"); qmlRegisterType<KeySig> ("MuseScore", 1, 0, "KeySig"); qmlRegisterType<Slur> ("MuseScore", 1, 0, "Slur"); qmlRegisterType<Tie> ("MuseScore", 1, 0, "Tie"); qmlRegisterType<NoteDot> ("MuseScore", 1, 0, "NoteDot"); qmlRegisterType<FiguredBass>("MuseScore", 1, 0, "FiguredBass"); qmlRegisterType<Text> ("MuseScore", 1, 0, "MText"); qmlRegisterType<Lyrics> ("MuseScore", 1, 0, "Lyrics"); qmlRegisterType<FiguredBassItem>("MuseScore", 1, 0, "FiguredBassItem"); qmlRegisterType<LayoutBreak>("MuseScore", 1, 0, "LayoutBreak"); qmlRegisterType<Hook> ("MuseScore", 1, 0, "Hook"); qmlRegisterType<Stem> ("MuseScore", 1, 0, "Stem"); qmlRegisterType<StemSlash> ("MuseScore", 1, 0, "StemSlash"); qmlRegisterType<Beam> ("MuseScore", 1, 0, "Beam"); qmlRegisterType<Excerpt> ("MuseScore", 1, 0, "Excerpt"); qmlRegisterType<BarLine> ("MuseScore", 1, 0, "BarLine"); //classed enumerations qmlRegisterUncreatableType<MSQE_StyledPropertyListIdx>("MuseScore", 1, 0, "StyledPropertyListIdx", QObject::tr("You can't create an enum")); qmlRegisterUncreatableType<MSQE_BarLineType>("MuseScore", 1, 0, "BarLineType", enumErr); //-----------virtual classes qmlRegisterType<ChordRest>(); qmlRegisterType<SlurTie>(); qmlRegisterType<Spanner>(); #endif qmlRegisterType<FractionWrapper> ("MuseScore", 3, 1, "Fraction"); qRegisterMetaType<FractionWrapper*>("FractionWrapper*"); } return _qml; }