User:Unsane/MirLua/m core

From Miranda NG
Jump to navigation Jump to search

Этот модуль изначально импортирован в глобальную таблицу и доступен через переменную m в любом модуле. Он предоставляет доступ к основным возможностям ядра Miranda NG.

Именованные события

CreateHookableEvent

Создает именованное событие local hEvent = m.CreateHookableEvent('MyEvent')

HookEvent

Создает подписку на именованное событие 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%')