Mercurial > wow > ouroloot
diff gui.lua @ 109:ce45011fab4c
- Test for errors during startup before trying to manipulate data.
- Thin encapsulation around dispositions. Abstract everything except the
insertion into GUI dropdowns (that comes next).
author | Farmbuyer of US-Kilrogg <farmbuyer@gmail.com> |
---|---|
date | Wed, 08 Aug 2012 14:43:26 -0400 |
parents | 04ccd12c2a41 |
children | f93c1a93923b |
line wrap: on
line diff
--- a/gui.lua Mon Aug 06 14:57:14 2012 -0400 +++ b/gui.lua Wed Aug 08 14:43:26 2012 -0400 @@ -23,25 +23,9 @@ } eoi_st_otherrow_bgcolortable[""] = eoi_st_otherrow_bgcolortable["kill"] local eoi_st_otherrow_bgcolortable_default -local eoi_st_lootrow_col3_colortable = { - normal = { text = "", r = "ff", g = "ff", b = "ff" }, - shard = { text = "shard", r = "a3", g = "35", b = "ee" }, - offspec = { text = "offspec", r = "c6", g = "9b", b = "6d" }, - gvault = { text = "guild vault", r = "33", g = "ff", b = "99" }, -} -for k,v in pairs(eoi_st_lootrow_col3_colortable) do - -- for chat output by core code - v.hex = "|cff" .. v.r .. v.g .. v.b - -- for lib-st - v.r = tonumber(v.r,16)/255 - v.g = tonumber(v.g,16)/255 - v.b = tonumber(v.b,16)/255 - v.a = 1 -end -addon.disposition_colors = eoi_st_lootrow_col3_colortable +local eoi_st_lootrow_col3_colortable = addon.disposition_colors local function eoi_st_lootrow_col3_colortable_func (data, _, realrow) - local disp = data[realrow].disposition - return eoi_st_lootrow_col3_colortable[disp or 'normal'] + return eoi_st_lootrow_col3_colortable[data[realrow].disposition] end local time_column1_used_mt = { __index = { [2] = {value=""}, @@ -122,7 +106,7 @@ -- Working around this bug: -- http://forums.wowace.com/showpost.php?p=295202&postcount=31 -if false then -- XXX no longer needed? +if false then -- XXX no longer needed? test on mop beta local function fix_frame_level (level, ...) for i = 1, select("#", ...) do local button = select(i, ...) @@ -369,14 +353,15 @@ {} } -- This is horrible. Must do better. - if e.extratext then for k,v in pairs(eoi_st_lootrow_col3_colortable) do - if v.text == e.extratext then - e.disposition = k ~= 'normal' and k or nil - --e.extratext = nil, not feasible - break + if e.extratext then + for disp,text in self:_iter_dispositions('from_notes_text') do + if text == e.extratext then + e.disposition = disp + break + end end - end end - local ex = eoi_st_lootrow_col3_colortable[e.disposition or 'normal'].text + end + local ex = eoi_st_lootrow_col3_colortable[e.disposition].text if e.bcast_from and display_bcast_from and e.extratext then ex = e.extratext .. " (from " .. e.bcast_from .. ")" elseif e.bcast_from and display_bcast_from then @@ -993,7 +978,7 @@ eoi_dropdownfuncs["Insert new loot entry"] = eoi_dropdownfuncs.df_INSERT eoi_dropdownfuncs["Insert new boss kill event"] = eoi_dropdownfuncs.df_INSERT eoi_dropdownfuncs["Mark as disenchanted"] = eoi_dropdownfuncs["Mark as normal"] -eoi_dropdownfuncs["Mark as guild vault"] = eoi_dropdownfuncs["Mark as normal"] +eoi_dropdownfuncs["Mark as ".._G.GUILD_BANK:lower()] = eoi_dropdownfuncs["Mark as normal"] eoi_dropdownfuncs["Mark as offspec"] = eoi_dropdownfuncs["Mark as normal"] eoi_dropdownfuncs["Delete remaining entries for this boss"] = eoi_dropdownfuncs["Delete remaining entries for this day"] @@ -1021,7 +1006,7 @@ { "Mark as disenchanted%shard", "Mark as offspec%offspec", - "Mark as guild vault%gvault", + "Mark as ".._G.GUILD_BANK:lower().."%gvault", "Mark as normal|This is the default. Selecting any 'Mark as <x>' action blanks out extra notes about who broadcast this entry, etc.", "--", "Rebroadcast this loot entry|Sends this loot event, including special notes, as if it just happened.", @@ -1193,7 +1178,8 @@ end eoi_player_dropdown[2].menuList = gen_easymenu_table (raiders, {"Enter name...",CLOSE}, eoi_dropdownfuncs) - if e.disposition == 'shard' or e.disposition == 'gvault' then + + if not addon:_test_disposition (e.disposition, 'can_reassign') then eoi_player_dropdown[2].disabled = true eoi_player_dropdown[2].tooltipTitle = "Cannot Reassign" eoi_player_dropdown[2].tooltipText = "You must first mark this item as 'normal' or 'offspec' before reassignment." @@ -2701,4 +2687,5 @@ end end +addon.FILES_LOADED = addon.FILES_LOADED + 1 -- vim:noet