Chinaunix首页 | 论坛 | 博客
  • 博客访问: 5557
  • 博文数量: 3
  • 博客积分: 130
  • 博客等级: 入伍新兵
  • 技术积分: 40
  • 用 户 组: 普通用户
  • 注册时间: 2009-06-10 22:42
文章分类
文章存档

2010年(1)

2009年(2)

我的朋友
最近访客

分类: LINUX

2009-06-10 23:33:16

背景:
总算等来了stardict-3.0.1的发布,该版本确实增加了许多关于热键的自定义管理,在打开主界面的时候就可以看见,有很多关于热键的说明。但是,用惯了谷歌金山词霸,个人有使用热键(比如F2)打开取词主界面的习惯(注意:这里F2将交替打开/关闭取词主界面)。

而这里的stardict-3.0.1,打开取词主界面的热键是可以修改的(默认是Ctrl+Alt+Z),关闭取词主界面是固定的组合键(Alt+X)。这个小细节让我感到不很习惯。于是,决定将它稍作修改。

系统:
FC9

源码包:
参考:

解决方案:
File:stardict.cpp
添加:

#define SHOW 1 /*SHOW:主界面打开;HIDE:主界面收起*/
#define HIDE 0
int mw_state = SHOW;


File: globalhotkeys.cpp
添加:

#define SHOW 1 /*SHOW:主界面打开;HIDE:主界面收起*/
#define HIDE 0
extern int mw_state;


修改:

void ShowMainwindow()
{
    /*******************Here is what has been changed*******************/
   
    if (mw_state == SHOW)
    {
       
        gpAppFrame->oDockLet->minimize_to_tray();
        mw_state = HIDE;
        return;

    }
   
    gpAppFrame->oDockLet->maximize_from_tray();
    mw_state = SHOW;

/******************************************************************/

    if (gpAppFrame->oTopWin.get_text()[0]) {
         //so user can input word directly.


        gtk_widget_grab_focus(gpAppFrame->oMidWin.oTextWin.view->widget());
    } else {
    .......
    .......
    .......
}


重新编译后,设置打开的热键(比如F2),这样使用该热键便可以让主界面交替打开/收起。
阅读(558) | 评论(0) | 转发(0) |
0

上一篇:没有了

下一篇:windows下subversion安装

给主人留下些什么吧!~~