WoW CallbackHandler-1.0 аддон Shadowlands/Burning Crusade Classic 2021 скачать
logo
wow addon CallbackHandler-1.0

CallbackHandler-1.0

Версия игры: 8.0.1
Всего загрузок: 510,590
Обновлено: Jul 21, 2018
Создано: Sep 29, 2008
Скачать CallbackHandler-1.0Скачать Предыдущие версии

Предыдущие версии

Название Размер Обновлено Версия игры Загрузок
1.0.8 release 4.49 KB Jul 21, 2018 8.0.1 98,696 скачать CallbackHandler-1.0 1.0.8 releaseСкачать
1.0.6.70000 release 4.84 KB Jul 19, 2016 7.0.3 133,212 скачать CallbackHandler-1.0 1.0.6.70000 releaseСкачать
1.0.6.60000 release 4.97 KB Oct 16, 2014 6.0.2 93,101 скачать CallbackHandler-1.0 1.0.6.60000 releaseСкачать
r18 release 4.83 KB Oct 16, 2014 6.0.2 336 скачать CallbackHandler-1.0 r18 releaseСкачать
1.0.6 release 5.04 KB Aug 9, 2010 3.3.5 161,430 скачать CallbackHandler-1.0 1.0.6 releaseСкачать
1.0.5 release 5.06 KB Sep 17, 2009 3.2.0 5,455 скачать CallbackHandler-1.0 1.0.5 releaseСкачать
1.0.3.30100 release 5.14 KB May 9, 2009 3.1.0 10,405 скачать CallbackHandler-1.0 1.0.3.30100 releaseСкачать
1.0.3 release 4.87 KB Sep 29, 2008 3.0.2 4,719 скачать CallbackHandler-1.0 1.0.3 releaseСкачать
r23-alpha alpha 4.49 KB Jul 21, 2018 8.0.1 174 скачать CallbackHandler-1.0 r23-alpha alphaСкачать
r22-alpha alpha 4.15 KB Jul 21, 2018 7.0.3 90 скачать CallbackHandler-1.0 r22-alpha alphaСкачать
r20 alpha 4.78 KB Jul 19, 2016 7.0.3 295 скачать CallbackHandler-1.0 r20 alphaСкачать
r16 alpha 4.87 KB Jan 14, 2011 4.0.3a 375 скачать CallbackHandler-1.0 r16 alphaСкачать
r14 alpha 5.00 KB Aug 9, 2010 3.3.5 202 скачать CallbackHandler-1.0 r14 alphaСкачать
r13 alpha 4.95 KB Dec 6, 2009 3.2.0 648 скачать CallbackHandler-1.0 r13 alphaСкачать
r12 alpha 4.79 KB Nov 2, 2009 3.2.0 235 скачать CallbackHandler-1.0 r12 alphaСкачать
r10 alpha 5.03 KB Sep 17, 2009 3.2.0 112 скачать CallbackHandler-1.0 r10 alphaСкачать
r9 alpha 5.25 KB Sep 17, 2009 3.2.0 134 скачать CallbackHandler-1.0 r9 alphaСкачать
r8 alpha 5.23 KB Sep 16, 2009 3.2.0 160 скачать CallbackHandler-1.0 r8 alphaСкачать
r7 alpha 5.19 KB Sep 16, 2009 3.1.0 170 скачать CallbackHandler-1.0 r7 alphaСкачать
r5 alpha 5.08 KB May 9, 2009 3.1.0 127 скачать CallbackHandler-1.0 r5 alphaСкачать
r3 alpha 4.83 KB Sep 29, 2008 2.4.3 514 скачать CallbackHandler-1.0 r3 alphaСкачать

Описание

CallbackHandler — это внутренняя служебная библиотека, которая позволяет библиотеке легко отправлять свои события заинтересованным сторонам. Это устраняет необходимость в том, чтобы аддоны были осведомлены, например, об AceEvent.

Единственное оставшееся использование для сообщений AceEvent — это сообщения, которые не имеют фиксированного источника-те, которые могут запускать несколько библиотек или аддонов.

Включение CallbackHandler-1.0 в ваш проект

Вы-библиотека?

при использовании репозиториев WoWAce

  • настройка внешнего указывая в свойстве svn://svn-репозитория.wowace.ком/ого/, чтобы callbackhandler/магистральных/магистральных/чтобы callbackhandler-1.0 в .файл pkgmeta
  • отключите создание nolib, добавив enable-nolib-creation: no в файл .pkgmeta
  • настройте файл <library>.toc для загрузки CallbackHandler-1.0.xml (в случае, если вы поддерживаете автономную загрузку lib)
  • не загружать, чтобы callbackhandler-1.0 по .мент XML-файл для встраиваемых загрузку Либ
  • не устанавливайте CallbackHandler-1.0 как X-embeded или OptDep

иначе

  • получить копию текущей версии
  • копию, чтобы callbackhandler-1.0.Lua в папке библиотеки
  • настройте файл <library>. toc для загрузки CallbackHandler-1.0. lua (в случае, если вы поддерживаете автономную загрузку lib)
  • не загружайте CallbackHandler-1.0 через xml-файл, предназначенный для встроенной загрузки вашей библиотеки
  • не устанавливайте CallbackHandler-1.0 как X-embeded или OptDep

