1
0
Bifurcation 0

Not related to the current testing. Took first step at removing Cartographer and was nice enough to warn people, removed connections to Changes command as the log hasn't been updated and I'm not going to right now, and attempted to address Issue 50.

Cette révision appartient à :
lonadar 2011-02-05 13:59:20 +00:00
Parent a0605af3be
révision b8624952c5
6 fichiers modifiés avec 88 ajouts et 118 suppressions

Voir le fichier

@ -16,7 +16,6 @@
# Explanation of optional deps:
# Cartographer_Waypoints and Tomtom are there so I can link with their arrows properly.
# Cartographer_InstanceMaps: Cartographer is terrible. See cartographer_is_terrible.lua.
# Swatter really likes intercepting all error messages and not letting them through. Since I want to intercept my own messages, I go after Swatter so I can insert my hook earlier on.
# Tekticles is around because, if QH loads before it does, then QH doesn't use its custom fonts, and I think its custom fonts are pretty. There's probably a better solution to this, but it turns out I'm incredibly lazy, so, meh.
# UnicodeFont: see Tekticles
@ -232,7 +231,6 @@ collect_warp.lua
collect.lua
cartographer.lua
cartographer_is_terrible.lua
tomtom.lua
arrow.lua

Voir le fichier

@ -1,44 +1,31 @@
QuestHelper_File["cartographer_is_terrible.lua"] = "4.0.1.$svnversion$"
QuestHelper_Loadtime["cartographer_is_terrible.lua"] = GetTime()
-- QuestHelper_File["cartographer_is_terrible.lua"] = "4.0.1.$svnversion$"
-- QuestHelper_Loadtime["cartographer_is_terrible.lua"] = GetTime()
-- http://gunnerkrigg.wikia.com/wiki/Category:Terrible
if Cartographer and Cartographer.SetCurrentInstance and Cartographer_InstanceMaps and Cartographer_InstanceMaps.OnEnable and not Cartographer.TheInstanceBugIsFixedAlready_YouCanStopHackingIt then
local nop = function () end
-- if Cartographer and Cartographer.SetCurrentInstance and Cartographer_InstanceMaps and Cartographer_InstanceMaps.OnEnable then
-- local nop = function () end
function hookitsbrainsout(name)
local oldfunc = _G[name]
_G[name] = function(...)
local temp = WorldMapLevelDropDown_Update
WorldMapLevelDropDown_Update = nop -- YOINK
oldfunc(...)
WorldMapLevelDropDown_Update = temp -- KNIOY
end
end
-- function hookitsbrainsout(name)
-- local oldfunc = _G[name]
-- _G[name] = function(...)
-- local temp = WorldMapLevelDropDown_Update
-- WorldMapLevelDropDown_Update = nop -- YOINK
-- oldfunc(...)
-- WorldMapLevelDropDown_Update = temp -- KNIOY
-- end
-- end
local oldenable = Cartographer_InstanceMaps.OnEnable
function Cartographer_InstanceMaps:OnEnable(...)
oldenable(self, ...)
-- local oldenable = Cartographer_InstanceMaps.OnEnable
-- function Cartographer_InstanceMaps:OnEnable(...)
-- oldenable(self, ...)
hookitsbrainsout("SetMapZoom")
hookitsbrainsout("SetMapToCurrentZone")
end
-- hookitsbrainsout("SetMapZoom")
-- hookitsbrainsout("SetMapToCurrentZone")
-- end
-- BEHOLD, MY MADNESS! BEHOLD AND SUFFER
-- BEHOOOOOOLD
end
-- okay okay I guess I'll explain
-- end
-- There's a bug in Cartographer where SetMapZoom() or SetMapToCurrentZone(), called in an instance, causes any open menus to instantly close. Questhelper (and in general, anything that uses Astrolabe, and other UI mods as well) call those function every frame if the map is closed. This isn't a performance problem or anything, but it happens to trigger the Cartographer bug.
-- The top two bugs on the Cartographer tracker are both this one, as well as a third bug listed later down. I've talked to both of the possibly-main Cartographer maintainers about fixing it, neither are interested. It's pretty clearly not going to be fixed.
-- So here's a hack. The problem is the WorldMapLevelDropDown_Update call which, after a few nested calls, is eventually called. Why's it there? I dunno. What will removing it break? Not a clue. This cute little hook automatically disables it during the call of the important functions. Will this be a problem for Cartographer? Damned if I know. Will it be *my* problem? No! No it will not.
-- If the Cartographer crew ever fixes it properly, this hook can be disabled by simply doing Cartographer.TheInstanceBugIsFixedAlready_YouCanStopHackingIt = true. And it will go away. Until then, the bug will go away.
-- LOOK HOW MUCH MY PROBLEM THIS ISN'T ANYMORE
-- So here's a hack. The problem is the WorldMapLevelDropDown_Update call which, after a few nested calls, is eventually called. Why's it there? I dunno. What will removing it break? Not a clue. This cute little hook automatically disables it during the call of the important functions. Will this be a problem for Cartographer? Damned if I know. Will it be *my* problem? No! No it will not.

