Compare commits

...

33 Commits
0.2 ... 1.3.3

Author SHA1 Message Date
8e6867ed44 - toc update 2011-04-27 00:49:05 +00:00
a9f1b24563 - drycoded fix to ticket #10: look through the first 5 lines of the tooltip to find "millable" or "prospectable" instead of requiring it to be on line 2 2011-01-31 21:13:56 +00:00
a20c5fe54f - moved LibButtonFacade's Group:Skin call from :OnInitialize() to :OnEnable(). apparently OnInitialize is too soon and causes the custom skin to get overwritten. (ticket #9) 2011-01-03 05:47:44 +00:00
e22f4ef334 - added tracking for rogue junkboxes (obtained via 'pick pocket'). clicking the junkbox will automatically unlock it
- shortened the delay for processing items after a BAG_UPDATE to 1 second (from 1.5)
- fixed herbs, ore, and disenchanting to update breakable item counts immediately upon the next BAG_UPDATE instead of throttling
2011-01-02 07:07:52 +00:00
c20dabea47 - properly parented the Breakables frame to UIParent so that it will go away when the user presses alt-z (thanks slayman). note that this change makes the Breakables frame use the UI Scale specified in video settings so it may initially not be in the same location you last set it to and could be a different size. 2010-12-15 04:19:56 +00:00
fa59e6137d - fixed a bug where the tooltip could be completely wrong or empty sometimes 2010-12-14 06:22:16 +00:00
c3ee55d04c - fixed ace library load order such that acegui loads before aceconfig (since ACD requires acegui) 2010-12-12 06:39:17 +00:00
f22c064472 - added extra info to the button tooltips to explain general usage 2010-12-12 06:31:06 +00:00
5628e8d289 - minor garbage/performance fixes 2010-12-12 06:22:04 +00:00
cf128a6a87 - added spell tooltip to profession button 2010-12-12 06:14:37 +00:00
dbd7d69459 - added ButtonFacade support (ticket #7) 2010-12-12 05:54:41 +00:00
ef4fc31fa6 - added option to specify which direction the buttons grow toward by Slayman's request 2010-12-12 01:23:02 +00:00
b6556dc98d - enabled new target-item/spell attributes for secure buttons as they're The Right Solution™ instead of hacking together a macro 2010-12-09 07:31:40 +00:00
64a7e73ec0 - drycoded a more foolproof method of breaking items by setting the target-item attribute and using type "spell" instead of "macro". commented for now as i haven't been able to test it. just wanted to get the changes submitted to look at later 2010-12-08 21:39:07 +00:00
30e6b021dd - don't show heirloom items as disenchantable 2010-11-05 00:25:48 +00:00
a701b935b0 - fixed bar position not being saved/restored properly when moved out of the upper left section of the screen (using GetLeft()/GetTop() now instead of GetPoint()) 2010-10-21 00:22:25 +00:00
4158971161 - trying to figure out why settings aren't saving/loading for some users but work for me 2010-10-20 18:04:12 +00:00
1741f54321 - fix for reported error popping up 2010-10-12 12:45:33 +00:00
f93465037d - removed x-compat 2010-10-12 04:11:42 +00:00
f9971a7818 - toc bump to 4.0 2010-10-12 02:49:09 +00:00
59fd3c320d - fixed version of earlier commit that allows multiple breakable bars if the player has more than one of the supported professions.
- also added code to properly save the location of each bar independently
2010-10-07 01:04:43 +00:00
4bc72649f2 - drycode attempt at creating one bar per profession for the case where someone has some combination of inscription, enchanting, and jewelcrafting. not tested in game at all 2010-10-06 21:24:19 +00:00
4ad9afa103 - set bar to update immediately after clicking an item to break it instead of waiting the 1.5 seconds. it was making life harder for mass breaking 2010-09-27 02:51:50 +00:00
958521c6d3 - added button scale and font size options 2010-09-27 01:45:50 +00:00
1401893e2d - added localization support 2010-09-27 01:20:54 +00:00
f55cd76606 - optimized a little bit of the code that finds breakables in your bags by delaying checks on BAG_UPDATE until 1.5 seconds after the last update request has come in
- set the button font for item counts to use NumberFont_Outline_Med so that any font overrides (like tekticles) work automagically
2010-09-27 00:56:06 +00:00
6a89a7ca11 - added a tooltip to the LDB launcher 2010-09-21 03:49:35 +00:00
a5f5958c5e - added LibDataBroker support
- added option to hide the bar entirely (ticket 5) and option to hide the bar when in combat
- added short description to the config page explaining the functionality in the mod and how to get support/request features
- made all slash commands print something back to the user so they know what they changed
2010-09-12 20:25:17 +00:00
2945e6326d - added accessor to grab an item id from a link since i was duplicating the code for it all over the place
- replaced check for "Soulbound" in an item tooltip with ITEM_SOULBOUND (oops)
- replaced a getglobal with _G
- added ability to hide soulbound disenchantable items that are part of an equipment manager set (since some quest rewards and such are soulbound but the player doesn't actually use them)
- hid the "show soulbound items" and the new "hide equipment manager items" options to non-enchanters since they didn't do anything for them anyway
2010-09-11 04:08:10 +00:00
8d590170fe - set X-Compatible-With to 40000 2010-09-06 02:08:52 +00:00
ce9d162bd3 - actually setup /brk to open the blizzard options this time (committed from wrong working directory last time)
- shortened a few configuration names to fit on the blizzard settings screen
2010-09-05 22:19:52 +00:00
cdc3d1c193 - fixed mouseover for items to pass 'this' for cataclysm compatibility
- fixed options table getters/setters not taking the info table as their first argument
- added toggle for the 'show soulbound items' options (enchanting)
- added options table to the blizzard options frame and hooked up the /brk chat command to auto-open it (/breakables still works for command-line/macro access)
- updated pkgmeta to point at latest tags instead of trunk for all libraries
2010-09-05 22:13:17 +00:00
56ee47407d - fixed a bug where Fire Leaf (and probably others) was not being considered as a millable item: the game categorizes this herb as "other" instead of "herb" 2010-05-31 15:31:58 +00:00
15 changed files with 903 additions and 147 deletions

View File

@ -1,13 +1,37 @@
package-as: Breakables
externals:
libs/LibStub: svn://svn.wowace.com/wow/ace3/mainline/trunk/LibStub
libs/CallbackHandler-1.0: svn://svn.wowace.com/wow/ace3/mainline/trunk/CallbackHandler-1.0
libs/AceAddon-3.0: svn://svn.wowace.com/wow/ace3/mainline/trunk/AceAddon-3.0
libs/AceGUI-3.0: svn://svn.wowace.com/wow/ace3/mainline/trunk/AceGUI-3.0
libs/AceConfig-3.0: svn://svn.wowace.com/wow/ace3/mainline/trunk/AceConfig-3.0
libs/AceConsole-3.0: svn://svn.wowace.com/wow/ace3/mainline/trunk/AceConsole-3.0
libs/AceDB-3.0: svn://svn.wowace.com/wow/ace3/mainline/trunk/AceDB-3.0
libs/AceDBOptions-3.0: svn://svn.wowace.com/wow/ace3/mainline/trunk/AceDBOptions-3.0
libs/AceEvent-3.0: svn://svn.wowace.com/wow/ace3/mainline/trunk/AceEvent-3.0
libs/LibBabble-Inventory-3.0: svn://svn.wowace.com/wow/libbabble-inventory-3-0/mainline/trunk
libs/LibStub:
url: svn://svn.wowace.com/wow/ace3/mainline/trunk/LibStub
tag: latest
libs/CallbackHandler-1.0:
url: svn://svn.wowace.com/wow/ace3/mainline/trunk/CallbackHandler-1.0
tag: latest
libs/AceAddon-3.0:
url: svn://svn.wowace.com/wow/ace3/mainline/trunk/AceAddon-3.0
tag: latest
libs/AceGUI-3.0:
url: svn://svn.wowace.com/wow/ace3/mainline/trunk/AceGUI-3.0
tag: latest
libs/AceConfig-3.0:
url: svn://svn.wowace.com/wow/ace3/mainline/trunk/AceConfig-3.0
tag: latest
libs/AceConsole-3.0:
url: svn://svn.wowace.com/wow/ace3/mainline/trunk/AceConsole-3.0
tag: latest
libs/AceDB-3.0:
url: svn://svn.wowace.com/wow/ace3/mainline/trunk/AceDB-3.0
tag: latest
libs/AceDBOptions-3.0:
url: svn://svn.wowace.com/wow/ace3/mainline/trunk/AceDBOptions-3.0
tag: latest
libs/AceEvent-3.0:
url: svn://svn.wowace.com/wow/ace3/mainline/trunk/AceEvent-3.0
tag: latest
libs/AceLocale-3.0:
url: svn://svn.wowace.com/wow/ace3/mainline/trunk/AceLocale-3.0
tag: latest
libs/LibBabble-Inventory-3.0:
url: svn://svn.wowace.com/wow/libbabble-inventory-3-0/mainline/trunk
tag: latest
libs/LibButtonFacade: svn://svn.wowace.com/wow/buttonfacade/mainline/trunk/Libs/LibButtonFacade

File diff suppressed because it is too large Load Diff

View File

@ -1,12 +1,17 @@
## Interface: 30300
## Interface: 40100
## Author: Parnic
## Name: Breakables
## Title: Breakables |cff7fff7f -Ace3-|r
## Title: Breakables |cff7fff7f-Ace3-|r
## Notes: Tracks herbs/ore/items that can be broken into component pieces
## Version: @project-version@ (Revision: @project-revision@)
## SavedVariables: BreakablesDB
## OptionalDeps: Ace3, LibBabble-Inventory-3.0
## OptionalDeps: Ace3, LibBabble-Inventory-3.0, ButtonFacade
#@no-lib-strip@
embeds.xml
#@end-no-lib-strip@
# LDB is hard-embedded so don't skip it if packaging no-lib
LibDataBroker-1.1.lua
loc\loc.xml
Breakables.lua

90
LibDataBroker-1.1.lua Normal file
View File

@ -0,0 +1,90 @@
assert(LibStub, "LibDataBroker-1.1 requires LibStub")
assert(LibStub:GetLibrary("CallbackHandler-1.0", true), "LibDataBroker-1.1 requires CallbackHandler-1.0")
local lib, oldminor = LibStub:NewLibrary("LibDataBroker-1.1", 4)
if not lib then return end
oldminor = oldminor or 0
lib.callbacks = lib.callbacks or LibStub:GetLibrary("CallbackHandler-1.0"):New(lib)
lib.attributestorage, lib.namestorage, lib.proxystorage = lib.attributestorage or {}, lib.namestorage or {}, lib.proxystorage or {}
local attributestorage, namestorage, callbacks = lib.attributestorage, lib.namestorage, lib.callbacks
if oldminor < 2 then
lib.domt = {
__metatable = "access denied",
__index = function(self, key) return attributestorage[self] and attributestorage[self][key] end,
}
end
if oldminor < 3 then
lib.domt.__newindex = function(self, key, value)
if not attributestorage[self] then attributestorage[self] = {} end
if attributestorage[self][key] == value then return end
attributestorage[self][key] = value
local name = namestorage[self]
if not name then return end
callbacks:Fire("LibDataBroker_AttributeChanged", name, key, value, self)
callbacks:Fire("LibDataBroker_AttributeChanged_"..name, name, key, value, self)
callbacks:Fire("LibDataBroker_AttributeChanged_"..name.."_"..key, name, key, value, self)
callbacks:Fire("LibDataBroker_AttributeChanged__"..key, name, key, value, self)
end
end
if oldminor < 2 then
function lib:NewDataObject(name, dataobj)
if self.proxystorage[name] then return end
if dataobj then
assert(type(dataobj) == "table", "Invalid dataobj, must be nil or a table")
self.attributestorage[dataobj] = {}
for i,v in pairs(dataobj) do
self.attributestorage[dataobj][i] = v
dataobj[i] = nil
end
end
dataobj = setmetatable(dataobj or {}, self.domt)
self.proxystorage[name], self.namestorage[dataobj] = dataobj, name
self.callbacks:Fire("LibDataBroker_DataObjectCreated", name, dataobj)
return dataobj
end
end
if oldminor < 1 then
function lib:DataObjectIterator()
return pairs(self.proxystorage)
end
function lib:GetDataObjectByName(dataobjectname)
return self.proxystorage[dataobjectname]
end
function lib:GetNameByDataObject(dataobject)
return self.namestorage[dataobject]
end
end
if oldminor < 4 then
local next = pairs(attributestorage)
function lib:pairs(dataobject_or_name)
local t = type(dataobject_or_name)
assert(t == "string" or t == "table", "Usage: ldb:pairs('dataobjectname') or ldb:pairs(dataobject)")
local dataobj = self.proxystorage[dataobject_or_name] or dataobject_or_name
assert(attributestorage[dataobj], "Data object not found")
return next, attributestorage[dataobj], nil
end
local ipairs_iter = ipairs(attributestorage)
function lib:ipairs(dataobject_or_name)
local t = type(dataobject_or_name)
assert(t == "string" or t == "table", "Usage: ldb:ipairs('dataobjectname') or ldb:ipairs(dataobject)")
local dataobj = self.proxystorage[dataobject_or_name] or dataobject_or_name
assert(attributestorage[dataobj], "Data object not found")
return ipairs_iter, attributestorage[dataobj], 0
end
end

View File

@ -6,6 +6,9 @@
<Include file="libs\AceConfig-3.0\AceConfig-3.0.xml"/>
<Include file="libs\AceConsole-3.0\AceConsole-3.0.xml"/>
<Include file="libs\AceDB-3.0\AceDB-3.0.xml"/>
<Include file="libs\AceDBOptions-3.0\AceDBOptions-3.0.xml"/>
<Include file="libs\AceEvent-3.0\AceEvent-3.0.xml"/>
<Include file="libs\AceLocale-3.0\AceLocale-3.0.xml"/>
<Include file="libs\LibBabble-Inventory-3.0\lib.xml"/>
<Include file="libs\LibButtonFacade\LibButtonFacade.xml"/>
</Ui>

4
loc/deDE.lua Normal file
View File

@ -0,0 +1,4 @@
local L = LibStub("AceLocale-3.0"):NewLocale("Breakables", "deDE")
if not L then return end
--@localization(locale="deDE", format="lua_additive_table", handle-subnamespaces="concat", handle-unlocalized="english")@

15
loc/enUS.lua Normal file
View File

@ -0,0 +1,15 @@
local debug = false
--@debug@
debug = true
--@end-debug@
local L = LibStub("AceLocale-3.0"):NewLocale("Breakables", "enUS", true, debug)
--@localization(locale="enUS", format="lua_additive_table", same-key-is-true=true, handle-subnamespaces="concat")@
--@debug@
L["Welcome"] = [[Thanks for using |cff33ff99Breakables|r! Use |cffffff78/brk|r to open this menu or |cffffff78/breakables|r to access the same options on the command line.
Hold shift and drag the profession button to move the breakables bar around. You can also click directly on any breakable item button to break it without having to click the profession button first.
If you have any feature requests or problems, please email |cff33ff99breakables@parnic.com|r or visit the |cffffff78curse.com|r or |cffffff78wowinterface.com|r page and leave a comment.]]
--@end-debug@

4
loc/esES.lua Normal file
View File

@ -0,0 +1,4 @@
local L = LibStub("AceLocale-3.0"):NewLocale("Breakables", "esES")
if not L then return end
--@localization(locale="esES", format="lua_additive_table", handle-subnamespaces="concat", handle-unlocalized="english")@

4
loc/esMX.lua Normal file
View File

@ -0,0 +1,4 @@
local L = LibStub("AceLocale-3.0"):NewLocale("Breakables", "esMX")
if not L then return end
--@localization(locale="esMX", format="lua_additive_table", handle-subnamespaces="concat", handle-unlocalized="english")@

4
loc/frFR.lua Normal file
View File

@ -0,0 +1,4 @@
local L = LibStub("AceLocale-3.0"):NewLocale("Breakables", "frFR")
if not L then return end
--@localization(locale="frFR", format="lua_additive_table", handle-subnamespaces="concat", handle-unlocalized="english")@

4
loc/koKR.lua Normal file
View File

@ -0,0 +1,4 @@
local L = LibStub("AceLocale-3.0"):NewLocale("Breakables", "koKR")
if not L then return end
--@localization(locale="koKR", format="lua_additive_table", handle-subnamespaces="concat", handle-unlocalized="english")@

13
loc/loc.xml Normal file
View File

@ -0,0 +1,13 @@
<Ui xmlns="http://www.blizzard.com/wow/ui/" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://www.blizzard.com/wow/ui/..\FrameXML\UI.xsd">
<Script file="enUS.lua"/>
<Script file="deDE.lua"/>
<Script file="esES.lua"/>
<Script file="esMX.lua"/>
<Script file="frFR.lua"/>
<Script file="koKR.lua"/>
<Script file="ruRU.lua"/>
<Script file="zhCN.lua"/>
<Script file="zhTW.lua"/>
</Ui>

4
loc/ruRU.lua Normal file
View File

@ -0,0 +1,4 @@
local L = LibStub("AceLocale-3.0"):NewLocale("Breakables", "ruRU")
if not L then return end
--@localization(locale="ruRU", format="lua_additive_table", handle-subnamespaces="concat", handle-unlocalized="english")@

4
loc/zhCN.lua Normal file
View File

@ -0,0 +1,4 @@
local L = LibStub("AceLocale-3.0"):NewLocale("Breakables", "zhCN")
if not L then return end
--@localization(locale="zhCN", format="lua_additive_table", handle-subnamespaces="concat", handle-unlocalized="english")@

4
loc/zhTW.lua Normal file
View File

@ -0,0 +1,4 @@
local L = LibStub("AceLocale-3.0"):NewLocale("Breakables", "zhTW")
if not L then return end
--@localization(locale="zhTW", format="lua_additive_table", handle-subnamespaces="concat", handle-unlocalized="english")@