BarKeep

** Now with support of bars that only appear on mouseover via the optional BarKeep_BarFader add-on. BarKeep_BarFader can be found in the 'Optional Files' tab. **

Here are the main features:

All the main action buttons can be configured to have from 1-12 buttons.

All the main action bars can be reconfigured to have up to 12 rows, so you can have 6 buttons x 2 rows, 3 buttons by 4 rows etc. This is done still using the Blizzard button code for compatibility.

All the main action bars can be scaled independently of one another.

Stance bar, possess bar, and pet bar can all be relocated to where the user wants them to be.

All bars can be hidden if you want, some using the Blizzard options from the interface menu, others using BarKeep.

The options are configured by a GUI accessed from /barkeep or /bk.

It uses an event / hook based structure for minimal CPU usage.

I want to say thanks to the previous developers of this CleanBar & CleanBarAdvanced since BarKeep would not be possible without their initial help.

So why use BarKeep?

It enables complete rearrangement and scaling of the Blizzard bars and so has some advantages over the traditional bar mod:

It uses Blizzards buttons (and button code). So pretty much it's always compatible if Blizzard make any changes.

Its really light in use - doesn't use a lot of memory and CPU cycles.

It seems pretty stable as a result of the above.

It'll work with cooldown, ranged mods that work with Blizzard buttons and also ButtonFacade with another small mod.

Commands:

/barkeep - show the config screen.
/bk - show the config screen.

FAQ:

I can't see all the bars when I first use the addon. All I see are the '+'s that enable the bar placement? - Use the Blizzard 'Action Bars' tab in the interface menu to set which bars are active or not, just as you would the Blizzard bars.

How do I set the Key Bindings? - Use the Blizzard Key Bindings interface to set the bindings for all the bars.

How do I lock the actions on the bars? - Use the Blizzard 'Action Bars' tab in the interface menu to lock the Blizzard bars.

How do I permanently show the empty buttons? - Use the Blizzard 'Action Bars' tab in the interface menu to show the empty button grid.

Future Plans:

Bug fixes once identified.

A BarKeep_XP optional module to manage the XP bar.

A reconfiguration of the mod to easily allow for additional layout types for the bars. This should be fairly easy to do, it'll just require a some coding in BarKeep.lua and a change to the configuration screen, but could take some time as I'll make the changes slowly and test carefully.

Known Issues:

None.

Version History
BarKeep 50400.03
-----------------
- Added the new shop button to the micro menu bar.

BarKeep 50400.01
-----------------
- Corrected most of the taint introduced in 5.4 patch. Some more work to do on this still with 50400.02.

BarKeep 50300.02
-----------------
- Corrected scaling of the possess & stance bars. The scale can now be independent of the mainbar.
- Fixed issue where if stance bar was originally hidden, it would not unhide.

BarKeep 50200.04
-----------------
- Added code to ensure that the ActionBars do not appear over the Battle Pet frame.

BarKeep 50200.03
-----------------
- Corrected an error related to PvP MicroMenu button.
- Increase the FrameStrata of the various buttons to reduce the liklihood they'll be covered by other UI elements preventing mouse clicks.

BarKeep 40000.04Beta
---------------------
- An attempt to fix the Glyph taint issue some people are reporting (I'll need feedback whether it solves the issue).

BarKeep 40000.03
-----------------
- Fixes the Guildbutton on the MicroMenuBar.
- Adds the ability to scale the Shape Bar separately from the MainBar.
- Adds the ability to hide and scale the Totem Bar.
- Reorganizes the settings pane to fit in all the new settings.

BarKeep 40000.02
-----------------
- Fixes the BonusActionBar issues and the scaling of a couple of the bars.

BarKeep version 30300.9
-----------------------
- Added back selective transparency to hide MainBar buttons where the BonusActionBar has no action.
- Added a (likely) fix for the 'I just got my first key and now the keyring is displayed' bug.

BarKeep version 30300.8
-----------------------
- Removes all the redundancy and transparency code that previously ran when stance switching - stealthing still works fine on my Rogue. Let me know if this improves the Warrior stance change timing.

BarKeep version 30300.7
-----------------------
- Slightly improves vehicle exiting under combat - HToC for example - by noting the exiting the vehicle, and if the exit fails then rearranging the buttons on leaving combat. Corrects an issue with the MicroMenuBar.

BarKeep version 30300.6
-----------------------
- Adds the character portrait to the character micromenu button.

BarKeep version 30300.4
-----------------------
- More elegant and better fix to correct for the Blizzard AcheivementMicroButtonUpdate bug.
- Reverted to using the Blizzard SpellBookMicroButton to enable casting from the Spellbook while in combat.

Thanks for the author of his software,I am not good at English,but I want to say ,I use it for a long time,when the new WOD is open ,this software is incompatible with it.I want to know if the author is still play this game.Thanks anyway.

Hi, just letting you know there is an issue since 5.4.2 with the store button. It can't be scaled and the old game menu button has disappeared. Haven't tried a fix yet, but if anyone gets one please post

I'll have an update up tomorrow to fix this. It's a very minor change and all I need to do is properly test it tonight.

Hi, just letting you know there is an issue since 5.4.2 with the store button. It can't be scaled and the old game menu button has disappeared. Haven't tried a fix yet, but if anyone gets one please post
Thanks and keep up the work on the best bar addon out there!

I updated the newest fix as of today (11/26/2013). I am still getting a popup when I go into the Pet Journal. Specifically I have a macro that uses the command /run TogglePetJournal(2) which brings up the Pet Journal tab. This causes a popup of "A macro script has been blocked from an action only available to the Blizzard UI."

That command within the macro (ToggelPetJournal) is in essence one of the issues BarKeep had with the MicroMenu. Previously BarKeep copied the MicroMenu buttons as a fix for Blizzard moving them around. With the 5.4 patch, for some probably quite good reason, Blizzard decided to only allow some of the commands that access those important frames (spell frame, pet frames etc.) to be called from secure code. So I had to revert to BarKeep using the original buttons and keeping these locked in-place, which now seems to work well.

Unfortunately this means the following for the macro issue ... 1) It's not caused by BarKeep, but rather appears to be the same root cause to the BarKeep issues and 2) your workaround seems about the best that could be done as a result. Having said that, on my system the UI remembers which tab you were using (the mount or the pet tab) so you could also try ...

