Notepad++源码概览

转载自:http://blog.163.com/mnzn2531@126/blog/static/1683330820101161510987/

文件夹:

cursors  是鼠标手势

icons 是一些图标

MISC 包括一些工具,比如crc,异常的实现,进程的封装等等

ScitillaComponent    是一个重要的文件夹,里面包含了对Scitilla控件的封装,是我参考使用Scitilla的主要地方,不过里面的文件的确很多

TinyXml 不用说了,因为notepad++是用xml作配置的

tools     包括一些接入windows explorer的工具

WinControls   基本上把notepad++里要用到的控件封装了一个遍

 

在文件夹里剩下的都是notepad++的主要框架流程代码了。程序入口在winmain.cpp里,程序的框架类是Notepad_plus,程序的主窗口类是Notepad_plus_Window,主窗口用组合的方法包含了框架类的实现,而框架内持有主窗口的指针。

 

主框架的初始化在NppBigSwitch.cpp的

LRESULT Notepad_plus_Window::runProc(HWND hwnd, UINT Message, WPARAM wParam, LPARAM lParam)函数里。而Notepad_plus就是notepad++所有逻辑的分派基地和控件的容器。

类图:

posted @ 2013-10-19 13:40  Fly Hawk  阅读(1003)  评论(0编辑  收藏  举报