changeset 26:e16b1fc13935

- framework update.
author Tercio
date Fri, 16 Oct 2015 14:46:27 -0300
parents 6bb668a41455
children f9601754ab46
files Hansgar_And_Franzok_Assist.lua Libs/DF/cooltip.lua Libs/DF/fw.lua Libs/DF/panel.lua
diffstat 4 files changed, 72 insertions(+), 200 deletions(-) [+]
line wrap: on
line diff
--- a/Hansgar_And_Franzok_Assist.lua	Thu Oct 08 11:52:43 2015 -0300
+++ b/Hansgar_And_Franzok_Assist.lua	Fri Oct 16 14:46:27 2015 -0300
@@ -19,7 +19,7 @@
 --local f = CreateFrame ("frame", "Hansgar_And_Franzok_Assist", UIParent)
 local f = DF:Create1PxPanel (_, 155, 166, "Hans & Franz", "Hansgar_And_Franzok_Assist", nil, "top", true)
 f:SetFrameStrata ("DIALOG")
-f.version = "v0.15h"
+f.version = "v0.15g"
 
 f.Close:SetScript ("OnClick", function (self)
 	if (f.StampersPhase) then
--- a/Libs/DF/cooltip.lua	Thu Oct 08 11:52:43 2015 -0300
+++ b/Libs/DF/cooltip.lua	Fri Oct 16 14:46:27 2015 -0300
@@ -188,8 +188,8 @@
 	
 		CoolTip.frame1 = frame1
 		CoolTip.frame2 = frame2
-		DF:Fade (frame1, 0)
-		DF:Fade (frame2, 0)
+		DF:FadeFrame (frame1, 0)
+		DF:FadeFrame (frame2, 0)
 
 		--> button containers
 		frame1.Lines = {}
@@ -261,10 +261,10 @@
 				CoolTip.mouseOver = true
 				CoolTip.had_interaction = true
 				self:SetScript ("OnUpdate", nil)
-				DF:Fade (self, 0)
+				DF:FadeFrame (self, 0)
 				--rever
 				if (CoolTip.sub_menus) then
-					DF:Fade (frame2, 0)
+					DF:FadeFrame (frame2, 0)
 				end
 			end
 		end)
@@ -278,8 +278,8 @@
 				CoolTip.mouseOver = true
 				CoolTip.had_interaction = true
 				self:SetScript ("OnUpdate", nil)
-				DF:Fade (self, 0)
-				DF:Fade (frame1, 0)
+				DF:FadeFrame (self, 0)
+				DF:FadeFrame (frame1, 0)
 			end
 		end)
 
@@ -287,11 +287,11 @@
 					elapsedTime = elapsedTime+elapsed
 					if (elapsedTime > 0.7) then
 						if (not CoolTip.active and not CoolTip.buttonClicked and self == CoolTip.Host) then
-							DF:Fade (self, 1)
-							DF:Fade (frame2, 1)
+							DF:FadeFrame (self, 1)
+							DF:FadeFrame (frame2, 1)
 						elseif (not CoolTip.active) then
-							DF:Fade (self, 1)
-							DF:Fade (frame2, 1)
+							DF:FadeFrame (self, 1)
+							DF:FadeFrame (frame2, 1)
 						end
 						self:SetScript ("OnUpdate", nil)
 						frame2:SetScript ("OnUpdate", nil)
@@ -317,11 +317,11 @@
 					elapsedTime = elapsedTime+elapsed
 					if (elapsedTime > 0.7) then
 						if (not CoolTip.active and not CoolTip.buttonClicked and self == CoolTip.Host) then
-							DF:Fade (self, 1)
-							DF:Fade (frame2, 1)
+							DF:FadeFrame (self, 1)
+							DF:FadeFrame (frame2, 1)
 						elseif (not CoolTip.active) then
-							DF:Fade (self, 1)
-							DF:Fade (frame2, 1)
+							DF:FadeFrame (self, 1)
+							DF:FadeFrame (frame2, 1)
 						end
 						self:SetScript ("OnUpdate", nil)
 						frame1:SetScript ("OnUpdate", nil)
@@ -386,12 +386,12 @@
 								elapsedTime = elapsedTime+elapsed
 								if (elapsedTime > 0.7) then
 									if (not CoolTip.active and not CoolTip.buttonClicked) then
-										DF:Fade (frame1, 1)
-										DF:Fade (frame2, 1)
+										DF:FadeFrame (frame1, 1)
+										DF:FadeFrame (frame2, 1)
 							
 									elseif (not CoolTip.active) then
-										DF:Fade (frame1, 1)
-										DF:Fade (frame2, 1)
+										DF:FadeFrame (frame1, 1)
+										DF:FadeFrame (frame2, 1)
 									end
 									frame1:SetScript ("OnUpdate", nil)
 								end
