Codejie's C++ Space

Using C++

LingosHook:Memory Daily Preview


    昨天Memory Daily功能应该说就OK了,但到现在才把它融合到LingosHook中,原因很简单--冲突。虽然添加TriggerObject作为Adapter解耦各对象,但TriggerObject设计不周,缺少“被触发事件”的来源数据等信息,导致有些地方触发起来会产生冲突。简单举个例子,删除一个单词,那么在Index和在MemoryDaily对象中删除应该触发一样的操作--在数据库中、Tag、MemoryDaily对象、界面等中删除。但由于不同对象删除方式的不同,比如数据库和某些对象删除只需要ID,而在某些界面删除却需要Word本身,像ListBox对象。这样就导致了冲突的发生,不得不写两个OnWordRemove()触发函数,而且其中调用的流程还不一样,看起来非常不爽,再修改很容易犯错误的。想来,如果在触发时,能传递更多的信息,比如“触发源”等,这样仅需要一个OnWordRemove(),并在其内进行不同调用,应该就可以了。所以,TriggerObject中的函数修改一下可能比较好。


void OnWordRemove(int worid, const wxString& wordid);

----->

void OnWordRemove(int orig, int worid, const wxString& wordid);

    如果不是这个问题,今晚应该可以上传的,但现在只能明天再说了,因为怎么也要自己run一下试试啊。。。OK,今天先来个剧透吧,只上图,请各位猜猜MemoryDaily怎么用的,嘿嘿。。。



posted on 2010-04-01 00:28 codejie 阅读(273) 评论(0)  编辑 收藏 引用 所属分类: C++轮子精神


只有注册用户登录后才能发表评论。
网站导航: 博客园   IT新闻   BlogJava   知识库   博问   管理


公告

Using C++

导航

统计

留言簿(73)

随笔分类(513)

积分与排名

最新评论

阅读排行榜

评论排行榜