Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

编译说明 #2

Open
wants to merge 97 commits into
base: master
Choose a base branch
from
Open
Changes from all commits
Commits
Show all changes
97 commits
Select commit Hold shift + click to select a range
694bc7e
2015-08-29 21:16:57 忽略 build 目录(中间目录)。
cexer Aug 29, 2015
94feb02
2015-08-29 21:22 合并从 SOUI 仓库获取的修改。
cexer Aug 29, 2015
fead898
2015-08-29 22:14 修改 Javascript 绑定相关的接口。
cexer Aug 29, 2015
30001b4
2015-08-29 23:56 修正 jsSet、jsGet 始终访问的是第一次调用时的属性的问题。
cexer Aug 29, 2015
048c53d
2015-08-30 01:19 增加 webBrowser 拖放加载 HTML 文件的功能。
cexer Aug 29, 2015
65ba321
2015-08-30 01:26 调整 Document/history.md 记录日志的顺序,按时间从新到旧。
cexer Aug 29, 2015
191c923
2015-08-30 01:23 修正 HTML 中图片地址包含中文时无法显示的问题。
cexer Aug 29, 2015
389e4e1
2015-08-30 01:36 增加 Document/utility.md 记录一些零碎信息。
cexer Aug 29, 2015
fd41b0b
2015-08-30 01:40 修正 wkeLoadURL 加载中文路径 HTML 文件失败的问题。
cexer Aug 29, 2015
a86fc7e
2015-08-30 02:00 调整 Document/history.md 标题级别(之前太大)。
cexer Aug 29, 2015
8fb791a
2015-08-30 22:59 合并 zhanjx1314 实现的获取 cookie 的功能。
cexer Aug 30, 2015
f740493
2015-08-30 23:24 合并 zhanjx1314 实现的 POST 方式加载页面的功能。
cexer Aug 30, 2015
aca046d
2015-08-31 02:07 修改 Document/history.md 的记录格式。
cexer Aug 30, 2015
0b8f369
2015-08-31 02:13 修改 Document/history.md 的标题级别。 …
cexer Aug 30, 2015
03cf5e2
2015-09-03 10:17 将回调接口合并到一个接口 wkeClientHandler 当中。
cexer Sep 4, 2015
4d74e9b
2015-09-03 10:37 增加项目规范、根据规范调整命名。
cexer Sep 4, 2015
3811bd7
2015-09-04 19:53 增加从命令行提供的URL进行加载的功能。
cexer Sep 4, 2015
a15f839
2015-09-04 19:56 实现 <input type="file"/> 文件选择功能。
cexer Sep 4, 2015
70522a4
2015-09-04 20:40 修改项目 readme 文件。
cexer Sep 4, 2015
231e79c
2015-09-07 00:23 两处小调整。
cexer Sep 6, 2015
638b71b
2015-09-17 01:28 增加增强的初始化功能,可进行全局性地配置,目前仅支持代理配置。
cexer Sep 17, 2015
8a44319
2015-09-18 20:01 增加全局配置函数,当前只支持代理配置。
cexer Sep 18, 2015
a98db88
2015-09-18 20:28 增加代理类型socks4、socks4a、socks5、socks5h的支持。
cexer Sep 18, 2015
7af0e7b
2015-09-23 02:02 修正JavaScriptCore当中脚本错误有可能导致后面调用逻辑异常的问题。
cexer Sep 23, 2015
7836cca
2015-09-28 21:06 合并 zhanjx1314 实现的设置 UserAgent 的功能。
cexer Sep 28, 2015
48d196e
2015-09-28 22:01 修改 wke 实现中用到的 IWebView 为 CWebView。
cexer Sep 28, 2015
79712d8
2015-09-28 22:10 修改 wkeBrowser 对 wke 的调用为 C 接口调用。
cexer Sep 28, 2015
5769d62
2015-09-28 22:17 提交 Release 版的目标文件。
cexer Sep 28, 2015
0fc90e8
2015-09-29 01:39 整理 wke 内部结构。
cexer Sep 28, 2015
3e55c11
2015-09-28 01:58 修改 wkeString 字符串相关接口。
cexer Sep 28, 2015
de7957c
2015-09-29 02:20 去掉 IWebView 接口。
cexer Sep 28, 2015
b1307cb
2015-09-29 09:10 增加两个 C 导出函数 wkeRepaintIfNeed 和 wkeGetViewDC 。
cexer Sep 29, 2015
d8a59c7
2015-09-29 15:32 去掉 wke 项目中的 StringTable 依赖。
cexer Sep 29, 2015
72e799e
2015-09-29 23:07 修正去掉 StringTable 依赖之后的编译问题。
cexer Sep 29, 2015
3b172c3
2015-09-30 16:36 规范 wke 回调接口。
cexer Sep 30, 2015
c8403d8
2015-09-30 17:21 实现 alert、confirm、prompt 回调。
cexer Sep 30, 2015
05b16c1
2015-10-04 16:11 实现打开链接的控制回调。
cexer Oct 4, 2015
5cc91aa
2015-10-04 17:11 修改实现代码中所有成员变量以 `m_` 开头 。
cexer Oct 4, 2015
7b78650
2015-10-04 22:27 实现打开新窗口的控制回调 。
cexer Oct 4, 2015
3406578
2015-10-05 00:56 修正 wkeNavigationType 的值。
cexer Oct 4, 2015
e6b1977
2015-10-05 01:30 增加地址加载、文档解析状态的回调接口。
cexer Oct 4, 2015
3add944
2015-10-06 14:18 增加基于 wkeWebView 的带窗口、消息处理、绘制的窗口/控件接口。
cexer Oct 6, 2015
5ec972d
2015-11-24 23:31 增加 BrentHuang 完成的 vs2010 的工程文件。
cexer Nov 24, 2015
a40ccef
2015-11-24 23:35 修正 wkeBrowser 无法访问百度的问题。
cexer Nov 24, 2015
53c00d2
2015-11-24 23:38 去掉 wke 中对 std::string 的引用。
cexer Nov 24, 2015
d07d4b1
2015-11-24 23:51 修改 ChangeLog 更新日志的路径。
cexer Nov 24, 2015
ed2786e
2015-11-25 13:03 增加 wkeLoad/wkeLoadW 智能加载接口。
cexer Nov 25, 2015
aecd1cd
2015-11-25 21:20 增加基于 BrentHuang 完成的 vs2013 工程文件。
cexer Nov 25, 2015
3129d9d
2015-11-25 22:28 增加基于 vs2008 工程文件 的 vs2005 工程文件。
cexer Nov 25, 2015
8eb85e1
2015-11-26 10:07 修正 wkeBrowser 的 _WIN32_WINNT 导致找不到符号的问题。
cexer Nov 26, 2015
0c33167
2015-11-26 10:26 增加 vs2010.bat 等批处理用于打开工程,避免找不到 nmake 的情况。
cexer Nov 26, 2015
3cf1dc9
2015-11-26 20:23 修正 wke 中 wkeSimpleStringT 拷贝宽字符串只拷一半的问题。
cexer Nov 26, 2015
6e4a35f
2015-11-27 21:56 提交编译好的二进制文件。
cexer Nov 27, 2015
737cfec
2015-12-16 16:38 增加控制台消息回调。
cexer Dec 16, 2015
9ceebb4
2015-12-19 17:58 wkeBrowser 中增加使用 jsFunction 绑定函数的示例。
cexer Dec 19, 2015
a706ab7
2015-12-19 23:03 修正 wke 无法正确加载 windowed 插件的问题。
cexer Dec 19, 2015
c800bbb
2015-12-20 15:37 明确定义 wke 接口的调用约定为 cdecl。
cexer Dec 20, 2015
fb67402
2015-12-20 15:37 去掉 wke 接口定义的平台依赖。
cexer Dec 20, 2015
7a1c092
2015-12-20 19:10 修改 wkeOnCreateView 函数。
cexer Dec 20, 2015
722e63c
2015-12-23 12:47 修改插件查找机制支持自动加载 plugins 目录下非 np 开头的插件。
cexer Dec 23, 2015
5e4d003
2015-12-24 20:27 临时解决 wke 的 vs2010 工程 Debug 模式链接失败的问题。
cexer Dec 24, 2015
642a49c
2015-12-25 20:59 修正 wkeBrowser 中拦截 _blank 导致无法打开链接的问题。
cexer Dec 25, 2015
0440c30
2015-12-25 23:44 实现几个 ChromeClient 回调,使 window.close、window.blur、wind…
cexer Dec 25, 2015
6549499
2015-12-25 23:44 增加 wkeOnDocumentReady 回调参数,以区分 iframe 的加载成功事件。
cexer Dec 29, 2015
f3802ad
2015-12-30 00:23 修正 wkeWebWindow 网页中编辑框输入法不跟随光标的问题。
cexer Dec 29, 2015
823bfd1
2016-03-09 09:09 增加 Document/todo.md 记录平时积累的需求、问题。
cexer Mar 9, 2016
b932d01
2016-03-10 21:24 增加查找插件时同时在工作目录的 plugins 目录下查找。
cexer Mar 10, 2016
883c28c
2016-03-10 22:14 增加 cookie 操作接口。
cexer Mar 10, 2016
aa1acb6
2016-03-10 23:29 优化 wkexe、增加命令行直接加载 HTML 文本支持。
cexer Mar 10, 2016
1b06cef
2016-06-22 14:16 修正 CWebWindow::resize、CWebWindow::moveToCenter 的 WS_…
cexer Jun 22, 2016
d52d0da
2016-06-22 17:40 实现默认 window.prompt。
cexer Jun 22, 2016
76c9e61
2016-06-22 20:15 使用蚂蚁实现的 websocket 。
cexer Jun 22, 2016
d551852
提交release版的dll。
cexer Jun 22, 2016
4046cbe
2016-06-23 12:13 修正调用 WebCore::DatabaseTracker::setDatabaseDirectoryP…
cexer Jun 23, 2016
4e90ee5
2016-06-23 17:46 使用群里蚂蚁的方法优化了绘制,妈妈再也不用担心 wke 绘制卡顿了。
cexer Jun 23, 2016
d55775f
2016-06-23 17:55 修改版本号为 1.2.1.1。
cexer Jun 23, 2016
1c7dbe6
2016-06-24 12:05 规范命名、类型定义。
cexer Jun 24, 2016
eae27f1
2016-06-24 12:05 规范JS接口,增加 wkeJSAddRef、wkeJSReleaseRef 。
cexer Jun 24, 2016
ca3b5bf
2016-07-28 23:37 项目根目录增加 FAQ 文档。
cexer Jul 28, 2016
8de302d
2016-07-28 23:58 修改 FAQ 文档。
cexer Jul 28, 2016
96630e3
2016-07-28 00:04 将 FAQ 直接放到 readme.md 当中。
cexer Jul 28, 2016
675f0a2
2016-07-28 00:18 修改 readme.md 排版。
cexer Jul 28, 2016
c1d5ce0
2016-07-28 00:23 修正 readme.md 中 FAQ 的链接问题。
cexer Jul 28, 2016
0c3712f
2016-07-28 01:48 readme.md 中增加贡献者名单。
cexer Jul 28, 2016
be320f3
2016-07-28 01:57 修改 readme.md 一些语法问题。
cexer Jul 28, 2016
38562f0
2016-07-29 22:47 在 readme.md 中添加编译指南、一条 FAQ。
cexer Jul 29, 2016
c63d75f
2016-08-01 13:23 版本 1.2.1.2 使用 libcurl 7.50,修正 HTTPS 问题。
cexer Aug 1, 2016
0392481
2016-08-03 11:03 版本 1.2.1.3 处理 WM_SETCURSOR 消息,修正编辑框当中光标闪烁的问题。
cexer Aug 3, 2016
5de24fc
2016-08-03 11:59 readme.md 中增加了使用 git 同步更新代码的方法说明。
cexer Aug 3, 2016
58d76e6
2016-08-03 12:07 readme.md 细节调整。
cexer Aug 3, 2016
c5c063b
2016-08-03 12:28 readme.md 中去掉 vs2015 工程相关描述,现在还没有 vs2015 工程。
cexer Aug 3, 2016
0999b57
2016-11-09 10:53 修正更新 libcurl 之后 wkeSetFileSystem 无效的问题。
cexer Nov 9, 2016
ddc6e87
2018-05-25 00:27 修正 skeSetFileSystem 失效问题。
cexer May 24, 2018
e13af98
添加遗漏的curl、openssl相关库
cexer May 31, 2018
8fb825d
添加文档
cexer Dec 30, 2018
017c4d6
添加文档
cexer Dec 30, 2018
b4c1843
人物剪影影增加 Redrains、蚂蚁、BlzFans
cexer Dec 30, 2018
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
5 changes: 5 additions & 0 deletions .gitignore
Original file line number Diff line number Diff line change
@@ -2,3 +2,8 @@
*.user
*.ncb
*.suo
/build/
*.ipch
*.sdf
*.opensdf
*.cache
478 changes: 478 additions & 0 deletions ChangeLog.md

