ElvUI Profile Converter Feature Overview The ElvUI Profile Converter is a feature designed to convert ElvUI profiles from one version to another, ensuring seamless compatibility and minimizing the need for manual reconfiguration. Requirements
ElvUI version 12.00 or higher Lua 5.1 or higher
Features
Profile Detection : Automatically detects the ElvUI profile to be converted Version Support : Supports conversion from ElvUI version 10.00 to 14.00 Conversion Options : elvui profile converter
Preserve : Preserve original profile settings where possible Default : Apply default ElvUI settings for unsupported profile settings
Code Implementation local E, L, V, P, G = unpack(ElvUI) local ProfileConverter = E:NewModule("ProfileConverter", "elvui")
function ProfileConverter:Initialize() -- Profile detection and conversion logic self:RegisterEvent("PLAYER_ENTERING_WORLD", function() local profileName = E.db.name if profileName then local profileVersion = E.db.profileVersion if profileVersion and profileVersion < 12 then self:ConvertProfile(profileName, profileVersion) end end end) end ElvUI Profile Converter Feature Overview The ElvUI Profile
function ProfileConverter:ConvertProfile(profileName, profileVersion) -- Conversion logic for profiles from version 10.00 to 11.99 local conversionFunctions = { ["10.00"] = function() self:ConvertFrom1000(profileName) end, ["11.00"] = function() self:ConvertFrom1100(profileName) end, -- Add more conversion functions as needed }
if conversionFunctions[profileVersion] then conversionFunctions[profileVersion]() else -- Handle unknown profile version E:Print("Unknown profile version:", profileVersion) end end
function ProfileConverter:ConvertFrom1000(profileName) -- Conversion logic from ElvUI 10.00 local profile = E:CopyProfile(profileName) -- Apply conversion changes -- ... 12 then self:ConvertProfile(profileName
E:UpdateProfile(profileName) E:Print("Profile converted from 10.00:", profileName) end
function ProfileConverter:ConvertFrom1100(profileName) -- Conversion logic from ElvUI 11.00 local profile = E:CopyProfile(profileName) -- Apply conversion changes -- ...