@@ -441,7 +441,7 @@
 
 								else
 									--hide second frame
-									DF:Fade (frame2, 1)
+									DF:FadeFrame (frame2, 1)
 									CoolTip.last_button = nil
 								end
 							else
@@ -491,11 +491,11 @@
 								elapsedTime = elapsedTime+elapsed
 								if (elapsedTime > 0.7) then
 									if (not CoolTip.active and not CoolTip.buttonClicked) then
-										DF:Fade (frame1, 1)
-										DF:Fade (frame2, 1)
+										DF:FadeFrame (frame1, 1)
+										DF:FadeFrame (frame2, 1)
 									elseif (not CoolTip.active) then
-										DF:Fade (frame1, 1)
-										DF:Fade (frame2, 1)
+										DF:FadeFrame (frame1, 1)
+										DF:FadeFrame (frame2, 1)
 									end
 									frame2:SetScript ("OnUpdate", nil)
 								end
@@ -524,8 +524,8 @@
 								frame1:SetScript ("OnUpdate", nil)
 								frame2:SetScript ("OnUpdate", nil)
 								
-								DF:Fade (frame1, 0)
-								DF:Fade (frame2, 0)
+								DF:FadeFrame (frame1, 0)
+								DF:FadeFrame (frame2, 0)
 							else
 								CoolTip.mouseOver = true
 								CoolTip.had_interaction = true
@@ -999,7 +999,7 @@
 			menuButton:SetPoint ("left", frame2, "left")
 			menuButton:SetPoint ("right", frame2, "right")
 			
-			DF:Fade (menuButton, 0)
+			DF:FadeFrame (menuButton, 0)
 			
 			--> string length
 			local stringWidth = menuButton.leftText:GetStringWidth() + menuButton.rightText:GetStringWidth() + menuButton.leftIcon:GetWidth() + menuButton.rightIcon:GetWidth()
@@ -1048,7 +1048,7 @@
 	function CoolTip:ShowSub (index)
 	
 		if (CoolTip.OptionsTable.IgnoreSubMenu) then
-			DF:Fade (frame2, 1)
+			DF:FadeFrame (frame2, 1)
 			return
 		end
 	
@@ -1114,7 +1114,7 @@
 		end
 		
 		for i = CoolTip.IndexesSub [index] + 1, #frame2.Lines do 
-			DF:Fade (frame2.Lines[i], 1)
+			DF:FadeFrame (frame2.Lines[i], 1)
 		end
 
 		local spacing = 0
@@ -1217,7 +1217,7 @@
 			frame2:SetWidth (frame2.w + 44)
 		end
 		
-		DF:Fade (frame2, 0)
+		DF:FadeFrame (frame2, 0)
 		
 		CoolTip:CheckOverlap()
 		
@@ -1246,7 +1246,7 @@
 	end
 	
 	function CoolTip:HideSub()
-		DF:Fade (frame2, 1)
+		DF:FadeFrame (frame2, 1)
 	end	
 	
 
@@ -1255,11 +1255,11 @@
 		row.leftText:SetHeight (10)
 	end
 
-	--> ~inicio ~start
+	--> ~inicio ~start ~tooltip
 	function CoolTip:monta_tooltip()
 		
 		--> hide sub frame
-		DF:Fade (frame2, 1)
+		DF:FadeFrame (frame2, 1)
 		--> hide select bar
 		CoolTip:HideSelectedTexture (frame1)
 
@@ -1393,7 +1393,7 @@
 		end
 		
 		--> unhide frame
-		DF:Fade (frame1, 0)
+		DF:FadeFrame (frame1, 0)
 		CoolTip:SetMyPoint (host)
 		
 		--> fix sparks
@@ -1417,7 +1417,7 @@
 		button.divbar:SetDesaturated (true)
 	end
 	
-	--> ~inicio ~start
+	--> ~inicio ~start ~menu
 	function CoolTip:monta_cooltip (host, instancia, options, sub_menus, icones, tamanho1, tamanho2, font, fontsize)
 
 		if (CoolTip.Indexes == 0) then
@@ -1442,12 +1442,12 @@
 			frame2.w = 0
 			frame2:SetHeight (6)
 			if (CoolTip.SelectedIndexMain and CoolTip.IndexesSub [CoolTip.SelectedIndexMain] and CoolTip.IndexesSub [CoolTip.SelectedIndexMain] > 0) then
-				DF:Fade (frame2, 0)
+				DF:FadeFrame (frame2, 0)
 			else
-				DF:Fade (frame2, 1)
+				DF:FadeFrame (frame2, 1)
 			end
 		else
