vanilla-wow-addons – Rev 1
?pathlinks?
function GB_Checkbox_Initialize(box, value)
if (value) then
box:SetChecked(1);
else
box:SetChecked(0);
end
end
function GB_Checkbox_OnClick(index, func)
local value = false;
if (this:GetChecked()) then
value = true;
end
if (GB_BAR) then
GB_Set(GB_BAR, index, value);
if (func) then
func(GB_BAR);
end
else
GB_Set(index, value);
if (string.find(index, "Bindings")) then
GB_Update_Bindings();
elseif (index == "Disable") then
GB_DisableGB();
elseif (index == "HideInRaid") then
GB_Initialize_AllBars();
end
end
end
function GB_Checkbox_OnClick2(index, func, index2)
local value = false;
if (this:GetChecked()) then
value = true;
end
if (this.index2) then
GB_Settings[GB_INDEX][GB_BAR].Button[GB_BUTTON][index][index2] = value;
else
GB_Settings[GB_INDEX][GB_BAR].Button[GB_BUTTON][index] = value;
end
if (func) then
func(GB_BAR, GB_BUTTON);
end
end
function GB_ColorPicker_ColorCancelled()
local color = ColorPickerFrame.previousValues;
GB_Settings[GB_INDEX][ColorPickerFrame.index] = color;
getglobal(ColorPickerFrame.colorBox):SetBackdropColor(color.r, color.g, color.b);
end
function GB_ColorPicker_ColorChanged()
local r, g, b = ColorPickerFrame:GetColorRGB();
local color = { r=r, g=g, b=b };
GB_Settings[GB_INDEX][ColorPickerFrame.index] = color;
getglobal(ColorPickerFrame.colorBox):SetBackdropColor(color.r, color.g, color.b);
end
function GB_ColorPicker_Show(index)
local color = GB_Settings[GB_INDEX][index];
ColorPickerFrame.previousValues = color;
ColorPickerFrame.cancelFunc = GB_ColorPicker_ColorCancelled;
ColorPickerFrame.opacityFunc = GB_ColorPicker_ColorChanged;
ColorPickerFrame.func = GB_ColorPicker_ColorChanged;
ColorPickerFrame.colorBox = this:GetName();
ColorPickerFrame.index = index;
ColorPickerFrame:SetColorRGB(color.r, color.g, color.b);
ColorPickerFrame:ClearAllPoints();
ColorPickerFrame:SetPoint("CENTER", "GB_Options", "CENTER", 0, 0);
ColorPickerFrame:Show();
end
function GB_Copy_BarSettings()
if (GB_BAR == GB_BAR_TO_COPY or (not GB_BAR_TO_COPY)) then return; end
GB_Copy_Table(GB_Settings[GB_INDEX][GB_BAR_TO_COPY], GB_Settings[GB_INDEX][GB_BAR]);
GB_Initialize_BarOptions(GB_BAR);
end
function GB_EditBox_OnTextChanged(index, subindex)
if (not GB_INITIALIZED) then return; end
if (subindex < 6) then
GB_Settings[GB_INDEX].announcements[subindex] = this:GetText();
elseif (subindex > 100) then
GB_Settings[GB_INDEX][index][subindex - 100] = this:GetText();
else
GB_Settings[GB_INDEX][index] = this:GetText();
end
end
function GB_Initialize_BarOptions(frame)
GB_BAR_OPTIONS_INIT = true;
local settings = GB_Get(frame);
for i=1, 20 do
GB_Options_InitAction(frame, i);
end
GB_OptionsTitle_Label:SetText(GB_TEXT[frame.."BarOptions"]);
GB_Checkbox_Initialize(GB_Options_HideBar, settings.hide);
GB_Checkbox_Initialize(GB_Options_Collapse, settings.collapse);
GB_Checkbox_Initialize(GB_Options_Attach, settings.attach);
GB_Checkbox_Initialize(GB_Options_Mouseover, settings.mouseover);
GB_Slider_Initialize(GB_Options_ButtonSize, settings.buttonSize);
GB_Slider_Initialize(GB_Options_ButtonAlpha, settings.alpha * 100);
GB_Slider_Initialize(GB_Options_ButtonSpacing, settings.spacing);
GB_Slider_Initialize(GB_Options_ButtonRows, settings.rows);
GB_Slider_Initialize(GB_Options_XOffset, settings.xoffset);
GB_Slider_Initialize(GB_Options_YOffset, settings.yoffset);
for i,v in GB_ANCHOR_POINTS do
if (v.value == settings.attachTo) then
GB_BarOptions_AnchorTo_Setting:SetText(v.text);
break;
end
end
for i,v in GB_ANCHOR_POINTS do
if (v.value == settings.attachPoint) then
GB_BarOptions_AnchorPoint_Setting:SetText(v.text);
break;
end
end
GB_BarOptions_DefaultLeftClick_Setting:SetText("");
GB_BarOptions_DefaultRightClick_Setting:SetText("");
for _,value in GB_CLICK_MENU do
if (value.i == GB_Settings[GB_INDEX][GB_BAR].oldLeftClick) then
GB_BarOptions_DefaultLeftClick_Setting:SetText(value.v);
end
if (value.i == GB_Settings[GB_INDEX][GB_BAR].oldRightClick) then
GB_BarOptions_DefaultRightClick_Setting:SetText(value.v);
end
end
GB_BAR_OPTIONS_INIT = nil;
end
function GB_Menu_Anchors_OnClick(id)
GB_Set(GB_BAR, GB_ANCHORS_INDEX, this.value);
if (GB_ANCHORS_INDEX == "attachTo") then
GB_BarOptions_AnchorTo_Setting:SetText(GB_ANCHOR_POINTS[this:GetID()].text);
else
GB_BarOptions_AnchorPoint_Setting:SetText(GB_ANCHOR_POINTS[this:GetID()].text);
end
GB_Set_Appearance(GB_BAR);
end
function GB_Menu_Announce_OnClick(id)
GB_Set(GB_BAR, GB_BUTTON, "announceText", id);
GB_Action_Options_Cast_AnnounceNum_Setting:SetText(id);
end
function GB_Menu_Clickboxes_OnClick()
GB_CLICKBOX = this.index;
GB_MiscOptions_ChooseClickbox_Setting:SetText(GB_CLICKBOX_MENU[this:GetID()].text);
local offsets = GB_Settings[GB_INDEX][GB_CLICKBOX].Clickbox;
GB_MiscOptions_ClickboxX1:SetValue(offsets.x1);
GB_MiscOptions_ClickboxX2:SetValue(offsets.x2);
GB_MiscOptions_ClickboxY1:SetValue(offsets.y1);
GB_MiscOptions_ClickboxY2:SetValue(offsets.y2);
end
function GB_Menu_ClickCast_OnClick()
local text = getglobal(this:GetName().."_Text"):GetText();
if (GB_CLICKCAST_BUTTON == -1) then
GB_Settings[GB_INDEX][GB_BAR].oldLeftClick = this.index;
getglobal("GB_BarOptions_DefaultLeftClick_Setting"):SetText(text);
elseif (GB_CLICKCAST_BUTTON == -2) then
GB_Settings[GB_INDEX][GB_BAR].oldRightClick = this.index;
getglobal("GB_BarOptions_DefaultRightClick_Setting"):SetText(text);
else
getglobal("GB_ActionOptions"..GB_CLICKCAST_BUTTON.."_ClickCast_Setting"):SetText(text);
for index, value in GB_Settings[GB_INDEX][GB_BAR].clickCast do
if (value == GB_CLICKCAST_BUTTON) then
GB_Settings[GB_INDEX][GB_BAR].clickCast[index] = nil;
end
end
if (this.index) then
GB_Settings[GB_INDEX][GB_BAR].clickCast[this.index] = GB_CLICKCAST_BUTTON;
end
end
end
function GB_Menu_Contexts_OnClick()
GB_Set(GB_BAR, GB_BUTTON, "context", this.index);
GB_Action_Options_Display_Context_Setting:SetText(getglobal(this:GetName().."_Text"):GetText());
GB_ActionButton_Initialize(GB_BAR, GB_BUTTON);
end
function GB_Menu_CopyBar_OnClick(id)
GB_BAR_TO_COPY = this.value;
GB_BarOptions_CopyBarControl_Setting:SetText(GB_COPYBAR_MENU[id].text);
end
function GB_Menu_Forms_OnClick(id)
local form = getglobal(this:GetName().."_Text"):GetText();
if (id == 99) then id = false; end
GB_Set(GB_BAR, GB_BUTTON, "form", id);
GB_Action_Options_Display_Form_Setting:SetText(form);
GB_ActionButton_Initialize(GB_BAR, GB_BUTTON);
end
function GB_Menu_NumParty_OnClick(id)
GB_Set("numPastAEThreshold", id);
GB_ThresholdsOptions_NumPartyToCheck_Setting:SetText(id);
end
function GB_Menu_OutOfContext_OnClick(id)
GB_Set(GB_BAR, GB_BUTTON, "OOCoption", GB_OOC_MENU[id].value);
GB_Action_Options_Display_OutOfContext_Setting:SetText(GB_OOC_MENU[id].text);
end
function GB_Options_CheckAllRaidMembers()
for i=1, GetNumRaidMembers() do
getglobal("GB_RaidMemberSelect"..i):SetChecked(1);
GB_RAID_MEMBERS[UnitName("raid"..i)] = true;
local raidframe = getglobal("GB_RaidBar"..i);
raidframe.noshow = false;
raidframe:Show();
end
end
function GB_Options_HideAllWindows()
GB_AnnounceOptions:Hide();
GB_BarOptions:Hide();
GB_MiscOptions:Hide();
GB_ThresholdsOptions:Hide();
GB_RaidMemberSelect:Hide();
end
function GB_Options_InitAction(bar, button)
local settings = GB_Get(bar, button);
local texture = GB_Get_Texture(bar, button);
local name = "";
if (settings.name) then
name = settings.name.." "..settings.rank;
end
getglobal("GB_ActionOptions"..button.."_Dropbox_Texture"):SetTexture(texture);
getglobal("GB_ActionOptions"..button.."_ActionName"):SetText(name);
local menucontrol = getglobal("GB_ActionOptions"..button.."_ClickCast_Setting");
local valueFound;
for index,value in GB_Settings[GB_INDEX][bar].clickCast do
if (value == button) then
local text;
for _,value2 in GB_CLICK_MENU do
if (value2.i == index) then
text = value2.v;
end
end
menucontrol:SetText(text);
valueFound = 1;
end
end
if (not valueFound) then
menucontrol:SetText("");
end
end
function GB_Options_InitActionOptions(bar, button)
local settings = GB_Get(bar, button);
local spellname = settings.name;
if (settings.rank and settings.rank ~= "") then
spellname = spellname.." ("..settings.rank..")";
end
GB_Action_Options_Name:SetText(spellname);
GB_Checkbox_Initialize(GB_Action_Options_Cast_Assist, settings.assist);
GB_Checkbox_Initialize(GB_Action_Options_Cast_Announce, settings.announce);
GB_Checkbox_Initialize(GB_Action_Options_Cast_AutoUpdate, settings.autoUpdate);
GB_Checkbox_Initialize(GB_Action_Options_Cast_PreventRebuff, settings.preventRebuff);
GB_Checkbox_Initialize(GB_Action_Options_Cast_ScaleRank, settings.scaleRank);
GB_Checkbox_Initialize(GB_Action_Options_Cast_PreventOverhealing, settings.preventOverhealing);
GB_Checkbox_Initialize(GB_Action_Options_Cast_PreventOverkill, settings.preventOverkill);
GB_Checkbox_Initialize(GB_Action_Options_Cast_MatchSpellName, settings.matchSpellName);
GB_Checkbox_Initialize(GB_Action_Options_Cast_MatchCastingTime, settings.matchCastingTime);
GB_Checkbox_Initialize(GB_Action_Options_Cast_LowManaRank, settings.lowManaRank);
GB_Checkbox_Initialize(GB_Action_Options_Cast_CancelHeal, settings.cancelHeal);
GB_Checkbox_Initialize(GB_Action_Options_Display_InCombat, settings.inCombat);
GB_Checkbox_Initialize(GB_Action_Options_Display_FlashInContext, settings.flashInContext);
GB_Checkbox_Initialize(GB_Action_Options_Display_NotInCombat, settings.notInCombat);
GB_Checkbox_Initialize(GB_Action_Options_Display_ValidTarget, settings.validTarget);
GB_Checkbox_Initialize(GB_Action_Options_Display_Druid, settings.classes[GB_TEXT.Druid]);
GB_Checkbox_Initialize(GB_Action_Options_Display_Priest, settings.classes[GB_TEXT.Priest]);
GB_Checkbox_Initialize(GB_Action_Options_Display_Warrior, settings.classes[GB_TEXT.Warrior]);
GB_Checkbox_Initialize(GB_Action_Options_Display_Warlock, settings.classes[GB_TEXT.Warlock]);
GB_Checkbox_Initialize(GB_Action_Options_Display_Hunter, settings.classes[GB_TEXT.Hunter]);
GB_Checkbox_Initialize(GB_Action_Options_Display_Rogue, settings.classes[GB_TEXT.Rogue]);
GB_Checkbox_Initialize(GB_Action_Options_Display_Mage, settings.classes[GB_TEXT.Mage]);
GB_Checkbox_Initialize(GB_Action_Options_Display_Shaman, settings.classes[GB_TEXT.Shaman]);
GB_Checkbox_Initialize(GB_Action_Options_Display_Paladin, settings.classes[GB_TEXT.Paladin]);
GB_Checkbox_Initialize(GB_Action_Options_Display_HideButton, settings.hide);
GB_Checkbox_Initialize(GB_Action_Options_Display_PlayerOnly, settings.playerOnly);
for i,v in GB_CONTEXTS do
if (v.index == settings.context) then
GB_Action_Options_Display_Context_Setting:SetText(v.text);
end
end
if (settings.form == 0) then
GB_Action_Options_Display_Form_Setting:SetText(GB_TEXT.NoForm);
elseif (settings.form) then
local _, form = GetShapeshiftFormInfo(settings.form);
GB_Action_Options_Display_Form_Setting:SetText(form);
else
GB_Action_Options_Display_Form_Setting:SetText("");
end
GB_Action_Options_Cast_AnnounceNum_Setting:SetText(settings.announceText);
for i,v in GB_OOC_MENU do
if (v.value == settings.OOCoption) then
GB_Action_Options_Display_OutOfContext_Setting:SetText(v.text);
end
end
end
function GB_Options_ShowClickCastMenu()
if (GB_Menu_ClickCast:IsVisible()) then
GB_Menu_ClickCast:Hide();
return;
end
GB_CLICKCAST_BUTTON = this:GetParent():GetParent():GetID();
if (this:GetID() > 0) then
GB_CLICKCAST_BUTTON = -this:GetID();
end
local count = 1;
GB_Menu_ClickCast_Option1_Text:SetText(GB_TEXT.None);
local width = GB_Menu_ClickCast_Option1_Text:GetWidth();
for _,menuoption in GB_CLICK_MENU do
local indexFound;
for index in GB_Settings[GB_INDEX][GB_BAR].clickCast do
if (index == menuoption.i) then
indexFound = 1;
end
end
if (GB_Settings[GB_INDEX][GB_BAR].oldLeftClick == menuoption.i) then
indexFound = 1;
end
if (GB_Settings[GB_INDEX][GB_BAR].oldRightClick == menuoption.i) then
indexFound = 1;
end
if (not indexFound) then
count = count + 1
getglobal("GB_Menu_ClickCast_Option"..count).index = menuoption.i;
local optiontext = getglobal("GB_Menu_ClickCast_Option"..count.."_Text");
optiontext:SetText(menuoption.v);
if (optiontext:GetWidth() > width) then
width = optiontext:GetWidth();
end
end
end
for i=1,27 do
getglobal("GB_Menu_ClickCast_Option"..i):SetWidth(width);
if (i > count) then
getglobal("GB_Menu_ClickCast_Option"..i):Hide();
else
getglobal("GB_Menu_ClickCast_Option"..i):Show();
end
end
GB_Menu_ClickCast:SetWidth(width + 20);
GB_Menu_ClickCast:SetHeight(count * 15 + 20);
GB_Menu_ClickCast:ClearAllPoints();
GB_Menu_ClickCast:SetPoint("TOPLEFT", this:GetParent():GetName(), "BOTTOMLEFT", 0, 0);
local bottom = GB_Menu_ClickCast:GetBottom() / UIParent:GetScale();
if (bottom < UIParent:GetBottom()) then
GB_Menu_ClickCast:ClearAllPoints();
GB_Menu_ClickCast:SetPoint("BOTTOMLEFT", this:GetParent():GetName(), "TOPLEFT", 0, 0);
end
GB_Menu_ClickCast:Show();
end
function GB_Options_ShowMenu(menu)
menu = getglobal(menu);
if (menu:IsVisible()) then
menu:Hide();
else
if (this:GetParent().index == "attachTo" or this:GetParent().index == "attachPoint") then
GB_ANCHORS_INDEX = this:GetParent().index;
end
menu:ClearAllPoints();
menu:SetPoint("TOPLEFT", this:GetParent():GetName(), "BOTTOMLEFT", 0, 0);
menu:Show();
end
end
function GB_Options_ShowPopup(bar, button)
if (GB_Action_Options:IsVisible()) then
GB_BUTTON = nil;
GB_Action_Options:Hide();
else
GB_BUTTON = button;
GB_Options_InitActionOptions(bar, button);
GB_Action_Options:ClearAllPoints();
GB_Action_Options:SetPoint("TOPLEFT", this:GetName(), "BOTTOMLEFT", 0, 0);
GB_Action_Options:Show();
local xoffset = UIParent:GetRight() - GB_Action_Options:GetRight() - 110;
local yoffset = GB_Action_Options:GetBottom();
if (xoffset > 0) then xoffset = 0 end
if (yoffset > 0) then yoffset = 0 end
if ((xoffset + yoffset) < 0) then
GB_Action_Options:ClearAllPoints();
GB_Action_Options:SetPoint("TOPLEFT", this:GetName(), "BOTTOMLEFT", xoffset, -yoffset);
end
end
end
function GB_PickupAction(id, id2, idtype)
if (idtype == "spell") then
PickupSpell(GB_SPELLS[id][id2].id, "BOOKTYPE_SPELL");
elseif (idtype == "item") then
PickupContainerItem(GB_ITEMS[id].bag, GB_ITEMS[id].slot);
elseif (idtype == "inv") then
PickupInventoryItem(GB_INVENTORY[id].id);
elseif (idtype == "macro") then
GB_Old_PickupMacro(GB_MACROS[id].id);
end
end
function GB_RaidMemberSelect_OnClick()
local raidframe = getglobal("GB_RaidBar"..this:GetID());
if (this:GetChecked()) then
GB_RAID_MEMBERS[UnitName("raid"..this:GetID())] = true;
raidframe.noshow = false;
raidframe:Show();
else
GB_RAID_MEMBERS[UnitName("raid"..this:GetID())] = nil;
GB_SKIP_NAMES[UnitName("raid"..this:GetID())] = 1;
raidframe.noshow = true;
raidframe:Hide();
end
end
function GB_Set_Anchor(subframe, xoffset, yoffset)
xoffset = getglobal(this:GetName().."_Label"):GetWidth() + xoffset + 5;
this:SetPoint("TOPLEFT", this:GetParent():GetName()..subframe, "BOTTOMLEFT", xoffset, yoffset);
end
function GB_Set_BoxNum()
local fn = this:GetName();
getglobal(fn.."_BoxNum"):SetText(this:GetID());
end
function GB_Set_HealingBonus()
local n = GB_MiscOptions_HealingBonus:GetNumber();
if (not n) then n = 0; end
GB_Settings[GB_INDEX].HealingBonus = n;
GB_Update_Spells(1);
end
function GB_Set_Label(labeltext)
local fn = this:GetName();
getglobal(fn.."_Label"):SetText(labeltext);
end
function GB_Show_OptionsFrame(frame)
if (frame == "main") then
if (GB_Options:IsVisible()) then
GB_Options:Hide();
if (not GB_Settings[GB_INDEX].Disable) then
for _,box in GB_CLICKBOXES do
getglobal(box):Hide();
getglobal(box.."_Texture"):Hide();
end
if (not GB_Get("hideClickboxes")) then
GB_PlayerClickbox:Show();
if (UnitName("target")) then
GB_TargetClickbox:Show();
end
if (UnitName("pet")) then
GB_Pet0Clickbox:Show();
end
for i=1,GetNumPartyMembers() do
getglobal("GB_Party"..i.."Clickbox"):Show();
if (UnitName("partypet"..i)) then
getglobal("GB_Pet"..i.."Clickbox"):Show();
end
end
end
end
else
GB_Options:Show();
if (not GB_Settings[GB_INDEX].Disable) then
for _,box in GB_CLICKBOXES do
if (not GB_Get("hideClickboxes")) then getglobal(box):Show(); end
getglobal(box.."_Texture"):Show();
end
end
end
if (not GB_Settings[GB_INDEX].Disable) then
GB_Initialize_AllBars();
end
elseif (frame == "misc") then
GB_Options_HideAllWindows();
GB_BAR = nil;
GB_MiscOptions:Show();
GB_OptionsTitle_Label:SetText(GB_TEXT.MiscellaneousOptions);
elseif (frame == "announce") then
GB_Options_HideAllWindows();
GB_BAR = nil;
GB_AnnounceOptions:Show();
GB_OptionsTitle_Label:SetText(GB_TEXT.AnnounceOptions2);
elseif (frame == "thresholds") then
GB_Options_HideAllWindows();
GB_BAR = nil;
GB_ThresholdsOptions:Show();
GB_OptionsTitle_Label:SetText(GB_TEXT.SetThresholdValues);
elseif (frame == "raidmembers") then
GB_Options_HideAllWindows();
GB_RaidMemberSelect:Show();
GB_OptionsTitle_Label:SetText(GB_TEXT.SelectRaidMembers);
else
GB_Options_HideAllWindows();
GB_BAR = frame;
if (not GB_Settings[GB_INDEX].Disable) then GB_Initialize_BarOptions(frame); end
GB_BarOptions:Show();
end
end
function GB_Slider_Initialize(slider, value)
slider:SetValue(value);
getglobal(slider:GetName().."_Display"):SetText(value);
end
function GB_Slider_OnValueChanged(index, func)
if (not GB_INITIALIZED) then return; end
if (GB_BAR_OPTIONS_INIT) then return; end
if (this:GetID() == 555 and (not GB_CLICKBOX)) then return; end
local value = this:GetValue();
getglobal(this:GetName().."_Display"):SetText(value);
if (this.scale) then
value = value / this.scale;
end
if (this:GetID() == 555) then
GB_Settings[GB_INDEX][GB_CLICKBOX].Clickbox[this.index] = value;
else
GB_Settings[GB_INDEX][GB_BAR][index] = value;
end
func(GB_BAR);
end
function GB_Slider_UpdateFromEditBox(maxlock, index, func)
this:ClearFocus();
local value = this:GetNumber();
local min, max = this:GetParent():GetMinMaxValues();
if (value < min) then
value = min;
elseif (value > max and maxlock) then
value = max;
end
if (value <= max) then
this:SetText(value);
this:GetParent():SetValue(this:GetNumber());
else
if (this:GetParent():GetID() == 555) then
GB_Settings[GB_INDEX][GB_CLICKBOX].Clickbox[this:GetParent().index] = value;
else
GB_Set(GB_BAR, index, value);
end
func(GB_BAR);
end
end
function GB_Toggle_BarLock()
if (GB_Get("barsLocked")) then
GB_Set("barsLocked", false);
GB_LockBars_Button:SetText(GB_TEXT.LockBars);
else
GB_Set("barsLocked", true);
GB_LockBars_Button:SetText(GB_TEXT.UnlockBars);
end
end
function GB_Toggle_Bars()
local value = true;
if (GB_Settings[GB_INDEX].player.hide) then value = false; end
for bar in GB_UNITS_ARRAY do
GB_Settings[GB_INDEX][bar].hide = value;
GB_Set_Appearance(bar);
end
end
function GB_Toggle_ButtonsLock()
if (GB_Get("buttonsLocked")) then
GB_Set("buttonsLocked", false);
GB_LockButtons_Button:SetText(GB_TEXT.LockButtons);
else
GB_Set("buttonsLocked", true);
GB_LockButtons_Button:SetText(GB_TEXT.UnlockButtons);
end
end
function GB_Toggle_Clickboxes()
if (GB_Get("hideClickboxes") and (not DUF_TargetOfTargetFrame)) then
GB_Set("hideClickboxes", false);
GB_HideClickboxes_Button:SetText(GB_TEXT.HideClickboxes);
GB_PlayerClickbox:Show();
if (UnitName("pet")) then
GB_Pet0Clickbox:Show();
end
for i = 1, 4 do
if (i <= GetNumPartyMembers()) then
getglobal("GB_Party"..i.."Clickbox"):Show();
if (UnitName("partypet"..i)) then
getglobal("GB_Pet"..i.."Clickbox"):Show();
end
end
end
if (UnitName("target")) then
GB_TargetClickbox:Show();
end
else
GB_Set("hideClickboxes", true);
GB_HideClickboxes_Button:SetText(GB_TEXT.ShowClickboxes);
GB_PlayerClickbox:Hide();
GB_Party1Clickbox:Hide();
GB_Party2Clickbox:Hide();
GB_Party3Clickbox:Hide();
GB_Party4Clickbox:Hide();
GB_Pet0Clickbox:Hide();
GB_Pet1Clickbox:Hide();
GB_Pet2Clickbox:Hide();
GB_Pet3Clickbox:Hide();
GB_Pet4Clickbox:Hide();
GB_TargetClickbox:Hide();
end
end
function GB_Toggle_EmptyButtons()
if (GB_Get("showEmpty")) then
GB_Settings[GB_INDEX].showEmpty = nil;
GB_ShowEmpty_Button:SetText(GB_TEXT.ShowEmpty);
else
GB_Settings[GB_INDEX].showEmpty = true;
GB_ShowEmpty_Button:SetText(GB_TEXT.HideEmpty);
end
end
function GB_Toggle_Labels()
if (GB_Get("showLabels")) then
GB_Labels_Hide();
GB_Set("showLabels", false);
GB_ShowLabels_Button:SetText(GB_TEXT.ShowLabels);
else
GB_Labels_Show();
GB_Set("showLabels", true);
GB_ShowLabels_Button:SetText(GB_TEXT.HideLabels);
end
end
function GB_Toggle_MiniSpellbook()
if (GB_MiniSpellbook:IsVisible()) then
GB_MiniSpellbook:Hide();
else
GB_MiniSpellbook:Show();
end
end
function GB_Update_Spellbox(button, bar)
if (not bar) then
bar = GB_BAR;
end
local oldSettings = {};
GB_Copy_Table(GB_Get(bar, button), oldSettings);
if (GB_MOUSE_ACTION.id) then
GB_Copy_Table(GB_MOUSE_ACTION.options, GB_Settings[GB_INDEX][bar].Button[button]);
GB_Set(bar, button, "name", GB_MOUSE_ACTION.id);
GB_Set(bar, button, "rank", GB_MOUSE_ACTION.id2);
GB_Set(bar, button, "idType", GB_MOUSE_ACTION.idtype);
GB_PickupAction(GB_MOUSE_ACTION.id, GB_MOUSE_ACTION.id2, GB_MOUSE_ACTION.idtype);
else
GB_Settings[GB_INDEX][bar].Button[button] = GB_Get_DefaultButtonSettings();
end
GB_Clear_MouseAction();
if (oldSettings.name) then
GB_PickupAction(oldSettings.name, oldSettings.rank, oldSettings.idType);
GB_Set_MouseAction(oldSettings.name, oldSettings.rank, oldSettings.idType, oldSettings);
end
GB_Options_InitAction(bar, button);
GB_ActionButton_Initialize(bar, button)
end
Generated by GNU Enscript 1.6.5.90.