|
|
|
|
local SLE, T, E, L, V, P, G = unpack(ElvUI_SLE)
|
|
|
|
|
local DVB = SLE.DedicatedVehicleBar
|
|
|
|
|
local AB = E.ActionBars
|
|
|
|
|
local LAB = E.Libs.LAB
|
|
|
|
|
local Masque = LibStub('Masque', true)
|
|
|
|
|
local MasqueGroup = Masque and Masque:Group('ElvUI', 'ActionBars')
|
|
|
|
|
|
|
|
|
|
local _G = _G
|
|
|
|
|
local format = format
|
|
|
|
|
local ipairs, pairs = ipairs, pairs
|
|
|
|
|
local strsplit = strsplit
|
|
|
|
|
local RegisterStateDriver = RegisterStateDriver
|
|
|
|
|
local UnregisterStateDriver = UnregisterStateDriver
|
|
|
|
|
local GetVehicleBarIndex, GetOverrideBarIndex, GetTempShapeshiftBarIndex = GetVehicleBarIndex, GetOverrideBarIndex, GetTempShapeshiftBarIndex
|
|
|
|
|
local CreateFrame = CreateFrame
|
|
|
|
|
local hooksecurefunc = hooksecurefunc
|
|
|
|
|
local GetCVarBool = GetCVarBool
|
|
|
|
|
|
|
|
|
|
local defaultFont, defaultFontSize, defaultFontOutline
|
|
|
|
|
|
|
|
|
|
DVB.barDefaults = {
|
|
|
|
|
vehicle = {
|
|
|
|
|
page = 1,
|
|
|
|
|
bindButtons = 'ACTIONBUTTON',
|
|
|
|
|
conditions = format('[vehicleui][possessbar] %d; [overridebar] %d; [shapeshift] %d;', GetVehicleBarIndex(), GetOverrideBarIndex(), GetTempShapeshiftBarIndex()),
|
|
|
|
|
position = 'BOTTOM,ElvUIParent,BOTTOM,0,34',
|
|
|
|
|
}
|
|
|
|
|
}
|
|
|
|
|
DVB.handledBars = {}
|
|
|
|
|
|
|
|
|
|
function DVB:Animate(bar, x, y, duration)
|
|
|
|
|
bar.anim = bar:CreateAnimationGroup('Move_In')
|
|
|
|
|
bar.anim.in1 = bar.anim:CreateAnimation('Translation')
|
|
|
|
|
bar.anim.in1:SetDuration(0)
|
|
|
|
|
bar.anim.in1:SetOrder(1)
|
|
|
|
|
bar.anim.in2 = bar.anim:CreateAnimation('Translation')
|
|
|
|
|
bar.anim.in2:SetDuration(duration)
|
|
|
|
|
bar.anim.in2:SetOrder(2)
|
|
|
|
|
bar.anim.in2:SetSmoothing('OUT')
|
|
|
|
|
bar.anim.out1 = bar:CreateAnimationGroup('Move_Out')
|
|
|
|
|
bar.anim.out2 = bar.anim.out1:CreateAnimation('Translation')
|
|
|
|
|
bar.anim.out2:SetDuration(duration)
|
|
|
|
|
bar.anim.out2:SetOrder(1)
|
|
|
|
|
bar.anim.out2:SetSmoothing('IN')
|
|
|
|
|
bar.anim.in1:SetOffset(x, y)
|
|
|
|
|
bar.anim.in2:SetOffset(-x, -y)
|
|
|
|
|
bar.anim.out2:SetOffset(x, y)
|
|
|
|
|
bar.anim.out1:SetScript('OnFinished', function() bar:Hide() end)
|
|
|
|
|
end
|
|
|
|
|
|
|
|
|
|
function DVB:AnimSlideIn(bar)
|
|
|
|
|
if not bar.anim then
|
|
|
|
|
DVB:Animate(bar)
|
|
|
|
|
end
|
|
|
|
|
|
|
|
|
|
bar.anim.out1:Stop()
|
|
|
|
|
bar.anim:Play()
|
|
|
|
|
end
|
|
|
|
|
|
|
|
|
|
function DVB:AnimSlideOut(bar)
|
|
|
|
|
if bar.anim then
|
|
|
|
|
bar.anim:Finish()
|
|
|
|
|
end
|
|
|
|
|
|
|
|
|
|
bar.anim:Stop()
|
|
|
|
|
bar.anim.out1:Play()
|
|
|
|
|
end
|
|
|
|
|
|
|
|
|
|
function DVB:PositionAndSizeBar()
|
|
|
|
|
if not DVB.bar then return end
|
|
|
|
|
local db = E.db.sle.actionbar.vehicle
|
|
|
|
|
local bar = DVB.bar
|
|
|
|
|
local buttonSpacing = db.buttonSpacing
|
|
|
|
|
local backdropSpacing = db.backdropSpacing
|
|
|
|
|
local buttonsPerRow = db.buttonsPerRow <= 7 and db.buttonsPerRow or 7
|
|
|
|
|
local point = db.point
|
|
|
|
|
local numButtons = 7
|
|
|
|
|
db.buttons = numButtons --Hard code it here for AB:HandleButton() needs it
|
|
|
|
|
|
|
|
|
|
bar.db = db
|
|
|
|
|
bar.mouseover = db.mouseover
|
|
|
|
|
|
|
|
|
|
bar:EnableMouse(bar.mouseover or not db.clickThrough)
|
|
|
|
|
bar:SetAlpha(bar.mouseover and 0 or db.alpha)
|
|
|
|
|
bar:SetFrameStrata(db.frameStrata or 'LOW')
|
|
|
|
|
bar:SetFrameLevel(db.frameLevel)
|
|
|
|
|
|
|
|
|
|
AB:FadeBarBlings(bar, bar.mouseover and 0 or db.alpha) --* Prob not needed/wanted tbh
|
|
|
|
|
bar.backdrop:SetShown(db.backdrop)
|
|
|
|
|
bar.backdrop:SetFrameStrata(db.frameStrata or 'LOW')
|
|
|
|
|
bar.backdrop:SetFrameLevel(db.frameLevel - 1)
|
|
|
|
|
bar.backdrop:ClearAllPoints()
|
|
|
|
|
|
|
|
|
|
AB:MoverMagic(bar)
|
|
|
|
|
|
|
|
|
|
local _, horizontal, anchorUp, anchorLeft = AB:GetGrowth(point)
|
|
|
|
|
local button, lastButton, lastColumnButton, anchorRowButton, lastShownButton
|
|
|
|
|
|
|
|
|
|
for i = 1, db.buttons do
|
|
|
|
|
lastButton = bar.buttons[i-1]
|
|
|
|
|
lastColumnButton = bar.buttons[i-buttonsPerRow]
|
|
|
|
|
button = bar.buttons[i]
|
|
|
|
|
button.db = db
|
|
|
|
|
|
|
|
|
|
if i == 1 or i == buttonsPerRow then
|
|
|
|
|
anchorRowButton = button
|
|
|
|
|
end
|
|
|
|
|
|
|
|
|
|
--! Dont think i need the first part of this check as 'i' should never be above db.buttons
|
|
|
|
|
if i > db.buttons then
|
|
|
|
|
button:Hide()
|
|
|
|
|
button.handleBackdrop = nil
|
|
|
|
|
else
|
|
|
|
|
button:Show()
|
|
|
|
|
button.handleBackdrop = true
|
|
|
|
|
lastShownButton = button
|
|
|
|
|
end
|
|
|
|
|
|
|
|
|
|
AB:HandleButton(bar, button, i, lastButton, lastColumnButton)
|
|
|
|
|
AB:StyleButton(button, nil, MasqueGroup and E.private.actionbar.masque.actionbars)
|
|
|
|
|
|
|
|
|
|
--* S&L Version of AB:FixKeybindText(button)
|
|
|
|
|
local hotkey = _G[button:GetName()..'HotKey']
|
|
|
|
|
local hotkeytext
|
|
|
|
|
|
|
|
|
|
local hotkeyPosition = db and db.hotkeyTextPosition or 'TOPRIGHT'
|
|
|
|
|
local hotkeyXOffset = db and db.hotkeyTextXOffset or 0
|
|
|
|
|
local hotkeyYOffset = db and db.hotkeyTextYOffset or -3
|
|
|
|
|
local color = db and db.useHotkeyColor and db.hotkeyColor or AB.db.fontColor
|
|
|
|
|
|
|
|
|
|
if i == 7 then
|
|
|
|
|
hotkeytext = _G['ElvUI_Bar1Button12HotKey']:GetText()
|
|
|
|
|
else
|
|
|
|
|
hotkeytext = _G['ElvUI_Bar1Button'..i..'HotKey']:GetText()
|
|
|
|
|
end
|
|
|
|
|
|
|
|
|
|
local justify = 'RIGHT'
|
|
|
|
|
if hotkeyPosition == 'TOPLEFT' or hotkeyPosition == 'BOTTOMLEFT' then
|
|
|
|
|
justify = 'LEFT'
|
|
|
|
|
elseif hotkeyPosition == 'TOP' or hotkeyPosition == 'BOTTOM' then
|
|
|
|
|
justify = 'CENTER'
|
|
|
|
|
end
|
|
|
|
|
|
|
|
|
|
if hotkeytext then
|
|
|
|
|
if hotkeytext == _G.RANGE_INDICATOR then
|
|
|
|
|
hotkey:FontTemplate(defaultFont, defaultFontSize, defaultFontOutline)
|
|
|
|
|
hotkey.SetVertexColor = nil
|
|
|
|
|
else
|
|
|
|
|
hotkey:FontTemplate(E.Libs.LSM:Fetch('font', db and db.hotkeyFont or AB.db.font), db and db.hotkeyFontSize or AB.db.fontSize, db and db.hotkeyFontOutline or AB.db.fontOutline)
|
|
|
|
|
hotkey.SetVertexColor = E.noop
|
|
|
|
|
end
|
|
|
|
|
hotkey:SetText(hotkeytext)
|
|
|
|
|
hotkey:SetJustifyH(justify)
|
|
|
|
|
end
|
|
|
|
|
|
|
|
|
|
hotkey:SetTextColor(color.r, color.g, color.b)
|
|
|
|
|
|
|
|
|
|
if db and not db.hotkeytext then
|
|
|
|
|
hotkey:Hide()
|
|
|
|
|
else
|
|
|
|
|
hotkey:Show()
|
|
|
|
|
end
|
|
|
|
|
|
|
|
|
|
if not button.useMasque then
|
|
|
|
|
hotkey:ClearAllPoints()
|
|
|
|
|
hotkey:Point(hotkeyPosition, hotkeyXOffset, hotkeyYOffset)
|
|
|
|
|
end
|
|
|
|
|
end
|
|
|
|
|
|
|
|
|
|
AB:HandleBackdropMultiplier(bar, backdropSpacing, buttonSpacing, db.widthMult, db.heightMult, anchorUp, anchorLeft, horizontal, lastShownButton, anchorRowButton)
|
|
|
|
|
AB:HandleBackdropMover(bar, backdropSpacing)
|
|
|
|
|
|
|
|
|
|
local page = format('[vehicleui][possessbar] %d; [overridebar] %d; [bonusbar:5] 11; [shapeshift] %d;', GetVehicleBarIndex(), GetOverrideBarIndex(), GetTempShapeshiftBarIndex())
|
|
|
|
|
RegisterStateDriver(bar, 'page', page)
|
|
|
|
|
|
|
|
|
|
local visibility = format('[petbattle] hide; [vehicleui][overridebar][shapeshift][possessbar]%s show; hide', db.dragonRiding and '[bonusbar:5]' or '')
|
|
|
|
|
|
|
|
|
|
if db.enable then
|
|
|
|
|
E:EnableMover(bar.mover:GetName())
|
|
|
|
|
RegisterStateDriver(bar, 'visibility', visibility)
|
|
|
|
|
bar:Show()
|
|
|
|
|
else
|
|
|
|
|
E:DisableMover(bar.mover:GetName())
|
|
|
|
|
UnregisterStateDriver(bar, 'visibility')
|
|
|
|
|
bar:Hide()
|
|
|
|
|
end
|
|
|
|
|
|
|
|
|
|
--* Not sure if we want or need the SetMoverSnapOffset
|
|
|
|
|
E:SetMoverSnapOffset('SL_DedicatedVehicleBarMover', db.buttonSpacing / 2)
|
|
|
|
|
|
|
|
|
|
--! Did not test the masque stuff tbh (Yolo)
|
|
|
|
|
-- if MasqueGroup and E.private.actionbar.masque.actionbars then
|
|
|
|
|
-- MasqueGroup:ReSkin()
|
|
|
|
|
|
|
|
|
|
-- -- masque retrims them all so we have to too
|
|
|
|
|
-- for btn in pairs(AB.handledbuttons) do
|
|
|
|
|
-- AB:TrimIcon(btn, true)
|
|
|
|
|
-- end
|
|
|
|
|
-- end
|
|
|
|
|
end
|
|
|
|
|
|
|
|
|
|
function DVB:CreateBar()
|
|
|
|
|
local bar = CreateFrame('Frame', 'SL_DedicatedVehicleBar', E.UIParent, 'SecureHandlerStateTemplate')
|
|
|
|
|
DVB.handledBars['vehicle'] = bar
|
|
|
|
|
DVB.bar = bar
|
|
|
|
|
|
|
|
|
|
local defaults = DVB.barDefaults['vehicle']
|
|
|
|
|
local elvButton = 'ElvUI_Bar1Button'
|
|
|
|
|
bar.id = 1
|
|
|
|
|
|
|
|
|
|
local point, anchor, attachTo, x, y = strsplit(',', defaults.position)
|
|
|
|
|
bar:Point(point, anchor, attachTo, x, y)
|
|
|
|
|
bar:HookScript('OnShow', function(frame) self:AnimSlideIn(frame) end)
|
|
|
|
|
|
|
|
|
|
bar:CreateBackdrop(AB.db.transparent and 'Transparent', nil, nil, nil, nil, nil, nil, nil, 0)
|
|
|
|
|
|
|
|
|
|
bar.buttons = {}
|
|
|
|
|
|
|
|
|
|
AB:HookScript(bar, 'OnEnter', 'Bar_OnEnter')
|
|
|
|
|
AB:HookScript(bar, 'OnLeave', 'Bar_OnLeave')
|
|
|
|
|
|
|
|
|
|
for i = 1, 7 do
|
|
|
|
|
local index = (i == 7) and 12 or i
|
|
|
|
|
local button = LAB:CreateButton(index, format(bar:GetName()..'Button%d', index), bar)
|
|
|
|
|
bar.buttons[i] = button
|
|
|
|
|
button:SetState(0, 'action', index)
|
|
|
|
|
|
|
|
|
|
for k = 1, 18 do
|
|
|
|
|
button:SetState(k, 'action', (k - 1) * 12 + index)
|
|
|
|
|
end
|
|
|
|
|
|
|
|
|
|
if index == 12 then
|
|
|
|
|
button:SetState(GetVehicleBarIndex(), 'custom', AB.customExitButton)
|
|
|
|
|
|
|
|
|
|
_G[elvButton..index].slvehiclebutton = button:GetName()
|
|
|
|
|
else
|
|
|
|
|
_G[elvButton..index].slvehiclebutton = button:GetName()
|
|
|
|
|
end
|
|
|
|
|
|
|
|
|
|
--Masuqe Support
|
|
|
|
|
-- if MasqueGroup and E.private.actionbar.masque.actionbars then
|
|
|
|
|
-- button:AddToMasque(MasqueGroup)
|
|
|
|
|
-- end
|
|
|
|
|
|
|
|
|
|
AB:HookScript(button, 'OnEnter', 'Button_OnEnter')
|
|
|
|
|
AB:HookScript(button, 'OnLeave', 'Button_OnLeave')
|
|
|
|
|
end
|
|
|
|
|
|
|
|
|
|
bar:SetAttribute('_onstate-page', [[
|
|
|
|
|
if newstate == 'possess' or newstate == '11' then
|
|
|
|
|
if HasVehicleActionBar() then
|
|
|
|
|
newstate = GetVehicleBarIndex()
|
|
|
|
|
elseif HasOverrideActionBar() then
|
|
|
|
|
newstate = GetOverrideBarIndex()
|
|
|
|
|
elseif HasTempShapeshiftActionBar() then
|
|
|
|
|
newstate = GetTempShapeshiftBarIndex()
|
|
|
|
|
elseif HasBonusActionBar() then
|
|
|
|
|
newstate = GetBonusBarIndex()
|
|
|
|
|
else
|
|
|
|
|
newstate = 12
|
|
|
|
|
end
|
|
|
|
|
end
|
|
|
|
|
|
|
|
|
|
self:SetAttribute('state', newstate)
|
|
|
|
|
control:ChildUpdate('state', newstate)
|
|
|
|
|
]])
|
|
|
|
|
|
|
|
|
|
local db = DVB.db.vehicle
|
|
|
|
|
local animationDistance = db.keepSizeRatio and db.buttonSize or db.buttonHeight
|
|
|
|
|
DVB:Animate(bar, 0, -(animationDistance), 1)
|
|
|
|
|
|
|
|
|
|
E:CreateMover(bar, 'SL_DedicatedVehicleBarMover', L["Dedicated Vehicle Bar"], nil, nil, nil, 'ALL,ACTIONBARS,S&L,S&L MISC', nil, 'sle, modules, actionbars')
|
|
|
|
|
end
|
|
|
|
|
|
|
|
|
|
function DVB:UpdateButtonSettings()
|
|
|
|
|
if not E.private.actionbar.enable then return end
|
|
|
|
|
|
|
|
|
|
for barName, bar in pairs(DVB.handledBars) do
|
|
|
|
|
DVB:UpdateButtonConfig(barName, bar.bindButtons)
|
|
|
|
|
DVB:PositionAndSizeBar()
|
|
|
|
|
end
|
|
|
|
|
|
|
|
|
|
-- if AB.db.handleOverlay then
|
|
|
|
|
-- LAB.eventFrame:RegisterEvent('SPELL_ACTIVATION_OVERLAY_GLOW_SHOW')
|
|
|
|
|
-- LAB.eventFrame:RegisterEvent('SPELL_ACTIVATION_OVERLAY_GLOW_HIDE')
|
|
|
|
|
-- else
|
|
|
|
|
-- LAB.eventFrame:UnregisterEvent('SPELL_ACTIVATION_OVERLAY_GLOW_SHOW')
|
|
|
|
|
-- LAB.eventFrame:UnregisterEvent('SPELL_ACTIVATION_OVERLAY_GLOW_HIDE')
|
|
|
|
|
-- end
|
|
|
|
|
end
|
|
|
|
|
|
|
|
|
|
local buttonDefaults = {
|
|
|
|
|
hideElements = {},
|
|
|
|
|
colors = {},
|
|
|
|
|
text = {
|
|
|
|
|
hotkey = { font = {}, color = {}, position = {} },
|
|
|
|
|
count = { font = {}, color = {}, position = {} },
|
|
|
|
|
macro = { font = {}, color = {}, position = {} },
|
|
|
|
|
},
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
function DVB:UpdateButtonConfig(barName)
|
|
|
|
|
local barDB = DVB.db[barName]
|
|
|
|
|
local bar = DVB.handledBars[barName]
|
|
|
|
|
|
|
|
|
|
if not bar.buttonConfig then bar.buttonConfig = E:CopyTable({}, buttonDefaults) end
|
|
|
|
|
local text = bar.buttonConfig.text
|
|
|
|
|
|
|
|
|
|
do -- macro text
|
|
|
|
|
text.macro.font.font = E.Libs.LSM:Fetch('font', barDB and barDB.macroFont or AB.db.font)
|
|
|
|
|
text.macro.font.size = barDB and barDB.macroFontSize or AB.db.fontSize
|
|
|
|
|
text.macro.font.flags = barDB and barDB.macroFontOutline or AB.db.font
|
|
|
|
|
text.macro.position.anchor = barDB and barDB.macroTextPosition or 'BOTTOM'
|
|
|
|
|
text.macro.position.relAnchor = false
|
|
|
|
|
text.macro.position.offsetX = barDB and barDB.macroTextXOffset or 0
|
|
|
|
|
text.macro.position.offsetY = barDB and barDB.macroTextYOffset or 1
|
|
|
|
|
text.macro.justifyH = AB:GetTextJustify(text.macro.position.anchor)
|
|
|
|
|
|
|
|
|
|
local c = db and db.useMacroColor and db.macroColor or AB.db.fontColor
|
|
|
|
|
text.macro.color = { c.r, c.g, c.b }
|
|
|
|
|
end
|
|
|
|
|
|
|
|
|
|
-- bar.buttonConfig.hideElements.count = not barDB.counttext
|
|
|
|
|
bar.buttonConfig.hideElements.macro = not barDB.macrotext
|
|
|
|
|
bar.buttonConfig.hideElements.hotkey = not barDB.hotkeytext
|
|
|
|
|
|
|
|
|
|
bar.buttonConfig.showGrid = barDB.showGrid
|
|
|
|
|
bar.buttonConfig.clickOnDown = GetCVarBool('ActionButtonUseKeyDown')
|
|
|
|
|
bar.buttonConfig.outOfRangeColoring = (AB.db.useRangeColorText and 'hotkey') or 'button'
|
|
|
|
|
bar.buttonConfig.colors.range = E:SetColorTable(bar.buttonConfig.colors.range, AB.db.noRangeColor)
|
|
|
|
|
bar.buttonConfig.colors.mana = E:SetColorTable(bar.buttonConfig.colors.mana, AB.db.noPowerColor)
|
|
|
|
|
bar.buttonConfig.colors.usable = E:SetColorTable(bar.buttonConfig.colors.usable, AB.db.usableColor)
|
|
|
|
|
bar.buttonConfig.colors.notUsable = E:SetColorTable(bar.buttonConfig.colors.notUsable, AB.db.notUsableColor)
|
|
|
|
|
bar.buttonConfig.useDrawBling = not AB.db.hideCooldownBling
|
|
|
|
|
bar.buttonConfig.useDrawSwipeOnCharges = AB.db.useDrawSwipeOnCharges
|
|
|
|
|
bar.buttonConfig.handleOverlay = AB.db.handleOverlay
|
|
|
|
|
|
|
|
|
|
for _, button in ipairs(bar.buttons) do
|
|
|
|
|
--* Don't know if needed atm, still somewhat a wip
|
|
|
|
|
-- AB:ToggleCountDownNumbers(bar, button)
|
|
|
|
|
|
|
|
|
|
button:UpdateConfig(bar.buttonConfig)
|
|
|
|
|
end
|
|
|
|
|
end
|
|
|
|
|
|
|
|
|
|
--* Ghetto way to get the pushed texture to work
|
|
|
|
|
local function LAB_MouseUp(btn)
|
|
|
|
|
if not E.private.actionbar.enable or not E.db.sle.actionbar.vehicle.enable or not btn.slvehiclebutton then return end
|
|
|
|
|
local button = _G[btn.slvehiclebutton]
|
|
|
|
|
if button and button.config.clickOnDown then
|
|
|
|
|
button:GetPushedTexture():Hide()
|
|
|
|
|
end
|
|
|
|
|
end
|
|
|
|
|
hooksecurefunc(AB, 'LAB_MouseUp', LAB_MouseUp)
|
|
|
|
|
|
|
|
|
|
local function LAB_MouseDown(btn)
|
|
|
|
|
if not E.private.actionbar.enable or not E.db.sle.actionbar.vehicle.enable or not btn.slvehiclebutton then return end
|
|
|
|
|
local button = _G[btn.slvehiclebutton]
|
|
|
|
|
if button and button.config.clickOnDown then
|
|
|
|
|
button:GetPushedTexture():Show()
|
|
|
|
|
end
|
|
|
|
|
end
|
|
|
|
|
hooksecurefunc(AB, 'LAB_MouseDown', LAB_MouseDown)
|
|
|
|
|
|
|
|
|
|
local function LAB_ButtonUpdate(_, button)
|
|
|
|
|
if not E.private.actionbar.enable or not E.db.sle.actionbar.vehicle.enable or not button or not strmatch(button:GetName(), 'SL_DedicatedVehicleBarButton') then return end
|
|
|
|
|
local cooldown = button.cooldown
|
|
|
|
|
if cooldown then
|
|
|
|
|
cooldown:SetAllPoints()
|
|
|
|
|
end
|
|
|
|
|
end
|
|
|
|
|
hooksecurefunc(AB, 'LAB_ButtonUpdate', LAB_ButtonUpdate)
|
|
|
|
|
|
|
|
|
|
function DVB:Initialize()
|
|
|
|
|
if not SLE.initialized or not E.private.actionbar.enable then return end
|
|
|
|
|
DVB.db = E.db.sle.actionbar
|
|
|
|
|
|
|
|
|
|
if E.locale == 'koKR' then
|
|
|
|
|
defaultFont, defaultFontSize, defaultFontOutline = [[Fonts\2002.TTF]], 11, "MONOCHROME, THICKOUTLINE"
|
|
|
|
|
elseif E.locale == 'zhTW' then
|
|
|
|
|
defaultFont, defaultFontSize, defaultFontOutline = [[Fonts\arheiuhk_bd.TTF]], 11, "MONOCHROME, THICKOUTLINE"
|
|
|
|
|
elseif E.locale == 'zhCN' then
|
|
|
|
|
defaultFont, defaultFontSize, defaultFontOutline = [[Fonts\FRIZQT__.TTF]], 11, 'MONOCHROME, OUTLINE'
|
|
|
|
|
else
|
|
|
|
|
defaultFont, defaultFontSize, defaultFontOutline = [[Fonts\ARIALN.TTF]], 12, "MONOCHROME, THICKOUTLINE"
|
|
|
|
|
end
|
|
|
|
|
|
|
|
|
|
DVB:CreateBar()
|
|
|
|
|
DVB:UpdateButtonSettings()
|
|
|
|
|
|
|
|
|
|
DVB:RegisterEvent('UPDATE_BINDINGS', DVB.UpdateButtonSettings)
|
|
|
|
|
|
|
|
|
|
--! Def need some testing as I don't see why or where this is needed atm
|
|
|
|
|
-- DVB.bar:Execute(DVB.bar:GetAttribute('_onstate-page'))
|
|
|
|
|
|
|
|
|
|
-- function DVB:ForUpdateAll()
|
|
|
|
|
-- DVB:UpdateButtonSettings()
|
|
|
|
|
-- end
|
|
|
|
|
|
|
|
|
|
hooksecurefunc(AB, 'UpdateButtonSettings', DVB.UpdateButtonSettings)
|
|
|
|
|
end
|
|
|
|
|
|
|
|
|
|
SLE:RegisterModule(DVB:GetName())
|