Mercurial > wow > worldplan
comparison WorldPlan.lua @ 49:dbd81d49af02
- Solve more frame data flagging issues
- Unify method for resolving filter and visibility states
- Flight Map modifications respect filter settings
- Solve initial draw issues with tag icon, filter state handling
- Solve issues with text layer synchronization during map changes
author | Nenue |
---|---|
date | Thu, 29 Dec 2016 13:31:20 -0500 |
parents | c0b88bd1e40b |
children | b289eb3e6a32 |
comparison
equal
deleted
inserted
replaced
48:c0b88bd1e40b | 49:dbd81d49af02 |
---|---|
59 numberFontObject = 'WorldPlanNumberFontThin' | 59 numberFontObject = 'WorldPlanNumberFontThin' |
60 }, | 60 }, |
61 minimized = { | 61 minimized = { |
62 r = 0, g = 0, b = 0, a = 0.1, | 62 r = 0, g = 0, b = 0, a = 0.1, |
63 iconWidth = 8, | 63 iconWidth = 8, |
64 borderWidth = 1, | 64 borderWidth = 0, |
65 alpha = 0.5, | 65 alpha = 0.5, |
66 highlightWidth = 0, | 66 highlightWidth = 0, |
67 maxAlertLevel = 0, | 67 maxAlertLevel = 0, |
68 NoIcon = true, | 68 NoIcon = true, |
69 | 69 |
95 WorldPlanData[key] = nil | 95 WorldPlanData[key] = nil |
96 else | 96 else |
97 WorldPlanData[key] = true | 97 WorldPlanData[key] = true |
98 end | 98 end |
99 end | 99 end |
100 for _, module in ipairs(db.OrderedModules) do | |
101 if module.OnConfigUpdate then | |
102 module:OnConfigUpdate() | |
103 end | |
104 end | |
100 _G.WorldPlan:Refresh() | 105 _G.WorldPlan:Refresh() |
101 end | 106 end |
107 | |
108 -- insert visual options into the tracking button menu | |
109 local DropDown_Initialize = function (self, callback, dropType) | |
110 if self ~= WorldMapFrameDropDown then | |
111 return | |
112 end | |
113 local config = WorldPlanData | |
114 local info = UIDropDownMenu_CreateInfo() | |
115 info.text = "" | |
116 info.isTitle = true | |
117 UIDropDownMenu_AddButton(info) | |
118 info.text = "|cFF00AAFFWorldPlan|r" | |
119 info.isTitle = true | |
120 UIDropDownMenu_AddButton(info) | |
121 info.isTitle = nil | |
122 info.disabled = nil | |
123 info.keepShownOnClick = true | |
124 info.tooltipOnButton = 1 | |
125 | |
126 info.text = "Enable" | |
127 info.isNotRadio = true | |
128 info.value = "EnablePins" | |
129 info.checked = config.EnablePins | |
130 info.tooltipTitle = "Enable World Quest Overlays" | |
131 info.tooltipText = "Toggle the detail layers here." | |
132 info.func = DropDown_OnClick | |
133 UIDropDownMenu_AddButton(info) | |
134 | |
135 info.text = "Display All Profession Quests" | |
136 info.isNotRadio = true | |
137 info.value = "ShowAllProfessionQuests" | |
138 info.checked = config.ShowAllProfessionQuests | |
139 info.tooltipTitle = "Hidden Quests" | |
140 info.tooltipText = "Display work order and profession-related quests that are skipped by the default UI." | |
141 info.func = DropDown_OnClick | |
142 UIDropDownMenu_AddButton(info) | |
143 | |
144 info.text = "Show Continent Pins" | |
145 info.isNotRadio = true | |
146 info.value = "DisplayContinentPins" | |
147 info.checked = config.DisplayContinentPins | |
148 info.tooltipTitle = "Continent Pins" | |
149 info.tooltipText = "Display quest pins on the continent map (may get cramped)." | |
150 info.func = DropDown_OnClick | |
151 UIDropDownMenu_AddButton(info) | |
152 | |
153 info.text = "Show Summary" | |
154 info.isNotRadio = true | |
155 info.value = "DisplayContinentSummary" | |
156 info.tooltipTitle = "Summary Bar" | |
157 info.tooltipText = "Display a summary of active world quests. Note: requires directly viewing Broken Isle and Dalaran maps to gain complete info." | |
158 info.checked = config.DisplayContinentSummary | |
159 info.func = DropDown_OnClick | |
160 UIDropDownMenu_AddButton(info) | |
161 --[[ | |
162 | |
163 info.text = "Nudge Pins" | |
164 info.isNotRadio = true | |
165 info.value = "NudgePins" | |
166 info.tooltipTitle = "Pin Nudging" | |
167 info.tooltipText = "Adjust the position of quest pins that overlap." | |
168 info.checked = config.NudgePins | |
169 info.func = DropDown_OnClick | |
170 UIDropDownMenu_AddButton(info) | |
171 | |
172 info.text = "Fade Whiled Grouped" | |
173 info.isNotRadio = true | |
174 info.value = "FadeWhileGrouped" | |
175 info.tooltipTitle = "Group Fade" | |
176 info.tooltipText = "Reduce pin alpha when grouped, so player dots are easier to see." | |
177 info.checked = config.FadeWhileGrouped | |
178 info.func = DropDown_OnClick | |
179 UIDropDownMenu_AddButton(info) | |
180 --]] | |
181 end | |
182 | |
102 | 183 |
103 function db.print(...) | 184 function db.print(...) |
104 for i = 1, select('#', ...) do | 185 for i = 1, select('#', ...) do |
105 tinsert(db.ReportChunks, tostring(select(i, ...))) | 186 tinsert(db.ReportChunks, tostring(select(i, ...))) |
106 end | 187 end |
290 db.Config[module:GetName()] = db.Config[module:GetName()] or {} | 371 db.Config[module:GetName()] = db.Config[module:GetName()] or {} |
291 if module.Setup then module:Setup() end | 372 if module.Setup then module:Setup() end |
292 if not module.RegisterEvent then | 373 if not module.RegisterEvent then |
293 module.RegisterEvent = self.RegisterEvent | 374 module.RegisterEvent = self.RegisterEvent |
294 end | 375 end |
376 if module.OnConfigUpdate then | |
377 module:OnConfigUpdate() | |
378 end | |
295 end | 379 end |
296 | 380 |
297 | 381 |
298 self.initialized = true | 382 self.initialized = true |
299 | 383 |
300 hooksecurefunc("UIDropDownMenu_Initialize", self.OnDropDownInitialize) | 384 hooksecurefunc("UIDropDownMenu_Initialize", DropDown_Initialize) |
301 | 385 |
302 hooksecurefunc("WorldMapTrackingOptionsDropDown_OnClick", function(button) | 386 hooksecurefunc("WorldMapTrackingOptionsDropDown_OnClick", function(button) |
303 print("|cFF0088FFWorldMapTrackingOptionsDropDown_OnClick|r") | 387 print("|cFF0088FFWorldMapTrackingOptionsDropDown_OnClick|r") |
304 local value = button.value | 388 local value = button.value |
305 if (value == "worldQuestFilterOrderResources" or value == "worldQuestFilterArtifactPower" or | 389 if (value == "worldQuestFilterOrderResources" or value == "worldQuestFilterArtifactPower" or |
455 end | 539 end |
456 | 540 |
457 self.isStale = nil | 541 self.isStale = nil |
458 end | 542 end |
459 | 543 |
460 -- insert visual options into the tracking button menu | |
461 WorldPlanCore.OnDropDownInitialize = function (self, callback, dropType) | |
462 if self ~= WorldMapFrameDropDown then | |
463 return | |
464 end | |
465 local config = WorldPlanData | |
466 local info = UIDropDownMenu_CreateInfo() | |
467 info.text = "" | |
468 info.isTitle = true | |
469 UIDropDownMenu_AddButton(info) | |
470 info.text = "|cFF00AAFFWorldPlan|r" | |
471 info.isTitle = true | |
472 UIDropDownMenu_AddButton(info) | |
473 info.isTitle = nil | |
474 info.disabled = nil | |
475 info.keepShownOnClick = true | |
476 info.tooltipOnButton = 1 | |
477 | |
478 info.text = "Enable" | |
479 info.isNotRadio = true | |
480 info.value = "EnablePins" | |
481 info.checked = config.EnablePins | |
482 info.tooltipTitle = "Enable World Quest Overlays" | |
483 info.tooltipText = "Toggle the detail layers here." | |
484 info.func = DropDown_OnClick | |
485 UIDropDownMenu_AddButton(info) | |
486 | |
487 info.text = "Display All Profession Quests" | |
488 info.isNotRadio = true | |
489 info.value = "ShowAllProfessionQuests" | |
490 info.checked = config.ShowAllProfessionQuests | |
491 info.tooltipTitle = "Hidden Quests" | |
492 info.tooltipText = "Display work order and profession-related quests that are skipped by the default UI." | |
493 info.func = DropDown_OnClick | |
494 UIDropDownMenu_AddButton(info) | |
495 | |
496 info.text = "Show Continent Pins" | |
497 info.isNotRadio = true | |
498 info.value = "DisplayContinentPins" | |
499 info.checked = config.DisplayContinentPins | |
500 info.tooltipTitle = "Continent Pins" | |
501 info.tooltipText = "Display quest pins on the continent map (may get cramped)." | |
502 info.func = DropDown_OnClick | |
503 UIDropDownMenu_AddButton(info) | |
504 | |
505 info.text = "Show Summary" | |
506 info.isNotRadio = true | |
507 info.value = "DisplayContinentSummary" | |
508 info.tooltipTitle = "Summary Bar" | |
509 info.tooltipText = "Display a summary of active world quests. Note: requires directly viewing Broken Isle and Dalaran maps to gain complete info." | |
510 info.checked = config.DisplayContinentSummary | |
511 info.func = DropDown_OnClick | |
512 UIDropDownMenu_AddButton(info) | |
513 --[[ | |
514 | |
515 info.text = "Nudge Pins" | |
516 info.isNotRadio = true | |
517 info.value = "NudgePins" | |
518 info.tooltipTitle = "Pin Nudging" | |
519 info.tooltipText = "Adjust the position of quest pins that overlap." | |
520 info.checked = config.NudgePins | |
521 info.func = DropDown_OnClick | |
522 UIDropDownMenu_AddButton(info) | |
523 | |
524 info.text = "Fade Whiled Grouped" | |
525 info.isNotRadio = true | |
526 info.value = "FadeWhileGrouped" | |
527 info.tooltipTitle = "Group Fade" | |
528 info.tooltipText = "Reduce pin alpha when grouped, so player dots are easier to see." | |
529 info.checked = config.FadeWhileGrouped | |
530 info.func = DropDown_OnClick | |
531 UIDropDownMenu_AddButton(info) | |
532 --]] | |
533 end | |
534 | 544 |
535 -------------------------------------------------------------------------------------------------------------------- | 545 -------------------------------------------------------------------------------------------------------------------- |
536 ------------------- | 546 ------------------- |
537 | 547 |
538 | 548 |