LavishGUI 2
LavishGUI 2 (LGUI2) is a work-in-progress GUI system for Inner Space (build 6269 or later) which supports DirectX and OpenGL renderers. LavishGUI 2 effectively replaces LavishGUI, although both systems will be active in Inner Space.
LavishGUI 2 interfaces are designed in JSON format, and are scriptable with LavishScript.
- Here is a very simple (and completely valid) "Hello World!" example for LavishGUI 2
{ "type":"textblock", "text":"Hello World!", }
LavishGUI 2 also implements an input bindings system which includes support for axis (thumbsticks, triggers, etc) and directional pad (D-pad) controls. Input bindings are also designed in JSON format.
- Here is an example Input Bindings list that can be loaded into LavishGUI 2
[ { "name":"I did it!", "controls":"VK_LBUTTON", "modifiers":"alt", "eventHandler":["method","MyBindingController","IDidIt"] } ]
The above example will execute the LavishScript method MyBindingController:IDidIt when pressing or releasing Alt+Mouse1. Event Handlers may also opt to directly embed LavishScript code (as done with LavishGUI), but we recommend providing a controller object as best practice.
Topics
We're filling in the documentation and some features are not yet implemented, so please excuse the mess in the meantime.
- Elements
- Brushes
- Fonts
- Event Handlers
- Hooks
- Input Bindings
- Skins
- Styles
- Templates
- Using LavishGUI 2 from LavishScript