From 8a909794ce07283a9df4a0c660bdbb56fa23ad17 Mon Sep 17 00:00:00 2001 From: Crum Date: Wed, 21 Nov 2018 02:57:10 -0600 Subject: [PATCH] update --- ElvUI/Modules/Bags/Bags.lua | 59 ---------------- .../widgets/AceGUIWidget-EditBox.lua | 68 ++++++++----------- .../widgets/AceGUIWidget-MultiLineEditBox.lua | 68 ++++++++----------- 3 files changed, 56 insertions(+), 139 deletions(-) diff --git a/ElvUI/Modules/Bags/Bags.lua b/ElvUI/Modules/Bags/Bags.lua index 4dd8ada..eed321d 100644 --- a/ElvUI/Modules/Bags/Bags.lua +++ b/ElvUI/Modules/Bags/Bags.lua @@ -413,61 +413,6 @@ function B:ResetSlotAlphaForBags(f) end end -local function buttonOnClick(button, ignoreModifiers) - if not button then button = arg1 end - - --KeyRing special case code - if this:GetParent():GetID() == KEYRING_CONTAINER then - KeyRingItemButton_OnClick(button, ignoreModifiers) - return - end - - if button == "LeftButton" then - if IsControlKeyDown() and not ignoreModifiers then - DressUpItemLink(GetContainerItemLink(this:GetParent():GetID(), this:GetID())) - elseif IsShiftKeyDown() and not ignoreModifiers then - if ChatFrameEditBox:IsShown() then - ChatFrameEditBox:Insert(GetContainerItemLink(this:GetParent():GetID(), this:GetID())) - else - local texture, itemCount, locked = GetContainerItemInfo(this:GetParent():GetID(), this:GetID()) - if not locked then - this.SplitStack = function(button, split) - SplitContainerItem(button:GetParent():GetID(), button:GetID(), split) - end - OpenStackSplitFrame(this.count, this, "BOTTOMRIGHT", "TOPRIGHT") - end - end - else - PickupContainerItem(this:GetParent():GetID(), this:GetID()) - StackSplitFrame:Hide() - end - else - if IsControlKeyDown() and not ignoreModifiers then - return - elseif IsShiftKeyDown() and MerchantFrame:IsShown() and not ignoreModifiers then - this.SplitStack = function(button, split) - SplitContainerItem(button:GetParent():GetID(), button:GetID(), split) - MerchantItemButton_OnClick("LeftButton") - end - OpenStackSplitFrame(this.count, this, "BOTTOMRIGHT", "TOPRIGHT") - elseif MerchantFrame:IsShown() and MerchantFrame.selectedTab == 2 then - -- Don't sell the item if the buyback tab is selected - return - else - UseContainerItem(this:GetParent():GetID(), this:GetID()) - StackSplitFrame:Hide() - end - end -end - -local function buttonOnDragStart() - buttonOnClick("LeftButton", 1) -end - -local function buttonOnReceiveDrag() - buttonOnClick("LeftButton", 1) -end - function B:Layout(isBank) if E.private.bags.enable ~= true then return end local f = self:GetContainerFrame(isBank) @@ -585,10 +530,6 @@ function B:Layout(isBank) f.Bags[bagID][slotID]:SetNormalTexture("") f.Bags[bagID][slotID]:SetCheckedTexture("") - f.Bags[bagID][slotID]:SetScript("OnClick", buttonOnClick) - f.Bags[bagID][slotID]:SetScript("OnDragStart", buttonOnDragStart) - f.Bags[bagID][slotID]:SetScript("OnReceiveDrag", buttonOnReceiveDrag) - f.Bags[bagID][slotID].Count = _G[f.Bags[bagID][slotID]:GetName().."Count"] f.Bags[bagID][slotID].Count:ClearAllPoints() E:Point(f.Bags[bagID][slotID].Count, "BOTTOMRIGHT", 0, 2) diff --git a/ElvUI_Config/Libraries/AceGUI-3.0/widgets/AceGUIWidget-EditBox.lua b/ElvUI_Config/Libraries/AceGUI-3.0/widgets/AceGUIWidget-EditBox.lua index e2acd12..d94dc74 100644 --- a/ElvUI_Config/Libraries/AceGUI-3.0/widgets/AceGUIWidget-EditBox.lua +++ b/ElvUI_Config/Libraries/AceGUI-3.0/widgets/AceGUIWidget-EditBox.lua @@ -38,104 +38,92 @@ Support functions -------------------------------------------------------------------------------]] if not AceGUIEditBoxInsertLink then -- upgradeable hook - local orig_BankFrameItemButtonGeneric_OnClick = BankFrameItemButtonGeneric_OnClick - function BankFrameItemButtonGeneric_OnClick(button) + hooksecurefunc("BankFrameItemButtonGeneric_OnClick", function(button) if button == "LeftButton" and IsShiftKeyDown() and not this.isBag then return _G.AceGUIEditBoxInsertLink(GetContainerItemLink(BANK_CONTAINER, this:GetID())) end - end + end) - local orig_ContainerFrameItemButton_OnClick = ContainerFrameItemButton_OnClick - function ContainerFrameItemButton_OnClick(button, ignoreModifiers) + hooksecurefunc("ContainerFrameItemButton_OnClick", function(button, ignoreModifiers) if button == "LeftButton" and IsShiftKeyDown() and not ignoreModifiers then return _G.AceGUIEditBoxInsertLink(GetContainerItemLink(this:GetParent():GetID(), this:GetID())) end - end + end) - local orig_KeyRingItemButton_OnClick = KeyRingItemButton_OnClick - function KeyRingItemButton_OnClick(button) + hooksecurefunc("KeyRingItemButton_OnClick", function(button) if button == "LeftButton" and IsShiftKeyDown() and not this.isBag then return _G.AceGUIEditBoxInsertLink(GetContainerItemLink(KEYRING_CONTAINER, this:GetID())) end - end + end) - local orig_LootFrameItem_OnClick = LootFrameItem_OnClick - function LootFrameItem_OnClick(button) + hooksecurefunc("LootFrameItem_OnClick", function(button) if button == "LeftButton" and IsShiftKeyDown() then return _G.AceGUIEditBoxInsertLink(GetLootSlotLink(this.slot)) end - end + end) - local orig_SetItemRef = SetItemRef - function SetItemRef(link, text, button) + hooksecurefunc("SetItemRef", function(link, text, button) if IsShiftKeyDown() then - if sub(link, 1, 6) == "player" then - local name = sub(link, 8) - if name and name ~= "" then + if strsub(link,1,6) == "player" then + local name = strsub(link,8) + if name and (strlen(name) > 0) then return _G.AceGUIEditBoxInsertLink(name) end else return _G.AceGUIEditBoxInsertLink(text) end end - end + end) - local orig_MerchantItemButton_OnClick = MerchantItemButton_OnClick - function MerchantItemButton_OnClick(button, ignoreModifiers) + hooksecurefunc("MerchantItemButton_OnClick", function(button, ignoreModifiers) if MerchantFrame.selectedTab == 1 and button == "LeftButton" and IsShiftKeyDown() and not ignoreModifiers then return _G.AceGUIEditBoxInsertLink(GetMerchantItemLink(this:GetID())) end - end + end) - local orig_PaperDollItemSlotButton_OnClick = PaperDollItemSlotButton_OnClick - function PaperDollItemSlotButton_OnClick(button, ignoreModifiers) + hooksecurefunc("PaperDollItemSlotButton_OnClick", function(button, ignoreModifiers) if button == "LeftButton" and IsShiftKeyDown() and not ignoreModifiers then return _G.AceGUIEditBoxInsertLink(GetInventoryItemLink("player", this:GetID())) end - end + end) - local orig_QuestItem_OnClick = QuestItem_OnClick - function QuestItem_OnClick() + hooksecurefunc("QuestItem_OnClick", function() if IsShiftKeyDown() and this.rewardType ~= "spell" then return _G.AceGUIEditBoxInsertLink(GetQuestItemLink(this.type, this:GetID())) end - end + end) - local orig_QuestRewardItem_OnClick = QuestRewardItem_OnClick - function QuestRewardItem_OnClick() + hooksecurefunc("QuestRewardItem_OnClick", function() if IsShiftKeyDown() and this.rewardType ~= "spell" then return _G.AceGUIEditBoxInsertLink(GetQuestItemLink(this.type, this:GetID())) end - end + end) - local orig_QuestLogTitleButton_OnClick = QuestLogTitleButton_OnClick - function QuestLogTitleButton_OnClick(button) + hooksecurefunc("QuestLogTitleButton_OnClick", function(button) if IsShiftKeyDown() and (not this.isHeader) then return _G.AceGUIEditBoxInsertLink(gsub(this:GetText(), " *(.*)", "%1")) end - end + end) - local orig_QuestLogRewardItem_OnClick = QuestLogRewardItem_OnClick - function QuestLogRewardItem_OnClick() + hooksecurefunc("QuestLogRewardItem_OnClick", function() if IsShiftKeyDown() and this.rewardType ~= "spell" then return _G.AceGUIEditBoxInsertLink(GetQuestLogItemLink(this.type, this:GetID())) end - end + end) - local orig_SpellButton_OnClick = SpellButton_OnClick - function SpellButton_OnClick(drag) + hooksecurefunc("SpellButton_OnClick", function(drag) local id = SpellBook_GetSpellID(this:GetID()) if id <= MAX_SPELLS and (not drag) and IsShiftKeyDown() then local spellName, subSpellName = GetSpellName(id, SpellBookFrame.bookType) if spellName and not IsSpellPassive(id, SpellBookFrame.bookType) then - if subSpellName and subSpellName ~= "" then + if subSpellName and (strlen(subSpellName) > 0) then _G.AceGUIEditBoxInsertLink(spellName.."("..subSpellName..")") else _G.AceGUIEditBoxInsertLink(spellName) end end end - end + end) end function _G.AceGUIEditBoxInsertLink(text) diff --git a/ElvUI_Config/Libraries/AceGUI-3.0/widgets/AceGUIWidget-MultiLineEditBox.lua b/ElvUI_Config/Libraries/AceGUI-3.0/widgets/AceGUIWidget-MultiLineEditBox.lua index a6dc095..aa18e17 100644 --- a/ElvUI_Config/Libraries/AceGUI-3.0/widgets/AceGUIWidget-MultiLineEditBox.lua +++ b/ElvUI_Config/Libraries/AceGUI-3.0/widgets/AceGUIWidget-MultiLineEditBox.lua @@ -35,104 +35,92 @@ Support functions if not AceGUIMultiLineEditBoxInsertLink then -- upgradeable hook - local orig_BankFrameItemButtonGeneric_OnClick = BankFrameItemButtonGeneric_OnClick - function BankFrameItemButtonGeneric_OnClick(button) + hooksecurefunc("BankFrameItemButtonGeneric_OnClick", function(button) if button == "LeftButton" and IsShiftKeyDown() and not this.isBag then return _G.AceGUIMultiLineEditBoxInsertLink(GetContainerItemLink(BANK_CONTAINER, this:GetID())) end - end + end) - local orig_ContainerFrameItemButton_OnClick = ContainerFrameItemButton_OnClick - function ContainerFrameItemButton_OnClick(button, ignoreModifiers) + hooksecurefunc("ContainerFrameItemButton_OnClick", function(button, ignoreModifiers) if button == "LeftButton" and IsShiftKeyDown() and not ignoreModifiers then return _G.AceGUIMultiLineEditBoxInsertLink(GetContainerItemLink(this:GetParent():GetID(), this:GetID())) end - end + end) - local orig_KeyRingItemButton_OnClick = KeyRingItemButton_OnClick - function KeyRingItemButton_OnClick(button) + hooksecurefunc("KeyRingItemButton_OnClick", function(button) if button == "LeftButton" and IsShiftKeyDown() and not this.isBag then return _G.AceGUIMultiLineEditBoxInsertLink(GetContainerItemLink(KEYRING_CONTAINER, this:GetID())) end - end + end) - local orig_LootFrameItem_OnClick = LootFrameItem_OnClick - function LootFrameItem_OnClick(button) + hooksecurefunc("LootFrameItem_OnClick", function(button) if button == "LeftButton" and IsShiftKeyDown() then return _G.AceGUIMultiLineEditBoxInsertLink(GetLootSlotLink(this.slot)) end - end + end) - local orig_SetItemRef = SetItemRef - function SetItemRef(link, text, button) + hooksecurefunc("SetItemRef", function(link, text, button) if IsShiftKeyDown() then - if sub(link, 1, 6) == "player" then - local name = sub(link, 8) - if name and name ~= "" then + if strsub(link,1,6) == "player" then + local name = strsub(link,8) + if name and (strlen(name) > 0) then return _G.AceGUIMultiLineEditBoxInsertLink(name) end else return _G.AceGUIMultiLineEditBoxInsertLink(text) end end - end + end) - local orig_MerchantItemButton_OnClick = MerchantItemButton_OnClick - function MerchantItemButton_OnClick(button, ignoreModifiers) + hooksecurefunc("MerchantItemButton_OnClick", function(button, ignoreModifiers) if MerchantFrame.selectedTab == 1 and button == "LeftButton" and IsShiftKeyDown() and not ignoreModifiers then return _G.AceGUIMultiLineEditBoxInsertLink(GetMerchantItemLink(this:GetID())) end - end + end) - local orig_PaperDollItemSlotButton_OnClick = PaperDollItemSlotButton_OnClick - function PaperDollItemSlotButton_OnClick(button, ignoreModifiers) + hooksecurefunc("PaperDollItemSlotButton_OnClick", function(button, ignoreModifiers) if button == "LeftButton" and IsShiftKeyDown() and not ignoreModifiers then return _G.AceGUIMultiLineEditBoxInsertLink(GetInventoryItemLink("player", this:GetID())) end - end + end) - local orig_QuestItem_OnClick = QuestItem_OnClick - function QuestItem_OnClick() + hooksecurefunc("QuestItem_OnClick", function() if IsShiftKeyDown() and this.rewardType ~= "spell" then return _G.AceGUIMultiLineEditBoxInsertLink(GetQuestItemLink(this.type, this:GetID())) end - end + end) - local orig_QuestRewardItem_OnClick = QuestRewardItem_OnClick - function QuestRewardItem_OnClick() + hooksecurefunc("QuestRewardItem_OnClick", function() if IsShiftKeyDown() and this.rewardType ~= "spell" then return _G.AceGUIMultiLineEditBoxInsertLink(GetQuestItemLink(this.type, this:GetID())) end - end + end) - local orig_QuestLogTitleButton_OnClick = QuestLogTitleButton_OnClick - function QuestLogTitleButton_OnClick(button) + hooksecurefunc("QuestLogTitleButton_OnClick", function(button) if IsShiftKeyDown() and (not this.isHeader) then return _G.AceGUIMultiLineEditBoxInsertLink(gsub(this:GetText(), " *(.*)", "%1")) end - end + end) - local orig_QuestLogRewardItem_OnClick = QuestLogRewardItem_OnClick - function QuestLogRewardItem_OnClick() + hooksecurefunc("QuestLogRewardItem_OnClick", function() if IsShiftKeyDown() and this.rewardType ~= "spell" then return _G.AceGUIMultiLineEditBoxInsertLink(GetQuestLogItemLink(this.type, this:GetID())) end - end + end) - local orig_SpellButton_OnClick = SpellButton_OnClick - function SpellButton_OnClick(drag) + hooksecurefunc("SpellButton_OnClick", function(drag) local id = SpellBook_GetSpellID(this:GetID()) if id <= MAX_SPELLS and (not drag) and IsShiftKeyDown() then local spellName, subSpellName = GetSpellName(id, SpellBookFrame.bookType) if spellName and not IsSpellPassive(id, SpellBookFrame.bookType) then - if subSpellName and subSpellName ~= "" then + if subSpellName and (strlen(subSpellName) > 0) then _G.AceGUIMultiLineEditBoxInsertLink(spellName.."("..subSpellName..")") else _G.AceGUIMultiLineEditBoxInsertLink(spellName) end end end - end + end) end function _G.AceGUIMultiLineEditBoxInsertLink(text)