Large diffs are not rendered by default.

2 changes: 0 additions & 2 deletions ChangeLog.txt

This file was deleted.

24 changes: 24 additions & 0 deletions Document/One Day at WebUI Group in year 2018.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,24 @@
WebUI 群2018年的普通一天
================

2018年的普普通通的一天的早上,天气不冷不热,空气不好不坏,黄历所载,这一天也没有什么特别的吉凶趋避,日月星辰各安其份。WebUI群里已有不少人,聊着明星八卦,经济股市。

中午时分,夏老师来到群里。夏老师是经过人生跌宕、遍尝过世间甘苦的老司机,其人生阅历极其丰富,而家庭势力十分庞大,遍布了共产主义和资本主义国家的各个阶层。再加上其小到婚姻情感、大到国际政治、闲谈扯谈的明星八卦、学术探讨如物理化学都能侃侃而谈,对百姓民生、国家发展也有深刻的见解,群员们一度怀疑他有可能是个间谍。今天他来到群里也不说话,先发了一张十分暴露的性感美女图片,斜靠在自家产的紫檀红木椅上,左手搭着龙头扶手,右手食指轻轻弹掉烟头的灰烬,看着群里的愣头年轻们对着美女图片发出饥渴地嗷叫,只是呵呵地微笑着。

