Browse Source

Enumerate: Replace some non-ranged loops

v7.0.9
reuk 2 years ago
parent
commit
94ee60041f
No known key found for this signature in database GPG Key ID: FCB43929F012EE5C
9 changed files with 45 additions and 54 deletions
  1. +5
    -7
      examples/GUI/AccessibilityDemo.h
  2. +15
    -10
      extras/Projucer/Source/Project/UI/Sidebar/jucer_ModuleTreeItems.h
  3. +2
    -3
      extras/Projucer/Source/Project/UI/jucer_ContentViewComponents.h
  4. +4
    -8
      modules/juce_audio_basics/midi/ump/juce_UMPFactory.h
  5. +3
    -5
      modules/juce_audio_plugin_client/juce_audio_plugin_client_AAX.cpp
  6. +4
    -7
      modules/juce_audio_plugin_client/juce_audio_plugin_client_LV2.cpp
  7. +2
    -4
      modules/juce_audio_processors/format_types/juce_VST3PluginFormat.cpp
  8. +2
    -4
      modules/juce_audio_processors/format_types/juce_VST3PluginFormat_test.cpp
  9. +8
    -6
      modules/juce_gui_basics/layout/juce_Grid.cpp

+ 5
- 7
examples/GUI/AccessibilityDemo.h View File

@@ -221,16 +221,15 @@ private:
{
RadioButtonsGroupComponent()
{
int index = 1;
for (auto& b : radioButtons)
for (const auto [n, b] : enumerate (radioButtons, 1))
{
b.setRadioGroupId (1);
b.setButtonText ("Button " + String (index++));
b.setButtonText ("Button " + String (n));
b.setHasFocusOutline (true);
addAndMakeVisible (b);
}
radioButtons[(size_t) Random::getSystemRandom().nextInt (numRadioButtons)].setToggleState (true, dontSendNotification);
radioButtons[(size_t) Random::getSystemRandom().nextInt ((int) radioButtons.size())].setToggleState (true, dontSendNotification);
setTitle ("Radio Buttons Group");
setFocusContainerType (FocusContainerType::focusContainer);
@@ -239,14 +238,13 @@ private:
void resized() override
{
auto bounds = getLocalBounds();
const auto height = bounds.getHeight() / numRadioButtons;
const auto height = bounds.getHeight() / (int) radioButtons.size();
for (auto& b : radioButtons)
b.setBounds (bounds.removeFromTop (height).reduced (2));
}
static constexpr int numRadioButtons = 3;
std::array<ToggleButton, numRadioButtons> radioButtons;
std::array<ToggleButton, 3> radioButtons;
};
//==============================================================================


+ 15
- 10
extras/Projucer/Source/Project/UI/Sidebar/jucer_ModuleTreeItems.h View File

@@ -519,13 +519,14 @@ public:
auto& enabledModules = project.getEnabledModules();
PopupMenu allModules;
int index = 100;
// JUCE path
PopupMenu jucePathModules;
for (auto& mod : ProjucerApplication::getApp().getJUCEPathModulesList().getAllModules())
jucePathModules.addItem (index++, mod.first, ! enabledModules.isModuleEnabled (mod.first));
for (const auto [index, mod] : enumerate (ProjucerApplication::getApp().getJUCEPathModulesList().getAllModules(),
100))
{
jucePathModules.addItem (index, mod.first, ! enabledModules.isModuleEnabled (mod.first));
}
jucePathModules.addSeparator();
jucePathModules.addItem (-1, "Re-scan path");
@@ -533,11 +534,13 @@ public:
allModules.addSubMenu ("Global JUCE modules path", jucePathModules);
// User path
index = 200;
PopupMenu userPathModules;
for (auto& mod : ProjucerApplication::getApp().getUserPathsModulesList().getAllModules())
userPathModules.addItem (index++, mod.first, ! enabledModules.isModuleEnabled (mod.first));
for (const auto [index, mod] : enumerate (ProjucerApplication::getApp().getUserPathsModulesList().getAllModules(),
200))
{
userPathModules.addItem (index, mod.first, ! enabledModules.isModuleEnabled (mod.first));
}
userPathModules.addSeparator();
userPathModules.addItem (-2, "Re-scan path");
@@ -545,11 +548,13 @@ public:
allModules.addSubMenu ("Global user modules path", userPathModules);
// Exporter path
index = 300;
PopupMenu exporterPathModules;
for (auto& mod : project.getExporterPathsModulesList().getAllModules())
exporterPathModules.addItem (index++, mod.first, ! enabledModules.isModuleEnabled (mod.first));
for (const auto [index, mod] : enumerate (project.getExporterPathsModulesList().getAllModules(),
300))
{
exporterPathModules.addItem (index, mod.first, ! enabledModules.isModuleEnabled (mod.first));
}
exporterPathModules.addSeparator();
exporterPathModules.addItem (-3, "Re-scan path");


+ 2
- 3
extras/Projucer/Source/Project/UI/jucer_ContentViewComponents.h View File

@@ -72,11 +72,10 @@ public:
{
jassert (columnHeaders.size() == columnWidths.size());
auto index = 0;
for (auto s : columnHeaders)
for (const auto [index, s] : enumerate (columnHeaders))
{
addAndMakeVisible (headers.add (new Label (s, s)));
widths.add (columnWidths.getUnchecked (index++));
widths.add (columnWidths.getUnchecked ((int) index));
}
recalculateWidths();


+ 4
- 8
modules/juce_audio_basics/midi/ump/juce_UMPFactory.h View File

@@ -55,10 +55,8 @@ struct Factory
std::array<uint32_t, 2> words;
size_t index = 0;
for (auto& word : words)
word = ByteOrder::bigEndianInt (bytes.data() + 4 * index++);
for (const auto [index, word] : enumerate (words))
word = ByteOrder::bigEndianInt (bytes.data() + 4 * index);
return PacketX2 { words };
}
@@ -79,10 +77,8 @@ struct Factory
std::array<uint32_t, 4> words;
size_t index = 0;
for (auto& word : words)
word = ByteOrder::bigEndianInt (bytes.data() + 4 * index++);
for (const auto [index, word] : enumerate (words))
word = ByteOrder::bigEndianInt (bytes.data() + 4 * index);
return PacketX4 { words };
}


