void EnabledModuleList::addModule (const File& moduleManifestFile, bool copyLocally) { ModuleDescription info (moduleManifestFile); if (info.isValid()) { const String moduleID (info.getID()); if (! isModuleEnabled (moduleID)) { ValueTree module (Ids::MODULES); module.setProperty (Ids::ID, moduleID, nullptr); state.addChild (module, -1, getUndoManager()); sortAlphabetically(); shouldShowAllModuleFilesInProject (moduleID) = true; shouldCopyModuleFilesLocally (moduleID) = copyLocally; RelativePath path (moduleManifestFile.getParentDirectory().getParentDirectory(), project.getProjectFolder(), RelativePath::projectFolder); for (Project::ExporterIterator exporter (project); exporter.next();) exporter->getPathForModuleValue (moduleID) = path.toUnixStyle(); } } }
StringArray EnabledModuleList::getExtraDependenciesNeeded (const String& moduleID) const { StringArray dependencies, extraDepsNeeded; getDependencies (project, moduleID, dependencies); for (int i = 0; i < dependencies.size(); ++i) if ((! isModuleEnabled (dependencies[i])) && dependencies[i] != moduleID) extraDepsNeeded.add (dependencies[i]); return extraDepsNeeded; }
StringArray EnabledModuleList::getExtraDependenciesNeeded (const String& moduleID) const { StringArray dependencies, extraDepsNeeded; getDependencies (project, moduleID, dependencies); for (auto dep : dependencies) if (dep != moduleID && ! isModuleEnabled (dep)) extraDepsNeeded.add (dep); return extraDepsNeeded; }
void Project::addModule (const String& moduleID, bool shouldCopyFilesLocally) { if (! isModuleEnabled (moduleID)) { ValueTree module (Tags::module); module.setProperty (Ids::ID, moduleID, nullptr); ValueTree modules (getModulesNode()); modules.addChild (module, -1, getUndoManagerFor (modules)); shouldShowAllModuleFilesInProject (moduleID) = true; } if (shouldCopyFilesLocally) shouldCopyModuleFilesLocally (moduleID) = true; }
void EnabledModuleList::addModuleOfferingToCopy (const File& f) { ModuleDescription m (f); if (! m.isValid()) { AlertWindow::showMessageBoxAsync (AlertWindow::InfoIcon, "Add Module", "This wasn't a valid module folder!"); return; } if (isModuleEnabled (m.getID())) { AlertWindow::showMessageBoxAsync (AlertWindow::InfoIcon, "Add Module", "The project already contains this module!"); return; } addModule (m.moduleFolder, areMostModulesCopiedLocally()); }
void Project::createRequiredModules (const ModuleList& availableModules, OwnedArray<LibraryModule>& modules) const { for (int i = 0; i < availableModules.modules.size(); ++i) if (isModuleEnabled (availableModules.modules.getUnchecked(i)->uid)) modules.add (availableModules.modules.getUnchecked(i)->create()); }
bool Project::isAudioPluginModuleMissing() const { return getProjectType().isAudioPlugin() && ! isModuleEnabled ("juce_audio_plugin_client"); }