User:Unsane/MirLua/m core: Difference between revisions
m (→HookEvent) |
|||
Line 14: | Line 14: | ||
===HookEvent=== | ===HookEvent=== | ||
Устанавливает функция обратного вызова ("ловушку") для реакции на вызов события. При вызове события поочередно сработают все функции-ловушки, которые были подписаны на это событие. | |||
<code>Параметры</code> | |||
* name - имя события | |||
* hook - функция-ловушки | |||
<code>Результат</code> | |||
: Возвращает дескриптор подписки или nil | |||
<code>Пример</code> | |||
{{Content:MirLua/Example|code=local hHook = m.HookEvent('MyEvent', function(w, l) | {{Content:MirLua/Example|code=local hHook = m.HookEvent('MyEvent', function(w, l) | ||
print('MyEvent is raised!') | print('MyEvent is raised!') |
Revision as of 22:29, 9 November 2015
Этот модуль изначально импортирован в глобальную таблицу и доступен через переменную m в любом модуле. Он предоставляет доступ к основным возможностям ядра Miranda NG.
Именованные события
CreateHookableEvent
Создает событие
Параметры
- name - имя события
Результат
- Дескриптор события или nil
Пример
local hEvent = m.CreateHookableEvent('MyEvent')
HookEvent
Устанавливает функция обратного вызова ("ловушку") для реакции на вызов события. При вызове события поочередно сработают все функции-ловушки, которые были подписаны на это событие.
Параметры
- name - имя события
- hook - функция-ловушки
Результат
- Возвращает дескриптор подписки или nil
Пример
local hHook = m.HookEvent('MyEvent', function(w, l)
print('MyEvent is raised!')
end)
NotifyEventHooks
Оповещает всех подписчиков именованного события
m.NotifyEventHooks(hEvent)
UnhookEvent
Удаляет подписку на именованное событие
m.UnhookEvent(hHook)
DestroyHookableEvent
Удаляет именованное событие
m.DestroyHookableEvent(hEvent)
Именованные сервисные функции
CreateServiceFunction
Создает именованную сервисную функцию
local hService = m.CreateServiceFunction('MyService', function(w, l)
print('MyServiceis called!')
end)
CallService
Вызывает именованную сервисную функцию
m.CallService('MyService', 0, 0)
ServiceExists
Проверяет существование сервиса по имени
if m.ServiceExists('MyService') then
m.CallService('MyService')
end
DestroyServiceFunction
Удаляет сервисную функцию
m.DestroyServiceFunction(hService)
Остальное
IsPluginLoaded
Проверяет загружен ли плагин по его muuid
if m.IsPluginLoaded('{F0FDF73A-753D-499d-8DBA-336DB79CDD41}') then
print('Advanced auto away plugin is loaded!')
end
Utf8DecodeA
Конвертирует содержимое lua строки в ANSI
m.CallService("Quotes/Import", 0, Utf8DecodeA('c:\\quotes.xml'))
Utf8DecodeW
Конвертирует содержимое lua строки в Unicode
m.CallService("Popup/ShowMessageW", m.Utf8DecodeW('Hello, World!'), 2)
Translate
Переводит строку на язык текущего языкового пакета
m.Translate('Exit')
ReplaceVariables
Заменяет переменные ядра Miranda NG в строке
local profileName = m.ReplaceVariables('%miranda_profilename%')