Функции и события для работы с drag&drop. Drag&drop поддерживается в скрипте только для миссии.
Схема работы:
Регистрируются контролы, которые будут обрабатываться механизмом drag&drop. Каждому контролу должен быть назначен уникальный идентификатор, который используется во всех дальнейших операциях. Если при работе с drag&drop нужно вернуть идентификатор, не относящийся ни к одному из зарегистированных окон, то используется неопределенный идентификатор, DND_INVALID_ID. Для упрощения регистрации в базовом скрипте описаны несколько вспомогательных глобальных переменных и функций, позволяющих группировать контролы (экипировка, инвентарь и т.д., список расширяется по необходимости). При необходимости контролы можно разрегистрировать.
Система drag&drop отслеживает операции с зарегистрированными контролами и отправляет в скрипт различные уведомления: события вида EVENT_DND_... В ответ на них скрипт может подтвержать те или иные операции (например, начало или окончание drag&drop), игнорировать их, а также выполнять работу по корректной визуализации текущего состояния (например, перемещать курсор правильного вида в указанную позицию, подсвечивать слоты и т.п.). Возможно досрочное прерывание drag&drop из скрипта.
Замечание: процесс drag&drop автоматически прерывается при переходе в невидимое состояние контрола, который инициировал процесс drag&drop.
Замечание: при назначении идентификаторов для работы с Drag&drop необходимо использовать только неотрицательные значения.
CategoryDragAndDrop