webkit gtk中的webcore

时间:2011-02-25 02:43:50

标签: webkit gtk

在我的项目(基于webkit gtk)中,我想在webcore中调用一些类。但webkit封装webcore,所以我不能直接调用这些函数(我通过谷歌知道这些,所以我不知道它是否正确)。例如:

Frame* frame = m_pPage->focusController()->focusedOrMainFrame();
Document* focusedDocument = frame->document();
frame = frame->tree()->top();
Node* focusedNode = focusedDocument->focusedNode();

这些类和函数在webcore中定义,所以我无法直接调用它们。我想知道如何访问这些?修改webkit?

我只需要webcore模块,那么如何使用webkit安装webcore?

1 个答案:

答案 0 :(得分:1)

您可以尝试下载webkit源代码,然后转到最后一行 “Source / WebKit / gtk / webkit / webkitwebview.cpp”查看“WebCore :: Page * core(WebKitWebView * webView);”功能,这是将webkit事物转换为webcore事物的核心。

您需要让编译器知道在“webkitwebviewprivate.h”文件中定义的“WebKitWebViewPrivate”结构。 (或者你可以定义自己的WebKitWebViewPrivate来欺骗编译器。在这个阶段你只让编译器知道归档“corePage”的偏移量)

但是困难的是你需要导出类Frame,Node,Dcoument和许多其他类。

所以这是可能的但很困难。


如果你真的只想使用Frame,Node ...... 您可以构建webkit,在build / .libs中,dir将包含一个libWebCore.a,其中包含除头文件之外的所有需求。