The desktop itself already seems to integrate this, which is awesome!
And yeah, having it integrate into the desktop manager list would be pretty nifty too.
So, using the code below I seem to achieve what I'm after... However, I don't think it's entirely correct. It serves it's purpose, but when I go to close the frame it doesn't hide it... and the frame is only able to be docked, not moveable. When you try to move it if it isn't docked it will throw an error. Right clicking on it while it is undocked also throws an error:
Code:
Interface\AddOns\RDX\DesktopMgr\FrameProps.lua:46: attempt to index local 'feat' (a nil value)
Stack trace:
-----------
Interface\AddOns\RDX\DesktopMgr\FrameProps.lua:46: in function `FrameProperties'
Interface\AddOns\RDX\DesktopMgr\ManagedFrame.lua:155: in function <Interface\AddOns\RDX\DesktopMgr\ManagedFrame.lua:147>
Code:
Interface\AddOns\RDX\DesktopMgr\ManagedFrame.lua:34: Frame QuestKing_Tracker is not movable
Stack trace:
-----------
[C]: in function `StartMoving'
Interface\AddOns\RDX\DesktopMgr\ManagedFrame.lua:34: in function `WMDrag'
Interface\AddOns\RDX\DesktopMgr\ManagedFrame.lua:145: in function <Interface\AddOns\RDX\DesktopMgr\ManagedFrame.lua:141>
lua Code:
RDXDK.RegisterWindowLess({
name = "desktop_questking",
Open = function(id)
local a = QuestKing_Tracker;
if a then a:Show(); end
return a;
end,
Close = function(id, frame)
local a = QuestKing_Tracker;
if a then a:Hide(); end
return true;
end,
IsOpen = function()
local a = QuestKing_Tracker;
if a:Show() == true then
return true;
else
return false;
end
end,
Description = "QuestKing",
Rebuild = function(id, frame)
return true;
end,
Props = function(mnu, id, frame)
table.insert(mnu, {
text = VFLI.i18n("Rebuild"),
OnClick = function()
VFL.poptree:Release();
local cls = RDXDK.GetWindowLess(frame._dk_name);
if cls then
cls.Rebuild(id, frame);
end
end
});
end
});