LibScriptable-1.0
I've changed this repository to git://github.com/Starlon/LibScriptable-1.0.git
LibScriptable is an library providing lower-level UI configurations.
Widgets:
The basics of creating widgets requires you to supply a "core" or some table that's common across a collection of other widgets. This core object populates the environment with all plugins and their functions and fields.
Widgets exist to process a script's return values and store the results internally. Some widgets may execute a callback you provided in order to "draw" on the surface once the script's been run and data stored.
Here's a list of widgets:
LibScriptableWidget-1.0 :
This is the foundation for each widget and is used internally by them. It is built of fields common amongst all widgets.
LibScriptableWidgetBar-1.0 :
You can base your status bars on this widget.
LibScriptableWidgetColor-1.0 :
Great for configuring backgrounds or borders.
LibScriptableWidgetGestures-1.0 :
Based on LibMouseGesture-1.0 by Humbedooh, this widget can be configured to execute code when your user performs a gesture.
LibScriptableWidgetHistogram-1.0 :
Picture 10 vertical status bars side by side, showing you your most recent health status.
LibScriptableWidgetImage-1.0 :
This is more less a scriptable framebuffer that an addon author can build an image from.
LibScriptableWidgetText-1.0:
These are otherwise known as marquees. They can be animated or they can be stationary.
Utilities
Various utilities and tools used by LibScriptable. Here's a list:
LibScriptableUtilsBuffer-1.0 :
This is suitable for recycling tables with as little ghost-growth as possible. I use it for text processing and as a video framebuffer. I also store numerical data with this in LibScriptablePluginNoise-1.0 and use LibBuffer's method MovingAverageExp() to smooth things out a bit.
LibScriptableUtilsError-1.0 :
Provides a way to categorize message alerts within an addon, so you can have more critical messages pass through untouched, but it may drop a request to print some common message.
LibScriptableUtilsEvaluator-1.0 :
Here's your optionally sandboxed run environment. It consists of one function: LibEvaluator.ExecuteCode, which you can use to grab the return values, or just pass back the runnable function object housing the provided script.
LibScriptableUtilsProperty-1.0 :
LibEvaluator isn't object oriented like the larger part of LibScriptable. LibProperty is an OO wrapper around LibEvaluator.
LibScriptableUtilsLocale-1.0 :
Some elements of LibScriptable provide Acd3 option tables an addon author can plug directly into an Ace3 config table. Some option strings may need to be translated. Some plugins may also need localizations. There're some plans to compile a list of commonly used strings and provide translations for those.
LibScriptableUtilsTimer-1.0 :
A no-hassle and simple to operate timer object. This element has gone through several versions and optimizations and I'm extremely happy with the outcome.
Plugins
Plugins exist to populate a run environment with functions and other fields.
LibScriptableDisplayPluginUtils-1.0.lua
LibScriptableDisplayPluginRangeCheck-1.0.lua
LibScriptableDisplayPluginBit-1.0.lua
LibScriptableDisplayPluginLua-1.0.lua
LibScriptableDisplayPluginMath-1.0.lua
LibScriptableDisplayPluginString-1.0.lua
LibScriptableDisplayPluginTable-1.0.lua
LibScriptableDisplayPluginUnit-1.0.lua
LibScriptableDisplayPluginResourceTools-1.0.lua
LibScriptableDisplayPluginCharacterStats-1.0.lua
LibScriptableDisplayPluginUnitTooltipStats-1.0.lua
LibScriptableDisplayPluginLocation-1.0.lua
LibScriptableDisplayPluginDBM-1.0.lua
LibScriptableDisplayPluginLinq-1.0.lua
LibScriptableDisplayPluginGuild-1.0.lua
LibScriptableDisplayPluginSpell-1.0.lua
LibScriptableDisplayPluginComm-1.0.lua
LibScriptableDisplayPluginColor-1.0.lua
LibScriptableDisplayPluginSerializer-1.0.lua
LibScriptableDisplayPluginLuaTexts-1.0.lua
LibScriptableDisplayPluginTalents-1.0.lua
LibScriptableDisplayPluginUnitControl-1.0.lua
LibScriptableDisplayPluginFail-1.0.lua
LibScriptableDisplayPluginBlend-1.0.lua
LibScriptableDisplayPluginNameplate-1.0.lua
LibScriptableDisplayPluginTransition-1.0.lua
LibScriptableDisplayPluginDPS-1.0.lua
LibScriptableDisplayPluginNoise-1.0.lua
LibScriptableDisplayPluginSkada-1.0.lua
LibScriptableDisplayPluginRecount-1.0.lua
I've changed this repository to git://github.com/Starlon/LibScriptable-1.0.git. This repository will stay here, but it WILL BE GOING AWAY.