Quantcast

Flares mouseover

Darthpred [06-28-14 - 16:24]
Flares mouseover
Filename
ElvUI_SLE/config/profile.lua
ElvUI_SLE/modules/marks/flares.lua
ElvUI_SLE/modules/marks/options.lua
diff --git a/ElvUI_SLE/config/profile.lua b/ElvUI_SLE/config/profile.lua
index 5e4b108..b9bafe5 100755
--- a/ElvUI_SLE/config/profile.lua
+++ b/ElvUI_SLE/config/profile.lua
@@ -251,6 +251,7 @@ P['sle'] = {
 		['showinside'] = false,
 		['size'] = 20,
 		['tooltips'] = true,
+		['mouseover'] = false,
 	},

 	--UI Buttons
diff --git a/ElvUI_SLE/modules/marks/flares.lua b/ElvUI_SLE/modules/marks/flares.lua
index 4c887d1..c1c2bb6 100644
--- a/ElvUI_SLE/modules/marks/flares.lua
+++ b/ElvUI_SLE/modules/marks/flares.lua
@@ -137,6 +137,7 @@ function RF:UpdateVisibility()
 		E.FrameLocks['Main_Flares'] = nil
 		mainFlares:Hide()
 	end
+	RF:Mouseover()
 end

 function RF:Backdrop()
@@ -148,6 +149,25 @@ function RF:Backdrop()
 	end
 end

+function RF:Mouseover()
+	if not mainFlares then return end
+	local db = E.db.sle.flares
+	if db.mouseover then
+		mainFlares:SetScript("OnUpdate", function(self)
+			if MouseIsOver(self) then
+				UIFrameFadeIn(self, 0.2, self:GetAlpha(), 1)
+			else
+				UIFrameFadeOut(self, 0.2, self:GetAlpha(), 0)
+			end
+		end)
+	else
+		mainFlares:SetScript("OnUpdate", nil)
+		if mainFlares:IsShown() then
+			UIFrameFadeIn(mainFlares, 0.2, mainFlares:GetAlpha(), 1)
+		end
+	end
+end
+
 function RF:Update()
 	if not mainFlares then return end
 	RF:FrameButtonsSize()
diff --git a/ElvUI_SLE/modules/marks/options.lua b/ElvUI_SLE/modules/marks/options.lua
index 0a97a5b..54adb62 100755
--- a/ElvUI_SLE/modules/marks/options.lua
+++ b/ElvUI_SLE/modules/marks/options.lua
@@ -147,16 +147,25 @@ E.Options.args.sle.args.options.args.marks = {
 					get = function(info) return E.db.sle.flares.showinside end,
 					set = function(info, value) E.db.sle.flares.showinside = value; RF:UpdateVisibility() end
 				},
-				tooltips = {
+				mouseover = {
 					order = 7,
 					type = "toggle",
+					name = L["Mouseover"],
+					desc = L["Show on mouse over."],
+					disabled = function() return not E.private.sle.marks.flares end,
+					get = function(info) return E.db.sle.flares.mouseover end,
+					set = function(info, value) E.db.sle.flares.mouseover = value; RF:UpdateVisibility() end
+				},
+				tooltips = {
+					order = 8,
+					type = "toggle",
 					name = L["Show Tooltip"],
 					disabled = function() return not E.private.sle.marks.flares end,
 					get = function(info) return E.db.sle.flares.tooltips end,
 					set = function(info, value) E.db.sle.flares.tooltips = value; end
 				},
 				size = {
-					order = 8,
+					order = 9,
 					type = "range",
 					name = L['Size'],
 					desc = L["Sets size of buttons"],