[ < ] | [ > ] | [ << ] | [ Up ] | [ >> ] | [Top] | [Contents] | [Index] | [ ? ] |
Written by Seth Yastrov, [email protected] and Dan Härdfeldt, [email protected].
The CEGUI plugin is a wrapper around CEGUI, an embeddable widget library, so it can be easily used from within Crystal Space applications. The plugin provides a renderer, a VFS resource provider, and an event handler for CEGUI. You will need version 0.4.1 or 0.5.0 of CEGUI.
All components of the CEGUI plugin are set up when the application calls
iCEGUI::Initialize()
. This function will initialize CEGUI and tell
it to use the CEGUI plugin renderer and event handler. It is not necessary
to create a new CEGUI::System()
in your application as this is
performed automatically by the Crystal Space CEGUI plugin.
To render the graphical user interface (GUI), use convenience function,
iCEGUI::Render()
. This function may be called from anywhere in the
application to allow the ability to render to an alternate render target (like
procedural textures). In applications based upon `csBaseEventHandler', it
is called typically in ProcessFrame()
, sandwiched somewhere between
BeginDraw()
and `FinishDraw()' calls.
It is important that applications using CEGUI from Crystal Space do not
use any of the CEGUI getSingleton()
or getSingletonPtr()
calls, such as CEGUI::Singleton<T>::getSingleton()
or
CEGUI::System::getSingleton()
. The reason for this is that global and
static variables (declared in methods, classes, namespaces, or globally) are
not normally shared between modules. Calling getSingleton()
from the
Crystal Space application will not necessarily return the same instance as
calling getSingleton()
from the CEGUI plugin.
To remedy this, there are `Get*' functions in the `iCEGUI' interface
that return a reference or pointer to the CEGUI singletons so that they
may be used safely from a Crystal Space application. iCEGUI::GetSystem()
and GetSystemPtr()
are the most commonly used.
The CEGUI plugin provides a VFS implementation of the CEGUI resource provider. This means that all paths passed to CEGUI functions should be VFS paths. Textures, scheme files, layout files, etc, will all be loaded through the VFS. Paths within these files should be VFS paths as well.
Keyboard and mouse input is automatically injected into the CEGUI event system by the CEGUI plugin event handler. The CEGUI display area is automatically resized when the Crystal Space canvas is resized.
[ < ] | [ > ] | [ << ] | [ Up ] | [ >> ] |
This document was generated using texi2html 1.76.