Mercurial > wow > cyborg-mmo7
comparison RatPageModel.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 | 8428fa7cf0e4 |
children | 9f2d838d4f8e |
comparison
equal
deleted
inserted
replaced
12:72b92b3e476e | 13:6cb9a2936580 |
---|---|
1 --~ Warcraft Plugin for Cyborg MMO7 | 1 --~ Warcraft Plugin for Cyborg MMO7 |
2 --~ Filename: RatPageModel.lua | 2 --~ Filename: RatPageModel.lua |
3 --~ Description: Code model of the MMO7 mouse | 3 --~ Description: Code model of the MMO7 mouse |
4 --~ Copyright (C) 2012 Mad Catz Inc. | 4 --~ Copyright (C) 2012 Mad Catz Inc. |
5 --~ Author: Christopher Hooks | 5 --~ Author: Christopher Hooks |
6 | 6 |
17 --~ You should have received a copy of the GNU General Public License | 17 --~ You should have received a copy of the GNU General Public License |
18 --~ along with this program; if not, write to the Free Software | 18 --~ along with this program; if not, write to the Free Software |
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 -- Constants -- | 20 -- Constants -- |
21 | 21 |
22 local RAT7 = { BUTTONS = 13, MODES = 3, SHIFT = 0} | 22 local RAT7 = { |
23 BUTTONS = 13, | |
24 MODES = 3, | |
25 SHIFT = 0, | |
26 } | |
23 | 27 |
24 local MIDDLEMOUSE = 1; | 28 local MIDDLEMOUSE = 1 |
25 | 29 |
26 CyborgMMO_RatPageModel = { | 30 CyborgMMO_RatPageModel = { |
27 new = function() | 31 new = function() |
28 local self = {} | 32 local self = {} |
29 self.m_Mode = 1; | 33 self.m_Mode = 1 |
30 self.ObserverCount = 0; | 34 self.ObserverCount = 0 |
31 self.ObserverList = {} | 35 self.ObserverList = {} |
32 self.Data = {} | 36 self.Data = {} |
33 | 37 |
34 for i = 1,RAT7.MODES do | 38 for i=1,RAT7.MODES do |
35 self.Data[i] = {} | 39 self.Data[i] = {} |
36 for j = 1, RAT7.BUTTONS do | 40 for j=1,RAT7.BUTTONS do |
37 self.Data[i][j] = {}; | 41 self.Data[i][j] = {} |
38 end | 42 end |
39 end | 43 end |
40 | 44 |
41 self.InitSaveData = function(data) | 45 self.InitSaveData = function(data) |
42 for i = 1,RAT7.MODES do | 46 for i=1,RAT7.MODES do |
43 if (nil == data["Rat"][i]) then | 47 if not data["Rat"][i] then |
44 data["Rat"][i] = {} | 48 data["Rat"][i] = {} |
45 end | 49 end |
46 for j = 1, RAT7.BUTTONS do | 50 for j=1,RAT7.BUTTONS do |
47 if (nil == data["Rat"][i][j]) then | 51 if not data["Rat"][i][j] then |
48 data["Rat"][i][j] = {} | 52 data["Rat"][i][j] = {} |
49 end | 53 end |
50 end | 54 end |
51 end | 55 end |
52 end | 56 end |
53 | 57 |
54 | |
55 self.LoadData = function() | 58 self.LoadData = function() |
56 msg("Loading...") | 59 msg("Loading...") |
57 local data = CyborgMMO_GetSaveData(); | 60 local data = CyborgMMO_GetSaveData() |
58 | 61 |
59 | 62 if not data["Rat"] then |
60 if (nil == data["Rat"]) then | |
61 data["Rat"] = {} | 63 data["Rat"] = {} |
62 self.InitSaveData(data); | 64 self.InitSaveData(data) |
63 end | 65 end |
64 | 66 |
65 self.Data = data["Rat"] | 67 self.Data = data["Rat"] |
66 if(data ~= nil) then | 68 if data then |
67 for mode = 1,RAT7.MODES do | 69 for mode=1,RAT7.MODES do |
68 for button = 1, RAT7.BUTTONS do | 70 for button=1,RAT7.BUTTONS do |
69 if(self.Data[mode][button] ~= nil) then | 71 if self.Data[mode][button] then |
70 object = CyborgMMO_WowObject.Create(self.Data[mode][button].Type, self.Data[mode][button].Detail, self.Data[mode][button].Subdetail); | 72 object = CyborgMMO_WowObject.Create(self.Data[mode][button].Type, self.Data[mode][button].Detail, self.Data[mode][button].Subdetail) |
71 self.SetObjectOnButtonNoUpdate(button, mode, object); | 73 self.SetObjectOnButtonNoUpdate(button, mode, object) |
72 else | 74 else |
73 object = CyborgMMO_WowObject.Create("", "", ""); | 75 object = CyborgMMO_WowObject.Create("", "", "") |
74 self.SetObjectOnButtonNoUpdate(button, mode, object); | 76 self.SetObjectOnButtonNoUpdate(button, mode, object) |
75 self.Data[mode][button] = object; | 77 self.Data[mode][button] = object |
76 end | 78 end |
77 end | 79 end |
78 end | 80 end |
79 self.UpdateObservers(); | 81 self.UpdateObservers() |
80 end | 82 end |
81 end | 83 end |
82 | 84 |
83 self.SaveData = function() | 85 self.SaveData = function() |
84 msg("Saving...") | 86 msg("Saving...") |
85 CyborgMMO_SetSaveData(self.Data, "Rat"); | 87 CyborgMMO_SetSaveData(self.Data, "Rat") |
86 end | 88 end |
87 | 89 |
88 self.SetMode = function(mode) | 90 self.SetMode = function(mode) |
89 self.m_Mode = mode; | 91 self.m_Mode = mode |
90 self.UpdateObservers(); | 92 self.UpdateObservers() |
91 end | 93 end |
92 | 94 |
93 self.GetMode = function() | 95 self.GetMode = function() |
94 return self.m_Mode; | 96 return self.m_Mode |
95 end | 97 end |
96 | 98 |
97 self.GetData = function() | 99 self.GetData = function() |
98 return self.Data, self.m_Mode; | 100 return self.Data,self.m_Mode |
99 end | 101 end |
100 | 102 |
101 self.GetObjectOnButton = function(button) | 103 self.GetObjectOnButton = function(button) |
102 if(nil == self.Data[self.m_Mode][button]) then | 104 if not self.Data[self.m_Mode][button] then |
103 return nil; | 105 return nil |
104 else | 106 else |
105 return self.Data[self.m_Mode][button] | 107 return self.Data[self.m_Mode][button] |
106 end | 108 end |
107 end | 109 end |
108 | 110 |
109 self.SetObjectOnButtonNoUpdate = function(button, mode, object) | 111 self.SetObjectOnButtonNoUpdate = function(button, mode, object) |
110 --msg("button = "..tostring(button).." mode = "..tostring(mode)) | 112 -- msg("button = "..tostring(button).." mode = "..tostring(mode)) |
111 self.Data[mode][button] = object; | 113 self.Data[mode][button] = object |
112 | 114 |
113 if(nil ~= object) then | 115 if object then |
114 object.SetBinding(CyborgMMO_WowCommands[((mode-1)*RAT7.BUTTONS)+button]); | 116 object.SetBinding(CyborgMMO_WowCommands[((mode-1)*RAT7.BUTTONS)+button]) |
115 if("callback" == object.Type) then | 117 if("callback" == object.Type) then |
116 msg("trying to set texture") | 118 msg("trying to set texture") |
117 local slot = getglobal("CyborgMMO_MainPageSlotListSlot"..button); | 119 local slot = getglobal("CyborgMMO_MainPageSlotListSlot"..button) |
118 slot:SetNormalTexture(object.Texture) | 120 slot:SetNormalTexture(object.Texture) |
119 end | 121 end |
120 else | 122 else |
121 msg("clearing "..button) | 123 msg("clearing "..button) |
122 CyborgMMO_WowObject.ClearBinding(CyborgMMO_WowCommands[((mode-1)*RAT7.BUTTONS)+button]) | 124 CyborgMMO_WowObject.ClearBinding(CyborgMMO_WowCommands[((mode-1)*RAT7.BUTTONS)+button]) |
123 end | 125 end |
124 end | 126 end |
125 | 127 |
126 self.SetObjectOnButton = function(button, mode, object) | 128 self.SetObjectOnButton = function(button, mode, object) |
127 self.SetObjectOnButtonNoUpdate(button, mode, object); | 129 self.SetObjectOnButtonNoUpdate(button, mode, object) |
128 self.UpdateObservers() | 130 self.UpdateObservers() |
129 end | 131 end |
130 | 132 |
131 self.AddObserver = function(view) | 133 self.AddObserver = function(view) |
132 table.insert(self.ObserverList,view) | 134 table.insert(self.ObserverList, view) |
133 self.observerCount = # self.ObserverList | 135 self.observerCount = #self.ObserverList |
134 end | 136 end |
135 | 137 |
136 self.GetAllObservers = function() | 138 self.GetAllObservers = function() |
137 return self.ObserverList; | 139 return self.ObserverList |
138 end | 140 end |
139 | 141 |
140 self.UpdateObservers = function() | 142 self.UpdateObservers = function() |
141 for i = 1, (# self.ObserverList) do | 143 for i=1,#self.ObserverList do |
142 self.ObserverList[i].Update(self.Data, self.m_Mode) | 144 self.ObserverList[i].Update(self.Data, self.m_Mode) |
143 end | 145 end |
144 self.SaveData() | 146 self.SaveData() |
145 end | 147 end |
146 return self; | 148 |
149 return self | |
147 end, | 150 end, |
148 | 151 |
149 m_Instance = nil, | 152 m_Instance = nil, |
150 | 153 |
151 Instance = function() | 154 Instance = function() |
152 if(nil == CyborgMMO_RatPageModel.m_Instance) then | 155 if not CyborgMMO_RatPageModel.m_Instance then |
153 CyborgMMO_RatPageModel.m_Instance = CyborgMMO_RatPageModel.new(); | 156 CyborgMMO_RatPageModel.m_Instance = CyborgMMO_RatPageModel.new() |
154 end | 157 end |
155 return CyborgMMO_RatPageModel.m_Instance; | 158 return CyborgMMO_RatPageModel.m_Instance |
156 end | 159 end, |
157 } | 160 } |
161 |