scim  1.4.14
Helper

Classes

class  scim::HelperError
struct  scim::HelperInfo
 Structure to hold the information of a Helper object. More...
class  scim::HelperAgent
 The accessory class to write a Helper object. More...
class  scim::HelperManager
 This class is used to manage all helper objects. More...
class  scim::HelperModule
 The class used to load a Helper module and run its Helpers. More...

Typedefs

typedef Slot3< void, const
HelperAgent *, int, const
String & > 
scim::HelperAgentSlotVoid
typedef Slot4< void, const
HelperAgent *, int, const
String &, const String & > 
scim::HelperAgentSlotString
typedef Slot4< void, const
HelperAgent *, int, const
String &, int > 
scim::HelperAgentSlotInt
typedef Slot5< void, const
HelperAgent *, int, const
String &, int, int > 
scim::HelperAgentSlotIntInt
typedef Slot4< void, const
HelperAgent *, int, const
String &, const Transaction & > 
scim::HelperAgentSlotTransaction
typedef unsigned int(* scim::HelperModuleNumberOfHelpersFunc )(void)
 Get the number of Helpers in this module.
typedef bool(* scim::HelperModuleGetHelperInfoFunc )(unsigned int idx, HelperInfo &info)
 Get the information of a Helper.
typedef void(* scim::HelperModuleRunHelperFunc )(const String &uuid, const ConfigPointer &config, const String &display)
 Run a specific Helper.

Functions

int scim::scim_get_helper_module_list (std::vector< String > &mod_list)
 Get a name list of currently available Helper modules.

Variables

const uint32 scim::SCIM_HELPER_STAND_ALONE = 1
 Helper option indicates that it's a stand alone Helper.
const uint32 scim::SCIM_HELPER_AUTO_START = (1<<1)
 Helper option indicates that it must be started automatically when Panel starts.
const uint32 scim::SCIM_HELPER_AUTO_RESTART = (1<<2)
 Helper option indicates that it should be restarted when it exits abnormally.
const uint32 scim::SCIM_HELPER_NEED_SCREEN_INFO = (1<<3)
 Helper option indicates that it needs the screen update information.
const uint32 scim::SCIM_HELPER_NEED_SPOT_LOCATION_INFO = (1<<4)
 Helper option indicates that it needs the spot location information.

Detailed Description

The accessory classes to help develop and manage Client Helper objects.

Typedef Documentation

typedef Slot3<void, const HelperAgent *, int, const String &> scim::HelperAgentSlotVoid
typedef Slot4<void, const HelperAgent *, int, const String &, const String &> scim::HelperAgentSlotString
typedef Slot4<void, const HelperAgent *, int, const String &, int> scim::HelperAgentSlotInt
typedef Slot5<void, const HelperAgent *, int, const String &, int, int> scim::HelperAgentSlotIntInt
typedef Slot4<void, const HelperAgent *, int, const String &, const Transaction &> scim::HelperAgentSlotTransaction
typedef unsigned int(* scim::HelperModuleNumberOfHelpersFunc)(void)

Get the number of Helpers in this module.

A helper module can have multiple Helpers in it. But each helper will run in its own process space.

There must be a function called "scim_helper_module_number_of_helpers" in each helper module which complies with this prototype. This function name can have a prefix like kbd_LTX_, in which "kbd" is the module's name.

typedef bool(* scim::HelperModuleGetHelperInfoFunc)(unsigned int idx, HelperInfo &info)

Get the information of a Helper.

There must be a function called "scim_helper_module_get_helper_info" in each helper module which complies with this prototype. This function name can have a prefix like kbd_LTX_, in which "kbd" is the module's name.

Parameters
idxThe index of this helper, must between 0 to (the number of helpers) - 1.
infoThe HelperInfo object to store the information.
Returns
true if this Helper is valid and the correct information is stored into info.
typedef void(* scim::HelperModuleRunHelperFunc)(const String &uuid, const ConfigPointer &config, const String &display)

Run a specific Helper.

This function will be called within an independent process.

There must be a function called "scim_helper_module_run_helper" in each helper module which complies with this prototype. This function name can have a prefix like kbd_LTX_, in which "kbd" is the module's name.

Parameters
configThe Config object should be used to read/write configurations.
uuidThe UUID of the Helper to be run.
displayThe display in which this helper should run.

Function Documentation

int scim::scim_get_helper_module_list ( std::vector< String > &  mod_list)

Get a name list of currently available Helper modules.

Parameters
mod_list- the result list will be stored here.
Returns
the number of the modules, equal to mod_list.size ().

Variable Documentation

const uint32 scim::SCIM_HELPER_STAND_ALONE = 1

Helper option indicates that it's a stand alone Helper.

Stand alone Helper has no corresponding IMEngine Factory, Such Helper can not be started by IMEngine Factory. So Panel must provide a menu, or something else, which contains all stand alone Helper items, so that user can start them by clicking the items.

const uint32 scim::SCIM_HELPER_AUTO_START = (1<<1)

Helper option indicates that it must be started automatically when Panel starts.

If Helper objects want to start itself as soon as the Panel starts, set this option.

const uint32 scim::SCIM_HELPER_AUTO_RESTART = (1<<2)

Helper option indicates that it should be restarted when it exits abnormally.

This option should not be used with SCIM_HELPER_STAND_ALONE.

const uint32 scim::SCIM_HELPER_NEED_SCREEN_INFO = (1<<3)

Helper option indicates that it needs the screen update information.

Helper object with this option will receive the UPDATE_SCREEN event when the screen of focused ic is changed.

const uint32 scim::SCIM_HELPER_NEED_SPOT_LOCATION_INFO = (1<<4)

Helper option indicates that it needs the spot location information.

Helper object with this option will receive the SPOT_LOCATION_INFO event when the spot location of focused ic is changed.