Main Page | Modules | Namespace List | Class Hierarchy | Alphabetical List | Class List | Directories | File List | Namespace Members | Class Members | File Members

scim::FrontEndBase Class Reference
[FrontEnd]

The base class to implement the FrontEnd objects. More...

#include <scim_frontend.h>

Inheritance diagram for scim::FrontEndBase:

Inheritance graph
[legend]
Collaboration diagram for scim::FrontEndBase:

Collaboration graph
[legend]
List of all members.

Public Member Functions

 FrontEndBase (const BackEndPointer &backend)
 Constructor.
virtual ~FrontEndBase ()
 Virtual destructor.
virtual void init (int argc, char **argv)=0
 init the frontend.
virtual void run ()=0
 run the frontend.

Protected Member Functions

functions can be used by derived classes.
uint32 get_factory_list (std::vector< String > &uuids, const String &encoding) const
 Get the IMEngine factories list for specific encoding.
WideString get_factory_name (const String &uuid) const
 get the name of an IMEngine factory.
WideString get_factory_authors (const String &uuid) const
 get the authors info of an IMEngine factory.
WideString get_factory_credits (const String &uuid) const
 get the credits info of an IMEngine factory.
WideString get_factory_help (const String &uuid) const
 get the help info of an IMEngine factory.
String get_factory_icon_file (const String &uuid) const
 get the icon file of an IMEngine factory.
String get_factory_locales (const String &uuid) const
 get the supported locales of an IMEngine factory.
String get_factory_language (const String &uuid) const
 get the language of an IMEngine factory.
String get_all_locales () const
 get all locales supported by BackEnd.
int new_instance (const String &sf_uuid, const String &encoding)
 create a new IMEngine instance for specific encoding.
bool replace_instance (int si_id, const String &sf_uuid)
 replace an IMEngine instance by a new instance created by another factory.
bool delete_instance (int id)
 delete an IMEngine instance according to its id.
void delete_all_instances ()
 delete all IMEngine instances.
String get_instance_encoding (int id) const
 get the working encoding of an IMEngine instance.
WideString get_instance_name (int id) const
 get the name of an IMEngine instance.
WideString get_instance_authors (int id) const
 get the authors info of an IMEngine instance.
WideString get_instance_credits (int id) const
 get the credits info of an IMEngine instance.
WideString get_instance_help (int id) const
 get the help of an IMEngine instance.
String get_instance_icon_file (int id) const
 get the icon file of an IMEngine instance.
bool process_key_event (int id, const KeyEvent &key) const
 process a key event using specific IMEngine instance.
void move_preedit_caret (int id, unsigned int pos) const
 let a specific IMEngine instance move its preedit caret.
void select_candidate (int id, unsigned int index) const
 let a specific IMEngine instance select a candidate in its current lookup table.
void update_lookup_table_page_size (int id, unsigned int page_size) const
 update the page size of a specific IMEngine instance's lookup table.
void lookup_table_page_up (int id) const
 Let a specific IMEngine instance flip its lookup table to the previous page.
void lookup_table_page_down (int id) const
 Let a specific IMEngine instance flip its lookup table to the previous page.
void reset (int id) const
 reset a specific IMEngine instance.
void focus_in (int id) const
 focus in a specific IMEngine instance.
void focus_out (int id) const
 focus out a specific IMEngine instance.
void trigger_property (int id, const String &property) const
 trigger a property of a specific IMEngine instance.
Pure virtual protected methods.
The following methods should be implemented by derivation classes. these functions handle the real things.

virtual void show_preedit_string (int id)=0
 show preedit string area for an IMEngine instance.
virtual void show_aux_string (int id)=0
 show aux string area for an IMEngine instance.
virtual void show_lookup_table (int id)=0
 show lookup table area for an IMEngine instance.
virtual void hide_preedit_string (int id)=0
 hide preedit string area for an IMEngine instance.
virtual void hide_aux_string (int id)=0
 hide aux string area for an IMEngine instance.
virtual void hide_lookup_table (int id)=0
 hide lookup table area for an IMEngine instance.
