Plugin:MirLua/ru: Difference between revisions

From Miranda NG
Plugin:MirLua/ru
Jump to navigation Jump to search
(link to m_core)
Line 26: Line 26:
|-
|-
|}
|}


== Модули ==
== Модули ==
=== m_core ===
* [[Plugin:MirLua/ru/m_core|m_core]]
Этот модуль изначально импортирован в глобальную таблицу и доступен через переменную '''m''' в любом модуле.
Он предоставляет доступ к основным возможностям ядра Miranda NG.
{| class="wikitable collapsible collapsed"
!colspan="3"|Именованные события
|-
|CreateHookableEvent
|Создает именованное событие
|<code>local hEvent = m.CreateHookableEvent('MyEvent')</code>
|-
|HookEvent
|Создает подписку на именованное событие
|<code>local hHook = m.HookEvent('MyEvent', function(w, l)
  print('MyEvent is raised!')
end)</code>
|-
|NotifyEventHooks
|Оповещает всех подписчиков именованного события
|<code>m.NotifyEventHooks(hEvent)</code>
|-
|UnhookEvent
|Удаляет подписку на именованное событие
|<code>m.UnhookEvent(hHook)</code>
|-
|DestroyHookableEvent
|Удаляет именованное событие
|<code>m.DestroyHookableEvent(hEvent)</code>
|-
!colspan="3"|Именованные сервисные функции
|-
|CreateServiceFunction
|Создает именованную сервисную функцию
|<code>local hService = m.CreateServiceFunction('MyService', function(w, l)
  print('MyServiceis called!')
end)</code>
|-
|CallService
|Вызывает именованную сервисную функцию
|<code>m.CallService('MyService', 0, 0)</code>
|-
|ServiceExists
|Проверяет существование сервиса по имени
|<code>if m.ServiceExists('MyService') then
  m.CallService('MyService')
end
</code>
|-
|DestroyServiceFunction
|Удаляет сервисную функцию
|<code>m.DestroyServiceFunction(hService)</code>
|-
!colspan="3"|Остальное
|-
|IsPluginLoaded
|Проверяет загружен ли плагин по его muuid
|<code>if m.IsPluginLoaded('{F0FDF73A-753D-499d-8DBA-336DB79CDD41}') then
  print('Advanced auto away plugin is loaded!')
end
</code>
|-
|Utf8DecodeA
|Конвертирует содержимое lua строки в ANSI
|<code>m.CallService("Quotes/Import", 0, Utf8DecodeA('c:\\quotes.xml'))</code>
|-
|Utf8DecodeW
|Конвертирует содержимое lua строки в Unicode
|<code>m.CallService("Popup/ShowMessageW", m.Utf8DecodeW('Hello, World!'), 2)</code>
|-
|Translate
|Переводит строку на язык текущего языкового пакета
|<code>m.Translate('Exit')</code>
|-
|ReplaceVariables
|Заменяет переменные ядра Miranda NG в строке
|<code>local profileName = m.ReplaceVariables('%miranda_profilename%')</code>
|-
|}


=== m_database ===
Предоставляет доступ к данным и контактам в профиле пользователя.
<br/>Подключение модуля: <code>local db = require('m_database')</code>
{| class="wikitable collapsible collapsed"
!colspan="3"|Контакты
|-
|AllContacts
|Итератор для списка контактов протокола или всех контактов, если в качестве параметра передан nil
|<code>for hContact in db.AllContacts(proto.Name) do
  print(db.GetSetting(hContact, proto.Name, 'Nick'))
end
</code>
|-
!colspan="3"|События
|-
|GetEventCount
|Возвращает количество событий для контакта
|<code>db.GetEventCount(hContact)</code>
|-
|AllEvents
|Итератор для списка событий контакта
|<code>for hEvent in db.AllEvents(hContact) do
  local event = totable(hEvent, "DBEVENTINFO")
  print(event.Blob)
end
</code>
|-
!colspan="3"|Настройки
|-
|WriteSetting
|Сохраняет значение настройки
|db.WriteSetting(nil, 'test', 'some', true)
|-
|GetSetting
|Возвращает значение настройки
|db.GetSetting(nil, 'test', 'some')
|-
|AllSettings
|Итератор для списка настроек из секции контакта или из глобальной секции, если в качестве параметра передан nil
|<code>for setting in db.AllSettings(nil, 'CList') do
  local message = string.format("%s/%s = ", 'CList', setting, ...)
  .. db.GetSetting(nil, 'CList', setting)
  print(message)
end
</code>
|-
|DeleteSetting
|Удаляет настройку
|db.DeleteSetting(nil, 'test', 'some')
|-
|DeleteModule
|Удаляет секцию
|db.DeleteModule(nil, 'test')
|-
|}


== Примеры ==
== Примеры ==

Revision as of 23:20, 3 December 2015

MirLua
MirLua
Имя файла MirLua.dll
Автор Miranda NG team
Скачать
Стабильная версия: 32-bit, 64-bit
Версия в разработке: 32-bit, 64-bit

Расширяет функциональность Miranda NG с помощью скриптов на языке Lua.

Глобальные функции


Модули


Примеры

{{#subpages:Content:MirLua/Examples}}


Ссылки