update config

This commit is contained in:
Bunny67
2018-06-14 21:29:14 +03:00
parent edb358c06c
commit faba1d7b1b
7 changed files with 301 additions and 215 deletions
-1
View File
@@ -5,7 +5,6 @@ P.farmSize = 340
--Core
P["general"] = {
["taintLog"] = false,
["stickyFrames"] = true,
["loginmessage"] = true,
["autoRepair"] = "NONE",
+101 -11
View File
@@ -1,6 +1,5 @@
local E, L, V, P, G = unpack(ElvUI); --Import: Engine, Locales, PrivateDB, ProfileDB, GlobalDB
local AB = E:GetModule("ActionBars");
local ACD = LibStub("AceConfigDialog-3.0");
local group
--Cache global variables
@@ -20,11 +19,14 @@ local points = {
["BOTTOMRIGHT"] = "BOTTOMRIGHT"
}
local ACD = LibStub("AceConfigDialog-3.0")
local function BuildABConfig()
group["general"] = {
order = 1,
type = "group",
name = L["General Options"],
childGroups = "tab",
disabled = function() return not E.private.actionbar.enable end,
args = {
info = {
@@ -202,7 +204,7 @@ local function BuildABConfig()
}
}
group["barPet"] = {
order = 6,
order = 2,
name = L["Pet Bar"],
type = "group",
guiInline = false,
@@ -329,7 +331,7 @@ local function BuildABConfig()
}
}
group["stanceBar"] = {
order = 7,
order = 3,
name = L["Stance Bar"],
type = "group",
guiInline = false,
@@ -467,7 +469,7 @@ local function BuildABConfig()
}
}
group["microbar"] = {
order = 8,
order = 4,
type = "group",
name = L["Micro Bar"],
get = function(info) return E.db.actionbar.microbar[ info[getn(info)] ] end,
@@ -537,12 +539,10 @@ local function BuildABConfig()
}
}
}
end
local function BuildBarConfig(i)
for i = 1, 5 do
local name = L["Bar "]..i
group["bar"..i] = {
order = 1 + i,
order = 4 + i,
name = name,
type = "group",
disabled = function() return not E.private.actionbar.enable end,
@@ -688,6 +688,7 @@ local function BuildBarConfig(i)
}
}
end
end
E.Options.args.actionbar = {
type = "group",
@@ -708,10 +709,99 @@ E.Options.args.actionbar = {
type = "description",
name = L["ACTIONBARS_DESC"]
},
header = {
order = 3,
type = "header",
name = L["Shortcuts"],
},
spacer1 = {
order = 4,
type = "description",
name = " ",
},
generalShortcut = {
order = 5,
type = "execute",
name = L["General"],
buttonElvUI = true,
func = function() ACD:SelectGroup("ElvUI", "actionbar", "general") end,
disabled = function() return not E.ActionBars end,
},
petBarShortcut = {
order = 6,
type = "execute",
name = L["Pet Bar"],
buttonElvUI = true,
func = function() ACD:SelectGroup("ElvUI", "actionbar", "barPet") end,
disabled = function() return not E.ActionBars end,
},
stanceBarShortcut = {
order = 7,
type = "execute",
name = L["Stance Bar"],
buttonElvUI = true,
func = function() ACD:SelectGroup("ElvUI", "actionbar", "stanceBar") end,
disabled = function() return not E.ActionBars end,
},
spacer2 = {
order = 8,
type = "description",
name = " ",
},
microbarShortcut = {
order = 9,
type = "execute",
name = L["Micro Bar"],
buttonElvUI = true,
func = function() ACD:SelectGroup("ElvUI", "actionbar", "microbar") end,
disabled = function() return not E.ActionBars end,
},
bar1Shortcut = {
order = 10,
type = "execute",
name = L["Bar "]..1,
buttonElvUI = true,
func = function() ACD:SelectGroup("ElvUI", "actionbar", "bar1") end,
disabled = function() return not E.ActionBars end,
},
bar2Shortcut = {
order = 11,
type = "execute",
name = L["Bar "]..2,
buttonElvUI = true,
func = function() ACD:SelectGroup("ElvUI", "actionbar", "bar2") end,
disabled = function() return not E.ActionBars end,
},
spacer3 = {
order = 12,
type = "description",
name = " ",
},
bar3Shortcut = {
order = 13,
type = "execute",
name = L["Bar "]..3,
buttonElvUI = true,
func = function() ACD:SelectGroup("ElvUI", "actionbar", "bar3") end,
disabled = function() return not E.ActionBars end,
},
bar4Shortcut = {
order = 14,
type = "execute",
name = L["Bar "]..4,
buttonElvUI = true,
func = function() ACD:SelectGroup("ElvUI", "actionbar", "bar4") end,
disabled = function() return not E.ActionBars end,
},
bar5Shortcut = {
order = 15,
type = "execute",
name = L["Bar "]..5,
buttonElvUI = true,
func = function() ACD:SelectGroup("ElvUI", "actionbar", "bar5") end,
disabled = function() return not E.ActionBars end,
}
}
}
group = E.Options.args.actionbar.args
BuildABConfig()
for i = 1, 5 do
BuildBarConfig(i)
end
+9 -15
View File
@@ -127,14 +127,8 @@ E.Options.args.general = {
name = L["Hide Error Text"],
desc = L["Hides the red error text at the top of the screen while in combat."]
},
taintLog = {
order = 13,
type = "toggle",
name = L["Log Taints"],
desc = L["Send ADDON_ACTION_BLOCKED errors to the Lua Error frame. These errors are less important in most cases and will not effect your game performance. Also a lot of these errors cannot be fixed. Please only report these errors if you notice a Defect in gameplay."]
},
bottomPanel = {
order = 14,
order = 13,
type = "toggle",
name = L["Bottom Panel"],
desc = L["Display a panel across the bottom of the screen. This is for cosmetic only."],
@@ -142,7 +136,7 @@ E.Options.args.general = {
set = function(info, value) E.db.general.bottomPanel = value; E:GetModule("Layout"):BottomPanelVisibility(); end
},
topPanel = {
order = 15,
order = 14,
type = "toggle",
name = L["Top Panel"],
desc = L["Display a panel across the top of the screen. This is for cosmetic only."],
@@ -150,7 +144,7 @@ E.Options.args.general = {
set = function(info, value) E.db.general.topPanel = value; E:GetModule("Layout"):TopPanelVisibility(); end
},
afk = {
order = 16,
order = 15,
type = "toggle",
name = L["AFK Mode"],
desc = L["When you go AFK display the AFK screen."],
@@ -158,13 +152,13 @@ E.Options.args.general = {
set = function(info, value) E.db.general.afk = value; E:GetModule("AFK"):Toggle(); end
},
enhancedPvpMessages = {
order = 17,
order = 16,
type = "toggle",
name = L["Enhanced PVP Messages"],
desc = L["Display battleground messages in the middle of the screen."],
},
raidUtility = {
order = 18,
order = 17,
type = "toggle",
name = RAID_CONTROL,
desc = L["Enables the ElvUI Raid Control panel."],
@@ -172,7 +166,7 @@ E.Options.args.general = {
set = function(info, value) E.private.general.raidUtility = value; E:StaticPopup_Show("PRIVATE_RL") end
},
autoScale = {
order = 19,
order = 18,
name = L["Auto Scale"],
desc = L["Automatically scale the User Interface based on your screen resolution"],
type = "toggle",
@@ -180,7 +174,7 @@ E.Options.args.general = {
set = function(info, value) E.global.general[ info[getn(info)] ] = value; E:StaticPopup_Show("GLOBAL_RL") end
},
minUiScale = {
order = 20,
order = 19,
type = "range",
name = L["Lowest Allowed UI Scale"],
min = 0.32, max = 0.64, step = 0.01,
@@ -188,7 +182,7 @@ E.Options.args.general = {
set = function(info, value) E.global.general.minUiScale = value; E:StaticPopup_Show("GLOBAL_RL"); end
},
numberPrefixStyle = {
order = 21,
order = 20,
type = "select",
name = L["Number Prefix"],
get = function(info) return E.db.general.numberPrefixStyle; end,
@@ -202,7 +196,7 @@ E.Options.args.general = {
}
},
decimalLength = {
order = 22,
order = 21,
type = "range",
name = L["Decimal Length"],
desc = L["Controls the amount of decimals used in values displayed on elements like NamePlates and UnitFrames."],
@@ -1107,7 +1107,8 @@ local function FeedOptions(appName, options,container,rootframe,path,group,inlin
control:SetImageSize(width, height)
control:SetLabel(name)
else
control = gui:Create("Button")
local buttonElvUI = GetOptionsMemberValue("buttonElvUI",v, options, path, appName)
control = gui:Create(buttonElvUI and "Button-ElvUI" or "Button")
control:SetText(name)
end
control:SetCallback("OnClick",ActivateControl)
@@ -91,6 +91,8 @@ local basekeys={
func=optmethodfalse,
arg={["*"]=true},
width=optstring,
-- below here were created by ElvUI --
buttonElvUI=optmethodbool,
}
local typedkeys={
@@ -24,70 +24,70 @@ local function lockTooltip()
GameTooltip:SetText(" ")
GameTooltip:Show()
end
local function dragdrop_OnMouseDown(frame, ...)
if frame.obj.dragOnMouseDown then
dragdropButton.mouseDownFrame = frame
dragdropButton:SetText(frame.obj.value or "Unknown")
dragdropButton:SetWidth(frame:GetWidth())
dragdropButton:SetHeight(frame:SetHeight())
frame.obj.dragOnMouseDown(frame, unpack(arg))
local function dragdrop_OnMouseDown(...)
if this.obj.dragOnMouseDown then
dragdropButton.mouseDownFrame = this
dragdropButton:SetText(this.obj.value or "Unknown")
dragdropButton:SetWidth(this:GetWidth())
dragdropButton:SetHeight(this:SetHeight())
this.obj.dragOnMouseDown(this, unpack(arg))
end
end
local function dragdrop_OnMouseUp(frame, ...)
if frame.obj.dragOnMouseUp then
frame:SetAlpha(1)
local function dragdrop_OnMouseUp(...)
if this.obj.dragOnMouseUp then
this:SetAlpha(1)
GameTooltip:Hide()
dragdropButton:Hide()
if dragdropButton.enteredFrame and dragdropButton.enteredFrame ~= frame and dragdropButton.enteredFrame:IsMouseOver() then
frame.obj.dragOnMouseUp(frame, unpack(arg))
frame.obj.ActivateMultiControl(frame.obj, unpack(arg))
if dragdropButton.enteredFrame and dragdropButton.enteredFrame ~= this and dragdropButton.enteredFrame:IsMouseOver() then
this.obj.dragOnMouseUp(this, unpack(arg))
this.obj.ActivateMultiControl(this.obj, unpack(arg))
end
dragdropButton.enteredFrame = nil
dragdropButton.mouseDownFrame = nil
end
end
local function dragdrop_OnLeave(frame, ...)
if frame.obj.dragOnLeave then
local function dragdrop_OnLeave(...)
if this.obj.dragOnLeave then
if dragdropButton.mouseDownFrame then
lockTooltip()
end
if frame == dragdropButton.mouseDownFrame then
frame:SetAlpha(0)
if this == dragdropButton.mouseDownFrame then
this:SetAlpha(0)
dragdropButton:Show()
frame.obj.dragOnLeave(frame, unpack(arg))
this.obj.dragOnLeave(this, unpack(arg))
end
end
end
local function dragdrop_OnEnter(frame, ...)
if frame.obj.dragOnEnter and dragdropButton:IsShown() then
dragdropButton.enteredFrame = frame
local function dragdrop_OnEnter(...)
if this.obj.dragOnEnter and dragdropButton:IsShown() then
dragdropButton.enteredFrame = this
lockTooltip()
frame.obj.dragOnEnter(frame, unpack(arg))
this.obj.dragOnEnter(this, unpack(arg))
end
end
local function dragdrop_OnClick(frame, ...)
local button = unpack(arg)
if frame.obj.dragOnClick and button == "RightButton" then
frame.obj.dragOnClick(frame, unpack(arg))
frame.obj.ActivateMultiControl(frame.obj, unpack(arg))
elseif frame.obj.stateSwitchOnClick and (button == "LeftButton") and IsShiftKeyDown() then
frame.obj.stateSwitchOnClick(frame, unpack(arg))
frame.obj.ActivateMultiControl(frame.obj, unpack(arg))
local function dragdrop_OnClick()
local button = arg1
if this.obj.dragOnClick and button == "RightButton" then
this.obj.dragOnClick(this, button)
this.obj.ActivateMultiControl(this.obj, button)
elseif this.obj.stateSwitchOnClick and (button == "LeftButton") and IsShiftKeyDown() then
this.obj.stateSwitchOnClick(this, button)
this.obj.ActivateMultiControl(this.obj, button)
end
end
local function Button_OnClick(frame, ...)
local function Button_OnClick()
AceGUI:ClearFocus()
PlaySound("igMainMenuOption")
frame.obj:Fire("OnClick", unpack(arg))
this.obj:Fire("OnClick", 2, arg1)
end
local function Control_OnEnter(frame)
frame.obj:Fire("OnEnter")
local function Control_OnEnter()
this.obj:Fire("OnEnter")
end
local function Control_OnLeave(frame)
frame.obj:Fire("OnLeave")
local function Control_OnLeave()
this.obj:Fire("OnLeave")
end
--[[-----------------------------------------------------------------------------
@@ -139,7 +139,6 @@ local function Constructor()
local frame = CreateFrame("Button", name, UIParent, "UIPanelButtonTemplate")
frame:Hide()
frame:EnableMouse(true)
frame:RegisterForClicks("AnyUp")
frame:SetScript("OnClick", Button_OnClick)
frame:SetScript("OnEnter", Control_OnEnter)
frame:SetScript("OnLeave", Control_OnLeave)
@@ -153,11 +152,11 @@ local function Constructor()
dragdropButton:Hide()
ElvUI[1]:GetModule('Skins'):HandleButton(dragdropButton)
end
frame:HookScript("OnClick", dragdrop_OnClick)
frame:HookScript("OnEnter", dragdrop_OnEnter)
frame:HookScript("OnLeave", dragdrop_OnLeave)
frame:HookScript("OnMouseUp", dragdrop_OnMouseUp)
frame:HookScript("OnMouseDown", dragdrop_OnMouseDown)
HookScript(frame, "OnClick", dragdrop_OnClick)
HookScript(frame, "OnEnter", dragdrop_OnEnter)
HookScript(frame, "OnLeave", dragdrop_OnLeave)
HookScript(frame, "OnMouseUp", dragdrop_OnMouseUp)
HookScript(frame, "OnMouseDown", dragdrop_OnMouseDown)
local text = frame:GetFontString()
text:ClearAllPoints()
@@ -12,6 +12,7 @@
<Script file="AceGUIContainer-Window.lua"/>
<!-- Widgets -->
<Script file="AceGUIWidget-Button.lua"/>
<Script file="AceGUIWidget-Button-ElvUI.lua"/>
<Script file="AceGUIWidget-CheckBox.lua"/>
<Script file="AceGUIWidget-ColorPicker.lua"/>
<Script file="AceGUIWidget-DropDown.lua"/>