virtual void update_preedit_caret (int id, int caret)=0
 update the position of preedit caret for an IMEngine instance.
virtual void update_preedit_string (int id, const WideString &str, const AttributeList &attrs)=0
 update the content of preedit string for an IMEngine instance.
virtual void update_aux_string (int id, const WideString &str, const AttributeList &attrs)=0
 update the content of aux string for an IMEngine instance.
virtual void update_lookup_table (int id, const LookupTable &table)=0
 update the content of lookup table for an IMEngine instance.
virtual void commit_string (int id, const WideString &str)=0
 commit a string to client for an IMEngine instance.
virtual void forward_key_event (int id, const KeyEvent &key)=0
 forward a keyevent to the client of an IMEngine instance.
virtual void register_properties (int id, const PropertyList &properties)=0
 register all the properties of an IMEngine instance into this FrontEnd.
virtual void update_property (int id, const Property &property)=0
 update a property of an IMEngine instance.

Friends

class FrontEndBaseImpl

Detailed Description

The base class to implement the FrontEnd objects.

FrontEnd is an interface between IMEngineFactory/IMEngineInstance objects and the user applications. It forward the user requests to IMEngineFactory/IMEngineInstance objects, and handle the requests sent back.

Definition at line 73 of file scim_frontend.h.


Constructor & Destructor Documentation

scim::FrontEndBase::FrontEndBase const BackEndPointer backend  ) 
 

Constructor.

Parameters:
backend A BackEnd object which holds all IMEngineFactory objects.

virtual scim::FrontEndBase::~FrontEndBase  )  [virtual]
 

Virtual destructor.


Member Function Documentation

uint32 scim::FrontEndBase::get_factory_list std::vector< String > &  uuids,
const String encoding
const [protected]
 

Get the IMEngine factories list for specific encoding.

Parameters:
uuids the vector to store the factories' uuids which support the encoding.
encoding the encoding to be queried. If empty, all IMEngine factories will be returned.
Returns:
the number of IMEngine factories found.

WideString scim::FrontEndBase::get_factory_name const String uuid  )  const [protected]
 

get the name of an IMEngine factory.

Parameters:
uuid the uuid of the IMEngine factory
Returns:
the name of the IMEngine factory.

WideString scim::FrontEndBase::get_factory_authors const String uuid  )  const [protected]
 

get the authors info of an IMEngine factory.

Parameters:
uuid the uuid of the IMEngine factory
Returns:
the authors info of the IMEngine factory.

WideString scim::FrontEndBase::get_factory_credits const String uuid  )  const [protected]
 

get the credits info of an IMEngine factory.

Parameters:
uuid the uuid of the IMEngine factory
Returns:
the credits info of the IMEngine factory.

WideString scim::FrontEndBase::get_factory_help const String uuid  )  const [protected]
 

get the help info of an IMEngine factory.

Parameters:
uuid the uuid of the IMEngine factory
Returns:
the help info of the IMEngine factory.

String scim::FrontEndBase::get_factory_icon_file const String uuid  )  const [protected]
 

get the icon file of an IMEngine factory.

Parameters:
uuid the uuid of the IMEngine factory
Returns:
the icon file name of the IMEngine factory.

String scim::FrontEndBase::get_factory_locales const String uuid  )  const [protected]
 

get the supported locales of an IMEngine factory.

Parameters:
uuid the uuid of the IMEngine factory
Returns:
a comma separated list of the supported locales.

String scim::FrontEndBase::get_factory_language const String uuid  )  const [protected]
 

get the language of an IMEngine factory.

Parameters:
uuid the uuid of the IMEngine factory
Returns:
the language of this IMEngine factory.

String scim::FrontEndBase::get_all_locales  )  const [protected]
 

get all locales supported by BackEnd.

Returns:
a comman separated list of all supported locales.

int scim::FrontEndBase::new_instance const String sf_uuid,
const String encoding
[protected]
 

create a new IMEngine instance for specific encoding.

Parameters:
sf_uuid the IMEngineFactory UUID.
encoding the encoding to be used.
Returns:
the newly created IMEngine instance id, -1 means error occurred.

