Release History

4.0.339

- General:
  - ToC updated to 40000.
- Bug Fixes:
  - Fixed an issue with HotKeys not obeying skin settings. (Ticket 56)
  - All texture layers now correctly support the "TexCoords" attribute. (Ticket 59)
  - Layers set to false in the ButtonData table will now be ignored instead of being hidden first.
  - Text layers will now be above all texture layers, where they should be.
  - Fixed an issue with negative frame levels.
- LibButtonFacade:
  - Minor version bumped to 40000.
- Skin API:
  - Layers not defined in the SkinData table will now be set as hidden.
  - Colors must now be passed as a table such as {r, g, b, a}. The attributes "Red", "Blue", "Green" and "Alpha" are no longer supported.
  - The HotKey layer no longer supports a "Color" attribute due to update calls overwriting it.
- ToDo:
  - Add support for the new "flash alert" frame.
  - Add support for the AutoCast frame textures.
  - Fix it so that recoloring a layer doesn't reskin every single button in that group.

3.3.330

- General:
  - Updated for 3.3.5. All future versions will be for 4.0 and later.
  - ButtonFacade should much more CPU friendly. (I hope)
- LibButtonFacade:
  - Border color support has been removed. This leaves coloring the borders up to add-on authors, as it should be. (Use SetVertexColor)
  - The Group:AddButton() method will now correctly return if attempting to add a button to a group that already has that button assigned to it.
  - The Group:Skin() method now only supports a table of the layers and their respective colors. The single layer specification used by the ButtonFacade GUI has been removed.
  - The Group:SetLayerColor() method used by the ButtonFacade GUI will now correctly update the skin with new color.
  - A button's additional frame layers will now automatically update their levels when Button:SetFrameLevel() is called.
  - Removed the redundant code for SetTextColor() and SetVertexColor() since they apparently work as they should.
  - A new method, Group:ReSkin(), is available so authors can reapply the skin after calls that may interfere with LBF's engine.
  - A new method, LBF:Debug() is available that will cause LBF to throw errors on certain issues (IE, bad skin parameters, etc). Note that this function acts as a toggle.
  - Authors can use LBF, version = LibStub("LibButtonFacade") to check the LBF version for compatibility. This release is 30305.
  - More code optimization. (Scope: It's not just for bad breath.)
- Skin API
  - The "Border" layer no longer supports the "Color" attribute.
- ButtonFacade GUI:
  - The ButtonFacade GUI has been reworked a little and tool tips should now be slight more descriptive.
  - Layers that are disabled in the skin definition will now show their respective options as disabled in the GUI.
- Miscellaneous:
  - ButtonFacade will no longer be registered in the global namespace. Authors will have to use AceAddOn or IsAddOnLoaded() to check for it.
  - Removed AceLocale.

3.3.300

- Update ToC to 3.3.
- Switch to GetObjectType since GetFrameType was removed.
- Copy esES to esMX localization to eliminate the hard-coded force use of esES for esMX.

3.2.85

- Fixed a library typo.
- Adjusted the format and file name of the change log.
- Localization update.

3.2.275

- Fixed an erroneous library reference.
- Fixed a core entry.
- Updated ToC for 3.2.
- Localization update.

3.1.270

- Removed the "About" panel.
- Added an "About" file.
- Localization clean up and update.
- Packager tweaks.

3.1.260

- Module support removed. If you run into issues with an add-on you're using, ask the author to fix their add-on.

3.1.255

ButtonFacade GUI:
- ButtonFacade will now attempt to remember the global skin settings. To be clear, it will only remember the *global* setting. It is still up to add-on authors to save the skin settings for their own add-on's root group.
- Due to the GUI saving the settings and additional modules, the profile selection panel has been enabled once again.
- Tons of GUI tweaks and added some missing features (tool tips, etc), so the localizations will need to be updated.

LibButtonFacade:
- The "root" group is now called "ButtonFacade" instead of an empty string.
- The separator for RegIDs is now an underscore instead of a "pipe". Additionally, all root addon groups will have a RegID matching the name that they're registered with. IE, instead of Bartender4 having a RegID of "|Bartender4", it will have a RegID of "Bartender4". All subgroups will have RegIDs that follow the "Addon_Group_Button" format.
- The skin callback firing function will now return the addon's root group data if a group is not specified. This means that addon authors can call LBF:Group("Addon"):Skin(self.db.profile["Addon"].SkinID, ...) prior to calling it for their individual groups to ensure that ButtonFacade's GUI displays the current settings for the addon's root group correctly. Feel free to contact me if you're unsure how to implement this correctly or if it gives you problems/errors.
- Any author attempting to write a LBF GUI will need to register their addon with LBF via the skin callback function. The addon *MUST* be registered as "ButtonFacade".

Miscellaneous:
- Added WoWI's minion tag.

3.1.240

- More tweaks to the "About" panel.
- Fixed a type in the default skin. (Thanks, FlickerStreak)
- Misc. clean up and tweaks.
- Localization bump.

3.1.335

- Updated for 3.1.
- Updated locales.
- GUI Adjustments.

3.1.225

- Localization Updates
- Updated to the WoWAce localization system.
- Restructured the directories and files a bit.
- New Icon.

3.0.208

- frFR update. (Pettigrow)

3.0.205

- Update zhTW/zhCN. (ananhaid/digmouse)
- Fix for borderless skins (Dreamlayout, Blizzard, etc). (flickerstreak)

3.0.200

- Removed FuBar/Harbor support.
- Rebuilt the options window.
- The /bf and /buttonfacade chat commands open the Interface Options category for ButtonFacade.
- Updated/Changed localization entries. Up to date (mostly) are: zhCN, zhTW and koKR. Need the rest translated or retranslated.
- Tons of code clean up.