20 Commits

Author SHA1 Message Date
570abca36f Bump interface version 2016-07-19 22:37:00 +02:00
7e13a47e52 7.0.3 compatibility fixes 2016-07-19 22:36:49 +02:00
152d61d84f Core lib version update to trigger packager 2015-08-28 12:36:48 +02:00
d21ff3c73a Core lib version update 2015-08-28 12:23:56 +02:00
59d3e610c3 TOC update 2015-08-28 12:23:37 +02:00
b5dc2961b0 Remove unused localization files 2015-01-06 22:25:23 +01:00
238145bef1 Use the localization from the core library 2015-01-06 22:24:49 +01:00
6e5fa165f2 Use the localization from the core library 2015-01-06 22:24:30 +01:00
c0db29ffe8 Use the localization from the core library 2015-01-06 22:24:08 +01:00
5fc53d2191 Use localized title string 2015-01-06 22:23:08 +01:00
b03e7b4df2 Add some new locale string 2015-01-06 22:22:33 +01:00
31f513db74 Move bindings to Addons category 2015-01-06 22:20:51 +01:00
25765b5f3c - Change event registration methods
- Add MyBank sorting
- Fix some tainting issue
2015-01-06 19:41:22 +01:00
3e06a3a7ad Change toc number 2015-01-05 15:55:37 +01:00
1dffea8341 Added bag sort capability to the inventory frame 2015-01-05 15:39:07 +01:00
237217ede4 Add some debug variable 2014-10-22 17:19:01 +02:00
9c84784542 line endings again 2014-10-21 18:12:30 +02:00
5775870bcd line endings 2014-10-21 18:11:43 +02:00
00683de69b TOC update 2014-10-21 18:10:14 +02:00
2b8a6af9e2 Core fixes for 6.0.2 2014-10-21 18:07:13 +02:00
17 changed files with 286 additions and 266 deletions

View File

@ -1,11 +1,11 @@
<Bindings> <Bindings>
<Binding name="MYINVENTORY" header="MYBAGSHEADER"> <Binding name="MYINVENTORY" header="MYBAGSHEADER" category="ADDONS">
if MyInventory then MyInventory:Toggle() end if MyInventory then MyInventory:Toggle() end
</Binding> </Binding>
<Binding name="MYBANK"> <Binding name="MYBANK" header="MYBAGSHEADER" category="ADDONS">
if MyBank then MyBank:Toggle() end if MyBank then MyBank:Toggle() end
</Binding> </Binding>
<Binding name="MYEQUIPMENT"> <Binding name="MYEQUIPMENT" header="MYBAGSHEADER" category="ADDONS">
if MyEquipment then MyEquipment:Toggle() end if MyEquipment then MyEquipment:Toggle() end
</Binding> </Binding>
</Bindings> </Bindings>

View File

@ -1,18 +1,21 @@
local L = LibStub("AceLocale-3.0"):NewLocale("MyBags", "enUS", true) local L = LibStub("AceLocale-3.0"):NewLocale("MyBags", "enUS", true)
if not L then return end if not L then
return
end
-- Global locales -- Global locales
L["ACE_TEXT_OF"] = "of"; L["ACE_TEXT_OF"] = "of";
L["CHARACTER_DELIMITOR"] = " of "; L["CHARACTER_DELIMITOR"] = " of ";
L["SplitString must be passed a string as the first argument"] = "SplitString must be passed a string as the first argument"; L["SplitString must be passed a string as the first argument"] = "SplitString must be passed a string as the first argument";
--KEYBINDINGS -- KEYBINDINGS
L["BINDING_HEADER_MYBAGSHEADER"] = "My Bags" L["BINDING_HEADER_MYBAGSHEADER"] = "My Bags"
L["BINDING_NAME_MYINVENTORY"] = "Toggle MyInventory" L["BINDING_NAME_MYINVENTORY"] = "Toggle MyInventory"
L["BINDING_NAME_MYBANK"] = "Toggle MyBank" L["BINDING_NAME_MYBANK"] = "Toggle MyBank"
L["BINDING_NAME_MYEQUIPMENT"] = "Toggle MyEquipment" L["BINDING_NAME_MYEQUIPMENT"] = "Toggle MyEquipment"
-- Bag types
L["ACEG_TEXT_AMMO"] = "Ammo"; L["ACEG_TEXT_AMMO"] = "Ammo";
L["ACEG_TEXT_QUIVER"] = "Quiver"; L["ACEG_TEXT_QUIVER"] = "Quiver";
L["ACEG_TEXT_SOUL"] = "Soul Bag"; L["ACEG_TEXT_SOUL"] = "Soul Bag";
@ -21,6 +24,7 @@ L["ACEG_TEXT_ENGINEER"] = "Engineering Bag";
L["ACEG_TEXT_GEM"] = "Gem Bag"; L["ACEG_TEXT_GEM"] = "Gem Bag";
L["ACEG_TEXT_HERB"] = "Herb Bag"; L["ACEG_TEXT_HERB"] = "Herb Bag";
L["ACEG_TEXT_MINING"] = "Mining Bag"; L["ACEG_TEXT_MINING"] = "Mining Bag";
L["ACEG_TEXT_NOW_SET_TO"] = "is now set to"; L["ACEG_TEXT_NOW_SET_TO"] = "is now set to";
L["ACEG_TEXT_DEFAULT"] = "default"; L["ACEG_TEXT_DEFAULT"] = "default";
L["ACEG_DISPLAY_OPTION"] = "[|cfff5f530%s|r]"; L["ACEG_DISPLAY_OPTION"] = "[|cfff5f530%s|r]";
@ -32,6 +36,12 @@ L["MYBAGS_TITLE0"] = ""
L["MYBAGS_TITLE1"] = "%s's " L["MYBAGS_TITLE1"] = "%s's "
L["MYBAGS_TITLE2"] = "%s of %s's " L["MYBAGS_TITLE2"] = "%s of %s's "
-- MYBANK_NAME = "MyBank"
-- MYBANK_DESCRIPTION = "All in one bank mod"
L["MYBANKFRAME_TITLE"] = "Bank"
L["MYINVENTORYFRAME_TITLE"] = "Inventory"
L["MYEQUIPMENTFRAME_TITLE"] = "Equipment"
L["MYBAGS_SLOTS_FREE"] = "%d/%d Slots Free"; L["MYBAGS_SLOTS_FREE"] = "%d/%d Slots Free";
L["MYBAGS_SLOTS_USED"] = "%d/%d Slots Used"; L["MYBAGS_SLOTS_USED"] = "%d/%d Slots Used";

View File

@ -1,4 +1,4 @@
## Interface: 50400 ## Interface: 70000
## Author: Ramble (modified by Isharra) (updated by thegabbert) (converted to Ace3 by Takika) ## Author: Ramble (modified by Isharra) (updated by thegabbert) (converted to Ace3 by Takika)
## Title: MyBags |cff007FFF -Ace3-|r ## Title: MyBags |cff007FFF -Ace3-|r
## Notes: Complete Replacement for Inventory and Bank Bags. ## Notes: Complete Replacement for Inventory and Bank Bags.

View File

@ -1,4 +0,0 @@
<?xml version="1.0" encoding="utf-8"?>
<Ui xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns="http://www.blizzard.com/wow/ui/" xsi:schemaLocation="http://www.blizzard.com/wow/ui/FrameXML\UI.xsd">
<Include file="enUS.lua"/>
</Ui>

View File