这时候群主忙过了他的事,也来到群里。群主是一名一事无成的中年人,网传他是70后,可是他身上却缺少那种经历过红尘坎坷的成熟稳重,反而有些不切实际的理想主义、完美主义、浪漫主义,喜欢看书、看电影,甚至喜欢海绵宝宝这样童真的东西。群主进到群里,在攒动的人头中一眼就看到了那张暴露的美女图片,赶紧冲过去一把扯下来,抹一抹脑门上的汗,一边责怪道:“你们又在偷偷害我!”,夏老师叭了一口烟回道:”我就知道群主不喜欢女的“,群里的人发出一阵哄笑。群主也不争辩,面对那些饥渴的愣头年轻们义正严辞地批评道:“还能不能追求点更高的人生价值了?”,说完转身舔了舔口水,小心地把美女图片卷起来揣进怀里,用手轻轻拍拍确定放好了,又转过身说道:“你们呀,一个个的工作不饱和。我去工作了”,然后带着掩饰不住的满足的微笑出去了。

群主出去不久,又有一个人也来了。此人一只脚刚踏进门,群里所有人都觉得哪里不对了。喝茶打牌的、聊天扯谈的,都突然感觉群里的空气中弥漫着一种说不清楚的压力,众人也不知道发生了什么,好似有灭顶之灾将至,都停着手上的动作,僵在那里也不敢作声。有大胆一点的人,额头冒着汗,吞一吞口水,侧着眼睛硬着头皮慢慢地转头往门口看。这人往门口一看,紧绷的神经一下子放松下来,颤抖着声音大声道:”哈哈!没事了没事了!是扫地!“,虽是哈哈地说着,但是表情狰狞,余悸未消,好像刚从噩梦惊醒一般。大家好一会儿才平复了情绪,群里才又恢复了喧闹。扫地进到群里,推一推鼻上的眼镜,照常和大家谈笑风声起来。原来此人江湖人称扫地,是WebUI圈的知名的高手,其年少即以逆向功力扬名看雪,近几年来潜心修炼mb神功,已经隐隐然有开宗立派之象,其mb神功精纯,已经到天人一体的境界,因此他一只脚踏进门,大家就感觉到了他不经意间的气场压迫。

