-
-
Notifications
You must be signed in to change notification settings - Fork 49
Skins API
You can create your own skins for Bagnon or Bagnonium frames.
Skins are managed through a shared API in BagBrother, registering a rule in one addon is exactly the same as on the other. However, due to their different frame designs, a skin that functions properly in one addon might not be adequate for the other. In the remainder of this page, please consider BagBrother to correspond to either Bagnon and Bagnonium.
To create a skin, all you need is to make an XML frame template:
BagBrother.Skins:Register {
id: 'MySkin',
template: 'MyXMLTemplate'
}This template will be applied to a frame that will act as a background for the Bagnon/Bagnonium panel.
As described, Skins:Register has two mandatory proprieties:
| Required | Type | Description |
|---|---|---|
| id | string (unique) | A unique identifier for your skin. It should not change and will appear in the options menu. |
| template | string | Name of the xml template to use. |
Any type of skin can be achieved through the use of the template and callbacks alone. However, a few optional parameters are available as well that simplify common operations:
| Optional Parameters | Type | Description |
|---|---|---|
| x, y, x1, y1 | numbers | Repositions the entire background frame in relation to the panel. |
| cloxeX, closeY | numbers | Repositions the close button. |
| font | font/string | Changes the font of the panel header. |
| fontH | font/string | Changes the highlight font of the panel header. |
| margin | number | Shifts exterior elements (tabs) in relation to the edges of the panel. |
| inset | number | Shifts interior elements (items, bags) away from the panel edges, keeping the header unchanged. |
Additional functionality can be achieved through the use of callbacks. For example, if centerColor or borderColor are defined, the addon will allow the user to configure the corresponding colors, while load, layout and reset allow you to customize the addon panel itself. The first argument passed to all callbacks is the background frame created using your xml template.
| Optional Callbacks | Description |
|---|---|
| centerColor(frame, r,g,b,a) | Called when the user selects a background color. If you support color selection, it should be applied here. |
| borderColor(frame, r,g,b,a) | Called when the user selects a border color. |
| load(frame) | Called after your skin is parented to the addon panel, allowing you to make modifications to it. |
| reset(frame) | Called when your skin is unapplied to the panel. Any modifications done at load or layout should be undone here. |
| layout(frame) | Called whenever the panel updates the position of its elements, allowing you to react to it or modify it. |
This is the Bagnon and Bagnonium wiki. Wiki Home
For Users
Existing Plugins
Search Syntax
Macro Filters
For Developers
Skins API
Rules API
Custom Events
Sorting Items