From 5371b61aa0bf2d614ac316c2ac86ca7112353fa9 Mon Sep 17 00:00:00 2001 From: James Whitehead II Date: Thu, 13 Jan 2011 17:48:47 +0000 Subject: [PATCH] Add an option to not display 'old' messages --- CaptainsLog.lua | 34 +++++++++++++++++++++++----------- 1 file changed, 23 insertions(+), 11 deletions(-) diff --git a/CaptainsLog.lua b/CaptainsLog.lua index 5ffd31e..501e590 100644 --- a/CaptainsLog.lua +++ b/CaptainsLog.lua @@ -15,6 +15,9 @@ local C = { raid = RAID, } +local MINUTE = 60 +local HOUR = MINUTE * 60 + function addon:Initialize() self.db = LibStub("AceDB-3.0"):New("CaptainsLogDB", { char = { @@ -25,8 +28,9 @@ function addon:Initialize() profile = { timestamp = true, timestamp_format = "%H:%M ", + msg_life = 6 * HOUR, buffersize = { - ["*"] = 10, + ["*"] = 15, }, ignoreself = { ["*"] = true, @@ -135,6 +139,8 @@ function addon:PopulateTooltip(tooltip) end table.sort(sort) + local now = time() + for idx, mtype in ipairs(sort) do if addon.db.profile.showintooltip[mtype] then local color = ChatTypeInfo[colorMap[mtype]] or {} @@ -145,19 +151,25 @@ function addon:PopulateTooltip(tooltip) tooltip:AddLine(C[mtype] or mtype) + local msgShown = false if #self.messages[mtype] > 0 then - for idx, msg in ipairs(self.messages[mtype]) do - local timestamp = " " - if addon.db.profile.timestamp then - timestamp = date(addon.db.profile.timestamp_format, msg[1]) + for idx = 1, #self.messages[mtype], 1 do + local msg = self.messages[mtype][idx] + if now <= msg[1] + addon.db.profile.msg_life then + msgShown = true + local timestamp = " " + if addon.db.profile.timestamp then + timestamp = date(addon.db.profile.timestamp_format, msg[1]) + end + + tooltip:AddLine( + string.format("%s[%s]: %s", timestamp, msg[2], msg[3]), + color.r, color.g, color.b + ) end - - tooltip:AddLine( - string.format("%s[%s]: %s", timestamp, msg[2], msg[3]), - color.r, color.g, color.b - ) end - else + end + if not msgShown then tooltip:AddLine(L["No messages"]) end end -- 1.7.9.5