Voir le fichier

@ -7,33 +7,24 @@ QuestHelper_Loadtime["config.lua"] = GetTime()
--[[
The MIT License
Copyright (c) <year> <copyright holders>
Copyright (c) 2010 Robert Beam
Permission is hereby granted, free of charge, to any person obtaining a
copy
of this software and associated documentation files (the "Software"), to
deal
in the Software without restriction, including without limitation the
rights
to use, copy, modify, merge, publish, distribute, sublicense, and/or
sell
Permission is hereby granted, free of charge, to any person obtaining a copy
of this software and associated documentation files (the "Software"), to deal
in the Software without restriction, including without limitation the rights
to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
copies of the Software, and to permit persons to whom the Software is
furnished to do so, subject to the following conditions:
The above copyright notice and this permission notice shall be included
in
The above copyright notice and this permission notice shall be included in
all copies or substantial portions of the Software.
THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS
OR
THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL
THE
FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING
FROM,
OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS
IN
LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN
THE SOFTWARE.
]]
@ -293,15 +284,15 @@ function addon:GenerateOptions()
QuestHelper:Submit();
end,
},
Changes = {
type = "execute",
order = 6,
name = L["ActionsChangesName"],
desc = L["ActionsChangesDesc"],
func = function()
QuestHelper:ChangeLog();
end,
},
-- Changes = {
-- type = "execute",
-- order = 6,
-- name = L["ActionsChangesName"],
-- desc = L["ActionsChangesDesc"],
-- func = function()
-- QuestHelper:ChangeLog();
-- end,
-- },
},
},
AdditionalInfo = {
@ -759,7 +750,7 @@ function addon:GenerateOptions()
if QuestHelper_Pref['share'] and not QuestHelper_Pref['solo'] then
QuestHelper:SetShare(true);
elseif QuestHelper_Pref['solo'] then
QusetHelper:SetShare(false);
QuestHelper:SetShare(false);
end
end,
},
@ -936,37 +927,37 @@ function addon:GenerateOptions()
type = "description",
name = L["PluginIntro"],
},
Cartographer = {
order = 2,
type = "group",
guiInline = true,
name = L["PluginCartographerName"],
desc = L["PluginCartographerDesc"],
disabled = function()
return not Cartographer_Waypoints or QuestHelper_Pref['hide'];
end,
args = {
Arrow = {
order = 1,
type = "toggle",
name = L["CartographerArrowName"],
desc = L["CartographerArrowDesc"],
get = function(i)
return QuestHelper_Pref['cart_wp_new'];
end,
set = function(i, v)
QuestHelper_Pref['cart_wp_new'] = v;
if QuestHelper_Pref['cart_wp_new'] then
QuestHelper:EnableCartographer();
else
QuestHelper:DisableCartographer();
end
end,
},
},
},
-- Cartographer = {
-- order = 2,
-- type = "group",
-- guiInline = true,
-- name = L["PluginCartographerName"],
-- desc = L["PluginCartographerDesc"],
-- disabled = function()
-- return not Cartographer_Waypoints or QuestHelper_Pref['hide'];
-- end,
-- args = {
-- Arrow = {
-- order = 1,
-- type = "toggle",
-- name = L["CartographerArrowName"],
-- desc = L["CartographerArrowDesc"],
-- get = function(i)
-- return QuestHelper_Pref['cart_wp_new'];
-- end,
-- set = function(i, v)
-- QuestHelper_Pref['cart_wp_new'] = v;
-- if QuestHelper_Pref['cart_wp_new'] then
-- QuestHelper:EnableCartographer();
-- else
-- QuestHelper:DisableCartographer();
-- end
-- end,
-- },
-- },
-- },
TomTom = {
order = 3,
order = 2,
type = "group",
guiInline = true,
name = L["PluginTomTomName"],
@ -1161,10 +1152,6 @@ l:RegisterData("enUS", {
["PluginOptionsName"] = "Plugin Options",
["PluginOptionsDesc"] = "",
["PluginIntro"] = "Options for 3rd party addons. 3rd party addons need to be installed for these options to be available",
["PluginCartographerName"] = "Cartographer options",
["PluginCartographerDesc"] = "",
["CartographerArrowName"] = "Waypoint Arrow",
["CartographerArrowDesc"] = "Use the Cartographer Waypoint Arrow instead of the built-in QuestHelper arrow",
["PluginTomTomName"] = "TomTom options",
["PluginTomTomDesc"] = "",
["TomTomArrowName"] = "Waypoint Arrow",
@ -1244,8 +1231,6 @@ L["ArrowScaleDesc"] = "Wegpfeilgr\195\182\195\159e (100% ist Normalgr\195\182\19
L["ArrowScaleName"] = "Gr\195\182\195\159e"
L["ArrowTextSizeDesc"] = "Gr\195\182\195\159e des Wegpfeiltextes (100% ist Normalgr\195\182\195\159e)"
L["ArrowTextSizeName"] = "Textgr\195\182\195\159e"
L["CartographerArrowDesc"] = "Verwende Wegpfeil von Cartograpfer anstelle des eingebauten QuestHelper-Wegpfeils"
L["CartographerArrowName"] = "Wegepunkt Pfeil"
L["FilterGroupName"] = "Gruppenquests"
L["FilterGroupSizeName"] = "Gruppengr\195\182\195\159e"
L["FilterLevelDesc"] = "Quests ausblenden, die ein h\195\182heres Level haben als man selbst"

Voir le fichier

@ -625,9 +625,10 @@ function QuestHelper:ToggleMapButton()
end
end
function QuestHelper:ChangeLog()
self:ShowText(QuestHelper_ChangeLog, string.format("QuestHelper %s ChangeLog", QuestHelper_Version))
end
-- Commenting out change log because it hasn't been updated
-- function QuestHelper:ChangeLog()
-- self:ShowText(QuestHelper_ChangeLog, string.format("QuestHelper %s ChangeLog", QuestHelper_Version))
-- end
function QuestHelper:Submit()
-- The line below is a reference to the upload artwork. Re-insert it as the first line below "self:ShowText([[" once the artwork has been changed.
@ -717,19 +718,13 @@ QuestHelper currently survives on |cffff8000your donations|r. I'm trying to make
There's a lot of stuff I plan to add if I can get enough donations to live off. Some of the most-requested features include:
|cff40bbffReduced memory and CPU usage for smoother gameplay|r
|cff40bbffFlying mount support for both Northrend and Outland|r
|cff40bbffBetter support for Northrend "phased" quests|r
|cff40bbffAchievementHelper, built right into QuestHelper|r
|cff40bbffBetter support for "phased" quests and areas|r
|cff40bbffEnhamcements to the quest tracker|r
|cff40bbffPaths that lead you around obstacles instead of through them|r
|cff40bbffIntegrating archeology digsites into the routing|r
I can't guarantee these will show up soon, as there's a lot of work involved in them, but every donation - no matter how small - helps!
To donate, open up your web browser and go to |cffff8000http://www.quest-helper.com/donate|r. Enter however much you feel comfortable donating, then bask in the knowledge that you're supporting QuestHelper.
Thanks!]], "Please Donate!", 500, 20, 10)
end
@ -959,9 +954,9 @@ commands =
{"VERSION",
"Displays QuestHelper's version.", {}, QuestHelper.PrintVersion, QuestHelper},
{"CHANGES",
"Displays a summary of changes recently made to QuestHelper.",
{}, QuestHelper.ChangeLog, QuestHelper},
-- {"CHANGES",
-- "Displays a summary of changes recently made to QuestHelper.",
-- {}, QuestHelper.ChangeLog, QuestHelper},
--[[{"DONATE",
"Displays some instructions and a link for donating.",

Voir le fichier

@ -244,7 +244,6 @@ QH_Event("ADDON_LOADED", function (addonid)
["tracker.lua"] = true,
["objtips.lua"] = true,
["cartographer.lua"] = true,
["cartographer_is_terrible.lua"] = true,
["tomtom.lua"] = true,
["textviewer.lua"] = true,
["error.lua"] = true,
@ -620,6 +619,12 @@ QH_Event("ADDON_LOADED", function (addonid)
end
end)
-- There's a bug in Cartographer where SetMapZoom() or SetMapToCurrentZone(), called in an instance, causes any open menus to instantly close. Questhelper (and in general, anything that uses Astrolabe, and other UI mods as well) call those function every frame if the map is closed. This isn't a performance problem or anything, but it happens to trigger the Cartographer bug.
-- Removing Cartographer_InstanceMaps hack. Warn user.
if Cartographer and Cartographer.SetCurrentInstance and Cartographer_InstanceMaps and Cartographer_InstanceMaps.OnEnable then
QH_fixedmessage("Cartographer is no longer supported. Your interface may not work properly in instances. Please remove Cartographer and restart WoW.")
end
QuestHelper.loading_init3:SetPercentage(1.0) -- victory
QuestHelper_Loadtime["init3_end"] = GetTime()

Voir le fichier

@ -159,7 +159,7 @@ function QuestHelper:DoSettingsMenu()
-- Stuff to read.
submenu = self:CreateMenu()
self:CreateMenuItem(submenu, QHText("MENU_HELP_SLASH")):SetFunction(self.Help, self)
self:CreateMenuItem(submenu, QHText("MENU_HELP_CHANGES")):SetFunction(self.ChangeLog, self)
-- self:CreateMenuItem(submenu, QHText("MENU_HELP_CHANGES")):SetFunction(self.ChangeLog, self)
self:CreateMenuItem(submenu, QHText("MENU_HELP_SUBMIT")):SetFunction(self.Submit, self)
self:CreateMenuItem(menu, QHText("MENU_HELP")):SetSubmenu(submenu)