/trunk
$Date: 2008-04-05 19:13:33 -0500 (Sat, 05 Apr 2008) $ |
TODO: HideUIPanel or ShowUIPanel hook that repositions 'center' UIPanelWindows |
TODO: make 'full' UIPanelWindows highlightable when UIParent is hidden. Like WorldMapFrame |
]]-- |
FluidFrames = {} |
function FluidFrames.InitTempDraggableFrames() |
-- Make UIPanels temporarily draggable (position not saved) |
for frameName,info in pairs(UIPanelWindows) do |
local frame = getglobal(frameName) |
if (frame and frame.GetTitleRegion) then |
local titleRegion = frame:GetTitleRegion() |
if (not titleRegion) then |
titleRegion = frame:CreateTitleRegion() |
if (info.area ~= "full") then |
local frame = getglobal(frameName) |
if (frame and frame.GetTitleRegion) then |
local titleRegion = frame:GetTitleRegion() |
if (not titleRegion) then |
titleRegion = frame:CreateTitleRegion() |
end |
--titleRegion:SetAllPoints(frame) |
frame:EnableMouse(1) |
end |
--titleRegion:SetAllPoints(frame) |
frame:EnableMouse(1) |
end |
end |
function FluidFrames.ToggleTempDraggableFrames(value) |
for frameName,info in pairs(UIPanelWindows) do |
local frame = getglobal(frameName) |
if (frame and frame.GetTitleRegion) then |
local titleRegion = frame:GetTitleRegion() |
if (titleRegion) then |
if (value) then |
titleRegion:SetAllPoints(frame) |
else |
titleRegion:ClearAllPoints() |
titleRegion:SetHeight(0) |
titleRegion:SetWidth(0) |
if (info.area ~= "full") then |
local frame = getglobal(frameName) |
if (frame and frame.GetTitleRegion) then |
local titleRegion = frame:GetTitleRegion() |
if (titleRegion) then |
if (value) then |
titleRegion:SetAllPoints(frame) |
else |
titleRegion:ClearAllPoints() |
titleRegion:SetHeight(0) |
titleRegion:SetWidth(0) |
end |
end |
end |
end |
elseif (event == "VARIABLES_LOADED") then |
FluidFrames.InitTempDraggableFrames() |
if (Portfolio) then |
FluidFrames.RegisterPortfolio() |
end |
--FluidFrames.RegisterPortfolio() |
self:RegisterEvent("PLAYER_ENTERING_WORLD") |
elseif (event == "PLAYER_ENTERING_WORLD") then |
end |
function FluidFrames.RegisterPortfolio() |
local Portfolio = LibStub and LibStub("Portfolio") |
if not Portfolio then return end |
local optionTable = { |
id="FluidFrames"; |
subText=FLUIDFRAMES_DESC_FULL; |
-- Pulls the first header and helptext from the addon toc data |
{ |
id = "TempDraggable"; |
tvar = "TempDraggable", |
text = FLUIDFRAMES_TEMP_DRAGGABLE; |
type = CONTROLTYPE_CHECKBOX; |
callback = function(value) |
}; |
}; |
savedVarTable = "FluidFrames_SavedVars"; |
loadVars = true; |
} |
Portfolio.RegisterOptionSet(optionTable) |
end |
FluidFrames.RegisterPortfolio() |
---------------------------- |
-- OnLoad Inits |
---------------------------- |