Example #1
0
const char *
get_imlist(const char *args)
{
    int i, nr;
    uim_context uc;

    if (!vp_iobuf_get_args(iobuf, args, ""))
        return vp_iobuf_return(iobuf);

    uc = uim_create_context(NULL, "UTF-8", NULL, NULL, NULL, NULL);
    if (uc == NULL)
        return "uim_create_context error";

    /* [method, langs, desc, is_default] */
    nr = uim_get_nr_im(uc);
    for (i = 0; i < nr; ++i) {
        vp_iobuf_put_str(iobuf, uim_get_im_name(uc, i));
        vp_iobuf_put_str(iobuf, uim_get_im_language(uc, i));
        vp_iobuf_put_str(iobuf, uim_get_im_short_desc(uc, i));
        vp_iobuf_put_num(iobuf, (strcmp(uim_get_im_name(uc, i),
                                        uim_get_default_im_name("")) == 0));
    }

    uim_release_context(uc);

    return vp_iobuf_return(iobuf);
}
Example #2
0
QStringList UimInputContextPlugin::createLanguageList( const QString &key ) const
{
    if ( key == "uim" )
        return QStringList() << "ja" << "ko" << "zh" << "*";

#if UIM_QT_LIST_SUBIM_AS_QTIM
    uim_context tmp_uc = uim_create_context( 0, "UTF-8",
                         0, 0, uim_iconv, 0 );
    int nr = uim_get_nr_im( tmp_uc );
    if ( uimReady )
    {
        for ( int i = 0; i < nr; i++ )
        {
            const char *name = uim_get_im_name( tmp_uc, i );
            const char *lang = uim_get_im_language( tmp_uc, i );

            if ( key == QString( "uim-" ) + name )
            {
                // ":" separated languages for future extension
                QStringList langs = QString( lang ).split( ':' );
                return langs;
            }
        }
    }
    uim_release_context( tmp_uc );
#endif

    return QStringList( "" );
}
Example #3
0
QStringList UimInputContextPlugin::createImList() const
{
    QStringList lst;

    // default
    lst.append( "uim" );
#ifdef ENABLE_DEBUG
    qDebug( "name = uim" );
#endif

#if UIM_QT_LIST_SUBIM_AS_QTIM
    uim_context tmp_uc = uim_create_context( 0, "UTF-8",
                         0, 0, uim_iconv, 0 );
    int nr = uim_get_nr_im( tmp_uc );
    if ( uimReady )
    {
        for ( int i = 0; i < nr; i++ )
        {
            const char *name = uim_get_im_name( tmp_uc, i );
            QString qs( name );
            qs = "uim-" + qs;
            lst << qs;

#ifdef ENABLE_DEBUG
            qDebug( "name = %s", qs.toUtf8().data() );
#endif
        }
    }
    uim_release_context( tmp_uc );
#endif

    return lst;
}
Example #4
0
void
QUimInfoManager::initUimInfo()
{
    info.clear();

    uim_context tmp_uc = uim_create_context( 0, "UTF-8", 0, 0, 0, 0 );
    struct uimInfo ui;
    int nr = uim_get_nr_im( tmp_uc );
    for ( int i = 0; i < nr; i++ )
    {
        ui.name = uim_get_im_name( tmp_uc, i );
        ui.lang = uim_get_im_language (tmp_uc, i );
        ui.short_desc = uim_get_im_short_desc( tmp_uc, i );

        info.append( ui );
    }
    uim_release_context( tmp_uc );
}
Example #5
0
static void
init_agent()
{
  uim_context uc;
  int i, nr;
  if (uim_init() == -1) {
    printf("failed to init\n");
    exit(EXIT_FAILURE);
  }
  /**/
  uc =uim_create_context(&default_context,
			 "EUC-JP", NULL, NULL,
			 uim_iconv,
			 commit_cb);
  nr = uim_get_nr_im(uc);
  for (i = 0; i < nr; i++) {
    printf("%s\n", uim_get_im_name(uc, i));
  }
  uim_set_preedit_cb(uc, clear_cb, pushback_cb, update_cb);
  default_context.uc = uc;
  default_context.next = NULL;
}
Example #6
0
File: main.cpp Project: dai-vdr/uim
static void
get_uim_info()
{
    int res;

    res = uim_init();
    if (res) {
	printf("Failed to init uim\n");
	exit(1);
    }
    uim_context uc = uim_create_context(NULL, "UTF-8", NULL,
					NULL, uim_iconv, NULL);

    struct UIMInfo ui;

    int nr = uim_get_nr_im(uc);
    for (int i = 0; i < nr; i++) {
	ui.name = strdup(uim_get_im_name(uc, i));
	ui.lang = strdup(uim_get_im_language(uc, i));
	ui.desc = strdup(uim_get_im_short_desc(uc, i));
	uim_info.push_back(ui);
    }
    uim_release_context(uc);
}