扫地进群的时候,众人都在气场压迫之下如临大敌,角落里却有一个人看书的人始终自顾地执卷轻笑,丝毫不受影响。此人坐在角落里,白衣白裙,脸戴面纱,齐肩秀发,头发上束了条银带,身型婀娜,一看就是位女子,发上银带被窗外照进的阳光一映,更是熠熠生光。从身形和装束上看,这位女子方当妙龄,最多十七八岁,年纪虽轻,却又在举手投足间又透着端丽秀雅,有一种说不清楚的庄重感。她虽是WebUI群的常客,但极少与人说话,每次都在角落里独坐看书,所以也没人和她搭讪,都不敢唐突打扰,更没人见过她的面纱之后的真容,只知道她叫 Pamela。只有扫地和群主偶尔唤她萌弟,与她谈笑。

慢慢地人们都去假装工作了,群里人渐渐少了,显得有点冷静。沉寂了一会儿,突然出现一声惊呼,“那么多公司裁员我才知道,为什么裁员好奇怪的事情”,只见这人整个呈土豆的形状,只有一条眉毛,眼睛很随意地长在额头两边,因吃惊而张大的嘴巴周围有些稀疏的胡渣子,他紧皱着眉头,像是遇到了什么吃惊又难以理解的事情。他左手掐着一支烟,那烟刚被抽过一口,两缕白丝从烟头缓缓上升。等了好一会儿,也没人回应他。此人是群主施展十级甄嬛技能,把他从隔壁群挖过来的,人称Hello帝,是以一己之力撑起一个群的人,无数次拯救Thinking in ReDUI群于冷清将死之境。见无人回应,他继续长大嘴巴吃惊道:“永无止境我觉得很好看为什么不拍了好奇怪的事情”,“银行为什么不用nodejs好奇怪的事情”……,在他的一声声惊呼下,群里终于又热闹起来,那些打瞌睡的、装死的、假装工作很忙的,都又进来高谈阔论起来。

