Mercurial > wow > devian
comparison Devian.lua @ 9:12d814c10962 v1.2-r9
Look for SavedVariables after they're available.
author | Nenue |
---|---|
date | Sat, 19 Dec 2015 00:02:57 -0500 |
parents | d0cd0e68213e |
children | 65fcb81f4e0a |
comparison
equal
deleted
inserted
replaced
8:5fb37280eb74 | 9:12d814c10962 |
---|---|
10 local DEVIAN_FRAME = DevianConsole | 10 local DEVIAN_FRAME = DevianConsole |
11 local cherry = false | 11 local cherry = false |
12 local print = function(...) | 12 local print = function(...) |
13 _G.print('DVN', ...) | 13 _G.print('DVN', ...) |
14 end | 14 end |
15 if not DevianDB then | 15 local db |
16 DevianDB = { | 16 |
17 ['global'] = {[STATE_LOW] = {}, [STATE_HIGH] = {}}, | |
18 console = true, | |
19 dnd_status = true, | |
20 dnd_message = "Debugging. Your messages may get eaten.", | |
21 x = 100, | |
22 y = 800, | |
23 height = 500, | |
24 width = 600, | |
25 font = [[Interface\Addons\Devian\font\SourceCodePro-Regular.ttf]], | |
26 fontsize = 13, | |
27 fontoutline = 'NONE', | |
28 } | |
29 cherry = "This is probably the first time, so:\n /dvn 2 to save your regular addon list\n /dvn 1 to save your development addon list\n /dvn to switch between the two\n /dvc to toggle print() frame" | |
30 end | |
31 local db = DevianDB | |
32 | 17 |
33 function D:SavePos(x,y) | 18 function D:SavePos(x,y) |
34 db.y = (DEVIAN_FRAME:GetTop() - GetScreenHeight()) | 19 db.y = (DEVIAN_FRAME:GetTop() - GetScreenHeight()) |
35 db.x = DEVIAN_FRAME:GetLeft() | 20 db.x = DEVIAN_FRAME:GetLeft() |
36 db.width = DEVIAN_FRAME:GetWidth() | 21 db.width = DEVIAN_FRAME:GetWidth() |
177 local function Message(prefix, ...) | 162 local function Message(prefix, ...) |
178 if prefix == nil then | 163 if prefix == nil then |
179 oldprint('Tried to print nothing.') | 164 oldprint('Tried to print nothing.') |
180 return | 165 return |
181 end | 166 end |
182 -- colorize | 167 |
183 if not prefix_cache[prefix] then | 168 -- color me timbers |
169 local pcolor | |
170 if db.tags[prefix] then | |
171 pcolor = db.tags[prefix] | |
172 elseif not prefix_cache[prefix] then | |
184 local c = {0, 0, 0 } | 173 local c = {0, 0, 0 } |
185 local max = string.len(prefix) | 174 local max = string.len(prefix) |
186 for i = 1, max, 3 do | 175 for i = 1, max, 3 do |
187 for k, v in ipairs(c) do | 176 for k, v in ipairs(c) do |
188 local j = i + (k - 1) | 177 local j = i + (k - 1) |
229 end | 218 end |
230 end | 219 end |
231 | 220 |
232 | 221 |
233 function D:OnInitialize() | 222 function D:OnInitialize() |
234 | 223 if not _G.DevianDB then |
224 _G.DevianDB = { | |
225 ['global'] = {[STATE_LOW] = {}, [STATE_HIGH] = {}}, | |
226 ['tags'] = {}, | |
227 console = true, | |
228 dnd_status = true, | |
229 dnd_message = "Debugging. Your messages may get eaten.", | |
230 x = 100, | |
231 y = 800, | |
232 height = 500, | |
233 width = 600, | |
234 font = [[Interface\Addons\Devian\font\SourceCodePro-Regular.ttf]], | |
235 fontsize = 13, | |
236 fontoutline = 'NONE', | |
237 } | |
238 cherry = "This is probably the first time, so:\n /dvn 2 to save your regular addon list\n /dvn 1 to save your development addon list\n /dvn to switch between the two\n /dvc to toggle print() frame" | |
239 end | |
240 db = _G.DevianDB | |
241 | |
242 print(PLAYER_REALM) | |
235 if not db[PLAYER_REALM] then | 243 if not db[PLAYER_REALM] then |
236 db[PLAYER_REALM] = {[STATE_LOW] = {}, [STATE_HIGH] = {} } | 244 db[PLAYER_REALM] = {[STATE_LOW] = {}, [STATE_HIGH] = {}} |
237 if not cherry then | 245 if not cherry then |
238 cherry = "This character didn't have an AddOn table." | 246 cherry = "This character didn't have an AddOn table." |
239 end | 247 end |
240 end | 248 end |
241 | 249 |
252 _G.oldprint = D.oldprint | 260 _G.oldprint = D.oldprint |
253 end | 261 end |
254 setprinthandler(Message) | 262 setprinthandler(Message) |
255 self:RegisterChatCommand("dvn", ScanAddOnList) | 263 self:RegisterChatCommand("dvn", ScanAddOnList) |
256 self:RegisterChatCommand("dvc", function(args) | 264 self:RegisterChatCommand("dvc", function(args) |
257 db.console = (db.console == false) and true or false | 265 db.console = (not db.console) and true or nil |
258 if db.console then | 266 if db.console then |
259 DEVIAN_FRAME:Show() | 267 DEVIAN_FRAME:Show() |
260 D:Maximize() | 268 D:Maximize() |
261 else | 269 else |
262 DEVIAN_FRAME:Hide() | 270 DEVIAN_FRAME:Hide() |