2008-01-15

MO-patches for kscope 1.6.1

MO-patches for kscope 1.6.1
2008-01-12 07:44:18

kscope 1.6.1 MO-patches(MO means My Own,注:这只是我个人对kscope的改动,仅限本人使用)

2008.01.12:
1. 默认主界面右边的File type Column我实在看不出来有什么存在的必要,将其删除;
* 程序界面是用QT写的,代码清晰简洁,也使得改动比较容易;
* 代码里面对List View的Column Index一律用数字而不是macro,我添加了一个头文件common_ui.h用来消除这些问题;

2. Total Tag List里面的Type column也是多余的,因为Name前面的小图标已经标识出Type了,应该保持和Source Insight那样简洁就可以了;

3. Create Project->File Types,默认的File Types只有.c和.h,我每次都要把右边所有的其他Types都手动添加过来,也没什么Add All的选项,很麻烦;我准备先改成 - 默认就包含全部Types,以后可以靠考虑加一个"Add All" button,省得一下一下的点;

2008.01.13:
关闭Kscope之前打开了n个文件,那么重新打开kscope的时候就会把那n个文件重新打开,我觉得没必要,因为我往往关注的就是我最后打开的那一个文件;
双击file list会添加一个Tab来显示那个文件,我也觉得没必要,因为我如果想切换到前面的文件的话我也会倾向于使用Ctrl-Tab的快捷键来实现而不是在界面上显示一排的Tab;
总而言之,kscope的multi-tab的界面风格并不适合我
所以我准备分阶段做如下改动:
* Step 1. Keep only one tab; Implement a pool for opened files, and only the active one is visable;
* Step 2. Switch to other file view by using Ctrl+Tab to improve performance;
* Step 3. Remove EditTabs class
* Step 4. Add Shift+F8 functionality as SI;

2008.01.14 Kscope的线程
* Kscope里面只有一个线程:DirScanner,从QThread继承下来的 - Scans a directory for files matching a given pattern, using a separate thread.是不是可以考虑增加几个线程以增强界面的使用感受
* 用Valgrind或其他工具对Kscope进行分析,看看是不是有memory leak,看看是不是有影响性能的关键调用以便优化


No comments: