r20140428233844

Details

  • Filename
    IceHUD-r20140428233844.zip
  • Uploaded by
  • Uploaded
    Apr 28, 2014
  • Size
    1,001.23 KB
  • Downloads
    1,802
  • MD5
    68d765c011b18b47669611d587602254

Supported WoW Retail Versions

  • 5.4.7

Changelog

Parnic:
    - - Replaced svn-specific project-revision variable with project-date-integer which will sort of more or less kind of serve the same purpose. The full timestamp seemed like TMI and date should be granular enough.
    - - Moved call to CVarUpdate() to happen later in the startup sequence.
    - - Added support for the "custom lag tolerance" setting to the castbar's lag display. (ticket #178 - Thanks slippycheeze!)
    - - Fixed a bug causing combo points to always display in Numeric mode for any class instead of hiding when the player has 0 combo points and 0 anticipation stacks.
    - - Integrated a feature by slippycheeze that enables the current threat target's name to be displayed in the "lower text" portion of the Threat bar. http://www.wowace.com/addons/ice-hud/tickets/176-show-name-of-threat-holder-and-color-based-on-their/
    - - Possibly fixed some NaN/divide-by-zero errors that have been cropping up sporadically lately.
    - - Minor cleanup.
    - - Merged support for displaying Anticipation on the ComboPoints module (thanks MSaint!) http://www.wowace.com/addons/ice-hud/tickets/154-anticipation-enhancement/
    - - Fixed a bug where buff/debuff watchers were not removing themselves from the central Update list when deleted.
    - - r953 broke the "Only show with a target selected" option for self-castable spells set to "when ready" on a cooldown module. Obviously I have too many options in this mod.
    - - Fixed an issue causing cooldown bars set to "when ready" to not display if the player had no target but the spell was castable on the player and ready to be cast.
    - - Added 90 degree rotation as an option for mirror bars.
    - - Removed x-compatible-with in toc since 4.3 is really old and I'm not actually testing against it.
    - - Added support for DogTag strings on buff/debuff watchers.
    - - The "Dismiss" option in pet right-click menus is no longer disabled for Warlocks.
    - - Removed extremely old pop-up messages on startup that were appearing for new users.
    - - Ticket #173: added a toggle to hide the entire HUD during pet battles.
    - - Added a toggle to only show cooldown modules when you have a target selected for abilities that don't require a target to cast, by request.
    - - Updated in-game FAQ to match the web FAQ.
    - - TOC update for 5.4
    - - Added Absorb modules for focus, target, and player.
    - - Added Monks as eligible "tank" classes for the Vengeance module.
    - - Merged Zahariel's support for the Nine-Tailed SnD bonus duration (ticket #174)
    - - Updated TOC for 5.3
    - - Updated TOC for 5.3
    - - Cleaner method for the warlock Shards module to retrieve the current rune mode such that switching to Demonology spec and back doesn't overwrite it. (I currently force the rune mode to 'graphical' or 'numeric' for Demonology spec since nothing else makes sense at the moment.)
    - - 5.2 TOC update
    - - http://www.wowace.com/addons/ice-hud/tickets/145-hunter-pet-dismiss-error/ blacklisted the "dismiss pet" menu entry in pet right-click menus. Hunters should use the Dismiss Pet spell instead.
    - - http://www.wowace.com/addons/ice-hud/tickets/167-shaman-totems-cant-be-clicked-off/ disabled right-click-destroy on totems
    - - http://www.wowace.com/addons/ice-hud/tickets/171-cc-bar-not-showing-monk/ added Monk CC spells
    - - Missed the options module's TOC update for 5.1.
    - - TOC bump for 5.1 - Changed the LIGHT_FORCE constant to CHI because changing constants in shipped code is such an awesome idea.
    - - Fixed PVP icon showing up as a green square for Pandaren who have not yet chosen a faction. This fix applies to TargetHealth and PlayerHealth, but not to DogTag text such as on the TargetInfo frame.
    - - ticket #161: integrated Zahariel's fix for gradients.
    - - Ticket #157 - fixed an error when a channeled spell ends early due to being hit. (Thanks, cg110!)
    - - Fixed an error popping up when you had a target and zoned into an instance as a Monk.
    - - Maybe fixed a PetInfo/TargetInfo buff error that I can't reproduce.
    - - Ticket 152: fixed SnD duration prediction for 5.0.
    - - Fixed Holy Power only showing 3 max on login instead of 5.
    - - Fixed a bug where the shard module could sometimes show zero runes on the graphical display after entering or exiting a dungeon.
    - - Removed level restriction on harmony power since apparently that's not a thing any more. - Fixed the fifth chi not always drawing immediately when changing specs to one that grants an additional chi. - Registered harmony power for the UNIT_POWER_FREQUENT event since that's what Blizzard's version does.
    - - Added another FAQ to the list.
    - - Touched file to get a new package made with fixed localization strings.
    - - Now that the numeric class power frame is being placed via SetPoint instead of SetAllPoints, we don't have to worry about the parent frame's width being correct to avoid truncating the number string; so don't force-update the width on the parent frame any more. - No longer explicitly setting the width on the class power numeric FontString either as we'll just allow it to size to the text instead.
    - - Added support for changing the outline/shadowing of all non-DogTag strings on all modules.
    - - Added support for showing the numeric value on top of a class power's graphical display. This number can also be moved vertically.
    - - Updated non-'graphical' display modes for holy power to not squish the icons.
    - - Removed dead line of code that was using a global variable and then not even doing anything with it.
    - - Fixed a few more instances of using non-local vars named _
    - - Fixed a few missed GetNumPartyMembers/GetNumRaidMembers references. Eventually I'll get all of them.
    - - Added support for Soul Shards and Burning Embers major glyphs changing the total number of available shards/embers.
    - - Fixed a couple of places that I forgot to declare the variable _ as a local which was causing taint due to Blizzard also forgetting to declare _ as a global in the glyph frame.
    - - TOC update for 5.0
    - - Fixed error on login on 4.3 servers as a Warlock. http://www.wowace.com/addons/ice-hud/tickets/147-shards-ui-error/
    - - Fixed a bug in the warlock power module with reloading the ui/logging in while in Demonology spec and having the power module set to Numeric display mode which caused the number to be replaced with an ellipsis. That was a long sentence.
    - - Added support for bar-style class powers that grow left to right instead of just adding a new count or growing individual powers bottom-up. This could really use a background to give a sense of the bar's extents, but I'll leave that for a future improvement. - Added basic support for Demonology spec (Demonic Fury) Warlock power. - Fixed a bug or two in Warlock power presentation when un-speccing or learning a new spec after having been without a spec. - Added support for hiding Warlock power until the requisite spell has been learned because apparently (after looking at Blizzard's code) you can have the spec without having the spell that builds up the power associated with the spec. Okay.
    - - Added Destruction spec (Burning Embers) support to the warlock power module and renamed it from Shard Counter to Warlock Power. Demonology support coming soon. Hopefully.
    - - Added support for ClassPowerCounters to only show up for specific talent specs. - Added Priest Shadow Orbs module.
    - - Updated Paladin and Mage spells for GCD. They seemed to still work with the old, no-longer-existing spells, but that's not guaranteed to stay working.
    - - Updated warrior GCD spell to "victory rush" now that Rend is a passive ability. No ability is available before level 5 that doesn't have its own cooldown, sadly.
    - - Drycoded a holy power module fix for pre-5.0. I don't have a level 9+ paladin on live, so maybe this works?
    - - Expanded holy power to account for the now-5 rune maximum. Not sure what I'm going to do about this layout just yet. The default frame has two below the primary 3, but my class power base class doesn't have support for this type of layout. Will see what the users say. - Fixed the old 3 runes to have appropriate texture coordinates.
    - - Fixed GetLFGMode() errors in 5.0
    - - Removed LibDualSpec pkgmeta 'latest' tag so that we package the most recent alpha (which is 5.0-compatible)
    - - Fixed another WoW 5.0 problem: GetPrimaryTalentTree() -> GetSpecialization() in the Eclipse module.
    - - Changed to grab the most recent rev of AceGUI and LibDogTag since they have WoW 5.0 fixes that haven't been tagged yet. - Added MonkManaBar module.
    - - Created Monk Harmony Power module. - Added localization to HolyPower module description. - Fixed a comment in the Shard module.
    - - Added GCD spell for Monks (WoW 5.0)
    - - Threat module fixes for WoW 5.0
    - - Round 1 of WoW 5.0 fixes.
    - - added code to buff/debuff watchers and cooldown watchers to prevent them from sometimes getting stuck (not updating/animating)
    - - added missing "end" for TargetInfo change from earlier today
    - - drycoded a toggle to enable tooltips when mousing over an Info module to help diagnose a reported error from wowinterface
    - - and now for the correctly-merged version of the cd bar
    - - cooldown bar fixes submitted by JontomXire (thanks!)
    - - don't trigger the ability cooldown bar if the spell in question only has a 1.5 second or less cooldown. this indicates that it's on cooldown as part of the GCD and we have a separate module for GCD tracking
    - - 4.3 toc update
    - - enabled the Totems module for druids since 'wild mushroom' is considered a totem (ticket #137)
    - - only do spell id exact-match checking if "exact match" is set. otherwise, it will compare spell names
    - - updated to accept either a spell id or a spell name for custom bars. this allows tracking of different debuffs with the same name (such as Hemorrhage and its DoT). thanks to Nibelheim on WoWInterface for this one as well.
    - - new 'max health' formula from Nibelheim over on WoWInterface (thanks!)
    - - 4.2 toc update
    - - fixed bug with selecting the last 4 presets. they weren't actually defined.
    - - drycoded possible fix for a reported error
    - - removed the pet happiness DogTag from the PetInfo module default setting
    - - removed all references to pet happiness
    - - toc bump for 4.1
    - - evidently patch 4.1 broke either the BOUNCE animation type or something else about starting/stopping animations broke because the "pulsing" animation for holy power and warlock shards kept growing bigger and bigger over time
    - - fixed custom cooldown bars not working quite right with the 'When ready' display mode. the update subscription query was returning a false positive because a block of code in one of the CD bar's parent classes had already subscribed for updates, but the CD bar wanted to use its own update function.
    - - fixed PlayerInfo to only show the "buff canceling is disabled" message when a buff is right-clicked instead of any button click. also clarified the popup message to better explain why the feature is currently disabled - hid "Low Threshold Color" toggle for the PlayerAlternatePower bar since it doesn't make sense for that module
    - - exposed the "low threshold" option to CC bars by request
    - - added an oft-requested option to treat friendly targets the same as not having a target at all for alpha purposes. this allows people who want the HUD to be hidden when they don't have a target to stay hidden when they target a friendly, for example
    - - fixed a bug where targets with rage or runic power were considered 'empty' (for alpha purposes) at 0. this was causing them to show up when they shouldn't based on alpha settings
    - - made custom (de)buff watcher bars respect the bForceHide option for :Show() so that they are properly hidden when a profile change occurs or they are manually disabled via the options menu
    - - fixed the elite (classification) icon for targets to respect the "lock all icons at 100% alpha" setting
    - - minor initialization order fixups in the alternate power bar - added new option (enabled by default) to have buffs and debuffs in Info modules sorted by expiration time instead of the order the game returns them in (application time?)
    - - ticket #116: first attempt at an honest-to-goodness alternate power bar. i don't raid, so i've only tested this against the alternate power in The Maw of Madness in Twilight Highlands...
    - - fixed typo where TargetMana was initializing a variable in TargetHealth
    - - fixed a case where the GCD bar could get cut off early when spamming an instant-cast spell
    - - GCD stops early if the player aborts the cast or is interrupted
    - - ticket #119: copy alwaysFullAlpha setting to the mirror bar instance
    - - ticket #121 - patch for new visibility mode in CustomBars
mikk:
    - - Added spellids for silence from elemental slayer enchant + unglyphed avenger's shield
Parnic:
    - - made sure the options table gets the LibDualSpec treatment regardless of whether the mod is enabled or not
    - - respect the user's mod-wide "enabled" setting when changing profiles (ticket #117) - also cleaned up some logic that could cause errors when enabling the mod due to a profile switch when the player initially loaded with it disabled
    - - added feature to custom cooldown bars to allow them to show/hide with the rest of the mod instead of having special rules (if desired) - added ability to ignore a spell's range/target castability if desired on a cd bar. this allows the bars to display when a buff is ready even if it can't be cast on your current target, for example
    - - fixed an issue where focusing a unit in combat could cause taint in the FocusHealth module
    - - added new user-submitted bar textures (ticket #111)
    - - hopefully "fixed" (read: worked around) crash that IceHUD was triggering in the client by implementing a Lua-only version of UnitSelectionColor(). the crash was triggered by having DogTags disabled, TargetInfo enabled, and leaving an instance while in combat with one of the instance's mobs targeted (ticket #110)
    - - another attempt at fixing stack overflow related to dropdown menus for secure frames
    - - exposed upper text on snd bar since the string specified there is actually used by the module - disabled the potential duration text when the user has duration alpha set to 0
    - - potentially fix a stack overflow that's been popping up sometimes when mousing over the player health bar
    - - fixed a bug where an error message would pop up when enabling the FocusHealth module while a unit is focused that has a raid icon assigned to it
    - - fixed custom bars not monitoring weapon enchants/poisons correctly - fixed custom bars and cooldown bars drawing at full alpha at all times
    - - fixed the threat bar flickering in configuration mode
    - - added spell ids for holy word: sanctuary and serenity since GetSpellCooldown() is bugged with them by name
    - - converted DHUD skin from blp to tga because it's acting funny as a blp (ticket #106)
    - - made sure that the new custom text colors get set before using them
    - - added custom upper/lower text coloring to custom buff/debuff bars and custom cooldown bars since they don't have any dogtag support - fixed lower text to be visible on custom buff/debuff bars and custom cooldown bars - fixed upper/lower text blocks in the text settings page to not be multi-line if the module doesn't support dogtags so that everything is laid out more cleanly
    - - re-arranged text settings page so that options are laid out more clearly/naturally
    - - split the "buffs per row" setting to exist in both buffs and debuffs sub-groups instead of being a module-wide setting (ticket #103)
    - - added an option to enable/disable mouse interaction on totems
    - - fixed debuffs on info modules not drawing the proper colored border for the type of debuff - fixed buffs not displaying the stealable border for mages if they were stealable
    - - fixed an error when changing from a profile with markers on a module to one with fewer/no markers on the same module
    - - fixed SnD bar (and potential duration bar) to show and hide much more reliably. previously it would sometimes not display the potential duration or the entire module would be visible when it shouldn't be - fixed SnD duration bonus from glyph (to 6 seconds from 3)
    - - fixed some errors that could pop up with totems and custom bars
    - - fixed low threshold flashing on custom bars
    - - added support for custom buff/debuff trackers to be able to track totems by name
    - - fixed layer ordering such that icons draw in front of bars again
    - - minor performance optimizations in class counter modules (holy power, shards)
    - - changed custom cooldown bars back to never forcefully hide themselves when set to 'always' display mode. they will now respect the global transparency settings instead. seems like i can't make everyone happy with this setting but this behavior is the most consistent with the rest of the mod
    - - added user-submitted CleanCurvesOutline texture which allows DHUD-like casting to be placed on top of another bar and only the outline fills up instead of the whole bar
    - - more FAQ updates
    - - added a new FAQ
    - - never register disabled bars for updates
    - - fixed custom buff bars and cooldown bars multiplying alpha values when they shouldn't have been. at low alpha this meant that they were much more transparent than they should have been
    - - fixed pet health/mana modules getting stuck on the player when leaving an instance while on a vehicle
    - - re-fixed a bug causing the player mana module to not update color when a druid left an LFD instance while in a form and was immediately placed back on a mount and not in a form
    - - fixed configuration mode error in the player info module when the player had weapon buffs applied (ticket #104)
    - - patched up the TargetHealth (+ToTHealth +CustomHealth) modules to create the raid icon during CreateFrame() instead of Enable() to ensure that nothing's called in an unexpected order
    - - suppressed reported error in the runes module that shouldn't be able to happen (and i can't reproduce)
    - - added protection against potential nil access reported by a user. i can't reproduce it, though
    - - added a toggle for the "override alpha" behavior that displays class counters at in-combat alpha when out of combat if the counter isn't full/empty
    - - fixed the TargetInfo fixup code to only run once per profile instead of every time
    - - minor update to force a full redraw when entering/leaving an instance to help make sure the runes are in a good state
    - - set runes back to coloring themselves instead of having a gray border and maybe fixed the issue where the wrong texture could get applied to death runes
    - - fixed markers generating errors or just misbehaving when changing profiles (ticket #102)
    - - don't force-set the color of each rune since they're already set in the texture. this does remove the nice border coloration we had before, but oh well. setting colors on colored textures is bad.
    - - fixed PlayerInfo module misbehaving with temporary weapon enchants
    - - minor optimization in the threat bar - fixed threat bar to display properly again - added support for pets to the second highest threat feature
    - - fixed the GCD bar not animating
    - - mana modules animate regardless of 'predictedPower' setting now - fixed occasional flickering in the cast bar and threat bar when they are first displayed - minor code cleanup
    - - better fix for cast bars getting stuck sometimes - reinstated the code that was shutting off updates when a bar reached its desired scale
    - - reverted r761
    - - disabled an optimization that was overstepping its bounds and causing issues
    - - set the minimum update frequency to 0.067 (15 per second) because anything less just looks awful - clamped the update frequency on every load to force it to >= 15
    - - same fix as r763, but for the player's cast bar this time
    - - fixed the player's health and mana bars monitoring the wrong unit whenever the player leaves an instance while in a vehicle
    - - fixed markers not updating when a bar's inverse mode is changed - fixed markers not rotating with a bar when the rotation option is set at runtime
rokiyo:
    - - Suppress bar animations if update rate is less than 15/sec
    - - Reunited a local declaration with the code that used it.
    - - fixed buffs tiling in the wrong direction
Parnic:
    - - pedantically replaced sets of spaces with tabs. i'm that guy.
    - - fixed the eclipse bar turning gray when adjusting settings that caused a Redraw()
rokiyo:
    - - Fixed not being able to set icon sizes for debuffs - Rearranged the config screen for Info modules
Parnic:
    - - markers are now created at the proper alpha instead of 100%
    - - changed the 'update period' slider to represent number of updates per second instead of seconds between updates. now higher is more frequent and lower is less frequent which makes more sense to users
    - - fixed text staying hidden when disabling and re-enabling a module
    - - fixed an error popping up whenever a user had icehud disabled in its settings and tried to access the config page
    - - added LibDBIcon to the options module so that the minimap icon is toggleable again
    - - fixed a misplaced 'self'
    - - ripped ~1.3mb out of IceHUD itself and moved it into an LoD IceHUD_Options addon
rokiyo:
    - - removed check for shouldHideBarRotation, since all bars can now be rotated.
    - - Fixed Threat module's aggro bar positioning incorrectly - Fixed combining expand & reverse modes causing bars to position incorrectly. - All empty bars now skip resizing calculations and just Hide() immediately. - Threat & SnD modules now use the new bar resizing system. - Enabled expanding fill for SnD module
    - - Added support for rotated markers. - Enabled bar rotation for the Eclipse module.
    - - Added support for rotation in the new bar resizing system. - Enabled bar rotation for the CastBar module.
    - - Refactored how bars are created and resized. - Enabled the "expand" bar fill for the PlayerHealth module.
    - - Fixed: Markers stuck in inverted mode.
    - - A more fool-proof method for late font registration.
    - - Handling late font registration by using a default font while we wait for a callback.
Parnic:
    - - made all buffs/debuffs display on the info modules when in configuration mode - compressed buffs/debuffs on the info modules so that they will not make room for a large buff if the previous row never had a large buff on it. this fixes every row being separated by enough vertical space to make room for the larger of "buff size" and "own buff size" settings
    - - borrowed some code from PB4 to properly hide the DK Rune frame when the player frame is not hidden
    - - made class power counters continue to display as long as they're not full/empty (depending on the class)
rokiyo:
    - - Unbreaking some modules that broke in r731
Parnic:
    - - better fix to make sure modules always re-register for updates if they need to when they're shown
    - - made castbars always register themselves for updates when shown. fixes a bug where opening the map fullscreen while casting will stop the cast bars from updating (ticket #97)
rokiyo:
    - - Most modules now support a new bar filling mode: Expanding outwards from the middle.
    - - Never skip resizing player's own auras on redraw. Stops them resetting to normal aura icon size on UI reload.
Parnic:
    - - shamelessly ripped off code from pitbull4 to replace "set focus" with instructions on how to do so. begone, focus error reports!
rokiyo:
    - - Erroneous white space? I don't know what you're talking about... ¬.¬
    - - Aura handling cleanup. Duplication is evil!
Parnic:
    - - added a check for the player's mana type when PLAYER_ENTERING_WORLD fires so that we adjust properly when entering/leaving instances
    - - fixed yet more closure garbage being generated in the totems module. eventually i'm going to find all of it.
Rokiyo:
    - - Vengeance module now recycles tables instead of creating new ones all the time.
Parnic:
    - - fixed the target cast bar to not freeze up and reset itself whenever a UNIT_SPELLCAST_INTERRUPTIBLE / UNIT_SPELLCAST_NOT_INTERRUPTIBLE event fires
    - - fixed the cast bar to actually use the CastChanneling color when channeling. since this was apparently never hooked up, i also changed the default color for CastChanneling to match CastCasting so that long-time users won't notice the difference unless they've explicitly set a channeling color themselves
    - - fixed an error introduced in 1.7.2 where the playerinfo's dropdown menu was trying to use the target's data instead of the player's data - prevented the issue coming up in the future for petinfo as well
    - - fixed an error that could crop up when tweaking colors
    - - fixed bars that don't support dogtags in their text blocks to say so in the tooltip instead of telling the user that they can use dogtags when they can't
    - - fixed late registration of textures via LibSharedMedia so that the ToT bar texture gets updated appropriately
    - - made height of the ToT frame configurable by request
    - - extended vertical offset min/max for info modules (ticket #92)
    - - fixed the Eclipse bar not showing up since 1.7.2
    - - plugged a hole in the logic from r710 that could potentially cause a player to lose their lacerate/sunder/maelstrom module without creating a replacement custom counter if they never changed anything in the configuration for it (there would be no entry in the SavedVariables)
    - - attempt at auto-removing sunder/lacerate/maelstrom modules on load if the player has them enabled. this will automatically create a custom counter behind the scenes since those are much more fully-featured
    - - hid the "rotate 90 degrees" option on cast bars and eclipse bars since it just doesn't work very well and looks bad. users keep reporting that these are broken when rotating and since i don't have a good fix, i'm disabling the feature for now
    - - unified the behavior for configuration when a module is disabled. now the sub-configs (marker/text/icon settings) remain clickable but every element inside is disabled when the module is disabled. previously some sub-configs were not clickable at all and others were
    - - removed most of the rest of the garbage that was being generated during combat or when changing targets - reduced cpu usage by 33%-50% across the board (and more in some cases) by changing how updates are registered and how often they run. now the 'update period' slider actually matters. it defaults to 0.033 meaning that frames update about 30 times a second instead of every frame - fixed the "always" display mode for cooldown bars to respect alpha settings (ooc/with target/in combat/etc.)
    - - set X-WoWID metadata
    - - added level restrictions to shard and holy power class counters since players under 9/10 (different per bar, using constants provided by Blizzard) don't have those resources available yet
    - - finally (for reals, hopefully) fixed the gcd for all classes. gcd is a surprisingly difficult problem as there's no straightforward api for it
    - - largely untested (no errors on load) fix to the vengeance module not grabbing the player's max health until a UNIT_MAXHEALTH event fired
    - - set AceGUI-3.0-SharedMediaWidgets to load after LibSharedMedia
    - - drycode-moved LibDualSpec initialization from OnInitialize to OnEnable after the modules' frames are created and ready to go. maybe it'll actually work too!
    - - changed the pet health/mana bars to monitor the player whenever the player enters a vehicle since the player bars already change to display vehicle info in that situation
    - - added AceGUI-3.0-SharedMediaWidgets support to the font selection box and ToT bar texture selection
    - - fixed a bug causing bar font size adjustments to not take effect/display until a ui reload
    - - super temp hax to make the custom cd bar work with "Holy Word: Aspire". none of the spell api functions work when that spell is passed by name but they do work with the spell id, so i built a table of names => ids that gets checked before calling any api's
    - - missed a 'local' on a table in IceCore. whoops.
    - - added local copy of _G.IceHUD to modules that reference it frequently for a minor lookup speed boost
    - - added description text to each custom module explaining what type of module it is. it was pretty difficult to figure out what kind of custom module you were looking at in the config after you created it
    - - minor garbage generation fix (thanks Torhal!)
    - - fixed SetBottomText1 to propertly set text colors on the upper text line - eclipse bar now colors the numerical value to whatever direction the bar is heading
    - - more minor fixes to vengeance text formatting
    - - fixed Vengeance module to work for all classes
    - - initial rev of 'vengeance' module submitted by user Rokiyo
    - - fixed the lag bar being completely wrong when using a meeting stone to summon someone. (no UNIT_SPELLCAST_SENT event is fired that instance so lag can't be computed)
    - - put "tag: latest" back onto LibDogTag and LibDogTag-Unit
    - - very minor perf gain by not doing the per-frame update on invisible modules - nuked the primary offender of garbage generation. there is more to get rid of but finding it is a tedious process
    - - fixed error caused by disabling click targeting on the targethealth frame
    - - added option for non-dogtag users to hide each line of text on the TargetInfo module individually
    - - fixed totem module not resetting totems when going through a load screen (entering/leaving instance, etc.)
    - - fixed 'inverse' mode to work with potential SnD bar - expanded range of class power counters (shards, holy power) by request - fixed lacerate and sunder count modules to work with 3 max charges instead of 5 as per the new patch (these *really* need to go away and be auto-replaced by custom counters...) - yet another fix for text sometimes displaying the unit name for PetHealth - fixed how the 'second highest threat' bar is drawn so that it actually works with all textures
    - - removed ClickCastFrame unregistration to avoid problems with people who have the older version of clique (basically everyone)
    - - cleanup of mouse interaction for all modules
    - - fixed "allow click-targeting in combat" option for the new version of clique
    - - more fixes for compatibility between clique and the info modules
    - - setup clique unregistration for whenever the new clique changes go live
    - - RIP HungerForBlood module
    - - only create the fontstring for upper/lower text if it doesn't already exist. (sigh, garbage generation)
    - - fixed "bar visible" checkbox to also hide/show the solar portion of the eclipse bar
    - - fixed lower text popping back up when it shouldn't
    - - fixed snd glyph detection due to new return value on GetGlyphSocketInfo
    - - fixed certain buffs not displaying a tooltip on mouseover in the info modules
    - - fixed ability to set 'max count' to 0 and screw up a custom counter
    - - fixed bar text not properly hiding on bars that use RegisterUnitWatch to control visibility
    - - fixed scaling to affect the text and icons again like it used to
    - - added pulsing to the shard counter and holy power modules whenever they are maxed out. if this feature goes well then it should probably be ported over to the existing counter modules as well
    - - added option to use out-of-combat alpha on class power bars (holy power, shards) when targeting a friendly
    - - fixed icons on the target health bar not always hiding when they should
    - - potentially fixed reported error message though i've never seen it pop up myself - fixed one instance of some global taint (neglected to declare _ as a local var)
    - - fixed icons rotating with bars incorrectly when setting bar to be rotated 90 degrees
    - - fixed default rune frame showing up sometimes when the player has the "hide blizzard frame" option disabled in the runes module - fixed default runes from being incorrect (showing 6 blood runes) after re-enabling them from the runes module while the game is running
    - - drycoded a potential fix for configuration mode no longer working as of 1.7.0.3
    - - fixed CC module spell id's by removing spells/effects that no longer exist, adding some new ones, and updating id's of ones that have changed
    - - fixed entangling roots spell id's
    - - fixed text on bars using RegisterUnitWatch to be hidden properly (more fallout from the change in r644 - this was specific to people that had dogtag support disabled)
    - - more fixes to frame reparenting (from r644 - attempts to fix text when bars are rotated)
    - - attempt to fix ticket #81
    - - fixed text getting rotated along with bars when choosing the "rotate 90 degrees" option
    - - hopefully fixed gcd module to work for all classes without relying on specific spell ids
    - - fixed Blizzard's default runes to be properly hidden when the default player health frame is left enabled
    - - removed x-compat
    - - toc bump to 4.0 - removed LibHealComm-4.0 from OptionalDeps
    - - fixed rotation of inverted bars to draw the bar correctly - better method of turning the player and pet casting frames back when enabling the "show default cast bar" option in the player cast bar
    - - added ability for spell ids to be specified instead of names for custom bars and cooldown bars. when an id is typed it will attempt to resolve to the buff name
    - - minor change to pick up loc fix
    - - made sure to call UnregisterUnitWatch whenever the FocusHealth or a CustomHealth module is unloaded
    - - fixed /icehudcl to actually work again as a command-line interface to the options table (surprised this wasn't reported) - made the OpenConfig method able to close the dialog if it's already open. this restores old behavior that was lost in the move to ace3
    - - removed the "abbreviate health" option from the focus health bar if the user is using dogtags since it doesn't apply then - fixed the SnD potential bar to rotate properly with the main bar
    - - hid the "Low Threshold Color" option on custom bars and cooldown bars since the option doesn't apply to them - updated the description of a few "low threshold" settings so they make more sense to users (don't reference variable names)
    - - fixed the "low threshold" flash to work properly on rotated bars
    - - fixed incoming heal bar to display properly on 4.0 clients
    - - don't auto-hide the incoming heal bar when LibHealComm isn't available if the user is on 4.0
    - - added user-requested option to specify the space between each buff/debuff on the info modules
    - - tiny spacing update
    - - now that Eclipse doesn't decay, use the appropriate alpha value regardless of whether or not the user has some power left over. it used to stay at the "in combat" setting until the bar was back at 0 - fixed a bug with "hidden" mode for inactive shards/runes where the unactivated runes would show up darkened when changing targets out of combat
    - - added new DHUD bar texture set and alternate elite/rare icons by request (ticket 80). the earliest place we found these textures was in the original DHUD which has no license at all, so it should be okay to use them. they are called DHUD in the mod, so it's clear that i'm not trying to pretend that we made them up or they are unique to IceHUD
    - - added the ability to further customize the shard and holy power modules by displaying all the existing custom counter textures in place of shards/holy runes and colorizing them based on how many are available
    - - added highlighting around buffs on the targetinfo module (and other *info modules) that are spellstealable if the player is a mage
    - - allowed pvp and party role icons to be offset more
    - - evidently i neglected to add acelocale to pkgmeta back in r615 when localization came online. oops.
    - - fixed a bug where cooldown timers wouldn't always reset when an ability was brought off cooldown early
    - - replaced GetMasteryIndex with GetPrimaryTalentTree to work with the latest beta
    - - localized a few more strings
    - - first shot at localization of all configuration settings in IceHUD using AceLocale. note that all of these conversions were generated programmatically so it's possible that something went awry...very casual testing seemed okay, however.
    - - added the ability to duplicate an existing custom bar
    - - added LibDBIcon to optional deps
    - - apparently i had the LibDualSpec git path wrong. i should probably install TortoiseGit at some point
    - - setup the toc to properly strip out embeds.xml whenever it's building a no-lib version. wow, this has been broken forever. nice. - added support for LibDualSpec-1.0 - wrapped a bit of debug code in --@debug@
    - - added some more protection against people tweaking settings or changing profiles while in combat and added a warning message explaining that stuff could be broked if they manage to do it anyway - fixed cooldown bars that are set to "when ready" to be properly hidden when the module is disabled or profiles are changed
    - - added calls to disable updates on custom modules as they are disabled so that they don't stick around on screen when they shouldn't
    - - minor fixes to enabling a module and how updates are handled that should allow custom modules to react appropriately when they are enabled while a player has the buff they're monitoring
    - - fix for custom modules generating a ton of errors if they're disabled while active (such as when changing profiles). there is still a bug where they stop running their updates like they're supposed to, but this will at least take care of the error spam
    - - added a tooltip to the LDB launcher
    - - set custom counters to display out of combat if they are not 0
    - - nuked the HungerForBlood module if the user is on a 4.0+ client since the ability is going away
    - - minor cleanup of the GCD module to make it (hopefully) more reliable - doubled the maximum width of the rangecheck frame to ideally knock out the occasional complaint that certain fonts make the text spill onto a second line (never seen that myself)
    - - moved all "icons" settings from being under a header to being in their own group. this should unify the "icon settings" features of all modules
    - - added party role icon to TargetHealth module (and CustomHealth by virtue of inheritance)
    - - minor cleanup of unused stuff in IceCore - fixed the GCD to update its bar color as the user changes it instead of requiring re-enabling the module or reloading the ui - clarified some tooltip text on the TargetInfo module's text blocks - added DogTag support to the ToT module by request
    - - fixed the GCD module to be available in the module settings list again - tweaked options visibility and made 'bg visible' work on the GCD module
    - - fixed a bug where the combat icon would get stuck if you went into combat when resting but had the resting icon display disabled - made the combat icon replace the resting icon if you go into combat while resting and then switch back to the resting icon (if appropriate) when dropping combat
    - - changed all step = 10 to step = 1 by request - widened range of possible vertical offset values for the custom counter module by request
    - - fixed the mirror bar: changed function declaration "class.new" to "class:new" in IceCore_CreateClass so that "self" doesn't get included in ... when init is called. this was causing an off-by-one error in the order of parameters passed to mirrorbar's "init" method and surprisingly didn't break anything else (looks like judicious use of 'ifs' in some defensive coding saved the rest of the modules); thanks to mitch0 for the report - added an argument to IceElement's init function that allows modules to skip the registration with the core. mirrorbars need this since they are created on demand and not saved with the rest of the bars
    - - removed the last remnants of Ace2 (AceOO-2.0 and AceLibrary) thanks to a huge amount of help from ckknight for metatables
    - - fixed up several "hide blizzard frame" options to re-display when the module is disabled and to call blizzard's OnLoad for the frame instead of manually entering every event to re-register - fixed "show incoming heals" option to be properly toggleable on 4.0 (bad conditional on the 'disabled' option) - hid "cooldown mode" option on the totems module since there was never more than one choice
    - - re-added "enabled" checkbox in the settings to allow users to completely enable/disable the mod (this seems to have been something we got for free with one of the ace2 libraries and is no longer present after the move to ace3)
    - - registered callback for media updates from LibSharedMedia so that the mod can be refreshed if necessary
    - - added libstub to pkgmeta/embeds. why wasn't it there already?
    - - minor optimization of frame rotation by un-registering the event listening for animation completion after it has done its job - made GCD module animation smooth by utilizing the existing animation system instead of trying to run another repeating timer over the top
    - - fixed up a few areas that were expecting moduleSettings.markers to be non-nil; this isn't the case on user-created custom bars that existed prior to the marker code coming in - hide the marker settings on the GCD module as they don't make much sense to have there
    - - after renaming a custom module, set the mod to automatically select it in the options menu
    - - added setting to hide the new marker settings for certain bar types - hid marker settings for the eclipse bar since it controls the placement and defines a single marker itself
    - - added support for defining markers on any bar (ticket 75)
    - - added rough implementation of horizontal bars by abusing some features of Blizzard's UI animation system. we'll see if there's any actual demand for this to determine if the feature needs to be improved at all
    - - fixed up a couple more modules with an empty 'animation settings' header and some too-long options that were being ellipsised (is that a word? it is now.)
    - - big giant options screen usability cleanup: - colorized the FAQ and Module Settings description text to be more readable - removed custom coloring from certain options that didn't match the rest - hid a few debug-only settings - consolidated all the 'create custom module' buttons into a drop-down + create button - clarified description of some options so that their intent/purpose is more clear - moved around/cleaned up headers for consistency - doubled the width of long options so that they don't get cut off and ...'d
    - - AceSerializer isn't packaged with the addon just yet since its usage is still in development, so don't error out if LibStub can't find it
    - - fixed a bug introduced in r570 where custom modules had to be deleted twice before they'd go away (they were registering themselves twice) - made all pop-up dialogs display in the tooltip strata so that they draw on top of the options screen. each pop-up resets itself to dialog once it's hidden - made custom modules get auto-selected in the options screen after they're created
    - - removed Deformat as it's no longer necessary - removed FuBarPlugin from the toc since it's not used any more
    - - added basic implementation of Druid Eclipse bar for balance druids
    - - removed a few old CancelScheduledEvent calls on bars that weren't actually scheduling any repeating timers any more and added a few CancelTimers to modules that weren't previously canceling their scheduled timers - converted CancelScheduledEvent to CancelTimer for modules that are still scheduling repeating timers...not sure why CancelScheduledEvent didn't throw any errors (since i don't see how it exists) but whatever - removed a bunch of "function() self:Thing() end" closures in ScheduleRepeatingTimer calls that didn't need to be there
    - - fixed FocusMana to actually work
    - - abstracted the HolyPower module's functionality to a ClassPowerCounter module since the warlock shard bar is functionally identical to holy power - added shard bar inheriting from ClassPowerCounter. same basic functionality as the holy power module: graphical mode that shows the default shards and numeric mode that just displays a count of active shards
    - - replaced AceEvent-2.0 with AceEvent-3.0/AceTimer-3.0
    - - fixed reported taint issue from people joining or leaving a party in combat with the "hide blizzard party frames" option set on the PlayerHealth module
    - - updated all UnitPower* code to use the SPELL_POWER_* constants instead of hardcoding numbers...mostly just a readability change
    - - fixed a bug where custom counters were not getting reset on target change or player death. this could cause an issue where the counter would not update when it should
    - - potentially fix some text overflow issues that were reported with the range finder
    - - added LibDBIcon to bring back the minimap icon
    - - don't hide the Blizzard version of Holy Power by default since we're not hiding the Blizzard player frame by default
    - - removed FuBarPlugin-2.0 as it's no longer used
    - - added a bit more user friendliness to the new configuration page. efforts to increase awareness about how to setup the mod and get help are ongoing
    - - added a message to the PlayerInfo module when trying to dismiss a buff in cataclysm explaining that the API is currently protected and unable to fixed. this will be removed when Blizzard gives us a way to work around it - added upgrade detection to alert users that their profile may need to be re-selected if the last version they ran was pre-ace3-conversion - added an FAQ section to the /icehud configuration page so that users don't have to go to one of the addon hosting sites to get their questions answered
    - - tweaked rune width/height to match blizzard's default
    - - added basic implementation of Holy Power for Cataclysm Paladins. has a graphical mode (basically matches Blizzard's built-in frame without the background) and numeric mode (which just displays the number of runes active as 0/1/2/3)
    - - modified last commit to use a new local variable for the UnitGroupRolesAssigned check in order to avoid stepping on a different usage of "role" in the surrounding code
    - - updated UnitGroupRolesAssigned check for the new return value
    - - added proper color for player focus (cataclysm hunters) on the PlayerMana module - minor documentation fix for the incoming heal notification on the player health bar to indicate that it requires either libhealcomm-4 or cataclysm to function
    - - embedded libdatabroker and removed old fubar code
    - - updated to use UnitGetIncomingHeals instead of LibHealComm when running cataclysm client. doesn't seem to work with HoTs at the moment, so that's something to keep an eye on as the beta progresses
    - - set LibRangeCheck and LibDogTag(-Unit) to pull from trunk instead of the latest tag in order to pick up cataclysm fixes - set X-Compatible-With to 40000
    - - fixed runes 'alpha' mode display for cataclysm (also works on live realms). apparently RUNE_POWER_UPDATE no longer passes 'usable' as the second argument, so usability needs to be grabbed from GetRuneCooldown instead
    - - converted most of the mod to ace3. the only ace2 remaining is AceEvent-2 (probably easy to get away from) and AceOO-2 (not so easy) - the ace3 conversion also broke the dependence on Waterfall and gave a much better configuration screen through AceConfigDialog; plus Waterfall is very broken in Cataclysm and it's unclear whether anyone will bother to fix it or not - fixed a bug with the custom CD bar when changing profiles where it would generate endless errors until a reloadui - removed DewDrop library as it was no longer in use - temporarily removed FuBar plugin as it doesn't work as a mixin with AceAddon-3. i will eventually be bringing this back in some form (before the next full release version) - removed an unused 'about' button on the config page and some empty headers...not sure why they were ever there
    - - simplified GCD module to pass the spell id when calling GetSpellCooldown; apparently this didn't work at some point in time but was fixed around 3.3.2ish and works in cata as well
    - - missed an event registration for UNIT_HAPPINESS in PetHealth; changed to UNIT_POWER for cataclysm
    - - fixes for cataclysm: added UNIT_POWER/UNIT_MAXPOWER event registrations in place of all the old power types, fixed mirror bar, targetinfo, and targetoftarget SetScripts to pass 'this' and 'arg#' around where necessary - still broken for cata: GlobalCoolDown module, LibDogTag (needs to be fixed by one of its maintainers or I need to port to LuaTexts...fixing dogtag would be vastly easier), and Waterfall (not sure what to do about this one just yet)
    - - forcibly set bar upper/lower text width to 0 after setting their contents so that they auto-resize to the proper width. some massive bar/font sizes were causing strings to get cut off
    - - fixed potential taint issues on PetHealth bar by using (Un)RegisterUnitWatch instead of manually showing/hiding it
    - - added focustarget and pettarget as valid units to look for buffs/debuffs on with a custom bar - made custom bars able to track auras (buffs with no end time like paladin auras, righteous fury, stealth, etc.)
    - - fixed a few taint issues in the ToTHealth and CustomHealth modules - removed some duplicated code in CustomHealth for click-targeting
    - - fixed a few edge cases where custom cooldown bars would not display when the spell was ready and the bar was set to "when ready" mode. this could happen if the player ran out of mana then gained enough back to cast the spell or for ranged spells where the target moved in and out of range
    - - added generic custom health and mana bars so that users can monitor any unit they want complete with click-targeting/-casting
    - - added click-targeting to pet health module
    - - added optional scaling to spell icons on the cast bars, custom bars, and cooldown bars
    - - fixed bars disappearing when they were set to reverse and they filled up - also fixed an issue where de

Additional Files