You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.

330 lines
9.5 KiB

local SLE, T, E, L = unpack(select(2, ...))
local M = SLE.Media
local allFont = 'PT Sans Narrow'
local allSize = 12
local allOutline = 'OUTLINE'
local function configTable()
if not SLE.initialized then return end
local ACH = E.Libs.ACH
E.Options.args.sle.args.media = {
type = 'group',
name = L["Media"],
order = 20,
childGroups = 'tab',
args = {
enable = {
order = 1,
type = 'toggle',
name = L["Enable"],
get = function(info) return E.private.sle.media[info[#info]] end,
set = function(info, value) E.private.sle.media[info[#info]] = value; E:StaticPopup_Show('PRIVATE_RL') end,
},
zonefonts = {
type = 'group',
name = L["Zone Text"],
order = 3,
disabled = function() return not E.private.sle.media.enable end,
args = {
intro = ACH:Spacer(1),
test = {
order = 2,
type = 'execute',
name = L["Test"],
disabled = function() return not E.private.general.replaceBlizzFonts end,
func = function() M:TextShow() end,
},
zone = {
type = 'group',
name = L["Zone Text"],
order = 3,
guiInline = true,
disabled = function() return not E.private.general.replaceBlizzFonts end,
get = function(info) return E.db.sle.media.fonts.zone[info[#info]] end,
set = function(info, value) E.db.sle.media.fonts.zone[info[#info]] = value; E:UpdateMedia() end,
args = {
font = {
type = 'select', dialogControl = 'LSM30_Font',
order = 1,
name = L["Font"],
values = AceGUIWidgetLSMlists.font,
},
size = {
order = 2,
name = L["FONT_SIZE"],
type = 'range',
min = 6, max = 48, step = 1,
},
outline = {
order = 3,
name = L["Font Outline"],
type = 'select',
values = T.Values.FontFlags,
},
},
},
subzone = {
type = 'group',
name = L["Subzone Text"],
order = 4,
guiInline = true,
disabled = function() return not E.private.general.replaceBlizzFonts end,
get = function(info) return E.db.sle.media.fonts.subzone[info[#info]] end,
set = function(info, value) E.db.sle.media.fonts.subzone[info[#info]] = value; E:UpdateMedia() end,
args = {
font = {
type = 'select', dialogControl = 'LSM30_Font',
order = 1,
name = L["Font"],
values = AceGUIWidgetLSMlists.font,
},
size = {
order = 2,
name = L["FONT_SIZE"],
type = 'range',
min = 6, max = 48, step = 1,
},
outline = {
order = 3,
name = L["Font Outline"],
type = 'select',
values = T.Values.FontFlags,
},
offset = {
order = 5,
name = L["Offset"],
type = 'range',
min = 0, max = 30, step = 1,
},
},
},
pvpstatus = {
type = 'group',
name = L["PvP Status Text"],
order = 5,
guiInline = true,
disabled = function() return not E.private.general.replaceBlizzFonts end,
get = function(info) return E.db.sle.media.fonts.pvp[info[#info]] end,
set = function(info, value) E.db.sle.media.fonts.pvp[info[#info]] = value; E:UpdateMedia() end,
args = {
font = {
type = 'select', dialogControl = 'LSM30_Font',
order = 1,
name = L["Font"],
values = AceGUIWidgetLSMlists.font,
},
size = {
order = 2,
name = L["FONT_SIZE"],
type = 'range',
min = 6, max = 48, step = 1,
},
outline = {
order = 3,
name = L["Font Outline"],
type = 'select',
values = T.Values.FontFlags,
},
},
},
},
},
miscfonts = {
order = 4,
type = 'group',
name = L["Misc Texts"],
disabled = function() return not E.private.sle.media.enable end,
args = {
mail = {
type = 'group',
name = L["Mail Text"],
order = 1,
guiInline = true,
disabled = function() return not E.private.general.replaceBlizzFonts end,
get = function(info) return E.db.sle.media.fonts.mail[info[#info]] end,
set = function(info, value) E.db.sle.media.fonts.mail[info[#info]] = value; E:UpdateMedia() end,
args = {
font = {
type = 'select', dialogControl = 'LSM30_Font',
order = 1,
name = L["Font"],
values = AceGUIWidgetLSMlists.font,
},
size = {
order = 2,
name = L["FONT_SIZE"],
type = 'range',
min = 6, max = 22, step = 1,
},
outline = {
order = 3,
name = L["Font Outline"],
type = 'select',
values = T.Values.FontFlags,
},
},
},
gossip = {
type = 'group',
name = L["Gossip and Quest Frames Text"],
order = 2,
guiInline = true,
disabled = function() return not E.private.general.replaceBlizzFonts end,
get = function(info) return E.db.sle.media.fonts.gossip[info[#info]] end,
set = function(info, value) E.db.sle.media.fonts.gossip[info[#info]] = value; E:UpdateMedia() end,
args = {
font = {
type = 'select', dialogControl = 'LSM30_Font',
order = 1,
name = L["Font"],
values = AceGUIWidgetLSMlists.font,
},
size = {
order = 2,
name = L["FONT_SIZE"],
type = 'range',
min = 6, max = 20, step = 1,
},
},
},
questHeader = {
type = 'group',
name = L["Objective Tracker Header Text"],
order = 3,
guiInline = true,
disabled = function() return not E.private.general.replaceBlizzFonts end,
get = function(info) return E.db.sle.media.fonts.objectiveHeader[info[#info]] end,
set = function(info, value) E.db.sle.media.fonts.objectiveHeader[info[#info]] = value; E:UpdateMedia() end,
args = {
font = {
type = 'select', dialogControl = 'LSM30_Font',
order = 1,
name = L["Font"],
values = AceGUIWidgetLSMlists.font,
},
size = {
order = 2,
name = L["FONT_SIZE"],
type = 'range',
min = 6, max = 20, step = 1,
},
outline = {
order = 3,
name = L["Font Outline"],
type = 'select',
values = T.Values.FontFlags,
},
},
},
questTracker = {
type = 'group',
name = L["Objective Tracker Text"],
order = 4,
guiInline = true,
disabled = function() return not E.private.general.replaceBlizzFonts end,
get = function(info) return E.db.sle.media.fonts.objective[info[#info]] end,
set = function(info, value) E.db.sle.media.fonts.objective[info[#info]] = value; E:UpdateMedia() end,
args = {
font = {
type = 'select', dialogControl = 'LSM30_Font',
order = 1,
name = L["Font"],
values = AceGUIWidgetLSMlists.font,
},
size = {
order = 2,
name = L["FONT_SIZE"],
type = 'range',
min = 6, max = 20, step = 1,
},
outline = {
order = 3,
name = L["Font Outline"],
type = 'select',
values = T.Values.FontFlags,
},
},
},
questFontSuperHuge = {
type = 'group',
name = L["Banner Big Text"],
order = 5,
guiInline = true,
disabled = function() return not E.private.general.replaceBlizzFonts end,
get = function(info) return E.db.sle.media.fonts.questFontSuperHuge[info[#info]] end,
set = function(info, value) E.db.sle.media.fonts.questFontSuperHuge[info[#info]] = value; E:UpdateMedia() end,
args = {
font = {
type = 'select', dialogControl = 'LSM30_Font',
order = 1,
name = L["Font"],
values = AceGUIWidgetLSMlists.font,
},
size = {
order = 2,
name = L["FONT_SIZE"],
type = 'range',
min = 6, max = 48, step = 1,
},
outline = {
order = 3,
name = L["Font Outline"],
type = 'select',
values = T.Values.FontFlags,
},
},
},
},
},
applyAll = {
order = 60,
type = 'group',
name = L["Apply Font To All"],
disabled = function() return not E.private.sle.media.enable end,
args = {
font = {
type = 'select', dialogControl = 'LSM30_Font',
order = 1,
name = L["Font"],
values = AceGUIWidgetLSMlists.font,
get = function(_) return allFont end,
set = function(_, value) allFont = value end,
},
size = {
order = 2,
name = L["FONT_SIZE"],
type = 'range',
min = 6, max = 20, step = 1,
get = function(_) return allSize end,
set = function(_, value) allSize = value end,
},
outline = {
order = 3,
name = L["Font Outline"],
type = 'select',
get = function(_) return allOutline end,
set = function(_, value) allOutline = value end,
values = T.Values.FontFlags,
},
applyFontToAll = {
order = 4,
type = 'execute',
name = L["Apply Font To All"],
-- desc = L["Applies the font and font size settings throughout the entire user interface. Note: Some font size settings will be skipped due to them having a smaller font size by default."],
func = function()
E.PopupDialogs["SLE_APPLY_FONT_WARNING"].allFont = allFont
E.PopupDialogs["SLE_APPLY_FONT_WARNING"].allSize = allSize
E.PopupDialogs["SLE_APPLY_FONT_WARNING"].allOutline = allOutline
E:StaticPopup_Show("SLE_APPLY_FONT_WARNING")
end,
},
},
},
},
}
end
tinsert(SLE.Configs, configTable)