All pastes #94538 Raw Edit

Something

public lua v1 · immutable
#94538 ·published 2006-07-21 09:23 UTC
rendered paste body
MessageEvent = AceLibrary("AceAddon-2.0"):new("AceHook-2.0", "AceConsole-2.0")function MessageEvent:OnInitialize()	self:RegisterChatCommand({"/mess", "/messevent"}, {		type = "group",		args = {			show = {				name = 'show', type = 'text',				desc = 'Enable event messages for a single chatFrame, or all chatFrames.',				validate = { 'all', '1', '2', '3', '4', '5', '6', '7' },				get = false,				set = function(frame)				  self:EventsToggle(true, frame)				  self:Print("Events now shown for ["..frame.."].")				end,			},			hide = {				name = 'hide', type = 'text',				desc = 'Disable event messages for a single chatFrame, or all chatFrames.',    			validate = { 'all', '1', '2', '3', '4', '5', '6', '7' },				get = false,    			set = function(frame)				  self:EventsToggle(false, frame)				  self:Print("Events now hidden for ["..frame.."].")				end,			},			report = {			    name = 'report', type = 'execute',			    desc = 'Reports the hook status of all the chatFrames.',			    func = function()				  for i=1,7 do				    local frame = getglobal("ChatFrame"..i)				    self:Print("ChatFrame"..i.." is hooked: ["..tostring(self:IsHooked(frame, "AddMessage")).."].")				  end			    end,			},		},	})endfunction MessageEvent:OnDisable()	self:UnhookAll()endfunction MessageEvent:EventsToggle(aShow, aFrame)	if string.lower(aFrame) == "all" then		for i=1,7 do		    local frame = getglobal("ChatFrame"..i)		    if not aShow and self:IsHooked(frame, "AddMessage") then		   	   self:Unhook(frame, "AddMessage")			elseif not self:IsHooked(frame, "AddMessage") then			   self:Hook(frame, "AddMessage")			end		end				return	end		local num = tonumber(aFrame)    local frame = getglobal("ChatFrame"..num)    if not aShow and self:IsHooked(frame, "AddMessage") then	   self:Unhook(frame, "AddMessage") 	elseif not self:IsHooked(frame, "AddMessage") then	   self:Hook(frame, "AddMessage")	endendfunction MessageEvent:AddMessage(frame, text, r, g, b, id)	self.hooks[frame]["AddMessage"].orig(frame,                                         text.." ["..tostring(event).."]",	                                     r, g, b, id)end