[See the post below for a patch file containing these changes.]
[I updated this post to include a fix for the Key Bindings menu item.]
First off, you can run Bongos2 without any changes to MazzleUI by just using the Bongos2 mini map button, and ignoring the Bongos MazzleUI_Fubar menu items. Just make sure that on the Addons screen you select all Bongos* or all Bongos2* addons, but not both. But if you'd like to eliminate the Bongos2 mini map icon and use the MazzleUI_Fubar menu items to control Bongos2 then continue reading...
Here are the changes I made to MazzleUI to support Bongos2 (no changes were made to Bongos2). My changes will allow Bongos (v1) to continue to work if you decide to use Bongos on some toons and Bongos2 on others (e.g. while you work on MANUALLY configuring your bars). Before switching a toon from Bongos to Bongos2 I would suggest you take a screenshot of your Bongos action bar layout(s) so that you remember which actions you had on which actionbar.
These fixes will only enable the Bongos MazzleUI_Fubar menu items to work.
They will NOT enable the Mazzifier to automatically position and/or fill your action bars. The Bongos2 actionbars will behave differently than the Mazzle-modified Bongos when action bars are resized (so choose your no. of bars first and then stick with it - you can reduce the size of individual bars later).
In
MazzleUI_Core.lua, replace:
Code:
function MazzleUI:BarsToggle()
if (BBagBar) then
if (BBagBar:IsVisible()) then
BBar.Hide(BBar.IDToBar("bags"), 1)
BBar.Hide(BBar.IDToBar("menu"), 1)
BBar.Hide(BBar.IDToBar("key"), 1)
else
BBar.Show(BBar.IDToBar("bags"), 1)
BBar.Show(BBar.IDToBar("menu"), 1)
BBar.Show(BBar.IDToBar("key"), 1)
end
end
end
with:
Code:
function MazzleUI:BarsToggle()
if (BBagBar) then
-- Bongos1
if (BBagBar:IsVisible()) then
BBar.Hide(BBar.IDToBar("bags"), 1)
BBar.Hide(BBar.IDToBar("menu"), 1)
BBar.Hide(BBar.IDToBar("key"), 1)
else
BBar.Show(BBar.IDToBar("bags"), 1)
BBar.Show(BBar.IDToBar("menu"), 1)
BBar.Show(BBar.IDToBar("key"), 1)
end
elseif (BBar) then
-- Bongos2
BBar:Get("bags"):ToggleFrame()
BBar:Get("menu"):ToggleFrame()
end
end
In
MazzleUI_Fubar.lua, replace:
Code:
{
type = 'toggle',
name = "Unlock and edit bars",
desc = "Unocks Bongos, allowing you to edit the properties and positions of bars. For global bar settings, open the options window.",
get = function()
return (BongosSets and (not BongosSets.locked));
end,
set = function(v)
if (v) then MazzleUI:Execute("/bongos unlock"); else MazzleUI:Execute("/bongos lock"); end; MazzleFu:OpenMenu();
end,
map = { [false] = "Locked", [true] = "Editable" },
order = 13,
},
with:
Code:
{
type = 'toggle',
name = "Unlock and edit bars",
desc = "Unlocks Bongos, allowing you to edit the properties and positions of bars. For global bar settings, open the options window.",
get = function()
if (BongosActionConfig) then
-- Bongos2
return (Bongos and not Bongos:IsLocked());
else
-- Bongos1
return (BongosSets and (not BongosSets.locked));
end
end,
set = function(v)
if (BongosActionConfig) then
-- Bongos2
MazzleUI:Execute("/bongos lock");
else
-- Bongos1
if (v) then MazzleUI:Execute("/bongos unlock"); else MazzleUI:Execute("/bongos lock"); end;
end
MazzleFu:OpenMenu();
end,
map = { [false] = "Locked", [true] = "Editable" },
order = 13,
},
replace:
Code:
{
type = 'toggle',
name = "Change key bindings of buttons",
desc = "Enters Bongos key binding mode. Simply mouse over a button and hit the key you want to bind it to. You can also hit escape to clear all previous keys that button was bound to.",
get = function()
return (BongosOptionsPanelBindingsPerCharacter and BongosOptionsPanelBindingsPerCharacter:IsVisible());
end,
set = function(v)
if (v) then
if (not BongosOptions or (BongosOptions and not BongosOptions:IsVisible())) then MazzleUI:Execute("/bongos"); end;
BOptions_SwitchTab("Bindings");
else
if (not BongosOptions or (BongosOptions and not BongosOptions:IsVisible())) then MazzleUI:Execute("/bongos"); end;
BOptions_SwitchTab("General");
BongosOptions:Hide()
end;
MazzleFu:OpenMenu();
end,
map = { [false] = "Normal Operation", [true] = "Key Binding Mode" },
order = 14,
},
with:
Code:
{
type = 'toggle',
name = "Change key bindings of buttons",
desc = "Enters Bongos key binding mode. Simply mouse over a button and hit the key you want to bind it to. You can also hit escape to clear all previous keys that button was bound to.",
get = function()
if (BongosActionConfig) then
-- Bongos2
return KeyBound:IsShown();
else
-- Bongos1
return (BongosOptionsPanelBindingsPerCharacter and BongosOptionsPanelBindingsPerCharacter:IsVisible());
end
end,
set = function(v)
if (BongosActionConfig) then
-- Bongos2
KeyBound:Toggle();
else
-- Bongos1
if (v) then
if (not BongosOptions or (BongosOptions and not BongosOptions:IsVisible())) then MazzleUI:Execute("/bongos"); end;
BOptions_SwitchTab("Bindings");
else
if (not BongosOptions or (BongosOptions and not BongosOptions:IsVisible())) then MazzleUI:Execute("/bongos"); end;
BOptions_SwitchTab("General");
BongosOptions:Hide()
end
end;
MazzleFu:OpenMenu();
end,
map = { [false] = "Normal Operation", [true] = "Key Binding Mode" },
order = 14,
},
replace:
Code:
{
type = 'toggle',
name = "Allow moving spells and skills",
desc = "Unocks buttons, allowing you to drag skills around. You can also do this by holding down the control key.",
get = function()
return (not MazzleUI:GetValue("BActionSets.g.buttonsLocked"));
end,
set = function(v) MazzleUI:SetValue("BActionSets.g.buttonsLocked", (not v)); MazzleFu:OpenMenu(); end,
map = { [false] = "Locked", [true] = "Unlocked" },
order = 15,
},
with:
Code:
{
type = 'toggle',
name = "Allow moving spells and skills",
desc = "Unlocks buttons, allowing you to drag skills around. You can also do this by holding down the control key.",
get = function()
if (BongosActionConfig) then
-- Bongos2
--return BongosActionConfig:ButtonsLocked();
return not LOCK_ACTIONBAR;
else
-- Bongos1
return (not MazzleUI:GetValue("BActionSets.g.buttonsLocked"));
end
end,
set = function(v)
if (BongosActionConfig) then
-- Bongos2
--BongosActionConfig:LockButtons(v);
LOCK_ACTIONBAR = not v
else
-- Bongos1
MazzleUI:SetValue("BActionSets.g.buttonsLocked", (not v));
end
MazzleFu:OpenMenu();
end,
map = { [false] = "Locked", [true] = "Unlocked" },
order = 15,
},
replace:
Code:
{
type = 'toggle',
name = "Show empty buttons",
desc = "Shows all empty buttons in all visible bars.",
get = function()
return MazzleUI:GetValue("BActionSets.g.showGrid");
end,
set = function(v) BActionSets_SetShowGrid(v); end,
map = { [false] = "Locked", [true] = "Unlocked" },
order = 16,
},
with:
Code:
{
type = 'toggle',
name = "Show empty buttons",
desc = "Shows all empty buttons in all visible bars.",
get = function()
if (BongosActionConfig) then
-- Bongos2
return BongosActionConfig:ShowingEmptyButtons();
else
-- Bongos1
return MazzleUI:GetValue("BActionSets.g.showGrid");
end
end,
set = function(v)
if (BongosActionConfig) then
-- Bongos2
BongosActionConfig:ShowEmptyButtons(v);
else
-- Bongos1
BActionSets_SetShowGrid(v);
end
end,
map = { [false] = "Locked", [true] = "Unlocked" },
order = 16,
},