Ну вот, как и обещал, сегодня выпускаю версию с событиями метаданных.
Небольшой пример, как просмотреть события:
Код:
function onMetaDataEvent(e)
{
/*
e.kind - вид события, описаны в библиотеке типов Снегопата.
e.request - если true, значит идет запрос о возможности выполнения операции,
при установке e.result в false - отмена. Если false - просто уведомление
о событии
*/
var text = "Metadata event " + e.kind +
"\n request: " + e.request +
"\n result: " + e.result +
"\n container: " + e.container.identifier +
"\n object: " + e.obj.name
if(e.prop)
text += "\n property: " + e.prop.name(1)
Message(text)
}
events.connect(metadata, "MetaDataEvent", SelfScript.self, "onMetaDataEvent")
События таковы:
Код:
"Добавление" - mdeAdd = 0
"Изменение свойства" - mdeChangeProp = 1
"Удаление" - mdeDelete = 2
"Изменение объекта" - mdeChange = 3
"Перед сохранением" - mdeSave = 4
"Закрытие UI" - mdeClose = 5
"После сохранения" - mdeAfterSave = 6
"Открытие UI" - mdeOpen = 7