view BuffFrame/BuffFrame.lua @ 51:4586229986e6

disambiguate local module names
author Nenue
date Fri, 29 Apr 2016 10:52:57 -0400
parents d7655c4e6e06
children 07ef62fe201f
line wrap: on
line source
--------------------------------------------
-- Veneer
-- Nick
-- @project-revision@ @project-hash@
-- @file-revision@ @file-hash@
-- Created: 4/28/2016 5:58 AM
--------------------------------------------

local B = select(2,...).frame
local Aura = B:RegisterModule('BuffFrame')

Aura.PlayerBuffsActive = {}
function Aura:OnInitialize()
  local displays = Aura.displays

  -- suffix tables
  Aura.drawn = B.Abstract(displays, 'drawn', Aura.drawn )
  -- Lesser extent of guide frames that have been positioned
  Aura.positioned = B.Abstract(displays, 'positioned', Aura.positioned)
  -- Backdrop style frame
  Aura.decors = B.Abstract(displays, 'decorator', Aura.decors)
  -- Static positioning frames
  Aura.guides = B.Abstract(displays, 'guides', Aura.guides)
  -- Anchor points for guides
  Aura.anchors = B.Abstract(displays, 'anchor', Aura.anchors)
  -- Stored functions for doing icon texture adjustments
  Aura.zoom = B.Abstract(displays, 'zoom', Aura.zoom )


  for name, display in pairs(displays) do
    display.conf = setmetatable({}, {
      __index = function(_, k)
        --print('config check '.. name .. k)
        return Aura.Conf[name .. k] or Aura.Conf['BuffButton' .. k]
      end,
      __newindex = function(_, k , v)
        Aura.Conf[name..k] = v
      end,
    })
  end

  Aura:RegisterUnitEvent("UNIT_AURA", "player", "vehicle")
  Aura:RegisterEvent("GROUP_ROSTER_UPDATE")
  Aura:RegisterEvent("PLAYER_SPECIALIZATION_CHANGED")
  hooksecurefunc("BuffFrame_UpdateAllBuffAnchors", Aura.PostBuffAnchors)
  hooksecurefunc("RaidBuffTray_Update", Aura.UpdateRaidBuffs)
end

function Aura:OnUpdate ()
  local displays = Aura.displays
  Aura.ShowConsolidated = (IsInGroup() and GetCVarBool("consolidateBuffs"))
  Aura.ShowMissingBuffs = (IsInGroup() and Aura.Conf.RaidShowMissing)

  for name, auraType in pairs(displays) do

    Aura.UpdateBuffs(auraType.buffName, true)
    --print(name, auraType)
    _G[name..'Anchor']:EnableMouse(B.Conf.ConfigMode)
  end

  Aura.UpdateRaidBuffs()
  Aura.UpdateBuffsTodo()
end