src/core.c File Reference

#include "core.h"
#include "ui.h"
#include "im_methods.h"
#include "unihan_xaux.h"
#include "unicode.h"
#include "phrase.h"
#include "log.h"
#include <unihan_im.h>
#include <dirent.h>
#include <dlfcn.h>
#include <string.h>
#include <stdio.h>

Data Structures

struct  _IMModuleList
struct  _IMList
struct  IMManagerData
struct  _DefaultIM

Defines

#define LOG_DOMAIN   "core"
#define IM_MODULES_DIR   "/usr/lib/unihan2/im_modules"

Typedefs

typedef _IMModuleList IMModuleList
typedef _IMList IMList
typedef _DefaultIM DefaultIM

Functions

void conversion_on (iml_session_t *s)
 Starts conversion (input processing).
void conversion_off (iml_session_t *s)
 Ends conversion (input processing).
void conversion_temp_off (iml_session_t *s)
 Temporarily suspends conversion (input processing).
void conversion_temp_on (iml_session_t *s)
 Temporarily resumes conversion (input processing).
void im_manager_init (iml_desktop_t *desktop)
 Initialises IM Manager.
void im_manager_done (iml_desktop_t *desktop)
 Finalises IM Manager.
int im_manager_get_num_im (iml_desktop_t *desktop)
 Get number of IMs.
const char * im_get_curr_im_name (iml_session_t *s)
 Get name of current IM.
void im_manager_get_im_list (iml_session_t *s, IMAuxDrawCallbackStruct *aux)
 Returns the list of IMs to Aux.
void im_manager_create_session (iml_session_t *s)
 Creates IM Manager session context.
void im_manager_destroy_session (iml_session_t *s)
 Destroys IM Manager session context.
void im_manager_set_default_im (iml_session_t *s, char *imid)
 Sets the default IM for this session.
int im_propagate_focus_event (iml_session_t *s, int focused)
 Propagates focus event to IM.
int im_propagate_key_event (iml_session_t *s, IMKeyListEvent *kev)
 Propagates key event event to IM.
void im_change_to_next_im (iml_session_t *s)
 Changes current IM to the next IM in list.
void im_change_to_next_im1 (iml_session_t *s)
 Changes current IM to the next IM in list.
void im_change_to_prev_im (iml_session_t *s)
 Changes current IM to the previous IM in list.
void im_change_to_prev_im1 (iml_session_t *s)
 Changes current IM to the previous IM in list.
void im_change_to_im (iml_session_t *s, char *imid)
 Changes current IM by ID.
void tcsc_set (iml_session_t *s, UnihanTCSCMode tcsc)
 Sets Traditional/Simplified Chinese conversion mode for current session.
void check_module_info (iml_session_t *s)
void toggle_width (iml_session_t *s)
 Toggles halfwidth/fullwidth mode.
void check_fullwidth (iml_session_t *s)
 Updates Aux of current halfwidth/fullwidth mode.
void toggle_puncce (iml_session_t *s)
 Toggles Chinese/English punctuation mode.
void check_puncce (iml_session_t *s)
 Updates Aux of current Chinese/English punctuation mode.
IMConfigListim_config_get (iml_session_t *s, char *imid)
void im_config_change (iml_session_t *s, char *imid, char *key, char *value)
void toggle_punctuation_keyboard (iml_session_t *s)
void toggle_us_keyboard (iml_session_t *s)
void im_config_unispim (iml_session_t *s, int count_values, int unispim_values[])
int im_propagate_lookup_page_turn_event (iml_session_t *s, int direction)
 Propagates lookup page turn event to IM.
int im_propagate_lookup_select_event (iml_session_t *s, int num)
 Propagates lookup selection event to IM.

Define Documentation

#define IM_MODULES_DIR   "/usr/lib/unihan2/im_modules"

#define LOG_DOMAIN   "core"


Typedef Documentation

typedef struct _DefaultIM DefaultIM

typedef struct _IMList IMList

typedef struct _IMModuleList IMModuleList


Function Documentation

void check_fullwidth ( iml_session_t *  s  ) 

Updates Aux of current halfwidth/fullwidth mode.

Parameters:
s current IMLSession

void check_module_info ( iml_session_t *  s  ) 

void check_puncce ( iml_session_t *  s  ) 

Updates Aux of current Chinese/English punctuation mode.

Parameters:
s current IMLSession

void conversion_off ( iml_session_t *  s  ) 

Ends conversion (input processing).

Asks IIIMF to stop sending input events to us, notifies the current input method, and updates the GUI as necessary.

Parameters:
s current IMLSession
See also:
conversion_on()

void conversion_on ( iml_session_t *  s  ) 

Starts conversion (input processing).

Asks IIIMF to begin sending input events to us, notifies the current input method, and updates the GUI as necessary.

Parameters:
s current IMLSession
See also:
conversion_off()

void conversion_temp_off ( iml_session_t *  s  ) 

Temporarily suspends conversion (input processing).

Temporarily switches off input method, but does not ask IIIMF to stop sending input events to us. The GUI is updated to indicate input method is switched off. For example, this is used by the single Shift-key input toggle.

Parameters:
s current IMLSession
See also:
conversion_temp_on()

conversion_on()

conversion_off()

void conversion_temp_on ( iml_session_t *  s  ) 

Temporarily resumes conversion (input processing).

Temporarily switches on input method. Assumes IIIMF is already sending input events to us; no checking is done. The GUI is updated to indicate input method is switched on. For example, this is used by the single Shift-key input toggle.

Parameters:
s current IMLSession
See also:
conversion_temp_off()

conversion_on()

conversion_off()

void im_config_change ( iml_session_t *  s,
char *  imid,
char *  key,
char *  value 
)

IMConfigList* im_config_get ( iml_session_t *  s,
char *  imid 
)

void im_config_unispim ( iml_session_t *  s,
int  count_values,
int  unispim_values[] 
)

void tcsc_set ( iml_session_t *  s,
UnihanTCSCMode  tcsc 
)

Sets Traditional/Simplified Chinese conversion mode for current session.

Parameters:
s current IMLSession
tcsc the TC/SC conversion mode

void toggle_puncce ( iml_session_t *  s  ) 

Toggles Chinese/English punctuation mode.

Parameters:
s current IMLSession

void toggle_punctuation_keyboard ( iml_session_t *  s  ) 

void toggle_us_keyboard ( iml_session_t *  s  ) 

void toggle_width ( iml_session_t *  s  ) 

Toggles halfwidth/fullwidth mode.

Parameters:
s current IMLSession


Generated on Fri Sep 7 15:51:41 2007 for unihan-core-le by  doxygen 1.5.2