+ 3
- 5
modules/juce_audio_plugin_client/juce_audio_plugin_client_AAX.cpp View File

@@ -1759,18 +1759,16 @@ namespace AAXClasses
if (! bypassPartOfRegularParams)
juceParameters.addNonOwning (bypassParameter);
int parameterIndex = 0;
for (auto* juceParam : juceParameters)
for (const auto [parameterIndex, juceParam] : enumerate (juceParameters))
{
auto isBypassParameter = (juceParam == bypassParameter);
auto category = juceParam->getCategory();
auto paramID = isBypassParameter ? String (cDefaultMasterBypassID)
: juceParameters.getParamID (audioProcessor, parameterIndex);
: juceParameters.getParamID (audioProcessor, (int) parameterIndex);
aaxParamIDs.add (paramID);
auto* aaxParamID = aaxParamIDs.getReference (parameterIndex++).toRawUTF8();
auto* aaxParamID = aaxParamIDs.getReference ((int) parameterIndex).toRawUTF8();
paramMap.set (AAXClasses::getAAXParamHash (aaxParamID), juceParam);


+ 4
- 7
modules/juce_audio_plugin_client/juce_audio_plugin_client_LV2.cpp View File

@@ -251,10 +251,9 @@ private:
const std::map<LV2_URID, size_t> uridToIndexMap = [&]
{
std::map<LV2_URID, size_t> result;
size_t index = 0;
for (const auto& urid : indexToUridMap)
result.emplace (urid, index++);
for (const auto [index, urid] : enumerate (indexToUridMap))
result.emplace (urid, index);
return result;
}();
@@ -1079,9 +1078,9 @@ private:
"\tlv2:portProperty lv2:enumeration " << (param.isBoolean() ? ", lv2:toggled " : "") << ";\n"
"\tlv2:scalePoint ";
auto counter = 0;
const auto strings = param.getAllValueStrings();
for (const auto& string : param.getAllValueStrings())
for (const auto& [counter, string] : enumerate (strings))
{
const auto value = jmap ((float) counter, 0.0f, (float) numSteps - 1.0f, min, max);
@@ -1089,8 +1088,6 @@ private:
"\t\trdfs:label \"" << string << "\" ;\n"
"\t\trdf:value " << value << " ;\n"
"\t]";
++counter;
}
}


+ 2
- 4
modules/juce_audio_processors/format_types/juce_VST3PluginFormat.cpp View File

@@ -2231,10 +2231,8 @@ public:
void initialise (const std::vector<Vst::ParamID>& idsIn)
{
Steinberg::int32 index = 0;
for (const auto& id : idsIn)
map.emplace (id, Entry { std::make_unique<ParamValueQueue> (id, Steinberg::int32 { index++ }) });
for (const auto [index, id] : enumerate (idsIn))
map.emplace (id, Entry { std::make_unique<ParamValueQueue> (id, (Steinberg::int32) index) });
queues.reserve (map.size());
queues.clear();


+ 2
- 4
modules/juce_audio_processors/format_types/juce_VST3PluginFormat_test.cpp View File

@@ -592,10 +592,8 @@ private:
void init()
{
auto index = 1;
for (auto& channel : buffers)
std::fill (channel.begin(), channel.end(), (float) index++);
for (const auto [index, channel] : enumerate (buffers, 1))
std::fill (channel.begin(), channel.end(), (float) index);
}
bool allMatch (int channel, float value) const


+ 8
- 6
modules/juce_gui_basics/layout/juce_Grid.cpp View File

@@ -281,9 +281,9 @@ struct Grid::Helpers
const auto lines = getArrayOfLinesFromTracks (tracks);
int count = 0;
for (int i = 0; i < lines.size(); i++)
for (const auto [index, line] : enumerate (lines))
{
for (const auto& name : lines.getReference (i).lineNames)
for (const auto& name : line.lineNames)
{
if (prop.getName() == name)
{
@@ -293,7 +293,7 @@ struct Grid::Helpers
}
if (count == prop.getNumber())
return i + 1;
return (int) index + 1;
}
jassertfalse;
@@ -328,9 +328,11 @@ struct Grid::Helpers
const auto lines = getArrayOfLinesFromTracks (tracks);
int count = 0;
for (int i = startLineNumber; i < lines.size(); i++)
const auto enumerated = enumerate (lines);
for (const auto [index, line] : makeRange (enumerated.begin() + startLineNumber, enumerated.end()))
{
for (const auto& name : lines.getReference (i).lineNames)
for (const auto& name : line.lineNames)
{
if (propertyWithSpan.getName() == name)
{
@@ -340,7 +342,7 @@ struct Grid::Helpers
}
if (count == propertyWithSpan.getNumber())
return i + 1;
return (int) index + 1;
}
jassertfalse;


Loading…
Cancel
Save