Mercurial > wow > buffalo2
diff ObjectiveUI.lua @ 3:3397aae1f44d
- use the correct key value when searching for action buttons
- handle pre-built frames from XML
author | Nenue |
---|---|
date | Thu, 31 Mar 2016 07:32:05 -0400 |
parents | a2396b03ce63 |
children | e9b61fd5f607 |
line wrap: on
line diff
--- a/ObjectiveUI.lua Thu Mar 31 01:38:47 2016 -0400 +++ b/ObjectiveUI.lua Thu Mar 31 07:32:05 2016 -0400 @@ -9,7 +9,7 @@ local Tracker, AutoQuest, Quest, Cheevs = mod.Tracker, mod.AutoQuest, mod.Quest, mod.Cheevs -------------------------------------------------------------------- ---- Tracker-specific widget functions +--- Tracker-specific widgets and their handlers -------------------------------------------------------------------- Tracker.Select = function(self) end @@ -71,6 +71,13 @@ end Cheevs.Open = function(self) + if ( not AchievementFrame ) then + AchievementFrame_LoadUI(); + end + if ( not AchievementFrame:IsShown() ) then + AchievementFrame_ToggleAchievementFrame(); + end + AchievementFrame_SelectAchievement(self.info.cheevID); end ---------------------------------------------------------------------------------------- @@ -192,4 +199,36 @@ SetItemButtonTextureVertexColor(itemButton, 1, 1, 1) end end +end + +----------------------------------------- +-- Progress slider for achievements, and area objecitves +-- Stored by criteria ID to account for multiple bars in one cheev +Tracker.SetProgress = function(criteria, info) +end + +mod.WidgetRegistry = {} +local wr = mod.WidgetRegistry +mod.SetWidget = function(criteria, info) + local widget + if not wr[criteria.type] then + print('|cFFFF4400[[WidgetTemplate]]|r', criteria.type) + wr[criteria.type] = { free = {}, used = {}, } + end + if #wr[criteria.type].free == 0 then + + local frameID = #wr[criteria.type].free + #wr[criteria.type].used + widget = CreateFrame('Frame', 'VeneerCriteria' .. criteria.type .. frameID, VeneerObjectiveWrapper, 'VeneerObjectiveCriteria' .. criteria.type) + end +end +mod.RegisterWidget = function(frame) + tinsert(wr[frame.widgetType].free, frame) +end +mod.InitializeWidget = function(frame) + +end +mod.ReleaseWidget = function(frame) + + if tContains(wr[frame.widgetType], frame) then + end end \ No newline at end of file