otclient-redemption/modules/corelib/ui/uidragicon.lua

38 lines
No EOL
904 B
Lua

UIDragIcon = {}
local uiIcon = nil
function UIDragIcon:display(item)
if modules.client_options.getOption('showDragIcon') then
if uiIcon == nil then
uiIcon = g_ui.createWidget('UIDragIcon', rootWidget)
uiIcon:setVirtual(true)
uiIcon:setShowCount(false)
end
uiIcon:setItem(item)
uiIcon:show()
connect(rootWidget, { onMouseMove = onMouseMove })
end
end
function UIDragIcon:hide()
if uiIcon ~= nil then
uiIcon:hide()
disconnect(rootWidget, { onMouseMove = onMouseMove })
end
end
function UIDragIcon:destroy()
if uiIcon ~= nil then
disconnect(rootWidget, { onMouseMove = onMouseMove })
uiIcon:destroy()
uiIcon = nil
end
end
function onMouseMove(self, mousePos, mouseMoved)
if uiIcon ~= nil then
uiIcon:setPosition(mousePos)
end
end