Home
Name Modified Size InfoDownloads / Week
WeaselGui_v3.rar 2010-01-16 897.7 kB
Example03b.png 2010-01-16 39.8 kB
COPYING.LESSER 2010-01-16 7.8 kB
COPYING 2010-01-16 35.8 kB
README.TXT 2010-01-16 4.7 kB
Totals: 5 Items   985.8 kB 0
*****************************************************************************************************
WeaselGui Version 1.0

Adrian Hirst, Weaseltron Entertainment Limited
email: gameenginegems@weaseltron.com

A maintained version of this code will be made publically available at http://www.weaseltron.com/WeaselGui. Feedback is actively welcomed.

*****************************************************************************************************
Legal Stuff:

This library is distributed under the terms of the GNU LGPL license version 3 (27th June 2007), a copy of which can be found at http://www.gnu.org/copyleft/lesser.html

This library makes use of the Simple DirectMedia Layer (SDL). This can be found at http://www.libsdl.org/index.php and is distributed here under the LGPL 2.1 licence. Copies of these may be found at http://www.gnu.org/copyleft/lesser.html and http://www.gnu.org/licenses/lgpl-2.1.html.

Portions of this code is taken from the AngelCode BMFont library. This is available at http://www.angelcode.com

Every effort has been made to ensure that this distribution is bug-free, working and virus-free, though no warranty is made as such.

*****************************************************************************************************
What is WeaselGui?

WeaselGui is a small, lightweight and flexible, cross-platform drop-in GUI sub-system. As well as a GUI component, it also contains several other components - namely CONTROL, FONT, GFX, MATHS, STATE and UTILITY. 

WeaselGui is a rarity in that it is tested, production-level GUI code. It is designed that a professional programmer might use it as-is instead of spending a few days writing another GUI system, or for the student wishing to put a project together using a known framework together.

The GUI portion of this code is intended to give the user a set of very basic, reusable component classes that can be extended to create many custom types. Example types for GuiSelectable, GuiSelectableGroups, GuiSelectableText, GuiSliders and an example of several states showing how the input might be handled on the game-side of things.

As already eluded, WeaselGui also includes: 
o A sample, simply extendable STATE Machine.
o A variable-width FONT rendering system (based on the AngelCode BMFont system - who provide a handy Font exporter).
o CONTROL system - to handle the input of an XBOX controller under a Windows system with a simple 
o Basic Graphics support with GFX - actually this is just the most simple OpenGL renderer we could create to show off the samples.
o A simple MATHS library - with sample, used, tested classes for 3 component vectors and 4x4 matrices.
o A set of handy UTILITY classes - Growable arrays, Custom Assert macros (with break, skip this time, skip always options), CRC32 hashing, String classes and more.

The GUI component has a dependency only on UTILITY and MATHS with a very light, easily removed dependency on the GFX class.

Although the GUI portion of the WeaselGui library itself has no dependencies, the GFX and CONTROL components do have a light dependency. Future versions of WeaselGui will have these also removed.

The examples also require SDL (Simple Directmedia Layer http://libsdl.org) headers and binaries to run. A current version of this (1.2.13) is stored in the 'Code\External' directory and referenced inside the Example projects. As the .dll file is required for the program to be run, a copy of this is stored in the 'Code\Examples' directory, which is where the examples should be run from as their working directory.

There are no known issues at this time. There are a few modifications that may be made. Check the website for more details and updates.

The generated FONT files and corresponding source code are based on data generated from AngelCode's BMFont v1.12 (http://www.angelcode.com/products/bmfont/).

Future work on WeaselGui will take the form of a simple editor, dependent on usage and demand.
There will be a .DLL implementation of the library available, too that helps comply with the GNU LGPL licence.

Please drop us a line if you find this code useful. We'd love to hear from you.

*****************************************************************************************************
Thanks to:
The people at Simple Directmedia Layer for a simple, understandable framework.
The nice people at AngelCode for writing one of the best freely available font exporters out there.
Everyone I've worked with. In particular Alan Abram, who contributed to the development of a previous version of this software as well as helping putting this library together.

Source: README.TXT, updated 2010-01-16