Add overrides for tracking and repeatable flags to allow managing the visibility of items by category/expansion
From the FAQ:
Is there a way to "untrack all" items inside a category? It's a pain to untrack all individually. Just click the group header inside the tooltip, and it will collapse. There is no "untrack all" feature, and I will not be adding one.
As far as I can tell, there's no reason why we couldn't allow users to track/untrack items based on their category. It may even tie in well with existing issues https://github.com/SacredDuckwhale/Rarity/issues/185, https://github.com/SacredDuckwhale/Rarity/issues/64, https://github.com/SacredDuckwhale/Rarity/issues/19, https://github.com/SacredDuckwhale/Rarity/issues/18
Now that the item database is explicitly organized according to expansion and item type, it'll be fairly easy to modify the properties of items inside a specific partition. Overwriting user settings in the saved variables still sounds like a bad idea, so perhaps an override for the tracked/repeatable/etc settings (or in fact, any boolean flag we support) might be a better approach. In this case, the existing "experimental" setting to untrack/track battle pets should also be modified as it currently overwrites the user settings directly.
After this is done, adding a UI for each category should be manageable. The only maintenance burden would be adding new categories per expansion, as well as possibly item types later, which doesn't seem like a big deal.
Roadmap:
- [ ] Add support for a
flagOverridesfield to the Core - [ ] Modify GUI to read this flag before the actual ones (and use the latter if it is set, i.e. not
nil) - [ ] Add options UI panel for Visibility (or similar, name TBD)
- [ ] Add checkboxes to the UI panel
- [ ] Update existing Untrack All button in the Advanced/Experimental settings panel to use the this field
- [ ] Update the FAQ to remove the (now-obsolete) paragraph