Codejie's C++ Space

Using C++

LingosHook:进展


    刚刚把LingosHook的代码合成在一起,除了Tag还不能显示外,该好的都好了。明天开始添加Tag的过滤显示功能,可能还要支持一个时间的过滤功能,还要counter的。。唉,越来越多~
    新的版本中新增了Tag的功能,分离了词典结果和数据存储,最主要的是在处理对象间,已经处理和显示对象间添加一个Adapter--TriggerObject,这样有效分离了对象间的耦合。TriggerObject可以有效地替换常有的回调函数方式,这样便于理解,也不易出错了。
    下面是Tag的管理界面。


    下面是TriggerObject的头文件,一看就明白其意义和目的了。回头无聊了再画画关系图了~

class CTriggerObject
{
public:
    CTriggerObject();
    
virtual ~CTriggerObject() {}

    
void AttachDictObject(CDictObject* obj);
    
void AttachDisplayObject(CDisplayObject* obj);
    
void AttachTagObject(CTagObject* obj);
public:
    
void OnHTMLTrace(const wxString& html);

    
void OnWordLoad(int wordid, const wxString& word);
    
void OnWordSave(int wordid, const wxString& word);
    
void OnWordUpdate(int wordid, const wxString& word);
    
void OnWordDataGet(const TWordData& data);
    
void OnWordFound(int wordid, const wxString& word);
    
void OnResultSave(const TWordResultMap& result);
    
void OnResultSave(int wordid, const CDictParser* dict, const CDictResult& result);
    
void OnResultGet(int wordid, const CDictParser* dict, const CDictResult& result);
    
void OnWordRemove(int wordid);
    
void OnWordResultGetOver(int wordid, const TWordData& data);
    
    
void OnTagLoad(int tagid, const CTagObject::TRecord& record);
    
void OnTagDefLoad(int tagid, const CTagObject::TRecord& record);
    
void OnTagInsert(int tag, const CTagObject::TRecord& record);
    
void OnTagUpdate(int tagid, const CTagObject::TRecord& record);
    
void OnTagRemove(int tagid);
    
void OnTagIndexInsert(int tagid, int wordid, const CTagObject::TRecord& record);
    
void OnTagIndexRemove(int tagid, int wordid, const CTagObject::TRecord& record);
    
void OnTagFound(int wordid);
    
void OnTagGet(int tagid, int wordid);
protected:
    CDictObject
* _objDict;
    CDisplayObject
* _objDisplay;
    CTagObject
* _objTag;
}
;

posted on 2010-03-22 23:39 codejie 阅读(220) 评论(0)  编辑 收藏 引用 所属分类: C++随笔而已


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


公告

Using C++

导航

统计

留言簿(73)

随笔分类(513)

积分与排名

最新评论

阅读排行榜

评论排行榜