From 20493bb40542d79217c1763b7e8edb73c18daf8d Mon Sep 17 00:00:00 2001 From: Darthpred Date: Fri, 26 Sep 2014 22:37:16 +0400 Subject: [PATCH] Well. I accedently deleted shit --- ElvUI_SLE/options/imports_c.lua | 567 +++++++++++++++++++++++++++++++++++++++ 1 file changed, 567 insertions(+) create mode 100644 ElvUI_SLE/options/imports_c.lua diff --git a/ElvUI_SLE/options/imports_c.lua b/ElvUI_SLE/options/imports_c.lua new file mode 100644 index 0000000..9fa2cd8 --- /dev/null +++ b/ElvUI_SLE/options/imports_c.lua @@ -0,0 +1,567 @@ +local E, L, V, P, G = unpack(ElvUI); +local AI = E:GetModule('SLE_AddonInstaller'); +local SLE = E:GetModule('SLE'); + +local selectedAuthor +local selectedClass +local selectedOption +local authors +local options = { + Filters = "Filters", + Addons = "Addons", +} +local classes = { + AllClasses = "All Classes", + Priest = "Priest", + Druid = "Druid", + Paladin = "Paladin", + Shaman = "Shaman", + Monk = "Monk", + Rogue = "Rogue", + Mage = "Mage", + Warrior = "Warrior", + Deathknight = "Deathknight", +} +local function buffWatch(filter) + if filter == "AllClasses" and selectedAuthor == "Affinitii" then + E.global.unitframe.buffwatch["PRIEST"] = { + {["point"] = "LEFT",["displayText"] = true,["yOffset"] = 2,["style"] = "NONE",["textColor"] = {["g"] = 0,["b"] = 0,},}, + {["point"] = "TOPRIGHT",["style"] = "texturedIcon",}, + {["enabled"] = false,},{["color"] = {["r"] = 1,["g"] = 1,["b"] = 1,},["displayText"] = true,["style"] = "NONE",},nil, + {["enabled"] = false,},{["enabled"] = false,},{["enabled"] = false,}, + {["enabled"] = true,["anyUnit"] = false,["point"] = "BOTTOMLEFT",["color"] = {["b"] = 1,["g"] = 1,["r"] = 1,},["displayText"] = true,["textThreshold"] = -1,["yOffset"] = 8,["style"] = "NONE",["id"] = 47753,}, + {["enabled"] = true,["anyUnit"] = false,["point"] = "BOTTOMRIGHT",["color"] = {["b"] = 1,["g"] = 1,["r"] = 1,},["displayText"] = true,["textThreshold"] = -1,["yOffset"] = 8,["style"] = "NONE",["id"] = 114908,}, + } + E.global.unitframe.buffwatch["DRUID"] = { + {["point"] = "TOPLEFT",["displayText"] = true,["style"] = "NONE",}, -- [1] + {["displayText"] = true,["yOffset"] = 8,["style"] = "NONE", + },{["point"] = "BOTTOMRIGHT",["displayText"] = true,["textThreshold"] = 5,["yOffset"] = 12,["style"] = "texturedIcon",}, + {["point"] = "TOPRIGHT",["displayText"] = true,["textThreshold"] = 3,["style"] = "texturedIcon",}, + } + E.global.unitframe.buffwatch["MONK"] = { + {["color"] = {["r"] = 1,["g"] = 1,["b"] = 1,},["displayText"] = true,["style"] = "NONE",},{["enabled"] = false,}, + {["color"] = {["r"] = 1,["g"] = 1,["b"] = 1,},["displayText"] = true,["yOffset"] = 8,["style"] = "NONE",}, + {["color"] = {["r"] = 1,["g"] = 1,["b"] = 1,},["displayText"] = true,["yOffset"] = 8,["style"] = "NONE",}, + {["enabled"] = true,["anyUnit"] = false,["point"] = "TOPRIGHT",["color"] = {["b"] = 1,["g"] = 1,["r"] = 1, + },["id"] = 115175,["displayText"] = false,["style"] = "texturedIcon",["yOffset"] = 0,}, + } + E.global.unitframe.buffwatch["SHAMAN"] = { + {["color"] = {["b"] = 1,["g"] = 1,["r"] = 1,},["displayText"] = true,["style"] = "NONE",}, + {["point"] = "BOTTOMRIGHT",["yOffset"] = 10,["style"] = "texturedIcon",}, + {["point"] = "TOPLEFT",["color"] = {["r"] = 1,["g"] = 1,["b"] = 1,},["displayText"] = true,["style"] = "NONE",}, + } + ReloadUI(); + elseif selectedAuthor == "Affintii" then + if filter == "Priest" then + E.global.unitframe.buffwatch["PRIEST"] = { + {["point"] = "LEFT",["displayText"] = true,["yOffset"] = 2,["style"] = "NONE",["textColor"] = {["g"] = 0,["b"] = 0,},}, + {["point"] = "TOPRIGHT",["style"] = "texturedIcon",}, + {["enabled"] = false,},{["color"] = {["r"] = 1,["g"] = 1,["b"] = 1,},["displayText"] = true,["style"] = "NONE",},nil, + {["enabled"] = false,},{["enabled"] = false,},{["enabled"] = false,}, + {["enabled"] = true,["anyUnit"] = false,["point"] = "BOTTOMLEFT",["color"] = {["b"] = 1,["g"] = 1,["r"] = 1,},["displayText"] = true,["textThreshold"] = -1,["yOffset"] = 8,["style"] = "NONE",["id"] = 47753,}, + {["enabled"] = true,["anyUnit"] = false,["point"] = "BOTTOMRIGHT",["color"] = {["b"] = 1,["g"] = 1,["r"] = 1,},["displayText"] = true,["textThreshold"] = -1,["yOffset"] = 8,["style"] = "NONE",["id"] = 114908,}, + } + ReloadUI(); + elseif filter == "Druid" then + E.global.unitframe.buffwatch["DRUID"] = { + {["point"] = "TOPLEFT",["displayText"] = true,["style"] = "NONE",}, -- [1] + {["displayText"] = true,["yOffset"] = 8,["style"] = "NONE", + },{["point"] = "BOTTOMRIGHT",["displayText"] = true,["textThreshold"] = 5,["yOffset"] = 12,["style"] = "texturedIcon",}, + {["point"] = "TOPRIGHT",["displayText"] = true,["textThreshold"] = 3,["style"] = "texturedIcon",}, + } + ReloadUI(); + elseif filter == "Monk" then + E.global.unitframe.buffwatch["MONK"] = { + {["color"] = {["r"] = 1,["g"] = 1,["b"] = 1,},["displayText"] = true,["style"] = "NONE",},{["enabled"] = false,}, + {["color"] = {["r"] = 1,["g"] = 1,["b"] = 1,},["displayText"] = true,["yOffset"] = 8,["style"] = "NONE",}, + {["color"] = {["r"] = 1,["g"] = 1,["b"] = 1,},["displayText"] = true,["yOffset"] = 8,["style"] = "NONE",}, + {["enabled"] = true,["anyUnit"] = false,["point"] = "TOPRIGHT",["color"] = {["b"] = 1,["g"] = 1,["r"] = 1, + },["id"] = 115175,["displayText"] = false,["style"] = "texturedIcon",["yOffset"] = 0,}, + } + ReloadUI(); + elseif filter == "Shaman" then + E.global.unitframe.buffwatch["SHAMAN"] = { + {["color"] = {["b"] = 1,["g"] = 1,["r"] = 1,},["displayText"] = true,["style"] = "NONE",}, + {["point"] = "BOTTOMRIGHT",["yOffset"] = 10,["style"] = "texturedIcon",}, + {["point"] = "TOPLEFT",["color"] = {["r"] = 1,["g"] = 1,["b"] = 1,},["displayText"] = true,["style"] = "NONE",}, + } + ReloadUI(); + else + print("There is no filter for the class specified.") + end + elseif filter == "1Filter" then + E.global.unitframe.aurafilters["Blacklist"] = { + ["spells"] = { + ["Bright Light"] = {["enable"] = true,["priority"] = 0,}, + ["Insanity"] = {["enable"] = true,["priority"] = 0,}, + ["Infrared Light"] = {["enable"] = true,["priority"] = 0,}, + ["Blue Rays"] = {["enable"] = true,["priority"] = 0,}, + ["Demonic Rebirth: Cooldown"] = {["enable"] = true,["priority"] = 0,}, + ["Unleashed Anima"] = {["enable"] = true,["priority"] = 0,}, + ["Recently Bandaged"] = {["enable"] = true,["priority"] = 0,}, + ["Fully Mutated"] = {["enable"] = true,["priority"] = 0,}, + ["Keen Eyesight"] = {["enable"] = true,["priority"] = 0,}, + ["Thick Bones"] = {["enable"] = true,["priority"] = 0,}, + ["Clear Mind"] = {["enable"] = true,["priority"] = 0,}, + ["Improved Synapses"] = {["enable"] = true,["priority"] = 0,}, + ["Perdition"] = {["enable"] = true,["priority"] = 0,}, + ["Void-Touched"] = {["enable"] = true,["priority"] = 0,}, + }, + } + ReloadUI(); + else + print("This author doesn't have a filter import for that option.") + end +end + +local function UpdateAuthor() + if selectedAuthor == 'Affinitii' then + if not selectedAuthor then + E.Options.args.sle.args.importing.args.authors.args.authorGroup = nil + E.Options.args.sle.args.importing.args.authors.args.optionGroup = nil + return + end + + E.Options.args.sle.args.importing.args.authors.args.authorGroup = { + type = 'group', + name = selectedAuthor, + guiInline = true, + order = 10, + args = { + importOptions = { + name = L["Import Options"], + type = 'select', + order = 1, + guiInline = true, + get = function(info) return selectedOption end, + set = function(info, value) selectedOption = value; UpdateAuthor(); end, + values = function() + local option = {} + option[''] = NONE + for k in pairs(options) do + option[k] = k + end + + return option + end, + }, + }, + } + if not selectedOption or selectedOption == '' then + E.Options.args.sle.args.importing.args.authors.args.optionGroup = nil + selectedClass = nil + return + end + + if selectedOption == 'Filters' then + E.Options.args.sle.args.importing.args.authors.args.optionGroup = { + type = "group", + name = selectedOption, + order = 15, + guiInline = true, + args = { + description = { + order = 2, + type = "description", + name = L["Please be aware that importing any of the filters will require a reload of the UI for the settings to take effect.\nOnce you click a filter button, your screen will reload automatically."], + }, + selectClass = { + name = L["Select Filter"], + type = 'select', + order = 4, + guiInline = true, + get = function(info) return selectedClass end, + set = function(info, value) selectedClass = value; UpdateAuthor(); end, + values = function() + local class = {} + class[''] = NONE + class['1Filter'] = "General Filters" + for k, v in pairs(classes) do + class[k] = v + end + + return class + end, + }, + spacer = { + order = 6, + type = 'description', + name = '', + }, + }, + } + if not selectedClass or selectedClass == '' then + E.Options.args.sle.args.importing.args.authors.args.optionGroup.args.class = nil + return + end + E.Options.args.sle.args.importing.args.authors.args.optionGroup.args.class = { + type = 'execute', + order = 5, + name = L["Import"], + func = function(info, value) buffWatch(selectedClass) end, + } + if selectedClass == '1Filter' then + E.Options.args.sle.args.importing.args.authors.args.optionGroup.args.filterInfo = { + type = "description", + order = 7, + name = L["This will import non class specific filters from this author."], + } + elseif selectedClass == 'AllClasses' then + E.Options.args.sle.args.importing.args.authors.args.optionGroup.args.filterInfo = { + type = "description", + order = 7, + name = L["This will import All Class specific filters from this author."], + } + end + elseif selectedOption == 'Addons' then + selectedClass = nil + E.Options.args.sle.args.importing.args.authors.args.optionGroup = { + type = "group", + name = selectedOption, + order = 15, + guiInline = true, + args = { + AllAddons = { + type = 'execute', + order = 2, + name = L['Import All'], + func = function(info, value) AI:LoadAddons("Affinitii, All"); ReloadUI(); end, + }, + --BigWigs = { + -- type = 'execute', + -- order = 3, + -- name = "Big Wigs", + -- func = function(info, value) AI:LoadAddons("Affinitii, BigWigs"); ReloadUI(); end, + --}, + --Hermes = { + -- type = 'execute', + -- order = 4, + -- name = "Hermes", + -- func = function(info, value) AI:LoadAddons("Affinitii, Hermes"); ReloadUI(); end, + --}, + --xCT = { + -- type = 'execute', + -- order = 5, + -- name = "xCT+", + -- func = function(info, value) AI:LoadAddons("Affinitii, xCT+,"); ReloadUI(); end, + --}, + }, + } + end + elseif selectedAuthor == 'Repooc' then + if not selectedAuthor then + E.Options.args.sle.args.importing.args.authors.args.authorGroup = nil + E.Options.args.sle.args.importing.args.authors.args.optionGroup = nil + return + end + + E.Options.args.sle.args.importing.args.authors.args.authorGroup = { + type = 'group', + name = selectedAuthor, + guiInline = true, + order = 10, + args = { + importOptions = { + name = L["Import Options"], + type = 'select', + order = 1, + guiInline = true, + get = function(info) return selectedOption end, + set = function(info, value) selectedOption = value; UpdateAuthor(); end, + values = function() + local option = {} + option[''] = NONE + for k in pairs(options) do + option[k] = k + end + + return option + end, + }, + }, + } + if not selectedOption or selectedOption == '' then + E.Options.args.sle.args.importing.args.authors.args.optionGroup = nil + return + end + + if selectedOption == 'Filters' then + E.Options.args.sle.args.importing.args.authors.args.optionGroup = { + type = "group", + name = selectedOption, + order = 15, + guiInline = true, + args = { + description = { + order = 2, + type = "description", + name = L["Please be aware that importing any of the filters will require a reload of the UI for the settings to take effect.\nOnce you click a filter button, your screen will reload automatically."], + }, + selectClass = { + name = L["Select Filter"], + type = 'select', + order = 4, + guiInline = true, + get = function(info) return selectedClass end, + set = function(info, value) selectedClass = value; UpdateAuthor(); end, + values = function() + local class = {} + class[''] = NONE + class['1Filter'] = "General Filters" + for k, v in pairs(classes) do + class[k] = v + end + + return class + end, + }, + spacer = { + order = 6, + type = 'description', + name = '', + }, + }, + } + if not selectedClass or selectedClass == '' then + E.Options.args.sle.args.importing.args.authors.args.optionGroup.args.class = nil + return + end + E.Options.args.sle.args.importing.args.authors.args.optionGroup.args.class = { + type = 'execute', + order = 5, + name = L["Import"], + func = function(info, value) buffWatch(selectedClass) end, + } + if selectedClass == '1Filter' then + E.Options.args.sle.args.importing.args.authors.args.optionGroup.args.filterInfo = { + type = "description", + order = 7, + name = L["This will import non class specific filters from this author."], + } + elseif selectedClass == 'AllClasses' then + E.Options.args.sle.args.importing.args.authors.args.optionGroup.args.filterInfo = { + type = "description", + order = 7, + name = L["This will import All Class specific filters from this author."], + } + end + elseif selectedOption == 'Addons' then + E.Options.args.sle.args.importing.args.authors.args.optionGroup = { + type = "group", + name = selectedOption, + order = 15, + guiInline = true, + args = { + repoocinfo = { + type = "description", + order = 2, + name = selectedAuthor..' '..L["has no data for this selected option."], + }, + --[[ + BigWigs = { + type = 'execute', + order = 2, + name = "Big Wigs", + func = function(info, value) AI:LoadAddons("Affinitii, BigWigs"); end, + }, + Hermes = { + type = 'execute', + order = 2, + name = "Hermes", + func = function(info, value) AI:LoadAddons("Affinitii, Hermes"); end, + }, + xCT = { + type = 'execute', + order = 2, + name = "xCT+", + func = function(info, value) AI:LoadAddons("Affinitii, xCT+"); end, + },]] + }, + } + end + elseif selectedAuthor == 'Darth' then + if not selectedAuthor then + E.Options.args.sle.args.importing.args.authors.args.authorGroup = nil + E.Options.args.sle.args.importing.args.authors.args.optionGroup = nil + return + end + + E.Options.args.sle.args.importing.args.authors.args.authorGroup = { + type = 'group', + name = selectedAuthor, + guiInline = true, + order = 10, + args = { + importOptions = { + name = L["Import Options"], + type = 'select', + order = 1, + guiInline = true, + get = function(info) return selectedOption end, + set = function(info, value) selectedOption = value; UpdateAuthor(); end, + values = function() + local option = {} + option[''] = NONE + for k in pairs(options) do + option[k] = k + end + + return option + end, + }, + }, + } + if not selectedOption or selectedOption == '' then + E.Options.args.sle.args.importing.args.authors.args.optionGroup = nil + return + end + + if selectedOption == 'Filters' then + E.Options.args.sle.args.importing.args.authors.args.optionGroup = { + type = "group", + name = selectedOption, + order = 15, + guiInline = true, + args = { + description = { + order = 2, + type = "description", + name = L["Please be aware that importing any of the filters will require a reload of the UI for the settings to take effect.\nOnce you click a filter button, your screen will reload automatically."], + }, + selectClass = { + name = L["Select Filter"], + type = 'select', + order = 4, + guiInline = true, + get = function(info) return selectedClass end, + set = function(info, value) selectedClass = value; UpdateAuthor(); end, + values = function() + local class = {} + class[''] = NONE + class['1Filter'] = "General Filters" + for k, v in pairs(classes) do + class[k] = v + end + + return class + end, + }, + spacer = { + order = 6, + type = 'description', + name = '', + }, + }, + } + if not selectedClass or selectedClass == '' then + E.Options.args.sle.args.importing.args.authors.args.optionGroup.args.class = nil + return + end + E.Options.args.sle.args.importing.args.authors.args.optionGroup.args.class = { + type = 'execute', + order = 5, + name = L["Import"], + func = function(info, value) buffWatch(selectedClass) end, + } + if selectedClass == '1Filter' then + E.Options.args.sle.args.importing.args.authors.args.optionGroup.args.filterInfo = { + type = "description", + order = 7, + name = L["This will import non class specific filters from this author."], + } + elseif selectedClass == 'AllClasses' then + E.Options.args.sle.args.importing.args.authors.args.optionGroup.args.filterInfo = { + type = "description", + order = 7, + name = L["This will import All Class specific filters from this author."], + } + end + elseif selectedOption == 'Addons' then + E.Options.args.sle.args.importing.args.authors.args.optionGroup = { + type = "group", + name = selectedOption, + order = 15, + guiInline = true, + args = { + xCT = { + type = 'execute', + order = 2, + name = "xCT+", + func = function(info, value) AI:LoadAddons("Darth, All"); end, + }, + }, + } + end + else + if not selectedAuthor or selectedAuthor == "" then + E.Options.args.sle.args.importing.args.authors.args.authorGroup = nil + E.Options.args.sle.args.importing.args.authors.args.optionGroup = nil + return + end + end +end + +local function configTable() + E.Options.args.sle.args.importing = { + type = 'group', + name = L['Import Options'], + order = 300, + args = { + header = { + order = 1, + type = "header", + name = L['Import Options'], + }, + export = { + order = 2, + type = 'group', + name = L["Export / Import"], + guiInline = true, + args = { + description = { + order = 1, + type = "description", + name = L["SLE_EXPORTS"], + }, + export = { + type = 'execute', + order = 2, + name = L["Export"], + func = function(info, value) SLE:OpenExport() end, + }, + }, + }, + authors = { + order = 3, + type = 'group', + name = L["Author Specific Imports"], + guiInline = true, + args = { + description = { + order = 2, + type = "description", + name = L["SLE_IMPORTS"], + }, + selectAuthor = { + order = 3, + type = 'select', + name = L['Select Author'], + get = function(info) if selectedAuthor == nil then return 'None' else return selectedAuthor end end, + set = function(info, value) if value == '' then selectedAuthor = nil; selectedClass = nil; selectedOption = nil; else selectedAuthor = value; selectedOption = nil; selectedClass = nil; end; UpdateAuthor() end, + values = function() + local authors = {} + authors[''] = NONE + + authors['Affinitii'] = 'Affinitii' + authors['Repooc'] = 'Repooc' + authors['Darth'] = 'Darth' + return authors + end, + }, + }, + }, + }, + } +end + +table.insert(E.SLEConfigs, configTable) \ No newline at end of file -- 1.7.9.5