comparison CallbackFactory.lua @ 13:6cb9a2936580

Miscellanous Lua code consistency improvements: - no semicolon except between statements on same line - use of implicit cast to bool in if/while conditions, instead of various eq/neq against true, false or nil - no parenthesis around if/while conditions (C-ism) - avoid long function calls in if conditions - removed space in comma-separated expressions lists in multiple assignments - added spaces between arguments of functions calls - use tabs for indentation (in Lua files only) - don't reverse == in if conditions, like "if 42==foo then" (C-ism) - removed some extra parenthesis in complex expressions (C-ism) - added spaces around operators in most expressions for ease of reading - added comma after last element of table initializers - removed space after # operator - moved comment prefix of disabled code into tab (to keep disabled code aligned)
author madcatzinc@35b17cf1-18cd-47ff-9ca3-31d6b526ef09
date Thu, 25 Apr 2013 01:29:45 +0000
parents d186f8cd5000
children 3b1c0b676583
comparison
equal deleted inserted replaced
12:72b92b3e476e 13:6cb9a2936580
1 --~ Warcraft Plugin for Cyborg MMO7 1 --~ Warcraft Plugin for Cyborg MMO7
2 --~ Filename: CalbackFactory.lua 2 --~ Filename: CalbackFactory.lua
3 --~ Description: Creates lua callbacks that can be executed from a user keycombination 3 --~ Description: Creates lua callbacks that can be executed from a user keycombination
4 --~ Copyright (C) 2012 Mad Catz Inc. 4 --~ Copyright (C) 2012 Mad Catz Inc.
5 --~ Author: Christopher Hooks 5 --~ Author: Christopher Hooks
6 6
19 --~ Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA. 19 --~ Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
20 20
21 CyborgMMO_CallbackFactory = { 21 CyborgMMO_CallbackFactory = {
22 new = function() 22 new = function()
23 local self = {} 23 local self = {}
24 self.Frame = CreateFrame("Frame","CallbackFactoryFrame", UIParent); 24 self.Frame = CreateFrame("Frame", "CallbackFactoryFrame", UIParent)
25 self.Callbacks = {} 25 self.Callbacks = {}
26 self.Id = 1; 26 self.Id = 1
27 27
28 self.AddCallback = function(fn) 28 self.AddCallback = function(fn)
29 local name = "Button"..self.Id 29 local name = "Button"..self.Id
30 self.Callbacks[name] = CreateFrame("Button", name, self.Frame) 30 self.Callbacks[name] = CreateFrame("Button", name, self.Frame)
31 self.Callbacks[name]:SetScript("OnClick", fn); 31 self.Callbacks[name]:SetScript("OnClick", fn)
32 self.Id = self.Id + 1; 32 self.Id = self.Id + 1
33 return self.Callbacks[name], self.Frame, name; 33 return self.Callbacks[name],self.Frame,name
34 end 34 end
35 35
36 self.RemoveCallback = function(name) 36 self.RemoveCallback = function(name)
37 self.Callbacks[name] = nil 37 self.Callbacks[name] = nil
38 end 38 end
39 39
40 self.GetCallback = function(callbackName) 40 self.GetCallback = function(callbackName)
41 local callback = nil 41 local callback = nil
42 if("Map" == callbackName) then 42 if callbackName == "Map" then
43 callback = self.ToggleMap; 43 callback = self.ToggleMap
44 elseif("CharacterPage" == callbackName) then 44 elseif callbackName == "CharacterPage" then
45 callback = self.ToggleCharacterPage; 45 callback = self.ToggleCharacterPage
46 elseif("Spellbook" == callbackName) then 46 elseif callbackName == "Spellbook" then
47 callback = self.ToggleSpellbook; 47 callback = self.ToggleSpellbook
48 elseif("Macros" == callbackName) then 48 elseif callbackName == "Macros" then
49 callback = self.ToggleMacros; 49 callback = self.ToggleMacros
50 elseif("QuestLog" == callbackName) then 50 elseif callbackName == "QuestLog" then
51 callback = self.ToggleQuests; 51 callback = self.ToggleQuests
52 elseif("Achievement" == callbackName) then 52 elseif callbackName == "Achievement" then
53 callback = self.ToggleAchievements; 53 callback = self.ToggleAchievements
54 elseif("Inventory" == callbackName) then 54 elseif callbackName == "Inventory" then
55 callback = self.ToggleBags; 55 callback = self.ToggleBags
56 end; 56 end
57 return callback; 57 return callback
58 end 58 end
59 59
60 60
61 self.ToggleMap = function() 61 self.ToggleMap = function()
62 ToggleFrame(WorldMapFrame) 62 ToggleFrame(WorldMapFrame)
66 ToggleCharacter("PaperDollFrame") 66 ToggleCharacter("PaperDollFrame")
67 end 67 end
68 68
69 self.ToggleSpellbook = function() 69 self.ToggleSpellbook = function()
70 ToggleFrame(SpellBookFrame) 70 ToggleFrame(SpellBookFrame)
71 if(SpellBookFrame:IsShown()) then 71 if SpellBookFrame:IsShown() then
72 SpellbookMicroButton:SetButtonState("PUSHED", 1); 72 SpellbookMicroButton:SetButtonState("PUSHED", 1)
73 else 73 else
74 SpellbookMicroButton:SetButtonState("NORMAL"); 74 SpellbookMicroButton:SetButtonState("NORMAL")
75 end 75 end
76 end 76 end
77 77
78 self.ToggleMacros = function() 78 self.ToggleMacros = function()
79 if(MacroFrame:IsShown() and MacroFrame:IsVisible()) then 79 if MacroFrame:IsShown() and MacroFrame:IsVisible() then
80 HideUIPanel(MacroFrame); 80 HideUIPanel(MacroFrame)
81 else 81 else
82 ShowMacroFrame(); 82 ShowMacroFrame()
83 end 83 end
84 end 84 end
85 85
86 self.ToggleQuests = function() 86 self.ToggleQuests = function()
87 ToggleFrame(QuestLogFrame); 87 ToggleFrame(QuestLogFrame)
88 if ( QuestLogFrame:IsShown() ) then 88 if QuestLogFrame:IsShown() then
89 QuestLogMicroButton:SetButtonState("PUSHED", 1); 89 QuestLogMicroButton:SetButtonState("PUSHED", 1)
90 else 90 else
91 QuestLogMicroButton:SetButtonState("NORMAL"); 91 QuestLogMicroButton:SetButtonState("NORMAL")
92 end 92 end
93 end 93 end
94 94
95 self.ToggleAchievements = function() 95 self.ToggleAchievements = function()
96 ToggleAchievementFrame(); 96 ToggleAchievementFrame()
97 if ( AchievementFrame and AchievementFrame:IsShown() ) then 97 if AchievementFrame and AchievementFrame:IsShown() then
98 AchievementMicroButton:SetButtonState("PUSHED", 1); 98 AchievementMicroButton:SetButtonState("PUSHED", 1)
99 else 99 else
100 if ( ( HasCompletedAnyAchievement() or IsInGuild() ) and CanShowAchievementUI() ) then 100 if (HasCompletedAnyAchievement() or IsInGuild()) and CanShowAchievementUI() then
101 AchievementMicroButton:Enable(); 101 AchievementMicroButton:Enable()
102 AchievementMicroButton:SetButtonState("NORMAL"); 102 AchievementMicroButton:SetButtonState("NORMAL")
103 else 103 else
104 AchievementMicroButton:Disable(); 104 AchievementMicroButton:Disable()
105 end 105 end
106 end 106 end
107 end 107 end
108 108
109 self.ToggleBags = function() 109 self.ToggleBags = function()
110 ToggleAllBags(); 110 ToggleAllBags()
111 end 111 end
112 return self; 112 return self
113 end, 113 end,
114 114
115 m_Instance = nil, 115 m_Instance = nil,
116 116
117 Instance = function() 117 Instance = function()
118 if(nil == CyborgMMO_CallbackFactory.m_Instance) then 118 if not CyborgMMO_CallbackFactory.m_Instance then
119 CyborgMMO_CallbackFactory.m_Instance = CyborgMMO_CallbackFactory.new(); 119 CyborgMMO_CallbackFactory.m_Instance = CyborgMMO_CallbackFactory.new()
120 end 120 end
121 return CyborgMMO_CallbackFactory.m_Instance; 121 return CyborgMMO_CallbackFactory.m_Instance
122 end 122 end,
123
124
125 } 123 }
126 124
127 125