大家胡乱地闲扯哄笑,扯着扯着渐渐地都被吸引到了一个人身边,大家都伸头探脑地围着他听他说着什么。这人叫做兴国软件网,一身黑衣,劲装结扎,身形瘦削,眼以下都蒙着面,但是左脸上有一道粗厉的刀疤,从嘴角直到眼角,即使蒙面也遮掩不住。整个人一副精悍之气,一看就是飞檐走壁,吃江湖饭的好汉。他侧身坐着,右脚踏在旁边的一只凳子上,拎着酒壶仰头畅饮一口,一手指点着面前众人,一边说着自己从前行走江湖见过的奇人异事。Hello帝不时发出“怎么会这样好奇怪的事情”、“感觉很牛B的感叹。

这边大家成群结党地扯谈哄笑,却有一人站在墙边仰头仔细看着墙上的人画,完全不为吵闹所动。只见他约莫二十岁年纪,头戴伦巾,手上拿着一卷书,背在身后,身披一件蓝色长衫,虽然穿着素简,却透出一份俊雅。他正是闻名江湖的 Redrains 少侠,他年纪虽轻但却言行稳重,虽然年少扬名,但却仍然谦虚向学,虽然常在群里,也是极少说话,从不和人谈笑,只偶尔在有人遇到难题的时候出来,帮人指点解惑。

左墙上挂着一列人画,从左至右,一共有七八副。最左边一副人画似乎被人破坏过,画上的人像和文字都模糊不清,但是既然排最左边,想必是来历不凡。第二副画,人物也很模糊,但文字很清晰,Redrains 仔细看那画上文字,“BlzFans。BlzFans 是 wke 项目的奠基者。此位大侠功力深不可测然而为人极低调,将 wke 项目甩给开源界之后,从容离开去实现自己更高的人生价值了,挥一挥衣袖,不带走一声膜拜。感谢他的努力,如今我们除了在他开凿的道路上逶迤前进,也希望有一天他能够再次回到 WebUI 的队伍中来,带我们直接飞往 WebUI 技术的巅峰。”,Redrains 知道 wke 的份量,忍不住点头赞叹。