Ты что, аддон?

при использовании репозиториев WoWAce

  • настройка внешнего указывая в свойстве svn://svn-репозитория.wowace.ком/ого/, чтобы callbackhandler/магистральных/магистральных/чтобы callbackhandler-1.0 в .pkgmeta файл
  • настройте свой <addon>. toc или embeds.xml файл для загрузки CallbackHandler-1.0.xml
  • не устанавливайте CallbackHandler-1.0 как X-embeded или OptDep

иначе

  • получить копию текущей версии
  • скопируйте CallbackHandler-1.0. lua в папку вашего аддона или его подпапку
  • настройте свой <addon>. toc или embeds.xml файл для загрузки CallbackHandler-1.0. lua
  • не устанавливайте CallbackHandler-1.0 как X-embeded или OptDep

Смешивание функций CallbackHandler в вашей библиотеке или аддоне

Библиотеки MyLib.обратные вызовы = библиотеки MyLib.обратные вызовы или 
 LibStub("Чтобы Callbackhandler-1.0"):Новые(Библиотеки MyLib)

Это добавляет 3 метода в вашу библиотеку:

  • Библиотеки MyLib.RegisterCallback(самообслуживание, «имя_события»[, способ, [арг]])
  • Библиотеки MyLib.UnregisterCallback(самообслуживание, «имя_события»)
  • Библиотеки MyLib.UnregisterAllCallbacks(самовыдвижение)

Убедитесь, что переданное в self является вашим аддоном, а не самой библиотекой, поэтому синтаксис двойного двоеточия не будет работать.

Объект MyLib.callbacks-это сам реестр обратных вызовов, который вам нужно отслеживать во всех внутриигровых обновлениях вашей собственной библиотеки. (Вы же следите за тем, чтобы ваша библиотека обновлялась изящно, не так ли? 😉 )


События стрельбы

Предполагая, что ваш реестр обратных вызовов является «MyLib. callbacks», запуск именованных событий так же прост, как:

Библиотеки MyLib.обратные вызовы:огонь("Имя_события", аргумент1, аргумент2, ...)

Все аргументы, переданные в функцию: Fire (), передаются функциям, прослушивающим событие.


Расширенное использование

Переименование методов

Вы можете указать свои собственные имена для методов, установленных CallbackHandler:

Библиотеки MyLib.обратные вызовы= библиотеки MyLib.обратные вызовы или 
 LibStub("Чтобы Callbackhandler-1.0"):Новые(Библиотеки MyLib, 
 "MyRegisterFunc", 
 "MyUnregisterFunc", 
 "MyUnregisterAllFunc" или false
    )

Предоставление false в качестве имени для «UnregisterAll» означает, что вы вообще не хотите предоставлять пользователям доступ к этому API — он не будет установлен.

Отслеживание используемых событий

В некоторых случаях имеет смысл знать, какие события запрашиваются вашими пользователями. Возможно, чтобы включить / отключить код, необходимый для их отслеживания.

CallbackHandler всегда будет вызывать обратные вызовы: OnUsed () и: OnUnused (), когда событие начинает / прекращает использоваться:

функции библиотеки MyLib.обратные вызовы:OnUsed(цель, имя_события)
    -- "цель" - это == MyLib здесь
    print ("кто-то только что зарегистрировался на "..eventname.."!")
конец

функции библиотеки MyLib.обратные вызовы:OnUnused(цель, имя_события)
    печати("никто не хочет "..имя_события.." больше")
конец

«OnUsed» вызывается только в том случае, если событие ранее не использовалось. «OnUnused» вызывается только тогда, когда последний пользователь отменяет регистрацию из события. Другими словами, вы не увидите «OnUnused», если только» OnUsed » не был вызван для события. И вы никогда не увидите два «OnUsed» подряд без «OnUnused» между ними для события.

Несколько реестров событий

Как вы можете знать, а можете и не знать, CallbackHandler-это рабочая лошадка AceEvent-3.0. Он используется дважды в AceEvent: один раз для внутриигровых событий, которые не могут быть запущены пользователями, и один раз для «сообщений», которые могут быть запущены пользователями.

Предоставление нескольких реестров в AceEvent было так же просто, как:

AceEvent.события = AceEvent.событий или 
 LibStub("Чтобы Callbackhandler-1.0"):Новые(AceEvent, 
 "RegisterEvent", "UnregisterEvent", "UnregisterAllEvents"
    )

AceEvent. messages = AceEvent. messages или
LibStub ("CallbackHandler-1.0"): New (AceEvent,
"RegisterMessage", "UnregisterMessage", " UnregisterAllMessages"
    )

AceEvent.Метод SendMessage = AceEvent.сообщения.Огонь

Конечно, в AceEvent также есть некоторый код для фактического управления внутриигровыми событиями (используя OnUsed и OnUnused), но это действительно его ядро.

Извиняюсь

Если приведенные выше примеры кода выглядят испорченными, то это потому, что AddonsWoW все еще использует стиль CSS «white-space:normal;», когда они должны использовать «white-space: pre-wrap;» для своих HTML-тегов <pre>. / Микк, ноябрь 2019 года

Поделиться:

Комментарии

Add a comment