Плагин Brightscript: как получить доступ к пользовательским переменным в processEvent

Я следую примеру «плагинов и парсеров» в формате pdf
(находится здесь: техническая заметка по использованию плагинов и парсеров (PDF) )

Как получить доступ к пользовательским переменным (чтение, запись) в функции processEvent?

Function pizza_ProcessEvent(event As Object)
  if type(event) = "roAssociativeArray" then
    if type(event["EventType"]) = "roString" then
      if event["EventType"] = "SEND_PLUGIN_MESSAGE" then
        if event["PluginName"] = "Pizza" then
          pluginMessage$ = event["PluginMessage"]
          print "received pluginMessage ";pluginMessage$
          return true
        endif
      endif
    endif 
  endif
  return false
End Function

person GDmac    schedule 25.04.2014    source источник


Ответы (1)


Они должны быть в m, что является эквивалентом BrS self/this.

т.е. когда для экземпляра PizzaBuilder pb вызывается метод (или событие; на самом деле «функция-член») pb.processEvent(), внутри него магическая переменная m указывает на pb. Итак, то, что вы просили - на основе образца PDF - вероятно, m.userVariables.

Отказ от ответственности: я знаю B / S Roku, а не BrightSign; они тесно связаны.

person Nas Banov    schedule 25.04.2014
comment
ах, да, волшебство m :-) я нашел лучший пример в плагине Heartbeats. Действительно, в функции инициализации вы создаете объект и добавляете к нему пользовательские переменные. github.com/brightsign/heartbeats - person GDmac; 26.04.2014