他又跳到第三副人画,画上却是一只巨大的蚂蚁长着人头。文字写着“蚂蚁大师。蚂蚁大师是曾经 WebUI 群的中坚技术力量,久经杀场,经验丰富,上能架构集群,下能逆向驱动。蚂蚁大师不仅解决了困扰我们已久的 wke 绘制慢的问题,还在 wke 上实现了人民呼声很高的 websocket 功能,还身怀 ewe 神功,其真实功力深不可测。只可惜,2018 年蚂蚁大师已久无音讯。今年国家动荡,数次扫黄打非、打击传销,江湖险恶,蚂蚁大师可能已遭不测”。看到这里,Redrains 只得摇头感叹。

Redrains 少侠看了好一阵墙上的人画了,时而点头赞叹,时而颌首深思,时而又对着人画作揖致敬。
16 changes: 16 additions & 0 deletions Document/One Day at WebUI Group in year 2018.txt
Original file line number Diff line number Diff line change
@@ -0,0 +1,16 @@
2018年的普普通通的一天的早上,天气不冷不热,空气不好不坏,黄历所载,这一天也没有什么特别的吉凶趋避,日月星辰各安其份。WebUI群里已有不少人,聊着明星八卦,经济股市。

中午时分,夏老师来到群里。夏老师是经过人生跌宕、遍尝过世间甘苦的老司机,其人生阅历极其丰富,而家庭势力十分庞大,遍布了共产主义和资本主义国家的各个阶层。再加上其小到婚姻情感、大到国际政治、闲谈扯谈的明星八卦、学术探讨如物理化学都能侃侃而谈,对百姓民生、国家发展也有深刻的见解,群员们一度怀疑他有可能是个间谍。今天他来到群里也不说话,先发了一张十分暴露的性感美女图片,斜靠在自家产的紫檀红木椅上,左手搭着龙头扶手,右手食指轻轻弹掉烟头的灰烬,看着群里的愣头年轻们对着美女图片发出饥渴地嗷叫,只是呵呵地微笑着。

这时候群主忙过了他的事,也来到群里。群主是一名一事无成的中年人,网传他是70后,可是他身上却缺少那种经历过红尘坎坷的成熟稳重,反而有些不切实际的理想主义、完美主义、浪漫主义,喜欢看书、看电影,甚至喜欢海绵宝宝这样童真的东西。群主进到群里,在攒动的人头中一眼就看到了那张暴露的美女图片,赶紧冲过去一把扯下来,抹一抹脑门上的汗,一边责怪道:“你们又在偷偷害我!”,夏老师叭了一口烟回道:”我就知道群主不喜欢女的“,群里的人发出一阵哄笑。群主也不争辩,面对那些饥渴的愣头年轻们义正严辞地批评道:“还能不能追求点更高的人生价值了?”,说完转身舔了舔口水,小心地把美女图片卷起来揣进怀里,用手轻轻拍拍确定放好了,又转过身说道:“你们呀,一个个的工作不饱和。我去工作了”,然后带着掩饰不住的满足的微笑出去了。

群主出去不久,又有一个人也来了。此人一只脚刚踏进门,群里所有人都觉得哪里不对了。喝茶打牌的、聊天扯谈的,都突然感觉群里的空气中弥漫着一种说不清楚的压力,众人也不知道发生了什么,好似有灭顶之灾将至,都停着手上的动作,僵在那里也不敢作声。有大胆一点的人,额头冒着汗,吞一吞口水,侧着眼睛硬着头皮慢慢地转头往门口看。这人往门口一看,紧绷的神经一下子放松下来,颤抖着声音大声道:”哈哈!没事了没事了!是扫地!“,虽是哈哈地说着,但是表情狰狞,余悸未消,好像刚从噩梦惊醒一般。大家好一会儿才平复了情绪,群里才又恢复了喧闹。扫地进到群里,推一推鼻上的眼镜,照常和大家谈笑风声起来。原来此人江湖人称扫地,是WebUI圈的知名的高手,其年少即以逆向功力扬名看雪,近几年来潜心修炼mb神功,已经隐隐然有开宗立派之象,其mb神功精纯,已经到天人一体的境界,因此他一只脚踏进门,大家就感觉到了他不经意间的气场压迫。

