View Single Post
03-26-16, 11:23 AM   #2
Fizzlemizz
I did that?
 
Fizzlemizz's Avatar
Premium Member
AddOn Author - Click to view addons
Join Date: Dec 2011
Posts: 1,877
Rather than tremove and tinsert (which don't return anything) add the frame to your table by name
Code:
TDButton_FramePool = {};
 
function TDButton_CreateOverlay(parent, id, texture, r, g, b)
	local frame = TDButton_FramePool['TDButton_Overlay_' .. id]
	if not frame then
		frame = CreateFrame('Frame', 'TDButton_Overlay_' .. id, parent);
		TDButton_FramePool['TDButton_Overlay_' .. id] = frame
		frame:SetFrameStrata('HIGH');
		frame:SetPoint('CENTER', 0, 0);
	    	frame:SetWidth(parent:GetWidth() * 1.4);
		frame:SetHeight(parent:GetHeight() * 1.4);
		frame.texture = frame:CreateTexture('GlowOverlay', 'OVERLAY');
		frame.texture:SetAllPoints(frame);
		frame.texture:SetBlendMode('ADD');
	end
	frame.texture:SetTexture(texture or TDDps_Options_GetTexture());
	frame.texture:SetVertexColor(
		r or TDDps_Options.highlightColor.r,
		g or TDDps_Options.highlightColor.g,
		b or TDDps_Options.highlightColor.b,
		TDDps_Options.highlightColor.a
	);
	return frame;
end

function TDButton_DestroyAllOverlays()
        for key, frame in pairs(TDButton_FramePool) do
            frame:Hide();
        end
end
__________________
Fizzlemizz
Maintainer of Discord Unit Frames and Discord Art.
Author of FauxMazzle, FauxMazzleHUD and Move Pad Plus.

Last edited by Fizzlemizz : 03-26-16 at 12:32 PM.
  Reply With Quote