All blocking issues should now be fixed. They all related to the Micro Menu Bar.

Awesome, I am very glad for the fix. :-)

I updated the newest fix as of today (11/26/2013). I am still getting a popup when I go into the Pet Journal. Specifically I have a macro that uses the command /run TogglePetJournal(2) which brings up the Pet Journal tab. This causes a popup of "A macro script has been blocked from an action only available to the Blizzard UI."

I only mention this as this popup started the same time as the Barkeep popup did. I am assuming it is related, but I could certainly be wrong. :-)

As a note, if I use the macro command /run TogglePetJournal(1) (which brings up the Mounts tab) the popup doesn't come up. So I'll prob just use it this way, but was just curious if there was still an issue between Barkeep and any of the Blizzard UI or not. :-)

Ever since the latest patch 5.4.1? I think. (It didn't happen during the initial 5.4 patch, Oct 29, 2013) I continuously get a popup error message saying "BarKeep has been blocked from an action only available to the Blizzard UI. You can disable this addon and reload the UI."

I choose to ignore so that my BarKeep addon is not disabled. I am wanting to know if there is something I can update in a file some where? (Something simple) Or if there will be a new overall update to this addon? I love this addon for its simplicity and low overhead. :-)

I have isolated almost all the 'blocking' issues to the point where it only occurs on the initial log-in. It's been in the works for a couple of days now (as I only recently re-joined WoW) and so will post the updated version later today. If you then press 'ignore' after the first log-in it appears to work for me on my DK pretty flawlessly after that.

Once that's up I'll work on isolating that last blocked action, but given it only occurs once each session it could take some time. And I'll only get to it next week as tonight I'll lock down my UI for weekend raiding.

Ever since the latest patch 5.4.1? I think. (It didn't happen during the initial 5.4 patch, Oct 29, 2013) I continuously get a popup error message saying "BarKeep has been blocked from an action only available to the Blizzard UI. You can disable this addon and reload the UI."

I choose to ignore so that my BarKeep addon is not disabled. I am wanting to know if there is something I can update in a file some where? (Something simple) Or if there will be a new overall update to this addon? I love this addon for its simplicity and low overhead. :-)

Usually when I enter a new zone I get the popup, I ignore it and have no further issues (until I zone again). But when I run raids, I'll get the popup continuously throughout a boss fight when clicking on ignore. Also, when I pull up the pet/mount window I get an error, "A macro script has been blocked from an action only available to the Blizzard UI." I am not sure if this is related to BarKeep, but it started showing up after the same patch (5.4.1 - Oct 29, 2013).

- For my hunter, the stance bar has (for me) three buttons with my stances, but there are three empty, slightly bigger buttons attached above and skewed slightly to the right. Locking BarKeep doesn't make the empty buttons go away. My warlock shows two empty buttons above and slightly to the right, so I think your addon is somehow duplicating (but not populating) the number of stance buttons???

- Changing the main bar scale also changes the stance and posses bar scales. Is this intended?

I'll have a look into those two issues. I haven't noticed them before but with some digging, maybe I can duplicate them. It's possible that Blizzard has changed the bar code and grabbed back control of those bars at some point during the session causing those issues. Let me see if I can duplicate & correct the errors.

Playing with your wonderful addon and I have a few comments and a question:

- For my hunter, the stance bar has (for me) three buttons with my stances, but there are three empty, slightly bigger buttons attached above and skewed slightly to the right. Locking BarKeep doesn't make the empty buttons go away. My warlock shows two empty buttons above and slightly to the right, so I think your addon is somehow duplicating (but not populating) the number of stance buttons???

- Changing the main bar scale also changes the stance and posses bar scales. Is this intended?

- Have you thought of/would you some day be willing to offer functionality to completely hide the main action bar for people using other bar addons?

Can BarKeep do the bar switching for dual spec and different stances ? If so, how ?

I believe so - it works on my Rogue & DK for example. Basically all BarKeep does is move & scale the original Blizzard buttons. It removes all the excessive chrome and enables you to shift, change the configuration of the various 12 button bars and scale them. But the bars are still the same Blizzard ones as before - if you shut BarKeep off the abilities are still where they were placed when BarKeep was working.

To do so I've had to curate a series of Blizzard settings, events and hooking secure functions that enables BarKeep to ensure the bars remain in the set-up where you've left them. It probably can be done more elegantly but all the detail is in the code which is open source so can be used and forked. If you improve it I can probably replace it or merge the improved code back.