扫地进群的时候,众人都在气场压迫之下如临大敌,角落里却有一个人看书的人始终自顾地执卷轻笑,丝毫不受影响。此人坐在角落里,白衣白裙,脸戴面纱,齐肩秀发,头发上束了条银带,身型婀娜,一看就是位女子,发上银带被窗外照进的阳光一映,更是熠熠生光。从身形和装束上看,这位女子方当妙龄,最多十七八岁,年纪虽轻,却又在举手投足间又透着端丽秀雅,有一种说不清楚的庄重感。她虽是WebUI群的常客,但极少与人说话,每次都在角落里独坐看书,所以也没人和她搭讪,都不敢唐突打扰,更没人见过她的面纱之后的真容,只知道她叫 Pamela。只有扫地和群主偶尔唤她萌弟,与她谈笑。

慢慢地人们都去假装工作了,群里人渐渐少了,显得有点冷静。沉寂了一会儿,突然出现一声惊呼,“那么多公司裁员我才知道,为什么裁员好奇怪的事情”,只见这人整个呈土豆的形状,只有一条眉毛,眼睛很随意地长在额头两边,因吃惊而张大的嘴巴周围有些稀疏的胡渣子,他紧皱着眉头,像是遇到了什么吃惊又难以理解的事情。他左手掐着一支烟,那烟刚被抽过一口,两缕白丝从烟头缓缓上升。等了好一会儿,也没人回应他。此人是群主施展十级甄嬛技能,把他从隔壁群挖过来的,人称Hello帝,是以一己之力撑起一个群的人,无数次拯救Thinking in ReDUI群于冷清将死之境。见无人回应,他继续长大嘴巴吃惊道:“永无止境我觉得很好看为什么不拍了好奇怪的事情”,“银行为什么不用nodejs好奇怪的事情”……,在他的一声声惊呼下,群里终于又热闹起来,那些打瞌睡的、装死的、假装工作很忙的,都又进来高谈阔论起来。

大家胡乱地闲扯哄笑,扯着扯着渐渐地都被吸引到了一个人身边,大家都伸头探脑地围着他听他说着什么。这人叫做兴国软件网,一身黑衣,劲装结扎,身形瘦削,眼以下都蒙着面,但是左脸上有一道粗厉的刀疤,从嘴角直到眼角,即使蒙面也遮掩不住。整个人一副精悍之气,一看就是飞檐走壁,吃江湖饭的好汉。他侧身坐着,右脚踏在旁边的一只凳子上,拎着酒壶仰头畅饮一口,一手指点着面前众人,一边说着自己从前行走江湖见过的奇人异事。Hello帝不时发出“怎么会这样好奇怪的事情”、“感觉很牛B的感叹。



135 changes: 135 additions & 0 deletions Document/rules.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,135 @@
wke 项目规范
===========================

目的
----

wke 对于研究 WebKit 是一个很好的项目,同时也可以作为网页的渲染引擎用于实际工程。目前原作者已经停止维护此项目,我个人 fork 出来自行维护,但希望有更多的人来参与研究、维护。为了此项目的长期良好地发展,有必要编写一份规范文档,以后的所有代码、文档、提交都应该按照此规范进行。

目录
----