bool scim::FrontEndBase::replace_instance int  si_id,
const String sf_uuid
[protected]
 

replace an IMEngine instance by a new instance created by another factory.

This function is used to change the input method for an input context on the fly.

Parameters:
si_id the IMEngine instance to be replaced.
sf_uuid the new IMEngine factory to be used.

bool scim::FrontEndBase::delete_instance int  id  )  [protected]
 

delete an IMEngine instance according to its id.

Parameters:
id the id of the IMEngine instance to be deleted.
Returns:
true if success, false if there is no such instance.

void scim::FrontEndBase::delete_all_instances  )  [protected]
 

delete all IMEngine instances.

This function should be called just before quitting the FrontEnd.

String scim::FrontEndBase::get_instance_encoding int  id  )  const [protected]
 

get the working encoding of an IMEngine instance.

Parameters:
id the IMEngine instance id.
Returns:
the working encoding of this IMEngine instance.

WideString scim::FrontEndBase::get_instance_name int  id  )  const [protected]
 

get the name of an IMEngine instance.

Parameters:
id the IMEngine instance id.
Returns:
the name of this IMEngine instance, aka. the name of its factory.

WideString scim::FrontEndBase::get_instance_authors int  id  )  const [protected]
 

get the authors info of an IMEngine instance.

Parameters:
id the IMEngine instance id.
Returns:
the authors info of this IMEngine instance, aka. the authors of its factory.

WideString scim::FrontEndBase::get_instance_credits int  id  )  const [protected]
 

get the credits info of an IMEngine instance.

Parameters:
id the IMEngine instance id.
Returns:
the credits info of this IMEngine instance, aka. the credits of its factory.

WideString scim::FrontEndBase::get_instance_help int  id  )  const [protected]
 

get the help of an IMEngine instance.

Parameters:
id the IMEngine instance id.
Returns:
the help of this IMEngine instance, aka. the help of its factory.

String scim::FrontEndBase::get_instance_icon_file int  id  )  const [protected]
 

get the icon file of an IMEngine instance.

Parameters:
id the IMEngine instance id.
Returns:
the icon file name of this IMEngine instance.

bool scim::FrontEndBase::process_key_event int  id,
const KeyEvent key
const [protected]
 

process a key event using specific IMEngine instance.

Parameters:
id the IMEngine instance id.
key the key event to be processed.
Returns:
true if the event was processed successfully, false if the event was not processed and should be forward to the client application.

void scim::FrontEndBase::move_preedit_caret int  id,
unsigned int  pos
const [protected]
 

let a specific IMEngine instance move its preedit caret.

Parameters:
id the IMEngine instance id.
pos the new preedit caret position.

void scim::FrontEndBase::select_candidate int  id,
unsigned int  index
const [protected]
 

let a specific IMEngine instance select a candidate in its current lookup table.

Parameters:
id the IMEngine instance id.
index the candidate index in current lookup table page to be selected.

void scim::FrontEndBase::update_lookup_table_page_size int  id,
unsigned int  page_size
const [protected]
 

update the page size of a specific IMEngine instance's lookup table.

Parameters:
id the IMEngine instance id.
page_size the new page size to be used.

void scim::FrontEndBase::lookup_table_page_up int  id  )  const [protected]
 

Let a specific IMEngine instance flip its lookup table to the previous page.

void scim::FrontEndBase::lookup_table_page_down int  id  )  const [protected]
 

Let a specific IMEngine instance flip its lookup table to the previous page.

void scim::FrontEndBase::reset int  id  )  const [protected]
 

reset a specific IMEngine instance.

Parameters:
id the id of the IMEngine instance to be reset.

void scim::FrontEndBase::focus_in int  id  )  const [protected]
 

focus in a specific IMEngine instance.

Parameters:
id the id of the IMEngine instance to be focused in.

void scim::FrontEndBase::focus_out int  id  )  const [protected]
 

focus out a specific IMEngine instance.

Parameters:
id the id of the IMEngine instance to be focused out.

void scim::FrontEndBase::trigger_property int  id,
const String property
const [protected]
 

trigger a property of a specific IMEngine instance.

