淺談關于QT中QWebKit目錄介紹
關于QT中QWebKit目錄介紹是本文要介紹的內容,主要介紹了QWebkit下webkit和Webcore目錄結構的內,JavaScriptCore 下面的了解的比較少,寫的也比較少。
Webkit\WebKit\qt該目錄是實現webkit在qt平臺上的porting部分,這里的類是直接提供給使用qwebkit模塊的程序調用的。主要內容都在文件夾Api 和WebCoreSupport里,
Webkit\WebKit\qt\Api目錄包含了webkit 在Qt平臺大部分應用的API接口,如QWebView QWebPage QWebFrame等。
Webkit\WebKit\qt\WebCoreSupport目錄里包含了Qt平臺下外部程序提供給Webkit內部使用的接口,大部分都是重寫了WebCore里的相關函數的功能。如ChromeClientQt EditCommandQt ContextMenuClientQt等:
Webkit\WebCore 該目錄是HTML engine的所在地,也是webkit的核心部分。
WebCore\bindings 這里javascript bindings 功能實現所在地,具體功能是把webcore中的JavaScript接口提供出來,供外界使用。
WebCore\bindings\js
WebCore\bindings\objc
WebCore\bindings\scripts 存放的腳本文件通過IDL文件生成JavaScript bindings class
WebCore\bindings\V8
\WebCore\bridge 這部分代碼主要實現:1 把自定義的C++ 對象添加到JavaScript的環境中, QWebFrame::addToJavaScriptWindowObject();2 Scriptable Netscape Plugins 是通過這里的bridge實現的。
\WebCore\css CSS Style Parser 及與其相關的解析操作
\WebCore\dom DOM Event 處理操作
\WebCore\editing 與文字相關的編輯操作和格式,如剪貼板
\WebCore\ForwardingHeaders 這里的頭文件指向JavaScriptCore 庫里的文件
\WebCore\generated 通過IDL文件生成的 JavaScript binding class 例如:XMLHttpRequest 它的IDL 文件 在 \webkit\WebCore\xml\ XMLHttpRequest.idl,生成后的文件 \webkit\WebCore\generated\JSXMLHttpRequest.cpp,主要的邏輯代碼在 \webkit\WebCore\xml\XMLHttpRequest.cpp
\WebCore\history 主要是網頁的前進 后退及緩存的頁面。
\WebCore\html HTML parser,HTML 各種element 及HTML DOM Tree 相關的類
\WebCore\loader – 主要是從網絡加載資源的相關內容, frame loader, resource loader 等
\WebCore\page WebCore里顯示一個頁面要用的相關的類都在這里了。Page, Frame, FrameTree, FrameView, EventHandler, History, Screen, Settings, Chrome等。
\WebCore\page\qt Focus, mouse, wheel events(EventHandlerQt FrameQt)
\WebCore\platform Platform 相關特性
\WebCore\platform\network\qt qt 平臺下Networking 部分
\WebCore\platform\graphics\qt qt 平臺下Graphics 部分
\WebCore\platform\text\qt qt 平臺下文本的編解碼 換行等
\WebCore\plugins netscape plugins
\WebCore\rendering Render Tree 相關的類,主要用來布局和渲染整個頁面。http://trac.webkit.org/wiki/WebCoreRendering
\WebCore\rendering\style 這里包含render tress上已經計算好的style。
\WebCore\resources 存放光標,按鈕等圖標
\WebCore\xml 與XML相關的操作。如XML 解析器等。
目錄Webkit\JavaScriptCore JavaScript engine所在地。JIT 做了大部分的工作。
JavaScriptCore\API 包含JavaScript Core的C API
- JavaScriptCore\assembler
- JavaScriptCore\interpreter
- JavaScriptCore\jit
- JavaScriptCore\parser JavaScript 解析器
- JavaScriptCore\runtime
- JavaScriptCore\wtf
- JavaScriptCore\yarr
小結:淺談關于QT中QWebKit目錄介紹的內容介紹完了,希望通過本文的學習能對你有所幫助!