-			DF:Fade (frame2, 1)
+			DF:FadeFrame (frame2, 1)
 		end
 		
 		CoolTip.active = true
@@ -1600,7 +1600,7 @@
 			frame1.frameWallpaper:Hide()
 		end
 	
-		DF:Fade (frame1, 0)
+		DF:FadeFrame (frame1, 0)
 
 		for i = 1, CoolTip.Indexes do
 			if (CoolTip.SelectedIndexMain and CoolTip.SelectedIndexMain == i) then
@@ -2858,8 +2858,8 @@
 	function CoolTip:Close()
 		CoolTip.active = false
 		CoolTip.Host = nil
-		DF:Fade (frame1, 1)
-		DF:Fade (frame2, 1)
+		DF:FadeFrame (frame1, 1)
+		DF:FadeFrame (frame2, 1)
 		
 	end
 	
--- a/Libs/DF/fw.lua	Thu Oct 08 11:52:43 2015 -0300
+++ b/Libs/DF/fw.lua	Fri Oct 16 14:46:27 2015 -0300
@@ -1,5 +1,5 @@
 
-local dversion = 10
+local dversion = 12
 local major, minor = "DetailsFramework-1.0", dversion
 local DF, oldminor = LibStub:NewLibrary (major, minor)
 
@@ -103,6 +103,25 @@
 	return DF.folder
 end
 
+function DF:FadeFrame (frame, t)
+	if (t == 0) then
+		frame.hidden = false
+		frame.faded = false
+		frame.fading_out = false
+		frame.fading_in = false
+		frame:Show()
+		frame:SetAlpha (1)
+		
+	elseif (t == 1) then
+		frame.hidden = true
+		frame.faded = true
+		frame.fading_out = false
+		frame.fading_in = false
+		frame:SetAlpha (0)
+		frame:Hide()
+	end
+end
+
 function DF.table.reverse (t)
 	local new = {}
 	local index = 1
@@ -317,162 +336,6 @@
 	frame.Stop = stop
 end
 
------------------------------------------
-
-local fade_IN_finished_func = function (frame)
-	if (frame.fading_in) then
-		frame.hidden = true
-		frame.faded = true
-		frame.fading_in = false
-		frame:Hide()
-	end
-end
-
-local fade_OUT_finished_func = function (frame)
-	if (frame:IsShown() and frame.fading_out) then
-		frame.hidden = false
-		frame.faded = false
-		frame.fading_out = false
-	else
-		frame:SetAlpha(0)
-	end
-end
-
-local just_fade_func = function (frame)
-	frame.hidden = false
-	frame.faded = true
-	frame.fading_in = false
-end
-
-local anim_OUT_alpha_func = function (frame)
-	frame.fading_out = false
-end
-
-local anim_IN_alpha_func = function (frame)
-	frame.fading_in = false
-end
-
-function DF:Fade (frame, tipo, velocidade, parametros)
-	
-	if (_type (frame) == "table") then 
-		if (frame.dframework) then
-			frame = frame.widget
-		end
-	end
-	
-	velocidade = velocidade or 0.3
-	
-	if (upper (tipo) == "IN") then
-
-		if (frame:GetAlpha() == 0 and frame.hidden and not frame.fading_out) then --> ja esta escondida
-			return
-		elseif (frame.fading_in) then --> ja esta com uma animação, se for true
-			return
-		end
-		
-		if (frame.fading_out) then --> se tiver uma animação de aparecer em andamento se for true
-			frame.fading_out = false
-		end
-
-		UIFrameFadeIn (frame, velocidade, frame:GetAlpha(), 0)
-		frame.fading_in = true
-		
-		frame.fadeInfo.finishedFunc = fade_IN_finished_func
-		frame.fadeInfo.finishedArg1 = frame
-		
-	elseif (upper (tipo) == "OUT") then --> aparecer
-		if (frame:GetAlpha() == 1 and not frame.hidden and not frame.fading_in) then --> ja esta na tela
-			return
-		elseif (frame.fading_out) then --> já ta com fading out
-			return
-		end
-		
-		if (frame.fading_in) then --> se tiver uma animação de hidar em andamento se for true
-			frame.fading_in = false
-		end
-		
-		frame:Show()
-		UIFrameFadeOut (frame, velocidade, frame:GetAlpha(), 1.0)
-		frame.fading_out = true
-		
-		frame.fadeInfo.finishedFunc = fade_OUT_finished_func
-		frame.fadeInfo.finishedArg1 = frame
-			
-	elseif (tipo == 0) then --> força o frame a ser mostrado
-		frame.hidden = false
-		frame.faded = false
-		frame.fading_out = false
-		frame.fading_in = false
-		frame:Show()
-		frame:SetAlpha (1)
-		
-	elseif (tipo == 1) then --> força o frame a ser hidado
-		frame.hidden = true
-		frame.faded = true
-		frame.fading_out = false
-		frame.fading_in = false
-		frame:SetAlpha (0)
-		frame:Hide()
-		
-	elseif (tipo == -1) then --> apenas da fade sem hidar
-		if (frame:GetAlpha() == 0 and frame.hidden and not frame.fading_out) then --> ja esta escondida
-			return
-		elseif (frame.fading_in) then --> ja esta com uma animação, se for true
-			return
-		end
-		
-		if (frame.fading_out) then --> se tiver uma animação de aparecer em andamento se for true
-			frame.fading_out = false
-		end
-
-		UIFrameFadeIn (frame, velocidade, frame:GetAlpha(), 0)
-		frame.fading_in = true
-		frame.fadeInfo.finishedFunc = just_fade_func
-		frame.fadeInfo.finishedArg1 = frame
-
-	elseif (upper (tipo) == "ALPHAANIM") then
-
-		local value = velocidade
-		local currentApha = frame:GetAlpha()
-		frame:Show()
-		
-		if (currentApha < value) then
-			if (frame.fading_in) then --> se tiver uma animação de hidar em andamento se for true
-				frame.fading_in = false
-				frame.fadeInfo.finishedFunc = nil
-			end
-			UIFrameFadeOut (frame, 0.3, currentApha, value)
-			frame.fading_out = true
-
-			frame.fadeInfo.finishedFunc = anim_OUT_alpha_func
-			frame.fadeInfo.finishedArg1 = frame
-
-		else
-			if (frame.fading_out) then --> se tiver uma animação de hidar em andamento se for true
-				frame.fading_out = false
-				frame.fadeInfo.finishedFunc = nil
-			end
-			UIFrameFadeIn (frame, 0.3, currentApha, value)
-			frame.fading_in = true
-			
-			frame.fadeInfo.finishedFunc = anim_IN_alpha_func
-			frame.fadeInfo.finishedArg1 = frame
-		end
-
-	elseif (upper (tipo) == "ALPHA") then --> setando um alpha determinado
-		if (frame.fading_in or frame.fading_out) then
-			frame.fadeInfo.finishedFunc = nil
-			UIFrameFadeIn (frame, velocidade, frame:GetAlpha(), frame:GetAlpha())
-		end
-		frame.hidden = false
-		frame.faded = false
-		frame.fading_in = false
-		frame.fading_out = false
-		frame:Show()
-		frame:SetAlpha (velocidade)
-	end
-end
-	
 ----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------
 --> points
 
