UploadedSep 30, 2011
Supported Game Versions
2011-09-30 James D. Callahan III <firstname.lastname@example.org>
Initial LuaDoc API documentation.
Use unvalued references instead of table lookups.
Added .docmeta file
2011-09-29 James D. Callahan III <email@example.com>
Replaced remaining occurrences of IsActive with ActiveDialog.
Renamed lib:IsActive() to lib:ActiveDialog() and made its return value be the dialog which is found rather than true. Within lib:Spawn(), check to see if there is already an active dialog with the same delegate and data; if so, cancel it.
Look for dialog member "no_cancel_on_escape" instead of "cancel_ignores_escape"
When a dialog is spawned whose delegate has delegate names listed in a cancels_on_spawn table, cancel all active dialogs which match the named delegates.
When spawning a dialog with a delegate which is marked as exclusive, cancel any active dialogs which are also exclusive.
Call _RecycleWidget() on the dialog within it's OnHide script so lib:IsActive() will return false if called from code called from the delegate's on_hide
If the proposed widget-to-be-recycled isn't in the active list, do not add it to the heap.
Unified common delegate-finding code into _FindDelegate()
Added library Dismiss method to dismiss the specified dialog, optionally also by data.
Added IsActive() library method: Determines whether or not the specified dialog is active, optionally taking its data into account.
Reset edit box letters and bytes limits to unlimited upon release. Changed button on_click behavior: Only hide the dialog if the handler returns nil or false, and pass the dialog as "self" instead of the button - also pass an optional reason for firing the handler (default is "clicked").
Dialogs register for the DISPLAY_SIZE_CHANGED event and resize when it's fired. Removed some debug prints.
Added dialog support for OnEvent handler: If the dialog_prototype has a method which matches the name of the event which fired, that method will be called.
Added delegate OnUpdate support.
2011-09-27 James D. Callahan III <firstname.lastname@example.org>
Do not require a button click handler to create a button from the delegate - text will suffice; the button will merely hide the dialog when clicked.
Proper value awareness for CheckButtons. Hide dialog on button press.
Ensure that dialogs always have an appropriate minimum width. Do not force the library user to input a text field on the delegate: instead, set it to an empty string and assume the user will fill it in later, perhaps in the delegate's on_show handler.
Mark newly-created dialogs as new - if the is_new field is present on a dialog, manually run its on_show and remove the is_new field; newly-created frames never fire their OnShow script handler.
Account for EditBox widths when resizing the dialog.
When recycling a CheckButton, set the parent for its container to nil - not that of the CheckButton.
Ensure proper cleanup of widgets on release. Added support for a dialog icon.
Multitude of layout tweaks - dialogs look much cleaner now.
2011-09-23 James D. Callahan III <email@example.com>
Added support for multiple CheckButtons.
Added support for multiple EditBoxes.
2011-09-22 James D. Callahan III <firstname.lastname@example.org>
Layout tweaks and proper button anchoring.
Don't directly set the width when the dialog has three buttons - use the bigger value between the current width and the required width.