ESOUI SVN TaosFollowLeader

[/] [trunk/] [TaosFollowLeader/] [logic/] [SettingsHandler.lua] - Rev 5

Compare with Previous | Blame | View Log

--[[
        Addon: Taos Follow Leader
        Author: TProg Taonnor
        Created by @Taonnor
]]--

--[[
        Local variables
]]--
local LOG_ACTIVE = true
local _logger = nil

local SETTINGS_VERSION = 1

--[[
        Table TFL_SettingsHandler
]]--
TFL_SettingsHandler = {}
TFL_SettingsHandler.__index = TFL_SettingsHandler

--[[
        Table Members
]]--
TFL_SettingsHandler.Name = "TFL-SettingsHandler"
TFL_SettingsHandler.Icons = {
    [1] = { name = GetString(TFL_OPTIONS_ICONS_DEFAULT), path = "esoui/art/compass/groupleader.dds" },
    [2] = { name = GetString(TFL_OPTIONS_ICONS_OUROSBOROS), path = "esoui/art/gammaadjust/gamma_referenceimage1.dds" },
    [3] = { name = GetString(TFL_OPTIONS_ICONS_CP), path = "esoui/art/menubar/gamepad/gp_playermenu_icon_champion.dds" },
    [4] = { name = GetString(TFL_OPTIONS_ICONS_SKILL), path = "esoui/art/menubar/gamepad/gp_playermenu_icon_skills.dds" },
    [5] = { name = GetString(TFL_OPTIONS_ICONS_STORE), path = "esoui/art/menubar/gamepad/gp_playermenu_icon_store.dds" },
    [6] = { name = GetString(TFL_OPTIONS_ICONS_CROWN), path = "esoui/art/menubar/gamepad/gp_playermenu_icon_crowncrates.dds" },
    [7] = { name = GetString(TFL_OPTIONS_ICONS_EMP), path = "esoui/art/campaign/gamepad/gp_overview_menuicon_emperor.dds" },
    [8] = { name = GetString(TFL_OPTIONS_ICONS_CS), path = "esoui/art/campaign/campaignbrowser_indexicon_normal_down.dds" },
    [9] = { name = GetString(TFL_OPTIONS_ICONS_SB), path = "esoui/art/lfg/lfg_tabicon_mygroup_down.dds" },
    [10] = { name = GetString(TFL_OPTIONS_ICONS_QUEST), path = "esoui/art/floatingmarkers/quest_icon.dds" },
    [11] = { name = GetString(TFL_OPTIONS_ICONS_ARCH), path = "esoui/art/journal/journal_tabicon_achievements_down.dds" },
    [12] = { name = GetString(TFL_OPTIONS_ICONS_INTEREST), path = "esoui/art/icons/poi/poi_areaofinterest_complete.dds" },
    [13] = { name = GetString(TFL_OPTIONS_ICONS_GB), path = "esoui/art/icons/poi/poi_groupboss_complete.dds" },
    [14] = { name = GetString(TFL_OPTIONS_ICONS_FG), path = "esoui/art/icons/servicemappins/servicepin_fightersguild.dds" },
    [15] = { name = GetString(TFL_OPTIONS_ICONS_MG), path = "esoui/art/icons/servicemappins/servicepin_magesguild.dds" },
    [16] = { name = GetString(TFL_OPTIONS_ICONS_AD), path = "esoui/art/stats/alliancebadge_aldmeri.dds" },
    [17] = { name = GetString(TFL_OPTIONS_ICONS_DC), path = "esoui/art/stats/alliancebadge_daggerfall.dds" },
    [18] = { name = GetString(TFL_OPTIONS_ICONS_EP), path = "esoui/art/stats/alliancebadge_ebonheart.dds" },
}

TFL_SettingsHandler.SettingsName = "TaosFollowLeaderSettings"
TFL_SettingsHandler.SavedVariables = nil
TFL_SettingsHandler.Default = 
{
    ["Icon"] = 1,
    ["IconSize"] = 32,
}

--[[
        Sets SetIconSettings settings
]]--
function TFL_SettingsHandler.SetIconSettings(iconIndex)
    if (LOG_ACTIVE) then 
        _logger:logTrace("TFL_SettingsHandler.SetIconSettings")
        _logger:logDebug("iconIndex", iconIndex)
    end

    local latestIndex = #TFL_SettingsHandler.Icons

    if (iconIndex >= 1 and iconIndex <= latestIndex) then
        TFL_SettingsHandler.SavedVariables.Icon = iconIndex
        CALLBACK_MANAGER:FireCallbacks(TFL_ICON_CHANGED)
    else
        _logger:logError("Not allowed iconIndex", iconIndex)
    end
end

--[[
        Sets SetIconSizeSettings settings
]]--
function TFL_SettingsHandler.SetIconSizeSettings(iconSize)
    if (LOG_ACTIVE) then 
        _logger:logTrace("TFL_SettingsHandler.SetIconSizeSettings")
        _logger:logDebug("iconSize", iconSize)
    end

    TFL_SettingsHandler.SavedVariables.IconSize = iconSize
    CALLBACK_MANAGER:FireCallbacks(TFL_SIZE_CHANGED)
end

--[[
        Initialize loads SavedVariables
]]--
function TFL_SettingsHandler.Initialize(logger)
    if (LOG_ACTIVE) then logger:logTrace("TFL_SettingsHandler.Initialize") end

    _logger = logger

    TFL_SettingsHandler.SavedVariables = ZO_SavedVars:NewAccountWide(TFL_SettingsHandler.SettingsName, SETTINGS_VERSION, nil, TFL_SettingsHandler.Default)
end

Compare with Previous | Blame