@ -1,36 +0,0 @@
local L = LibStub("AceLocale-3.0"):NewLocale("MyBagsCore", "enUS", true)
if not L then
return
end
L["ACE_TEXT_OF"] = "of";
L["CHARACTER_DELIMITOR"] = " of ";
L["ACEG_TEXT_AMMO"] = "Ammo";
L["ACEG_TEXT_QUIVER"] = "Quiver";
L["ACEG_TEXT_SOUL"] = "Soul Bag";
L["ACEG_TEXT_ENCHANT"] = "Enchanting Bag";
L["ACEG_TEXT_ENGINEER"] = "Engineering Bag";
L["ACEG_TEXT_GEM"] = "Gem Bag";
L["ACEG_TEXT_HERB"] = "Herb Bag";
L["ACEG_TEXT_MINING"] = "Mining Bag";
L["ACEG_TEXT_NOW_SET_TO"] = "is now set to";
L["ACEG_TEXT_DEFAULT"] = "default";
L["ACEG_DISPLAY_OPTION"] = "[|cfff5f530%s|r]";
L["ACE_CMD_REPORT_NO_VAL"] = "|cffc7c7c7no value|r"
L["ACE_CMD_RESULT"] = "|cffffff78%s:|r %s"
--MyInventory Title
L["MYBAGS_TITLE0"] = ""
L["MYBAGS_TITLE1"] = "%s's "
L["MYBAGS_TITLE2"] = "%s of %s's "
L["MYBAGS_SLOTS_FREE"] = "%d/%d Slots Free";
L["MYBAGS_SLOTS_USED"] = "%d/%d Slots Used";
-- SLASHCOMMANDS
--KEYBINDINGS
L["BINDING_HEADER_MYBAGSHEADER"] = "My Bags"
L["BINDING_NAME_MYINVENTORY"] = "My Inventory Toggle"
L["BINDING_NAME_MYBANK"] = "My Bank Toggle"
L["BINDING_NAME_MYEQUIPMENT"] = "My Equipment Toggle"

View File

