开源版的离线Evernote wxNote
本文导语: wxNote,主要是一个打造一款开源版的离线Evernote(如果以后条件允许也可能变成网络版)。 该程序使用C++/Qt编写,可跨平台运行。 下面是程序截图: wxNote分两个主要窗口: 第一个就是主要窗口,起到管理笔记本,笔记,...
wxNote,主要是一个打造一款开源版的离线Evernote(如果以后条件允许也可能变成网络版)。
该程序使用C++/Qt编写,可跨平台运行。
下面是程序截图:
wxNote分两个主要窗口:
第一个就是主要窗口,起到管理笔记本,笔记,编辑笔记等各种用途,
第二种窗口就是笔记编辑窗口,我在代码中称其为shadow窗口,它主要通过双击笔记列表中的单个笔记项来打开其专门的编辑窗口,主要目的是为了方便用户编辑当前笔记
源码地址:https://github.com/TongG/wxNote,欢迎对这个项目感兴趣的同学加入。
Windows二进制文件下载地址:https://sourceforge.net/projects/killevernote/files/?
好吧,考虑到GFW的强大,还是传了一个附件
程序的核心代码在:
:/wxNote/wxNote_Gui/wxNote_Window/MainWindowNormal.cpp
https://github.com/TongG/wxNote/blob/master/wxNote_Gui/wxNote_Window/MainWindowNormal.cpp中,
说这个文件中的代码是核心,是因为_MainWindowNormal类负责协调所有其他类之间的工作,该类派生自_AbstrackMainWindow类。
程序的全局部分在:
:/wxNote/wxNote_Global.cpp中https://github.com/TongG/wxNote/blob/master/wxNote_Gl
obal.cpp
想阅读程序源码的同学可以从这两个文件和他们对应的.h文件入手。
注意事项:
1.程序使用Qt5.1,4.x请自重。
2.程序界面纯手写,拖拽党请自重。
3.代码中包含大量C++11特性,低版本编译器请自重。
再说说我为什么要写这个程序吧。
2012年,我在清华大学上课的时候,有一天Evernote中国区(那时Evernote已经是一家10亿美元市值的公司,属于硅谷发展最快的公司之一,但是其中国分公司还很弱小)的总负责人谷懿和他的几个同事来到清华大学给Evernote做推广。
在会上,我问了谷懿一个问题,Evernote如此强大,实用,为什么只有Windows和Mac
OS版本(曾经有过Symbian,WinMobile,但现在只有一些流行OS的版本)呢?
她的回答是:”因为linux的界面不够友好,不符合Evernote开发的blablabla...”。
但是其实这个说法不太容易信服(估计她在敷衍我),个人猜想可能是因为linux的GPL的缘故吧。
后来用了linux一段时间(主要是离线状态),感觉没有Evernote很不习惯,linux的确有一些个人笔记软件,但是像Evernote这种形式的确实没遇到过(可能是鄙人孤陋寡闻)
所以决定自己动手开发一款,主要针对的是经常在离线状态下使用linux的同学(主要是因为我无力承受维护支持云端同步的服务器blablabla的各种开销)。
wxNote还有很多缺点,但我想这也正是开源存在的意义之一,GitHub的口号就是Build
software,better,together。所以我还是希望有兴趣的同学能够fork这个项目,一起开发,毕竟一个人的精力有限
高一还有30几天就要开学了,大家都知道高中的苦逼生活,写代码的时间可能就会变少了,所以求forker,求commiter。