BetterBags - Priority

/!\ Only compatible extensions that are updated to work with this one will work, as it's not a native feature of BetterBags, there's no way around it! And I can't add support myself unfortunately! If you like it, ask extensions creators to update their addons to make them compatible as described at the bottom of this page /!\


The missing priority system for BetterBags

BetterBags and its many extensions extend your ability to manage your inventory, but some of those extensions may not work together well.

My tabard is a legendary item, should it go in the legendary category? Or in the tabard category?

Fear not, this priority addon will help you!!! (well... hum... conditions may apply, since only my addons support this system right now!)

I started this addon in hope many more BetterBags extensions creators will consider adding compatibility with it so that we can finally have the priority system we've been waiting for with conflicting BetterBags extensions!


You want to add compatibility with your addon?

Addon developer, you can find an example on how to add compatibility with this addon below, and if you have questions don't hesitate to comment or PM me.


-- Check if the priority addon is available
local BetterBagsPriority = LibStub('AceAddon-3.0'):GetAddon("BetterBags_Priority", true)
local priorityEnabled = BetterBagsPriority ~= nil or false

-- If the priority addon is available, we register the custom category as an empty filter with BetterBags to keep the
-- "enable system" working. The actual filtering will be done by the priority addon
if (priorityEnabled) then
    local categoriesWithPriority = BetterBagsPriority:GetModule('Categories')

    --@param data ItemData
    categories:RegisterCategoryFunction("YOUR_FILTER_NAME_HERE", function(data)
        return nil

    --@param data ItemData
    categoriesWithPriority:RegisterCategoryFunction("YOUR_ADDON_TITLE", "YOUR_FILTER_NAME_HERE", function(data)
        -- Your logic to return the proper category for the item goes here
    -- Your current code goes here to maintain the current behaviour if the priority addon isn't enabled