@ -1,20 +1,23 @@
local MBC = "MyBagsCore-1.0" local MBC = "MyBagsCore-1.0"
local MBC_MINOR = "2014.02.11.3" local MBC_MINOR = "2015.08.28.2"
if not LibStub then error(MBC .. " requires LibStub.") end if not LibStub then
error(MBC .. " requires LibStub.")
end
local MyBagsCore = LibStub:NewLibrary(MBC, MBC_MINOR) local MyBagsCore = LibStub:NewLibrary(MBC, MBC_MINOR)
if not MyBagsCore then return end if not MyBagsCore then
return
end
MyBagsCore.embeds = MyBagsCore.embeds or {} -- table containing objects MyBagsCore is embedded in. MyBagsCore.embeds = MyBagsCore.embeds or {} -- table containing objects MyBagsCore is embedded in.
local AC = LibStub("AceConsole-3.0"); local AC = LibStub("AceConsole-3.0")
assert(AC, MBC .. " requires AceConsole-3.0"); assert(AC, MBC .. " requires AceConsole-3.0")
local MYBAGS_BOTTOMOFFSET = 20 local MYBAGS_BOTTOMOFFSET = 20
local MYBAGS_COLWIDTH = 40 local MYBAGS_COLWIDTH = 40
local MYBAGS_ROWHEIGHT = 40 local MYBAGS_ROWHEIGHT = 40
local MYBAGS_MAXBAGSLOTS = 28
local MIN_SCALE_VAL = "0.2" local MIN_SCALE_VAL = "0.2"
local MAX_SCALE_VAL = "2.0" local MAX_SCALE_VAL = "2.0"
@ -27,7 +30,7 @@ local MYBAGS_HERBCOLOR = { 0.0, 0.6, 0.0 }
local MYBAGS_GEMCOLOR = { 0.0, 0.6, 0.6 } local MYBAGS_GEMCOLOR = { 0.0, 0.6, 0.6 }
local MYBAGS_MININGCOLOR = { 0.0, 0.0, 0.6 } local MYBAGS_MININGCOLOR = { 0.0, 0.0, 0.6 }
local ACEG_MAP_ONOFF = {[0]="|cffff5050Off|r",[1]="|cff00ff00On|r"} local ACEG_MAP_ONOFF = {[0]="|cffff5050Off|r",[1]="|cff00ff00On|r"}
local L = LibStub("AceLocale-3.0"):GetLocale("MyBags") local L = LibStub("AceLocale-3.0"):GetLocale("MyBags")
@ -36,37 +39,38 @@ local strfind, strlen, strsub, strlower, strgmatch, strupper = string.find, stri
local strtrim = strtrim local strtrim = strtrim
local tinsert, tremove = table.insert, table.remove local tinsert, tremove = table.insert, table.remove
local tostring, tonumber, select = tostring, tonumber, select local tostring, tonumber, select = tostring, tonumber, select
local CreateFrame = _G.CreateFrame
local mb_options = { local mb_options = {
type = "group", type = "group",
args = { args = {
}, },
} }
local function tostr(str) local function tostr(str)
return tostring(str or "") return tostring(str or "")
end end
local function tonum(val) local function tonum(val)
return tonumber(val or 0) return tonumber(val or 0)
end end
local function ColorConvertHexToDigit(h) local function ColorConvertHexToDigit(h)
if (strlen(h) ~= 6) then if (strlen(h) ~= 6) then
return 0, 0, 0 return 0, 0, 0
end end
local r = { local r = {
a = 10, a = 10,
b = 11, b = 11,
c = 12, c = 12,
d = 13, d = 13,
e = 14, e = 14,
f = 15 f = 15
} }
return ((tonumber(strsub(h,1,1)) or r[strsub(h,1,1)] or 0) * 16 + (tonumber(strsub(h,2,2)) or r[strsub(h,2,2)] or 0))/255, return ((tonumber(strsub(h,1,1)) or r[strsub(h,1,1)] or 0) * 16 + (tonumber(strsub(h,2,2)) or r[strsub(h,2,2)] or 0))/255,
((tonumber(strsub(h,3,3)) or r[strsub(h,3,3)] or 0) * 16 + (tonumber(strsub(h,4,4)) or r[strsub(h,4,4)] or 0))/255, ((tonumber(strsub(h,3,3)) or r[strsub(h,3,3)] or 0) * 16 + (tonumber(strsub(h,4,4)) or r[strsub(h,4,4)] or 0))/255,
((tonumber(strsub(h,5,5)) or r[strsub(h,5,5)] or 0) * 16 + (tonumber(strsub(h,6,6)) or r[strsub(h,6,6)] or 0))/255 ((tonumber(strsub(h,5,5)) or r[strsub(h,5,5)] or 0) * 16 + (tonumber(strsub(h,6,6)) or r[strsub(h,6,6)] or 0))/255
end end
local function GetItemInfoFromLink(l) local function GetItemInfoFromLink(l)
@ -186,7 +190,7 @@ function MyBagsCore:OnEmbedInitialize(addon)
addon.SetOpt = function(var,val) addon.SetOpt = function(var,val)
local prof = addon.db:GetCurrentProfile() local prof = addon.db:GetCurrentProfile()
addon.db.profiles[prof][var] = val; addon.db.profiles[prof][var] = val
end end
addon.TogOpt = function(var) addon.TogOpt = function(var)
@ -247,16 +251,14 @@ function MyBagsCore:OnEmbedInitialize(addon)
LibStub("AceConfig-3.0"):RegisterOptionsTable(addon.name, addon.options) LibStub("AceConfig-3.0"):RegisterOptionsTable(addon.name, addon.options)
LibStub("AceConfigDialog-3.0"):AddToBlizOptions(addon.name, addon.name, "MyBags") LibStub("AceConfigDialog-3.0"):AddToBlizOptions(addon.name, addon.name, "MyBags")
local charName = strtrim(UnitName("player")); local charName = strtrim(UnitName("player"))
local realmName = strtrim(GetRealmName()); local realmName = strtrim(GetRealmName())
-- self.atBank = false
addon.Player = charName .. L["CHARACTER_DELIMITOR"] .. realmName addon.Player = charName .. L["CHARACTER_DELIMITOR"] .. realmName
end end
-- OnEnable -- OnEnable
function MyBagsCore:OnEmbedEnable(addon) function MyBagsCore:OnEmbedEnable(addon)
addon:RegisterEvents(); addon:HookFunctions()
addon:HookFunctions();
if addon.GetOpt("Scale") then if addon.GetOpt("Scale") then
addon.frame:SetScale(addon.GetOpt("Scale")) addon.frame:SetScale(addon.GetOpt("Scale"))
end end
@ -288,10 +290,18 @@ function MyBagsCore:RegisterEvents(obj)
self = obj self = obj
end end
self:RegisterEvent("BAG_UPDATE"); self:RegisterEvent("BAG_UPDATE")
self:RegisterEvent("BAG_UPDATE_COOLDOWN", "LayoutFrameOnEvent") self:RegisterEvent("BAG_UPDATE_COOLDOWN", "LayoutFrameOnEvent")
-- self:RegisterEvent("UNIT_INVENTORY_CHANGED", "UNIT_INVENTORY_CHANGED"); -- self:RegisterEvent("UNIT_INVENTORY_CHANGED", "UNIT_INVENTORY_CHANGED")
self:RegisterEvent("ITEM_LOCK_CHANGED", "LayoutFrameOnEvent"); self:RegisterEvent("ITEM_LOCK_CHANGED", "LayoutFrameOnEvent")
end
function MyBagsCore:UnregisterEvents(obj)
if (obj) then
self = obj
end
self:UnregisterAllEvents()
end end
function MyBagsCore:HookFunctions(obj) function MyBagsCore:HookFunctions(obj)
@ -398,8 +408,8 @@ function MyBagsCore:GetCurrentPlayer()
return self.Player return self.Player
end end
local charName = strtrim(UnitName("player")); local charName = strtrim(UnitName("player"))
local realmName = strtrim(GetRealmName()); local realmName = strtrim(GetRealmName())
return charName .. L["CHARACTER_DELIMITOR"] .. realmName return charName .. L["CHARACTER_DELIMITOR"] .. realmName
end end
@ -424,12 +434,13 @@ function MyBagsCore:TooltipSetOwner(owner, anchor)
end end
function MyBagsCore:Open() function MyBagsCore:Open()
self:RegisterEvents()
if not self.frame:IsVisible() then if not self.frame:IsVisible() then
self.frame:Show() self.frame:Show()
end end
local charName = strtrim(UnitName("player")); local charName = strtrim(UnitName("player"))
local realmName = strtrim(GetRealmName()); local realmName = strtrim(GetRealmName())
self.Player = charName .. L["CHARACTER_DELIMITOR"] .. realmName self.Player = charName .. L["CHARACTER_DELIMITOR"] .. realmName
if self.Player then if self.Player then
@ -446,6 +457,8 @@ function MyBagsCore:Close()
if self.frame:IsVisible() then if self.frame:IsVisible() then
self.frame:Hide() self.frame:Hide()
end end
self:UnregisterEvents()
end end
function MyBagsCore:Toggle() function MyBagsCore:Toggle()
@ -484,7 +497,7 @@ function MyBagsCore:BagIDToInvSlotID(bag, isBank)
end end
if isBank then if isBank then
return BankButtonIDToInvSlotID(bag, 1) return BankButtonIDToInvSlotID(bag - 4, 1)
end end
return ContainerIDToInventoryID(bag) return ContainerIDToInventoryID(bag)
@ -596,8 +609,8 @@ function MyBagsCore:GetInfo(bag, slot)
end end
function MyBagsCore:GetInfoLive(bag, slot) function MyBagsCore:GetInfoLive(bag, slot)
local charName = strtrim(UnitName("player")); local charName = strtrim(UnitName("player"))
local realmName = strtrim(GetRealmName()); local realmName = strtrim(GetRealmName())
self.Player = charName .. L["CHARACTER_DELIMITOR"] .. realmName self.Player = charName .. L["CHARACTER_DELIMITOR"] .. realmName
if slot ~= nil then if slot ~= nil then
-- it's an item -- it's an item
@ -626,7 +639,7 @@ function MyBagsCore:GetInfoLive(bag, slot)
readable = IsSpecialtyBagFromLink(itemLink) readable = IsSpecialtyBagFromLink(itemLink)
elseif (bag == -1) then elseif (bag == -1) then
texture = "Interface\\Buttons\\Button-Backpack-Up" texture = "Interface\\Buttons\\Button-Backpack-Up"
count = 28; count = 28
elseif (bag == 0) then elseif (bag == 0) then
texture = "Interface\\Buttons\\Button-Backpack-Up" texture = "Interface\\Buttons\\Button-Backpack-Up"
count = 16 count = 16
@ -747,9 +760,9 @@ end
--ITEMBUTTONS-- --ITEMBUTTONS--
function MyBagsCore:ItemButton_OnLoad(widget) function MyBagsCore:ItemButton_OnLoad(widget)
_G[widget:GetName().."NormalTexture"]:SetTexture("Interface\\AddOns\\MyBags\\Skin\\Button"); _G[widget:GetName().."NormalTexture"]:SetTexture("Interface\\AddOns\\MyBags\\Skin\\Button")
ContainerFrameItemButton_OnLoad(widget) ContainerFrameItemButton_OnLoad(widget)
widget.UpdateTooltip = widget.ItemButton_OnEnter; widget.UpdateTooltip = widget.ItemButton_OnEnter
end end
function MyBagsCore:ItemButton_OnLeave(widget) function MyBagsCore:ItemButton_OnLeave(widget)
@ -779,10 +792,10 @@ function MyBagsCore:ItemButton_OnModifiedClick(widget, button)
if self.isLive then if self.isLive then
-- if self.isBank and widget:GetParent():GetID() == BANK_CONTAINER then -- if self.isBank and widget:GetParent():GetID() == BANK_CONTAINER then
-- BankFrameItemButtonGeneric_OnModifiedClick(widget, button) -- BankFrameItemButtonGeneric_OnModifiedClick(widget, button)
-- StackSplitFrame:SetFrameStrata("TOOLTIP"); -- StackSplitFrame:SetFrameStrata("TOOLTIP")
-- else -- else
-- ContainerFrameItemButton_OnModifiedClick(widget, button) -- ContainerFrameItemButton_OnModifiedClick(widget, button)
-- StackSplitFrame:SetFrameStrata("TOOLTIP"); -- StackSplitFrame:SetFrameStrata("TOOLTIP")
-- end -- end
else else
if (button == "LeftButton") then if (button == "LeftButton") then
@ -802,7 +815,7 @@ function MyBagsCore:ItemButton_OnModifiedClick(widget, button)
ChatEdit_InsertLink(hyperLink) ChatEdit_InsertLink(hyperLink)
end end
StackSplitFrame:Hide(); StackSplitFrame:Hide()
end end
end end
end end
@ -862,16 +875,27 @@ end
--BAGBUTTONS-- --BAGBUTTONS--
function MyBagsCore:BagButton_OnEnter(widget) function MyBagsCore:BagButton_OnEnter(widget)
local bagFrame = widget:GetParent() local bagFrame = widget:GetParent()
local bagID = bagFrame:GetID()
local setTooltip = true local setTooltip = true
self:TooltipSetOwner(widget) self:TooltipSetOwner(widget)
if self.isLive then if self.isLive then
local invSlot = self:BagIDToInvSlotID(bagFrame:GetID()) if (bagID == 0) then
GameTooltip:SetText(BACKPACK_TOOLTIP, 1.0, 1.0, 1.0)
else
--
end
local invSlot = self:BagIDToInvSlotID(bagID)
if not invSlot or (not GameTooltip:SetInventoryItem("player", invSlot)) then if not invSlot or (not GameTooltip:SetInventoryItem("player", invSlot)) then
setTooltip = false setTooltip = false
end end
if (bagID == 0 or not IsInventoryItemProfessionBag("player", ContainerIDToInventoryID(bagID))) then
GameTooltip:AddLine(CLICK_BAG_SETTINGS)
end
else else
local ID = select(3, self:GetInfo(widget:GetParent():GetID())) local ID = select(3, self:GetInfo(bagID))
if bagFrame:GetID() == 0 then if bagID == 0 then
GameTooltip:SetText(BACKPACK_TOOLTIP, 1.0,1.0,1.0) GameTooltip:SetText(BACKPACK_TOOLTIP, 1.0,1.0,1.0)
elseif ID then elseif ID then
local hyperlink = self:GetHyperlink(ID) local hyperlink = self:GetHyperlink(ID)
@ -884,9 +908,8 @@ function MyBagsCore:BagButton_OnEnter(widget)
end end
if not setTooltip then if not setTooltip then
local keyBinding
if self.isBank then if self.isBank then
if self.isLive and not self:IsBagSlotUsable(bagFrame:GetID()) then if self.isLive and not self:IsBagSlotUsable(bagID) then
GameTooltip:SetText(BANK_BAG_PURCHASE) GameTooltip:SetText(BANK_BAG_PURCHASE)
if MyBank.atBank then if MyBank.atBank then
local cost = GetBankSlotCost() local cost = GetBankSlotCost()
@ -899,18 +922,15 @@ function MyBagsCore:BagButton_OnEnter(widget)
end end
GameTooltip:Show() GameTooltip:Show()
end end
keyBinding = GetBindingKey("TOGGLEBAG" .. (4 - widget:GetID()))
else else
GameTooltip:SetText(BANK_BAG) GameTooltip:SetText(BANK_BAG)
end end
else else
if bagFrame:GetID() == 0 then if bagID ~= 0 then
-- SetScript("OnEnter", MainMenuBarBackpackButton:GetScript("OnEnter"))
GameTooltip:SetText(BACKPACK_TOOLTIP, 1.0,1.0,1.0)
keyBinding = GetBindingKey("TOGGLEBACKPACK")
else
GameTooltip:SetText(EQUIP_CONTAINER) GameTooltip:SetText(EQUIP_CONTAINER)
else
-- SetScript("OnEnter", MainMenuBarBackpackButton:GetScript("OnEnter"))
-- GameTooltip:SetText(BACKPACK_TOOLTIP, 1.0,1.0,1.0)
end end
end end
end end
@ -925,10 +945,12 @@ function MyBagsCore:BagButton_OnEnter(widget)
end end
end end
end end
GameTooltip:Show()
end end
function MyBagsCore:BagButton_OnLeave(widget) function MyBagsCore:BagButton_OnLeave(widget)
SetMoneyFrameColor("GameTooltipMoneyFrame", 1.0, 1.0, 1.0); SetMoneyFrameColor("GameTooltipMoneyFrame", 1.0, 1.0, 1.0)
GameTooltip:Hide() GameTooltip:Hide()
local i local i
for i = 1, self.GetOpt("MAXBAGSLOTS") do for i = 1, self.GetOpt("MAXBAGSLOTS") do
@ -1020,6 +1042,7 @@ function MyBagsCore:LayoutOptions()
local cash = _G[self.frameName .. "MoneyFrame"] local cash = _G[self.frameName .. "MoneyFrame"]
local slots = _G[self.frameName .. "Slots"] local slots = _G[self.frameName .. "Slots"]
local buttons = _G[self.frameName .. "Buttons"] local buttons = _G[self.frameName .. "Buttons"]
local sortButton = _G[self.frameName .. "SortButton"]
local search = _G[self.frameName .. "SearchBox"] local search = _G[self.frameName .. "SearchBox"]
if search then if search then
@ -1051,31 +1074,31 @@ function MyBagsCore:LayoutOptions()
cash:Hide() cash:Hide()
end end
local token = _G[self.frameName .. "TokenFrame"]
if self.GetOpt("Token") and ManageBackpackTokenFrame then if self.GetOpt("Token") and ManageBackpackTokenFrame then
local token = _G[self.frameName .. "TokenFrame"]
if (BackpackTokenFrame_IsShown()) then if (BackpackTokenFrame_IsShown()) then
token:SetParent(self.frameName) token:SetParent(self.frameName)
token:SetPoint("RIGHT", cash, "LEFT", -10, 0) token:SetPoint("RIGHT", cash, "LEFT", -10, 0)
local i local i
for i=1, MAX_WATCHED_TOKENS do for i=1, MAX_WATCHED_TOKENS do
local name, count, icon, currencyID = GetBackpackCurrencyInfo(i); local name, count, icon, currencyID = GetBackpackCurrencyInfo(i)
-- Update watched tokens -- Update watched tokens
local watchButton = _G[self.frameName .. "TokenFrameToken"..i]; local watchButton = _G[self.frameName .. "TokenFrameToken"..i]
if ( name ) then if ( name ) then
watchButton.icon:SetTexture(icon); watchButton.icon:SetTexture(icon)
if ( count <= 99999 ) then if ( count <= 99999 ) then
watchButton.count:SetText(count); watchButton.count:SetText(count)
else else
watchButton.count:SetText("*"); watchButton.count:SetText("*")
end end
watchButton.currencyID = currencyID; watchButton.currencyID = currencyID
watchButton:Show(); watchButton:Show()
BackpackTokenFrame.shouldShow = 1; BackpackTokenFrame.shouldShow = 1
BackpackTokenFrame.numWatchedTokens = i; BackpackTokenFrame.numWatchedTokens = i
else else
watchButton:Hide(); watchButton:Hide()
if ( i == 1 ) then if ( i == 1 ) then
BackpackTokenFrame.shouldShow = nil; BackpackTokenFrame.shouldShow = nil
end end
end end
end end
@ -1084,6 +1107,7 @@ function MyBagsCore:LayoutOptions()
token:Hide() token:Hide()
end end
else else
token:Hide()
end end
if self.GetOpt("Buttons") then if self.GetOpt("Buttons") then
@ -1167,6 +1191,28 @@ function MyBagsCore:LayoutOptions()
else else
self.aioiOrder = false self.aioiOrder = false
end end
if self.isLive and self.GetOpt("BagSort") then
-- sortButton:ClearAllPoints()
sortButton:SetPoint("TOPRIGHT", search, "TOPLEFT", -20, 1)
sortButton:SetScript("OnEnter", nil)
sortButton:SetScript("OnLeave", nil)
sortButton:SetScript("OnClick", function()
self:SortBags();
end)
--[[
if search:IsShown() then
sortButton:SetPoint("TOPRIGHT", search, "TOPLEFT", -8, 0)
elseif playerSelectFrame:IsShown() then
sortButton:SetPoint("TOPRIGHT", playerSelectFrame, "TOPLEFT", -8, 0)
else
sortButton:SetPoint("TOPRIGHT", self.frameName, "TOPRIGHT", -8, -32)
end
]]
sortButton:Show()
else
sortButton:Hide()
end
end end
function MyBagsCore:UpdateTitle() function MyBagsCore:UpdateTitle()
@ -1187,7 +1233,7 @@ function MyBagsCore:UpdateTitle()
titleString = L["MYBAGS_TITLE0"] titleString = L["MYBAGS_TITLE0"]
end end
titleString = titleString .. _G[strupper(self.frameName) .. "_TITLE"] titleString = titleString .. L[strupper(self.frameName) .. "_TITLE"]
local title = _G[self.frameName .. "Name"] local title = _G[self.frameName .. "Name"]
local player, realm = self:SplitString(self:GetCurrentPlayer(), L["CHARACTER_DELIMITOR"]) local player, realm = self:SplitString(self:GetCurrentPlayer(), L["CHARACTER_DELIMITOR"])
title:SetText(format(titleString, player, realm)) title:SetText(format(titleString, player, realm))
@ -1265,7 +1311,7 @@ function MyBagsCore:GetXY(row, col)
end end
function MyBagsCore:LayoutBagFrame(bagFrame) function MyBagsCore:LayoutBagFrame(bagFrame)
local bagFrameName = bagFrame:GetName() local bagFrameName = bagFrame:GetName()
local bagParent = bagFrame:GetParent():GetName() local bagParent = bagFrame:GetParent():GetName()
local searchBox = _G[bagParent .. "SearchBox"] local searchBox = _G[bagParent .. "SearchBox"]
local searchText = searchBox:GetText() local searchText = searchBox:GetText()
@ -1343,11 +1389,17 @@ function MyBagsCore:LayoutBagFrame(bagFrame)
bagFrame.size = 0 bagFrame.size = 0
else else
for slot = 1, bagFrame.size do for slot = 1, bagFrame.size do
local itemButton = _G[itemBase .. slot] or CreateFrame("Button", itemBase .. slot, bagFrame, "MyBagsItemButtonTemplate") local itemButton
if (_G[itemBase .. slot]) then
itemButton = _G[itemBase .. slot]
else
itemButton = CreateFrame("Button", itemBase .. slot, bagFrame, "MyBagsItemButtonTemplate")
end
if (self:IsLive()) then if (self:IsLive()) then
itemButton:SetID(slot); itemButton:SetID(slot)
else else
itemButton:SetID(slot + 1000); itemButton:SetID(slot + 1000)
end end
if self.curCol >= self.GetOpt("Columns") then if self.curCol >= self.GetOpt("Columns") then
@ -1355,8 +1407,41 @@ function MyBagsCore:LayoutBagFrame(bagFrame)
self.curRow = self.curRow + 1 self.curRow = self.curRow + 1
end end
local newItemTexture = _G[itemBase .. slot .. "NewItemTexture"] local newItemTexture = _G[itemBase .. slot].NewItemTexture
newItemTexture:Hide() local flash = _G[itemBase .. slot].flashAnim
local newItemAnim = _G[itemBase .. slot].newitemglowAnim
local isNewItem = C_NewItems.IsNewItem(bagFrame:GetID(), itemButton:GetID())
local isBattlePayItem = IsBattlePayItem(bagFrame:GetID(), itemButton:GetID())
local battlepayItemTexture = _G[itemBase .. slot].BattlepayItemTexture
battlepayItemTexture:Hide()
if (isNewItem) then
if (isBattlePayItem) then
newItemTexture:Hide()
battlepayItemTexture:Show()
else
if (quality and NEW_ITEM_ATLAS_BY_QUALITY[quality]) then
newItemTexture:SetAtlas(NEW_ITEM_ATLAS_BY_QUALITY[quality])
else
newItemTexture:SetAtlas("bags-glow-white")
end
battlepayItemTexture:Hide()
newItemTexture:Show()
end
if (not flash:IsPlaying() and not newItemAnim:IsPlaying()) then
flash:Play()
newItemAnim:Play()
end
else
battlepayItemTexture:Hide()
newItemTexture:Hide()
if (flash:IsPlaying() or newItemAnim:IsPlaying()) then
flash:Stop()
newItemAnim:Stop()
end
end
itemButton:Show() itemButton:Show()
itemButton:ClearAllPoints() itemButton:ClearAllPoints()
itemButton:SetPoint("TOPLEFT", self.frame:GetName(), "TOPLEFT", self:GetXY(self.curRow, self.curCol)) itemButton:SetPoint("TOPLEFT", self.frame:GetName(), "TOPLEFT", self:GetXY(self.curRow, self.curCol))
@ -1380,7 +1465,7 @@ function MyBagsCore:LayoutBagFrame(bagFrame)
if self.isLive then if self.isLive then
local start, duration, enable = GetContainerItemCooldown(bagFrame:GetID(), slot) local start, duration, enable = GetContainerItemCooldown(bagFrame:GetID(), slot)
local cooldown = _G[itemButton:GetName() .. "Cooldown"] local cooldown = _G[itemButton:GetName() .. "Cooldown"]
CooldownFrame_SetTimer(cooldown, start, duration, enable) CooldownFrame_Set(cooldown, start, duration, enable)
if duration > 0 and enable == 0 then if duration > 0 and enable == 0 then
SetItemButtonTextureVertexColor(itemButton, 0.4, 0.4, 0.4) SetItemButtonTextureVertexColor(itemButton, 0.4, 0.4, 0.4)
end end
@ -1479,17 +1564,24 @@ function MyBagsCore:LayoutFrame()
end end
function MyBagsCore:LayoutFrameOnEvent(event, unit) function MyBagsCore:LayoutFrameOnEvent(event, unit)
if event == "UNIT_INVENTORY_CHANGED" and unit ~= "player" then if event == "UNIT_INVENTORY_CHANGED" and unit ~= "player" then
return return
end end
if event == "ITEM_LOCK_CHANGED" and not self.watchLock then if event == "ITEM_LOCK_CHANGED" and not self.watchLock then
return return
end end
if self.isLive then if event == "BAG_UPDATE_COOLDOWN" then
self:LayoutFrame() if self.isLive then
end self:LayoutFrame()
end
end
end
function MyBagsCore:SortBags()
PlaySound("UI_BagSorting_01")
SortBags()
end end
function MyBagsCore:LockButton_OnClick() function MyBagsCore:LockButton_OnClick()
@ -1652,6 +1744,11 @@ function MyBagsCore:SetStrata(strata)
end end
end end
function MyBagsCore:SetBagSort()
self.TogMsg("BagSort", "Bag sorting")
self:LayoutFrame()
end
function MyBagsCore:ResetSettings() function MyBagsCore:ResetSettings()
self.db:ResetProfile() self.db:ResetProfile()
local prof = self.db:GetCurrentProfile() local prof = self.db:GetCurrentProfile()
@ -1678,14 +1775,10 @@ function MyBagsCore:ResetAnchor()
end end
function MyBagsCore:SetAnchor(point) function MyBagsCore:SetAnchor(point)
if point == "topleft" then if not (point == "topleft" or point == "topright" or point == "bottomleft" or point == "bottomright") then
elseif point == "topright" then
elseif point == "bottomleft" then
elseif point == "bottomright" then
else
self.Error("Invalid Entry for Anchor") self.Error("Invalid Entry for Anchor")
return return
end end
local anchorframe = self.frame:GetParent() local anchorframe = self.frame:GetParent()
local top = self.frame:GetTop() local top = self.frame:GetTop()
@ -1693,7 +1786,8 @@ function MyBagsCore:SetAnchor(point)
local top1 = anchorframe:GetTop() local top1 = anchorframe:GetTop()
local left1 = anchorframe:GetLeft() local left1 = anchorframe:GetLeft()
if not top or not left or not left1 or not top1 then if not top or not left or not left1 or not top1 then
self.Error("Frame must be open to set anchor") return self.Error("Frame must be open to set anchor")
return
end end
self.frame:ClearAllPoints() self.frame:ClearAllPoints()
@ -1756,13 +1850,13 @@ function MyBagsCore:BagSearch_OnTextChanged()
local search = _G[self.frameName .. "SearchBox"] local search = _G[self.frameName .. "SearchBox"]
local text = search:GetText() local text = search:GetText()
if (text == SEARCH) then if (text == SEARCH) then
text = ""; text = ""
end end
if (text ~= "") then if (text ~= "") then
search.clearButton:Show(); search.clearButton:Show()
else else
search.clearButton:Hide(); search.clearButton:Hide()
end end
self:LayoutFrame() self:LayoutFrame()
@ -1775,14 +1869,18 @@ function MyBagsCore:BagSearch_OnEditFocusGained()
search.searchIcon:SetVertexColor(1.0, 1.0, 1.0) search.searchIcon:SetVertexColor(1.0, 1.0, 1.0)
local text = search:GetText() local text = search:GetText()
if (text == SEARCH) then if (text == SEARCH) then
text = ""; text = ""
end end
search.clearButton:Show(); search.clearButton:Show()
search:SetText(text) search:SetText(text)
self:LayoutFrame() self:LayoutFrame()
end end
function MyBagsCore:GetCoreVersion()
return MBC .. " version " .. MBC_MINOR
end
local mixins = { local mixins = {
"ToggleBag", "ToggleBag",
"OpenBag", "OpenBag",
@ -1830,6 +1928,7 @@ local mixins = {
"LayoutBagFrame", "LayoutBagFrame",
"LayoutFrame", "LayoutFrame",
"LayoutFrameOnEvent", "LayoutFrameOnEvent",
"SortBags",
"LockButton_OnClick", "LockButton_OnClick",
"SetColumns", "SetColumns",
"SetReplace", "SetReplace",
@ -1851,6 +1950,7 @@ local mixins = {
"SetCount", "SetCount",
"SetScale", "SetScale",
"SetStrata", "SetStrata",
"SetBagSort",
"ResetSettings", "ResetSettings",
"ResetAnchor", "ResetAnchor",
"SetAnchor", "SetAnchor",
@ -1861,6 +1961,7 @@ local mixins = {
"BagSearch_OnEditFocusGained", "BagSearch_OnEditFocusGained",
"RegisterEvents", "RegisterEvents",
"UnregisterEvents", "UnregisterEvents",
"GetCoreVersion",
} }
function MyBagsCore:Embed( target ) function MyBagsCore:Embed( target )

View File

@ -2,7 +2,7 @@
xsi:schemaLocation="http://www.blizzard.com/wow/ui/FrameXML/UI.xsd"> xsi:schemaLocation="http://www.blizzard.com/wow/ui/FrameXML/UI.xsd">
<Script file="MyBags.lua"/> <Script file="MyBags.lua"/>
<!-- Templates --> <!-- Templates -->
<Button name="MyBagsItemButtonTemplate" inherits="ContainerFrameItemButtonTemplate" virtual="true"> <Button name="MyBagsItemButtonTemplate" inherits="ContainerFrameItemButtonTemplate" virtual="true" hidden="true">
<Frames> <Frames>
<Cooldown name="$parentCooldown" inherits="CooldownFrameTemplate"/> <Cooldown name="$parentCooldown" inherits="CooldownFrameTemplate"/>
</Frames> </Frames>
@ -366,6 +366,22 @@
<Frame name="$parentBag4" inherits="MyBagsContainerTemplate" id="4"/> <Frame name="$parentBag4" inherits="MyBagsContainerTemplate" id="4"/>
<Frame name="$parentButtons" inherits="MyBagsButtonBarTemplate"/> <Frame name="$parentButtons" inherits="MyBagsButtonBarTemplate"/>
<Frame name="$parentCharSelect" inherits="MyBagsCharSelectTemplate"/> <Frame name="$parentCharSelect" inherits="MyBagsCharSelectTemplate"/>
<Button name="$parentSortButton">
<Size x="28" y="26"/>
<NormalTexture atlas="bags-button-autosort-up"/>
<PushedTexture atlas="bags-button-autosort-down"/>
<HighlightTexture file="Interface\Buttons\ButtonHilight-Square" alphaMode="ADD">
<Size x="24" y="23"/>
<Anchors>
<Anchor point="CENTER" x="0" y="0"/>
</Anchors>
</HighlightTexture>
<Scripts>
<OnEnter/>
<OnLeave/>
<OnClick/>
</Scripts>
</Button>
<Frame name="$parentTokenFrame"> <Frame name="$parentTokenFrame">
<Size> <Size>
<AbsDimension x="183" y="32"/> <AbsDimension x="183" y="32"/>

View File

@ -1,4 +0,0 @@
<?xml version="1.0" encoding="utf-8"?>
<Ui xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns="http://www.blizzard.com/wow/ui/" xsi:schemaLocation="http://www.blizzard.com/wow/ui/FrameXML\UI.xsd">
<Include file="enUS.lua"/>
</Ui>

View File

@ -1,34 +0,0 @@
-- Version : English - Ramble
MYBANK_NAME = "MyBank"
MYBANK_DESCRIPTION = "All in one bank mod"
MYBANKFRAME_TITLE = "Bank"
-- SLASHCOMMANDS
-- MYBANK_COMMANDS = {"/mybank", "/mb"}
--[[ MYBANK_CMD_OPTIONS = {
MYBAGS_CMD_OPT_REPLACE, -- done
MYBAGS_CMD_OPT_FREEZE, -- done
MYBAGS_CMD_OPT_LOCK, -- done
MYBAGS_CMD_OPT_COLUMNS, -- done
MYBAGS_CMD_OPT_BAG, -- done
MYBAGS_CMD_OPT_HIGHLIGHT, -- done
MYBAGS_CMD_OPT_NOESC, -- done
MYBAGS_CMD_OPT_TITLE, -- done
MYBAGS_CMD_OPT_CASH, -- done
MYBAGS_CMD_OPT_BUTTONS, -- done
MYBAGS_CMD_OPT_AIOI, -- done
MYBAGS_CMD_OPT_REVERSE, -- done
MYBAGS_CMD_OPT_BORDER, -- done
MYBAGS_CMD_OPT_PLAYERSEL, -- done
MYBAGS_CMD_OPT_COUNT, -- done
MYBAGS_CMD_OPT_SCALE, -- done
MYBAGS_CMD_OPT_STRATA, -- done
MYBAGS_CMD_OPT_ANCHOR, -- done
MYBAGS_CMD_OPT_TOGGLE, -- done
MYBAGS_CMD_RESET, -- done
MYBAGS_CMD_OPT_GRAPHICS, -- skip
MYBAGS_CMD_OPT_SLOTCOLOR, -- skip
}
]]

View File

@ -2,10 +2,11 @@ local MYBANK_DEFAULT_OPTIONS = {
["Columns"] = 14, ["Columns"] = 14,
["Replace"] = true, ["Replace"] = true,
["Bag"] = "bar", ["Bag"] = "bar",
["BagSort"] = true,
["Graphics"] = "art", ["Graphics"] = "art",
["Count"] = "free", ["Count"] = "free",
["HlItems"] = true, ["HlItems"] = true,
["Sort"] = "realm", ["Sort"] = "realm",
["Search"] = true, ["Search"] = true,
["HlBags"] = true, ["HlBags"] = true,
["Freeze"] = "sticky", ["Freeze"] = "sticky",
@ -136,6 +137,17 @@ function MyBank:OnInitialize()
MyBank:SetBagDisplay(val) MyBank:SetBagDisplay(val)
end, end,
}, },
bagsort = {
type = "toggle",
name = "BagSort",
desc = "Toggle bag sort button",
get = function(info)
return MyBank.IsSet("BagSort")
end,
set = function(info, val)
MyBank:SetBagSort()
end,
},
back = { back = {
type = "select", type = "select",
name = "Background", name = "Background",
@ -389,7 +401,7 @@ function MyBank:OnInitialize()
end end
function MyBank:OnEnable() function MyBank:OnEnable()
-- MyBagsCore:Enable(self); -- MyBagsCore:Enable(self);
MyBankFrameBank.maxIndex = 28 MyBankFrameBank.maxIndex = 28
MyBankFrameBank:SetID(BANK_CONTAINER) MyBankFrameBank:SetID(BANK_CONTAINER)
MyBankFrameBag0:SetID(5) MyBankFrameBag0:SetID(5)
@ -399,11 +411,14 @@ function MyBank:OnEnable()
MyBankFrameBag4:SetID(9) MyBankFrameBag4:SetID(9)
MyBankFrameBag5:SetID(10) MyBankFrameBag5:SetID(10)
MyBankFrameBag6:SetID(11) MyBankFrameBag6:SetID(11)
if self.GetOpt("Replace") then if self.GetOpt("Replace") then
BankFrame:UnregisterEvent("BANKFRAME_OPENED") BankFrame:UnregisterEvent("BANKFRAME_OPENED")
BankFrame:UnregisterEvent("BANKFRAME_CLOSED") BankFrame:UnregisterEvent("BANKFRAME_CLOSED")
_G["BankFrame"] = self.frame
end end
self:RegisterEvent("BANKFRAME_OPENED")
MyBankFramePortrait:SetTexture("Interface\\Addons\\MyBags\\Skin\\MyBankPortrait") MyBankFramePortrait:SetTexture("Interface\\Addons\\MyBags\\Skin\\MyBankPortrait")
StaticPopupDialogs["PURCHASE_BANKBAG"] = { StaticPopupDialogs["PURCHASE_BANKBAG"] = {
preferredIndex = STATICPOPUPS_NUMDIALOGS, preferredIndex = STATICPOPUPS_NUMDIALOGS,
@ -489,10 +504,14 @@ end
function MyBank:RegisterEvents() function MyBank:RegisterEvents()
MB_Core:RegisterEvents(self) MB_Core:RegisterEvents(self)
self:RegisterEvent("BANKFRAME_OPENED")
self:RegisterEvent("BANKFRAME_CLOSED")
self:RegisterEvent("PLAYERBANKSLOTS_CHANGED", "LayoutFrameOnEvent") self:RegisterEvent("PLAYERBANKSLOTS_CHANGED", "LayoutFrameOnEvent")
self:RegisterEvent("PLAYERBANKBAGSLOTS_CHANGED","LayoutFrameOnEvent") self:RegisterEvent("PLAYERBANKBAGSLOTS_CHANGED","LayoutFrameOnEvent")
self:RegisterEvent("BANKFRAME_CLOSED")
end
function MyBank:UnregisterEvents()
MB_Core:UnregisterEvents(self)
self:RegisterEvent("BANKFRAME_OPENED")
end end
function MyBank:HookFunctions() function MyBank:HookFunctions()
@ -548,6 +567,7 @@ function MyBank:BAG_UPDATE(event, bag)
end end
function MyBank:BANKFRAME_OPENED() function MyBank:BANKFRAME_OPENED()
self:RegisterEvents()
MyBank.atBank = true MyBank.atBank = true
SetPortraitTexture(MyBankFramePortrait, "npc") SetPortraitTexture(MyBankFramePortrait, "npc")
if self.Freeze == "always" or (self.Freeze == "sticky" and self.frame:IsVisible()) then if self.Freeze == "always" or (self.Freeze == "sticky" and self.frame:IsVisible()) then
@ -573,6 +593,7 @@ function MyBank:BANKFRAME_CLOSED()
self.holdOpen = false self.holdOpen = false
if self.isLive then self:LayoutFrame() end if self.isLive then self:LayoutFrame() end
end end
self:UnregisterEvents()
end end
function MyBank:GetInfoFunc() function MyBank:GetInfoFunc()
@ -702,3 +723,8 @@ function MyBank:SetReplace()
BankFrame:RegisterEvent("BANKFRAME_CLOSED") BankFrame:RegisterEvent("BANKFRAME_CLOSED")
end end
end end
function MyBank:SortBags()
PlaySound("UI_BagSorting_01")
SortBankBags()
end

View File

@ -1,7 +1,6 @@
<Ui xmlns="http://www.blizzard.com/wow/ui/" <Ui xmlns="http://www.blizzard.com/wow/ui/"
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xsi:schemaLocation="http://www.blizzard.com/wow/ui/FrameXML/UI.xsd"> xsi:schemaLocation="http://www.blizzard.com/wow/ui/FrameXML/UI.xsd">
<Include file="Locals\Locals.xml"/>
<Script file="MyBank.lua"/> <Script file="MyBank.lua"/>
<Frame name="MyBagsBankContainerTemplate" inherits="MyBagsContainerTemplate" ID="BANK_CONTAINER" virtual="true"> <Frame name="MyBagsBankContainerTemplate" inherits="MyBagsContainerTemplate" ID="BANK_CONTAINER" virtual="true">
</Frame> </Frame>

View File

@ -552,7 +552,7 @@ function MyEquipment:LayoutEquipmentFrame(self)
if self.isLive then if self.isLive then
local start,duration, enable = GetInventoryItemCooldown("player", slot) local start,duration, enable = GetInventoryItemCooldown("player", slot)
local cooldown = _G[itemButton:GetName() .. "Cooldown"] local cooldown = _G[itemButton:GetName() .. "Cooldown"]
CooldownFrame_SetTimer(cooldown,start,duration,enable) CooldownFrame_Set(cooldown,start,duration,enable)
if duration>0 and enable==0 then if duration>0 and enable==0 then
SetItemButtonTextureVertexColor(itemButton, 0.4,0.4,0.4) SetItemButtonTextureVertexColor(itemButton, 0.4,0.4,0.4)
end end

View File

@ -1,7 +1,6 @@
<Ui xmlns="http://www.blizzard.com/wow/ui/" <Ui xmlns="http://www.blizzard.com/wow/ui/"
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xsi:schemaLocation="http://www.blizzard.com/wow/ui/FrameXML/UI.xsd"> xsi:schemaLocation="http://www.blizzard.com/wow/ui/FrameXML/UI.xsd">
<Script file="locals.lua" />
<Script file="MyEquipment.lua" /> <Script file="MyEquipment.lua" />
<!-- Templates --> <!-- Templates -->

View File

@ -1,29 +0,0 @@
-- Version : English - Isharra
MYEQUIPMENT_NAME = "MyEquipment"
MYEQUIPMENT_DESCRIPTION = "Equipped items display"
MYEQUIPMENTFRAME_TITLE = "Equipment"
-- SLASHCOMMANDS
-- /me already taken by emote commands
-- MYEQUIPMENT_COMMANDS = {"/myequipment", "/myequip", "/mq"}
--[[ MYEQUIPMENT_CMD_OPTIONS = {
MYBAGS_CMD_OPT_LOCK, -- done
MYBAGS_CMD_OPT_COLUMNS, -- done
MYBAGS_CMD_OPT_NOESC, -- done
MYBAGS_CMD_OPT_TITLE, -- done
MYBAGS_CMD_OPT_CASH, -- done
MYBAGS_CMD_OPT_BUTTONS, -- done
MYBAGS_CMD_OPT_AIOI, -- done
MYBAGS_CMD_OPT_BORDER, -- done
MYBAGS_CMD_OPT_PLAYERSEL, -- done
MYBAGS_CMD_OPT_SCALE, -- done
MYBAGS_CMD_OPT_STRATA, -- done
MYBAGS_CMD_OPT_ANCHOR, -- done
MYBAGS_CMD_OPT_TOGGLE, -- done
MYBAGS_CMD_RESET, -- done
MYBAGS_CMD_OPT_GRAPHICS, -- skip
MYBAGS_CMD_OPT_SLOTCOLOR, -- skip
}
]]

View File

@ -2,12 +2,13 @@ local MYINVENTORY_DEFAULT_OPTIONS = {
["Columns"] = 12, ["Columns"] = 12,
["Replace"] = true, ["Replace"] = true,
["Bag"] = "bar", ["Bag"] = "bar",
["BagSort"] = true,
["Graphics"] = "art", ["Graphics"] = "art",
["Count"] = "free", ["Count"] = "free",
["HlItems"] = true, ["HlItems"] = true,
["Sort"] = "realm", ["Sort"] = "realm",
["Search"] = true, ["Search"] = true,
["Token"] = true, ["Token"] = true,
["HlBags"] = true, ["HlBags"] = true,
["Freeze"] = "sticky", ["Freeze"] = "sticky",
["NoEsc"] = false, ["NoEsc"] = false,
@ -55,6 +56,7 @@ function MyInventory:OnInitialize()
self.anchorOffsetX = -5 self.anchorOffsetX = -5
self.anchorOffsetY = 100 self.anchorOffsetY = 100
self.isBank = false self.isBank = false
self.version = MB_Core:GetCoreVersion()
self.db = LibStub("AceDB-3.0"):New("MyInventoryDB") self.db = LibStub("AceDB-3.0"):New("MyInventoryDB")
local prof = self.db:GetCurrentProfile() local prof = self.db:GetCurrentProfile()
if self.db.profiles[prof] and self.db.profiles[prof]["Columns"] and self.db.profiles[prof]["Columns"] > 0 then if self.db.profiles[prof] and self.db.profiles[prof]["Columns"] and self.db.profiles[prof]["Columns"] > 0 then
@ -136,6 +138,17 @@ function MyInventory:OnInitialize()
MyInventory:SetBagDisplay(val) MyInventory:SetBagDisplay(val)
end end
}, },
bagsort = {
type = "toggle",
name = "BagSort",
desc = "Toggle bag sort button",
get = function(info)
return MyInventory.IsSet("BagSort")
end,
set = function(info, val)
MyInventory:SetBagSort()
end,
},
back = { back = {
type = "select", type = "select",
name = "Background", name = "Background",
@ -433,7 +446,7 @@ function MyInventory:LoadDropDown()
_G["this"] = dropDownButton _G["this"] = dropDownButton
UIDropDownMenu_Initialize(dropDown, self.UserDropDown_Initialize) UIDropDownMenu_Initialize(dropDown, self.UserDropDown_Initialize)
UIDropDownMenu_SetSelectedValue(dropDown, self:GetCurrentPlayer()) UIDropDownMenu_SetSelectedValue(dropDown, self:GetCurrentPlayer())
-- UIDropDownMenu_SetSelectedValue(dropDown, self.Player) -- UIDropDownMenu_SetSelectedValue(dropDown, self.Player)
UIDropDownMenu_SetWidth(dropDown, 140) UIDropDownMenu_SetWidth(dropDown, 140)
_G["this"] = last_this _G["this"] = last_this
end end

View File

@ -1,7 +1,6 @@
<Ui xmlns="http://www.blizzard.com/wow/ui/" <Ui xmlns="http://www.blizzard.com/wow/ui/"
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xsi:schemaLocation="http://www.blizzard.com/wow/ui/FrameXML/UI.xsd"> xsi:schemaLocation="http://www.blizzard.com/wow/ui/FrameXML/UI.xsd">
<Script file="locals.lua"/>
<Script file="MyInventory.lua"/> <Script file="MyInventory.lua"/>
<Frame name="MyInventoryAnchorFrame" hidden="false" movable="true" parent="UIParent"> <Frame name="MyInventoryAnchorFrame" hidden="false" movable="true" parent="UIParent">
<Size> <Size>

View File

@ -1,36 +0,0 @@
-- Version : English - Ramble
MYINVENTORY_NAME = "MyInventory"
MYINVENTORY_DESCRIPTION = "All in one inventory mod"
MYINVENTORYFRAME_TITLE = "Inventory"
-- SLASHCOMMANDS
--[[
MYINVENTORY_COMMANDS = {"/myinventory", "/mi"}
MYINVENTORY_CMD_OPTIONS = {
MYBAGS_CMD_OPT_TOGGLE, -- done
MYBAGS_CMD_OPT_FREEZE, -- done
MYBAGS_CMD_OPT_NOESC, -- done
MYBAGS_CMD_OPT_COLUMNS, -- done
MYBAGS_CMD_OPT_REPLACE, -- done
MYBAGS_CMD_OPT_BAG, -- done
MYBAGS_CMD_OPT_GRAPHICS, -- ????
MYBAGS_CMD_OPT_HIGHLIGHT, -- done
MYBAGS_CMD_OPT_LOCK, -- done
MYBAGS_CMD_OPT_TITLE, -- done
MYBAGS_CMD_OPT_CASH, -- done
MYBAGS_CMD_OPT_BUTTONS, -- done
MYBAGS_CMD_OPT_AIOI, -- done
MYBAGS_CMD_OPT_REVERSE, -- done
MYBAGS_CMD_OPT_BORDER, -- done
MYBAGS_CMD_OPT_PLAYERSEL, -- done
MYBAGS_CMD_OPT_COUNT,
MYBAGS_CMD_OPT_SCALE,
MYBAGS_CMD_OPT_STRATA,
MYBAGS_CMD_OPT_ANCHOR,
MYBAGS_CMD_RESET,
MYBAGS_CMD_OPT_SLOTCOLOR,
MYBAGS_CMD_OPT_COMPANION,
}
]]