LinuxSir.cn,穿越时空的Linuxsir!

 找回密码
 注册
搜索
热搜: shell linux mysql
查看: 1404|回复: 3

Fcitx代码中的一点问题

[复制链接]
发表于 2008-1-15 19:24:31 | 显示全部楼层 |阅读模式


  1. [color=red]if (!bIsInLegend)[/color] {
  2.                             pstr = im[iIMIndex].GetCandWord (1);
  3.                             if (pstr) {
  4.                                 strcpy (strStringGet, pstr);
  5.                         [color=red]if (bIsInLegend)[/color]
  6.                             retVal = IRV_GET_LEGEND;
  7.                                 else
  8.                             retVal = IRV_GET_CANDWORDS;
  9.                             }
  10.                     else if (iCandWordCount)
  11.                         retVal = IRV_DISPLAY_CANDWORDS;
  12.                     else
  13.                         retVal = IRV_TO_PROCESS;
  14.                 }
复制代码

在ProcessKey(ime.c)中出现过好几次,但是有一个逻辑上的疑问,
在 if (!bIsInLegend)的{}代码块中再去检验if (bIsInLegend),是不是有点多此一举呀.代码摘自fcitx-3.4.2
发表于 2008-1-16 22:34:41 | 显示全部楼层
im[iIMIndex].GetCandWord (1)
上面这个函数调用会改变bIsInLegend的值
回复 支持 反对

使用道具 举报

 楼主| 发表于 2008-1-17 07:38:29 | 显示全部楼层
呵呵,谢谢提醒哟,我回头再看看.
回复 支持 反对

使用道具 举报

发表于 2008-1-22 16:56:20 | 显示全部楼层
BS,
装了个Ubuntu7,SCIM里装pinyin说not available,
装 gcin却是拼音一团糟;
装个fcitx,什么东西都要自己配置,还要去找手册,5555
回复 支持 反对

使用道具 举报

您需要登录后才可以回帖 登录 | 注册

本版积分规则

快速回复 返回顶部 返回列表