void GroupTreeViewItem::handlePopupMenuResult (int resultCode) { switch (resultCode) { case 1: triggerAsyncRename (item); break; case 2: deleteAllSelectedItems(); break; case 3: item.sortAlphabetically (false); break; case 4: openOrCloseAllSubGroups (*this, false); break; case 5: openOrCloseAllSubGroups (*this, true); break; default: processCreateFileMenuItem (resultCode); break; } }
static void openOrCloseAllSubGroups (TreeViewItem& item, bool shouldOpen) { item.setOpen (shouldOpen); for (int i = item.getNumSubItems(); --i >= 0;) if (TreeViewItem* sub = item.getSubItem(i)) openOrCloseAllSubGroups (*sub, shouldOpen); }