User:Unsane/MirLua/m core: Difference between revisions
mNo edit summary |
|||
Line 12: | Line 12: | ||
<code>Пример</code> | <code>Пример</code> | ||
{{Content:MirLua/Example|code=local hEvent = m.CreateHookableEvent('MyEvent')}} | {{Content:MirLua/Example|code=local hEvent = m.CreateHookableEvent('MyEvent')}} | ||
===HookEvent=== | ===HookEvent=== | ||
Line 26: | Line 27: | ||
end) | end) | ||
}} | }} | ||
===NotifyEventHooks=== | ===NotifyEventHooks=== | ||
Line 38: | Line 40: | ||
<code>Пример</code> | <code>Пример</code> | ||
{{Content:MirLua/Example|code=m.NotifyEventHooks(hEvent)}} | {{Content:MirLua/Example|code=m.NotifyEventHooks(hEvent)}} | ||
===UnhookEvent=== | ===UnhookEvent=== | ||
Удаляет подписку на именованное событие | Удаляет подписку на именованное событие | ||
{{Content:MirLua/Example|code=m.UnhookEvent(hHook)}} | {{Content:MirLua/Example|code=m.UnhookEvent(hHook)}} | ||
===DestroyHookableEvent=== | ===DestroyHookableEvent=== | ||
Line 54: | Line 58: | ||
end) | end) | ||
}} | }} | ||
===CallService=== | ===CallService=== | ||
Вызывает именованную сервисную функцию | Вызывает именованную сервисную функцию | ||
{{Content:MirLua/Example|code=m.CallService('MyService', 0, 0)}} | {{Content:MirLua/Example|code=m.CallService('MyService', 0, 0)}} | ||
===ServiceExists=== | ===ServiceExists=== | ||
Line 64: | Line 70: | ||
m.CallService('MyService') | m.CallService('MyService') | ||
end}} | end}} | ||
===DestroyServiceFunction=== | ===DestroyServiceFunction=== | ||
Line 76: | Line 83: | ||
end | end | ||
}} | }} | ||
===Utf8DecodeA=== | ===Utf8DecodeA=== | ||
Конвертирует содержимое lua строки в ANSI | Конвертирует содержимое lua строки в ANSI | ||
{{Content:MirLua/Example|code=m.CallService("Quotes/Import", 0, Utf8DecodeA('c:\\quotes.xml'))}} | {{Content:MirLua/Example|code=m.CallService("Quotes/Import", 0, Utf8DecodeA('c:\\quotes.xml'))}} | ||
===Utf8DecodeW=== | ===Utf8DecodeW=== | ||
Конвертирует содержимое lua строки в Unicode | Конвертирует содержимое lua строки в Unicode | ||
{{Content:MirLua/Example|code=m.CallService("Popup/ShowMessageW", m.Utf8DecodeW('Hello, World!'), 2)}} | {{Content:MirLua/Example|code=m.CallService("Popup/ShowMessageW", m.Utf8DecodeW('Hello, World!'), 2)}} | ||
===Translate=== | ===Translate=== | ||
Переводит строку на язык текущего языкового пакета | Переводит строку на язык текущего языкового пакета | ||
{{Content:MirLua/Example|code=m.Translate('Exit')}} | {{Content:MirLua/Example|code=m.Translate('Exit')}} | ||
===ReplaceVariables=== | ===ReplaceVariables=== | ||
Заменяет переменные ядра Miranda NG в строке | Заменяет переменные ядра Miranda NG в строке | ||
{{Content:MirLua/Example|code=local profileName = m.ReplaceVariables('%miranda_profilename%')}} | {{Content:MirLua/Example|code=local profileName = m.ReplaceVariables('%miranda_profilename%')}} |
Revision as of 22:38, 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
Вызывает событие. При вызове события поочередно сработают все функции-ловушки, которые были подписаны на это событие.
Параметры
- hEvent - дескриптор события, который был получен при вызове CreateHookableEvent
- wParam
- lParam
Результат
Пример
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%')