Ah, well, it does make it easier for sharing of themes and everything. People will likely expect that their 12 buttons before they switch to the theme will be preserved, instead of having 1-8 be bar 1, then 9-16 be bar 2, splitting their previous bar up. And if they switch back, then their bars will be scattered everywhere again.
There are definitely outlying cases where customizing is necessary, my G15 macro buttons being one. It's between 12 and 24, so no matter what some buttons are unassigned/wasted.
When you say button id definitions, I assume you mean the ranges that we had to enter before? Like 1-8, 20-30? I see automated button id definitions being doable, and would make things more intuitive. The only time I could see custom button definitions being useful is if you're trying to use the same ones as another mod; Though at that point it's almost easier just to reassign the skills in the buttons rather than fiddle with the definitions to get them perfectly aligned.
In the past I spent a decent amount of time trying to get all of the definitions just right so I could make custom sized bars with all the druid forms and stealth and possess and everything switching out automatically. Having the mod take care of this would be nice.
I think Blizzard uses 1-12 as the main bar, 13-24 as bar 2, etc until like bar 7, where it starts providing the swap bars for the different forms/possess bars. My mental model of how expect it to work:
1-12 bar 1
13-24 form 2 swap
25-36 form 2 swap
etc for all forms of the class
12 buttons for possess bar
12 buttons for vehicle bar
split the remainder into extra bars: current bar 2, 3, 4, 5, 6
The only difference would be the number of buttons is definable, so
1 - x main bar 1
x+1 - x*2 form 1 swap
x*2+1 - x*3 form 2 swap
etc.
Doing so, if someone used a theme that had more/less than their accustomed number of buttons, they could go into the designs and just change the number of buttons, then their assigned action buttons should be aligned to the bar length properly, though they may have to modify the theme a little bit to account for the change.
A few concerns for coding/usability off the top of my head:
- Calculating the ranges dynamically for the different bars
- On changing which bars a bar can swap to or sizes of bars, buttons may shift from one bar to another, causing the user to have to reassign abilities (unavoidable? I see it as expected behavior, others may not)
- Making sure the user doesn't create too many total buttons over all of their bars
- Showing users how many buttons they have left to make bars with in the UI
Sorry for the length, I'm a more or less a flow of consciousness writer I suppose. This is what came to mind from what you said, Brainn. Did I come close to your mental model? There are probably things I'm not taking into account?