| 3299 | } |
| 3300 | |
| 3301 | bool IGFD::PlacesFeature::AddPlacesGroup(const std::string& vGroupName, const size_t& vDisplayOrder, const bool vCanBeEdited, const bool vOpenedByDefault) { |
| 3302 | if (vGroupName.empty()) { |
| 3303 | return false; |
| 3304 | } |
| 3305 | auto group_ptr = std::make_shared<GroupStruct>(); |
| 3306 | group_ptr->displayOrder = vDisplayOrder; |
| 3307 | group_ptr->name = vGroupName; |
| 3308 | group_ptr->defaultOpened = vOpenedByDefault; |
| 3309 | if (group_ptr->defaultOpened) { |
| 3310 | group_ptr->collapsingHeaderFlag = ImGuiTreeNodeFlags_DefaultOpen; |
| 3311 | } |
| 3312 | group_ptr->canBeSaved = group_ptr->canBeEdited = vCanBeEdited; // can be user edited mean can be saved |
| 3313 | m_Groups[vGroupName] = group_ptr; |
| 3314 | m_OrderedGroups[group_ptr->displayOrder] = group_ptr; // an exisitng display order will be overwrote for code simplicity |
| 3315 | return true; |
| 3316 | } |
| 3317 | |
| 3318 | bool IGFD::PlacesFeature::RemovePlacesGroup(const std::string& vGroupName) { |
| 3319 | for (auto it = m_Groups.begin(); it != m_Groups.end(); ++it) { |
no test coverage detected