Module DruidEvent

Druid Event Module

The Event module provides a simple class for handling callbacks.

It is used in many Druid components.

You can subscribe to an event using the `:subscribe` method and unsubscribe using the `:unsubscribe` method.

Functions

clear(self) Clear the all event handlers
initialize(self, initial_callback) DruidEvent constructor
is_exist(self) Return true, if event have at lease one handler
subscribe(self, callback, context) Subscribe callback on event
trigger(self, ...) Trigger the event and call all subscribed callbacks
unsubscribe(self, callback, context) Unsubscribe callback on event


Functions

clear(self)
Clear the all event handlers

Parameters:

Usage:

    button.on_long_click:clear()
initialize(self, initial_callback)
DruidEvent constructor

Parameters:

  • self DruidEvent DruidEvent
  • initial_callback function or nil Subscribe the callback on new event, if callback exist

Usage:

    local Event = require("druid.event")
    ...
    local event = Event(initial_callback)
is_exist(self)
Return true, if event have at lease one handler

Parameters:

Returns:

    boolean True if event have handlers

Usage:

    local is_long_click_handler_exists = button.on_long_click:is_exist()
subscribe(self, callback, context)
Subscribe callback on event

Parameters:

  • self DruidEvent DruidEvent
  • callback function Callback itself
  • context any or nil Additional context as first param to callback call, usually it's self

Usage:

    local function on_long_callback(self)
        print("Long click!")
    end
    ...
    local button = self.druid:new_button("button", callback)
    button.on_long_click:subscribe(on_long_callback, self)
trigger(self, ...)
Trigger the event and call all subscribed callbacks

Parameters:

  • self DruidEvent DruidEvent
  • ... any All event params

Usage:

    local Event = require("druid.event")
    ...
    local event = Event()
    event:trigger("Param1", "Param2")
unsubscribe(self, callback, context)
Unsubscribe callback on event

Parameters:

  • self DruidEvent DruidEvent
  • callback function Callback itself
  • context any or nil Additional context as first param to callback call

Usage:

    local function on_long_callback(self)
        print("Long click!")
    end
    ...
    button.on_long_click:unsubscribe(on_long_callback, self)
generated by LDoc TESTING Last updated 2015-01-01 12:00:00