xklavier_config.h Source File

Main Page Modules Compound List File List Compound Members File Members

# xklavier_config.h

Go to the documentation of this file.

    00001
    00005 #ifndef __XKLABIER_CONFIG_H__
    00006 #define __XKLABIER_CONFIG_H__
    00007
    00011 #define XKL_MAX_CI_NAME_LENGTH 64
    00012
    00017 #define XKL_MAX_CI_DESC_LENGTH 192
    00018
    00019 #ifdef __cplusplus
    00020 extern "C"
    00021 {
    00022 #endif                          /* __cplusplus */
    00023
    00027   typedef struct _XklConfigItem
    00028   {
    00032     char name[XKL_MAX_CI_NAME_LENGTH];
    00033
    00037     char description[XKL_MAX_CI_DESC_LENGTH];
    00038   }
    00039   XklConfigItem, *XklConfigItemPtr;
    00040
    00049   extern void XklConfigInit( void );
    00050
    00054   extern void XklConfigTerm( void );
    00055
    00060   extern Bool XklConfigLoadRegistry( void );
    00061
    00065   extern void XklConfigFreeRegistry( void );
    00078   typedef void ( *ConfigItemProcessFunc ) ( const XklConfigItemPtr configItem,
    00079                                             void *userData );
    00080
    00087   typedef void ( *GroupProcessFunc ) ( const XklConfigItemPtr configItem,
    00088                                        Bool allowMultipleSelection,
    00089                                        void *userData );
    00090
    00096   extern void XklConfigEnumModels( ConfigItemProcessFunc func,
    00097                                    void *userData );
    00098
    00104   extern void XklConfigEnumLayouts( ConfigItemProcessFunc func,
    00105                                     void *userData );
    00106
    00113   extern void XklConfigEnumLayoutVariants( const char *layoutName,
    00114                                            ConfigItemProcessFunc func,
    00115                                            void *userData );
    00116
    00122   extern void XklConfigEnumOptionGroups( GroupProcessFunc func,
    00123                                          void *userData );
    00124
    00132   extern void XklConfigEnumOptions( const char *optionGroupName,
    00133                                     ConfigItemProcessFunc func,
    00134                                     void *userData );
    00148   extern Bool XklConfigFindModel( XklConfigItemPtr ptr );
    00149
    00156   extern Bool XklConfigFindLayout( XklConfigItemPtr ptr );
    00157
    00166   extern Bool XklConfigFindVariant( const char *layoutName,
    00167                                     XklConfigItemPtr ptr );
    00168
    00178   extern Bool XklConfigFindOptionGroup( XklConfigItemPtr ptr,
    00179                                         Bool * allowMultipleSelection );
    00180
    00189   extern Bool XklConfigFindOption( const char *optionGroupName,
    00190                                    XklConfigItemPtr ptr );
    00208   extern Bool XklConfigActivate( const char *model, const char *layout,
    00209                                  const char *variant, const int numOptions,
    00210                                  const char *options[] );
    00211
    00223   extern Bool XklConfigWriteXKMFile( const char *fileName, const char *model,
    00224                                      const char *layout, const char *variant,
    00225                                      const int numOptions,
    00226                                      const char *options[] );
    00229 #ifdef __cplusplus
    00230 }
    00231 #endif                          /* __cplusplus */
    00232
    00233 #endif