Crazy Eddies GUI System  0.7.2
Public Member Functions | Static Public Member Functions | Protected Attributes | Static Protected Attributes | List of all members
CEGUI::ScriptModule Class Referenceabstract

Abstract interface required for all scripting support modules to be used with the CEGUI system. More...

+ Inheritance diagram for CEGUI::ScriptModule:
+ Collaboration diagram for CEGUI::ScriptModule:

Public Member Functions

 ScriptModule (void)
 Constructor for ScriptModule base class.
 
virtual ~ScriptModule (void)
 Destructor for ScriptModule base class.
 
virtual void executeScriptFile (const String &filename, const String &resourceGroup="")=0
 Execute a script file. More...
 
virtual int executeScriptGlobal (const String &function_name)=0
 Execute a scripted global function. The function should not take any parameters and should return an integer. More...
 
virtual bool executeScriptedEventHandler (const String &handler_name, const EventArgs &e)=0
 Execute a scripted global 'event handler' function. The function should take some kind of EventArgs like parameter that the concrete implementation of this function can create from the passed EventArgs based object. The function should not return anything. More...
 
virtual void executeString (const String &str)=0
 Execute script code contained in the given CEGUI::String object. More...
 
virtual void createBindings (void)
 Method called during system initialisation, prior to running any scripts via the ScriptModule, to enable the ScriptModule to perform any operations required to complete initialisation or binding of the script language to the gui system objects. More...
 
virtual void destroyBindings (void)
 Method called during system destruction, after all scripts have been run via the ScriptModule, to enable the ScriptModule to perform any operations required to cleanup bindings of the script language to the gui system objects, as set-up in the earlier createBindings call. More...
 
const StringgetIdentifierString () const
 Return identification string for the ScriptModule. If the internal id string has not been set by the ScriptModule creator, a generic string of "Unknown scripting module" will be returned. More...
 
virtual Event::Connection subscribeEvent (EventSet *target, const String &name, const String &subscriber_name)=0
 Subscribes the named Event to a scripted funtion. More...
 
virtual Event::Connection subscribeEvent (EventSet *target, const String &name, Event::Group group, const String &subscriber_name)=0
 Subscribes the specified group of the named Event to a scripted funtion. More...
 

Static Public Member Functions

static void setDefaultResourceGroup (const String &resourceGroup)
 Sets the default resource group to be used when loading script files. More...
 
static const StringgetDefaultResourceGroup ()
 Returns the default resource group used when loading script files. More...
 

Protected Attributes

String d_identifierString
 String that holds some id information about the module.
 

Static Protected Attributes

static String d_defaultResourceGroup
 holds the default resource group ID for loading script files.
 

Detailed Description

Abstract interface required for all scripting support modules to be used with the CEGUI system.

Member Function Documentation

virtual void CEGUI::ScriptModule::createBindings ( void  )
inlinevirtual

Method called during system initialisation, prior to running any scripts via the ScriptModule, to enable the ScriptModule to perform any operations required to complete initialisation or binding of the script language to the gui system objects.

Returns
Nothing.

Reimplemented in CEGUI::LuaScriptModule.

virtual void CEGUI::ScriptModule::destroyBindings ( void  )
inlinevirtual

Method called during system destruction, after all scripts have been run via the ScriptModule, to enable the ScriptModule to perform any operations required to cleanup bindings of the script language to the gui system objects, as set-up in the earlier createBindings call.

Returns
Nothing.

Reimplemented in CEGUI::LuaScriptModule.

virtual bool CEGUI::ScriptModule::executeScriptedEventHandler ( const String handler_name,
const EventArgs e 
)
pure virtual

Execute a scripted global 'event handler' function. The function should take some kind of EventArgs like parameter that the concrete implementation of this function can create from the passed EventArgs based object. The function should not return anything.

Parameters
handler_nameString object holding the name of the scripted handler function.
eEventArgs based object that should be passed, by any appropriate means, to the scripted function.
Returns
  • true if the event was handled.
  • false if the event was not handled.

Implemented in CEGUI::LuaScriptModule.

virtual void CEGUI::ScriptModule::executeScriptFile ( const String filename,
const String resourceGroup = "" 
)
pure virtual

Execute a script file.

Parameters
filenameString object holding the filename of the script file that is to be executed
resourceGroupResource group idendifier to be passed to the ResourceProvider when loading the script file.

Implemented in CEGUI::LuaScriptModule.

virtual int CEGUI::ScriptModule::executeScriptGlobal ( const String function_name)
pure virtual

Execute a scripted global function. The function should not take any parameters and should return an integer.

Parameters
function_nameString object holding the name of the function, in the global script environment, that is to be executed.
Returns
The integer value returned from the script function.

Implemented in CEGUI::LuaScriptModule.

virtual void CEGUI::ScriptModule::executeString ( const String str)
pure virtual

Execute script code contained in the given CEGUI::String object.

Parameters
strString object holding the valid script code that should be executed.
Returns
Nothing.

Implemented in CEGUI::LuaScriptModule.

static const String& CEGUI::ScriptModule::getDefaultResourceGroup ( )
inlinestatic

Returns the default resource group used when loading script files.

Returns
String describing the default resource group identifier..
const String& CEGUI::ScriptModule::getIdentifierString ( ) const

Return identification string for the ScriptModule. If the internal id string has not been set by the ScriptModule creator, a generic string of "Unknown scripting module" will be returned.

Returns
String object holding a string that identifies the ScriptModule in use.
static void CEGUI::ScriptModule::setDefaultResourceGroup ( const String resourceGroup)
inlinestatic

Sets the default resource group to be used when loading script files.

Parameters
resourceGroupString describing the default resource group identifier to be used.
Returns
Nothing.
virtual Event::Connection CEGUI::ScriptModule::subscribeEvent ( EventSet target,
const String name,
const String subscriber_name 
)
pure virtual

Subscribes the named Event to a scripted funtion.

Parameters
targetThe target EventSet for the subscription.
nameString object containing the name of the Event to subscribe to.
subscriber_nameString object containing the name of the script funtion that is to be subscribed to the Event.
Returns
Connection object that can be used to check the status of the Event connection and to disconnect (unsubscribe) from the Event.
Exceptions
UnknownObjectExceptionThrown if an Event named name is not in the EventSet

Implemented in CEGUI::LuaScriptModule.

virtual Event::Connection CEGUI::ScriptModule::subscribeEvent ( EventSet target,
const String name,
Event::Group  group,
const String subscriber_name 
)
pure virtual

Subscribes the specified group of the named Event to a scripted funtion.

Parameters
targetThe target EventSet for the subscription.
nameString object containing the name of the Event to subscribe to.
groupGroup which is to be subscribed to. Subscription groups are called in ascending order.
subscriber_nameString object containing the name of the script funtion that is to be subscribed to the Event.
Returns
Connection object that can be used to check the status of the Event connection and to disconnect (unsubscribe) from the Event.
Exceptions
UnknownObjectExceptionThrown if an Event named name is not in the EventSet

Implemented in CEGUI::LuaScriptModule.