Plugin:MirLua/Module/m core/ru: Difference between revisions
Dart Raiden (talk | contribs) (Created page with "Проверяет загружен ли плагин (по UUID плагина).") |
(Updating to match new version of source page) |
||
Line 23: | Line 23: | ||
| style="text-align:center" | <code>number</code> | | style="text-align:center" | <code>number</code> | ||
| Результат вызова несуществующего сервиса. | | Результат вызова несуществующего сервиса. | ||
|- | |||
! scope="row" style="text-align:left" | Version | |||
| style="text-align:center" | <code>string</code> | |||
| | |||
|} | |} | ||
== Именованные события == | == Именованные события == | ||
=== CreateHookableEvent === | === CreateHookableEvent === | ||
Создает событие. | Создает событие. | ||
Line 93: | Line 98: | ||
end) | end) | ||
}} | }} | ||
---- | |||
=== HookTemporaryEvent === | |||
… | |||
==== {{Ls|MirLua/Modules/parameters}} ==== | |||
{| class="wikitable" | |||
|- | |||
! scope="col" | {{Ls|MirLua/Modules/param_name}} | |||
! scope="col" | {{Ls|MirLua/Modules/required_param}} | |||
! scope="col" | {{Ls|Content/TableHeaders/type}} | |||
! scope="col" | {{Ls|Content/TableHeaders/description}} | |||
|- | |||
! scope="row" class="MirLuaParametersTable-parameter" | name | |||
| style="text-align:center" | {{Ls|YesNo/yes}} | |||
| style="text-align:center" | <code>string</code> | |||
| Event name. | |||
|- | |||
! scope="row" class="MirLuaParametersTable-parameter" | hook | |||
| style="text-align:center" | {{Ls|YesNo/yes}} | |||
| style="text-align:center" | <code>function</code> | |||
| Hook function to be called when event occurs. | |||
|} | |||
==== {{Ls|MirLua/Modules/result}} ==== | |||
… | |||
==== {{Ls|MirLua/Modules/example}} ==== | |||
… | |||
---- | ---- | ||
Line 157: | Line 191: | ||
== Именованные сервисные функции == | == Именованные сервисные функции == | ||
=== CreateServiceFunction === | === CreateServiceFunction === | ||
Создает сервисную функцию («сервис»). | Создает сервисную функцию («сервис»). | ||
Line 274: | Line 309: | ||
==== {{Ls|MirLua/Modules/example}} ==== | ==== {{Ls|MirLua/Modules/example}} ==== | ||
{{Content:MirLua/Example|code=m.DestroyServiceFunction(hService)}} | {{Content:MirLua/Example|code=m.DestroyServiceFunction(hService)}} | ||
== Threads == | |||
=== ForkThread === | |||
… | |||
---- | |||
=== TerminateThread === | |||
… | |||
== Остальное == | == Остальное == | ||
=== IsPluginLoaded === | === IsPluginLoaded === | ||
Проверяет загружен ли плагин (по UUID плагина). | Проверяет загружен ли плагин (по UUID плагина). | ||
Line 303: | Line 348: | ||
end | end | ||
}} | }} | ||
---- | |||
=== Free === | |||
… | |||
---- | ---- | ||
Line 350: | Line 399: | ||
==== {{Ls|MirLua/Modules/example}} ==== | ==== {{Ls|MirLua/Modules/example}} ==== | ||
{{Content:MirLua/Example|code=local profileName = m.ReplaceVariables('%miranda_profilename%')}} | {{Content:MirLua/Example|code=local profileName = m.ReplaceVariables('%miranda_profilename%')}} | ||
---- | |||
=== GetFullPath === | |||
… |
Latest revision as of 02:03, 10 February 2022
Этот модуль изначально импортирован в глобальную таблицу и доступен через переменную m в любом модуле. Он предоставляет доступ к основным возможностям ядра Miranda NG.
Константы
Тип | Описание | |
---|---|---|
NULL | light userdata
|
Нулевой указатель. |
INVALID_HANDLE_VALUE | light userdata
|
Невалидный дескриптор. |
CALLSERVICE_NOTFOUND | number
|
Результат вызова несуществующего сервиса. |
Version | string
|
Именованные события
CreateHookableEvent
Создает событие.
Параметры
Имя параметра | Required | Тип | Описание |
---|---|---|---|
name | Да | string
|
Имя события. |
Результат
Тип: light userdata
Возвращает дескриптор события, если событие было успешно создано, иначе nil
.
Пример
local hEvent = m.CreateHookableEvent('MyEvent')
if hEvent == m.NULL then
print('Event handle is empty!')
end
HookEvent
Устанавливает функцию обратного вызова («ловушку») для реакции на вызов события. Ловушки вызываются в порядке добавления по цепочке друг за другом.
Сигнатура ловушки: function (wParam, lParam) return 0 end
.
Корректным результатом работы ловушки является 0
. При возврате 1
следующие в цепочке ловушки не будут вызваны.
Параметры
Имя параметра | Required | Тип | Описание |
---|---|---|---|
name | Да | string
|
Имя события. |
hook | Да | function
|
Функция-ловушка, которая будет вызвана при наступлении события. |
Результат
Тип: light userdata
Возвращает дескриптор ловушки, если ловушка была успешно создана, иначе nil
.
Пример
local hHook = m.HookEvent('MyEvent', function(w, l)
print('MyEvent is raised!')
end)
HookTemporaryEvent
…
Параметры
Имя параметра | Required | Тип | Описание |
---|---|---|---|
name | Да | string
|
Event name. |
hook | Да | function
|
Hook function to be called when event occurs. |
Результат
…
Пример
…
UnhookEvent
Удаляет ловушку из цепочки вызовов события.
Параметры
Имя параметра | Required | Тип | Описание |
---|---|---|---|
hEvent | Да | light userdata
|
Дескриптор события, который был получен при вызове CreateHookableEvent. |
Результат
Тип: boolean
Возвращает true
, если ловушка успешно удалена, иначе false
.
Пример
m.UnhookEvent(hHook)
NotifyEventHooks
Поочередно вызывает все ловушки в цепочке вызова события.
Параметры
Имя параметра | Required | Тип | Описание |
---|---|---|---|
hEvent | Да | light userdata
|
Дескриптор события, который был получен при вызове CreateHookableEvent. |
wParam | Нет | ||
lParam | Нет |
Результат
Тип: boolean
Возвращает true
, если вызваны все функции-ловушки, иначе false
.
Пример
m.NotifyEventHooks(hEvent)
Именованные сервисные функции
CreateServiceFunction
Создает сервисную функцию («сервис»).
Параметры
Имя параметра | Required | Тип | Описание |
---|---|---|---|
name | Да | string
|
Имя сервиса. |
Результат
Тип: light userdata
Возвращает дескриптор сервиса, если сервис бы успешно создан, иначе nil
.
Пример
local hService = m.CreateServiceFunction('MyService', function(w, l)
print('MyServiceis called!')
end)
CallService
Вызывает сервис с параметрами
Параметры
Имя параметра | Required | Тип | Описание |
---|---|---|---|
name | Да | string
|
Имя сервиса. |
wParam | Нет | ||
lParam | Нет |
Результат
Тип: number
Возвращает результат выполнения сервиса или CALLSERVICE_NOTFOUND.
Пример
local result = m.CallService('MyService')
if result == m.CALLSERVICE_NOTFOUND then
print('Service is not found!')
end
ServiceExists
Проверяет существование сервиса по имени.
Параметры
Имя параметра | Required | Тип | Описание |
---|---|---|---|
name | Да | string
|
Имя сервиса. |
Результат
Тип: boolean
Возвращает true
, если сервис существует, иначе false
.
Пример
if m.ServiceExists('MyService') then
m.CallService('MyService')
end
DestroyServiceFunction
Удаляет сервисную функцию.
Параметры
Имя параметра | Required | Тип | Описание |
---|---|---|---|
hService | Да | light userdata
|
Дескриптор сервиса, полученный при вызове CreateServiceFunction. |
Пример
m.DestroyServiceFunction(hService)
Threads
ForkThread
…
TerminateThread
…
Остальное
IsPluginLoaded
Проверяет загружен ли плагин (по UUID плагина).
Параметры
Имя параметра | Required | Тип | Описание |
---|---|---|---|
uuid | Да | string
|
UUID плагина в формате xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx .
|
Результат
Тип: boolean
Возвращает true
, если плагин загружен, иначе false
.
Пример
if m.IsPluginLoaded('{F0FDF73A-753D-499d-8DBA-336DB79CDD41}') then
print('Advanced auto away plugin is loaded!')
end
Free
…
Translate
Переводит строку на язык текущего языкового пакета.
Параметры
Имя параметра | Required | Тип | Описание |
---|---|---|---|
text | Да | string
|
Результат
Тип: string
Пример
m.Translate('Exit')
Parse
Заменяет переменные ядра Miranda NG в строке.
Имя параметра | Required | Тип | Описание |
---|---|---|---|
text | Да | string
|
Результат
Тип: string
Пример
local profileName = m.ReplaceVariables('%miranda_profilename%')
GetFullPath
…