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 |
