MoveIt.Overlay = {} function MoveIt.Overlay:CreateOverlay() self.overlayFrame = CreateFrame("Frame", "MoveItOverlay", _G["UIParent"]) local bg = self.overlayFrame:CreateTexture(nil,"BACKGROUND") bg:SetTexture("Interface\\CHATFRAME\\CHATFRAMEBACKGROUND.blp") bg:SetAllPoints(self.overlayFrame) bg:SetColorTexture(1, 0, 1, 0.25) self.overlayFrame.texture = bg self.overlayFrame:SetWidth(100) self.overlayFrame:SetHeight(100) self.overlayFrame:SetPoint("CENTER", 0, 0) self.overlayFrame:Hide() end function MoveIt.Overlay:UpdateOverlay(frameName) if frameName == nil then if self.overlayFrame ~= nil then self.overlayFrame:Hide() end return end if self.overlayFrame == nil then self:CreateOverlay() end local targetFrame = MoveIt:GetFrameHandle(frameName) if pcall(function() MoveIt.Overlay.overlayFrame:SetParent(targetFrame) end) then self.overlayFrame:SetAllPoints() else self.overlayFrame:ClearAllPoints() self.overlayFrame:SetPoint("CENTER", targetFrame, "CENTER", targetFrame.OffsetX, targetFrame.OffsetY) end self.overlayFrame:SetParent(MoveIt:GetFrameHandle("UIParent")) self.overlayFrame:SetWidth(targetFrame:GetWidth()) self.overlayFrame:SetHeight(targetFrame:GetHeight()) self.overlayFrame:SetFrameStrata("HIGH") self.overlayFrame:Show() end