1
0
Fork 0
mirror of https://github.com/juce-framework/JUCE.git synced 2026-01-11 23:54:18 +00:00

Introjucer: fix for a situation where project groups could get duplicate IDs.

This commit is contained in:
jules 2013-08-05 17:11:26 +01:00
parent 24f5fdea22
commit 53ae95b730
5 changed files with 26 additions and 30 deletions

View file

@ -557,9 +557,9 @@ class MSVCProjectExporterVC2008 : public MSVCProjectExporterBase
{
public:
//==============================================================================
MSVCProjectExporterVC2008 (Project& project_, const ValueTree& settings_,
MSVCProjectExporterVC2008 (Project& p, const ValueTree& s,
const char* folderName = "VisualStudio2008")
: MSVCProjectExporterBase (project_, settings_, folderName)
: MSVCProjectExporterBase (p, s, folderName)
{
name = getName();
}

View file

@ -147,7 +147,7 @@ bool ProjectExporter::canProjectBeLaunched (Project* project)
}
//==============================================================================
ProjectExporter::ProjectExporter (Project& project_, const ValueTree& settings_)
ProjectExporter::ProjectExporter (Project& p, const ValueTree& settings_)
: xcodeIsBundle (false),
xcodeCreatePList (false),
xcodeCanUseDwarf (true),
@ -155,10 +155,10 @@ ProjectExporter::ProjectExporter (Project& project_, const ValueTree& settings_)
msvcIsDLL (false),
msvcIsWindowsSubsystem (true),
settings (settings_),
project (project_),
projectType (project_.getProjectType()),
projectName (project_.getTitle()),
projectFolder (project_.getFile().getParentDirectory()),
project (p),
projectType (p.getProjectType()),
projectName (p.getTitle()),
projectFolder (p.getFile().getParentDirectory()),
modulesGroup (nullptr)
{
}
@ -484,8 +484,8 @@ bool ProjectExporter::ConstConfigIterator::next()
}
//==============================================================================
ProjectExporter::BuildConfiguration::BuildConfiguration (Project& project_, const ValueTree& configNode)
: config (configNode), project (project_)
ProjectExporter::BuildConfiguration::BuildConfiguration (Project& p, const ValueTree& configNode)
: config (configNode), project (p)
{
}

View file

@ -30,8 +30,8 @@ static const char* resourceFileIdentifierString = "JUCER_BINARY_RESOURCE";
//==============================================================================
ResourceFile::ResourceFile (Project& project_)
: project (project_),
ResourceFile::ResourceFile (Project& p)
: project (p),
className ("BinaryData")
{
addResourcesFromProjectItem (project.getMainGroup());

View file

@ -55,8 +55,8 @@ namespace ProjectSettingsTreeClasses
class ConfigItem : public SettingsTreeViewItemBase
{
public:
ConfigItem (const ProjectExporter::BuildConfiguration::Ptr& config_, const String& exporterName_)
: config (config_), exporterName (exporterName_), configTree (config->config)
ConfigItem (const ProjectExporter::BuildConfiguration::Ptr& conf, const String& expName)
: config (conf), exporterName (expName), configTree (config->config)
{
jassert (config != nullptr);
configTree.addListener (this);
@ -155,9 +155,9 @@ namespace ProjectSettingsTreeClasses
class ExporterItem : public SettingsTreeViewItemBase
{
public:
ExporterItem (Project& project_, ProjectExporter* exporter_, int exporterIndex_)
: project (project_), exporter (exporter_), configListTree (exporter->getConfigurations()),
exporterIndex (exporterIndex_)
ExporterItem (Project& p, ProjectExporter* e, int index)
: project (p), exporter (e), configListTree (exporter->getConfigurations()),
exporterIndex (index)
{
configListTree.addListener (this);
jassert (exporter != nullptr);
@ -283,7 +283,7 @@ namespace ProjectSettingsTreeClasses
class ModulesItem : public SettingsTreeViewItemBase
{
public:
ModulesItem (Project& project_) : project (project_) {}
ModulesItem (Project& p) : project (p) {}
bool canBeSelected() const { return true; }
bool mightContainSubItems() { return false; }
@ -302,7 +302,7 @@ namespace ProjectSettingsTreeClasses
class SettingsComp : public Component
{
public:
SettingsComp (Project& project_) : project (project_)
SettingsComp (Project& p) : project (p)
{
addAndMakeVisible (&group);
@ -334,8 +334,8 @@ namespace ProjectSettingsTreeClasses
class RootItem : public SettingsTreeViewItemBase
{
public:
RootItem (Project& project_)
: project (project_), exportersTree (project_.getExporters())
RootItem (Project& p)
: project (p), exportersTree (p.getExporters())
{
exportersTree.addListener (this);
}
@ -414,8 +414,7 @@ namespace ProjectSettingsTreeClasses
private ChangeListener
{
public:
SettingsComp (Project& project_)
: project (project_)
SettingsComp (Project& p) : project (p)
{
addAndMakeVisible (&group);

View file

@ -471,8 +471,8 @@ void Project::findAllImageItems (OwnedArray<Project::Item>& items)
}
//==============================================================================
Project::Item::Item (Project& project_, const ValueTree& state_)
: project (project_), state (state_)
Project::Item::Item (Project& p, const ValueTree& s)
: project (p), state (s)
{
}
@ -748,7 +748,7 @@ Project::Item Project::Item::addNewSubGroup (const String& name, int insertIndex
String newID (createGUID (getID() + name + String (getNumChildren())));
int n = 0;
while (findItemWithID (newID).isValid())
while (project.getMainGroup().findItemWithID (newID).isValid())
newID = createGUID (newID + String (++n));
Item group (createGroup (project, name, newID));
@ -767,12 +767,9 @@ bool Project::Item::addFile (const File& file, int insertIndex, const bool shoul
{
Item group (addNewSubGroup (file.getFileNameWithoutExtension(), insertIndex));
DirectoryIterator iter (file, false, "*", File::findFilesAndDirectories);
while (iter.next())
{
for (DirectoryIterator iter (file, false, "*", File::findFilesAndDirectories); iter.next();)
if (! project.getMainGroup().findItemForFile (iter.getFile()).isValid())
group.addFile (iter.getFile(), -1, shouldCompile);
}
group.sortAlphabetically (false);
}
@ -1005,7 +1002,7 @@ String Project::getFileTemplate (const String& templateName)
}
//==============================================================================
Project::ExporterIterator::ExporterIterator (Project& project_) : index (-1), project (project_) {}
Project::ExporterIterator::ExporterIterator (Project& p) : index (-1), project (p) {}
Project::ExporterIterator::~ExporterIterator() {}
bool Project::ExporterIterator::next()