--- a/Libs/DF/panel.lua	Thu Oct 08 11:52:43 2015 -0300
+++ b/Libs/DF/panel.lua	Fri Oct 16 14:46:27 2015 -0300
@@ -1474,7 +1474,8 @@
 local SimplePanel_frame_backdrop_color = {0, 0, 0, 0.9}
 local SimplePanel_frame_backdrop_border_color = {0, 0, 0, 1}
 
-function DF:CreateSimplePanel (parent, w, h, title, name)
+local no_options = {}
+function DF:CreateSimplePanel (parent, w, h, title, name, panel_options)
 	
 	if (not name) then
 		name = "DetailsFrameworkSimplePanel" .. simple_panel_counter
@@ -1483,6 +1484,8 @@
 	if (not parent) then
 		parent = UIParent
 	end
+	
+	panel_options = panel_options or no_options
 
 	local f = CreateFrame ("frame", name, UIParent)
 	f:SetSize (w or 400, h or 250)
@@ -1493,7 +1496,12 @@
 	f:SetBackdrop (SimplePanel_frame_backdrop)
 	f:SetBackdropColor (unpack (SimplePanel_frame_backdrop_color))
 	f:SetBackdropBorderColor (unpack (SimplePanel_frame_backdrop_border_color))
-	tinsert (UISpecialFrames, name)
+	
+	f.DontRightClickClose = panel_options.DontRightClickClose
+	
+	if (not panel_options.NoTUISpecialFrame) then
+		tinsert (UISpecialFrames, name)
+	end
 	
 	local title_bar = CreateFrame ("frame", name .. "TitleBar", f)
 	title_bar:SetPoint ("topleft", f, "topleft", 2, -3)
@@ -1502,6 +1510,7 @@
 	title_bar:SetBackdrop (SimplePanel_frame_backdrop)
 	title_bar:SetBackdropColor (.2, .2, .2, 1)
 	title_bar:SetBackdropBorderColor (0, 0, 0, 1)
+	f.TitleBar = title_bar
 	
 	local close = CreateFrame ("button", name and name .. "CloseButton", title_bar)
 	close:SetSize (16, 16)