| 146 | } |
| 147 | |
| 148 | static void addGroupSubitems(std::vector<std::shared_ptr<Macro>> ¯os, |
| 149 | const std::shared_ptr<Macro> &group) |
| 150 | { |
| 151 | auto subitems = GetGroupMacroEntries(group.get()); |
| 152 | |
| 153 | // Remove subitems which were already selected to avoid duplicates |
| 154 | for (const auto &subitem : subitems) { |
| 155 | auto it = std::find(macros.begin(), macros.end(), subitem); |
| 156 | if (it == macros.end()) { |
| 157 | continue; |
| 158 | } |
| 159 | macros.erase(it); |
| 160 | } |
| 161 | |
| 162 | // Add group subitems |
| 163 | auto it = std::find(macros.begin(), macros.end(), group); |
| 164 | if (it == macros.end()) { |
| 165 | return; |
| 166 | } |
| 167 | it = std::next(it); |
| 168 | macros.insert(it, subitems.begin(), subitems.end()); |
| 169 | } |
| 170 | |
| 171 | void AdvSceneSwitcher::RemoveMacro(std::shared_ptr<Macro> ¯o) |
| 172 | { |
no test coverage detected