From be62016551c9c2632e971838dc5b4bb6f8113dd3 Mon Sep 17 00:00:00 2001 From: James Whitehead II Date: Sun, 17 Oct 2010 15:20:08 +0100 Subject: [PATCH] Only register clicks on enabled, non-blacklisted frames --- Clique.lua | 26 ++++++++++++++++++++++---- 1 file changed, 22 insertions(+), 4 deletions(-) diff --git a/Clique.lua b/Clique.lua index da03c9d..5de99f0 100755 --- a/Clique.lua +++ b/Clique.lua @@ -192,10 +192,14 @@ function addon:RegisterFrame(button) self.ccframes[button] = true - if self.settings.downclick then - button:RegisterForClicks("AnyDown") - else - button:RegisterForClicks("AnyUp") + local name = button.GetName and button:GetName() + if not self.settings.blacklist[name] then + print("Register for clicks", name) + if self.settings.downclick then + button:RegisterForClicks("AnyDown") + else + button:RegisterForClicks("AnyUp") + end end -- Wrap the OnEnter/OnLeave scripts in order to handle keybindings @@ -596,6 +600,19 @@ function addon:UpdateCombatWatch() end end +function addon:UpdateRegisteredClicks() + for button, enabled in pairs(self.ccframes) do + local name = button.GetName and button:GetName() + if not self.settings.blacklist[name] and enabled then + if self.settings.downclick then + button:RegisterForClicks("AnyDown") + else + button:RegisterForClicks("AnyUp") + end + end + end +end + function addon:UpdateBlacklist() local bits = { "blacklist = table.wipe(blacklist)", @@ -608,6 +625,7 @@ function addon:UpdateBlacklist() end addon.header:Execute(table.concat(bits, ";\n")) + addon:UpdateRegisteredClicks() end function addon:EnteringCombat() -- 1.7.9.5