Dongle
Dongle is a minimal addon framework that tries to provide those components that are necessary for the bulk of addons, without trying to be a full-featured abstraction of the World of Warcraft API. Rather than providing a java-like library such as Sea, Dongle provides a more pseudo-object oriented approach, allowing you to create a table with basic functionality included.
A basic Dongle addon to print "Hello World" to the default chat frame, waiting until the game is fully initialized looks like this:
HelloWorld = DongleStub("Dongle-Beta0"):New("HelloWorld") function HelloWorld:Enable() self:Print("Hello World!") end
Dongle uses a few simple things to make things easier for both developers and users. The versioning stub included in all Dongle libaries is called DongleStub, and is based off Iriel's embedded framework design [1]. Rather than include DongleStub is a seperate file in the distribution, the core Dongle libaries have the latest version of DongleStub included or built into the file distribution. That means to use Dongle, you simply include Dongle.lua and put it in your .toc file.
Dongle API
You can start exploring the Dongle API from the Core API page, or you can dive in to an individual system:
- Module API - Creating and maintaining modules
- Event API - Easy event registration and callback
- Message API - Custom event registration and callback system
- Messages Listing - Reference of Messages that sent by Dongle
- Debug/Print API - Debug and Print functionality
- Database API - Database system for saved variables
- Slash Command API - Slash command registration system