- [文档规范](#document-rules)
- [代码规范](#coding-rules)
- [命名规范](#code-naming)
- [总体规范](#code-naming-summary)
- [类型(类、结构体等)](#code-naming-type)
- [变量(变量、函数等)](#code-naming-variable)
- [常量(常量、宏等)](#code-naming-constant)
- [排版规范](#code-formating)
- [缩进](#code-formating-indent)
- [换行](#code-formating-newline)
- [空格](#code-formating-whitespace)

----

### <a name="document-rules"></a>文档规范

中文文档中的描述部分涉及的标点,应该使用中文全角。

### <a name="coding-rules"></a>代码规范:

#### <a name="code-naming"></a>命名规范

##### <a name="code-naming-summary"></a>总体规范

代码命名中应该尽量包含被命名实体的的功能性说明,不必包含它的类型信息,因为前者更能帮助阅读者理解整体代码。禁止使用匈牙利命名法。举例:
正确的命名:

```
class Student;
void study(Student* student);
void doHomeWork(Student* student);
```
错误的命名:

```
class ClassStudent; //不需要包含类型信息。
void functionStudy(ClassStudent* pClassStudent); //不需要包含类型信息。。
void functionDoWork(ClassStudent* pClassStudent); //不需要包含类型信息。
```

代码命名中涉及的单词应该避免缩写,除非名字包含的单词太多、某个单词特别长,或者该缩写是行业或团队通用的、常用的缩写,举例:
正确的命名:

```
class Student;
void study(Student* student);
void doHomeWork(Student* student);
double cpuUseage();
```

错误的命名:

```
class Stu; //不必要的缩写。
void study(Stu* s); //参数命名太简单,没有任何说明意义。
void work(Stu* student); //函数命名意义不明确。
double centralProcessingUnitUsage(); //应该使用公用的缩写。
```


##### <a name="code-naming-type"></a>类型(类、结构体、枚举、函数指针类型等)命名

类型(类类型、结构体类型、枚举类型、函数指针类型等)的命名,使用大驼峰命名法(little camel-case),即:命名中的所有单词(或单词缩写,后面统称单词)第一个字母大写,单词之间紧靠排列(不用间隔符,如下划线)例如:

```
class SomeClass;
class SomeLongNameClass;
enum SomeEnum;
typedef void (*SomeFuncPointer)();
```

##### <a name="code-naming-variable"></a>变量、函数命名

变量、函数的命名,使用小驼峰命名法(little camel-case),即:命名中的第一个单词全部小写,后续单词第一字母大写开始单词中的其余字母小写,单词之间紧靠排列(不用间隔符,如下划线)例如:


```
void someFunction();
void someLongNameFunction();
int someVariable;
int someLongNameVariable;
```

根据函数的作用,函数命名应该进一步规范:

- 若函数(包括成员函数和非成员函数)是执行操作,则直接以动作、功能的单词命名,如`doHomeWork`、`reportGrade`。
- 若函数(包括成员函数和非成员函数)的功能是设置数据,则以`set`开头,并紧根要设置数据的名称,如`setNickName`。
- 若成员函数的功能是获取成员数据,则直接以要获取的实体名称命名,如`Student::nickName`、`Student::grade`。
- 若非成员函数的功能是获取数据,则使用`get`开头,并紧跟要获取数据的名称,如`getNickName`。
- 若非成员函数的功能是获取 是/否 数据,则使用`is`开始,并紧跟要获取数据的名称,如`isEnglishPassed`


##### <a name="code-naming-constant"></a>宏、常量、枚等命名

宏、常量 、枚举的命名,使用全大写单词加下划线相连,如:

```
#define SOME_CONST_VALUE 123
const int SOME_CONST_VALUE = 123;
enum SomeEnum
{
SOME_VALUE_1,
SOME_VALUE_2
};
```

#### <a name="code-formating"></a>排版规范

##### <a name="code-formating-indent"></a>缩进规范

缩进应该使用4个空格,以避免使用 TAB 时在不同编辑器中缩进混乱。

##### <a name="code-formating-newline"></a>换行规范

起始大括号应该换行再写。

##### <a name="code-formating-whitespace"></a>空格规范

- `if`、`while`、`for`之类的关键字之后空格再跟括号,如`if (...)`、`for (...)`、`while (...)`。
- 标点之后加一个空格分隔实体,如`a, b, c`、`for (...; ...; ...)`、`a || b && c`。
- 括号内第一个字符之前,最后一个字符之后不需要空格,如`(a)`,`(a, b, c)`。


**待补充**
4 changes: 4 additions & 0 deletions Document/tips.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,4 @@
## 测试绑定对象功能
运行wkeWebBrowser.exe,在地址栏输入`inject`回车,即可注册JS对象`test`,注册后就JS中可访问`test`对象的成员变量`value`和成员函数`msgbox`了。
在地址栏输入`javascript:test.msgbox('1')`测试调用成员函数。
在地址栏输入`javascript:document.write(test.value)`测试访问成员变量。
5 changes: 5 additions & 0 deletions Document/todo.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,5 @@
### HTTP_PROXY 的问题
牧草(920370262) 提出的问题:wke 默认使用使用 HTTP_PROXY 环境变量设置的代理服务器连接,但现在使用 HTTP_PROXY 指定的 socks5 代理连接有问题。

### Cookie相关问题
wke 目前 cookie 只能获取手动保存。需要增加自动保存到文件、并自动从文件恢复的功能。
Loading