Parameters:
id the id of the IMEngine instance.
property the key of the property to be triggered.

virtual void scim::FrontEndBase::show_preedit_string int  id  )  [protected, pure virtual]
 

show preedit string area for an IMEngine instance.

Parameters:
id the id of the IMEngine instance. It must have been focused in.

virtual void scim::FrontEndBase::show_aux_string int  id  )  [protected, pure virtual]
 

show aux string area for an IMEngine instance.

Parameters:
id the id of the IMEngine instance. It must have been focused in.

virtual void scim::FrontEndBase::show_lookup_table int  id  )  [protected, pure virtual]
 

show lookup table area for an IMEngine instance.

Parameters:
id the id of the IMEngine instance. It must have been focused in.

virtual void scim::FrontEndBase::hide_preedit_string int  id  )  [protected, pure virtual]
 

hide preedit string area for an IMEngine instance.

Parameters:
id the id of the IMEngine instance. It must have been focused in.

virtual void scim::FrontEndBase::hide_aux_string int  id  )  [protected, pure virtual]
 

hide aux string area for an IMEngine instance.

Parameters:
id the id of the IMEngine instance. It must have been focused in.

virtual void scim::FrontEndBase::hide_lookup_table int  id  )  [protected, pure virtual]
 

hide lookup table area for an IMEngine instance.

Parameters:
id the id of the IMEngine instance. It must have been focused in.

virtual void scim::FrontEndBase::update_preedit_caret int  id,
int  caret
[protected, pure virtual]
 

update the position of preedit caret for an IMEngine instance.

Parameters:
id the id of the IMEngine instance. It must have been focused in.
caret the new caret position.

virtual void scim::FrontEndBase::update_preedit_string int  id,
const WideString str,
const AttributeList attrs
[protected, pure virtual]
 

update the content of preedit string for an IMEngine instance.

Parameters:
id the id of the IMEngine instance. It must have been focused in.
str the new content of preedit string.
attrs the string attributes.

virtual void scim::FrontEndBase::update_aux_string int  id,
const WideString str,
const AttributeList attrs
[protected, pure virtual]
 

update the content of aux string for an IMEngine instance.

Parameters:
id the id of the IMEngine instance. It must have been focused in.
str the new content of aux string.
attrs the string attributes.

virtual void scim::FrontEndBase::update_lookup_table int  id,
const LookupTable table
[protected, pure virtual]
 

update the content of lookup table for an IMEngine instance.

Parameters:
id the id of the IMEngine instance. It must have been focused in.
table the new lookup table.

virtual void scim::FrontEndBase::commit_string int  id,
const WideString str
[protected, pure virtual]
 

commit a string to client for an IMEngine instance.

Parameters:
id the id of the IMEngine instance to commit the string.
str the string to be committed.

virtual void scim::FrontEndBase::forward_key_event int  id,
const KeyEvent key
[protected, pure virtual]
 

forward a keyevent to the client of an IMEngine instance.

Parameters:
id the id of the IMEngine instance.
key the key event to be forwarded.

virtual void scim::FrontEndBase::register_properties int  id,
const PropertyList properties
[protected, pure virtual]
 

register all the properties of an IMEngine instance into this FrontEnd.

Parameters:
id the id of the IMEngine instance. It must have been focused in.
properties the PropertyList contains all the properties of this IMEngine instance.

virtual void scim::FrontEndBase::update_property int  id,
const Property property
[protected, pure virtual]
 

update a property of an IMEngine instance.

Parameters:
id the id of the IMEngine instance. It must have been focused in.
property the Property to be updated.

virtual void scim::FrontEndBase::init int  argc,
char **  argv
[pure virtual]
 

init the frontend.

This method must be implemented by derivation classes.

virtual void scim::FrontEndBase::run  )  [pure virtual]
 

run the frontend.

This method must be implemented by derivation classes.


Friends And Related Function Documentation

friend class FrontEndBaseImpl [friend]
 

Definition at line 79 of file scim_frontend.h.


The documentation for this class was generated from the following file:
Generated on Tue Apr 19 00:11:57 2005 for scim by  doxygen 1.4.1