view Modules/Debug.lua @ 74:71de6e86a1a4 release 2010-07-29

Fixed a bug where tradeskill that don't produce items, like Inscription Research, cause IA to crash. Added some API enhancements. Added ArkInventory as an optional dependency so it will be loaded before IA.
author Asa Ayers <Asa.Ayers@Gmail.com>
date Thu, 29 Jul 2010 22:33:50 -0700
parents e7d287cc3b02
children
line wrap: on
line source
local ItemAuditor = select(2, ...)
local Debug = ItemAuditor:NewModule("Debug")
local ItemAuditor = ItemAuditor

function ItemAuditor:Debug(msg, ...)
	msg = format(msg, ...)
	self:Log(msg, " |cffffff00DEBUG")
end

function ItemAuditor:Log(message, prefix)
	prefix = prefix or ""
	ItemAuditor_DebugFrameTxt:AddMessage(format("%d%s|r: %s", time(), prefix, tostring(message)))
end

function ItemAuditor:GetDebug(info)
       return self.db.profile.messages.debug
end

function ItemAuditor:SetDebug(info, input)
       self.db.profile.messages.debug = input
       local value = "off"
       if input then
               value = "on"
       end
       self:Print("Debugging is now: " .. value)
end

local function DebugEventRegistration()
	ItemAuditor.OriginalRegisterEvent = ItemAuditor.RegisterEvent 
	ItemAuditor.OriginalUnregisterEvent = ItemAuditor.UnregisterEvent

	function ItemAuditor:RegisterEvent(event, callback, arg)
	   self:Debug("RegisterEvent " .. event )
	   if arg ~= nil then
	      ItemAuditor:OriginalRegisterEvent(event, callback, arg)
	   elseif callback ~= nil then
	      ItemAuditor:OriginalRegisterEvent(event, callback)
	   else
	      ItemAuditor:OriginalRegisterEvent(event)
	   end
	end

	function ItemAuditor:UnregisterEvent(event)
		self:Debug("UnregisterEvent " .. event )
		ItemAuditor:OriginalUnregisterEvent (event)
	end

end





-- DebugEventRegistration()