Mercurial > wow > devian
comparison UI.lua @ 68:1687ae1c6162
fixed :ToFront not remembering the current channel
| author | Nenue |
|---|---|
| date | Sat, 12 Mar 2016 02:31:55 -0500 |
| parents | 516ceb31703d |
| children | e89244da507b |
comparison
equal
deleted
inserted
replaced
| 67:137b8c55a593 | 68:1687ae1c6162 |
|---|---|
| 89 | 89 |
| 90 --- Brings the console to the front. | 90 --- Brings the console to the front. |
| 91 -- Frame method used to bring a console frame to the front of the display stack. | 91 -- Frame method used to bring a console frame to the front of the display stack. |
| 92 local function Console_ToFront(c) | 92 local function Console_ToFront(c) |
| 93 local db = D.db | 93 local db = D.db |
| 94 local profile = D.currentProfile | |
| 94 c:Raise() | 95 c:Raise() |
| 95 c:SetAlpha(db.frontalpha) | 96 c:SetAlpha(db.frontalpha) |
| 96 c.out.backdrop:SetTexture(unpack(db.frontdrop)) | 97 c.out.backdrop:SetTexture(unpack(db.frontdrop)) |
| 97 c.out.backdrop:SetGradientAlpha(unpack(db.frontgrad)) | 98 c.out.backdrop:SetGradientAlpha(unpack(db.frontgrad)) |
| 98 c.out.backdrop:SetBlendMode(db.frontblend) | 99 c.out.backdrop:SetBlendMode(db.frontblend) |
| 99 c.dropmenu.icon:SetVertexColor(unpack(db.frontheader)) | 100 c.dropmenu.icon:SetVertexColor(unpack(db.frontheader)) |
| 100 c.title:SetTextColor(unpack(db.frontborder)) | 101 c.title:SetTextColor(unpack(db.frontborder)) |
| 101 | 102 |
| 102 --oldprint('changing current toplevel from', db.current_channel, 'to', c.index) | 103 --oldprint('changing current toplevel from', db.current_channel, 'to', c.index) |
| 103 db.current_channel = c.index | 104 profile.current_channel = c.index |
| 104 | 105 |
| 105 --oldprint('toplevel is now', db.current_channel) | 106 --oldprint('toplevel is now', db.current_channel) |
| 106 c:Save() | 107 c:Save() |
| 107 | 108 |
| 108 | 109 |
| 245 if vars.minimized then | 246 if vars.minimized then |
| 246 f:Minimize() | 247 f:Minimize() |
| 247 else | 248 else |
| 248 f:Maximize() | 249 f:Maximize() |
| 249 end | 250 end |
| 250 if db.enabled and f.enabled then | 251 if db.enabled then |
| 252 f.enabled = true | |
| 251 f:Show() | 253 f:Show() |
| 252 end | 254 end |
| 253 | 255 |
| 254 return f | 256 return f |
| 255 end | 257 end |
| 266 function D:SetChannel(cinfo, key) | 268 function D:SetChannel(cinfo, key) |
| 267 local profile = D.currentProfile | 269 local profile = D.currentProfile |
| 268 local t_info = {} | 270 local t_info = {} |
| 269 local channel, isNew, id, sig, t_id | 271 local channel, isNew, id, sig, t_id |
| 270 --@debug@ | 272 --@debug@ |
| 271 print('setchan(0) cinfo, key', cinfo, key)--@end-debug@ | 273 --print('setchan(0) cinfo, key', cinfo, key)--@end-debug@ |
| 272 -- obtain source data | 274 -- obtain source data |
| 273 if tonumber(key) ~= nil and D.channels[key] then | 275 if tonumber(key) ~= nil and D.channels[key] then |
| 274 id = tonumber(key) | 276 id = tonumber(key) |
| 275 elseif D.sigID[tostring(key)] then | 277 elseif D.sigID[tostring(key)] then |
| 276 id = D.sigID[tostring(key)] | 278 id = D.sigID[tostring(key)] |
| 280 end | 282 end |
| 281 local dbvars = D.channels[id] | 283 local dbvars = D.channels[id] |
| 282 t_id = id -- overridden later if new | 284 t_id = id -- overridden later if new |
| 283 t_info.index = t_id -- | 285 t_info.index = t_id -- |
| 284 --@debug@ | 286 --@debug@ |
| 285 print('setchan(1) cinfo, key, id=', cinfo, key, id)--@end-debug@ | 287 --print('setchan(1) cinfo, key, id=', cinfo, key, id)--@end-debug@ |
| 286 | 288 |
| 287 | 289 |
| 288 -- obtain config info | 290 -- obtain config info |
| 289 if type(cinfo) == 'string' then | 291 if type(cinfo) == 'string' then |
| 290 sig = cinfo | 292 sig = cinfo |
| 298 else -- old sig | 300 else -- old sig |
| 299 sig = D.channels[id].signature | 301 sig = D.channels[id].signature |
| 300 end | 302 end |
| 301 t_info.signature = sig | 303 t_info.signature = sig |
| 302 --@debug@ | 304 --@debug@ |
| 303 print('setchan(2) sig,id,isNew=', sig, id, isNew)--@end-debug@ | 305 --print('setchan(2) sig,id,isNew=', sig, id, isNew)--@end-debug@ |
| 304 | 306 |
| 305 for k,v in pairs(cinfo) do -- allow all cinfo to pass | 307 for k,v in pairs(cinfo) do -- allow all cinfo to pass |
| 306 t_info[k] = v | 308 t_info[k] = v |
| 307 end | 309 end |
| 308 | 310 |
| 326 t_info.signature = result | 328 t_info.signature = result |
| 327 end | 329 end |
| 328 t_id = self.max_channel + 1 | 330 t_id = self.max_channel + 1 |
| 329 t_info.index = t_id | 331 t_info.index = t_id |
| 330 --@debug@ | 332 --@debug@ |
| 331 print('setchan(3a) t_id, isNew, sig, t_info.signature=', t_id, isNew, sig, t_info.signature)--@end-debug@ | 333 --print('setchan(3a) t_id, isNew, sig, t_info.signature=', t_id, isNew, sig, t_info.signature)--@end-debug@ |
| 332 else | 334 else |
| 333 --@debug@ | 335 --@debug@ |
| 334 print('setchan(3b) t_id, isNew, sig, t_info.signature=', t_id, isNew, sig, t_info.signature)--@end-debug@ | 336 --print('setchan(3b) t_id, isNew, sig, t_info.signature=', t_id, isNew, sig, t_info.signature)--@end-debug@ |
| 335 end | 337 end |
| 336 | 338 |
| 337 local channel | 339 local channel |
| 338 if not self.console[t_id] then -- create a frame | 340 if not self.console[t_id] then -- create a frame |
| 339 if isNew then -- position the channel frame | 341 if isNew then -- position the channel frame |
| 340 profile.max_channel = t_id | 342 profile.max_channel = t_id |
| 341 t_info.x = t_info.x + 20 | 343 t_info.x = t_info.x + 20 |
| 342 t_info.y = t_info.y - 20 | 344 t_info.y = t_info.y - 20 |
| 343 profile.channels[t_id] = t_info | 345 profile.channels[t_id] = t_info |
| 344 --@debug@ | 346 --@debug@ |
| 345 print('setchan(4a)', 't_id, x, y=', t_id, t_info.x, t_info.y)--@end-debug@ | 347 --print('setchan(4a)', 't_id, x, y=', t_id, t_info.x, t_info.y)--@end-debug@ |
| 346 end | 348 end |
| 347 channel = CreateConsole(t_id, t_info) | 349 channel = CreateConsole(t_id, t_info) |
| 348 self.console[t_id] = channel | 350 self.console[t_id] = channel |
| 349 self.sig[t_info.signature] = channel | 351 self.sig[t_info.signature] = channel |
| 350 self.sigID[t_info.signature] = t_id | 352 self.sigID[t_info.signature] = t_id |
| 356 else | 358 else |
| 357 channel:Maximize() | 359 channel:Maximize() |
| 358 end | 360 end |
| 359 | 361 |
| 360 if channel.enabled then -- hide or show last since Min/Max mess with visibility | 362 if channel.enabled then -- hide or show last since Min/Max mess with visibility |
| 361 print('setchan(5a) enable') | 363 --print('setchan(5a) enable') |
| 362 channel:Show() | 364 channel:Show() |
| 363 --channel:ToFront() | 365 --channel:ToFront() |
| 364 else | 366 else |
| 365 print('setchan(5a) disable') | 367 --print('setchan(5a) disable') |
| 366 channel:Hide() | 368 channel:Hide() |
| 367 end | 369 end |
| 368 --@debug@ | 370 --@debug@ |
| 369 print('setchan(end); c:IsVisible(), c.enabled, db.enabled=', channel:IsVisible(), channel.enabled, profile.enabled)--@end-debug@ | 371 --print('setchan(end); c:IsVisible(), c.enabled, db.enabled=', channel:IsVisible(), channel.enabled, profile.enabled)--@end-debug@ |
| 370 return channel | 372 return channel |
| 371 end | 373 end |
| 372 | 374 |
| 373 --- Console frame toggler | 375 --- Console frame toggler |
| 374 -- @paramsig [...] | 376 -- @paramsig [...] |
| 404 profile.enabled = nil | 406 profile.enabled = nil |
| 405 end | 407 end |
| 406 end | 408 end |
| 407 | 409 |
| 408 for i, id in pairs(search) do | 410 for i, id in pairs(search) do |
| 409 --oldprint(i, id) | 411 oldprint(i, id) |
| 410 local c = self.console[id] | 412 local c = self.console[id] |
| 411 if setAll then | 413 if setAll then |
| 412 c.enabled = profile.enabled and profile.enabled or nil | 414 c.enabled = profile.enabled and profile.enabled or nil |
| 413 else | 415 else |
| 414 | 416 |
| 415 profile.enabled = true | 417 profile.enabled = true |
| 416 c.enabled = (not c.enabled) and true or nil | 418 c.enabled = (not c.enabled) and true or nil |
| 417 if force == 0 then | 419 if force == 0 then |
| 418 c.enabled = nil | 420 c.enabled = nil |
| 419 end | 421 end |
| 420 --oldprint(id, ' ', force, c.enabled, db.enabled) | 422 oldprint(id, ' ', force, c.enabled, profile.enabled) |
| 421 end | 423 end |
| 422 | 424 |
| 423 if c.enabled or (setAll and profile.enabled) then | 425 if c.enabled or (setAll and profile.enabled) then |
| 424 c:Show() | 426 c:Show() |
| 425 elseif not (c.enabled and profile.enabled) then | 427 elseif not (c.enabled and profile.enabled) then |
