cba0622 - Hide Blizzard main bar frames
authorAleksi Blinnikka <aleksi.blinnikka@gmail.com>
Fri, 23 Feb 2018 23:28:12 +0000
committerAleksi Blinnikka <aleksi.blinnikka@gmail.com>
Fri, 23 Feb 2018 23:28:12 +0000
OmaAB/HideBlizzard.lua [new file with mode: 0644]
OmaAB/OmaAB.toc

diff --git a/OmaAB/HideBlizzard.lua b/OmaAB/HideBlizzard.lua
new file mode 100644 (file)
index 0000000..92738ec
--- /dev/null
@@ -0,0 +1,170 @@
+-- HideBlizzardAB.lua
+local microbuttons = {
+    CharacterMicroButton,
+    SpellbookMicroButton,
+    TalentMicroButton,
+    AchievementMicroButton,
+    QuestLogMicroButton,
+    GuildMicroButton,
+    LFDMicroButton,
+    CollectionsMicroButton,
+    EJMicroButton,
+    StoreMicroButton,
+    MainMenuMicroButton,
+};
+
+local micromenu = nil;
+local function moveMicroMenu()
+    for i, button in ipairs(microbuttons) do
+        -- TODO save original points to move back to override actionbar
+        button:SetParent(micromenu);
+        button:ClearAllPoints();
+        if i == 1 then
+            button:SetPoint("TOPRIGHT");
+        else
+            button:SetPoint("TOPRIGHT", microbuttons[i-1], "BOTTOMRIGHT", 0, 22);
+        end
+    end
+end
+-- based on Bartender4
+local function hide()
+    -- Hidden parent frame
+    local UIHider = CreateFrame("Frame");
+    UIHider:Hide();
+
+    MultiBarBottomLeft:SetParent(UIHider);
+    MultiBarBottomRight:SetParent(UIHider);
+    MultiBarLeft:SetParent(UIHider);
+    MultiBarRight:SetParent(UIHider);
+
+    -- Hide MultiBar Buttons, but keep the bars alive
+    for i=1,12 do
+        _G["ActionButton" .. i]:Hide();
+        _G["ActionButton" .. i]:UnregisterAllEvents();
+        _G["ActionButton" .. i]:SetAttribute("statehidden", true);
+
+        _G["MultiBarBottomLeftButton" .. i]:Hide();
+        _G["MultiBarBottomLeftButton" .. i]:UnregisterAllEvents();
+        _G["MultiBarBottomLeftButton" .. i]:SetAttribute("statehidden", true);
+
+        _G["MultiBarBottomRightButton" .. i]:Hide();
+        _G["MultiBarBottomRightButton" .. i]:UnregisterAllEvents();
+        _G["MultiBarBottomRightButton" .. i]:SetAttribute("statehidden", true);
+
+        _G["MultiBarRightButton" .. i]:Hide();
+        _G["MultiBarRightButton" .. i]:UnregisterAllEvents();
+        _G["MultiBarRightButton" .. i]:SetAttribute("statehidden", true);
+
+        _G["MultiBarLeftButton" .. i]:Hide();
+        _G["MultiBarLeftButton" .. i]:UnregisterAllEvents();
+        _G["MultiBarLeftButton" .. i]:SetAttribute("statehidden", true);
+    end
+
+    micromenu = CreateFrame("Frame", "OmaMicroMenu", UIParent);
+    micromenu:SetPoint("RIGHT");
+    micromenu:SetWidth(1);
+    micromenu:SetHeight(11*58);
+    moveMicroMenu();
+    hooksecurefunc("UpdateMicroButtons", moveMicroMenu);
+    OverrideActionBar:HookScript("OnShow", moveMicroMenu); -- TODO have in orig position
+    OverrideActionBar:HookScript("OnHide", moveMicroMenu);
+    PetBattleFrame.BottomFrame.MicroButtonFrame:HookScript("OnShow", moveMicroMenu);
+    PetBattleFrame.BottomFrame.MicroButtonFrame:HookScript("OnHide", moveMicroMenu);
+    --UIPARENT_MANAGED_FRAME_POSITIONS["MultiBarRight"] = nil;
+    --UIPARENT_MANAGED_FRAME_POSITIONS["MultiBarLeft"] = nil;
+    --UIPARENT_MANAGED_FRAME_POSITIONS["MultiBarBottomLeft"] = nil;
+    --UIPARENT_MANAGED_FRAME_POSITIONS["MultiBarBottomRight"] = nil;
+    UIPARENT_MANAGED_FRAME_POSITIONS["MainMenuBar"] = nil;
+    UIPARENT_MANAGED_FRAME_POSITIONS["StanceBarFrame"] = nil;
+    UIPARENT_MANAGED_FRAME_POSITIONS["ZoneAbilityFrame"] = nil;
+    UIPARENT_MANAGED_FRAME_POSITIONS["ExtraActionBarFrame"] = nil;
+    UIPARENT_MANAGED_FRAME_POSITIONS["PossessBarFrame"] = nil;
+    --UIPARENT_MANAGED_FRAME_POSITIONS["PETACTIONBAR_YPOS"] = nil;
+
+    --MainMenuBar:UnregisterAllEvents();
+    --MainMenuBar:Hide();
+    --MainMenuBar:SetParent(UIHider);
+    MainMenuBar:EnableMouse(false);
+    -- TODO vehicle controller handled overridebar and mainmenubar in Bartender, needed?
+    --local vehicleController = CreateFrame("Frame", nil, nil, "SecureHandlerStateTemplate");
+
+    local animations = {MainMenuBar.slideOut:GetAnimations()};
+    animations[1]:SetOffset(0,0);
+
+    animations = {OverrideActionBar.slideOut:GetAnimations()};
+    animations[1]:SetOffset(0,0);
+
+    --MainMenuBarArtFrame:UnregisterEvent("PLAYER_ENTERING_WORLD");
+    --MainMenuBarArtFrame:UnregisterEvent("BAG_UPDATE");
+    --MainMenuBarArtFrame:UnregisterEvent("ACTIONBAR_PAGE_CHANGED");
+    --MainMenuBarArtFrame:UnregisterEvent("KNOWN_CURRENCY_TYPES_UPDATE");
+    --MainMenuBarArtFrame:UnregisterEvent("CURRENCY_DISPLAY_UPDATE");
+    --MainMenuBarArtFrame:UnregisterEvent("ADDON_LOADED");
+    --MainMenuBarArtFrame:UnregisterEvent("UNIT_ENTERING_VEHICLE");
+    --MainMenuBarArtFrame:UnregisterEvent("UNIT_ENTERED_VEHICLE");
+    --MainMenuBarArtFrame:UnregisterEvent("UNIT_EXITING_VEHICLE");
+    --MainMenuBarArtFrame:UnregisterEvent("UNIT_EXITED_VEHICLE");
+    MainMenuBarArtFrame:Hide();
+    MainMenuBarArtFrame:SetParent(UIHider);
+
+    MainMenuExpBar:UnregisterAllEvents();
+    MainMenuExpBar:Hide();
+    MainMenuExpBar:SetParent(UIHider);
+    MainMenuExpBar:SetDeferAnimationCallback(nil);
+
+    MainMenuBarMaxLevelBar:Hide();
+    MainMenuBarMaxLevelBar:SetParent(UIHider);
+
+    ReputationWatchBar:UnregisterAllEvents();
+    ReputationWatchBar:Hide();
+    ReputationWatchBar:SetParent(UIHider);
+
+    -- TODO create artifact bar
+    ArtifactWatchBar:SetParent(UIHider);
+    ArtifactWatchBar.StatusBar:SetDeferAnimationCallback(nil);
+
+    HonorWatchBar:SetParent(UIHider);
+    HonorWatchBar.StatusBar:SetDeferAnimationCallback(nil);
+
+    --PossessBarFrame:UnregisterAllEvents();
+    PossessBarFrame:Hide();
+    PossessBarFrame:SetParent(UIHider);
+
+    ZoneAbilityFrame:ClearAllPoints();
+    ZoneAbilityFrame:SetPoint("BOTTOMRIGHT", UIParent, "BOTTOMRIGHT", -550, 160);
+    ExtraActionBarFrame:ClearAllPoints();
+    ExtraActionBarFrame:SetPoint("BOTTOMRIGHT", UIParent, "BOTTOMRIGHT", -550, 120);
+    MainMenuBarVehicleLeaveButton:SetParent(UIParent);
+    MainMenuBarVehicleLeaveButton:ClearAllPoints();
+    MainMenuBarVehicleLeaveButton:SetPoint("BOTTOMRIGHT", UIParent, "BOTTOMRIGHT", -100, 5);
+    hooksecurefunc("MainMenuBarVehicleLeaveButton_Update", function()
+        if CanExitVehicle() then
+            -- TODO check if needed
+            --MainMenuBarVehicleLeaveButton:ClearAllPoints();
+            --MainMenuBarVehicleLeaveButton:SetPoint("BOTTOMRIGHT", UIParent, "BOTTOMRIGHT", -100, 5);
+            MainMenuBarVehicleLeaveButton:Show();
+        end
+    end);
+
+    if PlayerTalentFrame then
+        PlayerTalentFrame:UnregisterEvent("ACTIVE_TALENT_GROUP_CHANGED");
+    else
+        hooksecurefunc("TalentFrame_LoadUI", function()
+            PlayerTalentFrame:UnregisterEvent("ACTIVE_TALENT_GROUP_CHANGED");
+        end);
+    end
+    --[[StanceBarFrame:UnregisterAllEvents()
+    StanceBarFrame:Hide()
+    StanceBarFrame:SetParent(UIHider)
+
+    --BonusActionBarFrame:UnregisterAllEvents()
+    --BonusActionBarFrame:Hide()
+    --BonusActionBarFrame:SetParent(UIHider)
+
+    PetActionBarFrame:UnregisterAllEvents()
+    PetActionBarFrame:Hide()
+    PetActionBarFrame:SetParent(UIHider)
+    --]]
+end
+
+hide();
index da88f1c..9fd465c 100644 (file)
@@ -4,6 +4,7 @@
 ## Author: schyrio
 ## Notes: My action bars
 
+HideBlizzard.lua
 Bindings.xml
 ExpBar.lua
 ActionBars.lua