From e472032d32598af7a7fb0d8163882fb9006b9646 Mon Sep 17 00:00:00 2001 From: Bunny67 Date: Sun, 15 Jul 2018 11:37:17 +0300 Subject: [PATCH] Add support MouseWheel for mail, merchant and spellbook --- ElvUI/Modules/Skins/Blizzard/Mail.lua | 13 +++++++++++++ ElvUI/Modules/Skins/Blizzard/Merchant.lua | 13 +++++++++++++ ElvUI/Modules/Skins/Blizzard/SpellBook.lua | 20 ++++++++++++++++++++ 3 files changed, 46 insertions(+) diff --git a/ElvUI/Modules/Skins/Blizzard/Mail.lua b/ElvUI/Modules/Skins/Blizzard/Mail.lua index adc733c..15d2107 100644 --- a/ElvUI/Modules/Skins/Blizzard/Mail.lua +++ b/ElvUI/Modules/Skins/Blizzard/Mail.lua @@ -26,6 +26,19 @@ local function LoadSkin() E:Point(MailFrame.backdrop, "TOPLEFT", 10, -12) E:Point(MailFrame.backdrop, "BOTTOMRIGHT", -30, 74) + MailFrame:EnableMouseWheel(true) + MailFrame:SetScript("OnMouseWheel", function() + if arg1 > 0 then + if InboxPrevPageButton:IsEnabled() == 1 then + InboxPrevPage() + end + else + if InboxNextPageButton:IsEnabled() == 1 then + InboxNextPage() + end + end + end) + for i = 1, INBOXITEMS_TO_DISPLAY do local mail = _G["MailItem"..i] local button = _G["MailItem"..i.."Button"] diff --git a/ElvUI/Modules/Skins/Blizzard/Merchant.lua b/ElvUI/Modules/Skins/Blizzard/Merchant.lua index 57274ec..7db2844 100644 --- a/ElvUI/Modules/Skins/Blizzard/Merchant.lua +++ b/ElvUI/Modules/Skins/Blizzard/Merchant.lua @@ -22,6 +22,19 @@ local function LoadSkin() E:Point(MerchantFrame.backdrop, "TOPLEFT", 10, -11) E:Point(MerchantFrame.backdrop, "BOTTOMRIGHT", -28, 60) + MerchantFrame:EnableMouseWheel(true) + MerchantFrame:SetScript("OnMouseWheel", function() + if arg1 > 0 then + if MerchantPrevPageButton:IsShown() and MerchantPrevPageButton:IsEnabled() == 1 then + MerchantPrevPageButton_OnClick() + end + else + if MerchantNextPageButton:IsShown() and MerchantNextPageButton:IsEnabled() == 1 then + MerchantNextPageButton_OnClick() + end + end + end) + S:HandleCloseButton(MerchantFrameCloseButton, MerchantFrame.backdrop) for i = 1, 12 do diff --git a/ElvUI/Modules/Skins/Blizzard/SpellBook.lua b/ElvUI/Modules/Skins/Blizzard/SpellBook.lua index 3ed42c8..68ffafd 100644 --- a/ElvUI/Modules/Skins/Blizzard/SpellBook.lua +++ b/ElvUI/Modules/Skins/Blizzard/SpellBook.lua @@ -15,6 +15,26 @@ local function LoadSkin() E:Point(SpellBookFrame.backdrop, "TOPLEFT", 10, -12) E:Point(SpellBookFrame.backdrop, "BOTTOMRIGHT", -31, 75) + SpellBookFrame:EnableMouseWheel(true) + SpellBookFrame:SetScript("OnMouseWheel", function() + --do nothing if not on an appropriate book type + if SpellBookFrame.bookType ~= BOOKTYPE_SPELL then + return + end + + local currentPage, maxPages = SpellBook_GetCurrentPage() + + if arg1 > 0 then + if currentPage > 1 then + PrevPageButton_OnClick() + end + else + if currentPage < maxPages then + NextPageButton_OnClick() + end + end + end) + for i = 1, 3 do local tab = _G["SpellBookFrameTabButton"..i]